Follow Techotopia on Twitter

On-line Guides
All Guides
eBook Store
iOS / Android
Linux for Beginners
Office Productivity
Linux Installation
Linux Security
Linux Utilities
Linux Virtualization
Linux Kernel
System/Network Admin
Programming
Scripting Languages
Development Tools
Web Development
GUI Toolkits/Desktop
Databases
Mail Systems
openSolaris
Eclipse Documentation
Techotopia.com
Virtuatopia.com
Answertopia.com

How To Guides
Virtualization
General System Admin
Linux Security
Linux Filesystems
Web Servers
Graphics & Desktop
PC Hardware
Windows
Problem Solutions
Privacy Policy

  




 

 

D.6.1 GTK widget names

A GTK widget is specified by its widget class and widget name. The widget class is the type of the widget: for example, GtkMenuBar. The widget name is the name given to a specific widget. A widget always has a class, but need not have a name.

Absolute names are sequences of widget names or widget classes, corresponding to hierarchies of widgets embedded within other widgets. For example, if a GtkWindow named top contains a GtkVBox named box, which in turn contains a GtkMenuBar called menubar, the absolute class name of the menu-bar widget is GtkWindow.GtkVBox.GtkMenuBar, and its absolute widget name is top.box.menubar.

When assigning a style to a widget, you can use the absolute class name or the absolute widget name.

There are two commands to specify changes for widgets:

widget_class
specifies a style for widgets based on the absolute class name.
widget
specifies a style for widgets based on the absolute class name, or just the class.

You must specify the class and the style in double-quotes, and put these commands at the top level in the GTK customization file, like this:

     style "menufont"
     {
       font_name = "helvetica bold 14"
     }
     
     widget "top.box.menubar" style "menufont"
     widget_class "GtkWindow.GtkVBox.GtkMenuBar" style "menufont"

Matching of absolute names uses shell wildcard syntax: ‘*’ matches zero or more characters and ‘?’ matches one character. This example assigns base_style to all widgets:

     widget "*" style "base_style"

Given the absolute class name GtkWindow.GtkVBox.GtkMenuBar and the corresponding absolute widget name top.box.menubar, all these examples specify my_style for the menu bar:

     widget_class "GtkWindow.GtkVBox.GtkMenuBar" style "my_style"
     widget_class "GtkWindow.*.GtkMenuBar" style "my_style"
     widget_class "*GtkMenuBar" style "my_style"
     widget "top.box.menubar" style "my_style"
     widget "*box*menubar" style "my_style"
     widget "*menubar" style "my_style"
     widget "*menu*" style "my_style"

 
 
  Published under the terms of the GNU General Public License Design by Interspire