#include <container.hpp>
Inheritance diagram for gcn::Container:
It is in other words a Widget that holds other Widgets. A Widgets position in the container is always relativ to the Container itself, not the screen. Using a Container as the top Widget in Gui is the only way to use more then one Widget in your Gui.
Definition at line 73 of file container.hpp.
Public Member Functions | |
Container () | |
Constructor. | |
virtual | ~Container () |
Destructor. | |
virtual void | setOpaque (bool opaque) |
Sets whether the background should be drawn or not. | |
virtual bool | isOpaque () const |
Checks if the Container is opaque. | |
virtual void | add (Widget *widget) |
Adds a Widget to the Container. | |
virtual void | add (Widget *widget, int x, int y) |
Adds a Widget to the container and also specifices it's postion. | |
virtual void | remove (Widget *widget) |
Removes a Widget from the Container. | |
virtual void | clear () |
Clears the Container of all widgets. | |
virtual void | draw (Graphics *graphics) |
Draws the Widget. | |
virtual void | drawBorder (Graphics *graphics) |
Draws a the Widget border. | |
virtual void | logic () |
Called for all Widgets in the gui each time Gui::logic is called. | |
virtual void | _setFocusHandler (FocusHandler *focusHandler) |
Sets the FocusHandler to be used. | |
virtual void | _mouseInputMessage (const MouseInput &mouseInput) |
Called when a Widget recieves a MouseInput. | |
virtual void | _mouseOutMessage () |
Called when the mouse leaves the Widget area. | |
virtual void | moveToTop (Widget *widget) |
Moves a Widget to the top of the BasicContainer. | |
virtual void | moveToBottom (Widget *widget) |
Moves a widget to the bottom of the BasicContainer. | |
virtual void | _announceDeath (Widget *widget) |
Called when a child of the BasicContainer gets destroyed. | |
virtual void | getDrawSize (int &width, int &height, Widget *widget) |
Gets the drawing space size a Widget has in the BasicContainer. | |
Protected Types | |
typedef std::list< Widget * > | WidgetList |
typedef WidgetList::iterator | WidgetIterator |
Protected Member Functions | |
virtual void | drawChildren (Graphics *graphics) |
Draws all children of the Container. | |
virtual void | logicChildren () |
Calls the logic function for all children of Container. | |
Protected Attributes | |
Widget * | mWidgetWithMouse |
WidgetList | mWidgets |
bool | mOpaque |
|
Constructor. A container is opauqe as default.
Definition at line 65 of file container.cpp. |
|
Called when a child of the BasicContainer gets destroyed.
Implements gcn::BasicContainer. Definition at line 195 of file container.cpp. |
|
Called when a Widget recieves a MouseInput. WARNING: This function is used internally to handle all mouse messages. Don't call or overload it unless you know what you are doing.
Reimplemented from gcn::Widget. Definition at line 334 of file container.cpp. References gcn::Widget::_mouseInMessage(), gcn::Widget::_mouseInputMessage(), gcn::Widget::_mouseOutMessage(), gcn::Widget::getX(), gcn::Widget::getY(), gcn::MouseInput::x, and gcn::MouseInput::y. |
|
Called when the mouse leaves the Widget area. WARNING: This function is used internally be to handle mouse out messages. Don't call or overload this function unless you know what you are doing. Reimplemented from gcn::Widget. Definition at line 377 of file container.cpp. References gcn::Widget::_mouseOutMessage(). |
|
Sets the FocusHandler to be used. WARNING: This function is used internally and should not be called or overloaded unless you know what you are doing.
Reimplemented from gcn::Widget. Definition at line 323 of file container.cpp. References gcn::Widget::_setFocusHandler(). |
|
Adds a Widget to the container and also specifices it's postion.
Definition at line 280 of file container.cpp. References add(). |
|
Adds a Widget to the Container.
Definition at line 273 of file container.cpp. References gcn::Widget::_getFocusHandler(). Referenced by add(). |
|
Clears the Container of all widgets.
Definition at line 308 of file container.cpp. References gcn::Widget::_setFocusHandler(), and gcn::Widget::_setParent(). Referenced by ~Container(). |
|
Draws the Widget. It is called by the parent widget when it is time for the Widget to draw itself. The graphics object is set up so that all drawing is relative to the Widget, i.e coordinate (0,0) is the top-left corner of the Widget. It is not possible to draw outside of a Widgets dimension.
Implements gcn::Widget. Definition at line 81 of file container.cpp. References drawChildren(), gcn::Widget::getBaseColor(), gcn::Widget::getHeight(), gcn::Widget::getWidth(), and isOpaque(). |
|
Draws a the Widget border. A border is drawn around a Widget. The width and height of the border is therefore the Widgets height+2*bordersize. Think of a painting that has a certain size, the border surrounds the painting.
Reimplemented from gcn::Widget. Definition at line 92 of file container.cpp. References gcn::Color::a, gcn::Widget::getBaseColor(), gcn::Widget::getBorderSize(), gcn::Widget::getHeight(), and gcn::Widget::getWidth(). |
|
Draws all children of the Container. The Widgets will bedrawn in the order the Widgets were added to the Container.
Definition at line 125 of file container.cpp. References gcn::Rectangle::height, gcn::Rectangle::width, gcn::Rectangle::x, and gcn::Rectangle::y. Referenced by draw(). |
|
Gets the drawing space size a Widget has in the BasicContainer. It may not be the same size as the Widgets width and height. NOTE: Size is not checked recursively all the way back to the top Widget. If the BasicContainer itself is clipped, the size may be inaccurate.
Implements gcn::BasicContainer. Definition at line 215 of file container.cpp. References gcn::Widget::getDimension(), gcn::Rectangle::height, gcn::Rectangle::width, gcn::Rectangle::x, and gcn::Rectangle::y. |
|
Checks if the Container is opaque.
Definition at line 158 of file container.cpp. Referenced by draw(). |
|
Called for all Widgets in the gui each time Gui::logic is called. You can do logic stuff here like playing an animation.
Reimplemented from gcn::Widget. Definition at line 76 of file container.cpp. References logicChildren(). |
|
Calls the logic function for all children of Container. The Widgets logic function will be called in the order the Widgets were added to the Container. Definition at line 116 of file container.cpp. Referenced by logic(). |
|
Moves a widget to the bottom of the BasicContainer. The Widget will be drawn below all other Widgets in the BasicContainer.
Implements gcn::BasicContainer. Definition at line 179 of file container.cpp. |
|
Moves a Widget to the top of the BasicContainer. The widget will be drawn above all other Widgets in the BasicContainer.
Implements gcn::BasicContainer. Definition at line 163 of file container.cpp. |
|
Removes a Widget from the Container.
Definition at line 286 of file container.cpp. References gcn::Widget::_setFocusHandler(), and gcn::Widget::_setParent(). |
|
Sets whether the background should be drawn or not. If the Container is not opaque it will be completely transparent. NOTE: This is not the same as to set visibility. A nonvisible Container will not draw it's content.
Definition at line 153 of file container.cpp. |