aboutsummaryrefslogtreecommitdiffstats
path: root/calendar/gui/e-meeting-model.h
diff options
context:
space:
mode:
authorJP Rosevear <jpr@ximian.com>2002-02-16 03:22:18 +0800
committerJP Rosevear <jpr@src.gnome.org>2002-02-16 03:22:18 +0800
commit68bff65a4119bdd4431a5572c3cd59d2425c13ed (patch)
treeb03d169df01b8f5e41856920d91fed1192e0fe71 /calendar/gui/e-meeting-model.h
parent079f1f45e7c421ed7f19840f70034df4c7dace74 (diff)
downloadgsoc2013-evolution-68bff65a4119bdd4431a5572c3cd59d2425c13ed.tar.gz
gsoc2013-evolution-68bff65a4119bdd4431a5572c3cd59d2425c13ed.tar.zst
gsoc2013-evolution-68bff65a4119bdd4431a5572c3cd59d2425c13ed.zip
use new column enums (set_value_at): emit pre-change/cell change signals
2002-02-14 JP Rosevear <jpr@ximian.com> * gui/e-meeting-model.c: use new column enums (set_value_at): emit pre-change/cell change signals (destroy): destroy refresh_queue and refresh_data (init): init new elements (refresh_queue_add): if the attendee is being refreshed already, possibly update the start/end times to look for and update the callback info, otherwise add it to the queue (refresh_queue_remove): remove a refreshing attende from the queue (process_callbacks): make all the callbacks and remove the attendee from the queue (process_free_busy): process the callbacks immediately if parsing fails or on successful completion of processing (async_close): process free busy (cursor_cb): we're only looking for one at a time now (refresh_busy_periods): idle callback to start processing the queue (e_meeting_model_refresh_all_busy_periods): add every row to the queue (e_meeting_model_refresh_busy_periods): add a single row to the queue * gui/e-meeting-model.h: new protos, enum the columns * gui/e-meeting-time-sel.c: use new compare time function (e_meeting_time_selector_construct): listen for a cell changed signal and use separate callbacks for rows_inserted and rows_deleted (e_meeting_time_selector_refresh_free_busy): util function to refresh free busy info (e_meeting_time_selector_on_update_free_busy): use above (rows_inserted_cb): refresh free busy on the new rows (cell_changed_cb): refresh free busy on the row when the address changes (rows_deleted_cb): redraw * gui/e-meeting-utils.[hc]: a holding spot for a meeting time comparison function * gui/Makefile.am: compile new files svn path=/trunk/; revision=15741
Diffstat (limited to 'calendar/gui/e-meeting-model.h')
-rw-r--r--calendar/gui/e-meeting-model.h22
1 files changed, 22 insertions, 0 deletions
diff --git a/calendar/gui/e-meeting-model.h b/calendar/gui/e-meeting-model.h
index ad7d2d4c3a..431faf203b 100644
--- a/calendar/gui/e-meeting-model.h
+++ b/calendar/gui/e-meeting-model.h
@@ -49,6 +49,20 @@ typedef struct _EMeetingModel EMeetingModel;
typedef struct _EMeetingModelPrivate EMeetingModelPrivate;
typedef struct _EMeetingModelClass EMeetingModelClass;
+typedef enum {
+ E_MEETING_MODEL_ADDRESS_COL,
+ E_MEETING_MODEL_MEMBER_COL,
+ E_MEETING_MODEL_TYPE_COL,
+ E_MEETING_MODEL_ROLE_COL,
+ E_MEETING_MODEL_RSVP_COL,
+ E_MEETING_MODEL_DELTO_COL,
+ E_MEETING_MODEL_DELFROM_COL,
+ E_MEETING_MODEL_STATUS_COL,
+ E_MEETING_MODEL_CN_COL,
+ E_MEETING_MODEL_LANGUAGE_COL,
+ E_MEETING_MODEL_COLUMN_COUNT
+} EMeetingModelColumns;
+
struct _EMeetingModel {
ETableModel parent;
@@ -82,12 +96,20 @@ EMeetingAttendee *e_meeting_model_find_attendee_at_row (EMeetingModel *im, gint
gint e_meeting_model_count_actual_attendees (EMeetingModel *im);
const GPtrArray *e_meeting_model_get_attendees (EMeetingModel *im);
+
+void e_meeting_model_refresh_all_busy_periods (EMeetingModel *im,
+ EMeetingTime *start,
+ EMeetingTime *end,
+ EMeetingModelRefreshCallback call_back,
+ gpointer data);
void e_meeting_model_refresh_busy_periods (EMeetingModel *im,
+ int row,
EMeetingTime *start,
EMeetingTime *end,
EMeetingModelRefreshCallback call_back,
gpointer data);
+
/* Helpful functions */
ETableScrolled *e_meeting_model_etable_from_model (EMeetingModel *im, const gchar *spec_file, const gchar *state_file);
int e_meeting_model_etable_model_to_view_row (EMeetingModel *im, int model_row);