|
Back to Table of contents |
General information |
type: class
inherits: GlowPushButtonWidget
module: glowPushButtonWidgetGlowDismissPushButtonWidget is a pushbutton widget that optionally dismisses a window or other component when it is pressed. You should typically use this class for any pushbutton that deletes the window containing the button. It is not safe to simply write a GlowPushButtonReceiver to delete the window, because this will cause the button to go away while still iterating through its receivers. GlowDismissPushButtonWidget solves this problem by deleteing the window at the end of OnPressed(), which is a safe point for the button to be destructed.
GLOW programs that include buttons which dismiss their containing windows (such as in dialog boxes) should use this class, as well as any application that wants a convenient way for a button to delete any GlowComponent.
Constants |
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
GlowDismissPushButtonWidget(GlowWidget* parent, const GlowPushButtonParams& params, GlowComponent* todismiss)
Creates a new GlowDismissPushButtonWidget using the given params and adds it to parent's children. The button is set to delete the given component when it is pressed.GlowDismissPushButtonWidget(GlowWidgetRoot* root, const GlowPushButtonParams& params, GlowComponent* todismiss)
Creates a new GlowDismissPushButtonWidget using the given params and adds it to the top level under root. The button is set to delete the given component when it is pressed.GlowDismissPushButtonWidget(void)
Creates a new GlowDismissPushButtonWidget 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 GlowPushButtonParams& params, GlowComponent* todismiss)
Initializes a new GlowDismissPushButtonWidget using the given params and adds it to parent's children. The button is set to delete the given component when it is pressed.void Init(GlowWidgetRoot* root, const GlowPushButtonParams& params, GlowComponent* todismiss)
Initializes a new GlowDismissPushButtonWidget using the given params and adds it to the top level under root. The button is set to delete the given component when it is pressed.virtual ~GlowDismissPushButtonWidget(void)
Dismiss-pushbutton methods
void SetToDismiss(GlowComponent* todismiss)
Sets the component dismissed by this GlowDismissPushButtonWidget. Pass NULL to not dismiss any component.GlowComponent* GetToDismiss(void) const
Returns the component dismissed by this GlowDismissPushButtonWidget.Inherited methods
These methods are inherited from GlowPushButtonWidget.const char* GetText(void) const
void SetText(const char* text)
GlowFont GetFont(void) const
void SetFont(GlowFont font)
GlowColor GetBoxColor(void) const
void SetBoxColor(GlowColor c)
GlowColor GetTextColor(void) const
void SetTextColor(GlowColor c)
GlowColor GetHiliteBoxColor(void) const
void SetHiliteBoxColor(GlowColor c)
GlowColor GetHiliteTextColor(void) const
void SetHiliteTextColor(GlowColor c)
GlowColor GetDisableBoxColor(void) const
void SetDisableBoxColor(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)
TSender<const GlowPushButtonMessage&>& Notifier(void)
void Hit(Glow::MouseButton mouseButton, Glow::Modifiers modifiers)
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)
Pushbuttons 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 |
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 GlowPushButtonWidget.virtual void OnHit(Glow::MouseButton mouseButton, Glow::Modifiers modifiers)
GlowDismissPushButtonWidget overrides this method to Close() the specified component after the receivers have been notified of the button press.Inherited methods
These methods are inherited from GlowWidget.virtual void OnWidgetPaint(void)
GlowPushButton overrides this method to draw the check box. You should not override it again unless a subclass needs to modify how pushbuttons are drawn.virtual void OnWidgetMouseDown(Glow::MouseButton mouseButton, int x, int y, Glow::Modifiers modifiers)
GlowPushButton 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)
GlowPushButton 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)
GlowPushButton 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 GlowPushButton does not handle keyboard events. Override this method if a subclass needs to receive keyboard events.virtual void OnWidgetMove(int x, int y)
virtual void OnWidgetReshape(int width, int height)
virtual void OnWidgetInvisible(void)
virtual void OnWidgetVisible(void)
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)
GlowPushButton 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