aboutsummaryrefslogtreecommitdiffstats
path: root/calendar/gui/e-meeting-list-view.c
diff options
context:
space:
mode:
authorMilan Crha <mcrha@redhat.com>2007-12-04 02:22:12 +0800
committerMilan Crha <mcrha@src.gnome.org>2007-12-04 02:22:12 +0800
commitcf649a8408918e3cd5a185dabaa7b9ba497ad250 (patch)
tree855a04774f7918fd7523a7e5fcdba09691c3d1ca /calendar/gui/e-meeting-list-view.c
parent796e7ca63b134fca7767d1b009aa973c03fd46a6 (diff)
downloadgsoc2013-evolution-cf649a8408918e3cd5a185dabaa7b9ba497ad250.tar
gsoc2013-evolution-cf649a8408918e3cd5a185dabaa7b9ba497ad250.tar.gz
gsoc2013-evolution-cf649a8408918e3cd5a185dabaa7b9ba497ad250.tar.bz2
gsoc2013-evolution-cf649a8408918e3cd5a185dabaa7b9ba497ad250.tar.lz
gsoc2013-evolution-cf649a8408918e3cd5a185dabaa7b9ba497ad250.tar.xz
gsoc2013-evolution-cf649a8408918e3cd5a185dabaa7b9ba497ad250.tar.zst
gsoc2013-evolution-cf649a8408918e3cd5a185dabaa7b9ba497ad250.zip
** Fix for bug #440497
2007-12-03 Milan Crha <mcrha@redhat.com> ** Fix for bug #440497 * gui/e-meeting-list-view.h: (e_meeting_list_view_column_set_visible): Prototype changed to refer to column based on enum identifier. * gui/e-meeting-list-view.c: (build_table): Store column enum identifier in column datas, for later use. * gui/e-meeting-list-view.c: (e_meeting_list_view_column_set_visible): * gui/dialogs/task-page.c: * gui/dialogs/event-page.c: * gui/e-meeting-time-sel.c: Refer for column based on the enum, not on the column title. svn path=/trunk/; revision=34628
Diffstat (limited to 'calendar/gui/e-meeting-list-view.c')
-rw-r--r--calendar/gui/e-meeting-list-view.c10
1 files changed, 8 insertions, 2 deletions
diff --git a/calendar/gui/e-meeting-list-view.c b/calendar/gui/e-meeting-list-view.c
index 8d1a97208d..2e35fde081 100644
--- a/calendar/gui/e-meeting-list-view.c
+++ b/calendar/gui/e-meeting-list-view.c
@@ -491,6 +491,7 @@ build_table (EMeetingListView *lview)
gtk_tree_view_column_set_resizable (col, TRUE);
gtk_tree_view_column_set_reorderable(col, TRUE);
g_object_set (col, "min-width", 50, NULL);
+ g_object_set_data (G_OBJECT (col), "mtg-store-col", GINT_TO_POINTER (E_MEETING_STORE_ATTENDEE_COL));
g_signal_connect (renderer, "cell_edited", G_CALLBACK (attendee_edited_cb), view);
g_signal_connect (renderer, "editing-canceled", G_CALLBACK (attendee_editing_canceled_cb), view);
g_hash_table_insert (edit_table, GINT_TO_POINTER (E_MEETING_STORE_ATTENDEE_COL), renderer);
@@ -503,6 +504,7 @@ build_table (EMeetingListView *lview)
col = gtk_tree_view_get_column (view, pos -1);
gtk_tree_view_column_set_resizable (col, TRUE);
gtk_tree_view_column_set_reorderable(col, TRUE);
+ g_object_set_data (G_OBJECT (col), "mtg-store-col", GINT_TO_POINTER (E_MEETING_STORE_TYPE_COL));
g_signal_connect (renderer, "edited", G_CALLBACK (type_edited_cb), view);
g_hash_table_insert (edit_table, GINT_TO_POINTER (E_MEETING_STORE_TYPE_COL), renderer);
@@ -514,6 +516,7 @@ build_table (EMeetingListView *lview)
col = gtk_tree_view_get_column (view, pos -1);
gtk_tree_view_column_set_resizable (col, TRUE);
gtk_tree_view_column_set_reorderable(col, TRUE);
+ g_object_set_data (G_OBJECT (col), "mtg-store-col", GINT_TO_POINTER (E_MEETING_STORE_ROLE_COL));
g_signal_connect (renderer, "edited", G_CALLBACK (role_edited_cb), view);
g_hash_table_insert (edit_table, GINT_TO_POINTER (E_MEETING_STORE_ROLE_COL), renderer);
@@ -526,6 +529,7 @@ build_table (EMeetingListView *lview)
col = gtk_tree_view_get_column (view, pos -1);
gtk_tree_view_column_set_resizable (col, TRUE);
gtk_tree_view_column_set_reorderable(col, TRUE);
+ g_object_set_data (G_OBJECT (col), "mtg-store-col", GINT_TO_POINTER (E_MEETING_STORE_RSVP_COL));
g_signal_connect (renderer, "edited", G_CALLBACK (rsvp_edited_cb), view);
g_hash_table_insert (edit_table, GINT_TO_POINTER (E_MEETING_STORE_RSVP_COL), renderer);
@@ -537,6 +541,7 @@ build_table (EMeetingListView *lview)
col = gtk_tree_view_get_column (view, pos -1);
gtk_tree_view_column_set_resizable (col, TRUE);
gtk_tree_view_column_set_reorderable(col, TRUE);
+ g_object_set_data (G_OBJECT (col), "mtg-store-col", GINT_TO_POINTER (E_MEETING_STORE_STATUS_COL));
g_signal_connect (renderer, "edited", G_CALLBACK (status_edited_cb), view);
g_hash_table_insert (edit_table, GINT_TO_POINTER (E_MEETING_STORE_STATUS_COL), renderer);
@@ -642,7 +647,7 @@ e_meeting_list_view_new (EMeetingStore *store)
}
void
-e_meeting_list_view_column_set_visible (EMeetingListView *view, const gchar *col_name, gboolean visible)
+e_meeting_list_view_column_set_visible (EMeetingListView *view, EMeetingStoreColumns column, gboolean visible)
{
GList *cols, *l;
@@ -650,8 +655,9 @@ e_meeting_list_view_column_set_visible (EMeetingListView *view, const gchar *col
for (l = cols; l; l = l->next) {
GtkTreeViewColumn *col = (GtkTreeViewColumn *) l->data;
+ EMeetingStoreColumns store_colum = GPOINTER_TO_INT (g_object_get_data (G_OBJECT (col), "mtg-store-col"));
- if (strcmp (gtk_tree_view_column_get_title (col), col_name) == 0) {
+ if (store_colum == column) {
gtk_tree_view_column_set_visible (col, visible);
break;
}