Maeomm Reference Documentation: hildonmm
Main Page   Namespaces   Book  

Hildon::WindowStack Class Reference

A stack of windows in the Hildon framework. More...

Inheritance diagram for Hildon::WindowStack:

Inheritance graph
[legend]

List of all members.

Public Member Functions

virtual ~WindowStack ()
HildonWindowStack* gobj ()
 Provides access to the underlying C GObject.
const HildonWindowStack* gobj () const
 Provides access to the underlying C GObject.
HildonWindowStack* gobj_copy ()
 Provides access to the underlying C instance. The caller is responsible for unrefing it. Use when directly setting fields in structs.
int size () const
 Return value: Number of windows in stack.
bool empty () const
StackableWindowtop () const
 Return value: the window on top of the stack, or 0 if the stack.
void push (StackableWindow* win)
 Adds win to the top of stack, and shows it.
StackableWindowpop ()
 Removes the window on top of stack, and hides it.
void push (const Glib::ListHandle<StackableWindow*>& list)
 Pushes all windows in list to the top of stack, and shows them.
Glib::ListHandle
<StackableWindow*> 
pop (int nwindows)
 Pops nwindows windows from stack, and hides them.
Glib::ListHandle
<StackableWindow*> 
pop_and_push (int nwindows, const Glib::ListHandle<StackableWindow*>& list)
 Pops nwindows windows from stack (and hides them), then pushes all windows in list (and shows them).

Static Public Member Functions

static Glib::RefPtr<WindowStackcreate ()
 Create a new WindowStack.
static Glib::RefPtr<WindowStackget_default ()
 Return value: the default Hildon::WindowStack.

Protected Member Functions

 WindowStack ()

Related Functions

(Note that these are not member functions.)

Glib::RefPtr<Hildon::WindowStackwrap (HildonWindowStack* object, bool take_copy=false)
 A Glib::wrap() method for this object.


Detailed Description

A stack of windows in the Hildon framework.

Stacks contain all Hildon::StackableWindow instances that are being shown. The user can only interact with the topmost window from each stack (as it covers all the others), but all of them are mapped and visible from the GTK+ point of view.

Each window can only be in one stack at a time. All stacked windows are visible and all visible windows are stacked. Each application has a default stack, and windows are automatically added to it when they are shown with Gtk::Widget::show().

Additional stacks can be created at any time using Hildon::WindowStack::create(). To add a window to a specific stack, use Hildon::WindowStack::push() (remember that, for the default stack, Gtk::Widget::show() can be used instead).

To remove a window from a stack use Hildon::WindowStack::pop(), or simply Gtk::Widget::hide().

For more complex layout changes, applications can push and/or pop several windows at the same time in a single step. See Hildon::WindowStack::push(), Hildon::WindowStack::pop() and Hildon::WindowStack::pop_and_push() for more details.


Constructor& Destructor Documentation

virtual Hildon::WindowStack::~WindowStack (  )  [virtual]

Hildon::WindowStack::WindowStack (  )  [protected]


Member Function Documentation

HildonWindowStack* Hildon::WindowStack::gobj (  )  [inline]

Provides access to the underlying C GObject.

Reimplemented from Glib::ObjectBase.

const HildonWindowStack* Hildon::WindowStack::gobj (  )  const [inline]

Provides access to the underlying C GObject.

Reimplemented from Glib::ObjectBase.

HildonWindowStack* Hildon::WindowStack::gobj_copy (  ) 

Provides access to the underlying C instance. The caller is responsible for unrefing it. Use when directly setting fields in structs.

static Glib::RefPtr<WindowStack> Hildon::WindowStack::create (  )  [static]

Create a new WindowStack.

The WindowStack is initally empty.

Returns:
A new WindowStack.

static Glib::RefPtr<WindowStack> Hildon::WindowStack::get_default (  )  [static]

Return value: the default Hildon::WindowStack.

Returns:
The default Hildon::WindowStack
.

int Hildon::WindowStack::size (  )  const

Return value: Number of windows in stack.

Returns:
Number of windows in stack
.

bool Hildon::WindowStack::empty (  )  const

StackableWindow* Hildon::WindowStack::top (  )  const

Return value: the window on top of the stack, or 0 if the stack.

Returns:
The window on top of the stack, or 0 if the stack is empty.
.

void Hildon::WindowStack::push ( StackableWindow win  ) 

Adds win to the top of stack, and shows it.

The window must not be already stacked.

Parameters:
win A Hildon::StackableWindow.

StackableWindow* Hildon::WindowStack::pop (  ) 

Removes the window on top of stack, and hides it.

If the stack is empty nothing happens.

Returns:
The window on top of the stack, or 0 if the stack is empty.
.

void Hildon::WindowStack::push ( const Glib::ListHandle<StackableWindow*>&  list  ) 

Pushes all windows in list to the top of stack, and shows them.

Everything is done in a single transition, so the user will only see the last window in list during this operation. None of the windows must be already stacked.

Parameters:
list A list of Hildon::StackableWindows to push.

Glib::ListHandle<StackableWindow*> Hildon::WindowStack::pop ( int  nwindows  ) 

Pops nwindows windows from stack, and hides them.

Everything is done in a single transition, so the user will not see any of the windows being popped in this operation.

If popped_windows is not 0, the list of popped windows is stored there (ordered bottom-up). That list must be freed by the user.

Parameters:
nwindows Number of windows to pop.
popped_windows If non-0, the list of popped windows is stored here.

Glib::ListHandle<StackableWindow*> Hildon::WindowStack::pop_and_push ( int  nwindows,
const Glib::ListHandle<StackableWindow*>&  list 
)

Pops nwindows windows from stack (and hides them), then pushes all windows in list (and shows them).

Everything is done in a single transition, so the user will only see the last window from list. None of the pushed windows must be already stacked.

If popped_windows is not 0, the list of popped windows is stored there (ordered bottom-up). That list must be freed by the user.

Parameters:
nwindows Number of windows to pop.
popped_windows If non-0, the list of popped windows is stored here.
list A list of Hildon::StackableWindows to push.


Friends And Related Function Documentation

Glib::RefPtr<Hildon::WindowStack> wrap ( HildonWindowStack *  object,
bool  take_copy = false 
) [related]

A Glib::wrap() method for this object.

Parameters:
object The C instance.
take_copy False if the result should take ownership of the C instance. True if it should take a new copy or ref.
Returns:
A C++ instance that wraps this C instance.


The documentation for this class was generated from the following file:

Generated for hildonmm by Doxygen 1.5.6 © 1997-2001