$treeview $search $mathjax
Stratagus
2.2.6
$projectbrief
|
$projectbrief
|
$searchbox |
_________ __ __ / _____// |_____________ _/ |______ ____ __ __ ______ \_____ \\ __\_ __ \__ \\ __\__ \ / ___\| | \/ ___/ / \| | | | \// __ \| | / __ \_/ /_/ > | /\___ \ /_______ /|__| |__| (____ /__| (____ /\___ /|____//____ > \/ \/ \//_____/ \/ ______________________ ______________________ T H E W A R B E G I N S Stratagus - A free fantasy real time strategy game engine
#include <widget.h>
Public Member Functions | |
Widget () | |
virtual | ~Widget () |
virtual void | draw (Graphics *graphics)=0 |
virtual void | drawBorder (Graphics *) |
virtual void | logic () |
virtual BasicContainer * | getParent () const |
virtual void | setWidth (int width) |
virtual int | getWidth () const |
virtual void | setHeight (int height) |
virtual int | getHeight () const |
virtual void | setSize (int width, int height) |
virtual void | setX (int x) |
virtual int | getX () const |
virtual void | setY (int y) |
virtual int | getY () const |
virtual void | setPosition (int x, int y) |
virtual void | setDimension (const Rectangle &dimension) |
virtual void | setBorderSize (unsigned int borderSize) |
virtual unsigned int | getBorderSize () const |
virtual const Rectangle & | getDimension () const |
virtual void | setFocusable (bool focusable) |
virtual bool | isFocusable () const |
virtual bool | hasFocus () const |
virtual void | setEnabled (bool enabled) |
virtual bool | isEnabled () const |
virtual void | lostFocus () |
virtual void | gotFocus () |
virtual bool | hasMouse () const |
virtual void | setVisible (bool visible) |
virtual bool | isVisible () const |
virtual void | setBaseColor (const Color &color) |
virtual const Color & | getBaseColor () const |
virtual void | setForegroundColor (const Color &color) |
virtual const Color & | getForegroundColor () const |
virtual void | setBackgroundColor (const Color &color) |
virtual const Color & | getBackgroundColor () const |
virtual void | setDisabledColor (const Color &color) |
virtual const Color & | getDisabledColor () const |
virtual void | _mouseInputMessage (const MouseInput &mouseInput) |
virtual bool | _keyInputMessage (const KeyInput &keyInput) |
virtual void | hotKeyPress () |
virtual void | hotKeyRelease () |
virtual void | _mouseInMessage () |
virtual void | _mouseOutMessage () |
virtual void | requestFocus () |
virtual void | requestMoveToTop () |
virtual void | requestMoveToBottom () |
virtual void | _setFocusHandler (FocusHandler *focusHandler) |
virtual FocusHandler * | _getFocusHandler () |
virtual void | addActionListener (ActionListener *actionListener) |
virtual void | removeActionListener (ActionListener *actionListener) |
virtual void | addMouseListener (MouseListener *mouseListener) |
virtual void | removeMouseListener (MouseListener *mouseListener) |
virtual void | addKeyListener (KeyListener *keyListener) |
virtual void | removeKeyListener (KeyListener *keyListener) |
virtual void | setEventId (const std::string &eventId) |
virtual const std::string & | getEventId () const |
virtual void | getAbsolutePosition (int &x, int &y) const |
virtual void | _setParent (BasicContainer *parent) |
Font * | getFont () const |
virtual void | setFont (Font *font) |
virtual void | fontChanged () |
virtual int | getHotKey () const |
virtual void | setHotKey (const int key) |
virtual void | setHotKey (const char *key) |
virtual bool | isTabInEnabled () const |
virtual void | setTabInEnabled (bool enabled) |
virtual bool | isTabOutEnabled () const |
virtual void | setTabOutEnabled (bool enabled) |
virtual bool | isDragged () const |
virtual void | requestModalFocus () |
virtual void | releaseModalFocus () |
virtual bool | hasModalFocus () const |
virtual void | setDirty (bool dirty) |
virtual bool | getDirty () const |
Static Public Member Functions | |
static void | setGlobalFont (Font *font) |
static bool | widgetExists (const Widget *widget) |
Protected Types | |
typedef std::list < MouseListener * > | MouseListenerList |
typedef MouseListenerList::iterator | MouseListenerIterator |
typedef std::list< KeyListener * > | KeyListenerList |
typedef KeyListenerList::iterator | KeyListenerIterator |
typedef std::list < ActionListener * > | ActionListenerList |
typedef ActionListenerList::iterator | ActionListenerIterator |
Protected Member Functions | |
void | generateAction () |
Protected Attributes | |
MouseListenerList | mMouseListeners |
KeyListenerList | mKeyListeners |
ActionListenerList | mActionListeners |
Color | mForegroundColor |
Color | mBackgroundColor |
Color | mBaseColor |
Color | mDisabledColor |
FocusHandler * | mFocusHandler |
BasicContainer * | mParent |
Rectangle | mDimension |
unsigned int | mBorderSize |
std::string | mEventId |
int | mClickTimeStamp |
int | mClickCount |
int | mClickButton |
bool | mHasMouse |
bool | mFocusable |
bool | mVisible |
bool | mTabIn |
bool | mTabOut |
bool | mEnabled |
Font * | mCurrentFont |
int | mHotKey |
bool | mDirty |
Static Protected Attributes | |
static DefaultFont | mDefaultFont |
static Font * | mGlobalFont = NULL |
static std::list< Widget * > | mWidgets |
NOTE: Functions begining with underscore "_" should not be overloaded unless you know what you are doing.
typedef std::list<MouseListener*> gcn::Widget::MouseListenerList [protected] |
typedef MouseListenerList::iterator gcn::Widget::MouseListenerIterator [protected] |
typedef std::list<KeyListener*> gcn::Widget::KeyListenerList [protected] |
typedef KeyListenerList::iterator gcn::Widget::KeyListenerIterator [protected] |
typedef std::list<ActionListener*> gcn::Widget::ActionListenerList [protected] |
typedef ActionListenerList::iterator gcn::Widget::ActionListenerIterator [protected] |
gcn::Widget::Widget | ( | ) |
Constructor. Resets member variables. Noteable, a widget is not focusable as default, therefore, Widgets that are supposed to be focusable should overide this default in their own constructor.
gcn::Widget::~Widget | ( | ) | [virtual] |
Default destructor.
virtual void gcn::Widget::draw | ( | Graphics * | graphics | ) | [pure virtual] |
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.
graphics | a Graphics object to draw with. |
Implemented in gcn::Button, gcn::CheckBox, gcn::Container, gcn::DropDown, gcn::Icon, gcn::Label, gcn::ListBox, gcn::RadioButton, gcn::ScrollArea, gcn::Slider, gcn::TextBox, gcn::TextField, gcn::Window, ImageButton, ImageRadioButton, ImageCheckBox, ImageSlider, MultiLineLabel, StatBoxWidget, and MenuScreen.
virtual void gcn::Widget::drawBorder | ( | Graphics * | ) | [inline, virtual] |
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.
graphics | a Graphics object to draw with. |
Reimplemented in gcn::Button, gcn::CheckBox, gcn::Container, gcn::DropDown, gcn::Icon, gcn::Label, gcn::ListBox, gcn::RadioButton, gcn::ScrollArea, gcn::Slider, gcn::TextBox, gcn::TextField, gcn::Window, and MultiLineLabel.
virtual void gcn::Widget::logic | ( | ) | [inline, virtual] |
Called for all Widgets in the gui each time Gui::logic is called. You can do logic stuff here like playing an animation.
Reimplemented in gcn::Container, gcn::DropDown, gcn::ListBox, gcn::ScrollArea, gcn::Window, and MenuScreen.
BasicContainer * gcn::Widget::getParent | ( | ) | const [virtual] |
void gcn::Widget::setWidth | ( | int | width | ) | [virtual] |
int gcn::Widget::getWidth | ( | ) | const [virtual] |
void gcn::Widget::setHeight | ( | int | height | ) | [virtual] |
int gcn::Widget::getHeight | ( | ) | const [virtual] |
void gcn::Widget::setSize | ( | int | width, | |
int | height | |||
) | [virtual] |
Sets the size of the Widget.
width | the width. | |
height | the height. |
Reimplemented in DropDownWidget.
void gcn::Widget::setX | ( | int | x | ) | [virtual] |
int gcn::Widget::getX | ( | ) | const [virtual] |
void gcn::Widget::setY | ( | int | y | ) | [virtual] |
int gcn::Widget::getY | ( | ) | const [virtual] |
void gcn::Widget::setPosition | ( | int | x, | |
int | y | |||
) | [virtual] |
void gcn::Widget::setDimension | ( | const Rectangle & | dimension | ) | [virtual] |
void gcn::Widget::setBorderSize | ( | unsigned int | borderSize | ) | [virtual] |
Sets the size of the border, or the width if you so like. The size is the number of pixels that the border extends outside the Widget. Border size = 0 means no border.
borderSize | the size of the border. |
unsigned int gcn::Widget::getBorderSize | ( | ) | const [virtual] |
Gets the size of the border, or the width if you so like. The size is the number of pixels that the border extends outside the Widget. Border size = 0 means no border.
const Rectangle & gcn::Widget::getDimension | ( | ) | const [virtual] |
void gcn::Widget::setFocusable | ( | bool | focusable | ) | [virtual] |
bool gcn::Widget::isFocusable | ( | ) | const [virtual] |
bool gcn::Widget::hasFocus | ( | ) | const [virtual] |
void gcn::Widget::setEnabled | ( | bool | enabled | ) | [virtual] |
bool gcn::Widget::isEnabled | ( | ) | const [virtual] |
virtual void gcn::Widget::lostFocus | ( | ) | [inline, virtual] |
Called if the Widget loses focus.
Reimplemented in gcn::Button, gcn::DropDown, and gcn::Slider.
virtual void gcn::Widget::gotFocus | ( | ) | [inline, virtual] |
Called if the Widget recieves focus.
bool gcn::Widget::hasMouse | ( | ) | const [virtual] |
void gcn::Widget::setVisible | ( | bool | visible | ) | [virtual] |
bool gcn::Widget::isVisible | ( | ) | const [virtual] |
void gcn::Widget::setBaseColor | ( | const Color & | color | ) | [virtual] |
Sets the base color. The base color is the background color for many Widgets like the Button and Contianer Widgets.
color | the baseground Color. |
Reimplemented in gcn::DropDown.
const Color & gcn::Widget::getBaseColor | ( | ) | const [virtual] |
void gcn::Widget::setForegroundColor | ( | const Color & | color | ) | [virtual] |
const Color & gcn::Widget::getForegroundColor | ( | ) | const [virtual] |
void gcn::Widget::setBackgroundColor | ( | const Color & | color | ) | [virtual] |
Sets the background color.
color | the background Color. |
Reimplemented in gcn::DropDown, and ListBoxWidget.
const Color & gcn::Widget::getBackgroundColor | ( | ) | const [virtual] |
void gcn::Widget::setDisabledColor | ( | const Color & | color | ) | [virtual] |
const Color & gcn::Widget::getDisabledColor | ( | ) | const [virtual] |
void gcn::Widget::_mouseInputMessage | ( | const MouseInput & | mouseInput | ) | [virtual] |
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.
mouseInput | the MouseInput message. |
Reimplemented in gcn::Container, gcn::DropDown, gcn::ScrollArea, and gcn::Window.
bool gcn::Widget::_keyInputMessage | ( | const KeyInput & | keyInput | ) | [virtual] |
Called when a Widget recieves a KeyInput.
WARNING: This function is used internally to handle all key messages. Don't call or overload it unless you know what you are doing.
keyInput | the KeyInput message. |
Reimplemented in gcn::DropDown.
virtual void gcn::Widget::hotKeyPress | ( | ) | [inline, virtual] |
Called when a Widget's hot key is pressed
Reimplemented in gcn::Button.
virtual void gcn::Widget::hotKeyRelease | ( | ) | [inline, virtual] |
Called when a Widget's hot key is released
Reimplemented in gcn::Button.
void gcn::Widget::_mouseInMessage | ( | ) | [virtual] |
Called when the mouse enters the Widget area.
WARNING: This function is used internally to handle mouse in messages. Don't call or overload this function unless you know what you are doing.
void gcn::Widget::_mouseOutMessage | ( | ) | [virtual] |
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 in gcn::Container, gcn::ScrollArea, and gcn::Window.
void gcn::Widget::requestFocus | ( | ) | [virtual] |
void gcn::Widget::requestMoveToTop | ( | ) | [virtual] |
Requests a move to the top in the parent Widget.
void gcn::Widget::requestMoveToBottom | ( | ) | [virtual] |
Requests a move to the bottom in the parent Widget.
void gcn::Widget::_setFocusHandler | ( | FocusHandler * | focusHandler | ) | [virtual] |
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.
focusHandler | the FocusHandler to use. |
Reimplemented in gcn::Container, gcn::ScrollArea, and gcn::Window.
FocusHandler * gcn::Widget::_getFocusHandler | ( | ) | [virtual] |
Gets the FocusHandler used.
WARNING: This function is used internally and should not be called or overloaded unless you know what you are doing.
void gcn::Widget::addActionListener | ( | ActionListener * | actionListener | ) | [virtual] |
Adds an ActionListener to the Widget. When an action is triggered by the Widget, the action function in all the Widget's ActionListeners will be called.
actionListener | the ActionListener to add. |
Reimplemented in ListBoxWidget.
void gcn::Widget::removeActionListener | ( | ActionListener * | actionListener | ) | [virtual] |
Removes an added ActionListener from the Widget.
actionListener | the ActionListener to remove. |
void gcn::Widget::addMouseListener | ( | MouseListener * | mouseListener | ) | [virtual] |
Adds a MouseListener to the Widget. When a mouse message is recieved, it will be sent to the Widget's MouseListeners.
mouseListener | the MouseListener to add. |
void gcn::Widget::removeMouseListener | ( | MouseListener * | mouseListener | ) | [virtual] |
Removes an added MouseListener from the Widget.
mouseListener | the MouseListener to remove. |
void gcn::Widget::addKeyListener | ( | KeyListener * | keyListener | ) | [virtual] |
Adds a KeyListener to the Widget. When a key message is recieved, it will be sent to the Widget's KeyListeners.
keyListener | the KeyListener to add. |
void gcn::Widget::removeKeyListener | ( | KeyListener * | keyListener | ) | [virtual] |
void gcn::Widget::setEventId | ( | const std::string & | eventId | ) | [virtual] |
Sets the event identifier of the Widget. The event identifier is used to be able to identify which Widget generated an action when an action has occured.
NOTE: An event identifier should not be used to identify a certain Widget but rather a certain event in your application. Several Widgets can have the same event identifer.
eventId | the event identifier. |
const std::string & gcn::Widget::getEventId | ( | ) | const [virtual] |
Gets the event identifier.
void gcn::Widget::getAbsolutePosition | ( | int & | x, | |
int & | y | |||
) | const [virtual] |
Gets the absolute position on the screen for the Widget.
x | absolute x coordinate will be stored in this parameter. | |
y | absolute y coordinate will be stored in this parameter. |
void gcn::Widget::_setParent | ( | BasicContainer * | parent | ) | [virtual] |
Sets the parent of the Widget. A parent must be a BasicContainer.
WARNING: This function is used internally and should not be called or overloaded unless you know what you are doing.
parent | the parent BasicContainer.. |
Font * gcn::Widget::getFont | ( | ) | const |
Gets the font used. If no font has been set, the global font will be returned instead. If no global font has been set, the default font will be returend. ugly default.
void gcn::Widget::setGlobalFont | ( | Font * | font | ) | [static] |
void gcn::Widget::setFont | ( | Font * | font | ) | [virtual] |
Sets the font. If font is NULL, the global font will be used.
font | the Font. |
Reimplemented in gcn::DropDown, and ListBoxWidget.
virtual void gcn::Widget::fontChanged | ( | ) | [inline, virtual] |
Called when the font has changed. If the change is global, this function will only be called if the Widget don't have a font already set.
Reimplemented in gcn::TextBox, and gcn::TextField.
virtual int gcn::Widget::getHotKey | ( | ) | const [inline, virtual] |
Get the hot key
void gcn::Widget::setHotKey | ( | const int | key | ) | [virtual] |
Set the hot key
void gcn::Widget::setHotKey | ( | const char * | key | ) | [virtual] |
bool gcn::Widget::widgetExists | ( | const Widget * | widget | ) | [static] |
bool gcn::Widget::isTabInEnabled | ( | ) | const [virtual] |
Check if tab in is enabled. Tab in means that you can set focus to this Widget by pressing the tab button. If tab in is disabled then the FocusHandler will skip this widget and focus the next in its focus order.
void gcn::Widget::setTabInEnabled | ( | bool | enabled | ) | [virtual] |
Sets tab in enabled. Tab in means that you can set focus to this Widget by pressing the tab button. If tab in is disabled then the FocusHandler will skip this widget and focus the next in its focus order.
enabled | true if tab in should be enabled. |
bool gcn::Widget::isTabOutEnabled | ( | ) | const [virtual] |
Checks if tab out is enabled. Tab out means that you can lose focus to this Widget by pressing the tab button. If tab out is disabled then the FocusHandler ignores tabbing and focus will stay with this Widget.
void gcn::Widget::setTabOutEnabled | ( | bool | enabled | ) | [virtual] |
Sets tab out enabled. Tab out means that you can lose focus to this Widget by pressing the tab button. If tab out is disabled then the FocusHandler ignores tabbing and focus will stay with this Widget.
enabled | true if tab out should be enabled. |
bool gcn::Widget::isDragged | ( | ) | const [virtual] |
void gcn::Widget::requestModalFocus | ( | ) | [virtual] |
void gcn::Widget::releaseModalFocus | ( | ) | [virtual] |
Releases modal focus. Modal focus will only be released if the Widget has the modal focus.
bool gcn::Widget::hasModalFocus | ( | ) | const [virtual] |
Checks if the Widget or it's parent has modal focus.
void gcn::Widget::setDirty | ( | bool | dirty | ) | [virtual] |
Reimplemented in gcn::Container, and gcn::Window.
bool gcn::Widget::getDirty | ( | ) | const [virtual] |
Reimplemented in gcn::Container, gcn::DropDown, and gcn::Window.
void gcn::Widget::generateAction | ( | ) | [protected] |
Generates an action to the Widget's ActionListeners.
MouseListenerList gcn::Widget::mMouseListeners [protected] |
KeyListenerList gcn::Widget::mKeyListeners [protected] |
ActionListenerList gcn::Widget::mActionListeners [protected] |
Color gcn::Widget::mForegroundColor [protected] |
Color gcn::Widget::mBackgroundColor [protected] |
Color gcn::Widget::mBaseColor [protected] |
Color gcn::Widget::mDisabledColor [protected] |
FocusHandler* gcn::Widget::mFocusHandler [protected] |
Reimplemented in gcn::DropDown.
BasicContainer* gcn::Widget::mParent [protected] |
Rectangle gcn::Widget::mDimension [protected] |
unsigned int gcn::Widget::mBorderSize [protected] |
std::string gcn::Widget::mEventId [protected] |
int gcn::Widget::mClickTimeStamp [protected] |
int gcn::Widget::mClickCount [protected] |
int gcn::Widget::mClickButton [protected] |
bool gcn::Widget::mHasMouse [protected] |
bool gcn::Widget::mFocusable [protected] |
bool gcn::Widget::mVisible [protected] |
bool gcn::Widget::mTabIn [protected] |
bool gcn::Widget::mTabOut [protected] |
bool gcn::Widget::mEnabled [protected] |
Font* gcn::Widget::mCurrentFont [protected] |
int gcn::Widget::mHotKey [protected] |
DefaultFont gcn::Widget::mDefaultFont [static, protected] |
Font * gcn::Widget::mGlobalFont = NULL [static, protected] |
std::list< Widget * > gcn::Widget::mWidgets [static, protected] |
Reimplemented in gcn::Container.
bool gcn::Widget::mDirty [protected] |