tabWidget class

tabWidget class Provides a Tab Widget.
Inherits
object widget
Description
The tabWidget class provides a stack of tabbed widgets. Each tab is associated with a different widget (called a `page'). Only the current tab's page is shown in the page area; all the others tabs pages are hidden. The user can show a different page by clicking on its tab.
Functions
`$addTab(<widget:object>,<text_label:string>,[<icon_id>])`
Adds another page to the tab view with the text label and optional icon.
`$insertTab(<widget:object>,<tex_label:string>,<index:uinteger>)`
Inserts another tab and page to the tab view with name and label-text specified. If index is not specified, the tab is simply appended. Otherwise the new tab is inserted at the specified position.
`$setTabToolTip(<tab_widget:object>,<tooltip:string>)`
Sets the tab tool tip for the tabWidget to <tooltip>.
`$removeTabToolTip(<tab_widget:object>)`
Removes the tab tool tip for the tab. If the page does not have a tip, nothing happens.
`$setTabLabel(<tab_widget>, <label:string>)`
Sets the tab label for <tab_widget> to label.
`$changeTab(<tab_widget:object>,<label:text>,[<icon_id>])`
Defines a new label, and optional icon, for the tab .
`$setCurrentPage(<index:uinteger>)`
Sets the index position of the current tab page to <index>.
`<integer> $currentPageIndex()`
Returns the current page index.
`<string> $tabLabel(<index:uinteger>)`
Returns the tab label of the <index>.
`<hobject> $widgetAt(<index:integer>)`
Returns the tab widget of the <index> or 0 if index is out of the tabs count.
`<index:integer> $indexOf(<widget:hobject>)`
Returns the <index> of the <widget> in the tabs.
`<string> $currentTabLabel()`
Returns the label of the current tab.
`$removePage(<tab_widget:object>)`
Remove the page <tab_widget>.
`$setTabPosition(<tab_position:string>)`
Sets TabPosition. Valid parameters are : Top, Bottom.
`<integer> $count()`
Returns the number of tabs in the tab bar.
`$setTabsClosable(<enable:bool>)`
Sets whether close buttons are automatically added to each tab
`$currentChangedEvent()`
This function is invoked when the current tab was changed. The default implementation emits the $currentChange() signal.
`$tabCloseRequestEvent()`
This function is invoked when when the close button on a tab is clicked. The index is the index of the tab that should be removed. The default implementation emits the $tabCloseRequest() signal. See also $setTabsClosable().
Signals
`$currentChange(<index:integer>)`
This signal is emitted by the default implementation of $currentChangedEvent(). If you reimplement that function you will have to emit the signal manually (if you still need it).
`$tabCloseRequest(<index:integer>)`
This signal is emitted by the default implementation of [classfnc]tabCloseRequestEvent[/classfnc]().
Examples
# First we'll create the main tabWidget. %Tabwidget=$new(tabWidget) %Tabwidget->$setToolTip("Example of TabWidget class") %Tabwidget->$setTabPosition(Top) %Tabwidget->$resize(300,200) # Now we'll create the new widgets and put they in to the main tabWidget. %firsttab=$new(vbox) %secondtab=$new(vbox) # Now we'll create the item to put in to tab's pages. # First tab %hbox=$new(hbox,%firsttab) %labelbt=$new(label,%hbox) %labelbt->$settext(Botton Tab) %labeltt=$new(label,%hbox) %labeltt->$settext(Top Tab) %hbox=$new(hbox,%firsttab) %buttontb=$new(button,%hbox) %buttontb->$settext("To &Botton") %buttontt=$new(button,%hbox) %buttontt->$settext("To &Top") # Now we'll give a layout to all items. # This also allows to use privateimpl without making buttons global variables # Add the page to the main tab. %Tabwidget->$addTab(%firsttab,Top&Button,33) # Implementing the action to do when the user click the buttons. privateimpl(%buttontb,mousepressevent) { %Tabwidget->$setTabPosition(Bottom) } privateimpl(%buttontt,mousepressevent) { %Tabwidget->$setTabPosition(Top) } # We do the same work with the second tab's page. %labelwp=$new(label,%secondtab) %labelwp->$settext("Enjoy the new Class provided by") %labelwp->$setalignment("Center") %labelgen=$new(label,%secondtab) %labelgen->$settext(Grifisx \& Noldor) %labelgen->$setalignment("Center") %Tabwidget->$addTab(%secondtab,&About,50) # Let's show our example. %Tabwidget->$show()

Index, Object Classes