diff options
author | Not Zed <NotZed@Ximian.com> | 2004-10-07 09:42:50 +0800 |
---|---|---|
committer | Michael Zucci <zucchi@src.gnome.org> | 2004-10-07 09:42:50 +0800 |
commit | eb114d32c827f54d0c752ee022f78fb35d5ee4ef (patch) | |
tree | e237e128549b5ad2cce8be3c481ab32ba886ddf4 /calendar/gui/e-cal-popup.h | |
parent | bfaace723bb0199325f79ac52c32260df9e524fb (diff) | |
download | gsoc2013-evolution-eb114d32c827f54d0c752ee022f78fb35d5ee4ef.tar.gz gsoc2013-evolution-eb114d32c827f54d0c752ee022f78fb35d5ee4ef.tar.zst gsoc2013-evolution-eb114d32c827f54d0c752ee022f78fb35d5ee4ef.zip |
rename to view_popup_factory. Make it build an epopup item list directly.
2004-10-06 Not Zed <NotZed@Ximian.com>
* gui/gnome-cal.c (gnome_calendar_setup_view_popup): rename to
view_popup_factory. Make it build an epopup item list directly.
Can't re-use the galview cruft :-/
(gnome_calendar_discard_view_popup): no longer needed.
(gc_set_view, gc_save_custom_view, gc_define_views_response)
(gc_define_views): implement the gal-view popup menu items.
* gui/gnome-cal.h:
* gui/e-week-view.h:
* gui/e-day-view.h:
* gui/e-cal-list-view.h: removed old e-popup-menu header.
* gui/e-calendar-view.c (setup_popup_icons): removed.
(e_calendar_view_create_popup_menu): converted to use e-popup.
(on_paste, on_copy, on_cut, on_delete_occurrence)
(on_unrecur_appointment, on_delete_appointment, on_publish)
(on_forward, on_meeting, on_move_to, on_copy_to, on_print_event)
(on_save_as, on_print, on_edit_appointment, on_goto_today)
(on_goto_date, on_new_task, on_new_meeting, on_new_event)
(on_new_appointment): convert to use e-popup stuff.
* gui/tasks-component.c (popup_event_cb): e-popup api changes.
* gui/e-cal-popup.c (e_cal_popup_target_new_select): implement the
selection target.
(ecalp_target_free): and free it.
* gui/e-cal-model.h: Make the ECalModel struct non-anonymous so it
can be forward-declared.
* gui/calendar-component.c (popup_event_cb): e-popup api changes.
svn path=/trunk/; revision=27489
Diffstat (limited to 'calendar/gui/e-cal-popup.h')
-rw-r--r-- | calendar/gui/e-cal-popup.h | 33 |
1 files changed, 28 insertions, 5 deletions
diff --git a/calendar/gui/e-cal-popup.h b/calendar/gui/e-cal-popup.h index 81d2d51976..1e6c84d1b9 100644 --- a/calendar/gui/e-cal-popup.h +++ b/calendar/gui/e-cal-popup.h @@ -34,6 +34,8 @@ extern "C" { typedef struct _ECalPopup ECalPopup; typedef struct _ECalPopupClass ECalPopupClass; +struct _ECalendarView; + /** * enum _e_cal_popup_target_t - A list of mail popup target types. * @@ -52,11 +54,26 @@ enum _e_cal_popup_target_t { * * @E_CAL_POPUP_SELECT_ONE: Only one item is selected. * @E_CAL_POPUP_SELECT_MANY: One ore more items are selected. + * @E_CAL_POPUP_SELECT_EDITABLE: The selection is editable. + * @E_CAL_POPUP_SELECT_RECURRING: Is a recurring event. + * @E_CAL_POPUP_SELECT_NONRECURRING: Is not a recurring event. + * @E_CAL_POPUP_SELECT_INSTANCE: This is an instance event. + * @E_CAL_POPUP_SELECT_ORGANIZER: The user is the organiser of the event. + * @E_CAL_POPUP_SELECT_NOTEDITING: The event is not being edited already. Not implemented. + * @E_CAL_POPUP_SELECT_NOTMEETING: The event is not a meeting. * **/ enum _e_cal_popup_target_select_t { - E_CAL_POPUP_SELECT_ONE = 1<<1, - E_CAL_POPUP_SELECT_MANY = 1<<2, + E_CAL_POPUP_SELECT_ONE = 1<<0, + E_CAL_POPUP_SELECT_MANY = 1<<1, + E_CAL_POPUP_SELECT_EDITABLE = 1<<2, + E_CAL_POPUP_SELECT_RECURRING = 1<<3, + E_CAL_POPUP_SELECT_NONRECURRING = 1<<4, + E_CAL_POPUP_SELECT_INSTANCE = 1<<5, + + E_CAL_POPUP_SELECT_ORGANIZER = 1<<6, + E_CAL_POPUP_SELECT_NOTEDITING = 1<<7, + E_CAL_POPUP_SELECT_NOTMEETING = 1<<8, }; /** @@ -78,15 +95,21 @@ typedef struct _ECalPopupTargetSource ECalPopupTargetSource; /** * struct _ECalPopupTargetSelect - A list of address cards. * - * @target: Superclass. + * @target: Superclass. target.widget is an ECalendarView. + * @model: The ECalModel. + * @events: The selected events. These are ECalModelComponent's. * * Used to represent a selection of appointments as context for a popup * menu. * - * FIXME: impelemnt me + * TODO: For maximum re-usability references to the view could be removed + * from this structure. **/ struct _ECalPopupTargetSelect { EPopupTarget target; + + struct _ECalModel *model; + GPtrArray *events; }; /** @@ -120,7 +143,7 @@ GType e_cal_popup_get_type(void); ECalPopup *e_cal_popup_new(const char *menuid); -ECalPopupTargetSelect *e_cal_popup_target_new_select(ECalPopup *eabp); +ECalPopupTargetSelect *e_cal_popup_target_new_select(ECalPopup *eabp, struct _ECalendarView *view); ECalPopupTargetSource *e_cal_popup_target_new_source(ECalPopup *eabp, struct _ESourceSelector *selector); /* ********************************************************************** */ |