An abstract base class providing common functionality and specifying the required interface for derived classes. More...
Public Member Functions | |
LayoutContainer (const String &type, const String &name) | |
Constructor for Window base class. | |
virtual | ~LayoutContainer (void) |
Destructor for Window base class. | |
void | markNeedsLayouting () |
marks this layout container for relayouting before drawing | |
bool | needsLayouting () const |
returns true if this layout container will be relayouted before drawing | |
virtual void | layout ()=0 |
(re)layouts all windows inside this layout container immediately | |
virtual void | layoutIfNecessary () |
(re)layouts all windows inside this layout container if it was marked necessary | |
virtual Rect | getUnclippedInnerRect_impl (void) const |
Static Public Attributes | |
static const String | EventNamespace |
Namespace for global events. | |
Protected Types | |
typedef std::multimap< Window *, Event::Connection > | ConnectionTracker |
Protected Member Functions | |
virtual Rect | getClientChildWindowContentArea_impl () const |
virtual bool | testClassName_impl (const String &class_name) const |
size_t | getIdxOfChildWindow (Window *wnd) const |
virtual void | addChild_impl (Window *wnd) |
virtual void | removeChild_impl (Window *wnd) |
virtual void | drawSelf (const RenderingContext &ctx) |
virtual bool | handleChildSized (const EventArgs &e) |
Handler called when child window gets sized. | |
virtual bool | handleChildMarginChanged (const EventArgs &e) |
Handler called when child window changes margin(s). | |
virtual bool | handleChildAdded (const EventArgs &e) |
Handler called when child window gets added. | |
virtual bool | handleChildRemoved (const EventArgs &e) |
Handler called when child window gets removed. | |
virtual UVector2 | getOffsetForWindow (Window *window) const |
returns margin offset for given window | |
virtual UVector2 | getBoundingSizeForWindow (Window *window) const |
returns bounding size for window, including margins | |
Protected Attributes | |
bool | d_needsLayouting |
ConnectionTracker | d_eventConnections |
Tracks event connections we make. |
An abstract base class providing common functionality and specifying the required interface for derived classes.
Layout Container provide means for automatic positioning based on sizes of it's child Windows. This is usefull for dynamic UIs.
virtual void CEGUI::LayoutContainer::addChild_impl | ( | Window * | wnd | ) | [protected, virtual] |
Add given window to child list at an appropriate position.
Reimplemented from CEGUI::Window.
Reimplemented in CEGUI::GridLayoutContainer.
virtual void CEGUI::LayoutContainer::drawSelf | ( | const RenderingContext & | ctx | ) | [protected, virtual] |
Perform the actual rendering for this Window.
ctx | RenderingContext holding the details of the RenderingSurface to be used for the Window rendering operations. |
Reimplemented from CEGUI::Window.
virtual Rect CEGUI::LayoutContainer::getClientChildWindowContentArea_impl | ( | ) | const [protected, virtual] |
Default implementation of function to return client content area.
Reimplemented from CEGUI::Window.
virtual Rect CEGUI::LayoutContainer::getUnclippedInnerRect_impl | ( | void | ) | const [virtual] |
Return a Rect object that describes, unclipped, the inner rectangle for this window. The inner rectangle is typically an area that excludes some frame or other rendering that should not be touched by subsequent rendering.
Reimplemented from CEGUI::Window.
virtual bool CEGUI::LayoutContainer::handleChildAdded | ( | const EventArgs & | e | ) | [protected, virtual] |
Handler called when child window gets added.
e | WindowEventArgs object whose 'window' pointer field is set to the window that triggered the event. For this event the trigger window is the one that was added. |
virtual bool CEGUI::LayoutContainer::handleChildMarginChanged | ( | const EventArgs & | e | ) | [protected, virtual] |
Handler called when child window changes margin(s).
e | WindowEventArgs object whose 'window' pointer field is set to the window that triggered the event. For this event the trigger window is the one that has had it's margin(s) changed. |
virtual bool CEGUI::LayoutContainer::handleChildRemoved | ( | const EventArgs & | e | ) | [protected, virtual] |
Handler called when child window gets removed.
e | WindowEventArgs object whose 'window' pointer field is set to the window that triggered the event. For this event the trigger window is the one that was removed. |
virtual bool CEGUI::LayoutContainer::handleChildSized | ( | const EventArgs & | e | ) | [protected, virtual] |
Handler called when child window gets sized.
e | WindowEventArgs object whose 'window' pointer field is set to the window that triggered the event. For this event the trigger window is the one that was sized. |
virtual void CEGUI::LayoutContainer::removeChild_impl | ( | Window * | wnd | ) | [protected, virtual] |
Remove given window from child list.
Reimplemented from CEGUI::Window.
Reimplemented in CEGUI::GridLayoutContainer.
virtual bool CEGUI::LayoutContainer::testClassName_impl | ( | const String & | class_name | ) | const [inline, protected, virtual] |
Return whether this window was inherited from the given class name at some point in the inheritance hierarchy.
class_name | The class name that is to be checked. |
Reimplemented from CEGUI::Window.
Reimplemented in CEGUI::GridLayoutContainer, CEGUI::HorizontalLayoutContainer, CEGUI::SequentialLayoutContainer, and CEGUI::VerticalLayoutContainer.
References CEGUI::Window::testClassName_impl().
Referenced by CEGUI::VerticalLayoutContainer::testClassName_impl(), CEGUI::SequentialLayoutContainer::testClassName_impl(), CEGUI::HorizontalLayoutContainer::testClassName_impl(), and CEGUI::GridLayoutContainer::testClassName_impl().