evolution/calendar-sendbutton.patch

153 lines
6.4 KiB
Diff

Index: ui/evolution-editor.xml
===================================================================
RCS file: /cvs/gnome/evolution/ui/evolution-editor.xml,v
retrieving revision 1.5
diff -u -p -r1.5 evolution-editor.xml
--- ui/evolution-editor.xml 14 Jan 2006 10:30:20 -0000 1.5
+++ ui/evolution-editor.xml 9 Mar 2006 11:28:18 -0000
@@ -1,6 +1,8 @@
<Root>
<commands>
<cmd name="FileSave" _tip="Click here to save the current window" accel="*Control*s" pixtype="stock" pixname="gtk-save"/>
+ <cmd name="FileSend" _tip="Click here to send" accel="*Control*s" pixtype="pixbuf" />
+
<cmd name="FileClose" _tip="Click here to close the current window" accel="*Control*w" pixtype="stock" pixname="gtk-close"/>
<cmd name="EditCut" _tip="Cut selected text to the clipboard" accel="*Control*x" pixtype="stock" pixname="gtk-cut"/>
@@ -18,6 +20,8 @@
<submenu name="File" _label="_File">
<placeholder name="FileOps">
<menuitem name="FileSave" verb="" _label="_Save"/>
+ <menuitem name="FileSend" verb="" _label="_Send"/>
+
</placeholder>
<placeholder name="FileWindow">
<menuitem name="FileClose" verb="" _label="_Close"/>
@@ -53,7 +57,9 @@
<dockitem name="Toolbar">
- <toolitem name="FileSave" verb="" _label="Save"/>
+ <toolitem name="FileSave" verb="" _label="Save"/>
+ <toolitem name="FileSend" verb="" _label="Send" pixtype="pixbuf"/>
+
<toolitem name="FileClose" verb="" _label="Close"/>
<separator f="" name="editor1"/>
Index: calendar/gui/dialogs/comp-editor.h
===================================================================
RCS file: /cvs/gnome/evolution/calendar/gui/dialogs/comp-editor.h,v
retrieving revision 1.32
diff -u -p -r1.32 comp-editor.h
--- calendar/gui/dialogs/comp-editor.h 13 Jan 2006 09:29:17 -0000 1.32
+++ calendar/gui/dialogs/comp-editor.h 9 Mar 2006 10:52:45 -0000
@@ -53,9 +53,9 @@ typedef struct {
BonoboWindowClass parent_class;
/* Virtual functions */
+ void (* object_created) (CompEditor *page);
void (* set_e_cal) (CompEditor *page, ECal *client);
void (* edit_comp) (CompEditor *page, ECalComponent *comp);
- void (* object_created) (CompEditor *page);
gboolean (* send_comp) (CompEditor *page, ECalComponentItipMethod method);
} CompEditorClass;
Index: calendar/gui/dialogs/event-editor.c
===================================================================
RCS file: /cvs/gnome/evolution/calendar/gui/dialogs/event-editor.c,v
retrieving revision 1.78
diff -u -p -r1.78 event-editor.c
--- calendar/gui/dialogs/event-editor.c 8 Feb 2006 13:06:24 -0000 1.78
+++ calendar/gui/dialogs/event-editor.c 9 Mar 2006 10:52:46 -0000
@@ -566,7 +566,8 @@ event_editor_construct (EventEditor *ee,
if (e_cal_get_static_capability (client, CAL_STATIC_CAPABILITY_REQ_SEND_OPTIONS))
event_page_show_options (priv->event_page);
-
+
+ comp_editor_set_needs_send (COMP_EDITOR (ee), TRUE);
comp_editor_set_group_item (COMP_EDITOR (ee), TRUE);
if ((flags & COMP_EDITOR_USER_ORG) || (flags & COMP_EDITOR_DELEGATE)|| (flags & COMP_EDITOR_NEW_ITEM)) {
priv->sched_window = gtk_dialog_new_with_buttons (_("Free/Busy"),
Index: calendar/gui/dialogs/task-editor.c
===================================================================
RCS file: /cvs/gnome/evolution/calendar/gui/dialogs/task-editor.c,v
retrieving revision 1.94
diff -u -p -r1.94 task-editor.c
--- calendar/gui/dialogs/task-editor.c 9 Feb 2006 04:02:49 -0000 1.94
+++ calendar/gui/dialogs/task-editor.c 9 Mar 2006 10:52:46 -0000
@@ -447,6 +447,9 @@ task_editor_construct (TaskEditor *te, E
read_only = TRUE;
if (priv->is_assigned) {
+
+ comp_editor_set_needs_send (COMP_EDITOR (te), TRUE);
+
if (e_cal_get_static_capability (client, CAL_STATIC_CAPABILITY_REQ_SEND_OPTIONS))
task_page_show_options (priv->task_page);
--- calendar/gui/dialogs/comp-editor.c.orig 2006-09-04 17:59:13.174145096 +0200
+++ calendar/gui/dialogs/comp-editor.c 2006-09-04 18:02:10.589153326 +0200
@@ -860,8 +860,8 @@ save_comp_with_send (CompEditor *editor)
if (!save_comp (editor))
return FALSE;
- if ((delegate && !e_cal_get_save_schedules (priv->client)) || (send && send_component_dialog ((GtkWindow *) editor, priv->client, priv->comp, !priv->existing_org))) {
- if (itip_organizer_is_user (priv->comp, priv->client)) {
+ if ((delegate && !e_cal_get_save_schedules (priv->client)) || send) {
+ if (itip_organizer_is_user (priv->comp, priv->client)) {
if (e_cal_component_get_vtype (priv->comp) == E_CAL_COMPONENT_JOURNAL)
return comp_editor_send_comp (editor, E_CAL_COMPONENT_METHOD_PUBLISH);
else
@@ -1398,6 +1398,7 @@ menu_help_cb (BonoboUIComponent *uic,
static BonoboUIVerb verbs [] = {
BONOBO_UI_VERB ("FileSave", menu_file_save_cb),
+ BONOBO_UI_VERB ("FileSend", menu_file_save_cb),
BONOBO_UI_VERB ("FileClose", menu_file_close_cb),
BONOBO_UI_VERB ("EditCopy", menu_edit_copy_cb),
@@ -1414,6 +1415,7 @@ static BonoboUIVerb verbs [] = {
static EPixmap pixmaps[] = {
E_PIXMAP ("/Toolbar/InsertAttachments", "stock_attach", E_ICON_SIZE_LARGE_TOOLBAR),
E_PIXMAP ("/menu/Insert/Attachments/InsertAttachments", "stock_attach", E_ICON_SIZE_MENU),
+ E_PIXMAP ("/Toolbar/FileSend", "stock_mail-send", E_ICON_SIZE_LARGE_TOOLBAR),
E_PIXMAP_END
};
@@ -1545,6 +1547,9 @@ comp_editor_init (CompEditor *editor)
bonobo_ui_component_thaw (editor->uic, NULL);
bonobo_ui_component_set_prop (editor->uic, "/commands/FileSave", "sensitive", "0", NULL);
+ bonobo_ui_component_set_prop (editor->uic, "/commands/FileSend", "sensitive", "0", NULL);
+
+ bonobo_ui_component_set_prop (editor->uic, "/commands/FileSend", "hidden", "1", NULL);
/* DND support */
gtk_drag_dest_set (GTK_WIDGET (editor), GTK_DEST_DEFAULT_ALL, drop_types, num_drop_types, GDK_ACTION_COPY|GDK_ACTION_ASK|GDK_ACTION_MOVE);
@@ -1771,9 +1776,10 @@ comp_editor_set_changed (CompEditor *edi
priv = editor->priv;
priv->changed = changed;
-
+ bonobo_ui_component_set_prop (editor->uic, "/commands/FileSend", "sensitive", changed ? "1" : "0"
+ , NULL);
bonobo_ui_component_set_prop (editor->uic, "/commands/FileSave", "sensitive", changed ? "1" : "0"
- , NULL);
+ , NULL);
}
/**
@@ -1839,6 +1845,11 @@ comp_editor_set_needs_send (CompEditor *
priv = editor->priv;
priv->needs_send = needs_send;
+ if (needs_send) {
+ bonobo_ui_component_set_prop (editor->uic, "/commands/FileSave", "hidden", "1", NULL);
+ bonobo_ui_component_set_prop (editor->uic, "/commands/FileSend", "hidden", "0", NULL);
+ }
+
}
/**