diff options
author | Chris Toshok <toshok@helixcode.com> | 2000-10-03 10:53:08 +0800 |
---|---|---|
committer | Chris Toshok <toshok@src.gnome.org> | 2000-10-03 10:53:08 +0800 |
commit | cc6dbb8f3cf2f9d64e0f0577a08177630e72219b (patch) | |
tree | 83e6c04ea986f69de94f268c793601773db4d54a /shell/evolution-storage-set-view.c | |
parent | 78320752289da1ace70bf6bfe3edef1671a3be61 (diff) | |
download | gsoc2013-evolution-cc6dbb8f3cf2f9d64e0f0577a08177630e72219b.tar.gz gsoc2013-evolution-cc6dbb8f3cf2f9d64e0f0577a08177630e72219b.tar.zst gsoc2013-evolution-cc6dbb8f3cf2f9d64e0f0577a08177630e72219b.zip |
add storage_selected behavior - loop over the listeners calling
2000-10-02 Chris Toshok <toshok@helixcode.com>
* evolution-storage-set-view.c: add storage_selected behavior -
loop over the listeners calling _storage_selected.
* Evolution-StorageSetView.idl: add storage_selected to the
Listener interface.
* e-storage-set-view.c add storage_selected signal.
(on_cursor_change): if the depth is less than 2, emit
"storage_selected", otherwise emit "folder_selected".
* e-storage-set-view.h: add storage_selected signal.
* evolution-storage-set-view-listener.h: add storage_selected
signal.
* evolution-storage-set-view-listener.c: add storage_selected
signal.
svn path=/trunk/; revision=5686
Diffstat (limited to 'shell/evolution-storage-set-view.c')
-rw-r--r-- | shell/evolution-storage-set-view.c | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/shell/evolution-storage-set-view.c b/shell/evolution-storage-set-view.c index 2e320c9ee5..70892c686d 100644 --- a/shell/evolution-storage-set-view.c +++ b/shell/evolution-storage-set-view.c @@ -67,6 +67,33 @@ storage_set_view_widget_folder_selected_cb (EStorageSetView *storage_set_view_wi } } +static void +storage_set_view_widget_storage_selected_cb (EStorageSetView *storage_set_view_widget, + const char *uri, + void *data) +{ + EvolutionStorageSetView *storage_set_view; + EvolutionStorageSetViewPrivate *priv; + GList *p; + + storage_set_view = EVOLUTION_STORAGE_SET_VIEW (data); + priv = storage_set_view->priv; + + for (p = priv->listeners; p != NULL; p = p->next) { + CORBA_Environment ev; + Evolution_StorageSetViewListener listener; + + CORBA_exception_init (&ev); + + listener = (Evolution_StorageSetViewListener) p->data; + Evolution_StorageSetViewListener_storage_selected (listener, uri, &ev); + + /* FIXME: What if we fail? */ + + CORBA_exception_free (&ev); + } +} + /* Listener handling. */ @@ -345,6 +372,8 @@ evolution_storage_set_view_construct (EvolutionStorageSetView *storage_set_view, gtk_signal_connect (GTK_OBJECT (priv->storage_set_view_widget), "folder_selected", GTK_SIGNAL_FUNC (storage_set_view_widget_folder_selected_cb), storage_set_view); + gtk_signal_connect (GTK_OBJECT (priv->storage_set_view_widget), "storage_selected", + GTK_SIGNAL_FUNC (storage_set_view_widget_storage_selected_cb), storage_set_view); } EvolutionStorageSetView * |