Pane container class. More...
#include <ilviews/gadgets/panecont.h>
Public Member Functions | |
IlvPanedContainer (IlvAbstractView *parent, const IlvRect &rect, IlvDirection direction, IlBoolean visible=IlTrue) | |
Initializes a new instance of the IlvPanedContainer class as a child view of a view. More... | |
IlvPanedContainer (IlvDisplay *display, const char *name, const char *title, const IlvRect &rect, IlvDirection direction, IlUInt properties=0, IlBoolean visible=IlTrue, IlvSystemView transientFor=0) | |
Initializes a new instance of the IlvPanedContainer class as a top window. More... | |
IlvPanedContainer (IlvDisplay *display, IlvSystemView parent, const IlvRect &rect, IlvDirection direction, IlBoolean visible=IlTrue) | |
Initializes a new instance of the IlvPanedContainer class as a child view of a system view. More... | |
IlvPanedContainer (IlvDisplay *display, IlvSystemView window, IlvDirection direction) | |
Initializes a new instance of the IlvPanedContainer class mapped to an existing system view. More... | |
virtual void | addPane (IlvPane *pane, IlUInt index=(IlUInt) -1) |
Adds a pane to the paned container at the specified index. More... | |
IlAny | applyUntil (IlvApplyPane func, IlAny arg=0) |
Applies the specified function to all the panes of the paned container. More... | |
IlUInt | getCardinal () const |
Returns the number of panes managed by the paned container. More... | |
IlvDirection | getDirection () const |
Returns the direction of the paned container. More... | |
IlUInt | getIndex (const IlvPane *pane) const |
Returns the index of the specified pane. More... | |
IlvPane * | getPane (const char *name, IlBoolean all=IlFalse) const |
Searches the pane whose name is specified. More... | |
IlvPane * | getPane (IlUInt index) const |
Returns the pane whose index is specified. More... | |
IlvViewPane * | getViewPane () const |
Returns the view pane that encapsulates the paned container. More... | |
IlBoolean | isManagingSliders () const |
Returns IlTrue if the paned container manages automatic sliders. More... | |
void | manageSliders (IlBoolean value) |
Specifies whether the paned container manages sliders automatically. More... | |
void | paneBBox (const IlvPane *pane, IlvRect &bbox) const |
Returns the bounding box of the specified pane. More... | |
virtual void | paneGeometryChanged (IlvPane *pane) |
Is called when the geometry of the specified pane changes. More... | |
virtual void | paneVisibilityChanged (IlvPane *pane) |
Is called when the specified pane is hidden or shown. More... | |
IlUInt | pointToPane (const IlvPoint &point) const |
Returns the index of the pane located at the position specified by point. More... | |
virtual IlBoolean | read (istream &stream) |
Prevents reading data files. More... | |
virtual IlBoolean | readFile (const char *filename) |
Prevents reading data files. More... | |
virtual void | removePane (IlUInt index, IlBoolean destroy=IlFalse) |
Removes the pane whose index is specified from the paned container. More... | |
void | setDirection (IlvDirection direction) |
Sets the direction of the paned container. More... | |
virtual void | updatePanes (IlBoolean all=IlFalse) |
Updates the position and size of all the panes. More... | |
Public Member Functions inherited from IlvGadgetContainer | |
IlvGadgetContainer (IlvAbstractView *parent, const IlvRect &rect, IlBoolean useacc=IlFalse, IlBoolean visible=IlTrue) | |
Initializes a new instance of the IlvGadgetContainer class as a child view of another view. More... | |
IlvGadgetContainer (IlvDisplay *display, const char *name, const char *title, const IlvRect &rect, IlBoolean useacc=IlFalse, IlBoolean visible=IlTrue) | |
Initializes a new instance of the IlvGadgetContainer class as a top view. More... | |
IlvGadgetContainer (IlvDisplay *display, const char *name, const char *title, const IlvRect &rect, IlUInt properties, IlBoolean useacc=IlFalse, IlBoolean visible=IlTrue, IlvSystemView transientFor=0) | |
Initializes a new instance of the IlvGadgetContainer class as a top view. More... | |
IlvGadgetContainer (IlvDisplay *display, IlvSystemView parent, const IlvRect &rect, IlBoolean useacc=IlFalse, IlBoolean visible=IlTrue) | |
Initializes a new instance of the IlvGadgetContainer class as a child view of a system view. More... | |
IlvGadgetContainer (IlvDisplay *display, IlvSystemView window, IlBoolean useacc=IlFalse) | |
Initializes a new instance of the IlvGadgetContainer class using an existing system view. More... | |
virtual IlBoolean | allowFocus (IlBoolean value) |
Specifies whether the container manages the focus. More... | |
virtual void | applyResize (IlFloat sx, IlFloat sy, IlBoolean redraw=IlTrue) |
Is called to carry out the resize events applying to the gadget container. More... | |
IlBoolean | autoResize (IlBoolean a) |
Sets the auto resize mode of the gadget container. More... | |
IlvButton * | getDefaultButton () const |
Returns the default button of the gadget container. More... | |
virtual IlvGraphic * | getFirstFocusGraphic () const |
Returns the first object that receives the focus in this container. More... | |
virtual IlvGraphic * | getFocus () const |
Returns the object that has the keyboard focus in the gadget container. More... | |
virtual IlvGraphic * | getGrab () const |
Returns the object that is currently grabbing events in the container. More... | |
virtual IlvGraphic * | getLastFocusGraphic () const |
Returns the last object that receives the focus in this container. More... | |
IlvLookFeelHandler * | getLookFeelHandler () const |
Returns the look and feel handler associated with this container. More... | |
virtual IlvGraphic * | getNextFocusGraphic (IlvGraphic *object) const |
Returns the next object that will receive the focus after the specified object. More... | |
IlvGraphic * | getOverriddenFocus () const |
Returns the object that will receive the focus after calling setFocus() . More... | |
virtual IlvGraphic * | getPreviousFocusGraphic (IlvGraphic *object) const |
Returns the previous object that received the focus before the specified object. More... | |
IlBoolean | isAutoResizing () const |
Indicates whether the gadget container gets resized when loading a file. More... | |
virtual IlBoolean | isFocusAllowed () const |
Indicates whether the focus is allowed in the container. More... | |
virtual void | moveFocusAfter (IlBoolean redraw=IlTrue) |
Is called to find the next focusable object. More... | |
virtual void | moveFocusBefore (IlBoolean redraw=IlTrue) |
Is called to find the previous focusable object. More... | |
void | overrideFocus (IlvGraphic *obj) |
Sets the object that will receive the focus after calling setFocus() . More... | |
virtual void | removeGrab () |
Cancels the grabbing settings defined with setGrab() . More... | |
void | setDefaultButton (IlvButton *button, IlBoolean redraw=IlTrue) |
Sets the default button of the gadget container. More... | |
virtual void | setFocus (IlvGraphic *graphic=0, IlBoolean redraw=IlTrue) |
Sets the focus to the specified object of the gadget container. More... | |
virtual void | setGrab (IlvGraphic *object) |
Sets the specified object as the grabbing object. More... | |
void | setLookFeelHandler (IlvLookFeelHandler *lfh) |
Sets the look and feel handler of this container. More... | |
Protected Member Functions | |
virtual IlvSliderPane * | createSliderPane (const char *) const |
Creates and returns a new slider pane. More... | |
Pane container class.
Library: ilvadvgdt
The IlvPanedContainer
class is a high-level class that lets you arrange IlvPane
instances, called panes, either horizontally (from top to bottom) or vertically (from left to right).
Since an IlvPane
object encapsulates a view (by means of the IlvViewPane
class), you can build complex structures composed of nested paned containers.
A Vertical Paned Container with Two Panes Separated by a slider
Note that although IlvPanedContainer
inherits IlvGadgetContainer
, it is not meant to be used as a general purpose container of regular graphic objects. You should therefore not directly use addObject()
or read()
on a IlvPanedContainer
.
IlvDockableContainer
, IlvGraphicPane
, IlvPane
, IlvSliderPane
, IlvViewPane
. IlvPanedContainer::IlvPanedContainer | ( | IlvDisplay * | display, |
const char * | name, | ||
const char * | title, | ||
const IlvRect & | rect, | ||
IlvDirection | direction, | ||
IlUInt | properties = 0 , |
||
IlBoolean | visible = IlTrue , |
||
IlvSystemView | transientFor = 0 |
||
) |
Initializes a new instance of the IlvPanedContainer
class as a top window.
display | The connection to the display. |
name | The name of the paned container. |
title | The title of the paned container. |
rect | The size and position of the paned container. |
direction | The direction of the paned container. Valid values are: IlvVertical (panes are arranged from top to bottom), and IlvHorizontal (panes are arranged from left to right). |
properties | Properties of the paned container. See the IlvView constructors for more details. |
visible | Specifies whether the paned container should be visible (IlTrue ). |
transientFor | The system view for which the dockable container is transient. See the IlvView constructors for more details. |
IlvPanedContainer::IlvPanedContainer | ( | IlvAbstractView * | parent, |
const IlvRect & | rect, | ||
IlvDirection | direction, | ||
IlBoolean | visible = IlTrue |
||
) |
Initializes a new instance of the IlvPanedContainer
class as a child view of a view.
parent | The parent view of the new paned container. |
rect | The size and position of the paned container. |
direction | The direction of the paned container. Valid values are: IlvVertical (panes are arranged from top to bottom), and IlvHorizontal (panes are arranged from left to right). See IlvPanedContainer constructors for more details. |
visible | Specifies whether the dockable container should be visible (IlTrue ). |
IlvPanedContainer::IlvPanedContainer | ( | IlvDisplay * | display, |
IlvSystemView | parent, | ||
const IlvRect & | rect, | ||
IlvDirection | direction, | ||
IlBoolean | visible = IlTrue |
||
) |
Initializes a new instance of the IlvPanedContainer
class as a child view of a system view.
display | The connection to the display. |
parent | The parent view of the new paned container. |
rect | The size and position of the paned container. |
direction | The direction of the paned container. Valid values are: IlvVertical (panes are arranged from top to bottom), and IlvHorizontal (panes are arranged from left to right). |
visible | Specifies whether the paned container should be visible (IlTrue ). |
IlvPanedContainer::IlvPanedContainer | ( | IlvDisplay * | display, |
IlvSystemView | window, | ||
IlvDirection | direction | ||
) |
Initializes a new instance of the IlvPanedContainer
class mapped to an existing system view.
display | The connection to the display. |
window | The system view to which the paned container will be mapped. |
direction | The direction of the paned container. Valid values are: IlvVertical (panes are arranged from top to bottom), and IlvHorizontal (panes are arranged from left to right). |
Adds a pane to the paned container at the specified index.
pane | The pane to be added. |
index | The position where the pane should be inserted. If index is -1 , the pane is added at the last position. |
removePane()
, getPane()
. IlAny IlvPanedContainer::applyUntil | ( | IlvApplyPane | func, |
IlAny | arg = 0 |
||
) |
Applies the specified function to all the panes of the paned container.
This member function is recursive, and thus, all the panes contained into sub-paned containers will also be crossed. Note that if the function func returns a non-zero value, the process will be stopped, and applyUntil()
will return.
func | The function to be applied. |
arg | The argument that will be passed to the function func. |
0
if nothing stopped the operation. IlvApplyPane
.
|
protectedvirtual |
Creates and returns a new slider pane.
IlvSliderPane
class that is inserted between two resizable panes when the paned container is set to manage sliders automatically. You may want to override this method to create your subclass of IlvSliderPane
. manageSliders()
. IlUInt IlvPanedContainer::getCardinal | ( | ) | const |
Returns the number of panes managed by the paned container.
addPane()
, removePane()
, getPane()
. IlvDirection IlvPanedContainer::getDirection | ( | ) | const |
Returns the direction of the paned container.
setDirection()
. Returns the index of the specified pane.
pane | The pane whose index is searched for. |
-1
if the specified pane does not belong to the paned container. getPane()
. Searches the pane whose name is specified.
name | The name of the pane. |
all | Specifies whether the search should be recursive. If all is set to IlTrue , the pane is searched for recursively in each view pane of the paned container that encapsulates an IlvPanedContainer object. |
0
if this pane does not exist. IlvPane::setName()
. Returns the pane whose index is specified.
index | The index of the pane. The index should be a valid value. |
addPane()
, removePane()
. IlvViewPane* IlvPanedContainer::getViewPane | ( | ) | const |
Returns the view pane that encapsulates the paned container.
0
if there is none. IlvViewPane
, IlvViewPane::Get()
. IlBoolean IlvPanedContainer::isManagingSliders | ( | ) | const |
Returns IlTrue
if the paned container manages automatic sliders.
IlTrue
if the paned container creates sliders between two resizable panes automatically. manageSliders()
. void IlvPanedContainer::manageSliders | ( | IlBoolean | value | ) |
Specifies whether the paned container manages sliders automatically.
A slider is a special IlvPane
object that you can use to resize panes that are located on both sides of it. For details, see the class IlvSliderPane
. When the manage sliders mode is enabled (the default), calling IlvPanedContainer::updatePanes()
automatically creates a slider between two resizable panes. A resizable pane is a pane whose resize mode is IlvPane::Resizable
or IlvPane::Elastic
.
value | Specifies whether the paned container should creates sliders between two resizable panes automatically. |
isManagingSliders()
, ResizeMode
. Returns the bounding box of the specified pane.
pane | The pane. |
bbox | The returned bounding box of the pane, including the pane margins. |
pointToPane()
, IlvPane::setMargin()
.
|
virtual |
Is called when the geometry of the specified pane changes.
The default implementation does nothing.
pane | The modified pane. |
|
virtual |
Is called when the specified pane is hidden or shown.
The default implementation does nothing.
pane | The modified pane. |
Returns the index of the pane located at the position specified by point.
point | The point where the pane is located. |
|
virtual |
Prevents reading data files.
IlvPanedContainer
encapsulates specific objects, and cannot handle regular file read as IlvContainer
does. Therefore, the local implementation does nothing.
stream | Not used in this class. |
IlFalse
.Reads a set of IlvGraphic
objects from the input stream specified in stream.
stream | The input stream. |
Reimplemented from IlvContainer.
|
virtual |
Prevents reading data files.
IlvPanedContainer
encapsulates specific objects, and cannot handle regular file read as IlvContainer
does. Therefore, the local implementation does nothing.
filename | Not used in this class. |
IlFalse
. Reimplemented from IlvContainer.
Removes the pane whose index is specified from the paned container.
index | The index of the pane to be removed. |
destroy | Specifies whether the removed pane should be destroyed. |
Reimplemented in IlvDockableContainer.
void IlvPanedContainer::setDirection | ( | IlvDirection | direction | ) |
Sets the direction of the paned container.
direction | The new direction of the paned container. Valid values are IlvVertical and IlvHorizontal . When a paned container is vertical, panes are arranged from top to bottom. When it is horizontal, panes are arranged from left to right. |
getDirection()
. Updates the position and size of all the panes.
This member function must be called after the content of the paned container is modified, that is, after panes are added, removed, hidden, or shown.
all | Specifies whether the method should be recursive. If all is IlTrue , each paned container that is encapsulated in a view pane of this paned container is also updated recursively. |
addPane()
, removePane()
, IlvPane::show()
, IlvPane::hide()
.