Main Page | Class Hierarchy | Class List | Directories | File List | Class Members | Related Pages

gcn::Window Class Reference

#include <window.hpp>

Inheritance diagram for gcn::Window:

gcn::BasicContainer gcn::MouseListener gcn::Widget List of all members.

Detailed Description

A movable window which can conatin another Widget.

Definition at line 68 of file window.hpp.

Public Member Functions

 Window ()
 Constructor.
 Window (const std::string &caption)
 Constructor.
 Window (Widget *content, const std::string &caption="")
 Constructor.
virtual ~Window ()
 Destructor.
virtual void setCaption (const std::string &caption)
 Sets the Window caption.
virtual const std::string & getCaption () const
 Gets the Window caption.
virtual void setAlignment (unsigned int alignment)
 Sets the alignment for the caption.
virtual unsigned int getAlignment () const
 Gets the alignment for the caption.
virtual void setContent (Widget *widget)
 Sets the content Widget.
virtual WidgetgetContent () const
 Gets the content Widget.
virtual void setPadding (unsigned int padding)
 Sets the padding of the window which is the distance between the window border and the content.
virtual unsigned int getPadding () const
 Gets the padding.
virtual void setTitleBarHeight (unsigned int height)
 Sets the title bar height.
virtual unsigned int getTitleBarHeight ()
 Gets the title bar height.
virtual void setMovable (bool movable)
 Sets the Window to be moveble.
virtual bool isMovable () const
 Check if the window is movable.
virtual void resizeToContent ()
 Resizes the window to fit the content.
virtual void setOpaque (bool opaque)
 Sets the Window to be opaque.
virtual bool isOpaque ()
 Checks if the Window is opaque.
virtual void drawContent (Graphics *graphics)
 Draws the content of the Window.
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 getDrawSize (int &width, int &height, Widget *widget)
 Gets the drawing space size a Widget has in the BasicContainer.
virtual void _announceDeath (Widget *widget)
 Called when a child of the BasicContainer gets destroyed.
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 _mouseInputMessage (const MouseInput &mouseInput)
 Called when a Widget recieves a MouseInput.
virtual void _mouseOutMessage ()
 Called when the mouse leaves the Widget area.
virtual void _setFocusHandler (FocusHandler *focusHandler)
 Sets the FocusHandler to be used.
virtual void mousePress (int x, int y, int button)
 Called when a mouse button is pressed when the mouse is in the Widget area or if the Widget has focus.
virtual void mouseRelease (int x, int y, int button)
 Called when a mouse button is released when the mouse is in the Widget area or if the Widget has focus.
virtual void mouseMotion (int x, int y)
 Called when the mouse moves and the mouse is in the Widget area or if the Widget has focus.

Protected Member Functions

virtual void repositionContent ()
 Moves the content to the top left corner of the window, uses getContentDimension to get the offset.
virtual Rectangle getContentDimension ()
 Gets the area in the window that the content occupies.

Protected Attributes

std::string mCaption
unsigned int mAlignment
WidgetmContent
unsigned int mPadding
unsigned int mTitleBarHeight
bool mMouseDrag
int mMouseXOffset
int mMouseYOffset
bool mMovable
bool mOpaque


Constructor & Destructor Documentation

gcn::Window::Window const std::string &  caption  ) 
 

Constructor.

Parameters:
caption the Window caption.

Definition at line 78 of file window.cpp.

References gcn::Widget::addMouseListener(), setAlignment(), gcn::Widget::setBorderSize(), setCaption(), setMovable(), setOpaque(), setPadding(), and setTitleBarHeight().

gcn::Window::Window Widget content,
const std::string &  caption = ""
 

Constructor.

Parameters:
content the content Widget.
caption the Window caption.

Definition at line 92 of file window.cpp.

References gcn::Widget::addMouseListener(), setAlignment(), gcn::Widget::setBorderSize(), setCaption(), setContent(), setMovable(), setOpaque(), setPadding(), and setTitleBarHeight().


Member Function Documentation

void gcn::Window::_announceDeath Widget widget  )  [virtual]
 

Called when a child of the BasicContainer gets destroyed.

Parameters:
widget the destroyed Widget.

Implements gcn::BasicContainer.

Definition at line 134 of file window.cpp.

void gcn::Window::_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.

Parameters:
mouseInput the MouseInput message.

Reimplemented from gcn::Widget.

Definition at line 412 of file window.cpp.

References gcn::Widget::_mouseInMessage(), gcn::Widget::_mouseInputMessage(), gcn::Widget::_mouseOutMessage(), getContent(), getContentDimension(), gcn::Widget::getDimension(), gcn::Widget::getX(), gcn::Widget::getY(), gcn::Widget::hasMouse(), gcn::MouseInput::x, and gcn::MouseInput::y.

void gcn::Window::_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 from gcn::Widget.

Definition at line 438 of file window.cpp.

References gcn::Widget::_mouseOutMessage(), getContent(), and gcn::Widget::hasMouse().

void gcn::Window::_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.

Parameters:
focusHandler the FocusHandler to use.

Reimplemented from gcn::Widget.

Definition at line 448 of file window.cpp.

References gcn::Widget::_setFocusHandler(), and getContent().

void gcn::Window::draw Graphics graphics  )  [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.

Parameters:
graphics a Graphics object to draw with.

Implements gcn::Widget.

Definition at line 182 of file window.cpp.

References gcn::Color::a, drawContent(), getAlignment(), gcn::Widget::getBaseColor(), gcn::Widget::getBorderSize(), getCaption(), getContentDimension(), gcn::Widget::getFont(), gcn::Widget::getForegroundColor(), gcn::Font::getHeight(), gcn::Widget::getHeight(), getTitleBarHeight(), gcn::Widget::getWidth(), gcn::Rectangle::height, isOpaque(), gcn::Rectangle::width, gcn::Rectangle::x, and gcn::Rectangle::y.

void gcn::Window::drawBorder Graphics graphics  )  [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.

Parameters:
graphics a Graphics object to draw with.

Reimplemented from gcn::Widget.

Definition at line 275 of file window.cpp.

References gcn::Color::a, gcn::Widget::getBaseColor(), gcn::Widget::getBorderSize(), gcn::Widget::getHeight(), and gcn::Widget::getWidth().

void gcn::Window::drawContent Graphics graphics  )  [virtual]
 

Draws the content of the Window.

This functions uses the getContentDimension to determin where to draw the content.

Parameters:
graphics a Graphics object to draw with.

Definition at line 299 of file window.cpp.

References gcn::Widget::draw(), getContent(), getContentDimension(), gcn::Widget::getHeight(), and gcn::Widget::getWidth().

Referenced by draw().

unsigned int gcn::Window::getAlignment  )  const [virtual]
 

Gets the alignment for the caption.

Returns:
alignment of caption.

Definition at line 177 of file window.cpp.

Referenced by draw().

const std::string & gcn::Window::getCaption  )  const [virtual]
 

Gets the Window caption.

Returns:
the Window caption.

Definition at line 167 of file window.cpp.

Referenced by draw().

Widget * gcn::Window::getContent  )  const [virtual]
 

Gets the content Widget.

Returns:
the contant Widget.

Definition at line 157 of file window.cpp.

Referenced by _mouseInputMessage(), _mouseOutMessage(), _setFocusHandler(), drawContent(), getDrawSize(), logic(), moveToBottom(), moveToTop(), repositionContent(), resizeToContent(), and setContent().

void gcn::Window::getDrawSize int &  width,
int &  height,
Widget widget
[virtual]
 

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.

Parameters:
width the width the Widget's draw space has.
height the height the Widget's draw space has.
widget the Widget calling the function.

Implements gcn::BasicContainer.

Definition at line 361 of file window.cpp.

References getContent(), getContentDimension(), gcn::Rectangle::height, and gcn::Rectangle::width.

unsigned int gcn::Window::getPadding  )  const [virtual]
 

Gets the padding.

Returns:
the padding value.

Definition at line 118 of file window.cpp.

Referenced by getContentDimension(), mousePress(), and resizeToContent().

unsigned int gcn::Window::getTitleBarHeight  )  [virtual]
 

Gets the title bar height.

Returns:
the title bar height.

Definition at line 129 of file window.cpp.

Referenced by draw(), getContentDimension(), mousePress(), and resizeToContent().

bool gcn::Window::isMovable  )  const [virtual]
 

Check if the window is movable.

Returns:
true or false.

Definition at line 397 of file window.cpp.

Referenced by mouseMotion(), and mousePress().

bool gcn::Window::isOpaque  )  [virtual]
 

Checks if the Window is opaque.

Returns:
true or false.

Definition at line 463 of file window.cpp.

Referenced by draw().

void gcn::Window::logic  )  [virtual]
 

Called for all Widgets in the gui each time Gui::logic is called.

You can do logic stuff here like playing an animation.

See also:
Gui

Reimplemented from gcn::Widget.

Definition at line 468 of file window.cpp.

References getContent(), and gcn::Widget::logic().

void gcn::Window::mouseMotion int  x,
int  y
[virtual]
 

Called when the mouse moves and the mouse is in the Widget area or if the Widget has focus.

Parameters:
x the x coordinate of the mouse relative to the Widget itself.
y the y coordinate of the mouse relative to the Widget itself.

Reimplemented from gcn::MouseListener.

Definition at line 336 of file window.cpp.

References gcn::Widget::getX(), gcn::Widget::getY(), isMovable(), and gcn::Widget::setPosition().

void gcn::Window::mousePress int  x,
int  y,
int  button
[virtual]
 

Called when a mouse button is pressed when the mouse is in the Widget area or if the Widget has focus.

NOTE: A mouse press is NOT equal to a mouse click. Use mouseClickMessage to check for mouse clicks.

Parameters:
x the x coordinate of the mouse relative to the Widget itself.
y the y coordinate of the mouse relative to the Widget itself.
button the button pressed.

Reimplemented from gcn::MouseListener.

Definition at line 312 of file window.cpp.

References getPadding(), gcn::Widget::getParent(), getTitleBarHeight(), gcn::Widget::hasMouse(), isMovable(), and gcn::BasicContainer::moveToTop().

void gcn::Window::mouseRelease int  x,
int  y,
int  button
[virtual]
 

Called when a mouse button is released when the mouse is in the Widget area or if the Widget has focus.

Parameters:
x the x coordinate of the mouse relative to the Widget itself.
y the y coordinate of the mouse relative to the Widget itself.
button the button released.

Reimplemented from gcn::MouseListener.

Definition at line 328 of file window.cpp.

void gcn::Window::moveToBottom Widget widget  )  [virtual]
 

Moves a widget to the bottom of the BasicContainer.

The Widget will be drawn below all other Widgets in the BasicContainer.

Parameters:
widget the Widget to move.

Implements gcn::BasicContainer.

Definition at line 353 of file window.cpp.

References getContent().

void gcn::Window::moveToTop Widget widget  )  [virtual]
 

Moves a Widget to the top of the BasicContainer.

The widget will be drawn above all other Widgets in the BasicContainer.

Parameters:
widget the Widget to move.

Implements gcn::BasicContainer.

Definition at line 345 of file window.cpp.

References getContent().

void gcn::Window::setAlignment unsigned int  alignment  )  [virtual]
 

Sets the alignment for the caption.

Parameters:
alignemnt Graphics::LEFT, Graphics::CENTER or Graphics::RIGHT.

Definition at line 172 of file window.cpp.

Referenced by Window().

void gcn::Window::setCaption const std::string &  caption  )  [virtual]
 

Sets the Window caption.

Parameters:
caption the Window caption.

Definition at line 162 of file window.cpp.

Referenced by Window().

void gcn::Window::setContent Widget widget  )  [virtual]
 

Sets the content Widget.

Parameters:
widget the contant Widget.

Definition at line 139 of file window.cpp.

References gcn::Widget::_getFocusHandler(), gcn::Widget::_setFocusHandler(), gcn::Widget::_setParent(), getContent(), and repositionContent().

Referenced by Window(), and ~Window().

void gcn::Window::setMovable bool  movable  )  [virtual]
 

Sets the Window to be moveble.

Parameters:
movable true or false.

Definition at line 392 of file window.cpp.

Referenced by Window().

void gcn::Window::setOpaque bool  opaque  )  [virtual]
 

Sets the Window to be opaque.

If it's not opaque, the content area will not be filled with a color.

Parameters:
opaque true or false.

Definition at line 458 of file window.cpp.

Referenced by Window().

void gcn::Window::setPadding unsigned int  padding  )  [virtual]
 

Sets the padding of the window which is the distance between the window border and the content.

Parameters:
padding the padding value.

Definition at line 112 of file window.cpp.

References repositionContent().

Referenced by Window().

void gcn::Window::setTitleBarHeight unsigned int  height  )  [virtual]
 

Sets the title bar height.

Parameters:
title the title height value.

Definition at line 123 of file window.cpp.

References repositionContent().

Referenced by Window().


The documentation for this class was generated from the following files:
Generated on Tue May 17 21:23:27 2005 for Guichan by  doxygen 1.4.1