aboutsummaryrefslogtreecommitdiffstats
path: root/widgets/menus/gal-define-views-dialog.c
diff options
context:
space:
mode:
authorChristopher James Lahey <clahey@helixcode.com>2000-12-07 02:38:39 +0800
committerChris Lahey <clahey@src.gnome.org>2000-12-07 02:38:39 +0800
commit6dce720dc64061352041f4a55c46590c8ffcc3a0 (patch)
treeaeaa4f941fc9964f0289d9078b1299d8148a4dbd /widgets/menus/gal-define-views-dialog.c
parentaf6115e56fddb10b0dc1dd8f38aff42754e47950 (diff)
downloadgsoc2013-evolution-6dce720dc64061352041f4a55c46590c8ffcc3a0.tar
gsoc2013-evolution-6dce720dc64061352041f4a55c46590c8ffcc3a0.tar.gz
gsoc2013-evolution-6dce720dc64061352041f4a55c46590c8ffcc3a0.tar.bz2
gsoc2013-evolution-6dce720dc64061352041f4a55c46590c8ffcc3a0.tar.lz
gsoc2013-evolution-6dce720dc64061352041f4a55c46590c8ffcc3a0.tar.xz
gsoc2013-evolution-6dce720dc64061352041f4a55c46590c8ffcc3a0.tar.zst
gsoc2013-evolution-6dce720dc64061352041f4a55c46590c8ffcc3a0.zip
Added gal-view-collection.c, gal-view-etable.c, gal-view-factory-etable.c,
2000-12-06 Christopher James Lahey <clahey@helixcode.com> * Makefile.am: Added gal-view-collection.c, gal-view-etable.c, gal-view-factory-etable.c, gal-view-factory.c, gal-view-collection.h, gal-view-etable.h, gal-view-factory-etable.h, and gal-view-factory.h. * gal-define-views-dialog.c, gal-define-views-dialog.h: Rewrote this to take a GalViewCollection. This now passes its collection to the new view dialog but still doesn't get its list of views from the collection. * gal-define-views-model.c: Changed this to use the gal_view_get_title function instead of the "title" gtk argument. * gal-define-views.glade, gal-define-views.glade.h: Changed this dialog to be a bit cleaner. * gal-view-collection.c, gal-view-collection.h: A collection of views and view factories. * gal-view-etable.c, gal-view-etable.h: An implementation of the view class. This stores an ETableSpecification and the current ETableState. * gal-view-factory-etable.c, gal-view-factory-etable.h: An implementation of the view factory class. This stores an ETableSpecification and creates GalViewEtables when requested. * gal-view-factory.c, gal-view-factory.h: A new virtual class. Its primary job is to return new GalViews. * gal-view-new-dialog.c, gal-view-new-dialog.h: Added a collection argument to the new function here so that it can get a list of factories to choose from. * gal-view-new-dialog.glade, gal-view-new-dialog.glade.h: Added a CList for the list of factories to choose from. * gal-view.c, gal-view.h: Changed this to be a virtual class. svn path=/trunk/; revision=6811
Diffstat (limited to 'widgets/menus/gal-define-views-dialog.c')
-rw-r--r--widgets/menus/gal-define-views-dialog.c16
1 files changed, 9 insertions, 7 deletions
diff --git a/widgets/menus/gal-define-views-dialog.c b/widgets/menus/gal-define-views-dialog.c
index 97cf0eb5f2..f92f1520c7 100644
--- a/widgets/menus/gal-define-views-dialog.c
+++ b/widgets/menus/gal-define-views-dialog.c
@@ -111,17 +111,19 @@ gdvd_button_new_dialog_callback(GtkWidget *widget, int button, GalDefineViewsDia
{
gchar *name;
GalView *view;
+ GalViewFactory *factory;
switch (button) {
case 0:
gtk_object_get(GTK_OBJECT(widget),
"name", &name,
+ "factory", &factory,
NULL);
- view = gal_view_new();
- gtk_object_set(GTK_OBJECT(view),
- "name", name,
- NULL);
- gal_define_views_model_append(GAL_DEFINE_VIEWS_MODEL(dialog->model), view);
- gtk_object_unref(GTK_OBJECT(view));
+ if (name && factory) {
+ view = gal_view_factory_new_view(factory,
+ name);
+ gal_define_views_model_append(GAL_DEFINE_VIEWS_MODEL(dialog->model), view);
+ gtk_object_unref(GTK_OBJECT(view));
+ }
break;
}
gnome_dialog_close(GNOME_DIALOG(widget));
@@ -130,7 +132,7 @@ gdvd_button_new_dialog_callback(GtkWidget *widget, int button, GalDefineViewsDia
static void
gdvd_button_new_callback(GtkWidget *widget, GalDefineViewsDialog *dialog)
{
- GtkWidget *view_new_dialog = gal_view_new_dialog_new();
+ GtkWidget *view_new_dialog = gal_view_new_dialog_new(dialog->collection);
gtk_signal_connect(GTK_OBJECT(view_new_dialog), "clicked",
GTK_SIGNAL_FUNC(gdvd_button_new_dialog_callback), dialog);
gtk_widget_show(GTK_WIDGET(view_new_dialog));