nux-0.9.48
|
#include <Nux/WindowCompositor.h>
Data Structures | |
struct | RenderTargetTextures |
Public Member Functions | |
WindowCompositor () | |
~WindowCompositor () | |
Geometry | GetTooltipGeometry () const |
Get the Geometry of the tooltip based on the BaseWindow that initiated it. | |
Geometry | GetTooltipMainWindowGeometry () const |
Get the Geometry of the tooltip based on the MainWindow. | |
bool | MouseDown (Point pt) |
bool | MouseMove (Point pt) |
bool | MouseUp (Point pt) |
void | ProcessEvent (IEvent &ievent) |
ObjectPtr < IOpenGLFrameBufferObject > & | GetWindowFrameBufferObject () |
ObjectPtr< IOpenGLBaseTexture > | GetScreenBlurTexture () |
void | StartModalWindow (ObjectWeakPtr< BaseWindow >) |
void | StopModalWindow (ObjectWeakPtr< BaseWindow >) |
void | AddMenu (MenuPage *menu, BaseWindow *window, bool OverrideCurrentMenuChain=true) |
void | RemoveMenu (MenuPage *menu) |
void | CleanMenu () |
void | PushModalWindow (ObjectWeakPtr< BaseWindow > window) |
void | SetWidgetDrawingOverlay (InputArea *ic, BaseWindow *OverlayWindow) |
InputArea * | GetWidgetDrawingOverlay () |
void | SetTooltip (InputArea *TooltipArea, const TCHAR *TooltipText, int x, int y) |
bool | ValidateMouseInsideTooltipArea (int x, int y) |
bool | IsTooltipActive () |
void | CancelTooltip () |
void | SetAreaEventRoot (int x, int y) |
const IEvent * | GetCurrentEvent () const |
long | DispatchEventToArea (Event &event, Area *area, long TraverseInfo, long ProcessEventInfo) |
long | DispatchEventToView (Event &event, View *view, long TraverseInfo, long ProcessEventInfo) |
void | SetBackgroundPaintLayer (AbstractPaintLayer *bkg) |
void | SetAlwaysOnFrontWindow (BaseWindow *window) |
bool | EnableExclusiveInputArea (InputArea *input_area) |
Enable the exclusive event input mode. | |
bool | DisableExclusiveInputArea (InputArea *input_area) |
Disable the exclusive event input mode. | |
bool | InExclusiveInputMode () |
Return true if the system is in exclusive input event mode. | |
void | RestoreRenderingSurface () |
Set the rendering surface for the current rendering. | |
void * | GetBackupTextureData (BaseWindow *base_window, int &width, int &height, int &format) |
Get the backup texture data of this BaseWindow,. | |
void | ResetDnDArea () |
Reset the DND focus area. | |
InputArea * | GetDnDArea () |
BaseWindow * | GetProcessingTopView () |
Get the top view that is being processed (event or rendering). | |
bool | GrabPointerAdd (InputArea *area) |
Add an area at the top of the pointer grab stack. | |
bool | GrabPointerRemove (InputArea *area) |
Remove an area from the pointer grab stack. | |
bool | IsInPointerGrabStack (InputArea *area) |
Returns True if the area parameter is inside the pointer grab stack. | |
InputArea * | GetPointerGrabArea () |
Returns the area at the top of the pointer grab stack. | |
bool | GrabKeyboardAdd (InputArea *area) |
Add an area at the top of the keyboard grab stack. | |
bool | GrabKeyboardRemove (InputArea *area) |
Remove an area from the keyboard grab stack. | |
bool | IsInKeyboardGrabStack (InputArea *area) |
Returns True if the area parameter is inside the keyboard grab stack. | |
InputArea * | GetKeyboardGrabArea () |
Returns the area at the top of the keyboard grab stack. | |
Data Fields | |
ObjectPtr < IOpenGLFrameBufferObject > | m_FrameBufferObject |
Friends | |
class | InputArea |
class | WindowThread |
class | TimerHandler |
class | MenuBar |
class | MenuPage |
class | BaseWindow |
class | HSplitter |
class | VSplitter |
class | TableCtrl |
class | View |
nux::WindowCompositor::WindowCompositor | ( | ) |
nux::WindowCompositor::~WindowCompositor | ( | ) |
void nux::WindowCompositor::AddMenu | ( | MenuPage * | menu, |
BaseWindow * | window, | ||
bool | OverrideCurrentMenuChain = true |
||
) |
void nux::WindowCompositor::CancelTooltip | ( | ) |
void nux::WindowCompositor::CleanMenu | ( | ) |
bool nux::WindowCompositor::DisableExclusiveInputArea | ( | InputArea * | input_area | ) |
Disable the exclusive event input mode.
Disable the exclusive event input mode. It can only be disable if the current exclusive input area is passed as parameter.
long nux::WindowCompositor::DispatchEventToArea | ( | Event & | event, |
Area * | area, | ||
long | TraverseInfo, | ||
long | ProcessEventInfo | ||
) |
long nux::WindowCompositor::DispatchEventToView | ( | Event & | event, |
View * | view, | ||
long | TraverseInfo, | ||
long | ProcessEventInfo | ||
) |
bool nux::WindowCompositor::EnableExclusiveInputArea | ( | InputArea * | input_area | ) |
Enable the exclusive event input mode.
Set the exclusive event input area (
void* nux::WindowCompositor::GetBackupTextureData | ( | BaseWindow * | base_window, |
int & | width, | ||
int & | height, | ||
int & | format | ||
) |
Get the backup texture data of this BaseWindow,.
const IEvent* nux::WindowCompositor::GetCurrentEvent | ( | ) | const [inline] |
InputArea* nux::WindowCompositor::GetDnDArea | ( | ) |
InputArea* nux::WindowCompositor::GetKeyboardGrabArea | ( | ) |
Returns the area at the top of the keyboard grab stack.
InputArea* nux::WindowCompositor::GetPointerGrabArea | ( | ) |
Returns the area at the top of the pointer grab stack.
BaseWindow* nux::WindowCompositor::GetProcessingTopView | ( | ) | [inline] |
Get the top view that is being processed (event or rendering).
Get the active ViewWindow during and event processing or rendering.
References nux::ObjectWeakPtr< T >::GetPointer().
ObjectPtr< IOpenGLBaseTexture > nux::WindowCompositor::GetScreenBlurTexture | ( | ) |
Geometry nux::WindowCompositor::GetTooltipGeometry | ( | ) | const |
Get the Geometry of the tooltip based on the BaseWindow that initiated it.
Geometry nux::WindowCompositor::GetTooltipMainWindowGeometry | ( | ) | const |
Get the Geometry of the tooltip based on the MainWindow.
InputArea* nux::WindowCompositor::GetWidgetDrawingOverlay | ( | ) |
ObjectPtr<IOpenGLFrameBufferObject>& nux::WindowCompositor::GetWindowFrameBufferObject | ( | ) | [inline] |
References m_FrameBufferObject.
bool nux::WindowCompositor::GrabKeyboardAdd | ( | InputArea * | area | ) |
Add an area at the top of the keyboard grab stack.
Add an area at the top of the keyboard grab stack. The area at the top of the keyboard grab stack has the exclusivity on the keyboard events. And area can be added multiple times to the stack but not successively.
area | The area to put at the top of the keyboard grab stack. |
bool nux::WindowCompositor::GrabKeyboardRemove | ( | InputArea * | area | ) |
bool nux::WindowCompositor::GrabPointerAdd | ( | InputArea * | area | ) |
Add an area at the top of the pointer grab stack.
Add an area at the top of the pointer grab stack. The area at the top of the pointer grab stack has the exclusivity on the pointer events. And area can be added multiple times to the stack but not successively.
area | The area to put at the top of the pointer grab stack. |
bool nux::WindowCompositor::GrabPointerRemove | ( | InputArea * | area | ) |
bool nux::WindowCompositor::InExclusiveInputMode | ( | ) |
Return true if the system is in exclusive input event mode.
bool nux::WindowCompositor::IsInKeyboardGrabStack | ( | InputArea * | area | ) |
Returns True if the area parameter is inside the keyboard grab stack.
bool nux::WindowCompositor::IsInPointerGrabStack | ( | InputArea * | area | ) |
Returns True if the area parameter is inside the pointer grab stack.
bool nux::WindowCompositor::IsTooltipActive | ( | ) |
Return true if there is a valid tooltip active.
bool nux::WindowCompositor::MouseDown | ( | Point | pt | ) |
bool nux::WindowCompositor::MouseMove | ( | Point | pt | ) |
bool nux::WindowCompositor::MouseUp | ( | Point | pt | ) |
void nux::WindowCompositor::ProcessEvent | ( | IEvent & | ievent | ) |
void nux::WindowCompositor::PushModalWindow | ( | ObjectWeakPtr< BaseWindow > | window | ) |
void nux::WindowCompositor::RemoveMenu | ( | MenuPage * | menu | ) |
void nux::WindowCompositor::ResetDnDArea | ( | ) |
Reset the DND focus area.
Set the DND focus area to NULL.
void nux::WindowCompositor::RestoreRenderingSurface | ( | ) |
Set the rendering surface for the current rendering.
This function is used to restore the rendering surface according to the system state. This is necessary after using a custom frame buffer object.
void nux::WindowCompositor::SetAlwaysOnFrontWindow | ( | BaseWindow * | window | ) |
A special BaseWindow that is always on top of all other BaseWindow. It is even above the BaseWindow that is selected.
void nux::WindowCompositor::SetAreaEventRoot | ( | int | x, |
int | y | ||
) | [inline] |
References nux::Point::Set().
void nux::WindowCompositor::SetBackgroundPaintLayer | ( | AbstractPaintLayer * | bkg | ) |
void nux::WindowCompositor::SetTooltip | ( | InputArea * | TooltipArea, |
const TCHAR * | TooltipText, | ||
int | x, | ||
int | y | ||
) |
void nux::WindowCompositor::SetWidgetDrawingOverlay | ( | InputArea * | ic, |
BaseWindow * | OverlayWindow | ||
) |
void nux::WindowCompositor::StartModalWindow | ( | ObjectWeakPtr< BaseWindow > | ) |
void nux::WindowCompositor::StopModalWindow | ( | ObjectWeakPtr< BaseWindow > | ) |
bool nux::WindowCompositor::ValidateMouseInsideTooltipArea | ( | int | x, |
int | y | ||
) |
Return true if the mouse is still inside the area that initiated the tooltip;
x | The mouse x coordinate on screen. |
y | The mouse y coordinate on screen. |
friend class BaseWindow [friend] |
friend class HSplitter [friend] |
friend class InputArea [friend] |
friend class MenuBar [friend] |
friend class MenuPage [friend] |
friend class TableCtrl [friend] |
friend class TimerHandler [friend] |
friend class View [friend] |
friend class VSplitter [friend] |
friend class WindowThread [friend] |
Referenced by GetWindowFrameBufferObject().