diff options
author | Matthew Barnes <mbarnes@src.gnome.org> | 2009-02-08 04:04:52 +0800 |
---|---|---|
committer | Matthew Barnes <mbarnes@src.gnome.org> | 2009-02-08 04:04:52 +0800 |
commit | 14e8637d6b1a98b4ed6bedc70d0fca744b7b3e0f (patch) | |
tree | ec49b42bc6e0cfb3115ca56f41106e63a0b67d85 /widgets | |
parent | fee5916b60c605ff5086d8fdc2a85c5ea21351f6 (diff) | |
download | gsoc2013-evolution-14e8637d6b1a98b4ed6bedc70d0fca744b7b3e0f.tar.gz gsoc2013-evolution-14e8637d6b1a98b4ed6bedc70d0fca744b7b3e0f.tar.zst gsoc2013-evolution-14e8637d6b1a98b4ed6bedc70d0fca744b7b3e0f.zip |
Rewrite the mail label code from top to bottom.
- Kill the e-util-labels API and read label information into a
single-column GtkListStore. Use GConfBridge to automatically
keep GConf synched with the list store.
- The list store (a singleton instance) is stored in EShellSettings
so it's available everywhere.
- The list store serves as the model for EMailLabelTreeView,
which itself is embedded in EMailLabelManager; a complete
label management UI as seen in the preferences dialog.
- EMailLabelDialog is used to add or edit a label. Avoid using a
color button, instead embed a GtkColorSelection directly in the
dialog so everything is in one window.
Open issues:
- The weird toggle/color/text menu items in the popup menu aren't
there. For now they're just regular toggle items. I'll deal
with it later.
- Filter intergration is broken at the moment.
svn path=/branches/kill-bonobo/; revision=37233
Diffstat (limited to 'widgets')
-rw-r--r-- | widgets/misc/e-action-combo-box.c | 17 | ||||
-rw-r--r-- | widgets/misc/e-action-combo-box.h | 3 |
2 files changed, 20 insertions, 0 deletions
diff --git a/widgets/misc/e-action-combo-box.c b/widgets/misc/e-action-combo-box.c index 977ac06ade..e8a9be51ed 100644 --- a/widgets/misc/e-action-combo-box.c +++ b/widgets/misc/e-action-combo-box.c @@ -548,6 +548,23 @@ e_action_combo_box_set_current_value (EActionComboBox *combo_box, } void +e_action_combo_box_add_separator_before (EActionComboBox *combo_box, + gint action_value) +{ + GtkTreeModel *model; + GtkTreeIter iter; + + g_return_if_fail (E_ACTION_IS_COMBO_BOX (combo_box)); + + /* NULL actions are rendered as separators. */ + model = gtk_combo_box_get_model (GTK_COMBO_BOX (combo_box)); + gtk_list_store_append (GTK_LIST_STORE (model), &iter); + gtk_list_store_set ( + GTK_LIST_STORE (model), &iter, COLUMN_ACTION, + NULL, COLUMN_SORT, (gfloat) action_value - 0.5, -1); +} + +void e_action_combo_box_add_separator_after (EActionComboBox *combo_box, gint action_value) { diff --git a/widgets/misc/e-action-combo-box.h b/widgets/misc/e-action-combo-box.h index c3e6941ca6..300338639a 100644 --- a/widgets/misc/e-action-combo-box.h +++ b/widgets/misc/e-action-combo-box.h @@ -73,6 +73,9 @@ gint e_action_combo_box_get_current_value void e_action_combo_box_set_current_value (EActionComboBox *combo_box, gint current_value); +void e_action_combo_box_add_separator_before + (EActionComboBox *combo_box, + gint action_value); void e_action_combo_box_add_separator_after (EActionComboBox *combo_box, gint action_value); |