aboutsummaryrefslogtreecommitdiffstats
path: root/shell/evolution-shell-view.c
diff options
context:
space:
mode:
Diffstat (limited to 'shell/evolution-shell-view.c')
-rw-r--r--shell/evolution-shell-view.c46
1 files changed, 46 insertions, 0 deletions
diff --git a/shell/evolution-shell-view.c b/shell/evolution-shell-view.c
index 5c46f70fbb..46a59030d7 100644
--- a/shell/evolution-shell-view.c
+++ b/shell/evolution-shell-view.c
@@ -43,6 +43,8 @@ struct _EvolutionShellViewPrivate {
enum {
SET_MESSAGE,
UNSET_MESSAGE,
+ CHANGE_VIEW,
+ SET_TITLE,
LAST_SIGNAL
};
static int signals[LAST_SIGNAL] = { 0 };
@@ -96,6 +98,30 @@ impl_ShellView_unset_message (PortableServer_Servant servant,
gtk_signal_emit (GTK_OBJECT (bonobo_object), signals[UNSET_MESSAGE]);
}
+static void
+impl_ShellView_change_current_view (PortableServer_Servant servant,
+ CORBA_char *uri,
+ CORBA_Environment *ev)
+{
+ BonoboObject *bonobo_object;
+
+ bonobo_object = bonobo_object_from_servant (servant);
+ gtk_signal_emit (GTK_OBJECT (bonobo_object), signals[CHANGE_VIEW],
+ uri);
+}
+
+static void
+impl_ShellView_set_title (PortableServer_Servant servant,
+ CORBA_char *title,
+ CORBA_Environment *ev)
+{
+ BonoboObject *bonobo_object;
+
+ bonobo_object = bonobo_object_from_servant (servant);
+ gtk_signal_emit (GTK_OBJECT (bonobo_object), signals[SET_TITLE],
+ title);
+}
+
/* GtkObject methods. */
static void
@@ -128,6 +154,8 @@ corba_class_init (void)
epv = g_new0 (POA_Evolution_ShellView__epv, 1);
epv->set_message = impl_ShellView_set_message;
epv->unset_message = impl_ShellView_unset_message;
+ epv->change_current_view = impl_ShellView_change_current_view;
+ epv->set_title = impl_ShellView_set_title;
vepv = &ShellView_vepv;
vepv->_base_epv = base_epv;
@@ -161,6 +189,24 @@ class_init (EvolutionShellViewClass *klass)
gtk_marshal_NONE__NONE,
GTK_TYPE_NONE, 0);
+ signals[CHANGE_VIEW]
+ = gtk_signal_new ("change_current_view",
+ GTK_RUN_FIRST,
+ object_class->type,
+ GTK_SIGNAL_OFFSET (EvolutionShellViewClass, change_current_view),
+ gtk_marshal_NONE__POINTER,
+ GTK_TYPE_NONE, 1,
+ GTK_TYPE_STRING);
+
+ signals[SET_TITLE]
+ = gtk_signal_new ("set_title",
+ GTK_RUN_FIRST,
+ object_class->type,
+ GTK_SIGNAL_OFFSET (EvolutionShellViewClass, set_title),
+ gtk_marshal_NONE__POINTER,
+ GTK_TYPE_NONE, 1,
+ GTK_TYPE_STRING);
+
gtk_object_class_add_signals (object_class, signals, LAST_SIGNAL);
parent_class = gtk_type_class (bonobo_object_get_type ());