aboutsummaryrefslogtreecommitdiffstats
path: root/calendar/gui/e-memo-shell-module.c
diff options
context:
space:
mode:
authorMatthew Barnes <mbarnes@src.gnome.org>2008-09-11 12:42:53 +0800
committerMatthew Barnes <mbarnes@src.gnome.org>2008-09-11 12:42:53 +0800
commit6545899a2972546a035da4d73c3625b9e8bb7438 (patch)
tree63abda4bfb1f02af0bba51c6064e4f6b1131cc44 /calendar/gui/e-memo-shell-module.c
parentc701a5e0260fb27c26a4e81edaee61db651b1040 (diff)
downloadgsoc2013-evolution-6545899a2972546a035da4d73c3625b9e8bb7438.tar
gsoc2013-evolution-6545899a2972546a035da4d73c3625b9e8bb7438.tar.gz
gsoc2013-evolution-6545899a2972546a035da4d73c3625b9e8bb7438.tar.bz2
gsoc2013-evolution-6545899a2972546a035da4d73c3625b9e8bb7438.tar.lz
gsoc2013-evolution-6545899a2972546a035da4d73c3625b9e8bb7438.tar.xz
gsoc2013-evolution-6545899a2972546a035da4d73c3625b9e8bb7438.tar.zst
gsoc2013-evolution-6545899a2972546a035da4d73c3625b9e8bb7438.zip
Add menu and toolbar UI for calendars, memos and tasks.
svn path=/branches/kill-bonobo/; revision=36299
Diffstat (limited to 'calendar/gui/e-memo-shell-module.c')
-rw-r--r--calendar/gui/e-memo-shell-module.c136
1 files changed, 136 insertions, 0 deletions
diff --git a/calendar/gui/e-memo-shell-module.c b/calendar/gui/e-memo-shell-module.c
new file mode 100644
index 0000000000..d5c0a2d60d
--- /dev/null
+++ b/calendar/gui/e-memo-shell-module.c
@@ -0,0 +1,136 @@
+/* -*- Mode: C; indent-tabs-mode: t; c-basic-offset: 8; tab-width: 8 -*- */
+/* e-memo-shell-module.c
+ *
+ * Copyright (C) 1999-2008 Novell, Inc. (www.novell.com)
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of version 2 of the GNU General Public
+ * License as published by the Free Software Foundation.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public
+ * License along with this program; if not, write to the
+ * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+ * Boston, MA 02110-1301, USA.
+ */
+
+#include <glib/gi18n.h>
+
+#include <e-shell.h>
+#include <e-shell-module.h>
+#include <e-shell-window.h>
+
+#include <e-memo-shell-view.h>
+
+#define MODULE_NAME "memos"
+#define MODULE_ALIASES ""
+#define MODULE_SCHEMES "memo"
+#define MODULE_SEARCHES "memotypes.xml"
+#define MODULE_SORT_ORDER 500
+
+/* Module Entry Point */
+void e_shell_module_init (GTypeModule *type_module);
+
+static void
+action_memo_new_cb (GtkAction *action,
+ EShellWindow *shell_window)
+{
+}
+
+static void
+action_memo_shared_new_cb (GtkAction *action,
+ EShellWindow *shell_window)
+{
+}
+
+static void
+action_memo_list_new_cb (GtkAction *action,
+ EShellWindow *shell_window)
+{
+}
+
+static GtkActionEntry item_entries[] = {
+
+ { "memo-new",
+ "stock_insert-note",
+ N_("Mem_o"), /* XXX Need C_() here */
+ "<Control>o",
+ N_("Create a new memo"),
+ G_CALLBACK (action_memo_new_cb) },
+
+ { "memo-shared-new",
+ "stock_insert-note",
+ N_("_Shared Memo"),
+ "<Control>h",
+ N_("Create a new shared memo"),
+ G_CALLBACK (action_memo_shared_new_cb) }
+};
+
+static GtkActionEntry source_entries[] = {
+
+ { "memo-list-new",
+ "stock_notes",
+ N_("Memo Li_st"),
+ NULL,
+ N_("Create a new memo list"),
+ G_CALLBACK (action_memo_list_new_cb) }
+};
+
+static gboolean
+memo_module_handle_uri (EShellModule *shell_module,
+ const gchar *uri)
+{
+ /* FIXME */
+ return FALSE;
+}
+
+static void
+memo_module_window_created (EShellModule *shell_module,
+ EShellWindow *shell_window)
+{
+ const gchar *module_name;
+
+ module_name = G_TYPE_MODULE (shell_module)->name;
+
+ e_shell_window_register_new_item_actions (
+ shell_window, module_name,
+ item_entries, G_N_ELEMENTS (item_entries));
+
+ e_shell_window_register_new_source_actions (
+ shell_window, module_name,
+ source_entries, G_N_ELEMENTS (source_entries));
+}
+
+static EShellModuleInfo module_info = {
+
+ MODULE_NAME,
+ MODULE_ALIASES,
+ MODULE_SCHEMES,
+ MODULE_SEARCHES,
+ MODULE_SORT_ORDER
+};
+
+void
+e_shell_module_init (GTypeModule *type_module)
+{
+ EShell *shell;
+ EShellModule *shell_module;
+
+ shell_module = E_SHELL_MODULE (type_module);
+ shell = e_shell_module_get_shell (shell_module);
+
+ e_memo_shell_view_get_type (type_module);
+ e_shell_module_set_info (shell_module, &module_info);
+
+ g_signal_connect_swapped (
+ shell, "handle-uri",
+ G_CALLBACK (memo_module_handle_uri), shell_module);
+
+ g_signal_connect_swapped (
+ shell, "window-created",
+ G_CALLBACK (memo_module_window_created), shell_module);
+}