New docking widget GdlDock



Hi!

Finally, after a week of learning, reviewing code, copying and pasting, and coding, I was able to produce a working docking widget.  This is meant to be a "preview" release as I still plan to change the API and add lots of functionality.  The tar.gz should be extracted in the gdl module and the patch simply adds the required files to Makefile.am in the gdl subdir.

Please try it, study it and most important, break it.  I would need comments and ideas about the API, so we can get a really useful widget.  Any feedback you can give me will be really appreciated.  I will try to hang on irc as much time as I can, so we can discuss these issues.  There are FIXMEs spread all over the source for the bugs/features I know I still have to fix.  My idea is to stabilize the Dock/DockItem API first and then add functionality through derived widgets.

A test program is included where you can see how to use the widget.  The basic idea is every DockItem docks to another one, previously docked.  This model is very different from GnomeDock's, and is similar to the one KDE uses for KDockWidget.  It offers more layout flexibility and it's simpler to implement.  The code is based on GnomeDock, GnomeDockItem and EPaned.

I hope you enjoy it, and don't forget to break it! :-)

Gustavo


? gdl/gdl-dock-item.c
? gdl/gdl-dock-item.h
? gdl/gdl-dock-paned.c
? gdl/gdl-dock-paned.h
? gdl/gdl-dock.c
? gdl/gdl-dock.h
? gdl/test-dock.c
Index: gdl/Makefile.am
===================================================================
RCS file: /cvs/gnome/gdl/gdl/Makefile.am,v
retrieving revision 1.4
diff -u -r1.4 Makefile.am
--- gdl/Makefile.am	2001/07/07 16:30:29	1.4
+++ gdl/Makefile.am	2001/08/21 02:50:40
@@ -2,6 +2,15 @@
 	-DGNOMELOCALEDIR=\""$(datadir)/locales"\" \
 	-I$(includedir) $(GNOME_INCLUDEDIR) $(BONOBO_CFLAGS) $(GNOME_CFLAGS)
 
+noinst_PROGRAMS = test-dock
+
+test_dock_SOURCES = test-dock.c
+
+test_dock_LDADD =  \
+	$(GNOME_LIBS)   \
+	$(GNOMEUI_LIBS) \
+	libgdl.la
+
 lib_LTLIBRARIES = libgdl.la
 
 CORBA_GENERATED_HEADER_FILES = GDL.h
@@ -24,7 +33,10 @@
 
 libgdl_la_SOURCES = \
 	$(CORBA_GENERATED) \
-	gdl-server-manager.c
+	gdl-server-manager.c \
+	gdl-dock.c \
+	gdl-dock-item.c \
+	gdl-dock-paned.c
 
 libgdl_la_LIBADD = \
 	$(BONOBO_LIBS) \
@@ -35,4 +47,7 @@
 	$(CORBA_GENERATED_HEADER_FILES) \
 	gdl.h \
 	gdl-server-manager.h \
-	gdl-tools.h
\ No newline at end of file
+	gdl-tools.h \
+	gdl-dock.h \
+	gdl-dock-item.h \
+	gdl-dock-paned.h

Attachment: gdl-dock.tar.gz
Description: Binary data



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