Copyright © 2008, 2009 Arndt Roger Schneider
The tabset design is based on a paper file cabinet metaphor. Where a series of similar files is collected. A file is a collection of mostly loose pages.
The tabset design varies greatly on every platform, and across them. This led me to conclude: The Tabset design isn’t fully understood, and that the initial metaphor is wrong. Tabset are also being used for ornamental reasons. Under AQUA®: The prominent tabset is used to generate a centered application layout.
Questions arise from this finding:
What is the function of a Tabset?
Is there another similar control?
How-to visually communicate its function?
The Tabset connects data of similar kind. This data is usually related to the same object (Application Preferences for example).
The tabset chunks this data into pieces.
The Scrollbar has a similar function. The scrollbar shows the position and extend from data flux, displayed by its associated client. The scrollbar indicates the size of the visible part in relation to the whole data.
The tabset otherwise organizes data in a logic relationship. It does not inform about proportions or content. A tabset has multiple clients, and each client is represented as a discreet element inside the tabset.
The scrollbar design can be borrowed for the tabset –which I did for the Rtl_tabset.
The tabset is a logic representation of data, and does not have to communicate dimensions. This allows to keep a rather flashy design for the tabset. Which can also act as a decoration, while still promoting the logic distinction between its represented data.
Each Rtl_tabset tab may have its own »background« and »foreground« colour. Individual tab colours can be used like a coloured etiquette, to mark certain aspects in a tabbed dialog. Best practice is to make the tab colouring customizable and accessible to the user.
The Rtl_tabset »foreground« colour is used for the selected tabs, only.
The unselected tabs will fade into the Rtl_tabset’ background . Only the selected tab is prominently shown (akin to the scrollbar slider).
The Figure 5.3, “Tabs and Rtl_tabset”, above displays the internal structure of a Rtl_tabset. This Rtl_tabset contains four tabs, also referred to as pages. The tab »scripts« is currently selected and its associated window »scripts« mapped in the containing Rtl_tabset. The 'pack' geometry manager is used by the Rtl_tabset to map its child windows on screen.