ExoIconBar

ExoIconBar — A widget for displaying icon bars

Synopsis

#include <exo/exo.h>

                    ExoIconBar;
GtkWidget *         exo_icon_bar_new                    (void);
GtkWidget *         exo_icon_bar_new_with_model         (GtkTreeModel *model);
GtkTreeModel *      exo_icon_bar_get_model              (ExoIconBar *icon_bar);
void                exo_icon_bar_set_model              (ExoIconBar *icon_bar,
                                                         GtkTreeModel *model);
gint                exo_icon_bar_get_pixbuf_column      (ExoIconBar *icon_bar);
void                exo_icon_bar_set_pixbuf_column      (ExoIconBar *icon_bar,
                                                         gint column);
gint                exo_icon_bar_get_text_column        (ExoIconBar *icon_bar);
void                exo_icon_bar_set_text_column        (ExoIconBar *icon_bar,
                                                         gint column);
GtkOrientation      exo_icon_bar_get_orientation        (ExoIconBar *icon_bar);
void                exo_icon_bar_set_orientation        (ExoIconBar *icon_bar,
                                                         GtkOrientation orientation);
gint                exo_icon_bar_get_active             (ExoIconBar *icon_bar);
void                exo_icon_bar_set_active             (ExoIconBar *icon_bar,
                                                         gint idx);
gboolean            exo_icon_bar_get_active_iter        (ExoIconBar *icon_bar,
                                                         GtkTreeIter *iter);
void                exo_icon_bar_set_active_iter        (ExoIconBar *icon_bar,
                                                         GtkTreeIter *iter);

Object Hierarchy

  GObject
   +----GInitiallyUnowned
         +----GtkObject
               +----GtkWidget
                     +----GtkContainer
                           +----ExoIconBar

Implemented Interfaces

ExoIconBar implements AtkImplementorIface and GtkBuildable.

Properties

  "active"                   gint                  : Read / Write
  "model"                    GtkTreeModel*         : Read / Write
  "orientation"              GtkOrientation        : Read / Write
  "pixbuf-column"            gint                  : Read / Write
  "text-column"              gint                  : Read / Write

Style Properties

  "active-item-border-color" GdkColor*             : Read
  "active-item-fill-color"   GdkColor*             : Read
  "active-item-text-color"   GdkColor*             : Read
  "cursor-item-border-color" GdkColor*             : Read
  "cursor-item-fill-color"   GdkColor*             : Read
  "cursor-item-text-color"   GdkColor*             : Read

Signals

  "selection-changed"                              : Run First
  "set-scroll-adjustments"                         : Run Last

Description

A widget that displays any object that implements the GtkTreeModel interface in an icon bar.

Example 1.  Creating a new ExoIconBar with a GtkListStore

enum
{
  PIXBUF_COLUMN,
  STRING_COLUMN,
  N_COLUMNS,
};

{
  GtkListStore *store;
  GtkWidget    *bar;

  // make a new list store
  store = gtk_list_store_new (N_COLUMNS, GDK_TYPE_PIXBUF, G_TYPE_STRING);

  // fill the store with data
  fill_store (store);

  // create the icon bar
  bar = exo_icon_bar_new_with_model (GTK_TREE_MODEL (store));
  exo_icon_bar_set_pixbuf_column (EXO_ICON_BAR (bar), PIXBUF_COLUMN);
  exo_icon_bar_set_text_column (EXO_ICON_BAR (bar), TEXT_COLUMN);
  gtk_widget_show (bar);

  // the icon bar keeps a reference on the store now
  g_object_unref (G_OBJECT (store));

  // add the bar to your GUI now...
}


Details

ExoIconBar

typedef struct _ExoIconBar ExoIconBar;

The ExoIconBar struct contains only private fields and should not be directly accessed.


exo_icon_bar_new ()

GtkWidget *         exo_icon_bar_new                    (void);

Creates a new ExoIconBar without model.

Returns :

a newly allocated ExoIconBar.

exo_icon_bar_new_with_model ()

GtkWidget *         exo_icon_bar_new_with_model         (GtkTreeModel *model);

Creates a new ExoIconBar and associates it with model.

model :

A GtkTreeModel.

Returns :

a newly allocated ExoIconBar, which is associated with model.

exo_icon_bar_get_model ()

GtkTreeModel *      exo_icon_bar_get_model              (ExoIconBar *icon_bar);

Returns the model the ExoIconBar is based on. Returns NULL if the model is unset.

icon_bar :

A ExoIconBar.

Returns :

A GtkTreeModel, or NULL if none is currently being used.

exo_icon_bar_set_model ()

void                exo_icon_bar_set_model              (ExoIconBar *icon_bar,
                                                         GtkTreeModel *model);

Sets the model for a ExoIconBar. If the icon_bar already has a model set, it will remove it before settings the new model. If model is NULL, then it will unset the old model.

icon_bar :

A ExoIconBar.

model :

A GtkTreeModel or NULL.

exo_icon_bar_get_pixbuf_column ()

gint                exo_icon_bar_get_pixbuf_column      (ExoIconBar *icon_bar);

Returns the column with pixbufs for icon_bar.

icon_bar :

An ExoIconBar.

Returns :

the pixbuf column, or -1 if it's unset.

exo_icon_bar_set_pixbuf_column ()

void                exo_icon_bar_set_pixbuf_column      (ExoIconBar *icon_bar,
                                                         gint column);

Sets the column with pixbufs for icon_bar to be column. The pixbuf column must be of type GDK_TYPE_PIXBUF.

icon_bar :

An ExoIconBar.

column :

A column in the currently used model.

exo_icon_bar_get_text_column ()

gint                exo_icon_bar_get_text_column        (ExoIconBar *icon_bar);

Returns the column with text for icon_bar.

icon_bar :

An ExoIconBar.

Returns :

the text column, or -1 if it's unset.

exo_icon_bar_set_text_column ()

void                exo_icon_bar_set_text_column        (ExoIconBar *icon_bar,
                                                         gint column);

Sets the column with text for icon_bar to be column. The text column must be of type G_TYPE_STRING.

icon_bar :

An ExoIconBar.

column :

A column in the currently used model or -1 to use no text in icon_bar.

exo_icon_bar_get_orientation ()

GtkOrientation      exo_icon_bar_get_orientation        (ExoIconBar *icon_bar);

Retrieves the current orientation of the toolbar. See exo_icon_bar_set_orientation().

icon_bar :

An ExoIconBar.

Returns :

The orientation of icon_bar.

exo_icon_bar_set_orientation ()

void                exo_icon_bar_set_orientation        (ExoIconBar *icon_bar,
                                                         GtkOrientation orientation);

Sets whether the icon_bar should appear horizontally or vertically.

icon_bar :

An ExoIconBar.

orientation :

A new GtkOrientation.

exo_icon_bar_get_active ()

gint                exo_icon_bar_get_active             (ExoIconBar *icon_bar);

Returns the index of the currently active item, or -1 if there's no active item.

icon_bar :

An ExoIconBar.

Returns :

An integer which is the index of the currently active item, or -1 if there's no active item.

exo_icon_bar_set_active ()

void                exo_icon_bar_set_active             (ExoIconBar *icon_bar,
                                                         gint idx);

Sets the active item of icon_bar to be the item at idx.

icon_bar :

An ExoIconBar.

idx :

An index in the model passed during construction, or -1 to have no active item.

exo_icon_bar_get_active_iter ()

gboolean            exo_icon_bar_get_active_iter        (ExoIconBar *icon_bar,
                                                         GtkTreeIter *iter);

Sets iter to point to the current active item, if it exists.

icon_bar :

An ExoIconBar.

iter :

An uninitialized GtkTreeIter.

Returns :

TRUE if iter was set.

exo_icon_bar_set_active_iter ()

void                exo_icon_bar_set_active_iter        (ExoIconBar *icon_bar,
                                                         GtkTreeIter *iter);

Sets the current active item to be the one referenced by iter. iter must correspond to a path of depth one.

This can only be called if icon_bar is associated with GtkTreeModel.

icon_bar :

An ExoIconBar.

iter :

The GtkTreeIter.

Property Details

The "active" property

  "active"                   gint                  : Read / Write

The item which is currently active.

Allowed values: >= -1

Default value: -1

Allowed values: >= G_MAXULONG

Default value: -1


The "model" property

  "model"                    GtkTreeModel*         : Read / Write

The model for the icon bar.


The "orientation" property

  "orientation"              GtkOrientation        : Read / Write

The orientation of the icon bar.

Default value: GTK_ORIENTATION_VERTICAL

Default value: GTK_ORIENTATION_VERTICAL


The "pixbuf-column" property

  "pixbuf-column"            gint                  : Read / Write

The ::pixbuf-column property contains the number of the model column containing the pixbufs which are displyed. The pixbuf column must be of type GDK_TYPE_PIXBUF. Setting this property to -1 turns off the display of pixbufs.

Allowed values: >= G_MAXULONG

Default value: -1


The "text-column" property

  "text-column"              gint                  : Read / Write

The ::text-column property contains the number of the model column containing the texts which are displayed. The text column must be of type G_TYPE_STRING. If this property is set to -1, no texts are displayed.

Allowed values: >= G_MAXULONG

Default value: -1

Style Property Details

The "active-item-border-color" style property

  "active-item-border-color" GdkColor*             : Read

Active item border color.


The "active-item-fill-color" style property

  "active-item-fill-color"   GdkColor*             : Read

Active item fill color.


The "active-item-text-color" style property

  "active-item-text-color"   GdkColor*             : Read

Active item text color.


The "cursor-item-border-color" style property

  "cursor-item-border-color" GdkColor*             : Read

Cursor item border color.


The "cursor-item-fill-color" style property

  "cursor-item-fill-color"   GdkColor*             : Read

Cursor item fill color.


The "cursor-item-text-color" style property

  "cursor-item-text-color"   GdkColor*             : Read

Cursor item text color.

Signal Details

The "selection-changed" signal

void                user_function                      (ExoIconBar *icon_bar,
                                                        gpointer    user_data)      : Run First

This signal is emitted whenever the currently selected icon changes.

icon_bar :

The ExoIconBar.

user_data :

user data set when the signal handler was connected.

The "set-scroll-adjustments" signal

void                user_function                      (ExoIconBar    *icon_bar,
                                                        GtkAdjustment *hadjustment,
                                                        GtkAdjustment *vadjustment,
                                                        gpointer       user_data)        : Run Last

Used internally to make the ExoIconBar scrollable.

icon_bar :

The ExoIconBar.

hadjustment :

The horizontal adjustment.

vadjustment :

The vertical adjustment.

user_data :

user data set when the signal handler was connected.

See Also

GtkTreeModel, Tree and List Widget Overview