|
Back to Table of contents |
General information |
type: class
inherits: GlowWidget
module: glowMenuButtonWidgetGlowMenuButtonWidget is a menu button widget.
GLOW programs may use this class to implement menu buttons, menu palettes and menu bars.
Constants |
Icon types
Types of icons that may be drawn in a menu button.enum GlowMenuButtonWidget::IconType noIcon
Don't draw an icon in the menu button.enum GlowMenuButtonWidget::IconType menuIcon
Draw an icon of a menu in the menu button.enum GlowMenuButtonWidget::IconType arrowIcon
Draw an icon of a downward-pointing arrow in the menu button.Inherited constants
These constants are inherited from GlowWidget.enum GlowWidget::AutoPackError noAutoPackError
enum GlowWidget::AutoPackError hAutoPackError
enum GlowWidget::AutoPackError vAutoPackErrorenum GlowWidget::AutoPackOptions noReshape
enum GlowWidget::AutoPackOptions preferredSize
enum GlowWidget::AutoPackOptions expandPreferredSize
enum GlowWidget::AutoPackOptions forcedSize
enum GlowWidget::AutoPackOptions noMove
enum GlowWidget::AutoPackOptions leftPos
enum GlowWidget::AutoPackOptions rightPos
enum GlowWidget::AutoPackOptions topPos
enum GlowWidget::AutoPackOptions bottomPos
enum GlowWidget::AutoPackOptions centerPosenum { unspecifiedSize }
enum { unspecifiedPos }
Methods |
Constructors and destructor
GlowMenuButtonWidget(GlowWidget* parent, const GlowMenuButtonParams& params)
Creates a new GlowMenuButtonWidget using the given params and adds it to parent's children.GlowMenuButtonWidget(GlowWidgetRoot* root, const GlowMenuButtonParams& params)
Creates a new GlowMenuButtonWidget using the given params and adds it to the top level under root.GlowMenuButtonWidget(void)
Creates a new GlowMenuButtonWidget but does not initialize it. A button created in this way may not be used until its Init() method is called.void Init(GlowWidget* parent, const GlowMenuButtonParams& params)
Initializes a new GlowMenuButtonWidget using the given params and adds it to parent's children.void Init(GlowWidgetRoot* root, const GlowMenuButtonParams& params)
Initializes a new GlowMenuButtonWidget using the given params and adds it to the top level under root.virtual ~GlowMenuButtonWidget(void)
Attributes
const char* GetText(void) const
Returns the label string for the button.void SetText(const char* text)
Sets the label string for the button.GlowFont GetFont(void) const
Returns the font for the button label.void SetFont(GlowFont font)
Sets the font for the button label.int GetSpacing(void) const
Returns the spacing in pixels between elements in the menu button.void SetSpacing(int spacing)
Sets the spacing in pixels between elements in the menu button.GlowMenuButtonWidget::IconType GetIconType(void) const
Returns the icon to be drawn in the menu button.void SetIconType(GlowMenuButtonWidget::IconType iconType)
Sets the icon to be drawn in the menu button.GlowMenu* GetMenu(void) const
Returns the menu attached to the button.void SetMenu(GlowMenu* menu)
Sets the menu attached to the button.Color attributes
GlowColor GetBoxColor(void) const
void SetBoxColor(GlowColor c)
GlowColor GetIconColor(void) const
void SetIconColor(GlowColor c)
GlowColor GetTextColor(void) const
void SetTextColor(GlowColor c)
GlowColor GetHiliteBoxColor(void) const
void SetHiliteBoxColor(GlowColor c)
GlowColor GetHiliteIconColor(void) const
void SetHiliteIconColor(GlowColor c)
GlowColor GetHiliteTextColor(void) const
void SetHiliteTextColor(GlowColor c)
GlowColor GetDisableBoxColor(void) const
void SetDisableBoxColor(GlowColor c)
GlowColor GetDisableIconColor(void) const
void SetDisableIconColor(GlowColor c)
GlowColor GetDisableTextColor(void) const
void SetDisableTextColor(GlowColor c)
GlowColor GetDisableOutlineColor(void) const
void SetDisableOutlineColor(GlowColor c)
GlowColor GetLightBevelColor(void) const
void SetLightBevelColor(GlowColor c)
GlowColor GetDarkBevelColor(void) const
void SetDarkBevelColor(GlowColor c)
Inherited methods
These methods are inherited from GlowWidget.void Move(int x, int y)
int PositionX(void) const
int PositionY(void) const
int RootPositionX(void) const
int RootPositionY(void) const
int GlobalPositionX(void) const
int GlobalPositionY(void) const
void Reshape(int width, int height)
int Width(void) const
int Height(void) const
GlowWidget::AutoPackError AutoPack(int leftLimit, int rightLimit, int topLimit, int bottomLimit, GlowWidget::AutoPackOptions hOption, GlowWidget::AutoPackOptions vOption, int& leftMargin, int& rightMargin, int& topMargin, int& bottomMargin)
GlowWidget::AutoPackError AutoPack(int leftLimit, int rightLimit, int topLimit, int bottomLimit, GlowWidget::AutoPackOptions hOption, GlowWidget::AutoPackOptions vOption)GlowWidget::AutoPackError AutoReshape(int& leftMargin, int& rightMargin, int& topMargin, int& bottomMargin)
GlowWidget::AutoPackError AutoReshape()void Hide(void)
void Show(void)
bool IsVisible(void) const
bool IsInvisible(void) const
bool IsVisibleMasked(void) const
void Refresh(void)
void SetRefreshEnabled(bool enabled)
bool IsRefreshEnabled(void) const
void SetClipping(bool clip)
bool IsClipping(void)
void GrabKeyboardFocus(void)
Menu buttons should not attempt to grab the keyboard focus unless a subclass makes use of keyboard events.void RelinquishKeyboardFocus(void)
bool HasKeyboardFocus(void)
GlowWidgetRoot* Root(void)
void SetRefCon(long refcon)
long GetRefCon(void)
Inherited methods
These methods are inherited from GlowComponent.void Close(void)
GlowComponent* Parent(void) const
GlowSubwindow* WhichWindow(void)
GlowSubwindow* ParentWindow(void) const
GlowWindow* ToplevelWindow(void)
bool IsToplevel(void) const
GlowComponent* Next(void) const
GlowComponent* Prev(void) const
int NumChildren(void) const
GlowComponent* FirstChild(void) const
GlowComponent* LastChild(void) const
void ReorderChild(GlowComponent* child, GlowComponent* pos)
void KillChildren(void)
void Activate(void)
void Deactivate(void)
bool IsActive(void)
bool IsInactive(void)
bool IsActiveStandby(void)
void Paint(void)
Protected methods for subclasses |
Initialization
void Init(GlowWidgetRoot* root, GlowWidget* parent, const GlowMenuButtonParams& params)
Initializes a new GlowMenuButtonWidget using the given params and adds it to root's hierarchy under parent. parent must be present in root's hierarchy.Inherited methods
These methods are inherited from GlowWidget.void NormalizeCoordinates(int x, int y, GLfloat& xn, GLfloat& yn) const
void RegisterMouseEvents(void)
void RegisterKeyboardEvents(void)
void UnegisterMouseEvents(void)
void UnregisterKeyboardEvents(void)
Overrideable methods |
Inherited methods
These methods are inherited from GlowWidget.virtual void OnWidgetPaint(void)
In a GlowMenuButtonWidget, a subwindow covers the entire widget area. Therefore, you should not need to override this method.virtual void OnWidgetMouseDown(Glow::MouseButton mouseButton, int x, int y, Glow::Modifiers modifiers)
GlowMenuButtonWidget overrides this method to handle mouse events. You should not override it again unless a subclass needs to modify how events are handled.virtual void OnWidgetMouseUp(Glow::MouseButton mouseButton, int x, int y, Glow::Modifiers modifiers)
GlowMenuButtonWidget overrides this method to handle mouse events. You should not override it again unless a subclass needs to modify how events are handled.virtual void OnWidgetMouseDrag(int x, int y)
GlowMenuButtonWidget overrides this method to handle mouse events. You should not override it again unless a subclass needs to modify how events are handled.virtual void OnWidgetKeyboard(Glow::KeyCode key, int x, int y, Glow::Modifiers modifiers)
The standard GlowMenuButtonWidget does not handle keyboard events. Override this method if a subclass needs to receive keyboard events.virtual void OnWidgetMove(int x, int y)
A GlowMenuButtonWidget is implemented using a subwindow internally. It overrides this method to make sure the subwindow is moved when the widget is moved. If you override it again, make sure you call the inherited method.virtual void OnWidgetReshape(int width, int height)
A GlowMenuButtonWidget is implemented using a subwindow internally. It overrides this method to make sure the subwindow is reshaped when the widget is reshaped. If you override it again, make sure you call the inherited method.virtual void OnWidgetInvisible(void)
A GlowMenuButtonWidget is implemented using a subwindow internally. It overrides this method to make sure the subwindow is hidden when the widget is hidden. If you override it again, make sure you call the inherited method.virtual void OnWidgetVisible(void)
A GlowMenuButtonWidget is implemented using a subwindow internally. It overrides this method to make sure the subwindow is shown when the widget is shown. If you override it again, make sure you call the inherited method.virtual void OnWidgetDeactivate(void)
virtual void OnWidgetActivate(void)
virtual void OnGotKeyboardFocus(void)
virtual void OnLostKeyboardFocus(void)
virtual GlowWidget::AutoPackError OnAutoPack(int hSize, int vSize, GlowWidget::AutoPackOptions hOption, GlowWidget::AutoPackOptions vOption, int& leftMargin, int& rightMargin, int& topMargin, int& bottomMargin)
GlowMenuButtonWidget implements this method to pack a button. Override it if a subclass requires different packing.Inherited methods
These methods are inherited from GlowComponent, but are used by GlowWidget and should not be overridden again.virtual void OnActivate(void)
virtual void OnDeactivate(void)
virtual void OnBeginPaint(void)
virtual void OnEndPaint(void)
|
Back to Table of contents |
The GLOW Toolkit