# 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> $label(<index:uinteger>)`
Retunrs the label to the <index>.
`<string> $currentTabLabel()`
Returns the label of the current tab.
`$setMargin(<margin:integer>)`
Sets the margin in this tab widget to <margin>.
`<integer> $margin()`
Returns the margin in this tab widget.
`$removePage(<tab_widget:object>)`
Remove the page <tab_widget>.
`$setTabPosition(<tab_position:string>)`
Sets TabPosition. Valid parameters are : Top, Bottom.
`<integer> $count()`
This property holds the number of tabs in the tab bar.
`$currentChangedEvent()`
This function is invoched when the current tab was changed. The default implementation emits the $currentChange() signal.
Signals
`$currentChange()`
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).
Examples
        # First we'll create the main tabwidget.
        %Tabwidget=$new(tabwidget)
        %Tabwidget->$setToolTip("Example of TabWidget class")
        %Tabwidget->$setMargin(30)
        %Tabwidget->$setTabPosition(Top)

        # Now we'll create the new widgets and put they in to the main tabwidget.
        %firsttab=$new(widget,%Tabwidget)
        %secondtab=$new(widget,%Tabwidget)

        # Now we'll create the item to put in to tab's pages.
        %layoutfirsttab=$new(layout,%firsttab)
        %labelbt=$new(label,%firsttab)
        %labelbt->$settext(Botton Tab)
        %labeltt=$new(label,%firsttab)
        %labeltt->$settext(Top Tab)
        %buttontb=$new(button,%firsttab)
        %buttontb->$settext("To &Botton")
        %buttontt=$new(button,%firsttab)
        %buttontt->$settext("To &Top")

        # Now we'll give a layout to all items.
        # This also allows to use privateimpl without making buttons global variables
        %layoutfirsttab->$addwidget(%labelbt,0,0)
        %layoutfirsttab->$addwidget(%labeltt,0,1)
        %layoutfirsttab->$addwidget(%buttontb,1,0)
        %layoutfirsttab->$addwidget(%buttontt,1,1)

        # 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.
        %layoutsecondtab=$new(layout,%secondtab)
        %labelwp=$new(label,%secondtab)
        %labelwp->$settext("Enjoy the new Class provided by")
        %layoutsecondtab->$addwidget(%labelwp,0,0)
        %labelwp->$setalignment("Center")
        %labelgen=$new(label,%secondtab)
        %labelgen->$settext(Grifisx \& Noldor)
        %labelgen->$setalignment("Center")
        %layoutsecondtab->$addwidget(%labelgen,1,0)
        %Tabwidget->$addTab(%secondtab,&About,50)

        # Let's show our example.
        %Tabwidget->$show()

Index, Object Classes

KVIrc 3.4.2 Documentation
Generated by ports-i386 at Sun Mar 7 07:08:54 2010