diff options
author | Owen Taylor <otaylor@redhat.com> | 2003-10-23 04:22:32 +0000 |
---|---|---|
committer | Owen Taylor <otaylor@src.gnome.org> | 2003-10-23 04:22:32 +0000 |
commit | b3bae3b40ab92ad5a5dab65da3c3440efae975d4 (patch) | |
tree | 9301956750d991c3fe99e7862c44fbc104aa44a8 /gtk | |
parent | 3724a591d822c3bc53ce829407a142e19d418acf (diff) | |
download | gtk+-b3bae3b40ab92ad5a5dab65da3c3440efae975d4.tar.gz |
gtk/gtkfilechooserutils.c gtk/gtkfilechooserprivate.[ch]: Basic framework
Wed Oct 22 23:20:04 2003 Owen Taylor <otaylor@redhat.com>
* gtk/gtkfilechooser.[ch] gtk/gtkfilefilter.[ch]
gtk/gtkfilechooserwidget.[ch] gtk/gtkfilechooserdialog.[ch]:
gtk/gtkfilechooserutils.c gtk/gtkfilechooserprivate.[ch]:
Basic framework for the new file selector widget.
* gtk/gtkfilechooserdefault.[ch] gtk/gtkcellrenderersep.[ch]
gtk/gtkfilechooserentry.[ch] gtk/gtkfilesystemmodel.[ch]:
Initial implementation of the GtkFileChooser user interface.
* gtk/gtkfilesystemunix.[ch]: GtkFileSystem implementation
for Unix files.
* configure.in gtk/Makefile.am gtk/xdgmime: Build code
for freedesktop.org MIME system on Unix.
* tests/testfilechooser.c: Test program for GtkFileChooser
* tests/prop-editor.c: Add support for properties on interfaces.
Diffstat (limited to 'gtk')
-rw-r--r-- | gtk/Makefile.am | 46 | ||||
-rw-r--r-- | gtk/gtk.h | 2 | ||||
-rw-r--r-- | gtk/gtkfilechooser.c | 2 | ||||
-rw-r--r-- | gtk/gtkfilechooserdefault.c | 48 | ||||
-rw-r--r-- | gtk/gtkfilechooserdialog.c | 2 | ||||
-rw-r--r-- | gtk/gtkfilechooserentry.c | 7 | ||||
-rw-r--r-- | gtk/gtkfilechooserutils.c | 2 | ||||
-rw-r--r-- | gtk/gtkfilechooserwidget.c | 6 | ||||
-rw-r--r-- | gtk/gtkfilefilter.c | 14 | ||||
-rw-r--r-- | gtk/gtkfilesystem.c | 2 | ||||
-rw-r--r-- | gtk/gtkfilesystem.h | 8 | ||||
-rw-r--r-- | gtk/gtkfilesystemmodel.c | 5 | ||||
-rw-r--r-- | gtk/gtkfilesystemunix.c | 1 | ||||
-rw-r--r-- | gtk/xdgmime/Makefile.am | 2 |
14 files changed, 99 insertions, 48 deletions
diff --git a/gtk/Makefile.am b/gtk/Makefile.am index 646894e614..8d630be488 100644 --- a/gtk/Makefile.am +++ b/gtk/Makefile.am @@ -2,6 +2,12 @@ SUBDIRS=stock-icons theme-bits +if OS_UNIX +SUBDIRS += xdgmime +endif + +DIST_SUBDIRS=stock-icons theme-bits xdgmime + INCLUDES = \ -DG_LOG_DOMAIN=\"Gtk\" \ -DGTK_LIBDIR=\"$(libdir)\" \ @@ -20,6 +26,7 @@ INCLUDES = \ -DGDK_PIXBUF_DISABLE_DEPRECATED \ -DGDK_DISABLE_DEPRECATED \ -DGTK_DISABLE_DEPRECATED \ + -DGTK_FILE_SYSTEM_ENABLE_UNSUPPORTED \ $(GTK_DEBUG_FLAGS) \ $(GTK_DEP_CFLAGS) @@ -72,6 +79,10 @@ libadd = \ $(top_builddir)/gdk/$(gdktargetlib) \ $(GTK_DEP_LIBS) +if OS_UNIX +libadd += xdgmime/libxdgmime.la +endif + # common options for the various packages. libtool_opts = \ -version-info $(LT_VERSION_INFO) \ @@ -133,6 +144,10 @@ gtk_public_h_sources = \ gtkenums.h \ gtkeventbox.h \ gtkexpander.h \ + gtkfilechooser.h \ + gtkfilechooserdialog.h \ + gtkfilechooserwidget.h \ + gtkfilefilter.h \ gtkfilesel.h \ gtkfixed.h \ gtkfontbutton.h \ @@ -212,7 +227,6 @@ gtk_public_h_sources = \ gtktextchild.h \ gtktextdisplay.h \ gtktextiter.h \ - gtktextlayout.h \ gtktextmark.h \ gtktexttag.h \ gtktexttagtable.h \ @@ -249,11 +263,24 @@ gtk_public_h_sources = \ gtkwidget.h \ gtkwindow.h +# Installed header files without compatibility guarantees +# that are not include in gtk/gtk.h +gtk_semi_private_h_sources = \ + gtktextlayout.h \ + gtkfilesystem.h + # GTK+ header files that don't get installed gtk_private_h_sources = \ + gtkcellrendererseptext.h\ gtkcellview.h \ gtkcellviewmenuitem.h \ gtkentryprivate.h \ + gtkfilechooserentry.h \ + gtkfilechooserdefault.h \ + gtkfilechooserprivate.h \ + gtkfilechooserutils.h \ + gtkfilesystemunix.h \ + gtkfilesystemmodel.h \ gtkrbtree.h \ gtktextbtree.h \ gtktextchildprivate.h \ @@ -292,6 +319,7 @@ gtk_c_sources = \ gtkcelllayout.c \ gtkcellrenderer.c \ gtkcellrendererpixbuf.c \ + gtkcellrendererseptext.c\ gtkcellrenderertext.c \ gtkcellrenderertoggle.c \ gtkcellview.c \ @@ -317,7 +345,16 @@ gtk_c_sources = \ gtkentrycompletion.c \ gtkeventbox.c \ gtkexpander.c \ + gtkfilechooser.c \ + gtkfilechooserdialog.c \ + gtkfilechooserentry.c \ + gtkfilechooserdefault.c \ + gtkfilechooserutils.c \ + gtkfilechooserwidget.c \ + gtkfilefilter.c \ gtkfilesel.c \ + gtkfilesystem.c \ + gtkfilesystemmodel.c \ gtkfixed.c \ gtkfontbutton.c \ gtkfontsel.c \ @@ -451,6 +488,11 @@ gtk_c_sources = \ gtkwindow.c \ xembed.h +if OS_UNIX +gtk_private_h_sources += gtkfilesystemunix.h +gtk_c_sources += gtkfilesystemunix.c +endif + gtk_plug_c_sources = \ gtkplug.c \ gtksocket.c \ @@ -568,7 +610,7 @@ gtktypebuiltins.c: @REBUILD@ $(gtk_public_h_sources) Makefile lib_LTLIBRARIES = $(gtktargetlib) gtkincludedir = $(includedir)/gtk-2.0/gtk -gtkinclude_HEADERS = $(gtk_public_h_sources) $(gtk_built_public_sources) gtkversion.h +gtkinclude_HEADERS = $(gtk_public_h_sources) $(gtk_semi_private_h_sources) $(gtk_built_public_sources) gtkversion.h libgtk_x11_2_0_la_SOURCES = $(gtk_c_sources) $(gtk_plug_c_sources) libgtk_linux_fb_2_0_la_SOURCES = $(gtk_c_sources) @@ -74,6 +74,8 @@ #include <gtk/gtkexpander.h> #include <gtk/gtkfilesel.h> #include <gtk/gtkfixed.h> +#include <gtk/gtkfilechooserdialog.h> +#include <gtk/gtkfilechooserwidget.h> #include <gtk/gtkfontbutton.h> #include <gtk/gtkfontsel.h> #include <gtk/gtkframe.h> diff --git a/gtk/gtkfilechooser.c b/gtk/gtkfilechooser.c index 23d3024eb0..aaa7382fab 100644 --- a/gtk/gtkfilechooser.c +++ b/gtk/gtkfilechooser.c @@ -20,8 +20,8 @@ #include "gtkfilechooser.h" #include "gtkfilechooserprivate.h" -#include "gtkfilechooserenums.h" #include "gtkfilesystem.h" +#include "gtktypebuiltins.h" #define _(str) (str) diff --git a/gtk/gtkfilechooserdefault.c b/gtk/gtkfilechooserdefault.c index 738983b52b..ddb517b62f 100644 --- a/gtk/gtkfilechooserdefault.c +++ b/gtk/gtkfilechooserdefault.c @@ -18,34 +18,36 @@ * Boston, MA 02111-1307, USA. */ +#include "gtkalignment.h" +#include "gtkcellrendererpixbuf.h" #include "gtkcellrendererseptext.h" -#include "gtkfilechooserimpldefault.h" +#include "gtkcellrenderertext.h" +#include "gtkentry.h" +#include "gtkfilechooserdefault.h" #include "gtkfilechooserentry.h" -#include "gtkfilechooserenums.h" #include "gtkfilechooserutils.h" #include "gtkfilechooser.h" #include "gtkfilesystemmodel.h" - -#include <gtk/gtkalignment.h> -#include <gtk/gtkcellrendererpixbuf.h> -#include <gtk/gtkcellrenderertext.h> -#include <gtk/gtkentry.h> -#include <gtk/gtkframe.h> -#include <gtk/gtkhbox.h> -#include <gtk/gtkhpaned.h> -#include <gtk/gtkicontheme.h> -#include <gtk/gtkimage.h> -#include <gtk/gtklabel.h> -#include <gtk/gtkmenuitem.h> -#include <gtk/gtkoptionmenu.h> -#include <gtk/gtkscrolledwindow.h> -#include <gtk/gtkstock.h> -#include <gtk/gtktable.h> -#include <gtk/gtktreeview.h> -#include <gtk/gtktreemodelsort.h> -#include <gtk/gtktreeselection.h> -#include <gtk/gtktreestore.h> -#include <gtk/gtkvbox.h> +#include "gtkframe.h" +#include "gtkhbox.h" +#include "gtkhpaned.h" +#include "gtkicontheme.h" +#include "gtkimage.h" +#include "gtklabel.h" +#include "gtkmenuitem.h" +#undef GTK_DISABLE_DEPRECATED +#include "gtkoptionmenu.h" +#define GTK_DISABLE_DEPRECATED +#include "gtkprivate.h" +#include "gtkscrolledwindow.h" +#include "gtkstock.h" +#include "gtktable.h" +#include "gtktreeview.h" +#include "gtktreemodelsort.h" +#include "gtktreeselection.h" +#include "gtktreestore.h" +#include "gtktypebuiltins.h" +#include "gtkvbox.h" #include <string.h> #include <time.h> diff --git a/gtk/gtkfilechooserdialog.c b/gtk/gtkfilechooserdialog.c index 77ab450240..678913c335 100644 --- a/gtk/gtkfilechooserdialog.c +++ b/gtk/gtkfilechooserdialog.c @@ -20,9 +20,9 @@ #include "gtkfilechooserdialog.h" #include "gtkfilechooserwidget.h" -#include "gtkfilechooserenums.h" #include "gtkfilechooserutils.h" #include "gtkfilesystem.h" +#include "gtktypebuiltins.h" #include <stdarg.h> diff --git a/gtk/gtkfilechooserentry.c b/gtk/gtkfilechooserentry.c index ca29f02e26..da693aba38 100644 --- a/gtk/gtkfilechooserentry.c +++ b/gtk/gtkfilechooserentry.c @@ -18,12 +18,11 @@ * Boston, MA 02111-1307, USA. */ -#include "gtkfilechooserentry.h" - -#include <gtk/gtkentry.h> - #include <string.h> +#include "gtkentry.h" +#include "gtkfilechooserentry.h" + typedef struct _GtkFileChooserEntryClass GtkFileChooserEntryClass; #define GTK_FILE_CHOOSER_ENTRY_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GTK_TYPE_FILE_CHOOSER_ENTRY, GtkFileChooserEntryClass)) diff --git a/gtk/gtkfilechooserutils.c b/gtk/gtkfilechooserutils.c index de19257bfc..546ff93e7f 100644 --- a/gtk/gtkfilechooserutils.c +++ b/gtk/gtkfilechooserutils.c @@ -21,8 +21,8 @@ #include "gtkfilechooserutils.h" #include "gtkfilechooser.h" -#include "gtkfilechooserenums.h" #include "gtkfilesystem.h" +#include "gtktypebuiltins.h" static void delegate_set_current_folder (GtkFileChooser *chooser, const GtkFilePath *path); diff --git a/gtk/gtkfilechooserwidget.c b/gtk/gtkfilechooserwidget.c index 0ad7e823e5..bfc3b81c5b 100644 --- a/gtk/gtkfilechooserwidget.c +++ b/gtk/gtkfilechooserwidget.c @@ -19,10 +19,12 @@ */ #include "gtkfilechooserwidget.h" -#include "gtkfilechooserimpldefault.h" -#include "gtkfilechooserenums.h" +#include "gtkfilechooserdefault.h" #include "gtkfilechooserutils.h" +#ifdef G_OS_UNIX #include "gtkfilesystemunix.h" +#endif +#include "gtktypebuiltins.h" struct _GtkFileChooserWidgetPrivate { diff --git a/gtk/gtkfilefilter.c b/gtk/gtkfilefilter.c index 762f923559..9f9c223965 100644 --- a/gtk/gtkfilefilter.c +++ b/gtk/gtkfilefilter.c @@ -18,12 +18,11 @@ * Boston, MA 02111-1307, USA. */ -#include "gtkfilefilter.h" - -#include <gtk/gtkobject.h> - #include <string.h> +#include "gtkfilefilter.h" +#include "gtkobject.h" + typedef struct _GtkFileFilterClass GtkFileFilterClass; typedef struct _FilterRule FilterRule; @@ -317,11 +316,6 @@ gtk_file_filter_get_needed (GtkFileFilter *filter) return filter->needed; } -/* Remove once we merge into GTK+ and use _gtk_fnmatch(). - */ -gboolean _gtk_file_chooser_fnmatch (const char *pattern, - const char *string); - /** * gtk_file_filter_filter: * @filter: a #GtkFileFilter @@ -359,7 +353,7 @@ gtk_file_filter_filter (GtkFileFilter *filter, return TRUE; break; case FILTER_RULE_PATTERN: - if (_gtk_file_chooser_fnmatch (rule->u.pattern, filter_info->display_name)) + if (_gtk_fnmatch (rule->u.pattern, filter_info->display_name)) return TRUE; break; case FILTER_RULE_CUSTOM: diff --git a/gtk/gtkfilesystem.c b/gtk/gtkfilesystem.c index ff782f0c2f..ea7c4fee74 100644 --- a/gtk/gtkfilesystem.c +++ b/gtk/gtkfilesystem.c @@ -18,9 +18,9 @@ * Boston, MA 02111-1307, USA. */ -#include <gtk/gtkicontheme.h> #include "gtkfilesystem.h" +#include "gtkicontheme.h" #include <string.h> diff --git a/gtk/gtkfilesystem.h b/gtk/gtkfilesystem.h index 18ba61ca5d..ee962b2599 100644 --- a/gtk/gtkfilesystem.h +++ b/gtk/gtkfilesystem.h @@ -21,6 +21,14 @@ #ifndef __GTK_FILE_SYSTEM_H__ #define __GTK_FILE_SYSTEM_H__ +/* This is a "semi-private" header; it is meant only for + * alternate GtkFileChooser backend modules; no stability guarantees + * are made at this point + */ +#ifndef GTK_FILE_SYSTEM_ENABLE_UNSUPPORTED +#error "GtkFileSystem is not supported API for general use" +#endif + #include <glib-object.h> #include <gtk/gtkwidget.h> /* For icon handling */ diff --git a/gtk/gtkfilesystemmodel.c b/gtk/gtkfilesystemmodel.c index 75762cff5c..c69e29a415 100644 --- a/gtk/gtkfilesystemmodel.c +++ b/gtk/gtkfilesystemmodel.c @@ -18,10 +18,11 @@ * Boston, MA 02111-1307, USA. */ +#include <string.h> + #include "gtkfilesystemmodel.h" #include "gtkfilesystem.h" -#include <gtk/gtktreemodel.h> -#include <string.h> +#include "gtktreemodel.h" typedef struct _GtkFileSystemModelClass GtkFileSystemModelClass; typedef struct _FileModelNode FileModelNode; diff --git a/gtk/gtkfilesystemunix.c b/gtk/gtkfilesystemunix.c index ded5389ceb..60a1fbd7ec 100644 --- a/gtk/gtkfilesystemunix.c +++ b/gtk/gtkfilesystemunix.c @@ -21,6 +21,7 @@ #include "gtkfilesystem.h" #include "gtkfilesystemunix.h" +#define XDG_PREFIX _gtk_xdg #include "xdgmime/xdgmime.h" #include <errno.h> diff --git a/gtk/xdgmime/Makefile.am b/gtk/xdgmime/Makefile.am index 5edd02d7d0..38c427a7e3 100644 --- a/gtk/xdgmime/Makefile.am +++ b/gtk/xdgmime/Makefile.am @@ -1,4 +1,4 @@ -INCLUDES = -DXDG_PREFIX=_xdg +INCLUDES = -DXDG_PREFIX=_gtk_xdg noinst_LTLIBRARIES = libxdgmime.la |