Re: Photo collection thingy



On 16 May 2002, Federico Mena Quintero wrote:
>
> This is very easy to do.  You just need to steal eog/libeog.  All the
> rest is basically a bunch of Bonobo crap and a toplevel window wrapped
> around libeog/ui-image.h.
>
> >   - I need a collection display widget.  I see there is something on CVS,
> >     but I don't know how good it is, and how to check it out.  (The
> >     subdir is not even included in the Makefile.)
>
> Jens has done a bunch of useful work on it, but my original design is
> not very good.  We need a canvas-less model/view icon list widget.

Hm, what is bad about the canvas? Since the first design I started to make
the collection view much more faster and I can't see why the canvas
isn't suited for our needs.

The collection was ported to Gnome2 very recently and because of the
ui/string freeze and the fact that it doesn't work yet for Gnome2 it's
switched off for now. Attached is a patch to enable the collection view
(use --enable-collection on configure).

> [...]
>
> This is really cool, and we could store the small wavelet decomposition
> in the XML file itself.  As for thumbnails, we can use the FreeDesktop
> thumbnail spec or whatever.

Personally I would feel really offended if we don't use the TMS in eog,
because this was exactly the reason for starting the discussion about the
TMS. I just wanted to add an collection view to eog which can read the
thumbnails from nautilus. Then everyone comes in and said we need a
standard. So yes, we should use the TMS for eog thumbnails!

> [...]
>
> 1. Organize your pre-EOG images.  This means dragging a bunch of images
> from elsewhere into EOG and categorizing them, giving them titles, etc.
>
> 2. Organize your post-EOG images.  These come from your digicam or
> whatever and are immediately added to your image collection.  We have to
> make it interface to GPhoto and friends.

3. Use it as a selector for our future dia show component.


Regards,

   Jens

-- 
 -= http://triq.net/~pearl =-   -= jens triq net =-

? diff
? eog-collection-build.patch
? announcements
? collection/diff
? shell/diff
Index: Makefile.am
===================================================================
RCS file: /cvs/gnome/eog/Makefile.am,v
retrieving revision 1.26
diff -u -p -B -r1.26 Makefile.am
--- Makefile.am	10 Mar 2002 04:21:11 -0000	1.26
+++ Makefile.am	25 Apr 2002 06:43:31 -0000
@@ -1,4 +1,8 @@
-SUBDIRS = art idl libeog viewer shell po help omf-install
+if ENABLE_COLLECTION
+collection_DIRS = collection
+endif
+
+SUBDIRS = art idl libeog viewer shell $(collection_DIRS) po help omf-install 
 
 EXTRA_DIST =			\
 	DEPENDS			\
Index: configure.in
===================================================================
RCS file: /cvs/gnome/eog/configure.in,v
retrieving revision 1.117
diff -u -p -B -r1.117 configure.in
--- configure.in	23 Apr 2002 06:25:13 -0000	1.117
+++ configure.in	25 Apr 2002 06:43:31 -0000
@@ -43,6 +43,9 @@ AC_SUBST(CFLAGS)
 AC_SUBST(CPPFLAGS)
 AC_SUBST(LDFLAGS)
 
+# glib-genmarshal
+AC_PATH_PROG(GLIB_GENMARSHAL, glib-genmarshal)
+
 ORBIT_IDL="`$PKG_CONFIG --variable=orbit_idl ORBit-2.0`"
 AC_SUBST(ORBIT_IDL)
 
@@ -66,6 +69,17 @@ fi
 AC_SUBST(GCONF_CONFIG_SOURCE)
 AC_SUBST(INSTALL_GCONF_CONFIG_SOURCE)
 
+dnl ******************************************************
+dnl Check if the collection component should be build 
+dnl ******************************************************
+collection=false
+AC_ARG_ENABLE(collection,
+	     [  --enable-collection     Build collection component.],
+	     if test x$enableval = xyes; then
+		     collection=true
+	     fi)
+AM_CONDITIONAL(ENABLE_COLLECTION, test x$collection = xtrue)
+
 dnl *******************************************************
 dnl Check for evolution
 dnl *******************************************************
@@ -243,6 +257,7 @@ eog.spec
 art/Makefile
 libeog/Makefile
 libeog/cursors/Makefile
+collection/Makefile
 viewer/Makefile
 idl/Makefile
 help/Makefile
Index: shell/Makefile.am
===================================================================
RCS file: /cvs/gnome/eog/shell/Makefile.am,v
retrieving revision 1.19
diff -u -p -B -r1.19 Makefile.am
--- shell/Makefile.am	11 Apr 2002 17:21:16 -0000	1.19
+++ shell/Makefile.am	25 Apr 2002 06:43:31 -0000
@@ -1,3 +1,7 @@
+if ENABLE_COLLECTION
+COLLECTION_FLAGS=-DHAVE_COLLECTION
+endif
+
 INCLUDES =                                              \
         -DGNOMELOCALEDIR=\""$(datadir)/locale"\"        \
 	-I. 						\
@@ -7,6 +11,7 @@ INCLUDES =                              
 	$(GCONF_CFLAGS)					\
 	$(EXTRA_WARNING_CFLAGS)				\
 	$(EOG_CFLAGS)					\
+	$(COLLECTION_FLAGS)				\
 	-DEOG_ICONDIR=\""$(datadir)/pixmaps"\"
 
 bin_PROGRAMS = eog
Index: shell/eog-window.c
===================================================================
RCS file: /cvs/gnome/eog/shell/eog-window.c,v
retrieving revision 1.53
diff -u -p -B -r1.53 eog-window.c
--- shell/eog-window.c	24 Apr 2002 00:38:28 -0000	1.53
+++ shell/eog-window.c	25 Apr 2002 06:43:31 -0000
@@ -899,6 +899,7 @@ get_viewer_control (GnomeVFSURI *uri, Gn
 	return CORBA_OBJECT_NIL;
 }	
 
+#ifdef HAVE_COLLECTION
 static Bonobo_Control
 get_collection_control (GnomeVFSURI *uri, GnomeVFSFileInfo *info)
 {
@@ -921,6 +922,7 @@ get_collection_control (GnomeVFSURI *uri
 	/* get collection image interface */
         collection = Bonobo_Unknown_queryInterface (unknown_obj, "IDL:GNOME/EOG/ImageCollection:1.0", &ev);
 	if (collection == CORBA_OBJECT_NIL) {
+		g_print ("exception: %s\n", bonobo_exception_get_text (&ev));
 		Bonobo_Unknown_unref (unknown_obj, &ev);
 		CORBA_Object_release (unknown_obj, &ev);
 		return CORBA_OBJECT_NIL;		
@@ -1013,6 +1015,22 @@ get_collection_control_list (GList *text
 
 	return control;
 }
+#else
+
+static Bonobo_Control
+get_collection_control (GnomeVFSURI *uri, GnomeVFSFileInfo *info)
+{
+	return CORBA_OBJECT_NIL;
+}
+
+static Bonobo_Control
+get_collection_control_list (GList *text_uri_list)
+{
+	return CORBA_OBJECT_NIL;
+}
+
+#endif /* HAVE_COLLECTION */
+
 
 static void 
 add_control_to_ui (EogWindow *window, Bonobo_Control control)


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]