#include <amigawindow.h>
Classes | |
struct | AmigaWindowFlags |
Public Types | |
enum | AmigaWindowFlagType { AMIGA_WINDOW_SHOW_CLOSE = 0x0001, AMIGA_WINDOW_SHOW_DEPTH = 0x0002 } |
Public Member Functions | |
AmigaWindow (s16 x, s16 y, u16 width, u16 height, const char *title, u32 flags, u32 windowFlags, FontBase *font=NULL) | |
virtual void | setBorderless (bool isBorderless) |
virtual const u8 | getBorderSize () const |
virtual const u8 | getTitleHeight () const |
virtual void | getClientRect (Rect &rect) const |
virtual bool | click (s16 x, s16 y) |
virtual bool | focus () |
virtual bool | blur () |
virtual bool | resize (u16 width, u16 height) |
virtual void | handleClickEvent (const GadgetEventArgs &e) |
virtual void | handleDragEvent (const GadgetEventArgs &e) |
virtual void | handleReleaseEvent (const GadgetEventArgs &e) |
virtual void | handleReleaseOutsideEvent (const GadgetEventArgs &e) |
virtual void | showCloseButton () |
virtual void | showDepthButton () |
virtual void | hideCloseButton () |
virtual void | hideDepthButton () |
virtual const bool | hasCloseButton () const |
virtual const bool | hasDepthButton () const |
Protected Member Functions | |
virtual void | createBorder () |
virtual | ~AmigaWindow () |
AmigaWindow (const AmigaWindow &amigaWindow) | |
Protected Attributes | |
AmigaWindowFlags | _windowFlags |
WindowBorderTop * | _windowBorderTop |
WindowBorderSide * | _windowBorderLeft |
WindowBorderSide * | _windowBorderRight |
WindowBorderBottom * | _windowBorderBottom |
WindowBorderButton * | _closeButton |
WindowBorderButton * | _depthButton |
Class providing a window that mimics the appearance of the windows from Amiga Workbench 3.x. It has a title bar and borders around the edge of the window, along with a depth button and (optional) close button.
WoopsiUI::AmigaWindow::AmigaWindow | ( | s16 | x, | |
s16 | y, | |||
u16 | width, | |||
u16 | height, | |||
const char * | title, | |||
u32 | flags, | |||
u32 | windowFlags, | |||
FontBase * | font = NULL | |||
) |
Constructor.
x | The x co-ordinate of the window, relative to its parent. | |
y | The y co-ordinate of the window, relative to its parent. | |
width | The width of the window. | |
height | The height of the window. | |
title | The text that should appear in the title bar. | |
flags | Standard flags. Setting GADGET_BORDERLESS hides the Amiga borders. | |
windowFlags | Window-specfic flags from the WindowFlagType enum. | |
font | The font to use for the window. |
virtual WoopsiUI::AmigaWindow::~AmigaWindow | ( | ) | [inline, protected, virtual] |
Destructor.
WoopsiUI::AmigaWindow::AmigaWindow | ( | const AmigaWindow & | amigaWindow | ) | [inline, protected] |
Copy constructor is protected to prevent usage.
virtual bool WoopsiUI::AmigaWindow::blur | ( | ) | [virtual] |
Remove focus from the gadget.
Reimplemented from WoopsiUI::Gadget.
virtual bool WoopsiUI::AmigaWindow::click | ( | s16 | x, | |
s16 | y | |||
) | [virtual] |
Click this gadget at the supplied co-ordinates.
x | X co-ordinate of the click. | |
y | Y co-ordinate of the click. |
Reimplemented from WoopsiUI::Gadget.
virtual void WoopsiUI::AmigaWindow::createBorder | ( | ) | [protected, virtual] |
Create the window's border.
virtual bool WoopsiUI::AmigaWindow::focus | ( | ) | [virtual] |
Give the gadget focus.
Reimplemented from WoopsiUI::Gadget.
virtual const u8 WoopsiUI::AmigaWindow::getBorderSize | ( | ) | const [virtual] |
Gets the size of the left, right and bottom borders.
virtual void WoopsiUI::AmigaWindow::getClientRect | ( | Rect & | rect | ) | const [virtual] |
Insert the properties of the space within this gadget that is available for children into the rect passed in as a parameter. All co-ordinates are relative to this gadget.
rect | Reference to a rect to populate with data. |
Reimplemented from WoopsiUI::Gadget.
virtual const u8 WoopsiUI::AmigaWindow::getTitleHeight | ( | ) | const [virtual] |
Gets the height of the title bar.
virtual void WoopsiUI::AmigaWindow::handleClickEvent | ( | const GadgetEventArgs & | e | ) | [virtual] |
Handle events fired by decoration gadgets.
e | Event arguments to process. |
Reimplemented from WoopsiUI::GadgetEventHandler.
Reimplemented in WoopsiUI::WoopsiKeyboard.
virtual void WoopsiUI::AmigaWindow::handleDragEvent | ( | const GadgetEventArgs & | e | ) | [virtual] |
Handle events fired by decoration gadgets.
e | Event arguments to process. |
Reimplemented from WoopsiUI::GadgetEventHandler.
virtual void WoopsiUI::AmigaWindow::handleReleaseEvent | ( | const GadgetEventArgs & | e | ) | [virtual] |
Handle events fired by decoration gadgets.
e | Event arguments to process. |
Reimplemented from WoopsiUI::GadgetEventHandler.
Reimplemented in WoopsiUI::Alert, WoopsiUI::Requester, and WoopsiUI::WoopsiKeyboard.
virtual void WoopsiUI::AmigaWindow::handleReleaseOutsideEvent | ( | const GadgetEventArgs & | e | ) | [virtual] |
Handle events fired by decoration gadgets.
e | Event arguments to process. |
Reimplemented from WoopsiUI::GadgetEventHandler.
Reimplemented in WoopsiUI::WoopsiKeyboard.
virtual const bool WoopsiUI::AmigaWindow::hasCloseButton | ( | ) | const [inline, virtual] |
Does the window have a close button?
virtual const bool WoopsiUI::AmigaWindow::hasDepthButton | ( | ) | const [inline, virtual] |
Does the window have a depth button?
virtual void WoopsiUI::AmigaWindow::hideCloseButton | ( | ) | [virtual] |
Hides the close button if it is visible. Has no effect if the window is borderless. Will redraw the gadget.
virtual void WoopsiUI::AmigaWindow::hideDepthButton | ( | ) | [virtual] |
Hides the depth button if it is hidden. Has no effect if the window is borderless. Will redraw the gadget.
virtual bool WoopsiUI::AmigaWindow::resize | ( | u16 | width, | |
u16 | height | |||
) | [virtual] |
Resize the gadget to the new dimensions.
width | The new width. | |
height | The new height. |
Reimplemented from WoopsiUI::Gadget.
Reimplemented in WoopsiUI::Requester.
virtual void WoopsiUI::AmigaWindow::setBorderless | ( | bool | isBorderless | ) | [virtual] |
Show or hide the Amiga borders.
isBorderless | True to enable borders, false to disable them. |
Reimplemented from WoopsiUI::Gadget.
virtual void WoopsiUI::AmigaWindow::showCloseButton | ( | ) | [virtual] |
Shows the close button if it is hidden. Has no effect if the window is borderless. Will redraw the gadget.
virtual void WoopsiUI::AmigaWindow::showDepthButton | ( | ) | [virtual] |
Shows the depth button if it is hidden. Has no effect if the window is borderless. Will redraw the gadget.
WindowBorderButton* WoopsiUI::AmigaWindow::_closeButton [protected] |
Pointer to the close button
WindowBorderButton* WoopsiUI::AmigaWindow::_depthButton [protected] |
Pointer to the depth button
Pointer to the bottom border
WindowBorderSide* WoopsiUI::AmigaWindow::_windowBorderLeft [protected] |
Pointer to the left border
Pointer to the right border
WindowBorderTop* WoopsiUI::AmigaWindow::_windowBorderTop [protected] |
Pointer to the top border
AmigaWindowFlags WoopsiUI::AmigaWindow::_windowFlags [protected] |
AmigaWindow-specific flags