GLOW API version 1.0 reference

Back to
Table of contents


class GlowWindow

General information

type: class
inherits: GlowSubwindow
module: glow

GlowWindow is the base class of toplevel windows. It extends GlowSubwindow by adding the concepts of iconification and title. A GlowWindow is at the top of every component hierarchy.

All GLOW programs must make use of toplevel windows.

Constants

Special window positioning constant

enum { autoPosition }

Allow the window manager to position the window as it chooses.

Methods

Constructors and destructor

GlowWindow(const GlowWindowParams& params)

Creates a new GlowWindow with options specified by the given params. Also creates the corresponding GLUT window.

GlowWindow(const char* title, int x, int y, int width, int height, Glow::BufferType mode, Glow::EventMask eventMask)

Creates a new GlowWindow with options specified by the given params. Also creates the corresponding GLUT window. title denotes the title of the window. x and y denote the pixel location of the top left corner of the window, in screen pixel coordinates. The constant GlowWindow::autoPosition may be used instead. width and height specify the width and height in pixels. mode describes the type of frame buffer to use. eventMask specifies which events the window wishes to receive when active. Use the event constants described in Glow for the event mask.

GlowWindow(void)

Creates a new GlowWindow but does not initialize it. A window created in this way may not be used until its Init() method is called.

void Init(const GlowWindowParams& params)

Initializes the GlowWindow with options specified by the given params. Also creates the corresponding GLUT window.

void Init(const char* title, int x, int y, int width, int height, Glow::BufferType mode, Glow::EventMask eventMask)

Initializes the GlowWindow with options specified by the given params. Also creates the corresponding GLUT window. title denotes the title of the window. x and y denote the pixel location of the top left corner of the subwindow, in screen pixel coordinates. width and height specify the width and height in pixels. mode describes the type of frame buffer to use. eventMask specifies which events the window wishes to receive when active. Use the event constants described in Glow for the event mask.

virtual ~GlowWindow(void)

The destructor for GlowWindow removes the GLUT window and recursively deletes its entire hierarchy.

Toplevel window operations
You can perform special toplevel window operations using these methods.

void Maximize(void)

Attempts to maximize the window, and also removes the window decorations. The intent is to create a full-screen window. Note that the exact behavior is window manager dependent. Some window managers may not support removing the window decorations, and the resulting width and height of the window is not guaranteed to be the width and height of the screen. This operation can be undone by simply calling Reshape().

void Iconify(void)

Attempts to iconify the window, if supported by the window manager. If window iconification is not supported, does nothing.

const char* GetTitle(void) const

Returns the current window title.

void SetTitle(const char* title)

Sets the window title.

const char* GetIconTitle(void) const

Returns the current icon title.

void SetIconTitle(const char* title)

Sets the icon title.

Inherited methods
These methods are inherited from GlowSubwindow.

int PositionX(void) const

Note: for a toplevel window, this returns the same value as GlobalPositionX.

int PositionY(void) const

Note: for a toplevel window, this returns the same value as GlobalPositionY.

int GlobalPositionX(void) const

int GlobalPositionY(void) const

int Width(void) const

int Height(void) const

void Move(int x, int y)

void Reshape(int width, int height)

void Raise(void)

void Lower(void)

void Show(void)

void Hide(void)

void Refresh(void)

void SetRefreshEnabled(bool enabled)

bool IsRefreshEnabled(void) const

void SetAutoSwapBuffersEnabled(bool enabled)

bool IsAutoSwapBuffersEnabled(void) const

void NormalizeCoordinates(int x, int y, GLfloat& xn, GLfloat& yn) const

Glow::BufferType GetBufferType(void) const

GlowMenu* GetMenu(Glow::MouseButton mouseButton) const

void SetMenu(Glow::MouseButton mouseButton, GlowMenu* menu = 0)

void UnsetMenu(Glow::MouseButton mouseButton)

int GetCursor(void) const

void SetCursor(int cursor)

Glow::EventMask GetEventMask(void) const

Glow::EventMask GetInactiveEventMask(void) const

void SetEventMask(Glow::EventMask mask)

void SetInactiveEventMask(Glow::EventMask mask)

int GlutWindowNum(void) const

void MakeCurGlutWindow(void)

int GlutInfo(int whichInfo) const

Inherited methods
These methods are inherited from GlowComponent.

void Close(void)

GlowComponent* Parent(void) const

Note: For a toplevel window, Parent() returns 0.

GlowSubwindow* WhichWindow(void)

Note: For a toplevel window, WhichWindow() returns this.

GlowSubwindow* ParentWindow(void) const

Note: For a toplevel window, ParentWindow() returns 0.

GlowWindow* ToplevelWindow(void)

Note: For a toplevel window, ToplevelWindow() returns this.

bool IsToplevel(void) const

Note: For a toplevel window, returns true.

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)

Overrideable methods

Inherited methods
These overrideable methods are inherited from GlowSubwindow.

virtual void OnMouseDown(Glow::MouseButton mouseButton, int x, int y, Glow::Modifiers modifiers)

virtual void OnMouseUp(Glow::MouseButton mouseButton, int x, int y, Glow::Modifiers modifiers)

virtual void OnMenuDown(int x, int y)

virtual void OnMenuUp()

virtual void OnMouseMotion(int x, int y)

virtual void OnMouseDrag(int x, int y)

virtual void OnMouseEnter(void)

virtual void OnMouseExit(void)

virtual void OnKeyboard(Glow::KeyCode key, int x, int y, Glow::Modifiers modifiers)

virtual void OnDirectMenuHit(const GlowMenuMessage& message)

virtual void OnReshape(int width, int height)

virtual void OnInvisible(void)

virtual void OnVisible(void)

Inherited methods
These overrideable methods are inherited from GlowComponent.

virtual bool OnBeginPaint(void)

virtual void OnEndPaint(void)

virtual void OnActivate(void)

virtual void OnDeactivate(void)


Back to
Table of contents


The GLOW Toolkit