libbonoboui-2.24.5/0000775000076400007640000000000011546335130011123 500000000000000libbonoboui-2.24.5/tools/0000775000076400007640000000000011546335132012265 500000000000000libbonoboui-2.24.5/tools/Makefile.am0000644000076400007640000000002211173072741014231 00000000000000SUBDIRS = browser libbonoboui-2.24.5/tools/Makefile.in0000664000076400007640000004307111546334701014260 00000000000000# Makefile.in generated by automake 1.11.1 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, # Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY, to the extent permitted by law; without # even the implied warranty of MERCHANTABILITY or FITNESS FOR A # PARTICULAR PURPOSE. @SET_MAKE@ VPATH = @srcdir@ pkgdatadir = $(datadir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ pkglibdir = $(libdir)/@PACKAGE@ pkglibexecdir = $(libexecdir)/@PACKAGE@ am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd install_sh_DATA = $(install_sh) -c -m 644 install_sh_PROGRAM = $(install_sh) -c install_sh_SCRIPT = $(install_sh) -c INSTALL_HEADER = $(INSTALL_DATA) transform = $(program_transform_name) NORMAL_INSTALL = : PRE_INSTALL = : POST_INSTALL = : NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : build_triplet = @build@ host_triplet = @host@ subdir = tools DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/configure.in am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs CONFIG_HEADER = $(top_builddir)/config.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = SOURCES = DIST_SOURCES = RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \ html-recursive info-recursive install-data-recursive \ install-dvi-recursive install-exec-recursive \ install-html-recursive install-info-recursive \ install-pdf-recursive install-ps-recursive install-recursive \ installcheck-recursive installdirs-recursive pdf-recursive \ ps-recursive uninstall-recursive RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \ distclean-recursive maintainer-clean-recursive AM_RECURSIVE_TARGETS = $(RECURSIVE_TARGETS:-recursive=) \ $(RECURSIVE_CLEAN_TARGETS:-recursive=) tags TAGS ctags CTAGS \ distdir ETAGS = etags CTAGS = ctags DIST_SUBDIRS = $(SUBDIRS) DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) am__relativize = \ dir0=`pwd`; \ sed_first='s,^\([^/]*\)/.*$$,\1,'; \ sed_rest='s,^[^/]*/*,,'; \ sed_last='s,^.*/\([^/]*\)$$,\1,'; \ sed_butlast='s,/*[^/]*$$,,'; \ while test -n "$$dir1"; do \ first=`echo "$$dir1" | sed -e "$$sed_first"`; \ if test "$$first" != "."; then \ if test "$$first" = ".."; then \ dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \ dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \ else \ first2=`echo "$$dir2" | sed -e "$$sed_first"`; \ if test "$$first2" = "$$first"; then \ dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \ else \ dir2="../$$dir2"; \ fi; \ dir0="$$dir0"/"$$first"; \ fi; \ fi; \ dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \ done; \ reldir="$$dir2" ACLOCAL = @ACLOCAL@ ACLOCAL_AMFLAGS = @ACLOCAL_AMFLAGS@ ALL_LINGUAS = @ALL_LINGUAS@ AMTAR = @AMTAR@ AR = @AR@ AS = @AS@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ AWK = @AWK@ BONOBOUI_CFLAGS = @BONOBOUI_CFLAGS@ BONOBOUI_GLADE_CFLAGS = @BONOBOUI_GLADE_CFLAGS@ BONOBOUI_GLADE_LIBS = @BONOBOUI_GLADE_LIBS@ BONOBOUI_LIBS = @BONOBOUI_LIBS@ BONOBOUI_SINGLE_INCLUDES = @BONOBOUI_SINGLE_INCLUDES@ CATALOGS = @CATALOGS@ CATOBJEXT = @CATOBJEXT@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ CYGPATH_W = @CYGPATH_W@ DATADIRNAME = @DATADIRNAME@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DUMPBIN = @DUMPBIN@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_MKENUMS = @GLIB_MKENUMS@ GMOFILES = @GMOFILES@ GMSGFMT = @GMSGFMT@ GREP = @GREP@ GTKDOC_CHECK = @GTKDOC_CHECK@ GTKDOC_MKPDF = @GTKDOC_MKPDF@ GTKDOC_REBASE = @GTKDOC_REBASE@ HTML_DIR = @HTML_DIR@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INSTOBJEXT = @INSTOBJEXT@ INTLLIBS = @INTLLIBS@ INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@ INTLTOOL_MERGE = @INTLTOOL_MERGE@ INTLTOOL_PERL = @INTLTOOL_PERL@ INTLTOOL_UPDATE = @INTLTOOL_UPDATE@ LD = @LD@ LDFLAGS = @LDFLAGS@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIPO = @LIPO@ LN_S = @LN_S@ LTLIBOBJS = @LTLIBOBJS@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MKDIR_P = @MKDIR_P@ MKINSTALLDIRS = @MKINSTALLDIRS@ MSGFMT = @MSGFMT@ MSGFMT_OPTS = @MSGFMT_OPTS@ MSGMERGE = @MSGMERGE@ NM = @NM@ NMEDIT = @NMEDIT@ OBJDUMP = @OBJDUMP@ OBJEXT = @OBJEXT@ OTOOL = @OTOOL@ OTOOL64 = @OTOOL64@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_URL = @PACKAGE_URL@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ PATH_TO_XRDB = @PATH_TO_XRDB@ PKG_CONFIG = @PKG_CONFIG@ POFILES = @POFILES@ POPT_LIBS = @POPT_LIBS@ POSUB = @POSUB@ PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@ PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@ RANLIB = @RANLIB@ SED = @SED@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ STRIP = @STRIP@ USE_NLS = @USE_NLS@ VERSION = @VERSION@ WARN_CFLAGS = @WARN_CFLAGS@ XGETTEXT = @XGETTEXT@ XMKMF = @XMKMF@ X_CFLAGS = @X_CFLAGS@ X_EXTRA_LIBS = @X_EXTRA_LIBS@ X_LIBS = @X_LIBS@ X_PRE_LIBS = @X_PRE_LIBS@ YACC = @YACC@ YFLAGS = @YFLAGS@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ abs_top_srcdir = @abs_top_srcdir@ ac_ct_CC = @ac_ct_CC@ ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ am__include = @am__include@ am__leading_dot = @am__leading_dot@ am__quote = @am__quote@ am__tar = @am__tar@ am__untar = @am__untar@ bindir = @bindir@ build = @build@ build_alias = @build_alias@ build_cpu = @build_cpu@ build_os = @build_os@ build_vendor = @build_vendor@ builddir = @builddir@ datadir = @datadir@ datarootdir = @datarootdir@ docdir = @docdir@ dvidir = @dvidir@ exec_prefix = @exec_prefix@ host = @host@ host_alias = @host_alias@ host_cpu = @host_cpu@ host_os = @host_os@ host_vendor = @host_vendor@ htmldir = @htmldir@ includedir = @includedir@ infodir = @infodir@ install_sh = @install_sh@ libdir = @libdir@ libexecdir = @libexecdir@ localedir = @localedir@ localstatedir = @localstatedir@ lt_ECHO = @lt_ECHO@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ sysconfdir = @sysconfdir@ target_alias = @target_alias@ top_build_prefix = @top_build_prefix@ top_builddir = @top_builddir@ top_srcdir = @top_srcdir@ SUBDIRS = browser all: all-recursive .SUFFIXES: $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps) @for dep in $?; do \ case '$(am__configure_deps)' in \ *$$dep*) \ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ && { if test -f $@; then exit 0; else break; fi; }; \ exit 1;; \ esac; \ done; \ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign tools/Makefile'; \ $(am__cd) $(top_srcdir) && \ $(AUTOMAKE) --foreign tools/Makefile .PRECIOUS: Makefile Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status @case '$?' in \ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(am__aclocal_m4_deps): mostlyclean-libtool: -rm -f *.lo clean-libtool: -rm -rf .libs _libs # This directory's subdirectories are mostly independent; you can cd # into them and run `make' without going through this Makefile. # To change the values of `make' variables: instead of editing Makefiles, # (1) if the variable is set in `config.status', edit `config.status' # (which will cause the Makefiles to be regenerated when you run `make'); # (2) otherwise, pass the desired values on the `make' command line. $(RECURSIVE_TARGETS): @fail= failcom='exit 1'; \ for f in x $$MAKEFLAGS; do \ case $$f in \ *=* | --[!k]*);; \ *k*) failcom='fail=yes';; \ esac; \ done; \ dot_seen=no; \ target=`echo $@ | sed s/-recursive//`; \ list='$(SUBDIRS)'; for subdir in $$list; do \ echo "Making $$target in $$subdir"; \ if test "$$subdir" = "."; then \ dot_seen=yes; \ local_target="$$target-am"; \ else \ local_target="$$target"; \ fi; \ ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ || eval $$failcom; \ done; \ if test "$$dot_seen" = "no"; then \ $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \ fi; test -z "$$fail" $(RECURSIVE_CLEAN_TARGETS): @fail= failcom='exit 1'; \ for f in x $$MAKEFLAGS; do \ case $$f in \ *=* | --[!k]*);; \ *k*) failcom='fail=yes';; \ esac; \ done; \ dot_seen=no; \ case "$@" in \ distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \ *) list='$(SUBDIRS)' ;; \ esac; \ rev=''; for subdir in $$list; do \ if test "$$subdir" = "."; then :; else \ rev="$$subdir $$rev"; \ fi; \ done; \ rev="$$rev ."; \ target=`echo $@ | sed s/-recursive//`; \ for subdir in $$rev; do \ echo "Making $$target in $$subdir"; \ if test "$$subdir" = "."; then \ local_target="$$target-am"; \ else \ local_target="$$target"; \ fi; \ ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ || eval $$failcom; \ done && test -z "$$fail" tags-recursive: list='$(SUBDIRS)'; for subdir in $$list; do \ test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \ done ctags-recursive: list='$(SUBDIRS)'; for subdir in $$list; do \ test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \ done ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ END { if (nonempty) { for (i in files) print i; }; }'`; \ mkid -fID $$unique tags: TAGS TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) set x; \ here=`pwd`; \ if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \ include_option=--etags-include; \ empty_fix=.; \ else \ include_option=--include; \ empty_fix=; \ fi; \ list='$(SUBDIRS)'; for subdir in $$list; do \ if test "$$subdir" = .; then :; else \ test ! -f $$subdir/TAGS || \ set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \ fi; \ done; \ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ END { if (nonempty) { for (i in files) print i; }; }'`; \ shift; \ if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ test -n "$$unique" || unique=$$empty_fix; \ if test $$# -gt 0; then \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ "$$@" $$unique; \ else \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ $$unique; \ fi; \ fi ctags: CTAGS CTAGS: ctags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ END { if (nonempty) { for (i in files) print i; }; }'`; \ test -z "$(CTAGS_ARGS)$$unique" \ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ $$unique GTAGS: here=`$(am__cd) $(top_builddir) && pwd` \ && $(am__cd) $(top_srcdir) \ && gtags -i $(GTAGS_ARGS) "$$here" distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ dist_files=`for file in $$list; do echo $$file; done | \ sed -e "s|^$$srcdirstrip/||;t" \ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ case $$dist_files in \ */*) $(MKDIR_P) `echo "$$dist_files" | \ sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ sort -u` ;; \ esac; \ for file in $$dist_files; do \ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ if test -d $$d/$$file; then \ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ if test -d "$(distdir)/$$file"; then \ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ else \ test -f "$(distdir)/$$file" \ || cp -p $$d/$$file "$(distdir)/$$file" \ || exit 1; \ fi; \ done @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \ if test "$$subdir" = .; then :; else \ test -d "$(distdir)/$$subdir" \ || $(MKDIR_P) "$(distdir)/$$subdir" \ || exit 1; \ fi; \ done @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \ if test "$$subdir" = .; then :; else \ dir1=$$subdir; dir2="$(distdir)/$$subdir"; \ $(am__relativize); \ new_distdir=$$reldir; \ dir1=$$subdir; dir2="$(top_distdir)"; \ $(am__relativize); \ new_top_distdir=$$reldir; \ echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \ echo " am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \ ($(am__cd) $$subdir && \ $(MAKE) $(AM_MAKEFLAGS) \ top_distdir="$$new_top_distdir" \ distdir="$$new_distdir" \ am__remove_distdir=: \ am__skip_length_check=: \ am__skip_mode_fix=: \ distdir) \ || exit 1; \ fi; \ done check-am: all-am check: check-recursive all-am: Makefile installdirs: installdirs-recursive installdirs-am: install: install-recursive install-exec: install-exec-recursive install-data: install-data-recursive uninstall: uninstall-recursive install-am: all-am @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am installcheck: installcheck-recursive install-strip: $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ `test -z '$(STRIP)' || \ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install mostlyclean-generic: clean-generic: distclean-generic: -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) maintainer-clean-generic: @echo "This command is intended for maintainers to use" @echo "it deletes files that may require special tools to rebuild." clean: clean-recursive clean-am: clean-generic clean-libtool mostlyclean-am distclean: distclean-recursive -rm -f Makefile distclean-am: clean-am distclean-generic distclean-tags dvi: dvi-recursive dvi-am: html: html-recursive html-am: info: info-recursive info-am: install-data-am: install-dvi: install-dvi-recursive install-dvi-am: install-exec-am: install-html: install-html-recursive install-html-am: install-info: install-info-recursive install-info-am: install-man: install-pdf: install-pdf-recursive install-pdf-am: install-ps: install-ps-recursive install-ps-am: installcheck-am: maintainer-clean: maintainer-clean-recursive -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic mostlyclean: mostlyclean-recursive mostlyclean-am: mostlyclean-generic mostlyclean-libtool pdf: pdf-recursive pdf-am: ps: ps-recursive ps-am: uninstall-am: .MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) ctags-recursive \ install-am install-strip tags-recursive .PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \ all all-am check check-am clean clean-generic clean-libtool \ ctags ctags-recursive distclean distclean-generic \ distclean-libtool distclean-tags distdir dvi dvi-am html \ html-am info info-am install install-am install-data \ install-data-am install-dvi install-dvi-am install-exec \ install-exec-am install-html install-html-am install-info \ install-info-am install-man install-pdf install-pdf-am \ install-ps install-ps-am install-strip installcheck \ installcheck-am installdirs installdirs-am maintainer-clean \ maintainer-clean-generic mostlyclean mostlyclean-generic \ mostlyclean-libtool pdf pdf-am ps ps-am tags tags-recursive \ uninstall uninstall-am # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. .NOEXPORT: libbonoboui-2.24.5/tools/browser/0000775000076400007640000000000011546335132013750 500000000000000libbonoboui-2.24.5/tools/browser/component-list.c0000644000076400007640000003260711173072741017015 00000000000000/* Bonobo component browser * * AUTHORS: * Dan Siemon * Rodrigo Moya * Patanjali Somayaji * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU Library General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ #ifdef HAVE_CONFIG_H #include #endif #include #include #include "oaf-helper.h" #include "component-list.h" #define PARENT_TYPE GTK_TYPE_VBOX /* Defines for the GTK+ tree view columns. */ #define NUM_COLUMNS 4 #define COL_ACTIVE 0 #define COL_NAME 1 #define COL_TYPE 2 #define COL_IID 3 struct _ComponentListPrivate { GtkWidget *scroll; GtkWidget *list; GtkListStore *model; GList *components; GdkPixbuf *active_icon; GdkPixbuf *inactive_icon; }; enum { COMPONENTDETAILS_SIGNAL, LAST_SIGNAL }; static gint component_list_signals[LAST_SIGNAL] = {0}; static void component_list_class_init (ComponentListClass *klass); static void component_list_init (ComponentList *comp_list, ComponentListClass *klass); static void component_list_finalize (GObject *object); static GObjectClass *parent_class = NULL; /*************************** * Callbacks ***************************/ /** * Called when the user double clicks on one of the rows or hits the * space bar when a row is selected. */ static void row_activated_cb (GtkTreeView *tree, GtkTreePath *path, GtkTreeViewColumn *col, ComponentList *list) { g_signal_emit_by_name (G_OBJECT (list), "component-details"); } /* * Tree View sorts */ static gint sort_component_active (GtkTreeModel *model, GtkTreeIter *a, GtkTreeIter *b, gpointer user_data) { gboolean component1, component2; gtk_tree_model_get (model, a, COL_ACTIVE, &component1, -1); gtk_tree_model_get (model, b, COL_ACTIVE, &component2, -1); if (component1 == component2) { return 0; } else if ((component1 == TRUE) && (component2 == FALSE)) { /* 'larger' */ return 1; } else { /* component1 == FALSE && component2 == TRUE */ /* 'smaller' */ return -1; } } static gint sort_component_name (GtkTreeModel *model, GtkTreeIter *a, GtkTreeIter *b, gpointer user_data) { gchar *component1, *component2; gint ret; gtk_tree_model_get (model, a, COL_NAME, &component1, -1); gtk_tree_model_get (model, b, COL_NAME, &component2, -1); ret = g_utf8_collate (component1, component2); g_free (component1); g_free (component2); return ret; } static gint sort_component_type (GtkTreeModel *model, GtkTreeIter *a, GtkTreeIter *b, gpointer user_data) { gchar *component1, *component2; gint ret; gtk_tree_model_get (model, a, COL_TYPE, &component1, -1); gtk_tree_model_get (model, b, COL_TYPE, &component2, -1); ret = g_utf8_collate (component1, component2); g_free (component1); g_free (component2); return ret; } static gint sort_component_iid (GtkTreeModel *model, GtkTreeIter *a, GtkTreeIter *b, gpointer user_data) { gchar *component1, *component2; gint ret; gtk_tree_model_get (model, a, COL_IID, &component1, -1); gtk_tree_model_get (model, b, COL_IID, &component2, -1); ret = g_utf8_collate (component1, component2); g_free (component1); g_free (component2); return ret; } /* * ComponentList class implementation */ static void component_list_class_init (ComponentListClass *klass) { GObjectClass *object_class = G_OBJECT_CLASS (klass); component_list_signals[COMPONENTDETAILS_SIGNAL] = g_signal_new ("component-details", G_TYPE_FROM_CLASS (object_class), G_SIGNAL_RUN_LAST, G_STRUCT_OFFSET (ComponentListClass, component_details), NULL, NULL, g_cclosure_marshal_VOID__VOID, G_TYPE_NONE, 0); parent_class = g_type_class_peek_parent (klass); object_class->finalize = component_list_finalize; } static void set_pixbuf_func (GtkTreeViewColumn *tree_column, GtkCellRenderer *cell, GtkTreeModel *model, GtkTreeIter *iter, gpointer user_data) { ComponentList *comp_list; gboolean active; comp_list = (ComponentList *) user_data; gtk_tree_model_get (model, iter, 0, &active, -1); if (active && comp_list->priv->active_icon != NULL) { g_object_set (GTK_CELL_RENDERER (cell), "pixbuf", comp_list->priv->active_icon, NULL); } else if (comp_list->priv->inactive_icon != NULL) { g_object_set (GTK_CELL_RENDERER (cell), "pixbuf", comp_list->priv->inactive_icon, NULL); } } static void set_name_func (GtkTreeViewColumn *tree_column, GtkCellRenderer *cell, GtkTreeModel *model, GtkTreeIter *iter, gpointer user_data) { gchar *name; gtk_tree_model_get (model, iter, 1, &name, -1); g_object_set (G_OBJECT (cell), "text", name, NULL); g_free (name); } static void set_iid_func (GtkTreeViewColumn *tree_column, GtkCellRenderer *cell, GtkTreeModel *model, GtkTreeIter *iter, gpointer user_data) { gchar *iid; gtk_tree_model_get (model, iter, 3, &iid, -1); g_object_set (G_OBJECT (cell), "text", iid, NULL); g_free (iid); } static void set_type_func (GtkTreeViewColumn *tree_column, GtkCellRenderer *cell, GtkTreeModel *model, GtkTreeIter *iter, gpointer user_data) { gchar *type; gtk_tree_model_get (model, iter, 2, &type, -1); g_object_set (G_OBJECT (cell), "text", type, NULL); g_free (type); } static void component_list_init (ComponentList *comp_list, ComponentListClass *klass) { GtkIconSize size; gint w, h; GdkPixbuf *scaled; GtkWidget *hbox; GtkTreeViewColumn *column; GtkCellRenderer *text_renderer; GtkCellRenderer *pixbuf_renderer = NULL; g_return_if_fail (IS_COMPONENT_LIST (comp_list)); comp_list->priv = g_new0 (ComponentListPrivate, 1); comp_list->priv->components = NULL; /* Create the active/inactive icons */ /* Active icon */ size = GTK_ICON_SIZE_BUTTON; comp_list->priv->active_icon = gtk_widget_render_icon ( GTK_WIDGET (comp_list), GTK_STOCK_YES, size, NULL); gtk_icon_size_lookup (GTK_ICON_SIZE_MENU, &w, &h); scaled = gdk_pixbuf_scale_simple (comp_list->priv->active_icon, w, h, GDK_INTERP_BILINEAR); g_object_unref (comp_list->priv->active_icon); comp_list->priv->active_icon = scaled; /* Inactive icon */ size = GTK_ICON_SIZE_BUTTON; comp_list->priv->inactive_icon = gtk_widget_render_icon ( GTK_WIDGET (comp_list), GTK_STOCK_NO, size, NULL); gtk_icon_size_lookup (GTK_ICON_SIZE_MENU, &w, &h); scaled = gdk_pixbuf_scale_simple ( comp_list->priv->inactive_icon, w, h, GDK_INTERP_BILINEAR); g_object_unref (comp_list->priv->inactive_icon); comp_list->priv->inactive_icon = scaled; /* create the main container */ hbox = gtk_hbox_new (FALSE, 0); gtk_box_pack_start (GTK_BOX (comp_list), hbox, FALSE, FALSE, 0); gtk_widget_show (hbox); /* create the list */ comp_list->priv->scroll = gtk_scrolled_window_new (NULL, NULL); gtk_scrolled_window_set_policy ( GTK_SCROLLED_WINDOW (comp_list->priv->scroll), GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC); gtk_widget_show (comp_list->priv->scroll); gtk_box_pack_start (GTK_BOX (comp_list), comp_list->priv->scroll, TRUE, TRUE, 0); comp_list->priv->list = gtk_tree_view_new (); gtk_widget_show (comp_list->priv->list); gtk_container_add (GTK_CONTAINER (comp_list->priv->scroll), comp_list->priv->list); gtk_tree_view_set_rules_hint (GTK_TREE_VIEW (comp_list->priv->list), TRUE); /* Connect the row_activated signal */ g_signal_connect (G_OBJECT (comp_list->priv->list), "row_activated", G_CALLBACK (row_activated_cb), comp_list); /* Create the model */ comp_list->priv->model = gtk_list_store_new (NUM_COLUMNS, G_TYPE_BOOLEAN, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING); gtk_tree_view_set_model (GTK_TREE_VIEW (comp_list->priv->list), GTK_TREE_MODEL (comp_list->priv->model)); /* Set the sort functions */ gtk_tree_sortable_set_sort_func ( GTK_TREE_SORTABLE (comp_list->priv->model), COL_ACTIVE, sort_component_active, NULL, NULL); gtk_tree_sortable_set_sort_func ( GTK_TREE_SORTABLE (comp_list->priv->model), COL_NAME, sort_component_name, NULL, NULL); gtk_tree_sortable_set_sort_func ( GTK_TREE_SORTABLE (comp_list->priv->model), COL_TYPE, sort_component_type, NULL, NULL); gtk_tree_sortable_set_sort_func ( GTK_TREE_SORTABLE (comp_list->priv->model), COL_IID, sort_component_iid, NULL, NULL); g_object_unref (comp_list->priv->model); /* add columns */ pixbuf_renderer = gtk_cell_renderer_pixbuf_new (); column = gtk_tree_view_column_new_with_attributes (_("Active"), pixbuf_renderer, NULL); gtk_tree_view_column_set_cell_data_func (column, pixbuf_renderer, set_pixbuf_func, comp_list, NULL); gtk_tree_view_column_set_sort_column_id (column, COL_ACTIVE); gtk_tree_view_append_column (GTK_TREE_VIEW (comp_list->priv->list), column); text_renderer = gtk_cell_renderer_text_new (); column = gtk_tree_view_column_new_with_attributes (_("Name"), text_renderer, NULL); gtk_tree_view_column_set_cell_data_func (column, text_renderer, set_name_func, NULL, NULL); gtk_tree_view_column_set_sort_column_id (column, COL_NAME); gtk_tree_view_append_column (GTK_TREE_VIEW (comp_list->priv->list), column); text_renderer = gtk_cell_renderer_text_new (); column = gtk_tree_view_column_new_with_attributes (_("Type"), text_renderer, NULL); gtk_tree_view_column_set_cell_data_func (column, text_renderer, set_type_func, NULL, NULL); gtk_tree_view_column_set_sort_column_id (column, COL_TYPE); gtk_tree_view_append_column (GTK_TREE_VIEW (comp_list->priv->list), column); text_renderer = gtk_cell_renderer_text_new (); column = gtk_tree_view_column_new_with_attributes (_("IID"), text_renderer, NULL); gtk_tree_view_column_set_cell_data_func (column, text_renderer, set_iid_func, NULL, NULL); gtk_tree_view_column_set_sort_column_id (column, COL_IID); gtk_tree_view_append_column (GTK_TREE_VIEW (comp_list->priv->list), column); } static void component_list_finalize (GObject *object) { ComponentList *comp_list = (ComponentList *) object; g_return_if_fail (IS_COMPONENT_LIST (comp_list)); bonobo_browser_free_components_list (comp_list->priv->components); g_object_unref (comp_list->priv->active_icon); g_object_unref (comp_list->priv->inactive_icon); g_free (comp_list->priv); comp_list->priv = NULL; /* chain to parent class */ parent_class->finalize (object); } GType component_list_get_type (void) { static GType type = 0; if (!type) { if (type == 0) { static GTypeInfo info = { sizeof (ComponentListClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) component_list_class_init, NULL, NULL, sizeof (ComponentList), 0, (GInstanceInitFunc) component_list_init }; type = g_type_register_static (PARENT_TYPE, "ComponentList", &info, 0); } } return type; } GtkWidget * component_list_new (void) { ComponentList *comp_list; comp_list = g_object_new (COMPONENT_LIST_TYPE, NULL); return GTK_WIDGET (comp_list); } gchar * component_list_get_selected_iid (ComponentList *comp_list) { gchar *iid; GtkTreeSelection *selection; GtkTreeIter iter; gboolean isSelected; g_assert (IS_COMPONENT_LIST (comp_list)); selection = gtk_tree_view_get_selection ( GTK_TREE_VIEW (comp_list->priv->list)); isSelected = gtk_tree_selection_get_selected (selection, NULL, &iter); if (isSelected == FALSE) { g_print ("Umm... Should we be here?\n"); return NULL; } gtk_tree_model_get (GTK_TREE_MODEL (comp_list->priv->model), &iter, 3, &iid, -1); return iid; } void component_list_show (ComponentList *comp_list, gchar *query) { GList *temp; GtkListStore *model; g_return_if_fail (IS_COMPONENT_LIST (comp_list)); model = comp_list->priv->model; bonobo_browser_free_components_list (comp_list->priv->components); comp_list->priv->components = bonobo_browser_get_components_list ( query); /* FIXME - Debugging function */ /* bonobo_component_list_print (comp_list->priv->components);*/ gtk_list_store_clear (GTK_LIST_STORE (model)); for (temp = comp_list->priv->components; temp; temp = temp->next) { GtkTreeIter iter; BonoboComponentInfo *info; info = (BonoboComponentInfo *) temp->data; gtk_list_store_append (model, &iter); gtk_list_store_set (model, &iter, COL_ACTIVE, info->active, COL_NAME, info->component_name, COL_TYPE, info->component_type, COL_IID, info->component_iid, -1); } } libbonoboui-2.24.5/tools/browser/Makefile.am0000644000076400007640000000167411173072741015732 00000000000000INCLUDES = \ -DBONOBO_BROWSER_DATADIR=\""$(datadir)"\" \ -DBONOBO_SUPPORT_LOCALEDIR=\""$(datadir)/locale"\" \ -I$(srcdir) -I$(top_srcdir) \ -I$(top_srcdir)/bonobo-browser \ $(BONOBOUI_CFLAGS) \ $(WARN_CFLAGS) bin_PROGRAMS = bonobo-browser bonobo_browser_SOURCES = \ bonobo-browser.c \ bonobo-browser.h \ component-info.c \ component-list.c \ component-list.h \ component-details.c \ component-details.h \ oaf-helper.c \ oaf-helper.h \ window.c bonobo_browser_LDADD = \ $(BONOBOUI_LIBS) \ $(top_builddir)/bonobo/libbonoboui-2.la uidir = $(datadir)/gnome-2.0/ui ui_DATA = bonobo-browser.xml Utilitiesdir = $(datadir)/applications Utilities_in_files = bonobo-browser.desktop.in Utilities_DATA = $(Utilities_in_files:.desktop.in=.desktop) @INTLTOOL_DESKTOP_RULE@ EXTRA_DIST = \ $(Utilities_in_files) \ $(Utilities_DATA) \ bonobo-browser.xml CLEANFILES = bonobo-browser.desktop libbonoboui-2.24.5/tools/browser/oaf-helper.c0000644000076400007640000002227111173072741016060 00000000000000/* Bonobo component browser * * AUTHORS: * Dan Siemon * Rodrigo Moya * Patanjali Somayaji * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU Library General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ #include #include #include "oaf-helper.h" /* * Utility function to search through the properties list * looking for a string property that matches property_name. */ static gchar * get_string_value (GList *properties_list, const gchar *property_name) { GList *temp = NULL; gchar *description = NULL; BonoboComponentProperty *property; for (temp = properties_list; temp; temp = temp->next) { property = temp->data; if (!g_ascii_strcasecmp (property_name, property->property_name) && property->property_type == PROPERTY_TYPE_STRING) { description = g_strdup_printf ( "%s", property->property_value.value_string); } } return description; } /* * Utility function to get the language from the env var. * I have no clue if this is the right way to do this or not. */ static gchar * get_lang (void) { gchar *lang, *ret; gchar **search; #ifndef G_OS_WIN32 lang = getenv ("LANG"); #else lang = g_win32_getlocale (); #endif if (!lang) return g_strdup (""); search = g_strsplit (lang, "_", 1); if (!search) return g_strdup (""); ret = g_strdup_printf ("%s", search[0]); g_strfreev (search); return ret; } /* * Return the name of this component for this locale * if it does not exist return the default name. */ static gchar * bonobo_component_get_locale_name (GList *property_list, gchar *lang) { gchar *name; gchar *e_lang; e_lang = g_strdup_printf ("name-%s", lang); name = get_string_value (property_list, e_lang); if (name != NULL) { /* We found a name property for this locale, return it. */ return name; } g_free (e_lang); /* Use the default property. */ name = get_string_value (property_list, "name"); if (name == NULL) { /* For some reason we didn't find the default property either. */ name = g_strdup_printf ("-"); } return name; } /* * Return the description of the component for this locale * (if it exists). */ static gchar * bonobo_component_get_locale_desc (GList *property_list, gchar *lang) { gchar *description; gchar *e_lang; e_lang = g_strdup_printf ("description-%s", lang); description = get_string_value (property_list, e_lang); if (description != NULL) { /* We found a description property so return it. */ return description; } g_free (e_lang); /* Use the default description. */ description = get_string_value (property_list, "description"); if (description == NULL) { /* No default description... */ description = g_strdup_printf ("-"); } return description; } static GList * get_properties_list (Bonobo_ServerInfo *server_info) { Bonobo_ActivationProperty *property_list; BonoboComponentProperty *property; GList *component_property_list = NULL; Bonobo_StringList stringlist; int i, j; property_list = (Bonobo_ActivationProperty *) server_info->props._buffer; for (i = 0; i < server_info->props._length;i++) { property = g_new0 (BonoboComponentProperty, 1); property->property_name = g_strdup (property_list[i].name); switch (property_list[i].v._d) { case (Bonobo_ACTIVATION_P_STRING) : property->property_type = PROPERTY_TYPE_STRING; property->property_value.value_string = g_strdup (property_list[i].v._u.value_string); break; case (Bonobo_ACTIVATION_P_NUMBER) : property->property_type = PROPERTY_TYPE_DOUBLE; property->property_value.value_double = property_list[i].v._u.value_number; break; case (Bonobo_ACTIVATION_P_BOOLEAN) : property->property_type = PROPERTY_TYPE_BOOLEAN; property->property_value.value_boolean = property_list[i].v._u.value_boolean; break; case (Bonobo_ACTIVATION_P_STRINGV) : property->property_type = PROPERTY_TYPE_STRINGLIST; property->property_value.value_stringlist = NULL; stringlist = property_list[i].v._u.value_stringv; for (j = 0; j < stringlist._length; j++) { property->property_value.value_stringlist = g_list_append ( property->property_value.value_stringlist, g_strdup (stringlist._buffer [j])); } break; } component_property_list = g_list_append (component_property_list, property); } return component_property_list; } /** Runs the query and returns the number of components that matched the query */ static gint num_query_matches (gchar *query) { Bonobo_ServerInfoList *server_info_list; CORBA_Environment ev; gint ret; CORBA_exception_init (&ev); server_info_list = bonobo_activation_query (query, NULL, &ev); if (BONOBO_EX (&ev)) { CORBA_exception_free (&ev); g_assert_not_reached (); /* What would this mean? */ } ret = server_info_list->_length; CORBA_free (server_info_list); CORBA_exception_free (&ev); return ret; } /** Figure out if this iid is currently active. This would not be necessary if Bonobo Activation had this in the result. */ static gboolean is_component_active (gchar *iid) { gchar *query; g_assert (iid != NULL); query = g_strdup_printf ("(iid == '%s') && (_active)", iid); if (num_query_matches(query) != 0) { g_free (query); return TRUE; } else { g_free (query); return FALSE; } } static GList * convert_query_to_list (GList *list, const gchar *query) { Bonobo_ServerInfoList *server_info_list; Bonobo_ServerInfo *server_info; CORBA_Environment ev; gint i; gchar *lang; g_return_val_if_fail (query != NULL, list); lang = get_lang (); CORBA_exception_init (&ev); server_info_list = bonobo_activation_query (query, NULL, &ev); if (BONOBO_EX (&ev)) { CORBA_exception_free (&ev); return list; } /* convert the Bonobo_ServerInfoList into GList items */ for (i = 0; i < server_info_list->_length; i++) { BonoboComponentInfo *info; GList *property_list; gchar *description, *name; server_info = &server_info_list->_buffer[i]; info = bonobo_component_info_new (); property_list = get_properties_list (server_info); description = bonobo_component_get_locale_desc (property_list, lang); name = bonobo_component_get_locale_name (property_list, lang); bonobo_component_info_set_values ( info, server_info->iid, server_info->server_type, server_info->location_info, server_info->username, server_info->hostname, server_info->domain, description, name, property_list); info->active = is_component_active (server_info->iid); g_free (name); g_free (description); list = g_list_append (list, info); } g_free (lang); CORBA_free (server_info_list); CORBA_exception_free (&ev); return list; } GList * bonobo_browser_get_components_list (const gchar *query) { GList *list = NULL; /* prepare queries */ if (query == NULL) { query = g_strdup ("_active == FALSE || _active"); } list = convert_query_to_list (NULL, query); return list; } void bonobo_browser_free_components_list (GList *list) { GList *l; for (l = list; l; l = l->next) bonobo_component_info_free (l->data); g_list_free (list); } /* * Takes a BonoboComponentInfo structure and returns a GList * of the components Repo Ids. Basically a convenience function. */ GList * bonobo_component_get_repoids (BonoboComponentInfo *info) { GList *ret_list = NULL; GList *properties, *temp, *prop_temp; BonoboComponentProperty *prop; gchar *str; /* Get the property list. */ properties = info->component_properties; temp = properties; while (temp != NULL) { prop = (BonoboComponentProperty *) temp->data; /* We only want repo_ids */ if (g_ascii_strcasecmp (prop->property_name, "repo_ids") == 0) { prop_temp = prop->property_value.value_stringlist; while (prop_temp != NULL) { /* Get the values. */ str = g_strdup_printf ("%s", (char*)prop_temp->data); ret_list = g_list_append (ret_list, str); prop_temp = prop_temp->next; } } /* We got what we want. */ break; } return ret_list; } /* * Debugging functions. */ void bonobo_component_list_print (GList *list) { GList *temp; BonoboComponentInfo *info; g_print ("---------------------------------\n"); for (temp = list; temp != NULL; temp=temp->next) { info = (BonoboComponentInfo *) temp->data; g_print ("Name: %s\n", info->component_name); } g_print ("---------------------------------\n"); } libbonoboui-2.24.5/tools/browser/bonobo-browser.desktop0000644000076400007640000002141311546335013020217 00000000000000[Desktop Entry] Encoding=UTF-8 Name=Bonobo Component Browser Name[af]=Bonobo-komponentblaaier Name[ar]=متصفحّ مكوّنات بونوبو Name[as]=Bonobo Component Browser Name[ast]=Desaminador de componentes Bonobo Name[be]=Вандроўнік па кампанэнтах Bonobo Name[bg]=Компонент за браузър на Bonobo Name[bn]=বনোবো কম্পোনেন্ট ব্রাউজার Name[bn_IN]=Bonobo Component Browser Name[ca]=Navegador de components Bonobo Name[ca@valencia]=Navegador de components Bonobo Name[cs]=Prohlížeč komponent Bonobo Name[cy]=Porwr Cydrannau Bonobo Name[da]=Bonobo-komponentbrowser Name[de]=Bonobo-Komponenten-Browser Name[dz]=བཱོ་ནོ་བཱོ་གི་ཆ་ཤས་ བརའུ་ཟར། Name[el]= Περιηγητής συστατικού Bonobo Name[en@shaw]=·𐑚𐑭𐑯𐑭𐑚𐑴 𐑒𐑩𐑥𐑐𐑴𐑯𐑩𐑯𐑑 𐑚𐑮𐑬𐑟𐑼 Name[en_CA]=Bonobo Component Browser Name[en_GB]=Bonobo Component Browser Name[es]=Examinador de componentes Bonobo Name[et]=Bonobo komponendisirvija Name[eu]=Bonobo osagai-arakatzailea Name[fa]=مرورگر مؤلفه‌های بونوبو Name[fi]=Bonobo-komponenttien selain Name[fr]=Navigateur de composants Bonobo Name[gl]=Navegador de compoñentes Bonobo Name[gu]=બોનોબો કમ્પોનન્ટ બ્રાઉઝર Name[he]=דפדפן הרכיבים של Bonobo Name[hi]=Bonobo घटक ब्रॉउजर Name[hr]=Pretraživač Bonobo komponenti Name[hu]=Bonobo-komponensböngésző Name[id]=Pencari Komponen Bonobo Name[it]=Browser dei componenti Bonobo Name[ja]=Bonobo コンポーネント・ブラウザ Name[ka]=Bonobo კომპონენტების გზამკვლევი Name[kn]=Bonobo ಘಟಕ ವೀಕ್ಷಕ Name[ko]=보노보 컴포넌트 브라우저 Name[lt]=Bonobo komponentų naršyklė Name[lv]=Bonobo komponenšu pārlūks Name[mai]=Bonobo घटक ब्राउजर Name[mg]=Mpizaha singa ho an'ny Bonobo Name[mk]=Бонобо компонента прелистувач Name[ml]=Bonobo ഘടകത്തിന്റെ ബ്രൌസര്‍ Name[mn]=Bonobo-ийн хэсгийн Хөтөч Name[mr]=Bonobo घटक ब्राउजर Name[nb]=Komponentvisning for Bonobo Name[ne]=बोनोबो अवयव ब्राउजर Name[nl]=Bonobo componentverkenner Name[nn]=Bonobo komponentvisar Name[or]=ବନୋବୋ ଯନ୍ତ୍ରାଂଶ ଖୋଜାଳି Name[pa]=ਬੋਨਬੋ ਭਾਗ ਬਰਾਊਜ਼ਰ Name[pl]=Przeglądarka komponentów Bonobo Name[ps]=بونوبو رغتوک لټوونی Name[pt]=Navegador de Componentes Bonobo Name[pt_BR]=Navegador de Componentes Bonobo Name[ro]=Navigator componente Bonobo Name[ru]=Обозреватель компонентов Bonobo Name[sk]=Prehliadač súčastí bonobo Name[sl]=Brskalnik komponent Bonobo Name[sq]=Shfletuesi i komponentëve Bonobo Name[sr]=Разгледач Бонобо компоненти Name[sr@latin]=Razgledač Bonobo komponenti Name[sv]=Bonobo-komponentbläddrare Name[ta]=போனபோ கூறு உலாவி Name[te]=బోనోబో మూలక అన్వేషణి Name[th]=เบราว์เซอร์แสดงองค์ประกอบของ Bonobo Name[tr]=Bonobo Bileşen Tarayıcısı Name[ug]=Bonobo بۆلەك كۆرگۈ Name[uk]=Оглядач компонентів Bonobo Name[vi]=Bộ duyệt thành phần Bonobo Name[xh]=IsiKhangeli seLungu le-Bonobo Name[zh_CN]=Bonobo 组件浏览器 Name[zh_HK]=Bonobo 元件瀏覽器 Name[zh_TW]=Bonobo 元件瀏覽器 Comment=Shows available Bonobo components Comment[af]=Wys beskikbare Bonobo-komponente Comment[ar]=يعرض مكوّنات بونوبو المتوفّرة Comment[as]=উপলব্ধ Bonobo বস্তু প্ৰদৰ্শন কৰা হয় Comment[ast]=Amuesa los componentes Bonobo disponibles Comment[be]=Адлюстроўвае наяўныя кампанэнты Bonobo Comment[bg]=Показване на наличните компоненти на Bonobo Comment[bn]=বিদ্যমান বনোবো কম্পোনেন্ট প্রদর্শন Comment[bn_IN]=উপলব্ধ Bonobo বস্তু প্রদর্শন করা হয় Comment[ca]=Mostra els components Bonobo disponibles Comment[ca@valencia]=Mostra els components Bonobo disponibles Comment[cs]=Zobrazí dostupné komponenty Bonobo Comment[cy]=Dangos y cydrannau Bonobo sydd ar gael Comment[da]=Viser tilgængelige bonobo-komponenter Comment[de]=Verfügbare Bonobo-Komponenten anzeigen Comment[dz]=བཱོ་ནོ་བཱོ་གི་ཆ་ཤས་ཡོད་མི་ཚུ་སྟོནམ་ཨིན། Comment[el]=Εμφανίζει τα διαθέσιμα συστατικά Bonobo Comment[en@shaw]=𐑖𐑴𐑟 𐑩𐑝𐑱𐑤𐑩𐑚𐑩𐑤 ·𐑚𐑭𐑯𐑭𐑚𐑴 𐑒𐑩𐑥𐑐𐑴𐑯𐑩𐑯𐑑𐑕 Comment[en_CA]=Shows available Bonobo components Comment[en_GB]=Shows available Bonobo components Comment[es]=Muestra los componentes Bonobo disponibles Comment[et]=Saadaolevate Bonobo komponentide näitamine Comment[eu]=Eskuragarri dauden Bonoboren osagaiak erakusten ditu Comment[fa]=مؤلفه‌های موجود بونوبو را نمایش می‌دهد Comment[fi]=Näytä saatavilla olevat Bonobo-komponentit Comment[fr]=Affiche les composants Bonobo disponibles Comment[gl]=Mostrar os compoñentes dispoñíbeis do Bonobo Comment[gu]=ઉપ્લબ્ધ બોનોબો કમ્પોનન્ટો બતાવે છે Comment[he]=מציג את כל רכיבי Bonobo הקיימים Comment[hi]=उपलब्ध Bonobo घटक सहेजें Comment[hr]=Prikazuje dostupne Bonobo komponente Comment[hu]=Elérhető Bonobo-komponensek megjelenítése Comment[id]=Tampilkan komponen Bonobo yang tersedia Comment[it]=Mostra i componenti Bonobo disponibili Comment[ja]=利用可能な Bonobo コンポーネントを表示します Comment[ka]=შესაძლო Bonobo კომპონენტების ჩვენება Comment[kn]=ಲಭ್ಯವಿರುವ Bonobo ಘಟಕಗಳನ್ನು ತೋರಿಸುತ್ತದೆ Comment[ko]=사용할 수 있는 보노보 컴포넌트를 표시합니다 Comment[lt]=Rodo prieinamus Bonobo komponentus Comment[lv]=Rādīt pieejamos Bonobo komponentus Comment[mai]=मोजुद Bonobo घटक सहेजू Comment[mg]=Maneho izay singa ho an'ny Bonobo misy Comment[mk]=Ги покажува сите достапни Бонобо компоненти Comment[ml]=ലഭ്യമായ Bonobo ഘടകങ്ങള്‍ കാണിയ്ക്കുന്നു Comment[mn]=Хүчинтэй Bonodo бүрэлдэхүүн хэсгийг харуулах Comment[mr]=उपलब्ध Bonobo घटक दर्शवा Comment[nb]=Viser tilgjengelige Bonobo-komponenter Comment[ne]=उपलब्ध बोनोबो अवयवहरू देखाउछ Comment[nl]=Toont beschikbare Bonobo-componenten Comment[nn]=Visar tilgjengelege Bonobo-komponentar Comment[or]=ଉପଲବ୍ଧ ବନୋବୋ ଯନ୍ତ୍ରାଂଶ ଦେଖାଏ Comment[pa]=ਉਪਲੱਬਧ ਬੋਨਬੋ ਭਾਗ ਵੇਖੋ Comment[pl]=Wyświetla dostępne komponenty Bonobo Comment[ps]=شته بونوبو رغتوکي ښيي Comment[pt]=Apresenta componentes Bonobo disponíveis Comment[pt_BR]=Mostra os componentes Bonobo disponíveis Comment[ro]=Arată componentele Bonobo disponibile Comment[ru]=Показывает доступные компоненты Bonobo Comment[sk]=Zobraziť dostupné súčasti bonobo Comment[sl]=Pokaže razpoložljive enote Bonobo Comment[sq]=Shfaq komponentët Bonobo në dispozicion Comment[sr]=Прикажи доступне Бонобо компоненте Comment[sr@latin]=Prikaži dostupne Bonobo komponente Comment[sv]=Visar tillgängliga Bonobo-komponenter Comment[ta]=இருக்கும் போனபோ கூறுகளை காட்டுகிறது Comment[te]=అందుబాటులోవున్న బోనోబో మూలకాలను చూపుము Comment[th]=แสดงองค์ประกอบ Bononbo ที่มีอยู่ Comment[tr]=Geçerli Bonobo bileşenlerini gösterir Comment[ug]=Bonobo دا ئىشلەتكىلى بولىدىغان بۆلەكلەرنى كۆرسىتىدۇ Comment[uk]=Відображає доступні компоненти Bonobo Comment[vi]=Hiển thị các thành phần Bonobo sẵn sàng Comment[xh]=Ibonisa amalungu e-Bonobo akhoyo Comment[zh_CN]=显示可用的 Bonobo 组件 Comment[zh_HK]=顯示現有的 Bonobo 元件 Comment[zh_TW]=顯示現有的 Bonobo 元件 Exec=bonobo-browser Terminal=false Type=Application Categories=GNOME;GTK;System; NoDisplay=true X-GNOME-Bugzilla-Bugzilla=GNOME X-GNOME-Bugzilla-Product=bonobo X-GNOME-Bugzilla-Component=libbonoboui libbonoboui-2.24.5/tools/browser/bonobo-browser.h0000644000076400007640000000213511173072741016777 00000000000000/* Bonobo component browser * * AUTHORS: * Patanjali Somayaji * Dan Siemon * Rodrigo Moya * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU Library General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ #ifndef __BONOBO_BROWSER_H__ #define __BONOBO_BROWSER_H__ #include "config.h" #include /* * User interface functions */ void bonobo_browser_create_window (void); #endif libbonoboui-2.24.5/tools/browser/bonobo-browser.c0000644000076400007640000000271111173072741016772 00000000000000/* Bonobo component browser * * AUTHORS: * Dan Siemon * Rodrigo Moya * Patanjali Somayaji * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU Library General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ #ifdef HAVE_CONFIG_H #include #endif #include "bonobo-browser.h" #include #include #ifdef ENABLE_NLS #include #endif int main (int argc, char *argv []) { #ifdef ENABLE_NLS setlocale (LC_ALL, ""); bindtextdomain (GETTEXT_PACKAGE, BONOBO_SUPPORT_LOCALEDIR); bind_textdomain_codeset (GETTEXT_PACKAGE, "UTF-8"); textdomain (GETTEXT_PACKAGE); #endif gtk_init (&argc, &argv); bonobo_init (&argc, argv); bonobo_browser_create_window (); /* run the application */ bonobo_main (); return 0; } libbonoboui-2.24.5/tools/browser/component-details.h0000644000076400007640000000406211173072741017466 00000000000000/* Bonobo component browser * * AUTHORS: * Dan Siemon * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU Library General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ #ifndef __COMPONENT_DETAILS_H__ #define __COMPONENT_DETAILS_H__ #include G_BEGIN_DECLS #define COMPONENT_DETAILS_TYPE (component_details_get_type ()) #define COMPONENT_DETAILS(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), COMPONENT_DETAILS_TYPE, ComponentDetails)) #define COMPONENT_DETAILS_CLASS(k) (G_TYPE_CHECK_CLASS_CAST((k), COMPONENT_DETAILS_TYPE, ComponentDetailsClass)) #define IS_COMPONENT_DETAILS(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), COMPONENT_DETAILS_TYPE)) #define IS_COMPONENT_DETAILS__CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), COMPONENT_DETAILS_TYPE)) #define COMPONENT_DETAILS_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), COMPONENT_DETAILS_TYPE, ComponentDetailsClass)) typedef struct _ComponentDetails ComponentDetails; typedef struct _ComponentDetailsClass ComponentDetailsClass; typedef struct _ComponentDetailsPrivate ComponentDetailsPrivate; struct _ComponentDetails { GtkVBox box; ComponentDetailsPrivate *priv; }; struct _ComponentDetailsClass { GtkVBoxClass parent_class; }; /* Widget functions. */ GType component_details_get_type (void); GtkWidget *component_details_new (gchar *iid); /* ComponentDetails widget control functions. */ void component_details_get_info (ComponentDetails *comp_details, gchar *iid); G_END_DECLS #endif libbonoboui-2.24.5/tools/browser/component-info.c0000644000076400007640000000573511173072741016777 00000000000000/* Bonobo component browser * * AUTHORS: * Dan Siemon * Patanjali Somayaji * Rodrigo Moya * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU Library General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ #include "oaf-helper.h" static void free_all_members (BonoboComponentInfo *info) { GList *temp; g_return_if_fail (info != NULL); g_free (info->component_iid); g_free (info->component_type); g_free (info->component_location); g_free (info->component_username); g_free (info->component_hostname); g_free (info->component_domain); g_free (info->component_description); g_free (info->component_name); info->component_iid = NULL; info->component_type = info->component_location = NULL; info->component_username = info->component_hostname = NULL; info->component_domain = info->component_description = NULL; info->component_name = NULL; /* free the list of properties */ for (temp = info->component_properties; temp; temp = temp->next) { BonoboComponentProperty *prop = temp->data; g_free (prop->property_name); if (prop->property_type == PROPERTY_TYPE_STRING) g_free (prop->property_value.value_string); g_free (prop); } g_list_free (info->component_properties); info->component_properties = NULL; } BonoboComponentInfo * bonobo_component_info_new (void) { BonoboComponentInfo *info; info = g_new0 (BonoboComponentInfo, 1); return info; } void bonobo_component_info_set_values (BonoboComponentInfo *info, Bonobo_ImplementationID iid, const gchar *type, const gchar *location, const gchar *username, const gchar *hostname, const gchar *domain, const gchar *description, const gchar *name, GList *properties) { g_return_if_fail (info != NULL); free_all_members (info); info->component_iid = g_strdup (iid); info->component_type = g_strdup (type); info->component_location = g_strdup (location); info->component_username = g_strdup (username); info->component_hostname = g_strdup (hostname); info->component_domain = g_strdup (domain); info->component_description = g_strdup (description); info->component_name = g_strdup (name); info->component_properties = properties; } void bonobo_component_info_free (BonoboComponentInfo *info) { g_return_if_fail (info != NULL); free_all_members (info); g_free (info); } libbonoboui-2.24.5/tools/browser/bonobo-browser.desktop.in0000644000076400007640000000046011173072741020625 00000000000000[Desktop Entry] Encoding=UTF-8 _Name=Bonobo Component Browser _Comment=Shows available Bonobo components Exec=bonobo-browser Terminal=false Type=Application Categories=GNOME;GTK;System; NoDisplay=true X-GNOME-Bugzilla-Bugzilla=GNOME X-GNOME-Bugzilla-Product=bonobo X-GNOME-Bugzilla-Component=libbonoboui libbonoboui-2.24.5/tools/browser/bonobo-browser.xml0000644000076400007640000000105711173072741017352 00000000000000 libbonoboui-2.24.5/tools/browser/Makefile.in0000664000076400007640000005200211546334702015736 00000000000000# Makefile.in generated by automake 1.11.1 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, # Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY, to the extent permitted by law; without # even the implied warranty of MERCHANTABILITY or FITNESS FOR A # PARTICULAR PURPOSE. @SET_MAKE@ VPATH = @srcdir@ pkgdatadir = $(datadir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ pkglibdir = $(libdir)/@PACKAGE@ pkglibexecdir = $(libexecdir)/@PACKAGE@ am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd install_sh_DATA = $(install_sh) -c -m 644 install_sh_PROGRAM = $(install_sh) -c install_sh_SCRIPT = $(install_sh) -c INSTALL_HEADER = $(INSTALL_DATA) transform = $(program_transform_name) NORMAL_INSTALL = : PRE_INSTALL = : POST_INSTALL = : NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : build_triplet = @build@ host_triplet = @host@ bin_PROGRAMS = bonobo-browser$(EXEEXT) subdir = tools/browser DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/configure.in am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs CONFIG_HEADER = $(top_builddir)/config.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = am__installdirs = "$(DESTDIR)$(bindir)" "$(DESTDIR)$(Utilitiesdir)" \ "$(DESTDIR)$(uidir)" PROGRAMS = $(bin_PROGRAMS) am_bonobo_browser_OBJECTS = bonobo-browser.$(OBJEXT) \ component-info.$(OBJEXT) component-list.$(OBJEXT) \ component-details.$(OBJEXT) oaf-helper.$(OBJEXT) \ window.$(OBJEXT) bonobo_browser_OBJECTS = $(am_bonobo_browser_OBJECTS) am__DEPENDENCIES_1 = bonobo_browser_DEPENDENCIES = $(am__DEPENDENCIES_1) \ $(top_builddir)/bonobo/libbonoboui-2.la DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir) depcomp = $(SHELL) $(top_srcdir)/depcomp am__depfiles_maybe = depfiles am__mv = mv -f COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) LTCOMPILE = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \ --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) CCLD = $(CC) LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \ --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \ $(LDFLAGS) -o $@ SOURCES = $(bonobo_browser_SOURCES) DIST_SOURCES = $(bonobo_browser_SOURCES) am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; am__vpath_adj = case $$p in \ $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \ *) f=$$p;; \ esac; am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`; am__install_max = 40 am__nobase_strip_setup = \ srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'` am__nobase_strip = \ for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||" am__nobase_list = $(am__nobase_strip_setup); \ for p in $$list; do echo "$$p $$p"; done | \ sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \ $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \ if (++n[$$2] == $(am__install_max)) \ { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \ END { for (dir in files) print dir, files[dir] }' am__base_list = \ sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \ sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g' DATA = $(Utilities_DATA) $(ui_DATA) ETAGS = etags CTAGS = ctags DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ACLOCAL_AMFLAGS = @ACLOCAL_AMFLAGS@ ALL_LINGUAS = @ALL_LINGUAS@ AMTAR = @AMTAR@ AR = @AR@ AS = @AS@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ AWK = @AWK@ BONOBOUI_CFLAGS = @BONOBOUI_CFLAGS@ BONOBOUI_GLADE_CFLAGS = @BONOBOUI_GLADE_CFLAGS@ BONOBOUI_GLADE_LIBS = @BONOBOUI_GLADE_LIBS@ BONOBOUI_LIBS = @BONOBOUI_LIBS@ BONOBOUI_SINGLE_INCLUDES = @BONOBOUI_SINGLE_INCLUDES@ CATALOGS = @CATALOGS@ CATOBJEXT = @CATOBJEXT@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ CYGPATH_W = @CYGPATH_W@ DATADIRNAME = @DATADIRNAME@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DUMPBIN = @DUMPBIN@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_MKENUMS = @GLIB_MKENUMS@ GMOFILES = @GMOFILES@ GMSGFMT = @GMSGFMT@ GREP = @GREP@ GTKDOC_CHECK = @GTKDOC_CHECK@ GTKDOC_MKPDF = @GTKDOC_MKPDF@ GTKDOC_REBASE = @GTKDOC_REBASE@ HTML_DIR = @HTML_DIR@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INSTOBJEXT = @INSTOBJEXT@ INTLLIBS = @INTLLIBS@ INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@ INTLTOOL_MERGE = @INTLTOOL_MERGE@ INTLTOOL_PERL = @INTLTOOL_PERL@ INTLTOOL_UPDATE = @INTLTOOL_UPDATE@ LD = @LD@ LDFLAGS = @LDFLAGS@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIPO = @LIPO@ LN_S = @LN_S@ LTLIBOBJS = @LTLIBOBJS@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MKDIR_P = @MKDIR_P@ MKINSTALLDIRS = @MKINSTALLDIRS@ MSGFMT = @MSGFMT@ MSGFMT_OPTS = @MSGFMT_OPTS@ MSGMERGE = @MSGMERGE@ NM = @NM@ NMEDIT = @NMEDIT@ OBJDUMP = @OBJDUMP@ OBJEXT = @OBJEXT@ OTOOL = @OTOOL@ OTOOL64 = @OTOOL64@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_URL = @PACKAGE_URL@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ PATH_TO_XRDB = @PATH_TO_XRDB@ PKG_CONFIG = @PKG_CONFIG@ POFILES = @POFILES@ POPT_LIBS = @POPT_LIBS@ POSUB = @POSUB@ PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@ PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@ RANLIB = @RANLIB@ SED = @SED@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ STRIP = @STRIP@ USE_NLS = @USE_NLS@ VERSION = @VERSION@ WARN_CFLAGS = @WARN_CFLAGS@ XGETTEXT = @XGETTEXT@ XMKMF = @XMKMF@ X_CFLAGS = @X_CFLAGS@ X_EXTRA_LIBS = @X_EXTRA_LIBS@ X_LIBS = @X_LIBS@ X_PRE_LIBS = @X_PRE_LIBS@ YACC = @YACC@ YFLAGS = @YFLAGS@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ abs_top_srcdir = @abs_top_srcdir@ ac_ct_CC = @ac_ct_CC@ ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ am__include = @am__include@ am__leading_dot = @am__leading_dot@ am__quote = @am__quote@ am__tar = @am__tar@ am__untar = @am__untar@ bindir = @bindir@ build = @build@ build_alias = @build_alias@ build_cpu = @build_cpu@ build_os = @build_os@ build_vendor = @build_vendor@ builddir = @builddir@ datadir = @datadir@ datarootdir = @datarootdir@ docdir = @docdir@ dvidir = @dvidir@ exec_prefix = @exec_prefix@ host = @host@ host_alias = @host_alias@ host_cpu = @host_cpu@ host_os = @host_os@ host_vendor = @host_vendor@ htmldir = @htmldir@ includedir = @includedir@ infodir = @infodir@ install_sh = @install_sh@ libdir = @libdir@ libexecdir = @libexecdir@ localedir = @localedir@ localstatedir = @localstatedir@ lt_ECHO = @lt_ECHO@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ sysconfdir = @sysconfdir@ target_alias = @target_alias@ top_build_prefix = @top_build_prefix@ top_builddir = @top_builddir@ top_srcdir = @top_srcdir@ INCLUDES = \ -DBONOBO_BROWSER_DATADIR=\""$(datadir)"\" \ -DBONOBO_SUPPORT_LOCALEDIR=\""$(datadir)/locale"\" \ -I$(srcdir) -I$(top_srcdir) \ -I$(top_srcdir)/bonobo-browser \ $(BONOBOUI_CFLAGS) \ $(WARN_CFLAGS) bonobo_browser_SOURCES = \ bonobo-browser.c \ bonobo-browser.h \ component-info.c \ component-list.c \ component-list.h \ component-details.c \ component-details.h \ oaf-helper.c \ oaf-helper.h \ window.c bonobo_browser_LDADD = \ $(BONOBOUI_LIBS) \ $(top_builddir)/bonobo/libbonoboui-2.la uidir = $(datadir)/gnome-2.0/ui ui_DATA = bonobo-browser.xml Utilitiesdir = $(datadir)/applications Utilities_in_files = bonobo-browser.desktop.in Utilities_DATA = $(Utilities_in_files:.desktop.in=.desktop) EXTRA_DIST = \ $(Utilities_in_files) \ $(Utilities_DATA) \ bonobo-browser.xml CLEANFILES = bonobo-browser.desktop all: all-am .SUFFIXES: .SUFFIXES: .c .lo .o .obj $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps) @for dep in $?; do \ case '$(am__configure_deps)' in \ *$$dep*) \ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ && { if test -f $@; then exit 0; else break; fi; }; \ exit 1;; \ esac; \ done; \ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign tools/browser/Makefile'; \ $(am__cd) $(top_srcdir) && \ $(AUTOMAKE) --foreign tools/browser/Makefile .PRECIOUS: Makefile Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status @case '$?' in \ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(am__aclocal_m4_deps): install-binPROGRAMS: $(bin_PROGRAMS) @$(NORMAL_INSTALL) test -z "$(bindir)" || $(MKDIR_P) "$(DESTDIR)$(bindir)" @list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \ for p in $$list; do echo "$$p $$p"; done | \ sed 's/$(EXEEXT)$$//' | \ while read p p1; do if test -f $$p || test -f $$p1; \ then echo "$$p"; echo "$$p"; else :; fi; \ done | \ sed -e 'p;s,.*/,,;n;h' -e 's|.*|.|' \ -e 'p;x;s,.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/' | \ sed 'N;N;N;s,\n, ,g' | \ $(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1 } \ { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \ if ($$2 == $$4) files[d] = files[d] " " $$1; \ else { print "f", $$3 "/" $$4, $$1; } } \ END { for (d in files) print "f", d, files[d] }' | \ while read type dir files; do \ if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \ test -z "$$files" || { \ echo " $(INSTALL_PROGRAM_ENV) $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL_PROGRAM) $$files '$(DESTDIR)$(bindir)$$dir'"; \ $(INSTALL_PROGRAM_ENV) $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL_PROGRAM) $$files "$(DESTDIR)$(bindir)$$dir" || exit $$?; \ } \ ; done uninstall-binPROGRAMS: @$(NORMAL_UNINSTALL) @list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \ files=`for p in $$list; do echo "$$p"; done | \ sed -e 'h;s,^.*/,,;s/$(EXEEXT)$$//;$(transform)' \ -e 's/$$/$(EXEEXT)/' `; \ test -n "$$list" || exit 0; \ echo " ( cd '$(DESTDIR)$(bindir)' && rm -f" $$files ")"; \ cd "$(DESTDIR)$(bindir)" && rm -f $$files clean-binPROGRAMS: @list='$(bin_PROGRAMS)'; test -n "$$list" || exit 0; \ echo " rm -f" $$list; \ rm -f $$list || exit $$?; \ test -n "$(EXEEXT)" || exit 0; \ list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \ echo " rm -f" $$list; \ rm -f $$list bonobo-browser$(EXEEXT): $(bonobo_browser_OBJECTS) $(bonobo_browser_DEPENDENCIES) @rm -f bonobo-browser$(EXEEXT) $(LINK) $(bonobo_browser_OBJECTS) $(bonobo_browser_LDADD) $(LIBS) mostlyclean-compile: -rm -f *.$(OBJEXT) distclean-compile: -rm -f *.tab.c @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bonobo-browser.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/component-details.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/component-info.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/component-list.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oaf-helper.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/window.Po@am__quote@ .c.o: @am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< @am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(COMPILE) -c $< .c.obj: @am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'` @am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(COMPILE) -c `$(CYGPATH_W) '$<'` .c.lo: @am__fastdepCC_TRUE@ $(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< @am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(LTCOMPILE) -c -o $@ $< mostlyclean-libtool: -rm -f *.lo clean-libtool: -rm -rf .libs _libs install-UtilitiesDATA: $(Utilities_DATA) @$(NORMAL_INSTALL) test -z "$(Utilitiesdir)" || $(MKDIR_P) "$(DESTDIR)$(Utilitiesdir)" @list='$(Utilities_DATA)'; test -n "$(Utilitiesdir)" || list=; \ for p in $$list; do \ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ echo "$$d$$p"; \ done | $(am__base_list) | \ while read files; do \ echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(Utilitiesdir)'"; \ $(INSTALL_DATA) $$files "$(DESTDIR)$(Utilitiesdir)" || exit $$?; \ done uninstall-UtilitiesDATA: @$(NORMAL_UNINSTALL) @list='$(Utilities_DATA)'; test -n "$(Utilitiesdir)" || list=; \ files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ test -n "$$files" || exit 0; \ echo " ( cd '$(DESTDIR)$(Utilitiesdir)' && rm -f" $$files ")"; \ cd "$(DESTDIR)$(Utilitiesdir)" && rm -f $$files install-uiDATA: $(ui_DATA) @$(NORMAL_INSTALL) test -z "$(uidir)" || $(MKDIR_P) "$(DESTDIR)$(uidir)" @list='$(ui_DATA)'; test -n "$(uidir)" || list=; \ for p in $$list; do \ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ echo "$$d$$p"; \ done | $(am__base_list) | \ while read files; do \ echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(uidir)'"; \ $(INSTALL_DATA) $$files "$(DESTDIR)$(uidir)" || exit $$?; \ done uninstall-uiDATA: @$(NORMAL_UNINSTALL) @list='$(ui_DATA)'; test -n "$(uidir)" || list=; \ files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ test -n "$$files" || exit 0; \ echo " ( cd '$(DESTDIR)$(uidir)' && rm -f" $$files ")"; \ cd "$(DESTDIR)$(uidir)" && rm -f $$files ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ END { if (nonempty) { for (i in files) print i; }; }'`; \ mkid -fID $$unique tags: TAGS TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) set x; \ here=`pwd`; \ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ END { if (nonempty) { for (i in files) print i; }; }'`; \ shift; \ if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ test -n "$$unique" || unique=$$empty_fix; \ if test $$# -gt 0; then \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ "$$@" $$unique; \ else \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ $$unique; \ fi; \ fi ctags: CTAGS CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ END { if (nonempty) { for (i in files) print i; }; }'`; \ test -z "$(CTAGS_ARGS)$$unique" \ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ $$unique GTAGS: here=`$(am__cd) $(top_builddir) && pwd` \ && $(am__cd) $(top_srcdir) \ && gtags -i $(GTAGS_ARGS) "$$here" distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ dist_files=`for file in $$list; do echo $$file; done | \ sed -e "s|^$$srcdirstrip/||;t" \ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ case $$dist_files in \ */*) $(MKDIR_P) `echo "$$dist_files" | \ sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ sort -u` ;; \ esac; \ for file in $$dist_files; do \ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ if test -d $$d/$$file; then \ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ if test -d "$(distdir)/$$file"; then \ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ else \ test -f "$(distdir)/$$file" \ || cp -p $$d/$$file "$(distdir)/$$file" \ || exit 1; \ fi; \ done check-am: all-am check: check-am all-am: Makefile $(PROGRAMS) $(DATA) installdirs: for dir in "$(DESTDIR)$(bindir)" "$(DESTDIR)$(Utilitiesdir)" "$(DESTDIR)$(uidir)"; do \ test -z "$$dir" || $(MKDIR_P) "$$dir"; \ done install: install-am install-exec: install-exec-am install-data: install-data-am uninstall: uninstall-am install-am: all-am @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am installcheck: installcheck-am install-strip: $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ `test -z '$(STRIP)' || \ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install mostlyclean-generic: clean-generic: -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES) distclean-generic: -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) maintainer-clean-generic: @echo "This command is intended for maintainers to use" @echo "it deletes files that may require special tools to rebuild." clean: clean-am clean-am: clean-binPROGRAMS clean-generic clean-libtool mostlyclean-am distclean: distclean-am -rm -rf ./$(DEPDIR) -rm -f Makefile distclean-am: clean-am distclean-compile distclean-generic \ distclean-tags dvi: dvi-am dvi-am: html: html-am html-am: info: info-am info-am: install-data-am: install-UtilitiesDATA install-uiDATA install-dvi: install-dvi-am install-dvi-am: install-exec-am: install-binPROGRAMS install-html: install-html-am install-html-am: install-info: install-info-am install-info-am: install-man: install-pdf: install-pdf-am install-pdf-am: install-ps: install-ps-am install-ps-am: installcheck-am: maintainer-clean: maintainer-clean-am -rm -rf ./$(DEPDIR) -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic mostlyclean: mostlyclean-am mostlyclean-am: mostlyclean-compile mostlyclean-generic \ mostlyclean-libtool pdf: pdf-am pdf-am: ps: ps-am ps-am: uninstall-am: uninstall-UtilitiesDATA uninstall-binPROGRAMS \ uninstall-uiDATA .MAKE: install-am install-strip .PHONY: CTAGS GTAGS all all-am check check-am clean clean-binPROGRAMS \ clean-generic clean-libtool ctags distclean distclean-compile \ distclean-generic distclean-libtool distclean-tags distdir dvi \ dvi-am html html-am info info-am install install-UtilitiesDATA \ install-am install-binPROGRAMS install-data install-data-am \ install-dvi install-dvi-am install-exec install-exec-am \ install-html install-html-am install-info install-info-am \ install-man install-pdf install-pdf-am install-ps \ install-ps-am install-strip install-uiDATA installcheck \ installcheck-am installdirs maintainer-clean \ maintainer-clean-generic mostlyclean mostlyclean-compile \ mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \ tags uninstall uninstall-UtilitiesDATA uninstall-am \ uninstall-binPROGRAMS uninstall-uiDATA @INTLTOOL_DESKTOP_RULE@ # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. .NOEXPORT: libbonoboui-2.24.5/tools/browser/component-details.c0000644000076400007640000002240411173072741017461 00000000000000/* Bonobo component browser * * AUTHORS: * Dan Siemon * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU Library General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ #ifdef HAVE_CONFIG_H #include #endif #include "oaf-helper.h" #include "component-details.h" #include #define PARENT_TYPE GTK_TYPE_VBOX struct _ComponentDetailsPrivate { gchar *iid; GList *components; GtkWidget *description_label; GtkWidget *name_label; GtkWidget *iid_label; GtkWidget *loc_label; GtkWidget *tree; GtkTreeStore *model; }; static void component_details_class_init (ComponentDetailsClass *klass); static void component_details_init (ComponentDetails *comp_details, ComponentDetailsClass *klass); static void component_details_finalize (GObject *object); static GObjectClass *parent_class = NULL; /* * Tree View functions. */ static void set_detailed_func (GtkTreeViewColumn *tree_column, GtkCellRenderer *cell, GtkTreeModel *model, GtkTreeIter *iter, gpointer user_data) { gchar *data; gtk_tree_model_get (model, iter, 0, &data, -1); g_object_set (G_OBJECT (cell), "text", data, NULL); g_free (data); } /* * ComponentDetails class implementation */ static void component_details_class_init (ComponentDetailsClass *klass) { GObjectClass *object_class = G_OBJECT_CLASS (klass); parent_class = g_type_class_peek_parent (klass); object_class->finalize = component_details_finalize; } static void component_details_init (ComponentDetails *comp_details, ComponentDetailsClass *klass) { GtkWidget *notebook; GtkWidget *general_label; GtkWidget *general_vbox; GtkWidget *details_label; GtkWidget *details_frame; GtkWidget *description_frame, *name_frame, *iid_frame, *loc_frame; GtkWidget *details_scroll; GtkTreeViewColumn *column; GtkCellRenderer *text_renderer; g_return_if_fail (IS_COMPONENT_DETAILS (comp_details)); /* Allocate the private struct */ comp_details->priv = g_new0 (ComponentDetailsPrivate, 1); notebook = gtk_notebook_new(); gtk_box_pack_start (GTK_BOX (comp_details), notebook, TRUE, TRUE, 6); /* Build the general tab */ general_label = gtk_label_new (_("General")); general_vbox = gtk_vbox_new (TRUE, 0); gtk_notebook_append_page (GTK_NOTEBOOK (notebook), general_vbox, general_label); name_frame = gtk_frame_new (_("Name")); description_frame = gtk_frame_new (_("Description")); iid_frame = gtk_frame_new (_("IID")); loc_frame = gtk_frame_new (_("Location")); gtk_box_pack_start (GTK_BOX (general_vbox), iid_frame, TRUE, TRUE, 0); gtk_box_pack_start (GTK_BOX (general_vbox), name_frame, TRUE, TRUE, 0); gtk_box_pack_start (GTK_BOX (general_vbox), loc_frame, TRUE, TRUE, 0); gtk_box_pack_start (GTK_BOX (general_vbox), description_frame, TRUE, TRUE, 0); comp_details->priv->iid_label = gtk_label_new (NULL); gtk_label_set_justify (GTK_LABEL (comp_details->priv->iid_label), GTK_JUSTIFY_RIGHT); gtk_label_set_selectable (GTK_LABEL (comp_details->priv->iid_label), TRUE); gtk_container_add (GTK_CONTAINER (iid_frame), comp_details->priv->iid_label); comp_details->priv->name_label = gtk_label_new (NULL); gtk_label_set_justify (GTK_LABEL (comp_details->priv->name_label), GTK_JUSTIFY_RIGHT); gtk_label_set_selectable ( GTK_LABEL (comp_details->priv->name_label), TRUE); gtk_container_add (GTK_CONTAINER (name_frame), comp_details->priv->name_label); comp_details->priv->loc_label = gtk_label_new (NULL); gtk_label_set_line_wrap ( GTK_LABEL (comp_details->priv->loc_label), TRUE); gtk_label_set_justify ( GTK_LABEL (comp_details->priv->loc_label), TRUE); gtk_label_set_selectable ( GTK_LABEL (comp_details->priv->loc_label), TRUE); gtk_container_add (GTK_CONTAINER (loc_frame), comp_details->priv->loc_label); comp_details->priv->description_label = gtk_label_new (NULL); gtk_label_set_line_wrap ( GTK_LABEL (comp_details->priv->description_label), TRUE); gtk_label_set_justify ( GTK_LABEL (comp_details->priv->description_label), GTK_JUSTIFY_LEFT); gtk_label_set_selectable ( GTK_LABEL (comp_details->priv->description_label), TRUE); gtk_container_add (GTK_CONTAINER (description_frame), comp_details->priv->description_label); /* Build the details tab */ details_label = gtk_label_new (_("Details")); details_frame = gtk_frame_new (_("Detailed Information")); gtk_notebook_append_page (GTK_NOTEBOOK (notebook), details_frame, details_label); details_scroll = gtk_scrolled_window_new (NULL, NULL); gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW(details_scroll), GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC); gtk_container_add(GTK_CONTAINER (details_frame), details_scroll); comp_details->priv->tree = gtk_tree_view_new(); gtk_tree_view_set_headers_visible ( GTK_TREE_VIEW (comp_details->priv->tree), FALSE); gtk_container_add(GTK_CONTAINER (details_scroll), comp_details->priv->tree); comp_details->priv->model = gtk_tree_store_new (1, G_TYPE_STRING); gtk_tree_view_set_model (GTK_TREE_VIEW (comp_details->priv->tree), GTK_TREE_MODEL (comp_details->priv->model)); g_object_unref (comp_details->priv->model); text_renderer = gtk_cell_renderer_text_new(); column = gtk_tree_view_column_new_with_attributes (NULL, text_renderer, NULL); gtk_tree_view_column_set_cell_data_func (column, text_renderer, set_detailed_func, NULL, NULL); gtk_tree_view_append_column (GTK_TREE_VIEW (comp_details->priv->tree), column); gtk_widget_show_all (notebook); } static void component_details_finalize (GObject *object) { ComponentDetails *comp_details; comp_details = (ComponentDetails *) object; g_return_if_fail (IS_COMPONENT_DETAILS (comp_details)); g_free (comp_details->priv); comp_details->priv = NULL; /* Chain to parent class */ parent_class->finalize (object); } GType component_details_get_type (void) { static GType type = 0; if (!type) { if (type == 0) { static GTypeInfo info = { sizeof (ComponentDetailsClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) component_details_class_init, NULL, NULL, sizeof (ComponentDetails), 0, (GInstanceInitFunc) component_details_init }; type = g_type_register_static (PARENT_TYPE, "ComponentDetails", &info, 0); } } return type; } GtkWidget * component_details_new (gchar *iid) { ComponentDetails *comp_details; comp_details = g_object_new (COMPONENT_DETAILS_TYPE, NULL); component_details_get_info (comp_details, iid); return GTK_WIDGET (comp_details); } void component_details_get_info (ComponentDetails *comp_details, gchar *iid) { gchar *query; BonoboComponentInfo *info; GtkTreeIter parent_iter, iter; GList *repo_ids; int len; query = g_strdup_printf ("iid == '%s'", iid); comp_details->priv->components = bonobo_browser_get_components_list ( query); g_free (query); len = g_list_length (comp_details->priv->components); if (len == 0) { /* We don't handle this correctly yet. */ g_print ("No components found\n"); g_assert_not_reached (); } else if (len > 1) { /* This should never happen. No two components */ /* should have the same IID. */ g_print ("Two component with the same IID!!!\n"); g_assert_not_reached (); } /* Build the General tab */ info = (BonoboComponentInfo *) comp_details->priv->components->data; gtk_label_set_label (GTK_LABEL (comp_details->priv->iid_label), info->component_iid); gtk_label_set_label (GTK_LABEL (comp_details->priv->name_label), info->component_name); gtk_label_set_label (GTK_LABEL (comp_details->priv->loc_label), info->component_location); gtk_label_set_label (GTK_LABEL (comp_details->priv->description_label), info->component_description); /* Build the Details tab */ gtk_tree_store_append (comp_details->priv->model, &parent_iter, NULL); gtk_tree_store_set (comp_details->priv->model, &parent_iter, 0, "Repo Ids", -1); /* Get a GList of this components repo ids */ repo_ids = bonobo_component_get_repoids (info); while (repo_ids != NULL) { gtk_tree_store_append (comp_details->priv->model, &iter, &parent_iter); gtk_tree_store_set (comp_details->priv->model, &iter, 0, repo_ids->data, -1); repo_ids = repo_ids->next; } /* Clean up time... */ bonobo_component_info_free (info); g_list_free (comp_details->priv->components); } libbonoboui-2.24.5/tools/browser/oaf-helper.h0000644000076400007640000000517211173072741016066 00000000000000/* Bonobo component browser * * AUTHORS: * Dan Siemon * Rodrigo Moya * Patanjali Somayaji * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU Library General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ #ifndef __OAF_HELPER_H__ #define __OAF_HELPER_H__ #include #include #include /* * BonoboComponentInfo is used to store the data read from * oaf about each component */ typedef enum { PROPERTY_TYPE_STRING, PROPERTY_TYPE_DOUBLE, PROPERTY_TYPE_BOOLEAN, PROPERTY_TYPE_STRINGLIST } BonoboComponentPropertyType; typedef struct { gchar *property_name; BonoboComponentPropertyType property_type; union { gchar *value_string; double value_double; gboolean value_boolean; GList *value_stringlist; } property_value; } BonoboComponentProperty; typedef struct { Bonobo_ImplementationID component_iid; gchar *component_type; gchar *component_location; gchar *component_username; gchar *component_hostname; gchar *component_domain; gchar *component_description; gchar *component_name; GList *component_properties; gboolean active; } BonoboComponentInfo; BonoboComponentInfo *bonobo_component_info_new (void); void bonobo_component_info_set_values ( BonoboComponentInfo *info, Bonobo_ImplementationID iid, const gchar *type, const gchar *location, const gchar *username, const gchar *hostname, const gchar *domain, const gchar *description, const gchar *name, GList *properties); void bonobo_component_info_free (BonoboComponentInfo *info); GList *bonobo_browser_get_components_list (const gchar *query); void bonobo_browser_free_components_list (GList *list); void bonobo_component_list_print (GList *list); GList *bonobo_component_get_repoids (BonoboComponentInfo *info); #endif libbonoboui-2.24.5/tools/browser/component-list.h0000644000076400007640000000430511173072741017014 00000000000000/* Bonobo component browser * * AUTHORS: * Patanjali Somayaji * Dan Siemon * Rodrigo Moya * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU Library General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ #ifndef __COMPONENT_LIST_H__ #define __COMPONENT_LIST_H__ #include G_BEGIN_DECLS #define COMPONENT_LIST_TYPE (component_list_get_type ()) #define COMPONENT_LIST(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), COMPONENT_LIST_TYPE, ComponentList)) #define COMPONENT_LIST_CLASS(k) (G_TYPE_CHECK_CLASS_CAST((k), COMPONENT_LIST_TYPE, ComponentListClass)) #define IS_COMPONENT_LIST(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), COMPONENT_LIST_TYPE)) #define IS_COMPONENT_LIST__CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), COMPONENT_LIST_TYPE)) #define COMPONENT_LIST_GET_CLASS(o)(G_TYPE_INSTANCE_GET_CLASS ((o), COMPONENT_LIST_TYPE, ComponentListClass)) typedef struct _ComponentList ComponentList; typedef struct _ComponentListClass ComponentListClass; typedef struct _ComponentListPrivate ComponentListPrivate; struct _ComponentList { GtkVBox box; ComponentListPrivate *priv; }; struct _ComponentListClass { GtkVBoxClass parent_class; void (* component_details)(ComponentList *click); }; /* Widget functions */ GType component_list_get_type (void); GtkWidget *component_list_new (void); /* ComponentList widget control functions */ void component_list_show (ComponentList *comp_list, gchar *query); gchar *component_list_get_selected_iid (ComponentList *comp_list); G_END_DECLS #endif libbonoboui-2.24.5/tools/browser/window.c0000644000076400007640000002246711173072741015354 00000000000000/* Bonobo component browser * * AUTHORS: * Dan Siemon * Rodrigo Moya * Patanjali Somayaji * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU Library General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ #ifdef HAVE_CONFIG_H #include #endif #include #include #include #include #include #include #include "bonobo-browser.h" #include "component-list.h" #include "component-details.h" static void verb_FileNewWindow (BonoboUIComponent *uic, void *data, const char *path); static void verb_FileClose (BonoboUIComponent *uic, void *data, const char *path); static void verb_HelpAbout (BonoboUIComponent *uic, void *data, const char *path); static GList *open_windows = NULL; static BonoboUIVerb window_verbs[] = { BONOBO_UI_VERB ("FileNewWindow", verb_FileNewWindow), BONOBO_UI_VERB ("FileClose", verb_FileClose), BONOBO_UI_VERB ("HelpAbout", verb_HelpAbout), BONOBO_UI_VERB_END }; struct window_info { GtkWidget *comp_list; GtkWidget *entry; }; /********************************* * Callbacks *********************************/ static void window_closed_cb (GObject *object, gpointer user_data) { BonoboWindow *window = (BonoboWindow *) object; g_return_if_fail (BONOBO_IS_WINDOW (window)); open_windows = g_list_remove (open_windows, window); gtk_widget_destroy (GTK_WIDGET (window)); if (g_list_length (open_windows) <= 0) { bonobo_main_quit (); } } /* * Called when the Close button is clicked on a details window. */ static void close_details_window_cb (GObject *object, gint response_id, gpointer user_data) { GtkWidget *window = (GtkWidget *) user_data; gtk_widget_destroy (GTK_WIDGET (window)); } /* * Callbacks for the query buttons. */ static void all_query_cb (GObject *object, gpointer data) { struct window_info *info; info = (struct window_info *) data; component_list_show (COMPONENT_LIST (info->comp_list), "_active || _active == FALSE"); gtk_entry_set_text (GTK_ENTRY (info->entry), "_active || _active == FALSE"); } static void active_query_cb (GObject *object, gpointer data) { struct window_info *info; info = (struct window_info *) data; component_list_show (COMPONENT_LIST (info->comp_list), "_active"); gtk_entry_set_text (GTK_ENTRY (info->entry), "_active"); } static void inactive_query_cb (GObject *object, gpointer data) { struct window_info *info; info = (struct window_info *) data; component_list_show (COMPONENT_LIST (info->comp_list), "_active == FALSE"); gtk_entry_set_text (GTK_ENTRY (info->entry), "_active == FALSE"); } static void execute_query_cb (GObject *object, gpointer data) { struct window_info *info; char *query; info = (struct window_info *) data; query = g_strdup_printf ("%s", gtk_entry_get_text (GTK_ENTRY (info->entry))); component_list_show (COMPONENT_LIST (info->comp_list), query); } /* * Creates and shows the details window. */ static void component_details_cb (GObject *object, gpointer data) { GtkWidget *comp_details; GtkWidget *window; ComponentList *list; gchar *iid = NULL; list = (ComponentList *) data; iid = component_list_get_selected_iid (list); if (iid == NULL) { /* We do not handle this situation */ g_assert_not_reached(); } window = gtk_dialog_new_with_buttons (_("Component Details"), NULL, 0, GTK_STOCK_CLOSE, GTK_RESPONSE_CLOSE, NULL); g_signal_connect (G_OBJECT (window), "response", G_CALLBACK (close_details_window_cb), window); comp_details = component_details_new (iid); gtk_box_pack_start (GTK_BOX (GTK_DIALOG (window)->vbox), comp_details, TRUE, TRUE, 0); gtk_widget_show_all (window); g_free (iid); } /* * Verbs' commands */ static void verb_FileClose (BonoboUIComponent *uic, void *data, const char *path) { BonoboWindow *window = (BonoboWindow *) data; g_return_if_fail (BONOBO_IS_WINDOW (window)); gtk_widget_destroy (GTK_WIDGET (window)); } static void verb_FileNewWindow (BonoboUIComponent *uic, void *data, const char *path) { bonobo_browser_create_window (); } static void verb_HelpAbout (BonoboUIComponent *uic, void *data, const char *path) { BonoboWindow *window = (BonoboWindow *) data; static const gchar *authors[] = { "Dan Siemon ", "Rodrigo Moya ", "Patanjali Somayaji ", NULL }; gtk_show_about_dialog (GTK_WINDOW (window), "name", _("Bonobo Browser"), "version", VERSION, "copyright", _("Copyright 2001, The GNOME Foundation"), "comments", _("Bonobo component browser"), "authors", authors, "documenters", NULL, "translator-credits", _("translator-credits"), "logo-icon-name", "gtk-about", NULL); } /* * Public functions */ void bonobo_browser_create_window (void) { GtkWidget *window, *status_bar; GtkWidget *all_button, *active_button, *inactive_button; GtkWidget *query_label, *execute_button; GtkWidget *main_vbox, *hbox; struct window_info *info; BonoboUIContainer *ui_container; BonoboUIComponent *ui_component; Bonobo_UIContainer corba_container; CORBA_Environment ev; CORBA_exception_init (&ev); info = g_malloc (sizeof (struct window_info)); /* create the window */ window = bonobo_window_new ("bonobo-browser", _("Component Browser")); gtk_window_set_role (GTK_WINDOW (window), "Main window"); gtk_window_set_type_hint (GTK_WINDOW (window), GDK_WINDOW_TYPE_HINT_NORMAL); g_signal_connect (G_OBJECT (window), "delete_event", G_CALLBACK (window_closed_cb), NULL); g_signal_connect (G_OBJECT (window), "destroy", G_CALLBACK (window_closed_cb), NULL); ui_container = bonobo_window_get_ui_container (BONOBO_WINDOW(window)); corba_container = BONOBO_OBJREF (ui_container); ui_component = bonobo_ui_component_new ("bonobo-browser"); bonobo_ui_component_set_container (ui_component, corba_container, NULL); /* set UI for the window */ bonobo_ui_component_freeze (ui_component, NULL); bonobo_ui_util_set_ui (ui_component, BONOBO_BROWSER_DATADIR, "bonobo-browser.xml", "bonobo-browser", &ev); bonobo_ui_component_add_verb_list_with_data (ui_component, window_verbs, window); bonobo_ui_component_thaw (ui_component, NULL); /* Create the main window */ main_vbox = gtk_vbox_new (FALSE, 0); bonobo_window_set_contents (BONOBO_WINDOW (window), main_vbox); hbox = gtk_hbox_new (FALSE, 0); gtk_box_pack_start (GTK_BOX (main_vbox), hbox, FALSE, FALSE, 3); info->comp_list = component_list_new (); gtk_box_pack_start (GTK_BOX (main_vbox), info->comp_list, TRUE, TRUE, 3); status_bar = gtk_statusbar_new (); gtk_box_pack_start (GTK_BOX (main_vbox), status_bar, FALSE, TRUE, 3); /* Fill out the tool bar */ all_button = gtk_radio_button_new_with_label (NULL, _("All")); g_signal_connect (G_OBJECT (all_button), "clicked", G_CALLBACK (all_query_cb), info); active_button = gtk_radio_button_new_with_label (gtk_radio_button_get_group (GTK_RADIO_BUTTON (all_button)), _("Active")); g_signal_connect (G_OBJECT (active_button), "clicked", G_CALLBACK (active_query_cb), info); inactive_button = gtk_radio_button_new_with_label (gtk_radio_button_get_group (GTK_RADIO_BUTTON (all_button)), _("Inactive")); g_signal_connect (G_OBJECT (inactive_button), "clicked", G_CALLBACK (inactive_query_cb), info); query_label = gtk_label_new ("Query:"); info->entry = gtk_entry_new (); g_signal_connect (GTK_ENTRY (info->entry), "activate", G_CALLBACK (execute_query_cb), info); execute_button = gtk_button_new_from_stock (GTK_STOCK_EXECUTE); g_signal_connect (G_OBJECT (execute_button), "clicked", G_CALLBACK (execute_query_cb), info); gtk_box_pack_start (GTK_BOX (hbox), all_button, FALSE, FALSE, 3); gtk_box_pack_start (GTK_BOX (hbox), active_button, FALSE, FALSE, 3); gtk_box_pack_start (GTK_BOX (hbox), inactive_button, FALSE, FALSE, 3); gtk_box_pack_start (GTK_BOX (hbox), query_label, FALSE, FALSE, 1); gtk_box_pack_start (GTK_BOX (hbox), info->entry, TRUE, TRUE, 3); gtk_box_pack_start (GTK_BOX (hbox), execute_button, FALSE, FALSE, 3); /* Attach to the component-details signal */ g_signal_connect (G_OBJECT (info->comp_list), "component-details", G_CALLBACK (component_details_cb), info->comp_list); component_list_show (COMPONENT_LIST (info->comp_list), "_active || _active == FALSE"); gtk_entry_set_text (GTK_ENTRY (info->entry), "_active || _active == FALSE"); /* add this window to our list of open windows */ open_windows = g_list_append (open_windows, window); gtk_widget_set_size_request (window, 600, 500); gtk_widget_show_all (window); } libbonoboui-2.24.5/configure0000755000076400007640000172360411546334677013004 00000000000000#! /bin/sh # Guess values for system-dependent variables and create Makefiles. # Generated by GNU Autoconf 2.65 for libbonoboui 2.24.5. # # Report bugs to . # # # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, # 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, # Inc. # # # This configure script is free software; the Free Software Foundation # gives unlimited permission to copy, distribute and modify it. ## -------------------- ## ## M4sh Initialization. ## ## -------------------- ## # Be more Bourne compatible DUALCASE=1; export DUALCASE # for MKS sh if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then : emulate sh NULLCMD=: # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which # is contrary to our usage. Disable this feature. alias -g '${1+"$@"}'='"$@"' setopt NO_GLOB_SUBST else case `(set -o) 2>/dev/null` in #( *posix*) : set -o posix ;; #( *) : ;; esac fi as_nl=' ' export as_nl # Printing a long string crashes Solaris 7 /usr/bin/printf. as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\' as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo # Prefer a ksh shell builtin over an external printf program on Solaris, # but without wasting forks for bash or zsh. if test -z "$BASH_VERSION$ZSH_VERSION" \ && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then as_echo='print -r --' as_echo_n='print -rn --' elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then as_echo='printf %s\n' as_echo_n='printf %s' else if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"' as_echo_n='/usr/ucb/echo -n' else as_echo_body='eval expr "X$1" : "X\\(.*\\)"' as_echo_n_body='eval arg=$1; case $arg in #( *"$as_nl"*) expr "X$arg" : "X\\(.*\\)$as_nl"; arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;; esac; expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl" ' export as_echo_n_body as_echo_n='sh -c $as_echo_n_body as_echo' fi export as_echo_body as_echo='sh -c $as_echo_body as_echo' fi # The user is always right. if test "${PATH_SEPARATOR+set}" != set; then PATH_SEPARATOR=: (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && { (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 || PATH_SEPARATOR=';' } fi # IFS # We need space, tab and new line, in precisely that order. Quoting is # there to prevent editors from complaining about space-tab. # (If _AS_PATH_WALK were called with IFS unset, it would disable word # splitting by setting IFS to empty value.) IFS=" "" $as_nl" # Find who we are. Look in the path if we contain no directory separator. case $0 in #(( *[\\/]* ) as_myself=$0 ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break done IFS=$as_save_IFS ;; esac # We did not find ourselves, most probably we were run as `sh COMMAND' # in which case we are not to be found in the path. if test "x$as_myself" = x; then as_myself=$0 fi if test ! -f "$as_myself"; then $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2 exit 1 fi # Unset variables that we do not need and which cause bugs (e.g. in # pre-3.0 UWIN ksh). But do not cause bugs in bash 2.01; the "|| exit 1" # suppresses any "Segmentation fault" message there. '((' could # trigger a bug in pdksh 5.2.14. for as_var in BASH_ENV ENV MAIL MAILPATH do eval test x\${$as_var+set} = xset \ && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || : done PS1='$ ' PS2='> ' PS4='+ ' # NLS nuisances. LC_ALL=C export LC_ALL LANGUAGE=C export LANGUAGE # CDPATH. (unset CDPATH) >/dev/null 2>&1 && unset CDPATH if test "x$CONFIG_SHELL" = x; then as_bourne_compatible="if test -n \"\${ZSH_VERSION+set}\" && (emulate sh) >/dev/null 2>&1; then : emulate sh NULLCMD=: # Pre-4.2 versions of Zsh do word splitting on \${1+\"\$@\"}, which # is contrary to our usage. Disable this feature. alias -g '\${1+\"\$@\"}'='\"\$@\"' setopt NO_GLOB_SUBST else case \`(set -o) 2>/dev/null\` in #( *posix*) : set -o posix ;; #( *) : ;; esac fi " as_required="as_fn_return () { (exit \$1); } as_fn_success () { as_fn_return 0; } as_fn_failure () { as_fn_return 1; } as_fn_ret_success () { return 0; } as_fn_ret_failure () { return 1; } exitcode=0 as_fn_success || { exitcode=1; echo as_fn_success failed.; } as_fn_failure && { exitcode=1; echo as_fn_failure succeeded.; } as_fn_ret_success || { exitcode=1; echo as_fn_ret_success failed.; } as_fn_ret_failure && { exitcode=1; echo as_fn_ret_failure succeeded.; } if ( set x; as_fn_ret_success y && test x = \"\$1\" ); then : else exitcode=1; echo positional parameters were not saved. fi test x\$exitcode = x0 || exit 1" as_suggested=" as_lineno_1=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_1a=\$LINENO as_lineno_2=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_2a=\$LINENO eval 'test \"x\$as_lineno_1'\$as_run'\" != \"x\$as_lineno_2'\$as_run'\" && test \"x\`expr \$as_lineno_1'\$as_run' + 1\`\" = \"x\$as_lineno_2'\$as_run'\"' || exit 1 test \$(( 1 + 1 )) = 2 || exit 1" if (eval "$as_required") 2>/dev/null; then : as_have_required=yes else as_have_required=no fi if test x$as_have_required = xyes && (eval "$as_suggested") 2>/dev/null; then : else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR as_found=false for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. as_found=: case $as_dir in #( /*) for as_base in sh bash ksh sh5; do # Try only shells that exist, to save several forks. as_shell=$as_dir/$as_base if { test -f "$as_shell" || test -f "$as_shell.exe"; } && { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$as_shell"; } 2>/dev/null; then : CONFIG_SHELL=$as_shell as_have_required=yes if { $as_echo "$as_bourne_compatible""$as_suggested" | as_run=a "$as_shell"; } 2>/dev/null; then : break 2 fi fi done;; esac as_found=false done $as_found || { if { test -f "$SHELL" || test -f "$SHELL.exe"; } && { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$SHELL"; } 2>/dev/null; then : CONFIG_SHELL=$SHELL as_have_required=yes fi; } IFS=$as_save_IFS if test "x$CONFIG_SHELL" != x; then : # We cannot yet assume a decent shell, so we have to provide a # neutralization value for shells without unset; and this also # works around shells that cannot unset nonexistent variables. BASH_ENV=/dev/null ENV=/dev/null (unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV export CONFIG_SHELL exec "$CONFIG_SHELL" "$as_myself" ${1+"$@"} fi if test x$as_have_required = xno; then : $as_echo "$0: This script requires a shell more modern than all" $as_echo "$0: the shells that I found on your system." if test x${ZSH_VERSION+set} = xset ; then $as_echo "$0: In particular, zsh $ZSH_VERSION has bugs and should" $as_echo "$0: be upgraded to zsh 4.3.4 or later." else $as_echo "$0: Please tell bug-autoconf@gnu.org and $0: http://bugzilla.gnome.org/enter_bug.cgi?product=bonobo&component=libbonoboui $0: about your system, including any error possibly output $0: before this message. Then install a modern shell, or $0: manually run the script under such a shell if you do $0: have one." fi exit 1 fi fi fi SHELL=${CONFIG_SHELL-/bin/sh} export SHELL # Unset more variables known to interfere with behavior of common tools. CLICOLOR_FORCE= GREP_OPTIONS= unset CLICOLOR_FORCE GREP_OPTIONS ## --------------------- ## ## M4sh Shell Functions. ## ## --------------------- ## # as_fn_unset VAR # --------------- # Portably unset VAR. as_fn_unset () { { eval $1=; unset $1;} } as_unset=as_fn_unset # as_fn_set_status STATUS # ----------------------- # Set $? to STATUS, without forking. as_fn_set_status () { return $1 } # as_fn_set_status # as_fn_exit STATUS # ----------------- # Exit the shell with STATUS, even in a "trap 0" or "set -e" context. as_fn_exit () { set +e as_fn_set_status $1 exit $1 } # as_fn_exit # as_fn_mkdir_p # ------------- # Create "$as_dir" as a directory, including parents if necessary. as_fn_mkdir_p () { case $as_dir in #( -*) as_dir=./$as_dir;; esac test -d "$as_dir" || eval $as_mkdir_p || { as_dirs= while :; do case $as_dir in #( *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'( *) as_qdir=$as_dir;; esac as_dirs="'$as_qdir' $as_dirs" as_dir=`$as_dirname -- "$as_dir" || $as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ X"$as_dir" : 'X\(//\)[^/]' \| \ X"$as_dir" : 'X\(//\)$' \| \ X"$as_dir" : 'X\(/\)' \| . 2>/dev/null || $as_echo X"$as_dir" | sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/ q } /^X\(\/\/\)[^/].*/{ s//\1/ q } /^X\(\/\/\)$/{ s//\1/ q } /^X\(\/\).*/{ s//\1/ q } s/.*/./; q'` test -d "$as_dir" && break done test -z "$as_dirs" || eval "mkdir $as_dirs" } || test -d "$as_dir" || as_fn_error "cannot create directory $as_dir" } # as_fn_mkdir_p # as_fn_append VAR VALUE # ---------------------- # Append the text in VALUE to the end of the definition contained in VAR. Take # advantage of any shell optimizations that allow amortized linear growth over # repeated appends, instead of the typical quadratic growth present in naive # implementations. if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then : eval 'as_fn_append () { eval $1+=\$2 }' else as_fn_append () { eval $1=\$$1\$2 } fi # as_fn_append # as_fn_arith ARG... # ------------------ # Perform arithmetic evaluation on the ARGs, and store the result in the # global $as_val. Take advantage of shells that can avoid forks. The arguments # must be portable across $(()) and expr. if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then : eval 'as_fn_arith () { as_val=$(( $* )) }' else as_fn_arith () { as_val=`expr "$@" || test $? -eq 1` } fi # as_fn_arith # as_fn_error ERROR [LINENO LOG_FD] # --------------------------------- # Output "`basename $0`: error: ERROR" to stderr. If LINENO and LOG_FD are # provided, also output the error to LOG_FD, referencing LINENO. Then exit the # script with status $?, using 1 if that was 0. as_fn_error () { as_status=$?; test $as_status -eq 0 && as_status=1 if test "$3"; then as_lineno=${as_lineno-"$2"} as_lineno_stack=as_lineno_stack=$as_lineno_stack $as_echo "$as_me:${as_lineno-$LINENO}: error: $1" >&$3 fi $as_echo "$as_me: error: $1" >&2 as_fn_exit $as_status } # as_fn_error if expr a : '\(a\)' >/dev/null 2>&1 && test "X`expr 00001 : '.*\(...\)'`" = X001; then as_expr=expr else as_expr=false fi if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then as_basename=basename else as_basename=false fi if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then as_dirname=dirname else as_dirname=false fi as_me=`$as_basename -- "$0" || $as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ X"$0" : 'X\(//\)$' \| \ X"$0" : 'X\(/\)' \| . 2>/dev/null || $as_echo X/"$0" | sed '/^.*\/\([^/][^/]*\)\/*$/{ s//\1/ q } /^X\/\(\/\/\)$/{ s//\1/ q } /^X\/\(\/\).*/{ s//\1/ q } s/.*/./; q'` # Avoid depending upon Character Ranges. as_cr_letters='abcdefghijklmnopqrstuvwxyz' as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' as_cr_Letters=$as_cr_letters$as_cr_LETTERS as_cr_digits='0123456789' as_cr_alnum=$as_cr_Letters$as_cr_digits as_lineno_1=$LINENO as_lineno_1a=$LINENO as_lineno_2=$LINENO as_lineno_2a=$LINENO eval 'test "x$as_lineno_1'$as_run'" != "x$as_lineno_2'$as_run'" && test "x`expr $as_lineno_1'$as_run' + 1`" = "x$as_lineno_2'$as_run'"' || { # Blame Lee E. McMahon (1931-1989) for sed's syntax. :-) sed -n ' p /[$]LINENO/= ' <$as_myself | sed ' s/[$]LINENO.*/&-/ t lineno b :lineno N :loop s/[$]LINENO\([^'$as_cr_alnum'_].*\n\)\(.*\)/\2\1\2/ t loop s/-\n.*// ' >$as_me.lineno && chmod +x "$as_me.lineno" || { $as_echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2; as_fn_exit 1; } # Don't try to exec as it changes $[0], causing all sort of problems # (the dirname of $[0] is not the place where we might find the # original and so on. Autoconf is especially sensitive to this). . "./$as_me.lineno" # Exit status is that of the last command. exit } ECHO_C= ECHO_N= ECHO_T= case `echo -n x` in #((((( -n*) case `echo 'xy\c'` in *c*) ECHO_T=' ';; # ECHO_T is single tab character. xy) ECHO_C='\c';; *) echo `echo ksh88 bug on AIX 6.1` > /dev/null ECHO_T=' ';; esac;; *) ECHO_N='-n';; esac rm -f conf$$ conf$$.exe conf$$.file if test -d conf$$.dir; then rm -f conf$$.dir/conf$$.file else rm -f conf$$.dir mkdir conf$$.dir 2>/dev/null fi if (echo >conf$$.file) 2>/dev/null; then if ln -s conf$$.file conf$$ 2>/dev/null; then as_ln_s='ln -s' # ... but there are two gotchas: # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail. # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable. # In both cases, we have to default to `cp -p'. ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe || as_ln_s='cp -p' elif ln conf$$.file conf$$ 2>/dev/null; then as_ln_s=ln else as_ln_s='cp -p' fi else as_ln_s='cp -p' fi rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file rmdir conf$$.dir 2>/dev/null if mkdir -p . 2>/dev/null; then as_mkdir_p='mkdir -p "$as_dir"' else test -d ./-p && rmdir ./-p as_mkdir_p=false fi if test -x / >/dev/null 2>&1; then as_test_x='test -x' else if ls -dL / >/dev/null 2>&1; then as_ls_L_option=L else as_ls_L_option= fi as_test_x=' eval sh -c '\'' if test -d "$1"; then test -d "$1/."; else case $1 in #( -*)set "./$1";; esac; case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in #(( ???[sx]*):;;*)false;;esac;fi '\'' sh ' fi as_executable_p=$as_test_x # Sed expression to map a string onto a valid CPP name. as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" # Sed expression to map a string onto a valid variable name. as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" # Check that we are running under the correct shell. SHELL=${CONFIG_SHELL-/bin/sh} case X$lt_ECHO in X*--fallback-echo) # Remove one level of quotation (which was required for Make). ECHO=`echo "$lt_ECHO" | sed 's,\\\\\$\\$0,'$0','` ;; esac ECHO=${lt_ECHO-echo} if test "X$1" = X--no-reexec; then # Discard the --no-reexec flag, and continue. shift elif test "X$1" = X--fallback-echo; then # Avoid inline document here, it may be left over : elif test "X`{ $ECHO '\t'; } 2>/dev/null`" = 'X\t' ; then # Yippee, $ECHO works! : else # Restart under the correct shell. exec $SHELL "$0" --no-reexec ${1+"$@"} fi if test "X$1" = X--fallback-echo; then # used as fallback echo shift cat <<_LT_EOF $* _LT_EOF exit 0 fi # The HP-UX ksh and POSIX shell print the target directory to stdout # if CDPATH is set. (unset CDPATH) >/dev/null 2>&1 && unset CDPATH if test -z "$lt_ECHO"; then if test "X${echo_test_string+set}" != Xset; then # find a string as large as possible, as long as the shell can cope with it for cmd in 'sed 50q "$0"' 'sed 20q "$0"' 'sed 10q "$0"' 'sed 2q "$0"' 'echo test'; do # expected sizes: less than 2Kb, 1Kb, 512 bytes, 16 bytes, ... if { echo_test_string=`eval $cmd`; } 2>/dev/null && { test "X$echo_test_string" = "X$echo_test_string"; } 2>/dev/null then break fi done fi if test "X`{ $ECHO '\t'; } 2>/dev/null`" = 'X\t' && echo_testing_string=`{ $ECHO "$echo_test_string"; } 2>/dev/null` && test "X$echo_testing_string" = "X$echo_test_string"; then : else # The Solaris, AIX, and Digital Unix default echo programs unquote # backslashes. This makes it impossible to quote backslashes using # echo "$something" | sed 's/\\/\\\\/g' # # So, first we look for a working echo in the user's PATH. lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR for dir in $PATH /usr/ucb; do IFS="$lt_save_ifs" if (test -f $dir/echo || test -f $dir/echo$ac_exeext) && test "X`($dir/echo '\t') 2>/dev/null`" = 'X\t' && echo_testing_string=`($dir/echo "$echo_test_string") 2>/dev/null` && test "X$echo_testing_string" = "X$echo_test_string"; then ECHO="$dir/echo" break fi done IFS="$lt_save_ifs" if test "X$ECHO" = Xecho; then # We didn't find a better echo, so look for alternatives. if test "X`{ print -r '\t'; } 2>/dev/null`" = 'X\t' && echo_testing_string=`{ print -r "$echo_test_string"; } 2>/dev/null` && test "X$echo_testing_string" = "X$echo_test_string"; then # This shell has a builtin print -r that does the trick. ECHO='print -r' elif { test -f /bin/ksh || test -f /bin/ksh$ac_exeext; } && test "X$CONFIG_SHELL" != X/bin/ksh; then # If we have ksh, try running configure again with it. ORIGINAL_CONFIG_SHELL=${CONFIG_SHELL-/bin/sh} export ORIGINAL_CONFIG_SHELL CONFIG_SHELL=/bin/ksh export CONFIG_SHELL exec $CONFIG_SHELL "$0" --no-reexec ${1+"$@"} else # Try using printf. ECHO='printf %s\n' if test "X`{ $ECHO '\t'; } 2>/dev/null`" = 'X\t' && echo_testing_string=`{ $ECHO "$echo_test_string"; } 2>/dev/null` && test "X$echo_testing_string" = "X$echo_test_string"; then # Cool, printf works : elif echo_testing_string=`($ORIGINAL_CONFIG_SHELL "$0" --fallback-echo '\t') 2>/dev/null` && test "X$echo_testing_string" = 'X\t' && echo_testing_string=`($ORIGINAL_CONFIG_SHELL "$0" --fallback-echo "$echo_test_string") 2>/dev/null` && test "X$echo_testing_string" = "X$echo_test_string"; then CONFIG_SHELL=$ORIGINAL_CONFIG_SHELL export CONFIG_SHELL SHELL="$CONFIG_SHELL" export SHELL ECHO="$CONFIG_SHELL $0 --fallback-echo" elif echo_testing_string=`($CONFIG_SHELL "$0" --fallback-echo '\t') 2>/dev/null` && test "X$echo_testing_string" = 'X\t' && echo_testing_string=`($CONFIG_SHELL "$0" --fallback-echo "$echo_test_string") 2>/dev/null` && test "X$echo_testing_string" = "X$echo_test_string"; then ECHO="$CONFIG_SHELL $0 --fallback-echo" else # maybe with a smaller string... prev=: for cmd in 'echo test' 'sed 2q "$0"' 'sed 10q "$0"' 'sed 20q "$0"' 'sed 50q "$0"'; do if { test "X$echo_test_string" = "X`eval $cmd`"; } 2>/dev/null then break fi prev="$cmd" done if test "$prev" != 'sed 50q "$0"'; then echo_test_string=`eval $prev` export echo_test_string exec ${ORIGINAL_CONFIG_SHELL-${CONFIG_SHELL-/bin/sh}} "$0" ${1+"$@"} else # Oops. We lost completely, so just stick with echo. ECHO=echo fi fi fi fi fi fi # Copy echo and quote the copy suitably for passing to libtool from # the Makefile, instead of quoting the original, which is used later. lt_ECHO=$ECHO if test "X$lt_ECHO" = "X$CONFIG_SHELL $0 --fallback-echo"; then lt_ECHO="$CONFIG_SHELL \\\$\$0 --fallback-echo" fi test -n "$DJDIR" || exec 7<&0 &1 # Name of the host. # hostname on some systems (SVR3.2, Linux) returns a bogus exit status, # so uname gets run too. ac_hostname=`(hostname || uname -n) 2>/dev/null | sed 1q` # # Initializations. # ac_default_prefix=/usr/local ac_clean_files= ac_config_libobj_dir=. LIBOBJS= cross_compiling=no subdirs= MFLAGS= MAKEFLAGS= # Identity of this package. PACKAGE_NAME='libbonoboui' PACKAGE_TARNAME='libbonoboui' PACKAGE_VERSION='2.24.5' PACKAGE_STRING='libbonoboui 2.24.5' PACKAGE_BUGREPORT='http://bugzilla.gnome.org/enter_bug.cgi?product=bonobo&component=libbonoboui' PACKAGE_URL='' # Factoring default headers for most tests. ac_includes_default="\ #include #ifdef HAVE_SYS_TYPES_H # include #endif #ifdef HAVE_SYS_STAT_H # include #endif #ifdef STDC_HEADERS # include # include #else # ifdef HAVE_STDLIB_H # include # endif #endif #ifdef HAVE_STRING_H # if !defined STDC_HEADERS && defined HAVE_MEMORY_H # include # endif # include #endif #ifdef HAVE_STRINGS_H # include #endif #ifdef HAVE_INTTYPES_H # include #endif #ifdef HAVE_STDINT_H # include #endif #ifdef HAVE_UNISTD_H # include #endif" ac_subst_vars='am__EXEEXT_FALSE am__EXEEXT_TRUE LTLIBOBJS LIBOBJS GTK_DOC_USE_REBASE_FALSE GTK_DOC_USE_REBASE_TRUE GTK_DOC_USE_LIBTOOL_FALSE GTK_DOC_USE_LIBTOOL_TRUE GTK_DOC_BUILD_PDF_FALSE GTK_DOC_BUILD_PDF_TRUE GTK_DOC_BUILD_HTML_FALSE GTK_DOC_BUILD_HTML_TRUE ENABLE_GTK_DOC_FALSE ENABLE_GTK_DOC_TRUE HTML_DIR GTKDOC_MKPDF GTKDOC_REBASE GTKDOC_CHECK GLIB_MKENUMS GLIB_GENMARSHAL BONOBOUI_SINGLE_INCLUDES BONOBOUI_GLADE_LIBS BONOBOUI_GLADE_CFLAGS BONOBOUI_LIBS BONOBOUI_CFLAGS POPT_LIBS X_EXTRA_LIBS X_LIBS X_PRE_LIBS X_CFLAGS XMKMF PKG_CONFIG MKINSTALLDIRS POSUB POFILES PO_IN_DATADIR_FALSE PO_IN_DATADIR_TRUE INTLLIBS INSTOBJEXT GMOFILES CATOBJEXT CATALOGS MSGFMT_OPTS GETTEXT_PACKAGE DATADIRNAME ALL_LINGUAS INTLTOOL_PERL GMSGFMT MSGFMT MSGMERGE XGETTEXT INTLTOOL_POLICY_RULE INTLTOOL_SERVICE_RULE INTLTOOL_THEME_RULE INTLTOOL_SCHEMAS_RULE INTLTOOL_CAVES_RULE INTLTOOL_XML_NOMERGE_RULE INTLTOOL_XML_RULE INTLTOOL_KBD_RULE INTLTOOL_XAM_RULE INTLTOOL_UI_RULE INTLTOOL_SOUNDLIST_RULE INTLTOOL_SHEET_RULE INTLTOOL_SERVER_RULE INTLTOOL_PONG_RULE INTLTOOL_OAF_RULE INTLTOOL_PROP_RULE INTLTOOL_KEYS_RULE INTLTOOL_DIRECTORY_RULE INTLTOOL_DESKTOP_RULE INTLTOOL_EXTRACT INTLTOOL_MERGE INTLTOOL_UPDATE USE_NLS WARN_CFLAGS ACLOCAL_AMFLAGS PATH_TO_XRDB YFLAGS YACC OTOOL64 OTOOL LIPO NMEDIT DSYMUTIL lt_ECHO RANLIB AR LN_S NM ac_ct_DUMPBIN DUMPBIN LD FGREP SED LIBTOOL OBJDUMP DLLTOOL AS EGREP GREP CPP am__fastdepCC_FALSE am__fastdepCC_TRUE CCDEPMODE AMDEPBACKSLASH AMDEP_FALSE AMDEP_TRUE am__quote am__include DEPDIR OBJEXT EXEEXT ac_ct_CC CPPFLAGS LDFLAGS CFLAGS CC host_os host_vendor host_cpu host build_os build_vendor build_cpu build MAINT MAINTAINER_MODE_FALSE MAINTAINER_MODE_TRUE am__untar am__tar AMTAR am__leading_dot SET_MAKE AWK mkdir_p MKDIR_P INSTALL_STRIP_PROGRAM STRIP install_sh MAKEINFO AUTOHEADER AUTOMAKE AUTOCONF ACLOCAL VERSION PACKAGE CYGPATH_W am__isrc INSTALL_DATA INSTALL_SCRIPT INSTALL_PROGRAM target_alias host_alias build_alias LIBS ECHO_T ECHO_N ECHO_C DEFS mandir localedir libdir psdir pdfdir dvidir htmldir infodir docdir oldincludedir includedir localstatedir sharedstatedir sysconfdir datadir datarootdir libexecdir sbindir bindir program_transform_name prefix exec_prefix PACKAGE_URL PACKAGE_BUGREPORT PACKAGE_STRING PACKAGE_VERSION PACKAGE_TARNAME PACKAGE_NAME PATH_SEPARATOR SHELL' ac_subst_files='' ac_user_opts=' enable_option_checking enable_maintainer_mode enable_dependency_tracking enable_shared enable_static with_pic enable_fast_install with_gnu_ld enable_libtool_lock enable_debug enable_compile_warnings enable_iso_c enable_nls with_x with_html_dir enable_gtk_doc enable_gtk_doc_html enable_gtk_doc_pdf ' ac_precious_vars='build_alias host_alias target_alias CC CFLAGS LDFLAGS LIBS CPPFLAGS CPP YACC YFLAGS XMKMF PKG_CONFIG BONOBOUI_CFLAGS BONOBOUI_LIBS BONOBOUI_GLADE_CFLAGS BONOBOUI_GLADE_LIBS' # Initialize some variables set by options. ac_init_help= ac_init_version=false ac_unrecognized_opts= ac_unrecognized_sep= # The variables have the same names as the options, with # dashes changed to underlines. cache_file=/dev/null exec_prefix=NONE no_create= no_recursion= prefix=NONE program_prefix=NONE program_suffix=NONE program_transform_name=s,x,x, silent= site= srcdir= verbose= x_includes=NONE x_libraries=NONE # Installation directory options. # These are left unexpanded so users can "make install exec_prefix=/foo" # and all the variables that are supposed to be based on exec_prefix # by default will actually change. # Use braces instead of parens because sh, perl, etc. also accept them. # (The list follows the same order as the GNU Coding Standards.) bindir='${exec_prefix}/bin' sbindir='${exec_prefix}/sbin' libexecdir='${exec_prefix}/libexec' datarootdir='${prefix}/share' datadir='${datarootdir}' sysconfdir='${prefix}/etc' sharedstatedir='${prefix}/com' localstatedir='${prefix}/var' includedir='${prefix}/include' oldincludedir='/usr/include' docdir='${datarootdir}/doc/${PACKAGE_TARNAME}' infodir='${datarootdir}/info' htmldir='${docdir}' dvidir='${docdir}' pdfdir='${docdir}' psdir='${docdir}' libdir='${exec_prefix}/lib' localedir='${datarootdir}/locale' mandir='${datarootdir}/man' ac_prev= ac_dashdash= for ac_option do # If the previous option needs an argument, assign it. if test -n "$ac_prev"; then eval $ac_prev=\$ac_option ac_prev= continue fi case $ac_option in *=*) ac_optarg=`expr "X$ac_option" : '[^=]*=\(.*\)'` ;; *) ac_optarg=yes ;; esac # Accept the important Cygnus configure options, so we can diagnose typos. case $ac_dashdash$ac_option in --) ac_dashdash=yes ;; -bindir | --bindir | --bindi | --bind | --bin | --bi) ac_prev=bindir ;; -bindir=* | --bindir=* | --bindi=* | --bind=* | --bin=* | --bi=*) bindir=$ac_optarg ;; -build | --build | --buil | --bui | --bu) ac_prev=build_alias ;; -build=* | --build=* | --buil=* | --bui=* | --bu=*) build_alias=$ac_optarg ;; -cache-file | --cache-file | --cache-fil | --cache-fi \ | --cache-f | --cache- | --cache | --cach | --cac | --ca | --c) ac_prev=cache_file ;; -cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \ | --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* | --c=*) cache_file=$ac_optarg ;; --config-cache | -C) cache_file=config.cache ;; -datadir | --datadir | --datadi | --datad) ac_prev=datadir ;; -datadir=* | --datadir=* | --datadi=* | --datad=*) datadir=$ac_optarg ;; -datarootdir | --datarootdir | --datarootdi | --datarootd | --dataroot \ | --dataroo | --dataro | --datar) ac_prev=datarootdir ;; -datarootdir=* | --datarootdir=* | --datarootdi=* | --datarootd=* \ | --dataroot=* | --dataroo=* | --dataro=* | --datar=*) datarootdir=$ac_optarg ;; -disable-* | --disable-*) ac_useropt=`expr "x$ac_option" : 'x-*disable-\(.*\)'` # Reject names that are not valid shell variable names. expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && as_fn_error "invalid feature name: $ac_useropt" ac_useropt_orig=$ac_useropt ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` case $ac_user_opts in *" "enable_$ac_useropt" "*) ;; *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--disable-$ac_useropt_orig" ac_unrecognized_sep=', ';; esac eval enable_$ac_useropt=no ;; -docdir | --docdir | --docdi | --doc | --do) ac_prev=docdir ;; -docdir=* | --docdir=* | --docdi=* | --doc=* | --do=*) docdir=$ac_optarg ;; -dvidir | --dvidir | --dvidi | --dvid | --dvi | --dv) ac_prev=dvidir ;; -dvidir=* | --dvidir=* | --dvidi=* | --dvid=* | --dvi=* | --dv=*) dvidir=$ac_optarg ;; -enable-* | --enable-*) ac_useropt=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'` # Reject names that are not valid shell variable names. expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && as_fn_error "invalid feature name: $ac_useropt" ac_useropt_orig=$ac_useropt ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` case $ac_user_opts in *" "enable_$ac_useropt" "*) ;; *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--enable-$ac_useropt_orig" ac_unrecognized_sep=', ';; esac eval enable_$ac_useropt=\$ac_optarg ;; -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \ | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \ | --exec | --exe | --ex) ac_prev=exec_prefix ;; -exec-prefix=* | --exec_prefix=* | --exec-prefix=* | --exec-prefi=* \ | --exec-pref=* | --exec-pre=* | --exec-pr=* | --exec-p=* | --exec-=* \ | --exec=* | --exe=* | --ex=*) exec_prefix=$ac_optarg ;; -gas | --gas | --ga | --g) # Obsolete; use --with-gas. with_gas=yes ;; -help | --help | --hel | --he | -h) ac_init_help=long ;; -help=r* | --help=r* | --hel=r* | --he=r* | -hr*) ac_init_help=recursive ;; -help=s* | --help=s* | --hel=s* | --he=s* | -hs*) ac_init_help=short ;; -host | --host | --hos | --ho) ac_prev=host_alias ;; -host=* | --host=* | --hos=* | --ho=*) host_alias=$ac_optarg ;; -htmldir | --htmldir | --htmldi | --htmld | --html | --htm | --ht) ac_prev=htmldir ;; -htmldir=* | --htmldir=* | --htmldi=* | --htmld=* | --html=* | --htm=* \ | --ht=*) htmldir=$ac_optarg ;; -includedir | --includedir | --includedi | --included | --include \ | --includ | --inclu | --incl | --inc) ac_prev=includedir ;; -includedir=* | --includedir=* | --includedi=* | --included=* | --include=* \ | --includ=* | --inclu=* | --incl=* | --inc=*) includedir=$ac_optarg ;; -infodir | --infodir | --infodi | --infod | --info | --inf) ac_prev=infodir ;; -infodir=* | --infodir=* | --infodi=* | --infod=* | --info=* | --inf=*) infodir=$ac_optarg ;; -libdir | --libdir | --libdi | --libd) ac_prev=libdir ;; -libdir=* | --libdir=* | --libdi=* | --libd=*) libdir=$ac_optarg ;; -libexecdir | --libexecdir | --libexecdi | --libexecd | --libexec \ | --libexe | --libex | --libe) ac_prev=libexecdir ;; -libexecdir=* | --libexecdir=* | --libexecdi=* | --libexecd=* | --libexec=* \ | --libexe=* | --libex=* | --libe=*) libexecdir=$ac_optarg ;; -localedir | --localedir | --localedi | --localed | --locale) ac_prev=localedir ;; -localedir=* | --localedir=* | --localedi=* | --localed=* | --locale=*) localedir=$ac_optarg ;; -localstatedir | --localstatedir | --localstatedi | --localstated \ | --localstate | --localstat | --localsta | --localst | --locals) ac_prev=localstatedir ;; -localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \ | --localstate=* | --localstat=* | --localsta=* | --localst=* | --locals=*) localstatedir=$ac_optarg ;; -mandir | --mandir | --mandi | --mand | --man | --ma | --m) ac_prev=mandir ;; -mandir=* | --mandir=* | --mandi=* | --mand=* | --man=* | --ma=* | --m=*) mandir=$ac_optarg ;; -nfp | --nfp | --nf) # Obsolete; use --without-fp. with_fp=no ;; -no-create | --no-create | --no-creat | --no-crea | --no-cre \ | --no-cr | --no-c | -n) no_create=yes ;; -no-recursion | --no-recursion | --no-recursio | --no-recursi \ | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r) no_recursion=yes ;; -oldincludedir | --oldincludedir | --oldincludedi | --oldincluded \ | --oldinclude | --oldinclud | --oldinclu | --oldincl | --oldinc \ | --oldin | --oldi | --old | --ol | --o) ac_prev=oldincludedir ;; -oldincludedir=* | --oldincludedir=* | --oldincludedi=* | --oldincluded=* \ | --oldinclude=* | --oldinclud=* | --oldinclu=* | --oldincl=* | --oldinc=* \ | --oldin=* | --oldi=* | --old=* | --ol=* | --o=*) oldincludedir=$ac_optarg ;; -prefix | --prefix | --prefi | --pref | --pre | --pr | --p) ac_prev=prefix ;; -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*) prefix=$ac_optarg ;; -program-prefix | --program-prefix | --program-prefi | --program-pref \ | --program-pre | --program-pr | --program-p) ac_prev=program_prefix ;; -program-prefix=* | --program-prefix=* | --program-prefi=* \ | --program-pref=* | --program-pre=* | --program-pr=* | --program-p=*) program_prefix=$ac_optarg ;; -program-suffix | --program-suffix | --program-suffi | --program-suff \ | --program-suf | --program-su | --program-s) ac_prev=program_suffix ;; -program-suffix=* | --program-suffix=* | --program-suffi=* \ | --program-suff=* | --program-suf=* | --program-su=* | --program-s=*) program_suffix=$ac_optarg ;; -program-transform-name | --program-transform-name \ | --program-transform-nam | --program-transform-na \ | --program-transform-n | --program-transform- \ | --program-transform | --program-transfor \ | --program-transfo | --program-transf \ | --program-trans | --program-tran \ | --progr-tra | --program-tr | --program-t) ac_prev=program_transform_name ;; -program-transform-name=* | --program-transform-name=* \ | --program-transform-nam=* | --program-transform-na=* \ | --program-transform-n=* | --program-transform-=* \ | --program-transform=* | --program-transfor=* \ | --program-transfo=* | --program-transf=* \ | --program-trans=* | --program-tran=* \ | --progr-tra=* | --program-tr=* | --program-t=*) program_transform_name=$ac_optarg ;; -pdfdir | --pdfdir | --pdfdi | --pdfd | --pdf | --pd) ac_prev=pdfdir ;; -pdfdir=* | --pdfdir=* | --pdfdi=* | --pdfd=* | --pdf=* | --pd=*) pdfdir=$ac_optarg ;; -psdir | --psdir | --psdi | --psd | --ps) ac_prev=psdir ;; -psdir=* | --psdir=* | --psdi=* | --psd=* | --ps=*) psdir=$ac_optarg ;; -q | -quiet | --quiet | --quie | --qui | --qu | --q \ | -silent | --silent | --silen | --sile | --sil) silent=yes ;; -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb) ac_prev=sbindir ;; -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \ | --sbi=* | --sb=*) sbindir=$ac_optarg ;; -sharedstatedir | --sharedstatedir | --sharedstatedi \ | --sharedstated | --sharedstate | --sharedstat | --sharedsta \ | --sharedst | --shareds | --shared | --share | --shar \ | --sha | --sh) ac_prev=sharedstatedir ;; -sharedstatedir=* | --sharedstatedir=* | --sharedstatedi=* \ | --sharedstated=* | --sharedstate=* | --sharedstat=* | --sharedsta=* \ | --sharedst=* | --shareds=* | --shared=* | --share=* | --shar=* \ | --sha=* | --sh=*) sharedstatedir=$ac_optarg ;; -site | --site | --sit) ac_prev=site ;; -site=* | --site=* | --sit=*) site=$ac_optarg ;; -srcdir | --srcdir | --srcdi | --srcd | --src | --sr) ac_prev=srcdir ;; -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*) srcdir=$ac_optarg ;; -sysconfdir | --sysconfdir | --sysconfdi | --sysconfd | --sysconf \ | --syscon | --sysco | --sysc | --sys | --sy) ac_prev=sysconfdir ;; -sysconfdir=* | --sysconfdir=* | --sysconfdi=* | --sysconfd=* | --sysconf=* \ | --syscon=* | --sysco=* | --sysc=* | --sys=* | --sy=*) sysconfdir=$ac_optarg ;; -target | --target | --targe | --targ | --tar | --ta | --t) ac_prev=target_alias ;; -target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*) target_alias=$ac_optarg ;; -v | -verbose | --verbose | --verbos | --verbo | --verb) verbose=yes ;; -version | --version | --versio | --versi | --vers | -V) ac_init_version=: ;; -with-* | --with-*) ac_useropt=`expr "x$ac_option" : 'x-*with-\([^=]*\)'` # Reject names that are not valid shell variable names. expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && as_fn_error "invalid package name: $ac_useropt" ac_useropt_orig=$ac_useropt ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` case $ac_user_opts in *" "with_$ac_useropt" "*) ;; *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--with-$ac_useropt_orig" ac_unrecognized_sep=', ';; esac eval with_$ac_useropt=\$ac_optarg ;; -without-* | --without-*) ac_useropt=`expr "x$ac_option" : 'x-*without-\(.*\)'` # Reject names that are not valid shell variable names. expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && as_fn_error "invalid package name: $ac_useropt" ac_useropt_orig=$ac_useropt ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` case $ac_user_opts in *" "with_$ac_useropt" "*) ;; *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--without-$ac_useropt_orig" ac_unrecognized_sep=', ';; esac eval with_$ac_useropt=no ;; --x) # Obsolete; use --with-x. with_x=yes ;; -x-includes | --x-includes | --x-include | --x-includ | --x-inclu \ | --x-incl | --x-inc | --x-in | --x-i) ac_prev=x_includes ;; -x-includes=* | --x-includes=* | --x-include=* | --x-includ=* | --x-inclu=* \ | --x-incl=* | --x-inc=* | --x-in=* | --x-i=*) x_includes=$ac_optarg ;; -x-libraries | --x-libraries | --x-librarie | --x-librari \ | --x-librar | --x-libra | --x-libr | --x-lib | --x-li | --x-l) ac_prev=x_libraries ;; -x-libraries=* | --x-libraries=* | --x-librarie=* | --x-librari=* \ | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*) x_libraries=$ac_optarg ;; -*) as_fn_error "unrecognized option: \`$ac_option' Try \`$0 --help' for more information." ;; *=*) ac_envvar=`expr "x$ac_option" : 'x\([^=]*\)='` # Reject names that are not valid shell variable names. case $ac_envvar in #( '' | [0-9]* | *[!_$as_cr_alnum]* ) as_fn_error "invalid variable name: \`$ac_envvar'" ;; esac eval $ac_envvar=\$ac_optarg export $ac_envvar ;; *) # FIXME: should be removed in autoconf 3.0. $as_echo "$as_me: WARNING: you should use --build, --host, --target" >&2 expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null && $as_echo "$as_me: WARNING: invalid host type: $ac_option" >&2 : ${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option} ;; esac done if test -n "$ac_prev"; then ac_option=--`echo $ac_prev | sed 's/_/-/g'` as_fn_error "missing argument to $ac_option" fi if test -n "$ac_unrecognized_opts"; then case $enable_option_checking in no) ;; fatal) as_fn_error "unrecognized options: $ac_unrecognized_opts" ;; *) $as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2 ;; esac fi # Check all directory arguments for consistency. for ac_var in exec_prefix prefix bindir sbindir libexecdir datarootdir \ datadir sysconfdir sharedstatedir localstatedir includedir \ oldincludedir docdir infodir htmldir dvidir pdfdir psdir \ libdir localedir mandir do eval ac_val=\$$ac_var # Remove trailing slashes. case $ac_val in */ ) ac_val=`expr "X$ac_val" : 'X\(.*[^/]\)' \| "X$ac_val" : 'X\(.*\)'` eval $ac_var=\$ac_val;; esac # Be sure to have absolute directory names. case $ac_val in [\\/$]* | ?:[\\/]* ) continue;; NONE | '' ) case $ac_var in *prefix ) continue;; esac;; esac as_fn_error "expected an absolute directory name for --$ac_var: $ac_val" done # There might be people who depend on the old broken behavior: `$host' # used to hold the argument of --host etc. # FIXME: To remove some day. build=$build_alias host=$host_alias target=$target_alias # FIXME: To remove some day. if test "x$host_alias" != x; then if test "x$build_alias" = x; then cross_compiling=maybe $as_echo "$as_me: WARNING: If you wanted to set the --build type, don't use --host. If a cross compiler is detected then cross compile mode will be used." >&2 elif test "x$build_alias" != "x$host_alias"; then cross_compiling=yes fi fi ac_tool_prefix= test -n "$host_alias" && ac_tool_prefix=$host_alias- test "$silent" = yes && exec 6>/dev/null ac_pwd=`pwd` && test -n "$ac_pwd" && ac_ls_di=`ls -di .` && ac_pwd_ls_di=`cd "$ac_pwd" && ls -di .` || as_fn_error "working directory cannot be determined" test "X$ac_ls_di" = "X$ac_pwd_ls_di" || as_fn_error "pwd does not report name of working directory" # Find the source files, if location was not specified. if test -z "$srcdir"; then ac_srcdir_defaulted=yes # Try the directory containing this script, then the parent directory. ac_confdir=`$as_dirname -- "$as_myself" || $as_expr X"$as_myself" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ X"$as_myself" : 'X\(//\)[^/]' \| \ X"$as_myself" : 'X\(//\)$' \| \ X"$as_myself" : 'X\(/\)' \| . 2>/dev/null || $as_echo X"$as_myself" | sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/ q } /^X\(\/\/\)[^/].*/{ s//\1/ q } /^X\(\/\/\)$/{ s//\1/ q } /^X\(\/\).*/{ s//\1/ q } s/.*/./; q'` srcdir=$ac_confdir if test ! -r "$srcdir/$ac_unique_file"; then srcdir=.. fi else ac_srcdir_defaulted=no fi if test ! -r "$srcdir/$ac_unique_file"; then test "$ac_srcdir_defaulted" = yes && srcdir="$ac_confdir or .." as_fn_error "cannot find sources ($ac_unique_file) in $srcdir" fi ac_msg="sources are in $srcdir, but \`cd $srcdir' does not work" ac_abs_confdir=`( cd "$srcdir" && test -r "./$ac_unique_file" || as_fn_error "$ac_msg" pwd)` # When building in place, set srcdir=. if test "$ac_abs_confdir" = "$ac_pwd"; then srcdir=. fi # Remove unnecessary trailing slashes from srcdir. # Double slashes in file names in object file debugging info # mess up M-x gdb in Emacs. case $srcdir in */) srcdir=`expr "X$srcdir" : 'X\(.*[^/]\)' \| "X$srcdir" : 'X\(.*\)'`;; esac for ac_var in $ac_precious_vars; do eval ac_env_${ac_var}_set=\${${ac_var}+set} eval ac_env_${ac_var}_value=\$${ac_var} eval ac_cv_env_${ac_var}_set=\${${ac_var}+set} eval ac_cv_env_${ac_var}_value=\$${ac_var} done # # Report the --help message. # if test "$ac_init_help" = "long"; then # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF \`configure' configures libbonoboui 2.24.5 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... To assign environment variables (e.g., CC, CFLAGS...), specify them as VAR=VALUE. See below for descriptions of some of the useful variables. Defaults for the options are specified in brackets. Configuration: -h, --help display this help and exit --help=short display options specific to this package --help=recursive display the short help of all the included packages -V, --version display version information and exit -q, --quiet, --silent do not print \`checking...' messages --cache-file=FILE cache test results in FILE [disabled] -C, --config-cache alias for \`--cache-file=config.cache' -n, --no-create do not create output files --srcdir=DIR find the sources in DIR [configure dir or \`..'] Installation directories: --prefix=PREFIX install architecture-independent files in PREFIX [$ac_default_prefix] --exec-prefix=EPREFIX install architecture-dependent files in EPREFIX [PREFIX] By default, \`make install' will install all the files in \`$ac_default_prefix/bin', \`$ac_default_prefix/lib' etc. You can specify an installation prefix other than \`$ac_default_prefix' using \`--prefix', for instance \`--prefix=\$HOME'. For better control, use the options below. Fine tuning of the installation directories: --bindir=DIR user executables [EPREFIX/bin] --sbindir=DIR system admin executables [EPREFIX/sbin] --libexecdir=DIR program executables [EPREFIX/libexec] --sysconfdir=DIR read-only single-machine data [PREFIX/etc] --sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com] --localstatedir=DIR modifiable single-machine data [PREFIX/var] --libdir=DIR object code libraries [EPREFIX/lib] --includedir=DIR C header files [PREFIX/include] --oldincludedir=DIR C header files for non-gcc [/usr/include] --datarootdir=DIR read-only arch.-independent data root [PREFIX/share] --datadir=DIR read-only architecture-independent data [DATAROOTDIR] --infodir=DIR info documentation [DATAROOTDIR/info] --localedir=DIR locale-dependent data [DATAROOTDIR/locale] --mandir=DIR man documentation [DATAROOTDIR/man] --docdir=DIR documentation root [DATAROOTDIR/doc/libbonoboui] --htmldir=DIR html documentation [DOCDIR] --dvidir=DIR dvi documentation [DOCDIR] --pdfdir=DIR pdf documentation [DOCDIR] --psdir=DIR ps documentation [DOCDIR] _ACEOF cat <<\_ACEOF Program names: --program-prefix=PREFIX prepend PREFIX to installed program names --program-suffix=SUFFIX append SUFFIX to installed program names --program-transform-name=PROGRAM run sed PROGRAM on installed program names X features: --x-includes=DIR X include files are in DIR --x-libraries=DIR X library files are in DIR System types: --build=BUILD configure for building on BUILD [guessed] --host=HOST cross-compile to build programs to run on HOST [BUILD] _ACEOF fi if test -n "$ac_init_help"; then case $ac_init_help in short | recursive ) echo "Configuration of libbonoboui 2.24.5:";; esac cat <<\_ACEOF Optional Features: --disable-option-checking ignore unrecognized --enable/--with options --disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no) --enable-FEATURE[=ARG] include FEATURE [ARG=yes] --enable-maintainer-mode enable make rules and dependencies not useful (and sometimes confusing) to the casual installer --disable-dependency-tracking speeds up one-time build --enable-dependency-tracking do not reject slow dependency extractors --enable-shared[=PKGS] build shared libraries [default=yes] --enable-static[=PKGS] build static libraries [default=yes] --enable-fast-install[=PKGS] optimize for fast installation [default=yes] --disable-libtool-lock avoid locking (might break parallel builds) --enable-debug turn on debugging --enable-compile-warnings=[no/minimum/yes/maximum/error] Turn on compiler warnings --enable-iso-c Try to warn if code is not ISO C --disable-nls do not use Native Language Support --enable-gtk-doc use gtk-doc to build documentation [[default=no]] --enable-gtk-doc-html build documentation in html format [[default=yes]] --enable-gtk-doc-pdf build documentation in pdf format [[default=no]] Optional Packages: --with-PACKAGE[=ARG] use PACKAGE [ARG=yes] --without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no) --with-pic try to use only PIC/non-PIC objects [default=use both] --with-gnu-ld assume the C compiler uses GNU ld [default=no] --with-x use the X Window System --with-html-dir=PATH path to installed docs Some influential environment variables: CC C compiler command CFLAGS C compiler flags LDFLAGS linker flags, e.g. -L if you have libraries in a nonstandard directory LIBS libraries to pass to the linker, e.g. -l CPPFLAGS (Objective) C/C++ preprocessor flags, e.g. -I if you have headers in a nonstandard directory CPP C preprocessor YACC The `Yet Another C Compiler' implementation to use. Defaults to the first program found out of: `bison -y', `byacc', `yacc'. YFLAGS The list of arguments that will be passed by default to $YACC. This script will default YFLAGS to the empty string to avoid a default value of `-d' given by some make applications. XMKMF Path to xmkmf, Makefile generator for X Window System PKG_CONFIG path to pkg-config utility BONOBOUI_CFLAGS C compiler flags for BONOBOUI, overriding pkg-config BONOBOUI_LIBS linker flags for BONOBOUI, overriding pkg-config BONOBOUI_GLADE_CFLAGS C compiler flags for BONOBOUI_GLADE, overriding pkg-config BONOBOUI_GLADE_LIBS linker flags for BONOBOUI_GLADE, overriding pkg-config Use these variables to override the choices made by `configure' or to help it to find libraries and programs with nonstandard names/locations. Report bugs to . _ACEOF ac_status=$? fi if test "$ac_init_help" = "recursive"; then # If there are subdirs, report their specific --help. for ac_dir in : $ac_subdirs_all; do test "x$ac_dir" = x: && continue test -d "$ac_dir" || { cd "$srcdir" && ac_pwd=`pwd` && srcdir=. && test -d "$ac_dir"; } || continue ac_builddir=. case "$ac_dir" in .) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;; *) ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'` # A ".." for each directory in $ac_dir_suffix. ac_top_builddir_sub=`$as_echo "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'` case $ac_top_builddir_sub in "") ac_top_builddir_sub=. ac_top_build_prefix= ;; *) ac_top_build_prefix=$ac_top_builddir_sub/ ;; esac ;; esac ac_abs_top_builddir=$ac_pwd ac_abs_builddir=$ac_pwd$ac_dir_suffix # for backward compatibility: ac_top_builddir=$ac_top_build_prefix case $srcdir in .) # We are building in place. ac_srcdir=. ac_top_srcdir=$ac_top_builddir_sub ac_abs_top_srcdir=$ac_pwd ;; [\\/]* | ?:[\\/]* ) # Absolute name. ac_srcdir=$srcdir$ac_dir_suffix; ac_top_srcdir=$srcdir ac_abs_top_srcdir=$srcdir ;; *) # Relative name. ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix ac_top_srcdir=$ac_top_build_prefix$srcdir ac_abs_top_srcdir=$ac_pwd/$srcdir ;; esac ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix cd "$ac_dir" || { ac_status=$?; continue; } # Check for guested configure. if test -f "$ac_srcdir/configure.gnu"; then echo && $SHELL "$ac_srcdir/configure.gnu" --help=recursive elif test -f "$ac_srcdir/configure"; then echo && $SHELL "$ac_srcdir/configure" --help=recursive else $as_echo "$as_me: WARNING: no configuration information is in $ac_dir" >&2 fi || ac_status=$? cd "$ac_pwd" || { ac_status=$?; break; } done fi test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF libbonoboui configure 2.24.5 generated by GNU Autoconf 2.65 Copyright (C) 2009 Free Software Foundation, Inc. This configure script is free software; the Free Software Foundation gives unlimited permission to copy, distribute and modify it. _ACEOF exit fi ## ------------------------ ## ## Autoconf initialization. ## ## ------------------------ ## # ac_fn_c_try_compile LINENO # -------------------------- # Try to compile conftest.$ac_ext, and return whether this succeeded. ac_fn_c_try_compile () { as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack rm -f conftest.$ac_objext if { { ac_try="$ac_compile" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" $as_echo "$ac_try_echo"; } >&5 (eval "$ac_compile") 2>conftest.err ac_status=$? if test -s conftest.err; then grep -v '^ *+' conftest.err >conftest.er1 cat conftest.er1 >&5 mv -f conftest.er1 conftest.err fi $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } && { test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then : ac_retval=0 else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_retval=1 fi eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;} as_fn_set_status $ac_retval } # ac_fn_c_try_compile # ac_fn_c_try_link LINENO # ----------------------- # Try to link conftest.$ac_ext, and return whether this succeeded. ac_fn_c_try_link () { as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack rm -f conftest.$ac_objext conftest$ac_exeext if { { ac_try="$ac_link" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" $as_echo "$ac_try_echo"; } >&5 (eval "$ac_link") 2>conftest.err ac_status=$? if test -s conftest.err; then grep -v '^ *+' conftest.err >conftest.er1 cat conftest.er1 >&5 mv -f conftest.er1 conftest.err fi $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } && { test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest$ac_exeext && { test "$cross_compiling" = yes || $as_test_x conftest$ac_exeext }; then : ac_retval=0 else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_retval=1 fi # Delete the IPA/IPO (Inter Procedural Analysis/Optimization) information # created by the PGI compiler (conftest_ipa8_conftest.oo), as it would # interfere with the next link command; also delete a directory that is # left behind by Apple's compiler. We do this before executing the actions. rm -rf conftest.dSYM conftest_ipa8_conftest.oo eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;} as_fn_set_status $ac_retval } # ac_fn_c_try_link # ac_fn_c_try_cpp LINENO # ---------------------- # Try to preprocess conftest.$ac_ext, and return whether this succeeded. ac_fn_c_try_cpp () { as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack if { { ac_try="$ac_cpp conftest.$ac_ext" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" $as_echo "$ac_try_echo"; } >&5 (eval "$ac_cpp conftest.$ac_ext") 2>conftest.err ac_status=$? if test -s conftest.err; then grep -v '^ *+' conftest.err >conftest.er1 cat conftest.er1 >&5 mv -f conftest.er1 conftest.err fi $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } >/dev/null && { test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || test ! -s conftest.err }; then : ac_retval=0 else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_retval=1 fi eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;} as_fn_set_status $ac_retval } # ac_fn_c_try_cpp # ac_fn_c_try_run LINENO # ---------------------- # Try to link conftest.$ac_ext, and return whether this succeeded. Assumes # that executables *can* be run. ac_fn_c_try_run () { as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack if { { ac_try="$ac_link" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" $as_echo "$ac_try_echo"; } >&5 (eval "$ac_link") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } && { ac_try='./conftest$ac_exeext' { { case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" $as_echo "$ac_try_echo"; } >&5 (eval "$ac_try") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; }; then : ac_retval=0 else $as_echo "$as_me: program exited with status $ac_status" >&5 $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_retval=$ac_status fi rm -rf conftest.dSYM conftest_ipa8_conftest.oo eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;} as_fn_set_status $ac_retval } # ac_fn_c_try_run # ac_fn_c_check_header_compile LINENO HEADER VAR INCLUDES # ------------------------------------------------------- # Tests whether HEADER exists and can be compiled using the include files in # INCLUDES, setting the cache variable VAR accordingly. ac_fn_c_check_header_compile () { as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 $as_echo_n "checking for $2... " >&6; } if { as_var=$3; eval "test \"\${$as_var+set}\" = set"; }; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ $4 #include <$2> _ACEOF if ac_fn_c_try_compile "$LINENO"; then : eval "$3=yes" else eval "$3=no" fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi eval ac_res=\$$3 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 $as_echo "$ac_res" >&6; } eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;} } # ac_fn_c_check_header_compile # ac_fn_c_check_func LINENO FUNC VAR # ---------------------------------- # Tests whether FUNC exists, setting the cache variable VAR accordingly ac_fn_c_check_func () { as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 $as_echo_n "checking for $2... " >&6; } if { as_var=$3; eval "test \"\${$as_var+set}\" = set"; }; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ /* Define $2 to an innocuous variant, in case declares $2. For example, HP-UX 11i declares gettimeofday. */ #define $2 innocuous_$2 /* System header to define __stub macros and hopefully few prototypes, which can conflict with char $2 (); below. Prefer to if __STDC__ is defined, since exists even on freestanding compilers. */ #ifdef __STDC__ # include #else # include #endif #undef $2 /* Override any GCC internal prototype to avoid an error. Use char because int might match the return type of a GCC builtin and then its argument prototype would still apply. */ #ifdef __cplusplus extern "C" #endif char $2 (); /* The GNU C library defines this for functions which it implements to always fail with ENOSYS. Some functions are actually named something starting with __ and the normal name is an alias. */ #if defined __stub_$2 || defined __stub___$2 choke me #endif int main () { return $2 (); ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : eval "$3=yes" else eval "$3=no" fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext fi eval ac_res=\$$3 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 $as_echo "$ac_res" >&6; } eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;} } # ac_fn_c_check_func # ac_fn_c_check_header_mongrel LINENO HEADER VAR INCLUDES # ------------------------------------------------------- # Tests whether HEADER exists, giving a warning if it cannot be compiled using # the include files in INCLUDES and setting the cache variable VAR # accordingly. ac_fn_c_check_header_mongrel () { as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack if { as_var=$3; eval "test \"\${$as_var+set}\" = set"; }; then : { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 $as_echo_n "checking for $2... " >&6; } if { as_var=$3; eval "test \"\${$as_var+set}\" = set"; }; then : $as_echo_n "(cached) " >&6 fi eval ac_res=\$$3 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 $as_echo "$ac_res" >&6; } else # Is the header compilable? { $as_echo "$as_me:${as_lineno-$LINENO}: checking $2 usability" >&5 $as_echo_n "checking $2 usability... " >&6; } cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ $4 #include <$2> _ACEOF if ac_fn_c_try_compile "$LINENO"; then : ac_header_compiler=yes else ac_header_compiler=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_header_compiler" >&5 $as_echo "$ac_header_compiler" >&6; } # Is the header present? { $as_echo "$as_me:${as_lineno-$LINENO}: checking $2 presence" >&5 $as_echo_n "checking $2 presence... " >&6; } cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include <$2> _ACEOF if ac_fn_c_try_cpp "$LINENO"; then : ac_header_preproc=yes else ac_header_preproc=no fi rm -f conftest.err conftest.$ac_ext { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_header_preproc" >&5 $as_echo "$ac_header_preproc" >&6; } # So? What about this header? case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in #(( yes:no: ) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: accepted by the compiler, rejected by the preprocessor!" >&5 $as_echo "$as_me: WARNING: $2: accepted by the compiler, rejected by the preprocessor!" >&2;} { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5 $as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;} ;; no:yes:* ) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: present but cannot be compiled" >&5 $as_echo "$as_me: WARNING: $2: present but cannot be compiled" >&2;} { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: check for missing prerequisite headers?" >&5 $as_echo "$as_me: WARNING: $2: check for missing prerequisite headers?" >&2;} { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: see the Autoconf documentation" >&5 $as_echo "$as_me: WARNING: $2: see the Autoconf documentation" >&2;} { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: section \"Present But Cannot Be Compiled\"" >&5 $as_echo "$as_me: WARNING: $2: section \"Present But Cannot Be Compiled\"" >&2;} { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5 $as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;} ( cat <<\_ASBOX ## ------------------------------------------------------------------------------------------- ## ## Report this to http://bugzilla.gnome.org/enter_bug.cgi?product=bonobo&component=libbonoboui ## ## ------------------------------------------------------------------------------------------- ## _ASBOX ) | sed "s/^/$as_me: WARNING: /" >&2 ;; esac { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 $as_echo_n "checking for $2... " >&6; } if { as_var=$3; eval "test \"\${$as_var+set}\" = set"; }; then : $as_echo_n "(cached) " >&6 else eval "$3=\$ac_header_compiler" fi eval ac_res=\$$3 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 $as_echo "$ac_res" >&6; } fi eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;} } # ac_fn_c_check_header_mongrel cat >config.log <<_ACEOF This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. It was created by libbonoboui $as_me 2.24.5, which was generated by GNU Autoconf 2.65. Invocation command line was $ $0 $@ _ACEOF exec 5>>config.log { cat <<_ASUNAME ## --------- ## ## Platform. ## ## --------- ## hostname = `(hostname || uname -n) 2>/dev/null | sed 1q` uname -m = `(uname -m) 2>/dev/null || echo unknown` uname -r = `(uname -r) 2>/dev/null || echo unknown` uname -s = `(uname -s) 2>/dev/null || echo unknown` uname -v = `(uname -v) 2>/dev/null || echo unknown` /usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null || echo unknown` /bin/uname -X = `(/bin/uname -X) 2>/dev/null || echo unknown` /bin/arch = `(/bin/arch) 2>/dev/null || echo unknown` /usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null || echo unknown` /usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null || echo unknown` /usr/bin/hostinfo = `(/usr/bin/hostinfo) 2>/dev/null || echo unknown` /bin/machine = `(/bin/machine) 2>/dev/null || echo unknown` /usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null || echo unknown` /bin/universe = `(/bin/universe) 2>/dev/null || echo unknown` _ASUNAME as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. $as_echo "PATH: $as_dir" done IFS=$as_save_IFS } >&5 cat >&5 <<_ACEOF ## ----------- ## ## Core tests. ## ## ----------- ## _ACEOF # Keep a trace of the command line. # Strip out --no-create and --no-recursion so they do not pile up. # Strip out --silent because we don't want to record it for future runs. # Also quote any args containing shell meta-characters. # Make two passes to allow for proper duplicate-argument suppression. ac_configure_args= ac_configure_args0= ac_configure_args1= ac_must_keep_next=false for ac_pass in 1 2 do for ac_arg do case $ac_arg in -no-create | --no-c* | -n | -no-recursion | --no-r*) continue ;; -q | -quiet | --quiet | --quie | --qui | --qu | --q \ | -silent | --silent | --silen | --sile | --sil) continue ;; *\'*) ac_arg=`$as_echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;; esac case $ac_pass in 1) as_fn_append ac_configure_args0 " '$ac_arg'" ;; 2) as_fn_append ac_configure_args1 " '$ac_arg'" if test $ac_must_keep_next = true; then ac_must_keep_next=false # Got value, back to normal. else case $ac_arg in *=* | --config-cache | -C | -disable-* | --disable-* \ | -enable-* | --enable-* | -gas | --g* | -nfp | --nf* \ | -q | -quiet | --q* | -silent | --sil* | -v | -verb* \ | -with-* | --with-* | -without-* | --without-* | --x) case "$ac_configure_args0 " in "$ac_configure_args1"*" '$ac_arg' "* ) continue ;; esac ;; -* ) ac_must_keep_next=true ;; esac fi as_fn_append ac_configure_args " '$ac_arg'" ;; esac done done { ac_configure_args0=; unset ac_configure_args0;} { ac_configure_args1=; unset ac_configure_args1;} # When interrupted or exit'd, cleanup temporary files, and complete # config.log. We remove comments because anyway the quotes in there # would cause problems or look ugly. # WARNING: Use '\'' to represent an apostrophe within the trap. # WARNING: Do not start the trap code with a newline, due to a FreeBSD 4.0 bug. trap 'exit_status=$? # Save into config.log some information that might help in debugging. { echo cat <<\_ASBOX ## ---------------- ## ## Cache variables. ## ## ---------------- ## _ASBOX echo # The following way of writing the cache mishandles newlines in values, ( for ac_var in `(set) 2>&1 | sed -n '\''s/^\([a-zA-Z_][a-zA-Z0-9_]*\)=.*/\1/p'\''`; do eval ac_val=\$$ac_var case $ac_val in #( *${as_nl}*) case $ac_var in #( *_cv_*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5 $as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;; esac case $ac_var in #( _ | IFS | as_nl) ;; #( BASH_ARGV | BASH_SOURCE) eval $ac_var= ;; #( *) { eval $ac_var=; unset $ac_var;} ;; esac ;; esac done (set) 2>&1 | case $as_nl`(ac_space='\'' '\''; set) 2>&1` in #( *${as_nl}ac_space=\ *) sed -n \ "s/'\''/'\''\\\\'\'''\''/g; s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\''\\2'\''/p" ;; #( *) sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p" ;; esac | sort ) echo cat <<\_ASBOX ## ----------------- ## ## Output variables. ## ## ----------------- ## _ASBOX echo for ac_var in $ac_subst_vars do eval ac_val=\$$ac_var case $ac_val in *\'\''*) ac_val=`$as_echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;; esac $as_echo "$ac_var='\''$ac_val'\''" done | sort echo if test -n "$ac_subst_files"; then cat <<\_ASBOX ## ------------------- ## ## File substitutions. ## ## ------------------- ## _ASBOX echo for ac_var in $ac_subst_files do eval ac_val=\$$ac_var case $ac_val in *\'\''*) ac_val=`$as_echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;; esac $as_echo "$ac_var='\''$ac_val'\''" done | sort echo fi if test -s confdefs.h; then cat <<\_ASBOX ## ----------- ## ## confdefs.h. ## ## ----------- ## _ASBOX echo cat confdefs.h echo fi test "$ac_signal" != 0 && $as_echo "$as_me: caught signal $ac_signal" $as_echo "$as_me: exit $exit_status" } >&5 rm -f core *.core core.conftest.* && rm -f -r conftest* confdefs* conf$$* $ac_clean_files && exit $exit_status ' 0 for ac_signal in 1 2 13 15; do trap 'ac_signal='$ac_signal'; as_fn_exit 1' $ac_signal done ac_signal=0 # confdefs.h avoids OS command line length limits that DEFS can exceed. rm -f -r conftest* confdefs.h $as_echo "/* confdefs.h */" > confdefs.h # Predefined preprocessor variables. cat >>confdefs.h <<_ACEOF #define PACKAGE_NAME "$PACKAGE_NAME" _ACEOF cat >>confdefs.h <<_ACEOF #define PACKAGE_TARNAME "$PACKAGE_TARNAME" _ACEOF cat >>confdefs.h <<_ACEOF #define PACKAGE_VERSION "$PACKAGE_VERSION" _ACEOF cat >>confdefs.h <<_ACEOF #define PACKAGE_STRING "$PACKAGE_STRING" _ACEOF cat >>confdefs.h <<_ACEOF #define PACKAGE_BUGREPORT "$PACKAGE_BUGREPORT" _ACEOF cat >>confdefs.h <<_ACEOF #define PACKAGE_URL "$PACKAGE_URL" _ACEOF # Let the site file select an alternate cache file if it wants to. # Prefer an explicitly selected file to automatically selected ones. ac_site_file1=NONE ac_site_file2=NONE if test -n "$CONFIG_SITE"; then ac_site_file1=$CONFIG_SITE elif test "x$prefix" != xNONE; then ac_site_file1=$prefix/share/config.site ac_site_file2=$prefix/etc/config.site else ac_site_file1=$ac_default_prefix/share/config.site ac_site_file2=$ac_default_prefix/etc/config.site fi for ac_site_file in "$ac_site_file1" "$ac_site_file2" do test "x$ac_site_file" = xNONE && continue if test /dev/null != "$ac_site_file" && test -r "$ac_site_file"; then { $as_echo "$as_me:${as_lineno-$LINENO}: loading site script $ac_site_file" >&5 $as_echo "$as_me: loading site script $ac_site_file" >&6;} sed 's/^/| /' "$ac_site_file" >&5 . "$ac_site_file" fi done if test -r "$cache_file"; then # Some versions of bash will fail to source /dev/null (special files # actually), so we avoid doing that. DJGPP emulates it as a regular file. if test /dev/null != "$cache_file" && test -f "$cache_file"; then { $as_echo "$as_me:${as_lineno-$LINENO}: loading cache $cache_file" >&5 $as_echo "$as_me: loading cache $cache_file" >&6;} case $cache_file in [\\/]* | ?:[\\/]* ) . "$cache_file";; *) . "./$cache_file";; esac fi else { $as_echo "$as_me:${as_lineno-$LINENO}: creating cache $cache_file" >&5 $as_echo "$as_me: creating cache $cache_file" >&6;} >$cache_file fi # Check that the precious variables saved in the cache have kept the same # value. ac_cache_corrupted=false for ac_var in $ac_precious_vars; do eval ac_old_set=\$ac_cv_env_${ac_var}_set eval ac_new_set=\$ac_env_${ac_var}_set eval ac_old_val=\$ac_cv_env_${ac_var}_value eval ac_new_val=\$ac_env_${ac_var}_value case $ac_old_set,$ac_new_set in set,) { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5 $as_echo "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;} ac_cache_corrupted=: ;; ,set) { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was not set in the previous run" >&5 $as_echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;} ac_cache_corrupted=: ;; ,);; *) if test "x$ac_old_val" != "x$ac_new_val"; then # differences in whitespace do not lead to failure. ac_old_val_w=`echo x $ac_old_val` ac_new_val_w=`echo x $ac_new_val` if test "$ac_old_val_w" != "$ac_new_val_w"; then { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' has changed since the previous run:" >&5 $as_echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;} ac_cache_corrupted=: else { $as_echo "$as_me:${as_lineno-$LINENO}: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&5 $as_echo "$as_me: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&2;} eval $ac_var=\$ac_old_val fi { $as_echo "$as_me:${as_lineno-$LINENO}: former value: \`$ac_old_val'" >&5 $as_echo "$as_me: former value: \`$ac_old_val'" >&2;} { $as_echo "$as_me:${as_lineno-$LINENO}: current value: \`$ac_new_val'" >&5 $as_echo "$as_me: current value: \`$ac_new_val'" >&2;} fi;; esac # Pass precious variables to config.status. if test "$ac_new_set" = set; then case $ac_new_val in *\'*) ac_arg=$ac_var=`$as_echo "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"` ;; *) ac_arg=$ac_var=$ac_new_val ;; esac case " $ac_configure_args " in *" '$ac_arg' "*) ;; # Avoid dups. Use of quotes ensures accuracy. *) as_fn_append ac_configure_args " '$ac_arg'" ;; esac fi done if $ac_cache_corrupted; then { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} { $as_echo "$as_me:${as_lineno-$LINENO}: error: changes in the environment can compromise the build" >&5 $as_echo "$as_me: error: changes in the environment can compromise the build" >&2;} as_fn_error "run \`make distclean' and/or \`rm $cache_file' and start over" "$LINENO" 5 fi ## -------------------- ## ## Main body of script. ## ## -------------------- ## ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu ac_config_headers="$ac_config_headers config.h" am__api_version='1.11' ac_aux_dir= for ac_dir in "$srcdir" "$srcdir/.." "$srcdir/../.."; do for ac_t in install-sh install.sh shtool; do if test -f "$ac_dir/$ac_t"; then ac_aux_dir=$ac_dir ac_install_sh="$ac_aux_dir/$ac_t -c" break 2 fi done done if test -z "$ac_aux_dir"; then as_fn_error "cannot find install-sh, install.sh, or shtool in \"$srcdir\" \"$srcdir/..\" \"$srcdir/../..\"" "$LINENO" 5 fi # These three variables are undocumented and unsupported, # and are intended to be withdrawn in a future Autoconf release. # They can cause serious problems if a builder's source tree is in a directory # whose full name contains unusual characters. ac_config_guess="$SHELL $ac_aux_dir/config.guess" # Please don't use this var. ac_config_sub="$SHELL $ac_aux_dir/config.sub" # Please don't use this var. ac_configure="$SHELL $ac_aux_dir/configure" # Please don't use this var. # Find a good install program. We prefer a C program (faster), # so one script is as good as another. But avoid the broken or # incompatible versions: # SysV /etc/install, /usr/sbin/install # SunOS /usr/etc/install # IRIX /sbin/install # AIX /bin/install # AmigaOS /C/install, which installs bootblocks on floppy discs # AIX 4 /usr/bin/installbsd, which doesn't work without a -g flag # AFS /usr/afsws/bin/install, which mishandles nonexistent args # SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff" # OS/2's system install, which has a completely different semantic # ./install, which can be erroneously created by make from ./install.sh. # Reject install programs that cannot install multiple files. { $as_echo "$as_me:${as_lineno-$LINENO}: checking for a BSD-compatible install" >&5 $as_echo_n "checking for a BSD-compatible install... " >&6; } if test -z "$INSTALL"; then if test "${ac_cv_path_install+set}" = set; then : $as_echo_n "(cached) " >&6 else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. # Account for people who put trailing slashes in PATH elements. case $as_dir/ in #(( ./ | .// | /[cC]/* | \ /etc/* | /usr/sbin/* | /usr/etc/* | /sbin/* | /usr/afsws/bin/* | \ ?:[\\/]os2[\\/]install[\\/]* | ?:[\\/]OS2[\\/]INSTALL[\\/]* | \ /usr/ucb/* ) ;; *) # OSF1 and SCO ODT 3.0 have their own names for install. # Don't use installbsd from OSF since it installs stuff as root # by default. for ac_prog in ginstall scoinst install; do for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_prog$ac_exec_ext" && $as_test_x "$as_dir/$ac_prog$ac_exec_ext"; }; then if test $ac_prog = install && grep dspmsg "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then # AIX install. It has an incompatible calling convention. : elif test $ac_prog = install && grep pwplus "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then # program-specific install script used by HP pwplus--don't use. : else rm -rf conftest.one conftest.two conftest.dir echo one > conftest.one echo two > conftest.two mkdir conftest.dir if "$as_dir/$ac_prog$ac_exec_ext" -c conftest.one conftest.two "`pwd`/conftest.dir" && test -s conftest.one && test -s conftest.two && test -s conftest.dir/conftest.one && test -s conftest.dir/conftest.two then ac_cv_path_install="$as_dir/$ac_prog$ac_exec_ext -c" break 3 fi fi fi done done ;; esac done IFS=$as_save_IFS rm -rf conftest.one conftest.two conftest.dir fi if test "${ac_cv_path_install+set}" = set; then INSTALL=$ac_cv_path_install else # As a last resort, use the slow shell script. Don't cache a # value for INSTALL within a source directory, because that will # break other packages using the cache if that directory is # removed, or if the value is a relative name. INSTALL=$ac_install_sh fi fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $INSTALL" >&5 $as_echo "$INSTALL" >&6; } # Use test -z because SunOS4 sh mishandles braces in ${var-val}. # It thinks the first close brace ends the variable substitution. test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}' test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL}' test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644' { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether build environment is sane" >&5 $as_echo_n "checking whether build environment is sane... " >&6; } # Just in case sleep 1 echo timestamp > conftest.file # Reject unsafe characters in $srcdir or the absolute working directory # name. Accept space and tab only in the latter. am_lf=' ' case `pwd` in *[\\\"\#\$\&\'\`$am_lf]*) as_fn_error "unsafe absolute working directory name" "$LINENO" 5;; esac case $srcdir in *[\\\"\#\$\&\'\`$am_lf\ \ ]*) as_fn_error "unsafe srcdir value: \`$srcdir'" "$LINENO" 5;; esac # Do `set' in a subshell so we don't clobber the current shell's # arguments. Must try -L first in case configure is actually a # symlink; some systems play weird games with the mod time of symlinks # (eg FreeBSD returns the mod time of the symlink's containing # directory). if ( set X `ls -Lt "$srcdir/configure" conftest.file 2> /dev/null` if test "$*" = "X"; then # -L didn't work. set X `ls -t "$srcdir/configure" conftest.file` fi rm -f conftest.file if test "$*" != "X $srcdir/configure conftest.file" \ && test "$*" != "X conftest.file $srcdir/configure"; then # If neither matched, then we have a broken ls. This can happen # if, for instance, CONFIG_SHELL is bash and it inherits a # broken ls alias from the environment. This has actually # happened. Such a system could not be considered "sane". as_fn_error "ls -t appears to fail. Make sure there is not a broken alias in your environment" "$LINENO" 5 fi test "$2" = conftest.file ) then # Ok. : else as_fn_error "newly created file is older than distributed files! Check your system clock" "$LINENO" 5 fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } test "$program_prefix" != NONE && program_transform_name="s&^&$program_prefix&;$program_transform_name" # Use a double $ so make ignores it. test "$program_suffix" != NONE && program_transform_name="s&\$&$program_suffix&;$program_transform_name" # Double any \ or $. # By default was `s,x,x', remove it if useless. ac_script='s/[\\$]/&&/g;s/;s,x,x,$//' program_transform_name=`$as_echo "$program_transform_name" | sed "$ac_script"` # expand $ac_aux_dir to an absolute path am_aux_dir=`cd $ac_aux_dir && pwd` if test x"${MISSING+set}" != xset; then case $am_aux_dir in *\ * | *\ *) MISSING="\${SHELL} \"$am_aux_dir/missing\"" ;; *) MISSING="\${SHELL} $am_aux_dir/missing" ;; esac fi # Use eval to expand $SHELL if eval "$MISSING --run true"; then am_missing_run="$MISSING --run " else am_missing_run= { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: \`missing' script is too old or missing" >&5 $as_echo "$as_me: WARNING: \`missing' script is too old or missing" >&2;} fi if test x"${install_sh}" != xset; then case $am_aux_dir in *\ * | *\ *) install_sh="\${SHELL} '$am_aux_dir/install-sh'" ;; *) install_sh="\${SHELL} $am_aux_dir/install-sh" esac fi # Installed binaries are usually stripped using `strip' when the user # run `make install-strip'. However `strip' might not be the right # tool to use in cross-compilation environments, therefore Automake # will honor the `STRIP' environment variable to overrule this program. if test "$cross_compiling" != no; then if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args. set dummy ${ac_tool_prefix}strip; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if test "${ac_cv_prog_STRIP+set}" = set; then : $as_echo_n "(cached) " >&6 else if test -n "$STRIP"; then ac_cv_prog_STRIP="$STRIP" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_STRIP="${ac_tool_prefix}strip" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi STRIP=$ac_cv_prog_STRIP if test -n "$STRIP"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $STRIP" >&5 $as_echo "$STRIP" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi fi if test -z "$ac_cv_prog_STRIP"; then ac_ct_STRIP=$STRIP # Extract the first word of "strip", so it can be a program name with args. set dummy strip; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if test "${ac_cv_prog_ac_ct_STRIP+set}" = set; then : $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_STRIP"; then ac_cv_prog_ac_ct_STRIP="$ac_ct_STRIP" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_ac_ct_STRIP="strip" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi ac_ct_STRIP=$ac_cv_prog_ac_ct_STRIP if test -n "$ac_ct_STRIP"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_STRIP" >&5 $as_echo "$ac_ct_STRIP" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test "x$ac_ct_STRIP" = x; then STRIP=":" else case $cross_compiling:$ac_tool_warned in yes:) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac STRIP=$ac_ct_STRIP fi else STRIP="$ac_cv_prog_STRIP" fi fi INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s" { $as_echo "$as_me:${as_lineno-$LINENO}: checking for a thread-safe mkdir -p" >&5 $as_echo_n "checking for a thread-safe mkdir -p... " >&6; } if test -z "$MKDIR_P"; then if test "${ac_cv_path_mkdir+set}" = set; then : $as_echo_n "(cached) " >&6 else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH$PATH_SEPARATOR/opt/sfw/bin do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_prog in mkdir gmkdir; do for ac_exec_ext in '' $ac_executable_extensions; do { test -f "$as_dir/$ac_prog$ac_exec_ext" && $as_test_x "$as_dir/$ac_prog$ac_exec_ext"; } || continue case `"$as_dir/$ac_prog$ac_exec_ext" --version 2>&1` in #( 'mkdir (GNU coreutils) '* | \ 'mkdir (coreutils) '* | \ 'mkdir (fileutils) '4.1*) ac_cv_path_mkdir=$as_dir/$ac_prog$ac_exec_ext break 3;; esac done done done IFS=$as_save_IFS fi test -d ./--version && rmdir ./--version if test "${ac_cv_path_mkdir+set}" = set; then MKDIR_P="$ac_cv_path_mkdir -p" else # As a last resort, use the slow shell script. Don't cache a # value for MKDIR_P within a source directory, because that will # break other packages using the cache if that directory is # removed, or if the value is a relative name. MKDIR_P="$ac_install_sh -d" fi fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MKDIR_P" >&5 $as_echo "$MKDIR_P" >&6; } mkdir_p="$MKDIR_P" case $mkdir_p in [\\/$]* | ?:[\\/]*) ;; */*) mkdir_p="\$(top_builddir)/$mkdir_p" ;; esac for ac_prog in gawk mawk nawk awk do # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if test "${ac_cv_prog_AWK+set}" = set; then : $as_echo_n "(cached) " >&6 else if test -n "$AWK"; then ac_cv_prog_AWK="$AWK" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_AWK="$ac_prog" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi AWK=$ac_cv_prog_AWK if test -n "$AWK"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $AWK" >&5 $as_echo "$AWK" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi test -n "$AWK" && break done { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ${MAKE-make} sets \$(MAKE)" >&5 $as_echo_n "checking whether ${MAKE-make} sets \$(MAKE)... " >&6; } set x ${MAKE-make} ac_make=`$as_echo "$2" | sed 's/+/p/g; s/[^a-zA-Z0-9_]/_/g'` if { as_var=ac_cv_prog_make_${ac_make}_set; eval "test \"\${$as_var+set}\" = set"; }; then : $as_echo_n "(cached) " >&6 else cat >conftest.make <<\_ACEOF SHELL = /bin/sh all: @echo '@@@%%%=$(MAKE)=@@@%%%' _ACEOF # GNU make sometimes prints "make[1]: Entering...", which would confuse us. case `${MAKE-make} -f conftest.make 2>/dev/null` in *@@@%%%=?*=@@@%%%*) eval ac_cv_prog_make_${ac_make}_set=yes;; *) eval ac_cv_prog_make_${ac_make}_set=no;; esac rm -f conftest.make fi if eval test \$ac_cv_prog_make_${ac_make}_set = yes; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } SET_MAKE= else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } SET_MAKE="MAKE=${MAKE-make}" fi rm -rf .tst 2>/dev/null mkdir .tst 2>/dev/null if test -d .tst; then am__leading_dot=. else am__leading_dot=_ fi rmdir .tst 2>/dev/null if test "`cd $srcdir && pwd`" != "`pwd`"; then # Use -I$(srcdir) only when $(srcdir) != ., so that make's output # is not polluted with repeated "-I." am__isrc=' -I$(srcdir)' # test to see if srcdir already configured if test -f $srcdir/config.status; then as_fn_error "source directory already configured; run \"make distclean\" there first" "$LINENO" 5 fi fi # test whether we have cygpath if test -z "$CYGPATH_W"; then if (cygpath --version) >/dev/null 2>/dev/null; then CYGPATH_W='cygpath -w' else CYGPATH_W=echo fi fi # Define the identity of the package. PACKAGE='libbonoboui' VERSION='2.24.5' cat >>confdefs.h <<_ACEOF #define PACKAGE "$PACKAGE" _ACEOF cat >>confdefs.h <<_ACEOF #define VERSION "$VERSION" _ACEOF # Some tools Automake needs. ACLOCAL=${ACLOCAL-"${am_missing_run}aclocal-${am__api_version}"} AUTOCONF=${AUTOCONF-"${am_missing_run}autoconf"} AUTOMAKE=${AUTOMAKE-"${am_missing_run}automake-${am__api_version}"} AUTOHEADER=${AUTOHEADER-"${am_missing_run}autoheader"} MAKEINFO=${MAKEINFO-"${am_missing_run}makeinfo"} # We need awk for the "check" target. The system "awk" is bad on # some platforms. # Always define AMTAR for backward compatibility. AMTAR=${AMTAR-"${am_missing_run}tar"} am__tar='${AMTAR} chof - "$$tardir"'; am__untar='${AMTAR} xf -' { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to enable maintainer-specific portions of Makefiles" >&5 $as_echo_n "checking whether to enable maintainer-specific portions of Makefiles... " >&6; } # Check whether --enable-maintainer-mode was given. if test "${enable_maintainer_mode+set}" = set; then : enableval=$enable_maintainer_mode; USE_MAINTAINER_MODE=$enableval else USE_MAINTAINER_MODE=no fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $USE_MAINTAINER_MODE" >&5 $as_echo "$USE_MAINTAINER_MODE" >&6; } if test $USE_MAINTAINER_MODE = yes; then MAINTAINER_MODE_TRUE= MAINTAINER_MODE_FALSE='#' else MAINTAINER_MODE_TRUE='#' MAINTAINER_MODE_FALSE= fi MAINT=$MAINTAINER_MODE_TRUE # Make sure we can run config.sub. $SHELL "$ac_aux_dir/config.sub" sun4 >/dev/null 2>&1 || as_fn_error "cannot run $SHELL $ac_aux_dir/config.sub" "$LINENO" 5 { $as_echo "$as_me:${as_lineno-$LINENO}: checking build system type" >&5 $as_echo_n "checking build system type... " >&6; } if test "${ac_cv_build+set}" = set; then : $as_echo_n "(cached) " >&6 else ac_build_alias=$build_alias test "x$ac_build_alias" = x && ac_build_alias=`$SHELL "$ac_aux_dir/config.guess"` test "x$ac_build_alias" = x && as_fn_error "cannot guess build type; you must specify one" "$LINENO" 5 ac_cv_build=`$SHELL "$ac_aux_dir/config.sub" $ac_build_alias` || as_fn_error "$SHELL $ac_aux_dir/config.sub $ac_build_alias failed" "$LINENO" 5 fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_build" >&5 $as_echo "$ac_cv_build" >&6; } case $ac_cv_build in *-*-*) ;; *) as_fn_error "invalid value of canonical build" "$LINENO" 5;; esac build=$ac_cv_build ac_save_IFS=$IFS; IFS='-' set x $ac_cv_build shift build_cpu=$1 build_vendor=$2 shift; shift # Remember, the first character of IFS is used to create $*, # except with old shells: build_os=$* IFS=$ac_save_IFS case $build_os in *\ *) build_os=`echo "$build_os" | sed 's/ /-/g'`;; esac { $as_echo "$as_me:${as_lineno-$LINENO}: checking host system type" >&5 $as_echo_n "checking host system type... " >&6; } if test "${ac_cv_host+set}" = set; then : $as_echo_n "(cached) " >&6 else if test "x$host_alias" = x; then ac_cv_host=$ac_cv_build else ac_cv_host=`$SHELL "$ac_aux_dir/config.sub" $host_alias` || as_fn_error "$SHELL $ac_aux_dir/config.sub $host_alias failed" "$LINENO" 5 fi fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_host" >&5 $as_echo "$ac_cv_host" >&6; } case $ac_cv_host in *-*-*) ;; *) as_fn_error "invalid value of canonical host" "$LINENO" 5;; esac host=$ac_cv_host ac_save_IFS=$IFS; IFS='-' set x $ac_cv_host shift host_cpu=$1 host_vendor=$2 shift; shift # Remember, the first character of IFS is used to create $*, # except with old shells: host_os=$* IFS=$ac_save_IFS case $host_os in *\ *) host_os=`echo "$host_os" | sed 's/ /-/g'`;; esac case "$host" in *-*-mingw*) os_win32=yes ;; *) os_win32=no ;; esac if test "$os_win32" = "yes"; then if test x$enable_static = xyes -o x$enable_static = x; then { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Disabling static library build, must build as DLL on Windows." >&5 $as_echo "$as_me: WARNING: Disabling static library build, must build as DLL on Windows." >&2;} enable_static=no fi if test x$enable_shared = xno; then { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Enabling shared library build, must build as DLL on Windows." >&5 $as_echo "$as_me: WARNING: Enabling shared library build, must build as DLL on Windows." >&2;} fi enable_shared=yes fi DEPDIR="${am__leading_dot}deps" ac_config_commands="$ac_config_commands depfiles" am_make=${MAKE-make} cat > confinc << 'END' am__doit: @echo this is the am__doit target .PHONY: am__doit END # If we don't find an include directive, just comment out the code. { $as_echo "$as_me:${as_lineno-$LINENO}: checking for style of include used by $am_make" >&5 $as_echo_n "checking for style of include used by $am_make... " >&6; } am__include="#" am__quote= _am_result=none # First try GNU make style include. echo "include confinc" > confmf # Ignore all kinds of additional output from `make'. case `$am_make -s -f confmf 2> /dev/null` in #( *the\ am__doit\ target*) am__include=include am__quote= _am_result=GNU ;; esac # Now try BSD make style include. if test "$am__include" = "#"; then echo '.include "confinc"' > confmf case `$am_make -s -f confmf 2> /dev/null` in #( *the\ am__doit\ target*) am__include=.include am__quote="\"" _am_result=BSD ;; esac fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $_am_result" >&5 $as_echo "$_am_result" >&6; } rm -f confinc confmf # Check whether --enable-dependency-tracking was given. if test "${enable_dependency_tracking+set}" = set; then : enableval=$enable_dependency_tracking; fi if test "x$enable_dependency_tracking" != xno; then am_depcomp="$ac_aux_dir/depcomp" AMDEPBACKSLASH='\' fi if test "x$enable_dependency_tracking" != xno; then AMDEP_TRUE= AMDEP_FALSE='#' else AMDEP_TRUE='#' AMDEP_FALSE= fi ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args. set dummy ${ac_tool_prefix}gcc; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if test "${ac_cv_prog_CC+set}" = set; then : $as_echo_n "(cached) " >&6 else if test -n "$CC"; then ac_cv_prog_CC="$CC" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_CC="${ac_tool_prefix}gcc" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi CC=$ac_cv_prog_CC if test -n "$CC"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 $as_echo "$CC" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi fi if test -z "$ac_cv_prog_CC"; then ac_ct_CC=$CC # Extract the first word of "gcc", so it can be a program name with args. set dummy gcc; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if test "${ac_cv_prog_ac_ct_CC+set}" = set; then : $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_CC"; then ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_ac_ct_CC="gcc" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi ac_ct_CC=$ac_cv_prog_ac_ct_CC if test -n "$ac_ct_CC"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5 $as_echo "$ac_ct_CC" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test "x$ac_ct_CC" = x; then CC="" else case $cross_compiling:$ac_tool_warned in yes:) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac CC=$ac_ct_CC fi else CC="$ac_cv_prog_CC" fi if test -z "$CC"; then if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args. set dummy ${ac_tool_prefix}cc; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if test "${ac_cv_prog_CC+set}" = set; then : $as_echo_n "(cached) " >&6 else if test -n "$CC"; then ac_cv_prog_CC="$CC" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_CC="${ac_tool_prefix}cc" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi CC=$ac_cv_prog_CC if test -n "$CC"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 $as_echo "$CC" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi fi fi if test -z "$CC"; then # Extract the first word of "cc", so it can be a program name with args. set dummy cc; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if test "${ac_cv_prog_CC+set}" = set; then : $as_echo_n "(cached) " >&6 else if test -n "$CC"; then ac_cv_prog_CC="$CC" # Let the user override the test. else ac_prog_rejected=no as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then ac_prog_rejected=yes continue fi ac_cv_prog_CC="cc" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS if test $ac_prog_rejected = yes; then # We found a bogon in the path, so make sure we never use it. set dummy $ac_cv_prog_CC shift if test $# != 0; then # We chose a different compiler from the bogus one. # However, it has the same basename, so the bogon will be chosen # first if we set CC to just the basename; use the full file name. shift ac_cv_prog_CC="$as_dir/$ac_word${1+' '}$@" fi fi fi fi CC=$ac_cv_prog_CC if test -n "$CC"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 $as_echo "$CC" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi fi if test -z "$CC"; then if test -n "$ac_tool_prefix"; then for ac_prog in cl.exe do # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. set dummy $ac_tool_prefix$ac_prog; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if test "${ac_cv_prog_CC+set}" = set; then : $as_echo_n "(cached) " >&6 else if test -n "$CC"; then ac_cv_prog_CC="$CC" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_CC="$ac_tool_prefix$ac_prog" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi CC=$ac_cv_prog_CC if test -n "$CC"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 $as_echo "$CC" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi test -n "$CC" && break done fi if test -z "$CC"; then ac_ct_CC=$CC for ac_prog in cl.exe do # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if test "${ac_cv_prog_ac_ct_CC+set}" = set; then : $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_CC"; then ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_ac_ct_CC="$ac_prog" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi ac_ct_CC=$ac_cv_prog_ac_ct_CC if test -n "$ac_ct_CC"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5 $as_echo "$ac_ct_CC" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi test -n "$ac_ct_CC" && break done if test "x$ac_ct_CC" = x; then CC="" else case $cross_compiling:$ac_tool_warned in yes:) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac CC=$ac_ct_CC fi fi fi test -z "$CC" && { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} as_fn_error "no acceptable C compiler found in \$PATH See \`config.log' for more details." "$LINENO" 5; } # Provide some information about the compiler. $as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler version" >&5 set X $ac_compile ac_compiler=$2 for ac_option in --version -v -V -qversion; do { { ac_try="$ac_compiler $ac_option >&5" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" $as_echo "$ac_try_echo"; } >&5 (eval "$ac_compiler $ac_option >&5") 2>conftest.err ac_status=$? if test -s conftest.err; then sed '10a\ ... rest of stderr output deleted ... 10q' conftest.err >conftest.er1 cat conftest.er1 >&5 fi rm -f conftest.er1 conftest.err $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } done cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { ; return 0; } _ACEOF ac_clean_files_save=$ac_clean_files ac_clean_files="$ac_clean_files a.out a.out.dSYM a.exe b.out" # Try to create an executable without -o first, disregard a.out. # It will help us diagnose broken compilers, and finding out an intuition # of exeext. { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the C compiler works" >&5 $as_echo_n "checking whether the C compiler works... " >&6; } ac_link_default=`$as_echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'` # The possible output files: ac_files="a.out conftest.exe conftest a.exe a_out.exe b.out conftest.*" ac_rmfiles= for ac_file in $ac_files do case $ac_file in *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) ;; * ) ac_rmfiles="$ac_rmfiles $ac_file";; esac done rm -f $ac_rmfiles if { { ac_try="$ac_link_default" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" $as_echo "$ac_try_echo"; } >&5 (eval "$ac_link_default") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then : # Autoconf-2.13 could set the ac_cv_exeext variable to `no'. # So ignore a value of `no', otherwise this would lead to `EXEEXT = no' # in a Makefile. We should not override ac_cv_exeext if it was cached, # so that the user can short-circuit this test for compilers unknown to # Autoconf. for ac_file in $ac_files '' do test -f "$ac_file" || continue case $ac_file in *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) ;; [ab].out ) # We found the default executable, but exeext='' is most # certainly right. break;; *.* ) if test "${ac_cv_exeext+set}" = set && test "$ac_cv_exeext" != no; then :; else ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'` fi # We set ac_cv_exeext here because the later test for it is not # safe: cross compilers may not add the suffix if given an `-o' # argument, so we may need to know it at that point already. # Even if this section looks crufty: it has the advantage of # actually working. break;; * ) break;; esac done test "$ac_cv_exeext" = no && ac_cv_exeext= else ac_file='' fi if test -z "$ac_file"; then : { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} { as_fn_set_status 77 as_fn_error "C compiler cannot create executables See \`config.log' for more details." "$LINENO" 5; }; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } fi { $as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler default output file name" >&5 $as_echo_n "checking for C compiler default output file name... " >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_file" >&5 $as_echo "$ac_file" >&6; } ac_exeext=$ac_cv_exeext rm -f -r a.out a.out.dSYM a.exe conftest$ac_cv_exeext b.out ac_clean_files=$ac_clean_files_save { $as_echo "$as_me:${as_lineno-$LINENO}: checking for suffix of executables" >&5 $as_echo_n "checking for suffix of executables... " >&6; } if { { ac_try="$ac_link" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" $as_echo "$ac_try_echo"; } >&5 (eval "$ac_link") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then : # If both `conftest.exe' and `conftest' are `present' (well, observable) # catch `conftest.exe'. For instance with Cygwin, `ls conftest' will # work properly (i.e., refer to `conftest.exe'), while it won't with # `rm'. for ac_file in conftest.exe conftest conftest.*; do test -f "$ac_file" || continue case $ac_file in *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) ;; *.* ) ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'` break;; * ) break;; esac done else { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} as_fn_error "cannot compute suffix of executables: cannot compile and link See \`config.log' for more details." "$LINENO" 5; } fi rm -f conftest conftest$ac_cv_exeext { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_exeext" >&5 $as_echo "$ac_cv_exeext" >&6; } rm -f conftest.$ac_ext EXEEXT=$ac_cv_exeext ac_exeext=$EXEEXT cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include int main () { FILE *f = fopen ("conftest.out", "w"); return ferror (f) || fclose (f) != 0; ; return 0; } _ACEOF ac_clean_files="$ac_clean_files conftest.out" # Check that the compiler produces executables we can run. If not, either # the compiler is broken, or we cross compile. { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are cross compiling" >&5 $as_echo_n "checking whether we are cross compiling... " >&6; } if test "$cross_compiling" != yes; then { { ac_try="$ac_link" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" $as_echo "$ac_try_echo"; } >&5 (eval "$ac_link") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } if { ac_try='./conftest$ac_cv_exeext' { { case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" $as_echo "$ac_try_echo"; } >&5 (eval "$ac_try") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; }; then cross_compiling=no else if test "$cross_compiling" = maybe; then cross_compiling=yes else { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} as_fn_error "cannot run C compiled programs. If you meant to cross compile, use \`--host'. See \`config.log' for more details." "$LINENO" 5; } fi fi fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $cross_compiling" >&5 $as_echo "$cross_compiling" >&6; } rm -f conftest.$ac_ext conftest$ac_cv_exeext conftest.out ac_clean_files=$ac_clean_files_save { $as_echo "$as_me:${as_lineno-$LINENO}: checking for suffix of object files" >&5 $as_echo_n "checking for suffix of object files... " >&6; } if test "${ac_cv_objext+set}" = set; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { ; return 0; } _ACEOF rm -f conftest.o conftest.obj if { { ac_try="$ac_compile" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" $as_echo "$ac_try_echo"; } >&5 (eval "$ac_compile") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then : for ac_file in conftest.o conftest.obj conftest.*; do test -f "$ac_file" || continue; case $ac_file in *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM ) ;; *) ac_cv_objext=`expr "$ac_file" : '.*\.\(.*\)'` break;; esac done else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} as_fn_error "cannot compute suffix of object files: cannot compile See \`config.log' for more details." "$LINENO" 5; } fi rm -f conftest.$ac_cv_objext conftest.$ac_ext fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_objext" >&5 $as_echo "$ac_cv_objext" >&6; } OBJEXT=$ac_cv_objext ac_objext=$OBJEXT { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using the GNU C compiler" >&5 $as_echo_n "checking whether we are using the GNU C compiler... " >&6; } if test "${ac_cv_c_compiler_gnu+set}" = set; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { #ifndef __GNUC__ choke me #endif ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO"; then : ac_compiler_gnu=yes else ac_compiler_gnu=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext ac_cv_c_compiler_gnu=$ac_compiler_gnu fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_compiler_gnu" >&5 $as_echo "$ac_cv_c_compiler_gnu" >&6; } if test $ac_compiler_gnu = yes; then GCC=yes else GCC= fi ac_test_CFLAGS=${CFLAGS+set} ac_save_CFLAGS=$CFLAGS { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC accepts -g" >&5 $as_echo_n "checking whether $CC accepts -g... " >&6; } if test "${ac_cv_prog_cc_g+set}" = set; then : $as_echo_n "(cached) " >&6 else ac_save_c_werror_flag=$ac_c_werror_flag ac_c_werror_flag=yes ac_cv_prog_cc_g=no CFLAGS="-g" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO"; then : ac_cv_prog_cc_g=yes else CFLAGS="" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO"; then : else ac_c_werror_flag=$ac_save_c_werror_flag CFLAGS="-g" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO"; then : ac_cv_prog_cc_g=yes fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext ac_c_werror_flag=$ac_save_c_werror_flag fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_g" >&5 $as_echo "$ac_cv_prog_cc_g" >&6; } if test "$ac_test_CFLAGS" = set; then CFLAGS=$ac_save_CFLAGS elif test $ac_cv_prog_cc_g = yes; then if test "$GCC" = yes; then CFLAGS="-g -O2" else CFLAGS="-g" fi else if test "$GCC" = yes; then CFLAGS="-O2" else CFLAGS= fi fi { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $CC option to accept ISO C89" >&5 $as_echo_n "checking for $CC option to accept ISO C89... " >&6; } if test "${ac_cv_prog_cc_c89+set}" = set; then : $as_echo_n "(cached) " >&6 else ac_cv_prog_cc_c89=no ac_save_CC=$CC cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include #include #include #include /* Most of the following tests are stolen from RCS 5.7's src/conf.sh. */ struct buf { int x; }; FILE * (*rcsopen) (struct buf *, struct stat *, int); static char *e (p, i) char **p; int i; { return p[i]; } static char *f (char * (*g) (char **, int), char **p, ...) { char *s; va_list v; va_start (v,p); s = g (p, va_arg (v,int)); va_end (v); return s; } /* OSF 4.0 Compaq cc is some sort of almost-ANSI by default. It has function prototypes and stuff, but not '\xHH' hex character constants. These don't provoke an error unfortunately, instead are silently treated as 'x'. The following induces an error, until -std is added to get proper ANSI mode. Curiously '\x00'!='x' always comes out true, for an array size at least. It's necessary to write '\x00'==0 to get something that's true only with -std. */ int osf4_cc_array ['\x00' == 0 ? 1 : -1]; /* IBM C 6 for AIX is almost-ANSI by default, but it replaces macro parameters inside strings and character constants. */ #define FOO(x) 'x' int xlc6_cc_array[FOO(a) == 'x' ? 1 : -1]; int test (int i, double x); struct s1 {int (*f) (int a);}; struct s2 {int (*f) (double a);}; int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int); int argc; char **argv; int main () { return f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1]; ; return 0; } _ACEOF for ac_arg in '' -qlanglvl=extc89 -qlanglvl=ansi -std \ -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__" do CC="$ac_save_CC $ac_arg" if ac_fn_c_try_compile "$LINENO"; then : ac_cv_prog_cc_c89=$ac_arg fi rm -f core conftest.err conftest.$ac_objext test "x$ac_cv_prog_cc_c89" != "xno" && break done rm -f conftest.$ac_ext CC=$ac_save_CC fi # AC_CACHE_VAL case "x$ac_cv_prog_cc_c89" in x) { $as_echo "$as_me:${as_lineno-$LINENO}: result: none needed" >&5 $as_echo "none needed" >&6; } ;; xno) { $as_echo "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5 $as_echo "unsupported" >&6; } ;; *) CC="$CC $ac_cv_prog_cc_c89" { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c89" >&5 $as_echo "$ac_cv_prog_cc_c89" >&6; } ;; esac if test "x$ac_cv_prog_cc_c89" != xno; then : fi ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu depcc="$CC" am_compiler_list= { $as_echo "$as_me:${as_lineno-$LINENO}: checking dependency style of $depcc" >&5 $as_echo_n "checking dependency style of $depcc... " >&6; } if test "${am_cv_CC_dependencies_compiler_type+set}" = set; then : $as_echo_n "(cached) " >&6 else if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then # We make a subdir and do the tests there. Otherwise we can end up # making bogus files that we don't know about and never remove. For # instance it was reported that on HP-UX the gcc test will end up # making a dummy file named `D' -- because `-MD' means `put the output # in D'. mkdir conftest.dir # Copy depcomp to subdir because otherwise we won't find it if we're # using a relative directory. cp "$am_depcomp" conftest.dir cd conftest.dir # We will build objects and dependencies in a subdirectory because # it helps to detect inapplicable dependency modes. For instance # both Tru64's cc and ICC support -MD to output dependencies as a # side effect of compilation, but ICC will put the dependencies in # the current directory while Tru64 will put them in the object # directory. mkdir sub am_cv_CC_dependencies_compiler_type=none if test "$am_compiler_list" = ""; then am_compiler_list=`sed -n 's/^#*\([a-zA-Z0-9]*\))$/\1/p' < ./depcomp` fi am__universal=false case " $depcc " in #( *\ -arch\ *\ -arch\ *) am__universal=true ;; esac for depmode in $am_compiler_list; do # Setup a source with many dependencies, because some compilers # like to wrap large dependency lists on column 80 (with \), and # we should not choose a depcomp mode which is confused by this. # # We need to recreate these files for each test, as the compiler may # overwrite some of them when testing with obscure command lines. # This happens at least with the AIX C compiler. : > sub/conftest.c for i in 1 2 3 4 5 6; do echo '#include "conftst'$i'.h"' >> sub/conftest.c # Using `: > sub/conftst$i.h' creates only sub/conftst1.h with # Solaris 8's {/usr,}/bin/sh. touch sub/conftst$i.h done echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf # We check with `-c' and `-o' for the sake of the "dashmstdout" # mode. It turns out that the SunPro C++ compiler does not properly # handle `-M -o', and we need to detect this. Also, some Intel # versions had trouble with output in subdirs am__obj=sub/conftest.${OBJEXT-o} am__minus_obj="-o $am__obj" case $depmode in gcc) # This depmode causes a compiler race in universal mode. test "$am__universal" = false || continue ;; nosideeffect) # after this tag, mechanisms are not by side-effect, so they'll # only be used when explicitly requested if test "x$enable_dependency_tracking" = xyes; then continue else break fi ;; msvisualcpp | msvcmsys) # This compiler won't grok `-c -o', but also, the minuso test has # not run yet. These depmodes are late enough in the game, and # so weak that their functioning should not be impacted. am__obj=conftest.${OBJEXT-o} am__minus_obj= ;; none) break ;; esac if depmode=$depmode \ source=sub/conftest.c object=$am__obj \ depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \ $SHELL ./depcomp $depcc -c $am__minus_obj sub/conftest.c \ >/dev/null 2>conftest.err && grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 && grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 && grep $am__obj sub/conftest.Po > /dev/null 2>&1 && ${MAKE-make} -s -f confmf > /dev/null 2>&1; then # icc doesn't choke on unknown options, it will just issue warnings # or remarks (even with -Werror). So we grep stderr for any message # that says an option was ignored or not supported. # When given -MP, icc 7.0 and 7.1 complain thusly: # icc: Command line warning: ignoring option '-M'; no argument required # The diagnosis changed in icc 8.0: # icc: Command line remark: option '-MP' not supported if (grep 'ignoring option' conftest.err || grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else am_cv_CC_dependencies_compiler_type=$depmode break fi fi done cd .. rm -rf conftest.dir else am_cv_CC_dependencies_compiler_type=none fi fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_CC_dependencies_compiler_type" >&5 $as_echo "$am_cv_CC_dependencies_compiler_type" >&6; } CCDEPMODE=depmode=$am_cv_CC_dependencies_compiler_type if test "x$enable_dependency_tracking" != xno \ && test "$am_cv_CC_dependencies_compiler_type" = gcc3; then am__fastdepCC_TRUE= am__fastdepCC_FALSE='#' else am__fastdepCC_TRUE='#' am__fastdepCC_FALSE= fi { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing strerror" >&5 $as_echo_n "checking for library containing strerror... " >&6; } if test "${ac_cv_search_strerror+set}" = set; then : $as_echo_n "(cached) " >&6 else ac_func_search_save_LIBS=$LIBS cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ /* Override any GCC internal prototype to avoid an error. Use char because int might match the return type of a GCC builtin and then its argument prototype would still apply. */ #ifdef __cplusplus extern "C" #endif char strerror (); int main () { return strerror (); ; return 0; } _ACEOF for ac_lib in '' cposix; do if test -z "$ac_lib"; then ac_res="none required" else ac_res=-l$ac_lib LIBS="-l$ac_lib $ac_func_search_save_LIBS" fi if ac_fn_c_try_link "$LINENO"; then : ac_cv_search_strerror=$ac_res fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext if test "${ac_cv_search_strerror+set}" = set; then : break fi done if test "${ac_cv_search_strerror+set}" = set; then : else ac_cv_search_strerror=no fi rm conftest.$ac_ext LIBS=$ac_func_search_save_LIBS fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_strerror" >&5 $as_echo "$ac_cv_search_strerror" >&6; } ac_res=$ac_cv_search_strerror if test "$ac_res" != no; then : test "$ac_res" = "none required" || LIBS="$ac_res $LIBS" fi ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args. set dummy ${ac_tool_prefix}gcc; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if test "${ac_cv_prog_CC+set}" = set; then : $as_echo_n "(cached) " >&6 else if test -n "$CC"; then ac_cv_prog_CC="$CC" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_CC="${ac_tool_prefix}gcc" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi CC=$ac_cv_prog_CC if test -n "$CC"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 $as_echo "$CC" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi fi if test -z "$ac_cv_prog_CC"; then ac_ct_CC=$CC # Extract the first word of "gcc", so it can be a program name with args. set dummy gcc; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if test "${ac_cv_prog_ac_ct_CC+set}" = set; then : $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_CC"; then ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_ac_ct_CC="gcc" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi ac_ct_CC=$ac_cv_prog_ac_ct_CC if test -n "$ac_ct_CC"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5 $as_echo "$ac_ct_CC" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test "x$ac_ct_CC" = x; then CC="" else case $cross_compiling:$ac_tool_warned in yes:) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac CC=$ac_ct_CC fi else CC="$ac_cv_prog_CC" fi if test -z "$CC"; then if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args. set dummy ${ac_tool_prefix}cc; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if test "${ac_cv_prog_CC+set}" = set; then : $as_echo_n "(cached) " >&6 else if test -n "$CC"; then ac_cv_prog_CC="$CC" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_CC="${ac_tool_prefix}cc" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi CC=$ac_cv_prog_CC if test -n "$CC"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 $as_echo "$CC" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi fi fi if test -z "$CC"; then # Extract the first word of "cc", so it can be a program name with args. set dummy cc; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if test "${ac_cv_prog_CC+set}" = set; then : $as_echo_n "(cached) " >&6 else if test -n "$CC"; then ac_cv_prog_CC="$CC" # Let the user override the test. else ac_prog_rejected=no as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then ac_prog_rejected=yes continue fi ac_cv_prog_CC="cc" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS if test $ac_prog_rejected = yes; then # We found a bogon in the path, so make sure we never use it. set dummy $ac_cv_prog_CC shift if test $# != 0; then # We chose a different compiler from the bogus one. # However, it has the same basename, so the bogon will be chosen # first if we set CC to just the basename; use the full file name. shift ac_cv_prog_CC="$as_dir/$ac_word${1+' '}$@" fi fi fi fi CC=$ac_cv_prog_CC if test -n "$CC"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 $as_echo "$CC" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi fi if test -z "$CC"; then if test -n "$ac_tool_prefix"; then for ac_prog in cl.exe do # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. set dummy $ac_tool_prefix$ac_prog; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if test "${ac_cv_prog_CC+set}" = set; then : $as_echo_n "(cached) " >&6 else if test -n "$CC"; then ac_cv_prog_CC="$CC" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_CC="$ac_tool_prefix$ac_prog" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi CC=$ac_cv_prog_CC if test -n "$CC"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 $as_echo "$CC" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi test -n "$CC" && break done fi if test -z "$CC"; then ac_ct_CC=$CC for ac_prog in cl.exe do # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if test "${ac_cv_prog_ac_ct_CC+set}" = set; then : $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_CC"; then ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_ac_ct_CC="$ac_prog" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi ac_ct_CC=$ac_cv_prog_ac_ct_CC if test -n "$ac_ct_CC"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5 $as_echo "$ac_ct_CC" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi test -n "$ac_ct_CC" && break done if test "x$ac_ct_CC" = x; then CC="" else case $cross_compiling:$ac_tool_warned in yes:) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac CC=$ac_ct_CC fi fi fi test -z "$CC" && { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} as_fn_error "no acceptable C compiler found in \$PATH See \`config.log' for more details." "$LINENO" 5; } # Provide some information about the compiler. $as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler version" >&5 set X $ac_compile ac_compiler=$2 for ac_option in --version -v -V -qversion; do { { ac_try="$ac_compiler $ac_option >&5" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" $as_echo "$ac_try_echo"; } >&5 (eval "$ac_compiler $ac_option >&5") 2>conftest.err ac_status=$? if test -s conftest.err; then sed '10a\ ... rest of stderr output deleted ... 10q' conftest.err >conftest.er1 cat conftest.er1 >&5 fi rm -f conftest.er1 conftest.err $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } done { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using the GNU C compiler" >&5 $as_echo_n "checking whether we are using the GNU C compiler... " >&6; } if test "${ac_cv_c_compiler_gnu+set}" = set; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { #ifndef __GNUC__ choke me #endif ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO"; then : ac_compiler_gnu=yes else ac_compiler_gnu=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext ac_cv_c_compiler_gnu=$ac_compiler_gnu fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_compiler_gnu" >&5 $as_echo "$ac_cv_c_compiler_gnu" >&6; } if test $ac_compiler_gnu = yes; then GCC=yes else GCC= fi ac_test_CFLAGS=${CFLAGS+set} ac_save_CFLAGS=$CFLAGS { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC accepts -g" >&5 $as_echo_n "checking whether $CC accepts -g... " >&6; } if test "${ac_cv_prog_cc_g+set}" = set; then : $as_echo_n "(cached) " >&6 else ac_save_c_werror_flag=$ac_c_werror_flag ac_c_werror_flag=yes ac_cv_prog_cc_g=no CFLAGS="-g" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO"; then : ac_cv_prog_cc_g=yes else CFLAGS="" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO"; then : else ac_c_werror_flag=$ac_save_c_werror_flag CFLAGS="-g" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO"; then : ac_cv_prog_cc_g=yes fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext ac_c_werror_flag=$ac_save_c_werror_flag fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_g" >&5 $as_echo "$ac_cv_prog_cc_g" >&6; } if test "$ac_test_CFLAGS" = set; then CFLAGS=$ac_save_CFLAGS elif test $ac_cv_prog_cc_g = yes; then if test "$GCC" = yes; then CFLAGS="-g -O2" else CFLAGS="-g" fi else if test "$GCC" = yes; then CFLAGS="-O2" else CFLAGS= fi fi { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $CC option to accept ISO C89" >&5 $as_echo_n "checking for $CC option to accept ISO C89... " >&6; } if test "${ac_cv_prog_cc_c89+set}" = set; then : $as_echo_n "(cached) " >&6 else ac_cv_prog_cc_c89=no ac_save_CC=$CC cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include #include #include #include /* Most of the following tests are stolen from RCS 5.7's src/conf.sh. */ struct buf { int x; }; FILE * (*rcsopen) (struct buf *, struct stat *, int); static char *e (p, i) char **p; int i; { return p[i]; } static char *f (char * (*g) (char **, int), char **p, ...) { char *s; va_list v; va_start (v,p); s = g (p, va_arg (v,int)); va_end (v); return s; } /* OSF 4.0 Compaq cc is some sort of almost-ANSI by default. It has function prototypes and stuff, but not '\xHH' hex character constants. These don't provoke an error unfortunately, instead are silently treated as 'x'. The following induces an error, until -std is added to get proper ANSI mode. Curiously '\x00'!='x' always comes out true, for an array size at least. It's necessary to write '\x00'==0 to get something that's true only with -std. */ int osf4_cc_array ['\x00' == 0 ? 1 : -1]; /* IBM C 6 for AIX is almost-ANSI by default, but it replaces macro parameters inside strings and character constants. */ #define FOO(x) 'x' int xlc6_cc_array[FOO(a) == 'x' ? 1 : -1]; int test (int i, double x); struct s1 {int (*f) (int a);}; struct s2 {int (*f) (double a);}; int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int); int argc; char **argv; int main () { return f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1]; ; return 0; } _ACEOF for ac_arg in '' -qlanglvl=extc89 -qlanglvl=ansi -std \ -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__" do CC="$ac_save_CC $ac_arg" if ac_fn_c_try_compile "$LINENO"; then : ac_cv_prog_cc_c89=$ac_arg fi rm -f core conftest.err conftest.$ac_objext test "x$ac_cv_prog_cc_c89" != "xno" && break done rm -f conftest.$ac_ext CC=$ac_save_CC fi # AC_CACHE_VAL case "x$ac_cv_prog_cc_c89" in x) { $as_echo "$as_me:${as_lineno-$LINENO}: result: none needed" >&5 $as_echo "none needed" >&6; } ;; xno) { $as_echo "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5 $as_echo "unsupported" >&6; } ;; *) CC="$CC $ac_cv_prog_cc_c89" { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c89" >&5 $as_echo "$ac_cv_prog_cc_c89" >&6; } ;; esac if test "x$ac_cv_prog_cc_c89" != xno; then : fi ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu depcc="$CC" am_compiler_list= { $as_echo "$as_me:${as_lineno-$LINENO}: checking dependency style of $depcc" >&5 $as_echo_n "checking dependency style of $depcc... " >&6; } if test "${am_cv_CC_dependencies_compiler_type+set}" = set; then : $as_echo_n "(cached) " >&6 else if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then # We make a subdir and do the tests there. Otherwise we can end up # making bogus files that we don't know about and never remove. For # instance it was reported that on HP-UX the gcc test will end up # making a dummy file named `D' -- because `-MD' means `put the output # in D'. mkdir conftest.dir # Copy depcomp to subdir because otherwise we won't find it if we're # using a relative directory. cp "$am_depcomp" conftest.dir cd conftest.dir # We will build objects and dependencies in a subdirectory because # it helps to detect inapplicable dependency modes. For instance # both Tru64's cc and ICC support -MD to output dependencies as a # side effect of compilation, but ICC will put the dependencies in # the current directory while Tru64 will put them in the object # directory. mkdir sub am_cv_CC_dependencies_compiler_type=none if test "$am_compiler_list" = ""; then am_compiler_list=`sed -n 's/^#*\([a-zA-Z0-9]*\))$/\1/p' < ./depcomp` fi am__universal=false case " $depcc " in #( *\ -arch\ *\ -arch\ *) am__universal=true ;; esac for depmode in $am_compiler_list; do # Setup a source with many dependencies, because some compilers # like to wrap large dependency lists on column 80 (with \), and # we should not choose a depcomp mode which is confused by this. # # We need to recreate these files for each test, as the compiler may # overwrite some of them when testing with obscure command lines. # This happens at least with the AIX C compiler. : > sub/conftest.c for i in 1 2 3 4 5 6; do echo '#include "conftst'$i'.h"' >> sub/conftest.c # Using `: > sub/conftst$i.h' creates only sub/conftst1.h with # Solaris 8's {/usr,}/bin/sh. touch sub/conftst$i.h done echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf # We check with `-c' and `-o' for the sake of the "dashmstdout" # mode. It turns out that the SunPro C++ compiler does not properly # handle `-M -o', and we need to detect this. Also, some Intel # versions had trouble with output in subdirs am__obj=sub/conftest.${OBJEXT-o} am__minus_obj="-o $am__obj" case $depmode in gcc) # This depmode causes a compiler race in universal mode. test "$am__universal" = false || continue ;; nosideeffect) # after this tag, mechanisms are not by side-effect, so they'll # only be used when explicitly requested if test "x$enable_dependency_tracking" = xyes; then continue else break fi ;; msvisualcpp | msvcmsys) # This compiler won't grok `-c -o', but also, the minuso test has # not run yet. These depmodes are late enough in the game, and # so weak that their functioning should not be impacted. am__obj=conftest.${OBJEXT-o} am__minus_obj= ;; none) break ;; esac if depmode=$depmode \ source=sub/conftest.c object=$am__obj \ depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \ $SHELL ./depcomp $depcc -c $am__minus_obj sub/conftest.c \ >/dev/null 2>conftest.err && grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 && grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 && grep $am__obj sub/conftest.Po > /dev/null 2>&1 && ${MAKE-make} -s -f confmf > /dev/null 2>&1; then # icc doesn't choke on unknown options, it will just issue warnings # or remarks (even with -Werror). So we grep stderr for any message # that says an option was ignored or not supported. # When given -MP, icc 7.0 and 7.1 complain thusly: # icc: Command line warning: ignoring option '-M'; no argument required # The diagnosis changed in icc 8.0: # icc: Command line remark: option '-MP' not supported if (grep 'ignoring option' conftest.err || grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else am_cv_CC_dependencies_compiler_type=$depmode break fi fi done cd .. rm -rf conftest.dir else am_cv_CC_dependencies_compiler_type=none fi fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_CC_dependencies_compiler_type" >&5 $as_echo "$am_cv_CC_dependencies_compiler_type" >&6; } CCDEPMODE=depmode=$am_cv_CC_dependencies_compiler_type if test "x$enable_dependency_tracking" != xno \ && test "$am_cv_CC_dependencies_compiler_type" = gcc3; then am__fastdepCC_TRUE= am__fastdepCC_FALSE='#' else am__fastdepCC_TRUE='#' am__fastdepCC_FALSE= fi ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to run the C preprocessor" >&5 $as_echo_n "checking how to run the C preprocessor... " >&6; } # On Suns, sometimes $CPP names a directory. if test -n "$CPP" && test -d "$CPP"; then CPP= fi if test -z "$CPP"; then if test "${ac_cv_prog_CPP+set}" = set; then : $as_echo_n "(cached) " >&6 else # Double quotes because CPP needs to be expanded for CPP in "$CC -E" "$CC -E -traditional-cpp" "/lib/cpp" do ac_preproc_ok=false for ac_c_preproc_warn_flag in '' yes do # Use a header file that comes with gcc, so configuring glibc # with a fresh cross-compiler works. # Prefer to if __STDC__ is defined, since # exists even on freestanding compilers. # On the NeXT, cc -E runs the code through the compiler's parser, # not just through cpp. "Syntax error" is here to catch this case. cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #ifdef __STDC__ # include #else # include #endif Syntax error _ACEOF if ac_fn_c_try_cpp "$LINENO"; then : else # Broken: fails on valid input. continue fi rm -f conftest.err conftest.$ac_ext # OK, works on sane cases. Now check whether nonexistent headers # can be detected and how. cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include _ACEOF if ac_fn_c_try_cpp "$LINENO"; then : # Broken: success on invalid input. continue else # Passes both tests. ac_preproc_ok=: break fi rm -f conftest.err conftest.$ac_ext done # Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. rm -f conftest.err conftest.$ac_ext if $ac_preproc_ok; then : break fi done ac_cv_prog_CPP=$CPP fi CPP=$ac_cv_prog_CPP else ac_cv_prog_CPP=$CPP fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CPP" >&5 $as_echo "$CPP" >&6; } ac_preproc_ok=false for ac_c_preproc_warn_flag in '' yes do # Use a header file that comes with gcc, so configuring glibc # with a fresh cross-compiler works. # Prefer to if __STDC__ is defined, since # exists even on freestanding compilers. # On the NeXT, cc -E runs the code through the compiler's parser, # not just through cpp. "Syntax error" is here to catch this case. cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #ifdef __STDC__ # include #else # include #endif Syntax error _ACEOF if ac_fn_c_try_cpp "$LINENO"; then : else # Broken: fails on valid input. continue fi rm -f conftest.err conftest.$ac_ext # OK, works on sane cases. Now check whether nonexistent headers # can be detected and how. cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include _ACEOF if ac_fn_c_try_cpp "$LINENO"; then : # Broken: success on invalid input. continue else # Passes both tests. ac_preproc_ok=: break fi rm -f conftest.err conftest.$ac_ext done # Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. rm -f conftest.err conftest.$ac_ext if $ac_preproc_ok; then : else { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} as_fn_error "C preprocessor \"$CPP\" fails sanity check See \`config.log' for more details." "$LINENO" 5; } fi ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu { $as_echo "$as_me:${as_lineno-$LINENO}: checking for grep that handles long lines and -e" >&5 $as_echo_n "checking for grep that handles long lines and -e... " >&6; } if test "${ac_cv_path_GREP+set}" = set; then : $as_echo_n "(cached) " >&6 else if test -z "$GREP"; then ac_path_GREP_found=false # Loop through the user's path and test for each of PROGNAME-LIST as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_prog in grep ggrep; do for ac_exec_ext in '' $ac_executable_extensions; do ac_path_GREP="$as_dir/$ac_prog$ac_exec_ext" { test -f "$ac_path_GREP" && $as_test_x "$ac_path_GREP"; } || continue # Check for GNU ac_path_GREP and select it if it is found. # Check for GNU $ac_path_GREP case `"$ac_path_GREP" --version 2>&1` in *GNU*) ac_cv_path_GREP="$ac_path_GREP" ac_path_GREP_found=:;; *) ac_count=0 $as_echo_n 0123456789 >"conftest.in" while : do cat "conftest.in" "conftest.in" >"conftest.tmp" mv "conftest.tmp" "conftest.in" cp "conftest.in" "conftest.nl" $as_echo 'GREP' >> "conftest.nl" "$ac_path_GREP" -e 'GREP$' -e '-(cannot match)-' < "conftest.nl" >"conftest.out" 2>/dev/null || break diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break as_fn_arith $ac_count + 1 && ac_count=$as_val if test $ac_count -gt ${ac_path_GREP_max-0}; then # Best one so far, save it but keep looking for a better one ac_cv_path_GREP="$ac_path_GREP" ac_path_GREP_max=$ac_count fi # 10*(2^10) chars as input seems more than enough test $ac_count -gt 10 && break done rm -f conftest.in conftest.tmp conftest.nl conftest.out;; esac $ac_path_GREP_found && break 3 done done done IFS=$as_save_IFS if test -z "$ac_cv_path_GREP"; then as_fn_error "no acceptable grep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5 fi else ac_cv_path_GREP=$GREP fi fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_GREP" >&5 $as_echo "$ac_cv_path_GREP" >&6; } GREP="$ac_cv_path_GREP" { $as_echo "$as_me:${as_lineno-$LINENO}: checking for egrep" >&5 $as_echo_n "checking for egrep... " >&6; } if test "${ac_cv_path_EGREP+set}" = set; then : $as_echo_n "(cached) " >&6 else if echo a | $GREP -E '(a|b)' >/dev/null 2>&1 then ac_cv_path_EGREP="$GREP -E" else if test -z "$EGREP"; then ac_path_EGREP_found=false # Loop through the user's path and test for each of PROGNAME-LIST as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_prog in egrep; do for ac_exec_ext in '' $ac_executable_extensions; do ac_path_EGREP="$as_dir/$ac_prog$ac_exec_ext" { test -f "$ac_path_EGREP" && $as_test_x "$ac_path_EGREP"; } || continue # Check for GNU ac_path_EGREP and select it if it is found. # Check for GNU $ac_path_EGREP case `"$ac_path_EGREP" --version 2>&1` in *GNU*) ac_cv_path_EGREP="$ac_path_EGREP" ac_path_EGREP_found=:;; *) ac_count=0 $as_echo_n 0123456789 >"conftest.in" while : do cat "conftest.in" "conftest.in" >"conftest.tmp" mv "conftest.tmp" "conftest.in" cp "conftest.in" "conftest.nl" $as_echo 'EGREP' >> "conftest.nl" "$ac_path_EGREP" 'EGREP$' < "conftest.nl" >"conftest.out" 2>/dev/null || break diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break as_fn_arith $ac_count + 1 && ac_count=$as_val if test $ac_count -gt ${ac_path_EGREP_max-0}; then # Best one so far, save it but keep looking for a better one ac_cv_path_EGREP="$ac_path_EGREP" ac_path_EGREP_max=$ac_count fi # 10*(2^10) chars as input seems more than enough test $ac_count -gt 10 && break done rm -f conftest.in conftest.tmp conftest.nl conftest.out;; esac $ac_path_EGREP_found && break 3 done done done IFS=$as_save_IFS if test -z "$ac_cv_path_EGREP"; then as_fn_error "no acceptable egrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5 fi else ac_cv_path_EGREP=$EGREP fi fi fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_EGREP" >&5 $as_echo "$ac_cv_path_EGREP" >&6; } EGREP="$ac_cv_path_EGREP" { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ANSI C header files" >&5 $as_echo_n "checking for ANSI C header files... " >&6; } if test "${ac_cv_header_stdc+set}" = set; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include #include #include #include int main () { ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO"; then : ac_cv_header_stdc=yes else ac_cv_header_stdc=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext if test $ac_cv_header_stdc = yes; then # SunOS 4.x string.h does not declare mem*, contrary to ANSI. cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include _ACEOF if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | $EGREP "memchr" >/dev/null 2>&1; then : else ac_cv_header_stdc=no fi rm -f conftest* fi if test $ac_cv_header_stdc = yes; then # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI. cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include _ACEOF if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | $EGREP "free" >/dev/null 2>&1; then : else ac_cv_header_stdc=no fi rm -f conftest* fi if test $ac_cv_header_stdc = yes; then # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi. if test "$cross_compiling" = yes; then : : else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include #include #if ((' ' & 0x0FF) == 0x020) # define ISLOWER(c) ('a' <= (c) && (c) <= 'z') # define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c)) #else # define ISLOWER(c) \ (('a' <= (c) && (c) <= 'i') \ || ('j' <= (c) && (c) <= 'r') \ || ('s' <= (c) && (c) <= 'z')) # define TOUPPER(c) (ISLOWER(c) ? ((c) | 0x40) : (c)) #endif #define XOR(e, f) (((e) && !(f)) || (!(e) && (f))) int main () { int i; for (i = 0; i < 256; i++) if (XOR (islower (i), ISLOWER (i)) || toupper (i) != TOUPPER (i)) return 2; return 0; } _ACEOF if ac_fn_c_try_run "$LINENO"; then : else ac_cv_header_stdc=no fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ conftest.$ac_objext conftest.beam conftest.$ac_ext fi fi fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_stdc" >&5 $as_echo "$ac_cv_header_stdc" >&6; } if test $ac_cv_header_stdc = yes; then $as_echo "#define STDC_HEADERS 1" >>confdefs.h fi enable_win32_dll=yes case $host in *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-cegcc*) if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}as", so it can be a program name with args. set dummy ${ac_tool_prefix}as; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if test "${ac_cv_prog_AS+set}" = set; then : $as_echo_n "(cached) " >&6 else if test -n "$AS"; then ac_cv_prog_AS="$AS" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_AS="${ac_tool_prefix}as" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi AS=$ac_cv_prog_AS if test -n "$AS"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $AS" >&5 $as_echo "$AS" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi fi if test -z "$ac_cv_prog_AS"; then ac_ct_AS=$AS # Extract the first word of "as", so it can be a program name with args. set dummy as; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if test "${ac_cv_prog_ac_ct_AS+set}" = set; then : $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_AS"; then ac_cv_prog_ac_ct_AS="$ac_ct_AS" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_ac_ct_AS="as" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi ac_ct_AS=$ac_cv_prog_ac_ct_AS if test -n "$ac_ct_AS"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_AS" >&5 $as_echo "$ac_ct_AS" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test "x$ac_ct_AS" = x; then AS="false" else case $cross_compiling:$ac_tool_warned in yes:) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac AS=$ac_ct_AS fi else AS="$ac_cv_prog_AS" fi if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}dlltool", so it can be a program name with args. set dummy ${ac_tool_prefix}dlltool; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if test "${ac_cv_prog_DLLTOOL+set}" = set; then : $as_echo_n "(cached) " >&6 else if test -n "$DLLTOOL"; then ac_cv_prog_DLLTOOL="$DLLTOOL" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_DLLTOOL="${ac_tool_prefix}dlltool" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi DLLTOOL=$ac_cv_prog_DLLTOOL if test -n "$DLLTOOL"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $DLLTOOL" >&5 $as_echo "$DLLTOOL" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi fi if test -z "$ac_cv_prog_DLLTOOL"; then ac_ct_DLLTOOL=$DLLTOOL # Extract the first word of "dlltool", so it can be a program name with args. set dummy dlltool; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if test "${ac_cv_prog_ac_ct_DLLTOOL+set}" = set; then : $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_DLLTOOL"; then ac_cv_prog_ac_ct_DLLTOOL="$ac_ct_DLLTOOL" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_ac_ct_DLLTOOL="dlltool" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi ac_ct_DLLTOOL=$ac_cv_prog_ac_ct_DLLTOOL if test -n "$ac_ct_DLLTOOL"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_DLLTOOL" >&5 $as_echo "$ac_ct_DLLTOOL" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test "x$ac_ct_DLLTOOL" = x; then DLLTOOL="false" else case $cross_compiling:$ac_tool_warned in yes:) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac DLLTOOL=$ac_ct_DLLTOOL fi else DLLTOOL="$ac_cv_prog_DLLTOOL" fi if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}objdump", so it can be a program name with args. set dummy ${ac_tool_prefix}objdump; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if test "${ac_cv_prog_OBJDUMP+set}" = set; then : $as_echo_n "(cached) " >&6 else if test -n "$OBJDUMP"; then ac_cv_prog_OBJDUMP="$OBJDUMP" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_OBJDUMP="${ac_tool_prefix}objdump" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi OBJDUMP=$ac_cv_prog_OBJDUMP if test -n "$OBJDUMP"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OBJDUMP" >&5 $as_echo "$OBJDUMP" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi fi if test -z "$ac_cv_prog_OBJDUMP"; then ac_ct_OBJDUMP=$OBJDUMP # Extract the first word of "objdump", so it can be a program name with args. set dummy objdump; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if test "${ac_cv_prog_ac_ct_OBJDUMP+set}" = set; then : $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_OBJDUMP"; then ac_cv_prog_ac_ct_OBJDUMP="$ac_ct_OBJDUMP" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_ac_ct_OBJDUMP="objdump" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi ac_ct_OBJDUMP=$ac_cv_prog_ac_ct_OBJDUMP if test -n "$ac_ct_OBJDUMP"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OBJDUMP" >&5 $as_echo "$ac_ct_OBJDUMP" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test "x$ac_ct_OBJDUMP" = x; then OBJDUMP="false" else case $cross_compiling:$ac_tool_warned in yes:) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac OBJDUMP=$ac_ct_OBJDUMP fi else OBJDUMP="$ac_cv_prog_OBJDUMP" fi ;; esac test -z "$AS" && AS=as test -z "$DLLTOOL" && DLLTOOL=dlltool test -z "$OBJDUMP" && OBJDUMP=objdump case `pwd` in *\ * | *\ *) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Libtool does not cope well with whitespace in \`pwd\`" >&5 $as_echo "$as_me: WARNING: Libtool does not cope well with whitespace in \`pwd\`" >&2;} ;; esac macro_version='2.2.6b' macro_revision='1.3017' ltmain="$ac_aux_dir/ltmain.sh" { $as_echo "$as_me:${as_lineno-$LINENO}: checking for a sed that does not truncate output" >&5 $as_echo_n "checking for a sed that does not truncate output... " >&6; } if test "${ac_cv_path_SED+set}" = set; then : $as_echo_n "(cached) " >&6 else ac_script=s/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb/ for ac_i in 1 2 3 4 5 6 7; do ac_script="$ac_script$as_nl$ac_script" done echo "$ac_script" 2>/dev/null | sed 99q >conftest.sed { ac_script=; unset ac_script;} if test -z "$SED"; then ac_path_SED_found=false # Loop through the user's path and test for each of PROGNAME-LIST as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_prog in sed gsed; do for ac_exec_ext in '' $ac_executable_extensions; do ac_path_SED="$as_dir/$ac_prog$ac_exec_ext" { test -f "$ac_path_SED" && $as_test_x "$ac_path_SED"; } || continue # Check for GNU ac_path_SED and select it if it is found. # Check for GNU $ac_path_SED case `"$ac_path_SED" --version 2>&1` in *GNU*) ac_cv_path_SED="$ac_path_SED" ac_path_SED_found=:;; *) ac_count=0 $as_echo_n 0123456789 >"conftest.in" while : do cat "conftest.in" "conftest.in" >"conftest.tmp" mv "conftest.tmp" "conftest.in" cp "conftest.in" "conftest.nl" $as_echo '' >> "conftest.nl" "$ac_path_SED" -f conftest.sed < "conftest.nl" >"conftest.out" 2>/dev/null || break diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break as_fn_arith $ac_count + 1 && ac_count=$as_val if test $ac_count -gt ${ac_path_SED_max-0}; then # Best one so far, save it but keep looking for a better one ac_cv_path_SED="$ac_path_SED" ac_path_SED_max=$ac_count fi # 10*(2^10) chars as input seems more than enough test $ac_count -gt 10 && break done rm -f conftest.in conftest.tmp conftest.nl conftest.out;; esac $ac_path_SED_found && break 3 done done done IFS=$as_save_IFS if test -z "$ac_cv_path_SED"; then as_fn_error "no acceptable sed could be found in \$PATH" "$LINENO" 5 fi else ac_cv_path_SED=$SED fi fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_SED" >&5 $as_echo "$ac_cv_path_SED" >&6; } SED="$ac_cv_path_SED" rm -f conftest.sed test -z "$SED" && SED=sed Xsed="$SED -e 1s/^X//" { $as_echo "$as_me:${as_lineno-$LINENO}: checking for fgrep" >&5 $as_echo_n "checking for fgrep... " >&6; } if test "${ac_cv_path_FGREP+set}" = set; then : $as_echo_n "(cached) " >&6 else if echo 'ab*c' | $GREP -F 'ab*c' >/dev/null 2>&1 then ac_cv_path_FGREP="$GREP -F" else if test -z "$FGREP"; then ac_path_FGREP_found=false # Loop through the user's path and test for each of PROGNAME-LIST as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_prog in fgrep; do for ac_exec_ext in '' $ac_executable_extensions; do ac_path_FGREP="$as_dir/$ac_prog$ac_exec_ext" { test -f "$ac_path_FGREP" && $as_test_x "$ac_path_FGREP"; } || continue # Check for GNU ac_path_FGREP and select it if it is found. # Check for GNU $ac_path_FGREP case `"$ac_path_FGREP" --version 2>&1` in *GNU*) ac_cv_path_FGREP="$ac_path_FGREP" ac_path_FGREP_found=:;; *) ac_count=0 $as_echo_n 0123456789 >"conftest.in" while : do cat "conftest.in" "conftest.in" >"conftest.tmp" mv "conftest.tmp" "conftest.in" cp "conftest.in" "conftest.nl" $as_echo 'FGREP' >> "conftest.nl" "$ac_path_FGREP" FGREP < "conftest.nl" >"conftest.out" 2>/dev/null || break diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break as_fn_arith $ac_count + 1 && ac_count=$as_val if test $ac_count -gt ${ac_path_FGREP_max-0}; then # Best one so far, save it but keep looking for a better one ac_cv_path_FGREP="$ac_path_FGREP" ac_path_FGREP_max=$ac_count fi # 10*(2^10) chars as input seems more than enough test $ac_count -gt 10 && break done rm -f conftest.in conftest.tmp conftest.nl conftest.out;; esac $ac_path_FGREP_found && break 3 done done done IFS=$as_save_IFS if test -z "$ac_cv_path_FGREP"; then as_fn_error "no acceptable fgrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5 fi else ac_cv_path_FGREP=$FGREP fi fi fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_FGREP" >&5 $as_echo "$ac_cv_path_FGREP" >&6; } FGREP="$ac_cv_path_FGREP" test -z "$GREP" && GREP=grep # Check whether --with-gnu-ld was given. if test "${with_gnu_ld+set}" = set; then : withval=$with_gnu_ld; test "$withval" = no || with_gnu_ld=yes else with_gnu_ld=no fi ac_prog=ld if test "$GCC" = yes; then # Check if gcc -print-prog-name=ld gives a path. { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ld used by $CC" >&5 $as_echo_n "checking for ld used by $CC... " >&6; } case $host in *-*-mingw*) # gcc leaves a trailing carriage return which upsets mingw ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;; *) ac_prog=`($CC -print-prog-name=ld) 2>&5` ;; esac case $ac_prog in # Accept absolute paths. [\\/]* | ?:[\\/]*) re_direlt='/[^/][^/]*/\.\./' # Canonicalize the pathname of ld ac_prog=`$ECHO "$ac_prog"| $SED 's%\\\\%/%g'` while $ECHO "$ac_prog" | $GREP "$re_direlt" > /dev/null 2>&1; do ac_prog=`$ECHO $ac_prog| $SED "s%$re_direlt%/%"` done test -z "$LD" && LD="$ac_prog" ;; "") # If it fails, then pretend we aren't using GCC. ac_prog=ld ;; *) # If it is relative, then search for the first ld in PATH. with_gnu_ld=unknown ;; esac elif test "$with_gnu_ld" = yes; then { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNU ld" >&5 $as_echo_n "checking for GNU ld... " >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: checking for non-GNU ld" >&5 $as_echo_n "checking for non-GNU ld... " >&6; } fi if test "${lt_cv_path_LD+set}" = set; then : $as_echo_n "(cached) " >&6 else if test -z "$LD"; then lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR for ac_dir in $PATH; do IFS="$lt_save_ifs" test -z "$ac_dir" && ac_dir=. if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then lt_cv_path_LD="$ac_dir/$ac_prog" # Check to see if the program is GNU ld. I'd rather use --version, # but apparently some variants of GNU ld only accept -v. # Break only if it was the GNU/non-GNU ld that we prefer. case `"$lt_cv_path_LD" -v 2>&1 &5 $as_echo "$LD" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi test -z "$LD" && as_fn_error "no acceptable ld found in \$PATH" "$LINENO" 5 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if the linker ($LD) is GNU ld" >&5 $as_echo_n "checking if the linker ($LD) is GNU ld... " >&6; } if test "${lt_cv_prog_gnu_ld+set}" = set; then : $as_echo_n "(cached) " >&6 else # I'd rather use --version here, but apparently some GNU lds only accept -v. case `$LD -v 2>&1 &5 $as_echo "$lt_cv_prog_gnu_ld" >&6; } with_gnu_ld=$lt_cv_prog_gnu_ld { $as_echo "$as_me:${as_lineno-$LINENO}: checking for BSD- or MS-compatible name lister (nm)" >&5 $as_echo_n "checking for BSD- or MS-compatible name lister (nm)... " >&6; } if test "${lt_cv_path_NM+set}" = set; then : $as_echo_n "(cached) " >&6 else if test -n "$NM"; then # Let the user override the test. lt_cv_path_NM="$NM" else lt_nm_to_check="${ac_tool_prefix}nm" if test -n "$ac_tool_prefix" && test "$build" = "$host"; then lt_nm_to_check="$lt_nm_to_check nm" fi for lt_tmp_nm in $lt_nm_to_check; do lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR for ac_dir in $PATH /usr/ccs/bin/elf /usr/ccs/bin /usr/ucb /bin; do IFS="$lt_save_ifs" test -z "$ac_dir" && ac_dir=. tmp_nm="$ac_dir/$lt_tmp_nm" if test -f "$tmp_nm" || test -f "$tmp_nm$ac_exeext" ; then # Check to see if the nm accepts a BSD-compat flag. # Adding the `sed 1q' prevents false positives on HP-UX, which says: # nm: unknown option "B" ignored # Tru64's nm complains that /dev/null is an invalid object file case `"$tmp_nm" -B /dev/null 2>&1 | sed '1q'` in */dev/null* | *'Invalid file or object type'*) lt_cv_path_NM="$tmp_nm -B" break ;; *) case `"$tmp_nm" -p /dev/null 2>&1 | sed '1q'` in */dev/null*) lt_cv_path_NM="$tmp_nm -p" break ;; *) lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but continue # so that we can try to find one that supports BSD flags ;; esac ;; esac fi done IFS="$lt_save_ifs" done : ${lt_cv_path_NM=no} fi fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_path_NM" >&5 $as_echo "$lt_cv_path_NM" >&6; } if test "$lt_cv_path_NM" != "no"; then NM="$lt_cv_path_NM" else # Didn't find any BSD compatible name lister, look for dumpbin. if test -n "$ac_tool_prefix"; then for ac_prog in "dumpbin -symbols" "link -dump -symbols" do # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. set dummy $ac_tool_prefix$ac_prog; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if test "${ac_cv_prog_DUMPBIN+set}" = set; then : $as_echo_n "(cached) " >&6 else if test -n "$DUMPBIN"; then ac_cv_prog_DUMPBIN="$DUMPBIN" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_DUMPBIN="$ac_tool_prefix$ac_prog" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi DUMPBIN=$ac_cv_prog_DUMPBIN if test -n "$DUMPBIN"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $DUMPBIN" >&5 $as_echo "$DUMPBIN" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi test -n "$DUMPBIN" && break done fi if test -z "$DUMPBIN"; then ac_ct_DUMPBIN=$DUMPBIN for ac_prog in "dumpbin -symbols" "link -dump -symbols" do # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if test "${ac_cv_prog_ac_ct_DUMPBIN+set}" = set; then : $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_DUMPBIN"; then ac_cv_prog_ac_ct_DUMPBIN="$ac_ct_DUMPBIN" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_ac_ct_DUMPBIN="$ac_prog" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi ac_ct_DUMPBIN=$ac_cv_prog_ac_ct_DUMPBIN if test -n "$ac_ct_DUMPBIN"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_DUMPBIN" >&5 $as_echo "$ac_ct_DUMPBIN" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi test -n "$ac_ct_DUMPBIN" && break done if test "x$ac_ct_DUMPBIN" = x; then DUMPBIN=":" else case $cross_compiling:$ac_tool_warned in yes:) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac DUMPBIN=$ac_ct_DUMPBIN fi fi if test "$DUMPBIN" != ":"; then NM="$DUMPBIN" fi fi test -z "$NM" && NM=nm { $as_echo "$as_me:${as_lineno-$LINENO}: checking the name lister ($NM) interface" >&5 $as_echo_n "checking the name lister ($NM) interface... " >&6; } if test "${lt_cv_nm_interface+set}" = set; then : $as_echo_n "(cached) " >&6 else lt_cv_nm_interface="BSD nm" echo "int some_variable = 0;" > conftest.$ac_ext (eval echo "\"\$as_me:5921: $ac_compile\"" >&5) (eval "$ac_compile" 2>conftest.err) cat conftest.err >&5 (eval echo "\"\$as_me:5924: $NM \\\"conftest.$ac_objext\\\"\"" >&5) (eval "$NM \"conftest.$ac_objext\"" 2>conftest.err > conftest.out) cat conftest.err >&5 (eval echo "\"\$as_me:5927: output\"" >&5) cat conftest.out >&5 if $GREP 'External.*some_variable' conftest.out > /dev/null; then lt_cv_nm_interface="MS dumpbin" fi rm -f conftest* fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_nm_interface" >&5 $as_echo "$lt_cv_nm_interface" >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ln -s works" >&5 $as_echo_n "checking whether ln -s works... " >&6; } LN_S=$as_ln_s if test "$LN_S" = "ln -s"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no, using $LN_S" >&5 $as_echo "no, using $LN_S" >&6; } fi # find the maximum length of command line arguments { $as_echo "$as_me:${as_lineno-$LINENO}: checking the maximum length of command line arguments" >&5 $as_echo_n "checking the maximum length of command line arguments... " >&6; } if test "${lt_cv_sys_max_cmd_len+set}" = set; then : $as_echo_n "(cached) " >&6 else i=0 teststring="ABCD" case $build_os in msdosdjgpp*) # On DJGPP, this test can blow up pretty badly due to problems in libc # (any single argument exceeding 2000 bytes causes a buffer overrun # during glob expansion). Even if it were fixed, the result of this # check would be larger than it should be. lt_cv_sys_max_cmd_len=12288; # 12K is about right ;; gnu*) # Under GNU Hurd, this test is not required because there is # no limit to the length of command line arguments. # Libtool will interpret -1 as no limit whatsoever lt_cv_sys_max_cmd_len=-1; ;; cygwin* | mingw* | cegcc*) # On Win9x/ME, this test blows up -- it succeeds, but takes # about 5 minutes as the teststring grows exponentially. # Worse, since 9x/ME are not pre-emptively multitasking, # you end up with a "frozen" computer, even though with patience # the test eventually succeeds (with a max line length of 256k). # Instead, let's just punt: use the minimum linelength reported by # all of the supported platforms: 8192 (on NT/2K/XP). lt_cv_sys_max_cmd_len=8192; ;; amigaos*) # On AmigaOS with pdksh, this test takes hours, literally. # So we just punt and use a minimum line length of 8192. lt_cv_sys_max_cmd_len=8192; ;; netbsd* | freebsd* | openbsd* | darwin* | dragonfly*) # This has been around since 386BSD, at least. Likely further. if test -x /sbin/sysctl; then lt_cv_sys_max_cmd_len=`/sbin/sysctl -n kern.argmax` elif test -x /usr/sbin/sysctl; then lt_cv_sys_max_cmd_len=`/usr/sbin/sysctl -n kern.argmax` else lt_cv_sys_max_cmd_len=65536 # usable default for all BSDs fi # And add a safety zone lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4` lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3` ;; interix*) # We know the value 262144 and hardcode it with a safety zone (like BSD) lt_cv_sys_max_cmd_len=196608 ;; osf*) # Dr. Hans Ekkehard Plesser reports seeing a kernel panic running configure # due to this test when exec_disable_arg_limit is 1 on Tru64. It is not # nice to cause kernel panics so lets avoid the loop below. # First set a reasonable default. lt_cv_sys_max_cmd_len=16384 # if test -x /sbin/sysconfig; then case `/sbin/sysconfig -q proc exec_disable_arg_limit` in *1*) lt_cv_sys_max_cmd_len=-1 ;; esac fi ;; sco3.2v5*) lt_cv_sys_max_cmd_len=102400 ;; sysv5* | sco5v6* | sysv4.2uw2*) kargmax=`grep ARG_MAX /etc/conf/cf.d/stune 2>/dev/null` if test -n "$kargmax"; then lt_cv_sys_max_cmd_len=`echo $kargmax | sed 's/.*[ ]//'` else lt_cv_sys_max_cmd_len=32768 fi ;; *) lt_cv_sys_max_cmd_len=`(getconf ARG_MAX) 2> /dev/null` if test -n "$lt_cv_sys_max_cmd_len"; then lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4` lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3` else # Make teststring a little bigger before we do anything with it. # a 1K string should be a reasonable start. for i in 1 2 3 4 5 6 7 8 ; do teststring=$teststring$teststring done SHELL=${SHELL-${CONFIG_SHELL-/bin/sh}} # If test is not a shell built-in, we'll probably end up computing a # maximum length that is only half of the actual maximum length, but # we can't tell. while { test "X"`$SHELL $0 --fallback-echo "X$teststring$teststring" 2>/dev/null` \ = "XX$teststring$teststring"; } >/dev/null 2>&1 && test $i != 17 # 1/2 MB should be enough do i=`expr $i + 1` teststring=$teststring$teststring done # Only check the string length outside the loop. lt_cv_sys_max_cmd_len=`expr "X$teststring" : ".*" 2>&1` teststring= # Add a significant safety factor because C++ compilers can tack on # massive amounts of additional arguments before passing them to the # linker. It appears as though 1/2 is a usable value. lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 2` fi ;; esac fi if test -n $lt_cv_sys_max_cmd_len ; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_sys_max_cmd_len" >&5 $as_echo "$lt_cv_sys_max_cmd_len" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: none" >&5 $as_echo "none" >&6; } fi max_cmd_len=$lt_cv_sys_max_cmd_len : ${CP="cp -f"} : ${MV="mv -f"} : ${RM="rm -f"} { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the shell understands some XSI constructs" >&5 $as_echo_n "checking whether the shell understands some XSI constructs... " >&6; } # Try some XSI features xsi_shell=no ( _lt_dummy="a/b/c" test "${_lt_dummy##*/},${_lt_dummy%/*},"${_lt_dummy%"$_lt_dummy"}, \ = c,a/b,, \ && eval 'test $(( 1 + 1 )) -eq 2 \ && test "${#_lt_dummy}" -eq 5' ) >/dev/null 2>&1 \ && xsi_shell=yes { $as_echo "$as_me:${as_lineno-$LINENO}: result: $xsi_shell" >&5 $as_echo "$xsi_shell" >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the shell understands \"+=\"" >&5 $as_echo_n "checking whether the shell understands \"+=\"... " >&6; } lt_shell_append=no ( foo=bar; set foo baz; eval "$1+=\$2" && test "$foo" = barbaz ) \ >/dev/null 2>&1 \ && lt_shell_append=yes { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_shell_append" >&5 $as_echo "$lt_shell_append" >&6; } if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then lt_unset=unset else lt_unset=false fi # test EBCDIC or ASCII case `echo X|tr X '\101'` in A) # ASCII based system # \n is not interpreted correctly by Solaris 8 /usr/ucb/tr lt_SP2NL='tr \040 \012' lt_NL2SP='tr \015\012 \040\040' ;; *) # EBCDIC based system lt_SP2NL='tr \100 \n' lt_NL2SP='tr \r\n \100\100' ;; esac { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $LD option to reload object files" >&5 $as_echo_n "checking for $LD option to reload object files... " >&6; } if test "${lt_cv_ld_reload_flag+set}" = set; then : $as_echo_n "(cached) " >&6 else lt_cv_ld_reload_flag='-r' fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ld_reload_flag" >&5 $as_echo "$lt_cv_ld_reload_flag" >&6; } reload_flag=$lt_cv_ld_reload_flag case $reload_flag in "" | " "*) ;; *) reload_flag=" $reload_flag" ;; esac reload_cmds='$LD$reload_flag -o $output$reload_objs' case $host_os in darwin*) if test "$GCC" = yes; then reload_cmds='$LTCC $LTCFLAGS -nostdlib ${wl}-r -o $output$reload_objs' else reload_cmds='$LD$reload_flag -o $output$reload_objs' fi ;; esac if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}objdump", so it can be a program name with args. set dummy ${ac_tool_prefix}objdump; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if test "${ac_cv_prog_OBJDUMP+set}" = set; then : $as_echo_n "(cached) " >&6 else if test -n "$OBJDUMP"; then ac_cv_prog_OBJDUMP="$OBJDUMP" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_OBJDUMP="${ac_tool_prefix}objdump" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi OBJDUMP=$ac_cv_prog_OBJDUMP if test -n "$OBJDUMP"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OBJDUMP" >&5 $as_echo "$OBJDUMP" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi fi if test -z "$ac_cv_prog_OBJDUMP"; then ac_ct_OBJDUMP=$OBJDUMP # Extract the first word of "objdump", so it can be a program name with args. set dummy objdump; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if test "${ac_cv_prog_ac_ct_OBJDUMP+set}" = set; then : $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_OBJDUMP"; then ac_cv_prog_ac_ct_OBJDUMP="$ac_ct_OBJDUMP" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_ac_ct_OBJDUMP="objdump" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi ac_ct_OBJDUMP=$ac_cv_prog_ac_ct_OBJDUMP if test -n "$ac_ct_OBJDUMP"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OBJDUMP" >&5 $as_echo "$ac_ct_OBJDUMP" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test "x$ac_ct_OBJDUMP" = x; then OBJDUMP="false" else case $cross_compiling:$ac_tool_warned in yes:) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac OBJDUMP=$ac_ct_OBJDUMP fi else OBJDUMP="$ac_cv_prog_OBJDUMP" fi test -z "$OBJDUMP" && OBJDUMP=objdump { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to recognize dependent libraries" >&5 $as_echo_n "checking how to recognize dependent libraries... " >&6; } if test "${lt_cv_deplibs_check_method+set}" = set; then : $as_echo_n "(cached) " >&6 else lt_cv_file_magic_cmd='$MAGIC_CMD' lt_cv_file_magic_test_file= lt_cv_deplibs_check_method='unknown' # Need to set the preceding variable on all platforms that support # interlibrary dependencies. # 'none' -- dependencies not supported. # `unknown' -- same as none, but documents that we really don't know. # 'pass_all' -- all dependencies passed with no checks. # 'test_compile' -- check by making test program. # 'file_magic [[regex]]' -- check by looking for files in library path # which responds to the $file_magic_cmd with a given extended regex. # If you have `file' or equivalent on your system and you're not sure # whether `pass_all' will *always* work, you probably want this one. case $host_os in aix[4-9]*) lt_cv_deplibs_check_method=pass_all ;; beos*) lt_cv_deplibs_check_method=pass_all ;; bsdi[45]*) lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (shared object|dynamic lib)' lt_cv_file_magic_cmd='/usr/bin/file -L' lt_cv_file_magic_test_file=/shlib/libc.so ;; cygwin*) # func_win32_libid is a shell function defined in ltmain.sh lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL' lt_cv_file_magic_cmd='func_win32_libid' ;; mingw* | pw32*) # Base MSYS/MinGW do not provide the 'file' command needed by # func_win32_libid shell function, so use a weaker test based on 'objdump', # unless we find 'file', for example because we are cross-compiling. if ( file / ) >/dev/null 2>&1; then lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL' lt_cv_file_magic_cmd='func_win32_libid' else lt_cv_deplibs_check_method='file_magic file format pei*-i386(.*architecture: i386)?' lt_cv_file_magic_cmd='$OBJDUMP -f' fi ;; cegcc) # use the weaker test based on 'objdump'. See mingw*. lt_cv_deplibs_check_method='file_magic file format pe-arm-.*little(.*architecture: arm)?' lt_cv_file_magic_cmd='$OBJDUMP -f' ;; darwin* | rhapsody*) lt_cv_deplibs_check_method=pass_all ;; freebsd* | dragonfly*) if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then case $host_cpu in i*86 ) # Not sure whether the presence of OpenBSD here was a mistake. # Let's accept both of them until this is cleared up. lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD|DragonFly)/i[3-9]86 (compact )?demand paged shared library' lt_cv_file_magic_cmd=/usr/bin/file lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*` ;; esac else lt_cv_deplibs_check_method=pass_all fi ;; gnu*) lt_cv_deplibs_check_method=pass_all ;; hpux10.20* | hpux11*) lt_cv_file_magic_cmd=/usr/bin/file case $host_cpu in ia64*) lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|ELF-[0-9][0-9]) shared object file - IA64' lt_cv_file_magic_test_file=/usr/lib/hpux32/libc.so ;; hppa*64*) lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|ELF-[0-9][0-9]) shared object file - PA-RISC [0-9].[0-9]' lt_cv_file_magic_test_file=/usr/lib/pa20_64/libc.sl ;; *) lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|PA-RISC[0-9].[0-9]) shared library' lt_cv_file_magic_test_file=/usr/lib/libc.sl ;; esac ;; interix[3-9]*) # PIC code is broken on Interix 3.x, that's why |\.a not |_pic\.a here lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so|\.a)$' ;; irix5* | irix6* | nonstopux*) case $LD in *-32|*"-32 ") libmagic=32-bit;; *-n32|*"-n32 ") libmagic=N32;; *-64|*"-64 ") libmagic=64-bit;; *) libmagic=never-match;; esac lt_cv_deplibs_check_method=pass_all ;; # This must be Linux ELF. linux* | k*bsd*-gnu) lt_cv_deplibs_check_method=pass_all ;; netbsd*) if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so\.[0-9]+\.[0-9]+|_pic\.a)$' else lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so|_pic\.a)$' fi ;; newos6*) lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (executable|dynamic lib)' lt_cv_file_magic_cmd=/usr/bin/file lt_cv_file_magic_test_file=/usr/lib/libnls.so ;; *nto* | *qnx*) lt_cv_deplibs_check_method=pass_all ;; openbsd*) if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so\.[0-9]+\.[0-9]+|\.so|_pic\.a)$' else lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so\.[0-9]+\.[0-9]+|_pic\.a)$' fi ;; osf3* | osf4* | osf5*) lt_cv_deplibs_check_method=pass_all ;; rdos*) lt_cv_deplibs_check_method=pass_all ;; solaris*) lt_cv_deplibs_check_method=pass_all ;; sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*) lt_cv_deplibs_check_method=pass_all ;; sysv4 | sysv4.3*) case $host_vendor in motorola) lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (shared object|dynamic lib) M[0-9][0-9]* Version [0-9]' lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*` ;; ncr) lt_cv_deplibs_check_method=pass_all ;; sequent) lt_cv_file_magic_cmd='/bin/file' lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [LM]SB (shared object|dynamic lib )' ;; sni) lt_cv_file_magic_cmd='/bin/file' lt_cv_deplibs_check_method="file_magic ELF [0-9][0-9]*-bit [LM]SB dynamic lib" lt_cv_file_magic_test_file=/lib/libc.so ;; siemens) lt_cv_deplibs_check_method=pass_all ;; pc) lt_cv_deplibs_check_method=pass_all ;; esac ;; tpf*) lt_cv_deplibs_check_method=pass_all ;; esac fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_deplibs_check_method" >&5 $as_echo "$lt_cv_deplibs_check_method" >&6; } file_magic_cmd=$lt_cv_file_magic_cmd deplibs_check_method=$lt_cv_deplibs_check_method test -z "$deplibs_check_method" && deplibs_check_method=unknown if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}ar", so it can be a program name with args. set dummy ${ac_tool_prefix}ar; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if test "${ac_cv_prog_AR+set}" = set; then : $as_echo_n "(cached) " >&6 else if test -n "$AR"; then ac_cv_prog_AR="$AR" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_AR="${ac_tool_prefix}ar" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi AR=$ac_cv_prog_AR if test -n "$AR"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $AR" >&5 $as_echo "$AR" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi fi if test -z "$ac_cv_prog_AR"; then ac_ct_AR=$AR # Extract the first word of "ar", so it can be a program name with args. set dummy ar; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if test "${ac_cv_prog_ac_ct_AR+set}" = set; then : $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_AR"; then ac_cv_prog_ac_ct_AR="$ac_ct_AR" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_ac_ct_AR="ar" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi ac_ct_AR=$ac_cv_prog_ac_ct_AR if test -n "$ac_ct_AR"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_AR" >&5 $as_echo "$ac_ct_AR" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test "x$ac_ct_AR" = x; then AR="false" else case $cross_compiling:$ac_tool_warned in yes:) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac AR=$ac_ct_AR fi else AR="$ac_cv_prog_AR" fi test -z "$AR" && AR=ar test -z "$AR_FLAGS" && AR_FLAGS=cru if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args. set dummy ${ac_tool_prefix}strip; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if test "${ac_cv_prog_STRIP+set}" = set; then : $as_echo_n "(cached) " >&6 else if test -n "$STRIP"; then ac_cv_prog_STRIP="$STRIP" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_STRIP="${ac_tool_prefix}strip" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi STRIP=$ac_cv_prog_STRIP if test -n "$STRIP"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $STRIP" >&5 $as_echo "$STRIP" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi fi if test -z "$ac_cv_prog_STRIP"; then ac_ct_STRIP=$STRIP # Extract the first word of "strip", so it can be a program name with args. set dummy strip; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if test "${ac_cv_prog_ac_ct_STRIP+set}" = set; then : $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_STRIP"; then ac_cv_prog_ac_ct_STRIP="$ac_ct_STRIP" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_ac_ct_STRIP="strip" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi ac_ct_STRIP=$ac_cv_prog_ac_ct_STRIP if test -n "$ac_ct_STRIP"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_STRIP" >&5 $as_echo "$ac_ct_STRIP" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test "x$ac_ct_STRIP" = x; then STRIP=":" else case $cross_compiling:$ac_tool_warned in yes:) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac STRIP=$ac_ct_STRIP fi else STRIP="$ac_cv_prog_STRIP" fi test -z "$STRIP" && STRIP=: if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args. set dummy ${ac_tool_prefix}ranlib; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if test "${ac_cv_prog_RANLIB+set}" = set; then : $as_echo_n "(cached) " >&6 else if test -n "$RANLIB"; then ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_RANLIB="${ac_tool_prefix}ranlib" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi RANLIB=$ac_cv_prog_RANLIB if test -n "$RANLIB"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $RANLIB" >&5 $as_echo "$RANLIB" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi fi if test -z "$ac_cv_prog_RANLIB"; then ac_ct_RANLIB=$RANLIB # Extract the first word of "ranlib", so it can be a program name with args. set dummy ranlib; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if test "${ac_cv_prog_ac_ct_RANLIB+set}" = set; then : $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_RANLIB"; then ac_cv_prog_ac_ct_RANLIB="$ac_ct_RANLIB" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_ac_ct_RANLIB="ranlib" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi ac_ct_RANLIB=$ac_cv_prog_ac_ct_RANLIB if test -n "$ac_ct_RANLIB"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_RANLIB" >&5 $as_echo "$ac_ct_RANLIB" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test "x$ac_ct_RANLIB" = x; then RANLIB=":" else case $cross_compiling:$ac_tool_warned in yes:) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac RANLIB=$ac_ct_RANLIB fi else RANLIB="$ac_cv_prog_RANLIB" fi test -z "$RANLIB" && RANLIB=: # Determine commands to create old-style static archives. old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs' old_postinstall_cmds='chmod 644 $oldlib' old_postuninstall_cmds= if test -n "$RANLIB"; then case $host_os in openbsd*) old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB -t \$oldlib" ;; *) old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB \$oldlib" ;; esac old_archive_cmds="$old_archive_cmds~\$RANLIB \$oldlib" fi # If no C compiler was specified, use CC. LTCC=${LTCC-"$CC"} # If no C compiler flags were specified, use CFLAGS. LTCFLAGS=${LTCFLAGS-"$CFLAGS"} # Allow CC to be a program name with arguments. compiler=$CC # Check for command to grab the raw symbol name followed by C symbol from nm. { $as_echo "$as_me:${as_lineno-$LINENO}: checking command to parse $NM output from $compiler object" >&5 $as_echo_n "checking command to parse $NM output from $compiler object... " >&6; } if test "${lt_cv_sys_global_symbol_pipe+set}" = set; then : $as_echo_n "(cached) " >&6 else # These are sane defaults that work on at least a few old systems. # [They come from Ultrix. What could be older than Ultrix?!! ;)] # Character class describing NM global symbol codes. symcode='[BCDEGRST]' # Regexp to match symbols that can be accessed directly from C. sympat='\([_A-Za-z][_A-Za-z0-9]*\)' # Define system-specific variables. case $host_os in aix*) symcode='[BCDT]' ;; cygwin* | mingw* | pw32* | cegcc*) symcode='[ABCDGISTW]' ;; hpux*) if test "$host_cpu" = ia64; then symcode='[ABCDEGRST]' fi ;; irix* | nonstopux*) symcode='[BCDEGRST]' ;; osf*) symcode='[BCDEGQRST]' ;; solaris*) symcode='[BDRT]' ;; sco3.2v5*) symcode='[DT]' ;; sysv4.2uw2*) symcode='[DT]' ;; sysv5* | sco5v6* | unixware* | OpenUNIX*) symcode='[ABDT]' ;; sysv4) symcode='[DFNSTU]' ;; esac # If we're using GNU nm, then use its standard symbol codes. case `$NM -V 2>&1` in *GNU* | *'with BFD'*) symcode='[ABCDGIRSTW]' ;; esac # Transform an extracted symbol line into a proper C declaration. # Some systems (esp. on ia64) link data and code symbols differently, # so use this general approach. lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern int \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'" # Transform an extracted symbol line into symbol name and symbol address lt_cv_sys_global_symbol_to_c_name_address="sed -n -e 's/^: \([^ ]*\) $/ {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([^ ]*\) \([^ ]*\)$/ {\"\2\", (void *) \&\2},/p'" lt_cv_sys_global_symbol_to_c_name_address_lib_prefix="sed -n -e 's/^: \([^ ]*\) $/ {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([^ ]*\) \(lib[^ ]*\)$/ {\"\2\", (void *) \&\2},/p' -e 's/^$symcode* \([^ ]*\) \([^ ]*\)$/ {\"lib\2\", (void *) \&\2},/p'" # Handle CRLF in mingw tool chain opt_cr= case $build_os in mingw*) opt_cr=`$ECHO 'x\{0,1\}' | tr x '\015'` # option cr in regexp ;; esac # Try without a prefix underscore, then with it. for ac_symprfx in "" "_"; do # Transform symcode, sympat, and symprfx into a raw symbol and a C symbol. symxfrm="\\1 $ac_symprfx\\2 \\2" # Write the raw and C identifiers. if test "$lt_cv_nm_interface" = "MS dumpbin"; then # Fake it for dumpbin and say T for any non-static function # and D for any global variable. # Also find C++ and __fastcall symbols from MSVC++, # which start with @ or ?. lt_cv_sys_global_symbol_pipe="$AWK '"\ " {last_section=section; section=\$ 3};"\ " /Section length .*#relocs.*(pick any)/{hide[last_section]=1};"\ " \$ 0!~/External *\|/{next};"\ " / 0+ UNDEF /{next}; / UNDEF \([^|]\)*()/{next};"\ " {if(hide[section]) next};"\ " {f=0}; \$ 0~/\(\).*\|/{f=1}; {printf f ? \"T \" : \"D \"};"\ " {split(\$ 0, a, /\||\r/); split(a[2], s)};"\ " s[1]~/^[@?]/{print s[1], s[1]; next};"\ " s[1]~prfx {split(s[1],t,\"@\"); print t[1], substr(t[1],length(prfx))}"\ " ' prfx=^$ac_symprfx" else lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[ ]\($symcode$symcode*\)[ ][ ]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'" fi # Check to see that the pipe works correctly. pipe_works=no rm -f conftest* cat > conftest.$ac_ext <<_LT_EOF #ifdef __cplusplus extern "C" { #endif char nm_test_var; void nm_test_func(void); void nm_test_func(void){} #ifdef __cplusplus } #endif int main(){nm_test_var='a';nm_test_func();return(0);} _LT_EOF if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 (eval $ac_compile) 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then # Now try to grab the symbols. nlist=conftest.nm if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$NM conftest.$ac_objext \| $lt_cv_sys_global_symbol_pipe \> $nlist\""; } >&5 (eval $NM conftest.$ac_objext \| $lt_cv_sys_global_symbol_pipe \> $nlist) 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } && test -s "$nlist"; then # Try sorting and uniquifying the output. if sort "$nlist" | uniq > "$nlist"T; then mv -f "$nlist"T "$nlist" else rm -f "$nlist"T fi # Make sure that we snagged all the symbols we need. if $GREP ' nm_test_var$' "$nlist" >/dev/null; then if $GREP ' nm_test_func$' "$nlist" >/dev/null; then cat <<_LT_EOF > conftest.$ac_ext #ifdef __cplusplus extern "C" { #endif _LT_EOF # Now generate the symbol file. eval "$lt_cv_sys_global_symbol_to_cdecl"' < "$nlist" | $GREP -v main >> conftest.$ac_ext' cat <<_LT_EOF >> conftest.$ac_ext /* The mapping between symbol names and symbols. */ const struct { const char *name; void *address; } lt__PROGRAM__LTX_preloaded_symbols[] = { { "@PROGRAM@", (void *) 0 }, _LT_EOF $SED "s/^$symcode$symcode* \(.*\) \(.*\)$/ {\"\2\", (void *) \&\2},/" < "$nlist" | $GREP -v main >> conftest.$ac_ext cat <<\_LT_EOF >> conftest.$ac_ext {0, (void *) 0} }; /* This works around a problem in FreeBSD linker */ #ifdef FREEBSD_WORKAROUND static const void *lt_preloaded_setup() { return lt__PROGRAM__LTX_preloaded_symbols; } #endif #ifdef __cplusplus } #endif _LT_EOF # Now try linking the two files. mv conftest.$ac_objext conftstm.$ac_objext lt_save_LIBS="$LIBS" lt_save_CFLAGS="$CFLAGS" LIBS="conftstm.$ac_objext" CFLAGS="$CFLAGS$lt_prog_compiler_no_builtin_flag" if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5 (eval $ac_link) 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } && test -s conftest${ac_exeext}; then pipe_works=yes fi LIBS="$lt_save_LIBS" CFLAGS="$lt_save_CFLAGS" else echo "cannot find nm_test_func in $nlist" >&5 fi else echo "cannot find nm_test_var in $nlist" >&5 fi else echo "cannot run $lt_cv_sys_global_symbol_pipe" >&5 fi else echo "$progname: failed program was:" >&5 cat conftest.$ac_ext >&5 fi rm -rf conftest* conftst* # Do not use the global_symbol_pipe unless it works. if test "$pipe_works" = yes; then break else lt_cv_sys_global_symbol_pipe= fi done fi if test -z "$lt_cv_sys_global_symbol_pipe"; then lt_cv_sys_global_symbol_to_cdecl= fi if test -z "$lt_cv_sys_global_symbol_pipe$lt_cv_sys_global_symbol_to_cdecl"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: failed" >&5 $as_echo "failed" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: ok" >&5 $as_echo "ok" >&6; } fi # Check whether --enable-libtool-lock was given. if test "${enable_libtool_lock+set}" = set; then : enableval=$enable_libtool_lock; fi test "x$enable_libtool_lock" != xno && enable_libtool_lock=yes # Some flags need to be propagated to the compiler or linker for good # libtool support. case $host in ia64-*-hpux*) # Find out which ABI we are using. echo 'int i;' > conftest.$ac_ext if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 (eval $ac_compile) 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then case `/usr/bin/file conftest.$ac_objext` in *ELF-32*) HPUX_IA64_MODE="32" ;; *ELF-64*) HPUX_IA64_MODE="64" ;; esac fi rm -rf conftest* ;; *-*-irix6*) # Find out which ABI we are using. echo '#line 7129 "configure"' > conftest.$ac_ext if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 (eval $ac_compile) 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then if test "$lt_cv_prog_gnu_ld" = yes; then case `/usr/bin/file conftest.$ac_objext` in *32-bit*) LD="${LD-ld} -melf32bsmip" ;; *N32*) LD="${LD-ld} -melf32bmipn32" ;; *64-bit*) LD="${LD-ld} -melf64bmip" ;; esac else case `/usr/bin/file conftest.$ac_objext` in *32-bit*) LD="${LD-ld} -32" ;; *N32*) LD="${LD-ld} -n32" ;; *64-bit*) LD="${LD-ld} -64" ;; esac fi fi rm -rf conftest* ;; x86_64-*kfreebsd*-gnu|x86_64-*linux*|ppc*-*linux*|powerpc*-*linux*| \ s390*-*linux*|s390*-*tpf*|sparc*-*linux*) # Find out which ABI we are using. echo 'int i;' > conftest.$ac_ext if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 (eval $ac_compile) 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then case `/usr/bin/file conftest.o` in *32-bit*) case $host in x86_64-*kfreebsd*-gnu) LD="${LD-ld} -m elf_i386_fbsd" ;; x86_64-*linux*) LD="${LD-ld} -m elf_i386" ;; ppc64-*linux*|powerpc64-*linux*) LD="${LD-ld} -m elf32ppclinux" ;; s390x-*linux*) LD="${LD-ld} -m elf_s390" ;; sparc64-*linux*) LD="${LD-ld} -m elf32_sparc" ;; esac ;; *64-bit*) case $host in x86_64-*kfreebsd*-gnu) LD="${LD-ld} -m elf_x86_64_fbsd" ;; x86_64-*linux*) LD="${LD-ld} -m elf_x86_64" ;; ppc*-*linux*|powerpc*-*linux*) LD="${LD-ld} -m elf64ppc" ;; s390*-*linux*|s390*-*tpf*) LD="${LD-ld} -m elf64_s390" ;; sparc*-*linux*) LD="${LD-ld} -m elf64_sparc" ;; esac ;; esac fi rm -rf conftest* ;; *-*-sco3.2v5*) # On SCO OpenServer 5, we need -belf to get full-featured binaries. SAVE_CFLAGS="$CFLAGS" CFLAGS="$CFLAGS -belf" { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the C compiler needs -belf" >&5 $as_echo_n "checking whether the C compiler needs -belf... " >&6; } if test "${lt_cv_cc_needs_belf+set}" = set; then : $as_echo_n "(cached) " >&6 else ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : lt_cv_cc_needs_belf=yes else lt_cv_cc_needs_belf=no fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_cc_needs_belf" >&5 $as_echo "$lt_cv_cc_needs_belf" >&6; } if test x"$lt_cv_cc_needs_belf" != x"yes"; then # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf CFLAGS="$SAVE_CFLAGS" fi ;; sparc*-*solaris*) # Find out which ABI we are using. echo 'int i;' > conftest.$ac_ext if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 (eval $ac_compile) 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then case `/usr/bin/file conftest.o` in *64-bit*) case $lt_cv_prog_gnu_ld in yes*) LD="${LD-ld} -m elf64_sparc" ;; *) if ${LD-ld} -64 -r -o conftest2.o conftest.o >/dev/null 2>&1; then LD="${LD-ld} -64" fi ;; esac ;; esac fi rm -rf conftest* ;; esac need_locks="$enable_libtool_lock" case $host_os in rhapsody* | darwin*) if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}dsymutil", so it can be a program name with args. set dummy ${ac_tool_prefix}dsymutil; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if test "${ac_cv_prog_DSYMUTIL+set}" = set; then : $as_echo_n "(cached) " >&6 else if test -n "$DSYMUTIL"; then ac_cv_prog_DSYMUTIL="$DSYMUTIL" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_DSYMUTIL="${ac_tool_prefix}dsymutil" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi DSYMUTIL=$ac_cv_prog_DSYMUTIL if test -n "$DSYMUTIL"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $DSYMUTIL" >&5 $as_echo "$DSYMUTIL" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi fi if test -z "$ac_cv_prog_DSYMUTIL"; then ac_ct_DSYMUTIL=$DSYMUTIL # Extract the first word of "dsymutil", so it can be a program name with args. set dummy dsymutil; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if test "${ac_cv_prog_ac_ct_DSYMUTIL+set}" = set; then : $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_DSYMUTIL"; then ac_cv_prog_ac_ct_DSYMUTIL="$ac_ct_DSYMUTIL" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_ac_ct_DSYMUTIL="dsymutil" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi ac_ct_DSYMUTIL=$ac_cv_prog_ac_ct_DSYMUTIL if test -n "$ac_ct_DSYMUTIL"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_DSYMUTIL" >&5 $as_echo "$ac_ct_DSYMUTIL" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test "x$ac_ct_DSYMUTIL" = x; then DSYMUTIL=":" else case $cross_compiling:$ac_tool_warned in yes:) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac DSYMUTIL=$ac_ct_DSYMUTIL fi else DSYMUTIL="$ac_cv_prog_DSYMUTIL" fi if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}nmedit", so it can be a program name with args. set dummy ${ac_tool_prefix}nmedit; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if test "${ac_cv_prog_NMEDIT+set}" = set; then : $as_echo_n "(cached) " >&6 else if test -n "$NMEDIT"; then ac_cv_prog_NMEDIT="$NMEDIT" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_NMEDIT="${ac_tool_prefix}nmedit" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi NMEDIT=$ac_cv_prog_NMEDIT if test -n "$NMEDIT"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $NMEDIT" >&5 $as_echo "$NMEDIT" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi fi if test -z "$ac_cv_prog_NMEDIT"; then ac_ct_NMEDIT=$NMEDIT # Extract the first word of "nmedit", so it can be a program name with args. set dummy nmedit; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if test "${ac_cv_prog_ac_ct_NMEDIT+set}" = set; then : $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_NMEDIT"; then ac_cv_prog_ac_ct_NMEDIT="$ac_ct_NMEDIT" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_ac_ct_NMEDIT="nmedit" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi ac_ct_NMEDIT=$ac_cv_prog_ac_ct_NMEDIT if test -n "$ac_ct_NMEDIT"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_NMEDIT" >&5 $as_echo "$ac_ct_NMEDIT" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test "x$ac_ct_NMEDIT" = x; then NMEDIT=":" else case $cross_compiling:$ac_tool_warned in yes:) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac NMEDIT=$ac_ct_NMEDIT fi else NMEDIT="$ac_cv_prog_NMEDIT" fi if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}lipo", so it can be a program name with args. set dummy ${ac_tool_prefix}lipo; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if test "${ac_cv_prog_LIPO+set}" = set; then : $as_echo_n "(cached) " >&6 else if test -n "$LIPO"; then ac_cv_prog_LIPO="$LIPO" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_LIPO="${ac_tool_prefix}lipo" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi LIPO=$ac_cv_prog_LIPO if test -n "$LIPO"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LIPO" >&5 $as_echo "$LIPO" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi fi if test -z "$ac_cv_prog_LIPO"; then ac_ct_LIPO=$LIPO # Extract the first word of "lipo", so it can be a program name with args. set dummy lipo; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if test "${ac_cv_prog_ac_ct_LIPO+set}" = set; then : $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_LIPO"; then ac_cv_prog_ac_ct_LIPO="$ac_ct_LIPO" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_ac_ct_LIPO="lipo" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi ac_ct_LIPO=$ac_cv_prog_ac_ct_LIPO if test -n "$ac_ct_LIPO"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_LIPO" >&5 $as_echo "$ac_ct_LIPO" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test "x$ac_ct_LIPO" = x; then LIPO=":" else case $cross_compiling:$ac_tool_warned in yes:) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac LIPO=$ac_ct_LIPO fi else LIPO="$ac_cv_prog_LIPO" fi if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}otool", so it can be a program name with args. set dummy ${ac_tool_prefix}otool; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if test "${ac_cv_prog_OTOOL+set}" = set; then : $as_echo_n "(cached) " >&6 else if test -n "$OTOOL"; then ac_cv_prog_OTOOL="$OTOOL" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_OTOOL="${ac_tool_prefix}otool" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi OTOOL=$ac_cv_prog_OTOOL if test -n "$OTOOL"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OTOOL" >&5 $as_echo "$OTOOL" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi fi if test -z "$ac_cv_prog_OTOOL"; then ac_ct_OTOOL=$OTOOL # Extract the first word of "otool", so it can be a program name with args. set dummy otool; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if test "${ac_cv_prog_ac_ct_OTOOL+set}" = set; then : $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_OTOOL"; then ac_cv_prog_ac_ct_OTOOL="$ac_ct_OTOOL" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_ac_ct_OTOOL="otool" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi ac_ct_OTOOL=$ac_cv_prog_ac_ct_OTOOL if test -n "$ac_ct_OTOOL"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OTOOL" >&5 $as_echo "$ac_ct_OTOOL" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test "x$ac_ct_OTOOL" = x; then OTOOL=":" else case $cross_compiling:$ac_tool_warned in yes:) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac OTOOL=$ac_ct_OTOOL fi else OTOOL="$ac_cv_prog_OTOOL" fi if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}otool64", so it can be a program name with args. set dummy ${ac_tool_prefix}otool64; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if test "${ac_cv_prog_OTOOL64+set}" = set; then : $as_echo_n "(cached) " >&6 else if test -n "$OTOOL64"; then ac_cv_prog_OTOOL64="$OTOOL64" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_OTOOL64="${ac_tool_prefix}otool64" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi OTOOL64=$ac_cv_prog_OTOOL64 if test -n "$OTOOL64"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OTOOL64" >&5 $as_echo "$OTOOL64" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi fi if test -z "$ac_cv_prog_OTOOL64"; then ac_ct_OTOOL64=$OTOOL64 # Extract the first word of "otool64", so it can be a program name with args. set dummy otool64; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if test "${ac_cv_prog_ac_ct_OTOOL64+set}" = set; then : $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_OTOOL64"; then ac_cv_prog_ac_ct_OTOOL64="$ac_ct_OTOOL64" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_ac_ct_OTOOL64="otool64" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi ac_ct_OTOOL64=$ac_cv_prog_ac_ct_OTOOL64 if test -n "$ac_ct_OTOOL64"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OTOOL64" >&5 $as_echo "$ac_ct_OTOOL64" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test "x$ac_ct_OTOOL64" = x; then OTOOL64=":" else case $cross_compiling:$ac_tool_warned in yes:) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac OTOOL64=$ac_ct_OTOOL64 fi else OTOOL64="$ac_cv_prog_OTOOL64" fi { $as_echo "$as_me:${as_lineno-$LINENO}: checking for -single_module linker flag" >&5 $as_echo_n "checking for -single_module linker flag... " >&6; } if test "${lt_cv_apple_cc_single_mod+set}" = set; then : $as_echo_n "(cached) " >&6 else lt_cv_apple_cc_single_mod=no if test -z "${LT_MULTI_MODULE}"; then # By default we will add the -single_module flag. You can override # by either setting the environment variable LT_MULTI_MODULE # non-empty at configure time, or by adding -multi_module to the # link flags. rm -rf libconftest.dylib* echo "int foo(void){return 1;}" > conftest.c echo "$LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \ -dynamiclib -Wl,-single_module conftest.c" >&5 $LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \ -dynamiclib -Wl,-single_module conftest.c 2>conftest.err _lt_result=$? if test -f libconftest.dylib && test ! -s conftest.err && test $_lt_result = 0; then lt_cv_apple_cc_single_mod=yes else cat conftest.err >&5 fi rm -rf libconftest.dylib* rm -f conftest.* fi fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_apple_cc_single_mod" >&5 $as_echo "$lt_cv_apple_cc_single_mod" >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: checking for -exported_symbols_list linker flag" >&5 $as_echo_n "checking for -exported_symbols_list linker flag... " >&6; } if test "${lt_cv_ld_exported_symbols_list+set}" = set; then : $as_echo_n "(cached) " >&6 else lt_cv_ld_exported_symbols_list=no save_LDFLAGS=$LDFLAGS echo "_main" > conftest.sym LDFLAGS="$LDFLAGS -Wl,-exported_symbols_list,conftest.sym" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : lt_cv_ld_exported_symbols_list=yes else lt_cv_ld_exported_symbols_list=no fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LDFLAGS="$save_LDFLAGS" fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ld_exported_symbols_list" >&5 $as_echo "$lt_cv_ld_exported_symbols_list" >&6; } case $host_os in rhapsody* | darwin1.[012]) _lt_dar_allow_undefined='${wl}-undefined ${wl}suppress' ;; darwin1.*) _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;; darwin*) # darwin 5.x on # if running on 10.5 or later, the deployment target defaults # to the OS version, if on x86, and 10.4, the deployment # target defaults to 10.4. Don't you love it? case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in 10.0,*86*-darwin8*|10.0,*-darwin[91]*) _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;; 10.[012]*) _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;; 10.*) _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;; esac ;; esac if test "$lt_cv_apple_cc_single_mod" = "yes"; then _lt_dar_single_mod='$single_module' fi if test "$lt_cv_ld_exported_symbols_list" = "yes"; then _lt_dar_export_syms=' ${wl}-exported_symbols_list,$output_objdir/${libname}-symbols.expsym' else _lt_dar_export_syms='~$NMEDIT -s $output_objdir/${libname}-symbols.expsym ${lib}' fi if test "$DSYMUTIL" != ":"; then _lt_dsymutil='~$DSYMUTIL $lib || :' else _lt_dsymutil= fi ;; esac # On IRIX 5.3, sys/types and inttypes.h are conflicting. for ac_header in sys/types.h sys/stat.h stdlib.h string.h memory.h strings.h \ inttypes.h stdint.h unistd.h do : as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default " eval as_val=\$$as_ac_Header if test "x$as_val" = x""yes; then : cat >>confdefs.h <<_ACEOF #define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1 _ACEOF fi done for ac_header in dlfcn.h do : ac_fn_c_check_header_compile "$LINENO" "dlfcn.h" "ac_cv_header_dlfcn_h" "$ac_includes_default " if test "x$ac_cv_header_dlfcn_h" = x""yes; then : cat >>confdefs.h <<_ACEOF #define HAVE_DLFCN_H 1 _ACEOF fi done # Set options enable_dlopen=no # Check whether --enable-shared was given. if test "${enable_shared+set}" = set; then : enableval=$enable_shared; p=${PACKAGE-default} case $enableval in yes) enable_shared=yes ;; no) enable_shared=no ;; *) enable_shared=no # Look at the argument we got. We use all the common list separators. lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR," for pkg in $enableval; do IFS="$lt_save_ifs" if test "X$pkg" = "X$p"; then enable_shared=yes fi done IFS="$lt_save_ifs" ;; esac else enable_shared=yes fi # Check whether --enable-static was given. if test "${enable_static+set}" = set; then : enableval=$enable_static; p=${PACKAGE-default} case $enableval in yes) enable_static=yes ;; no) enable_static=no ;; *) enable_static=no # Look at the argument we got. We use all the common list separators. lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR," for pkg in $enableval; do IFS="$lt_save_ifs" if test "X$pkg" = "X$p"; then enable_static=yes fi done IFS="$lt_save_ifs" ;; esac else enable_static=yes fi # Check whether --with-pic was given. if test "${with_pic+set}" = set; then : withval=$with_pic; pic_mode="$withval" else pic_mode=default fi test -z "$pic_mode" && pic_mode=default # Check whether --enable-fast-install was given. if test "${enable_fast_install+set}" = set; then : enableval=$enable_fast_install; p=${PACKAGE-default} case $enableval in yes) enable_fast_install=yes ;; no) enable_fast_install=no ;; *) enable_fast_install=no # Look at the argument we got. We use all the common list separators. lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR," for pkg in $enableval; do IFS="$lt_save_ifs" if test "X$pkg" = "X$p"; then enable_fast_install=yes fi done IFS="$lt_save_ifs" ;; esac else enable_fast_install=yes fi # This can be used to rebuild libtool when needed LIBTOOL_DEPS="$ltmain" # Always use our own libtool. LIBTOOL='$(SHELL) $(top_builddir)/libtool' test -z "$LN_S" && LN_S="ln -s" if test -n "${ZSH_VERSION+set}" ; then setopt NO_GLOB_SUBST fi { $as_echo "$as_me:${as_lineno-$LINENO}: checking for objdir" >&5 $as_echo_n "checking for objdir... " >&6; } if test "${lt_cv_objdir+set}" = set; then : $as_echo_n "(cached) " >&6 else rm -f .libs 2>/dev/null mkdir .libs 2>/dev/null if test -d .libs; then lt_cv_objdir=.libs else # MS-DOS does not allow filenames that begin with a dot. lt_cv_objdir=_libs fi rmdir .libs 2>/dev/null fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_objdir" >&5 $as_echo "$lt_cv_objdir" >&6; } objdir=$lt_cv_objdir cat >>confdefs.h <<_ACEOF #define LT_OBJDIR "$lt_cv_objdir/" _ACEOF case $host_os in aix3*) # AIX sometimes has problems with the GCC collect2 program. For some # reason, if we set the COLLECT_NAMES environment variable, the problems # vanish in a puff of smoke. if test "X${COLLECT_NAMES+set}" != Xset; then COLLECT_NAMES= export COLLECT_NAMES fi ;; esac # Sed substitution that helps us do robust quoting. It backslashifies # metacharacters that are still active within double-quoted strings. sed_quote_subst='s/\(["`$\\]\)/\\\1/g' # Same as above, but do not quote variable references. double_quote_subst='s/\(["`\\]\)/\\\1/g' # Sed substitution to delay expansion of an escaped shell variable in a # double_quote_subst'ed string. delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g' # Sed substitution to delay expansion of an escaped single quote. delay_single_quote_subst='s/'\''/'\'\\\\\\\'\''/g' # Sed substitution to avoid accidental globbing in evaled expressions no_glob_subst='s/\*/\\\*/g' # Global variables: ofile=libtool can_build_shared=yes # All known linkers require a `.a' archive for static linking (except MSVC, # which needs '.lib'). libext=a with_gnu_ld="$lt_cv_prog_gnu_ld" old_CC="$CC" old_CFLAGS="$CFLAGS" # Set sane defaults for various variables test -z "$CC" && CC=cc test -z "$LTCC" && LTCC=$CC test -z "$LTCFLAGS" && LTCFLAGS=$CFLAGS test -z "$LD" && LD=ld test -z "$ac_objext" && ac_objext=o for cc_temp in $compiler""; do case $cc_temp in compile | *[\\/]compile | ccache | *[\\/]ccache ) ;; distcc | *[\\/]distcc | purify | *[\\/]purify ) ;; \-*) ;; *) break;; esac done cc_basename=`$ECHO "X$cc_temp" | $Xsed -e 's%.*/%%' -e "s%^$host_alias-%%"` # Only perform the check for file, if the check method requires it test -z "$MAGIC_CMD" && MAGIC_CMD=file case $deplibs_check_method in file_magic*) if test "$file_magic_cmd" = '$MAGIC_CMD'; then { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ${ac_tool_prefix}file" >&5 $as_echo_n "checking for ${ac_tool_prefix}file... " >&6; } if test "${lt_cv_path_MAGIC_CMD+set}" = set; then : $as_echo_n "(cached) " >&6 else case $MAGIC_CMD in [\\/*] | ?:[\\/]*) lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path. ;; *) lt_save_MAGIC_CMD="$MAGIC_CMD" lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR ac_dummy="/usr/bin$PATH_SEPARATOR$PATH" for ac_dir in $ac_dummy; do IFS="$lt_save_ifs" test -z "$ac_dir" && ac_dir=. if test -f $ac_dir/${ac_tool_prefix}file; then lt_cv_path_MAGIC_CMD="$ac_dir/${ac_tool_prefix}file" if test -n "$file_magic_test_file"; then case $deplibs_check_method in "file_magic "*) file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"` MAGIC_CMD="$lt_cv_path_MAGIC_CMD" if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null | $EGREP "$file_magic_regex" > /dev/null; then : else cat <<_LT_EOF 1>&2 *** Warning: the command libtool uses to detect shared libraries, *** $file_magic_cmd, produces output that libtool cannot recognize. *** The result is that libtool may fail to recognize shared libraries *** as such. This will affect the creation of libtool libraries that *** depend on shared libraries, but programs linked with such libtool *** libraries will work regardless of this problem. Nevertheless, you *** may want to report the problem to your system manager and/or to *** bug-libtool@gnu.org _LT_EOF fi ;; esac fi break fi done IFS="$lt_save_ifs" MAGIC_CMD="$lt_save_MAGIC_CMD" ;; esac fi MAGIC_CMD="$lt_cv_path_MAGIC_CMD" if test -n "$MAGIC_CMD"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MAGIC_CMD" >&5 $as_echo "$MAGIC_CMD" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test -z "$lt_cv_path_MAGIC_CMD"; then if test -n "$ac_tool_prefix"; then { $as_echo "$as_me:${as_lineno-$LINENO}: checking for file" >&5 $as_echo_n "checking for file... " >&6; } if test "${lt_cv_path_MAGIC_CMD+set}" = set; then : $as_echo_n "(cached) " >&6 else case $MAGIC_CMD in [\\/*] | ?:[\\/]*) lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path. ;; *) lt_save_MAGIC_CMD="$MAGIC_CMD" lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR ac_dummy="/usr/bin$PATH_SEPARATOR$PATH" for ac_dir in $ac_dummy; do IFS="$lt_save_ifs" test -z "$ac_dir" && ac_dir=. if test -f $ac_dir/file; then lt_cv_path_MAGIC_CMD="$ac_dir/file" if test -n "$file_magic_test_file"; then case $deplibs_check_method in "file_magic "*) file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"` MAGIC_CMD="$lt_cv_path_MAGIC_CMD" if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null | $EGREP "$file_magic_regex" > /dev/null; then : else cat <<_LT_EOF 1>&2 *** Warning: the command libtool uses to detect shared libraries, *** $file_magic_cmd, produces output that libtool cannot recognize. *** The result is that libtool may fail to recognize shared libraries *** as such. This will affect the creation of libtool libraries that *** depend on shared libraries, but programs linked with such libtool *** libraries will work regardless of this problem. Nevertheless, you *** may want to report the problem to your system manager and/or to *** bug-libtool@gnu.org _LT_EOF fi ;; esac fi break fi done IFS="$lt_save_ifs" MAGIC_CMD="$lt_save_MAGIC_CMD" ;; esac fi MAGIC_CMD="$lt_cv_path_MAGIC_CMD" if test -n "$MAGIC_CMD"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MAGIC_CMD" >&5 $as_echo "$MAGIC_CMD" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi else MAGIC_CMD=: fi fi fi ;; esac # Use C for the default configuration in the libtool script lt_save_CC="$CC" ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu # Source file extension for C test sources. ac_ext=c # Object file extension for compiled C test sources. objext=o objext=$objext # Code to be used in simple compile tests lt_simple_compile_test_code="int some_variable = 0;" # Code to be used in simple link tests lt_simple_link_test_code='int main(){return(0);}' # If no C compiler was specified, use CC. LTCC=${LTCC-"$CC"} # If no C compiler flags were specified, use CFLAGS. LTCFLAGS=${LTCFLAGS-"$CFLAGS"} # Allow CC to be a program name with arguments. compiler=$CC # Save the default compiler, since it gets overwritten when the other # tags are being tested, and _LT_TAGVAR(compiler, []) is a NOP. compiler_DEFAULT=$CC # save warnings/boilerplate of simple test code ac_outfile=conftest.$ac_objext echo "$lt_simple_compile_test_code" >conftest.$ac_ext eval "$ac_compile" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err _lt_compiler_boilerplate=`cat conftest.err` $RM conftest* ac_outfile=conftest.$ac_objext echo "$lt_simple_link_test_code" >conftest.$ac_ext eval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err _lt_linker_boilerplate=`cat conftest.err` $RM -r conftest* if test -n "$compiler"; then lt_prog_compiler_no_builtin_flag= if test "$GCC" = yes; then lt_prog_compiler_no_builtin_flag=' -fno-builtin' { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -fno-rtti -fno-exceptions" >&5 $as_echo_n "checking if $compiler supports -fno-rtti -fno-exceptions... " >&6; } if test "${lt_cv_prog_compiler_rtti_exceptions+set}" = set; then : $as_echo_n "(cached) " >&6 else lt_cv_prog_compiler_rtti_exceptions=no ac_outfile=conftest.$ac_objext echo "$lt_simple_compile_test_code" > conftest.$ac_ext lt_compiler_flag="-fno-rtti -fno-exceptions" # Insert the option either (1) after the last *FLAGS variable, or # (2) before a word containing "conftest.", or (3) at the end. # Note that $ac_compile itself does not contain backslashes and begins # with a dollar sign (not a hyphen), so the echo should work correctly. # The option is referenced via a variable to avoid confusing sed. lt_compile=`echo "$ac_compile" | $SED \ -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` (eval echo "\"\$as_me:8403: $lt_compile\"" >&5) (eval "$lt_compile" 2>conftest.err) ac_status=$? cat conftest.err >&5 echo "$as_me:8407: \$? = $ac_status" >&5 if (exit $ac_status) && test -s "$ac_outfile"; then # The compiler can only warn and ignore the option if not recognized # So say no if there are warnings other than the usual output. $ECHO "X$_lt_compiler_boilerplate" | $Xsed -e '/^$/d' >conftest.exp $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2 if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then lt_cv_prog_compiler_rtti_exceptions=yes fi fi $RM conftest* fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_rtti_exceptions" >&5 $as_echo "$lt_cv_prog_compiler_rtti_exceptions" >&6; } if test x"$lt_cv_prog_compiler_rtti_exceptions" = xyes; then lt_prog_compiler_no_builtin_flag="$lt_prog_compiler_no_builtin_flag -fno-rtti -fno-exceptions" else : fi fi lt_prog_compiler_wl= lt_prog_compiler_pic= lt_prog_compiler_static= { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $compiler option to produce PIC" >&5 $as_echo_n "checking for $compiler option to produce PIC... " >&6; } if test "$GCC" = yes; then lt_prog_compiler_wl='-Wl,' lt_prog_compiler_static='-static' case $host_os in aix*) # All AIX code is PIC. if test "$host_cpu" = ia64; then # AIX 5 now supports IA64 processor lt_prog_compiler_static='-Bstatic' fi ;; amigaos*) case $host_cpu in powerpc) # see comment about AmigaOS4 .so support lt_prog_compiler_pic='-fPIC' ;; m68k) # FIXME: we need at least 68020 code to build shared libraries, but # adding the `-m68020' flag to GCC prevents building anything better, # like `-m68040'. lt_prog_compiler_pic='-m68020 -resident32 -malways-restore-a4' ;; esac ;; beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*) # PIC is the default for these OSes. ;; mingw* | cygwin* | pw32* | os2* | cegcc*) # This hack is so that the source file can tell whether it is being # built for inclusion in a dll (and should export symbols for example). # Although the cygwin gcc ignores -fPIC, still need this for old-style # (--disable-auto-import) libraries lt_prog_compiler_pic='-DDLL_EXPORT' ;; darwin* | rhapsody*) # PIC is the default on this platform # Common symbols not allowed in MH_DYLIB files lt_prog_compiler_pic='-fno-common' ;; hpux*) # PIC is the default for 64-bit PA HP-UX, but not for 32-bit # PA HP-UX. On IA64 HP-UX, PIC is the default but the pic flag # sets the default TLS model and affects inlining. case $host_cpu in hppa*64*) # +Z the default ;; *) lt_prog_compiler_pic='-fPIC' ;; esac ;; interix[3-9]*) # Interix 3.x gcc -fpic/-fPIC options generate broken code. # Instead, we relocate shared libraries at runtime. ;; msdosdjgpp*) # Just because we use GCC doesn't mean we suddenly get shared libraries # on systems that don't support them. lt_prog_compiler_can_build_shared=no enable_shared=no ;; *nto* | *qnx*) # QNX uses GNU C++, but need to define -shared option too, otherwise # it will coredump. lt_prog_compiler_pic='-fPIC -shared' ;; sysv4*MP*) if test -d /usr/nec; then lt_prog_compiler_pic=-Kconform_pic fi ;; *) lt_prog_compiler_pic='-fPIC' ;; esac else # PORTME Check for flag to pass linker flags through the system compiler. case $host_os in aix*) lt_prog_compiler_wl='-Wl,' if test "$host_cpu" = ia64; then # AIX 5 now supports IA64 processor lt_prog_compiler_static='-Bstatic' else lt_prog_compiler_static='-bnso -bI:/lib/syscalls.exp' fi ;; mingw* | cygwin* | pw32* | os2* | cegcc*) # This hack is so that the source file can tell whether it is being # built for inclusion in a dll (and should export symbols for example). lt_prog_compiler_pic='-DDLL_EXPORT' ;; hpux9* | hpux10* | hpux11*) lt_prog_compiler_wl='-Wl,' # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but # not for PA HP-UX. case $host_cpu in hppa*64*|ia64*) # +Z the default ;; *) lt_prog_compiler_pic='+Z' ;; esac # Is there a better lt_prog_compiler_static that works with the bundled CC? lt_prog_compiler_static='${wl}-a ${wl}archive' ;; irix5* | irix6* | nonstopux*) lt_prog_compiler_wl='-Wl,' # PIC (with -KPIC) is the default. lt_prog_compiler_static='-non_shared' ;; linux* | k*bsd*-gnu) case $cc_basename in # old Intel for x86_64 which still supported -KPIC. ecc*) lt_prog_compiler_wl='-Wl,' lt_prog_compiler_pic='-KPIC' lt_prog_compiler_static='-static' ;; # icc used to be incompatible with GCC. # ICC 10 doesn't accept -KPIC any more. icc* | ifort*) lt_prog_compiler_wl='-Wl,' lt_prog_compiler_pic='-fPIC' lt_prog_compiler_static='-static' ;; # Lahey Fortran 8.1. lf95*) lt_prog_compiler_wl='-Wl,' lt_prog_compiler_pic='--shared' lt_prog_compiler_static='--static' ;; pgcc* | pgf77* | pgf90* | pgf95*) # Portland Group compilers (*not* the Pentium gcc compiler, # which looks to be a dead project) lt_prog_compiler_wl='-Wl,' lt_prog_compiler_pic='-fpic' lt_prog_compiler_static='-Bstatic' ;; ccc*) lt_prog_compiler_wl='-Wl,' # All Alpha code is PIC. lt_prog_compiler_static='-non_shared' ;; xl*) # IBM XL C 8.0/Fortran 10.1 on PPC lt_prog_compiler_wl='-Wl,' lt_prog_compiler_pic='-qpic' lt_prog_compiler_static='-qstaticlink' ;; *) case `$CC -V 2>&1 | sed 5q` in *Sun\ C*) # Sun C 5.9 lt_prog_compiler_pic='-KPIC' lt_prog_compiler_static='-Bstatic' lt_prog_compiler_wl='-Wl,' ;; *Sun\ F*) # Sun Fortran 8.3 passes all unrecognized flags to the linker lt_prog_compiler_pic='-KPIC' lt_prog_compiler_static='-Bstatic' lt_prog_compiler_wl='' ;; esac ;; esac ;; newsos6) lt_prog_compiler_pic='-KPIC' lt_prog_compiler_static='-Bstatic' ;; *nto* | *qnx*) # QNX uses GNU C++, but need to define -shared option too, otherwise # it will coredump. lt_prog_compiler_pic='-fPIC -shared' ;; osf3* | osf4* | osf5*) lt_prog_compiler_wl='-Wl,' # All OSF/1 code is PIC. lt_prog_compiler_static='-non_shared' ;; rdos*) lt_prog_compiler_static='-non_shared' ;; solaris*) lt_prog_compiler_pic='-KPIC' lt_prog_compiler_static='-Bstatic' case $cc_basename in f77* | f90* | f95*) lt_prog_compiler_wl='-Qoption ld ';; *) lt_prog_compiler_wl='-Wl,';; esac ;; sunos4*) lt_prog_compiler_wl='-Qoption ld ' lt_prog_compiler_pic='-PIC' lt_prog_compiler_static='-Bstatic' ;; sysv4 | sysv4.2uw2* | sysv4.3*) lt_prog_compiler_wl='-Wl,' lt_prog_compiler_pic='-KPIC' lt_prog_compiler_static='-Bstatic' ;; sysv4*MP*) if test -d /usr/nec ;then lt_prog_compiler_pic='-Kconform_pic' lt_prog_compiler_static='-Bstatic' fi ;; sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*) lt_prog_compiler_wl='-Wl,' lt_prog_compiler_pic='-KPIC' lt_prog_compiler_static='-Bstatic' ;; unicos*) lt_prog_compiler_wl='-Wl,' lt_prog_compiler_can_build_shared=no ;; uts4*) lt_prog_compiler_pic='-pic' lt_prog_compiler_static='-Bstatic' ;; *) lt_prog_compiler_can_build_shared=no ;; esac fi case $host_os in # For platforms which do not support PIC, -DPIC is meaningless: *djgpp*) lt_prog_compiler_pic= ;; *) lt_prog_compiler_pic="$lt_prog_compiler_pic -DPIC" ;; esac { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_prog_compiler_pic" >&5 $as_echo "$lt_prog_compiler_pic" >&6; } # # Check to make sure the PIC flag actually works. # if test -n "$lt_prog_compiler_pic"; then { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler PIC flag $lt_prog_compiler_pic works" >&5 $as_echo_n "checking if $compiler PIC flag $lt_prog_compiler_pic works... " >&6; } if test "${lt_cv_prog_compiler_pic_works+set}" = set; then : $as_echo_n "(cached) " >&6 else lt_cv_prog_compiler_pic_works=no ac_outfile=conftest.$ac_objext echo "$lt_simple_compile_test_code" > conftest.$ac_ext lt_compiler_flag="$lt_prog_compiler_pic -DPIC" # Insert the option either (1) after the last *FLAGS variable, or # (2) before a word containing "conftest.", or (3) at the end. # Note that $ac_compile itself does not contain backslashes and begins # with a dollar sign (not a hyphen), so the echo should work correctly. # The option is referenced via a variable to avoid confusing sed. lt_compile=`echo "$ac_compile" | $SED \ -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` (eval echo "\"\$as_me:8742: $lt_compile\"" >&5) (eval "$lt_compile" 2>conftest.err) ac_status=$? cat conftest.err >&5 echo "$as_me:8746: \$? = $ac_status" >&5 if (exit $ac_status) && test -s "$ac_outfile"; then # The compiler can only warn and ignore the option if not recognized # So say no if there are warnings other than the usual output. $ECHO "X$_lt_compiler_boilerplate" | $Xsed -e '/^$/d' >conftest.exp $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2 if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then lt_cv_prog_compiler_pic_works=yes fi fi $RM conftest* fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_pic_works" >&5 $as_echo "$lt_cv_prog_compiler_pic_works" >&6; } if test x"$lt_cv_prog_compiler_pic_works" = xyes; then case $lt_prog_compiler_pic in "" | " "*) ;; *) lt_prog_compiler_pic=" $lt_prog_compiler_pic" ;; esac else lt_prog_compiler_pic= lt_prog_compiler_can_build_shared=no fi fi # # Check to make sure the static flag actually works. # wl=$lt_prog_compiler_wl eval lt_tmp_static_flag=\"$lt_prog_compiler_static\" { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler static flag $lt_tmp_static_flag works" >&5 $as_echo_n "checking if $compiler static flag $lt_tmp_static_flag works... " >&6; } if test "${lt_cv_prog_compiler_static_works+set}" = set; then : $as_echo_n "(cached) " >&6 else lt_cv_prog_compiler_static_works=no save_LDFLAGS="$LDFLAGS" LDFLAGS="$LDFLAGS $lt_tmp_static_flag" echo "$lt_simple_link_test_code" > conftest.$ac_ext if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then # The linker can only warn and ignore the option if not recognized # So say no if there are warnings if test -s conftest.err; then # Append any errors to the config.log. cat conftest.err 1>&5 $ECHO "X$_lt_linker_boilerplate" | $Xsed -e '/^$/d' > conftest.exp $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2 if diff conftest.exp conftest.er2 >/dev/null; then lt_cv_prog_compiler_static_works=yes fi else lt_cv_prog_compiler_static_works=yes fi fi $RM -r conftest* LDFLAGS="$save_LDFLAGS" fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_static_works" >&5 $as_echo "$lt_cv_prog_compiler_static_works" >&6; } if test x"$lt_cv_prog_compiler_static_works" = xyes; then : else lt_prog_compiler_static= fi { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -c -o file.$ac_objext" >&5 $as_echo_n "checking if $compiler supports -c -o file.$ac_objext... " >&6; } if test "${lt_cv_prog_compiler_c_o+set}" = set; then : $as_echo_n "(cached) " >&6 else lt_cv_prog_compiler_c_o=no $RM -r conftest 2>/dev/null mkdir conftest cd conftest mkdir out echo "$lt_simple_compile_test_code" > conftest.$ac_ext lt_compiler_flag="-o out/conftest2.$ac_objext" # Insert the option either (1) after the last *FLAGS variable, or # (2) before a word containing "conftest.", or (3) at the end. # Note that $ac_compile itself does not contain backslashes and begins # with a dollar sign (not a hyphen), so the echo should work correctly. lt_compile=`echo "$ac_compile" | $SED \ -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` (eval echo "\"\$as_me:8847: $lt_compile\"" >&5) (eval "$lt_compile" 2>out/conftest.err) ac_status=$? cat out/conftest.err >&5 echo "$as_me:8851: \$? = $ac_status" >&5 if (exit $ac_status) && test -s out/conftest2.$ac_objext then # The compiler can only warn and ignore the option if not recognized # So say no if there are warnings $ECHO "X$_lt_compiler_boilerplate" | $Xsed -e '/^$/d' > out/conftest.exp $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2 if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then lt_cv_prog_compiler_c_o=yes fi fi chmod u+w . 2>&5 $RM conftest* # SGI C++ compiler will create directory out/ii_files/ for # template instantiation test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files $RM out/* && rmdir out cd .. $RM -r conftest $RM conftest* fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_c_o" >&5 $as_echo "$lt_cv_prog_compiler_c_o" >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -c -o file.$ac_objext" >&5 $as_echo_n "checking if $compiler supports -c -o file.$ac_objext... " >&6; } if test "${lt_cv_prog_compiler_c_o+set}" = set; then : $as_echo_n "(cached) " >&6 else lt_cv_prog_compiler_c_o=no $RM -r conftest 2>/dev/null mkdir conftest cd conftest mkdir out echo "$lt_simple_compile_test_code" > conftest.$ac_ext lt_compiler_flag="-o out/conftest2.$ac_objext" # Insert the option either (1) after the last *FLAGS variable, or # (2) before a word containing "conftest.", or (3) at the end. # Note that $ac_compile itself does not contain backslashes and begins # with a dollar sign (not a hyphen), so the echo should work correctly. lt_compile=`echo "$ac_compile" | $SED \ -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` (eval echo "\"\$as_me:8902: $lt_compile\"" >&5) (eval "$lt_compile" 2>out/conftest.err) ac_status=$? cat out/conftest.err >&5 echo "$as_me:8906: \$? = $ac_status" >&5 if (exit $ac_status) && test -s out/conftest2.$ac_objext then # The compiler can only warn and ignore the option if not recognized # So say no if there are warnings $ECHO "X$_lt_compiler_boilerplate" | $Xsed -e '/^$/d' > out/conftest.exp $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2 if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then lt_cv_prog_compiler_c_o=yes fi fi chmod u+w . 2>&5 $RM conftest* # SGI C++ compiler will create directory out/ii_files/ for # template instantiation test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files $RM out/* && rmdir out cd .. $RM -r conftest $RM conftest* fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_c_o" >&5 $as_echo "$lt_cv_prog_compiler_c_o" >&6; } hard_links="nottested" if test "$lt_cv_prog_compiler_c_o" = no && test "$need_locks" != no; then # do not overwrite the value of need_locks provided by the user { $as_echo "$as_me:${as_lineno-$LINENO}: checking if we can lock with hard links" >&5 $as_echo_n "checking if we can lock with hard links... " >&6; } hard_links=yes $RM conftest* ln conftest.a conftest.b 2>/dev/null && hard_links=no touch conftest.a ln conftest.a conftest.b 2>&5 || hard_links=no ln conftest.a conftest.b 2>/dev/null && hard_links=no { $as_echo "$as_me:${as_lineno-$LINENO}: result: $hard_links" >&5 $as_echo "$hard_links" >&6; } if test "$hard_links" = no; then { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: \`$CC' does not support \`-c -o', so \`make -j' may be unsafe" >&5 $as_echo "$as_me: WARNING: \`$CC' does not support \`-c -o', so \`make -j' may be unsafe" >&2;} need_locks=warn fi else need_locks=no fi { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the $compiler linker ($LD) supports shared libraries" >&5 $as_echo_n "checking whether the $compiler linker ($LD) supports shared libraries... " >&6; } runpath_var= allow_undefined_flag= always_export_symbols=no archive_cmds= archive_expsym_cmds= compiler_needs_object=no enable_shared_with_static_runtimes=no export_dynamic_flag_spec= export_symbols_cmds='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols' hardcode_automatic=no hardcode_direct=no hardcode_direct_absolute=no hardcode_libdir_flag_spec= hardcode_libdir_flag_spec_ld= hardcode_libdir_separator= hardcode_minus_L=no hardcode_shlibpath_var=unsupported inherit_rpath=no link_all_deplibs=unknown module_cmds= module_expsym_cmds= old_archive_from_new_cmds= old_archive_from_expsyms_cmds= thread_safe_flag_spec= whole_archive_flag_spec= # include_expsyms should be a list of space-separated symbols to be *always* # included in the symbol list include_expsyms= # exclude_expsyms can be an extended regexp of symbols to exclude # it will be wrapped by ` (' and `)$', so one must not match beginning or # end of line. Example: `a|bc|.*d.*' will exclude the symbols `a' and `bc', # as well as any symbol that contains `d'. exclude_expsyms='_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*' # Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out # platforms (ab)use it in PIC code, but their linkers get confused if # the symbol is explicitly referenced. Since portable code cannot # rely on this symbol name, it's probably fine to never include it in # preloaded symbol tables. # Exclude shared library initialization/finalization symbols. extract_expsyms_cmds= case $host_os in cygwin* | mingw* | pw32* | cegcc*) # FIXME: the MSVC++ port hasn't been tested in a loooong time # When not using gcc, we currently assume that we are using # Microsoft Visual C++. if test "$GCC" != yes; then with_gnu_ld=no fi ;; interix*) # we just hope/assume this is gcc and not c89 (= MSVC++) with_gnu_ld=yes ;; openbsd*) with_gnu_ld=no ;; esac ld_shlibs=yes if test "$with_gnu_ld" = yes; then # If archive_cmds runs LD, not CC, wlarc should be empty wlarc='${wl}' # Set some defaults for GNU ld with shared library support. These # are reset later if shared libraries are not supported. Putting them # here allows them to be overridden if necessary. runpath_var=LD_RUN_PATH hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' export_dynamic_flag_spec='${wl}--export-dynamic' # ancient GNU ld didn't support --whole-archive et. al. if $LD --help 2>&1 | $GREP 'no-whole-archive' > /dev/null; then whole_archive_flag_spec="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive' else whole_archive_flag_spec= fi supports_anon_versioning=no case `$LD -v 2>&1` in *\ [01].* | *\ 2.[0-9].* | *\ 2.10.*) ;; # catch versions < 2.11 *\ 2.11.93.0.2\ *) supports_anon_versioning=yes ;; # RH7.3 ... *\ 2.11.92.0.12\ *) supports_anon_versioning=yes ;; # Mandrake 8.2 ... *\ 2.11.*) ;; # other 2.11 versions *) supports_anon_versioning=yes ;; esac # See if GNU ld supports shared libraries. case $host_os in aix[3-9]*) # On AIX/PPC, the GNU linker is very broken if test "$host_cpu" != ia64; then ld_shlibs=no cat <<_LT_EOF 1>&2 *** Warning: the GNU linker, at least up to release 2.9.1, is reported *** to be unable to reliably create shared libraries on AIX. *** Therefore, libtool is disabling shared libraries support. If you *** really care for shared libraries, you may want to modify your PATH *** so that a non-GNU linker is found, and then restart. _LT_EOF fi ;; amigaos*) case $host_cpu in powerpc) # see comment about AmigaOS4 .so support archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' archive_expsym_cmds='' ;; m68k) archive_cmds='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)' hardcode_libdir_flag_spec='-L$libdir' hardcode_minus_L=yes ;; esac ;; beos*) if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then allow_undefined_flag=unsupported # Joseph Beckenbach says some releases of gcc # support --undefined. This deserves some investigation. FIXME archive_cmds='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' else ld_shlibs=no fi ;; cygwin* | mingw* | pw32* | cegcc*) # _LT_TAGVAR(hardcode_libdir_flag_spec, ) is actually meaningless, # as there is no search path for DLLs. hardcode_libdir_flag_spec='-L$libdir' allow_undefined_flag=unsupported always_export_symbols=no enable_shared_with_static_runtimes=yes export_symbols_cmds='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[BCDGRS][ ]/s/.*[ ]\([^ ]*\)/\1 DATA/'\'' | $SED -e '\''/^[AITW][ ]/s/.*[ ]//'\'' | sort | uniq > $export_symbols' if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib' # If the export-symbols file already is a .def file (1st line # is EXPORTS), use it as is; otherwise, prepend... archive_expsym_cmds='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then cp $export_symbols $output_objdir/$soname.def; else echo EXPORTS > $output_objdir/$soname.def; cat $export_symbols >> $output_objdir/$soname.def; fi~ $CC -shared $output_objdir/$soname.def $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib' else ld_shlibs=no fi ;; interix[3-9]*) hardcode_direct=no hardcode_shlibpath_var=no hardcode_libdir_flag_spec='${wl}-rpath,$libdir' export_dynamic_flag_spec='${wl}-E' # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc. # Instead, shared libraries are loaded at an image base (0x10000000 by # default) and relocated if they conflict, which is a slow very memory # consuming and fragmenting process. To avoid this, we pick a random, # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link # time. Moving up from 0x10000000 also allows more sbrk(2) space. archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' archive_expsym_cmds='sed "s,^,_," $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--retain-symbols-file,$output_objdir/$soname.expsym ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' ;; gnu* | linux* | tpf* | k*bsd*-gnu) tmp_diet=no if test "$host_os" = linux-dietlibc; then case $cc_basename in diet\ *) tmp_diet=yes;; # linux-dietlibc with static linking (!diet-dyn) esac fi if $LD --help 2>&1 | $EGREP ': supported targets:.* elf' > /dev/null \ && test "$tmp_diet" = no then tmp_addflag= tmp_sharedflag='-shared' case $cc_basename,$host_cpu in pgcc*) # Portland Group C compiler whole_archive_flag_spec='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $ECHO \"$new_convenience\"` ${wl}--no-whole-archive' tmp_addflag=' $pic_flag' ;; pgf77* | pgf90* | pgf95*) # Portland Group f77 and f90 compilers whole_archive_flag_spec='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $ECHO \"$new_convenience\"` ${wl}--no-whole-archive' tmp_addflag=' $pic_flag -Mnomain' ;; ecc*,ia64* | icc*,ia64*) # Intel C compiler on ia64 tmp_addflag=' -i_dynamic' ;; efc*,ia64* | ifort*,ia64*) # Intel Fortran compiler on ia64 tmp_addflag=' -i_dynamic -nofor_main' ;; ifc* | ifort*) # Intel Fortran compiler tmp_addflag=' -nofor_main' ;; lf95*) # Lahey Fortran 8.1 whole_archive_flag_spec= tmp_sharedflag='--shared' ;; xl[cC]*) # IBM XL C 8.0 on PPC (deal with xlf below) tmp_sharedflag='-qmkshrobj' tmp_addflag= ;; esac case `$CC -V 2>&1 | sed 5q` in *Sun\ C*) # Sun C 5.9 whole_archive_flag_spec='${wl}--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; $ECHO \"$new_convenience\"` ${wl}--no-whole-archive' compiler_needs_object=yes tmp_sharedflag='-G' ;; *Sun\ F*) # Sun Fortran 8.3 tmp_sharedflag='-G' ;; esac archive_cmds='$CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' if test "x$supports_anon_versioning" = xyes; then archive_expsym_cmds='echo "{ global:" > $output_objdir/$libname.ver~ cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ echo "local: *; };" >> $output_objdir/$libname.ver~ $CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib' fi case $cc_basename in xlf*) # IBM XL Fortran 10.1 on PPC cannot create shared libs itself whole_archive_flag_spec='--whole-archive$convenience --no-whole-archive' hardcode_libdir_flag_spec= hardcode_libdir_flag_spec_ld='-rpath $libdir' archive_cmds='$LD -shared $libobjs $deplibs $compiler_flags -soname $soname -o $lib' if test "x$supports_anon_versioning" = xyes; then archive_expsym_cmds='echo "{ global:" > $output_objdir/$libname.ver~ cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ echo "local: *; };" >> $output_objdir/$libname.ver~ $LD -shared $libobjs $deplibs $compiler_flags -soname $soname -version-script $output_objdir/$libname.ver -o $lib' fi ;; esac else ld_shlibs=no fi ;; netbsd*) if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then archive_cmds='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib' wlarc= else archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' fi ;; solaris*) if $LD -v 2>&1 | $GREP 'BFD 2\.8' > /dev/null; then ld_shlibs=no cat <<_LT_EOF 1>&2 *** Warning: The releases 2.8.* of the GNU linker cannot reliably *** create shared libraries on Solaris systems. Therefore, libtool *** is disabling shared libraries support. We urge you to upgrade GNU *** binutils to release 2.9.1 or newer. Another option is to modify *** your PATH or compiler configuration so that the native linker is *** used, and then restart. _LT_EOF elif $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' else ld_shlibs=no fi ;; sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX*) case `$LD -v 2>&1` in *\ [01].* | *\ 2.[0-9].* | *\ 2.1[0-5].*) ld_shlibs=no cat <<_LT_EOF 1>&2 *** Warning: Releases of the GNU linker prior to 2.16.91.0.3 can not *** reliably create shared libraries on SCO systems. Therefore, libtool *** is disabling shared libraries support. We urge you to upgrade GNU *** binutils to release 2.16.91.0.3 or newer. Another option is to modify *** your PATH or compiler configuration so that the native linker is *** used, and then restart. _LT_EOF ;; *) # For security reasons, it is highly recommended that you always # use absolute paths for naming shared libraries, and exclude the # DT_RUNPATH tag from executables and libraries. But doing so # requires that you compile everything twice, which is a pain. if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' else ld_shlibs=no fi ;; esac ;; sunos4*) archive_cmds='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags' wlarc= hardcode_direct=yes hardcode_shlibpath_var=no ;; *) if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' else ld_shlibs=no fi ;; esac if test "$ld_shlibs" = no; then runpath_var= hardcode_libdir_flag_spec= export_dynamic_flag_spec= whole_archive_flag_spec= fi else # PORTME fill in a description of your system's linker (not GNU ld) case $host_os in aix3*) allow_undefined_flag=unsupported always_export_symbols=yes archive_expsym_cmds='$LD -o $output_objdir/$soname $libobjs $deplibs $linker_flags -bE:$export_symbols -T512 -H512 -bM:SRE~$AR $AR_FLAGS $lib $output_objdir/$soname' # Note: this linker hardcodes the directories in LIBPATH if there # are no directories specified by -L. hardcode_minus_L=yes if test "$GCC" = yes && test -z "$lt_prog_compiler_static"; then # Neither direct hardcoding nor static linking is supported with a # broken collect2. hardcode_direct=unsupported fi ;; aix[4-9]*) if test "$host_cpu" = ia64; then # On IA64, the linker does run time linking by default, so we don't # have to do anything special. aix_use_runtimelinking=no exp_sym_flag='-Bexport' no_entry_flag="" else # If we're using GNU nm, then we don't want the "-C" option. # -C means demangle to AIX nm, but means don't demangle with GNU nm if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then export_symbols_cmds='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && (substr(\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols' else export_symbols_cmds='$NM -BCpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && (substr(\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols' fi aix_use_runtimelinking=no # Test if we are trying to use run time linking or normal # AIX style linking. If -brtl is somewhere in LDFLAGS, we # need to do runtime linking. case $host_os in aix4.[23]|aix4.[23].*|aix[5-9]*) for ld_flag in $LDFLAGS; do if (test $ld_flag = "-brtl" || test $ld_flag = "-Wl,-brtl"); then aix_use_runtimelinking=yes break fi done ;; esac exp_sym_flag='-bexport' no_entry_flag='-bnoentry' fi # When large executables or shared objects are built, AIX ld can # have problems creating the table of contents. If linking a library # or program results in "error TOC overflow" add -mminimal-toc to # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS. archive_cmds='' hardcode_direct=yes hardcode_direct_absolute=yes hardcode_libdir_separator=':' link_all_deplibs=yes file_list_spec='${wl}-f,' if test "$GCC" = yes; then case $host_os in aix4.[012]|aix4.[012].*) # We only want to do this on AIX 4.2 and lower, the check # below for broken collect2 doesn't work under 4.3+ collect2name=`${CC} -print-prog-name=collect2` if test -f "$collect2name" && strings "$collect2name" | $GREP resolve_lib_name >/dev/null then # We have reworked collect2 : else # We have old collect2 hardcode_direct=unsupported # It fails to find uninstalled libraries when the uninstalled # path is not listed in the libpath. Setting hardcode_minus_L # to unsupported forces relinking hardcode_minus_L=yes hardcode_libdir_flag_spec='-L$libdir' hardcode_libdir_separator= fi ;; esac shared_flag='-shared' if test "$aix_use_runtimelinking" = yes; then shared_flag="$shared_flag "'${wl}-G' fi else # not using gcc if test "$host_cpu" = ia64; then # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release # chokes on -Wl,-G. The following line is correct: shared_flag='-G' else if test "$aix_use_runtimelinking" = yes; then shared_flag='${wl}-G' else shared_flag='${wl}-bM:SRE' fi fi fi export_dynamic_flag_spec='${wl}-bexpall' # It seems that -bexpall does not export symbols beginning with # underscore (_), so it is better to generate a list of symbols to export. always_export_symbols=yes if test "$aix_use_runtimelinking" = yes; then # Warning - without using the other runtime loading flags (-brtl), # -berok will link without error, but may produce a broken library. allow_undefined_flag='-berok' # Determine the default libpath from the value encoded in an # empty executable. cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : lt_aix_libpath_sed=' /Import File Strings/,/^$/ { /^0/ { s/^0 *\(.*\)$/\1/ p } }' aix_libpath=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"` # Check for a 64-bit object if we didn't find anything. if test -z "$aix_libpath"; then aix_libpath=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"` fi fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:'"$aix_libpath" archive_expsym_cmds='$CC -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then $ECHO "X${wl}${allow_undefined_flag}" | $Xsed; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag" else if test "$host_cpu" = ia64; then hardcode_libdir_flag_spec='${wl}-R $libdir:/usr/lib:/lib' allow_undefined_flag="-z nodefs" archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$exp_sym_flag:\$export_symbols" else # Determine the default libpath from the value encoded in an # empty executable. cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : lt_aix_libpath_sed=' /Import File Strings/,/^$/ { /^0/ { s/^0 *\(.*\)$/\1/ p } }' aix_libpath=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"` # Check for a 64-bit object if we didn't find anything. if test -z "$aix_libpath"; then aix_libpath=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"` fi fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:'"$aix_libpath" # Warning - without using the other run time loading flags, # -berok will link without error, but may produce a broken library. no_undefined_flag=' ${wl}-bernotok' allow_undefined_flag=' ${wl}-berok' # Exported symbols can be pulled into shared objects from archives whole_archive_flag_spec='$convenience' archive_cmds_need_lc=yes # This is similar to how AIX traditionally builds its shared libraries. archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs ${wl}-bnoentry $compiler_flags ${wl}-bE:$export_symbols${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname' fi fi ;; amigaos*) case $host_cpu in powerpc) # see comment about AmigaOS4 .so support archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' archive_expsym_cmds='' ;; m68k) archive_cmds='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)' hardcode_libdir_flag_spec='-L$libdir' hardcode_minus_L=yes ;; esac ;; bsdi[45]*) export_dynamic_flag_spec=-rdynamic ;; cygwin* | mingw* | pw32* | cegcc*) # When not using gcc, we currently assume that we are using # Microsoft Visual C++. # hardcode_libdir_flag_spec is actually meaningless, as there is # no search path for DLLs. hardcode_libdir_flag_spec=' ' allow_undefined_flag=unsupported # Tell ltmain to make .lib files, not .a files. libext=lib # Tell ltmain to make .dll files, not .so files. shrext_cmds=".dll" # FIXME: Setting linknames here is a bad hack. archive_cmds='$CC -o $lib $libobjs $compiler_flags `$ECHO "X$deplibs" | $Xsed -e '\''s/ -lc$//'\''` -link -dll~linknames=' # The linker will automatically build a .lib file if we build a DLL. old_archive_from_new_cmds='true' # FIXME: Should let the user specify the lib program. old_archive_cmds='lib -OUT:$oldlib$oldobjs$old_deplibs' fix_srcfile_path='`cygpath -w "$srcfile"`' enable_shared_with_static_runtimes=yes ;; darwin* | rhapsody*) archive_cmds_need_lc=no hardcode_direct=no hardcode_automatic=yes hardcode_shlibpath_var=unsupported whole_archive_flag_spec='' link_all_deplibs=yes allow_undefined_flag="$_lt_dar_allow_undefined" case $cc_basename in ifort*) _lt_dar_can_shared=yes ;; *) _lt_dar_can_shared=$GCC ;; esac if test "$_lt_dar_can_shared" = "yes"; then output_verbose_link_cmd=echo archive_cmds="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}" module_cmds="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}" archive_expsym_cmds="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}" module_expsym_cmds="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}" else ld_shlibs=no fi ;; dgux*) archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' hardcode_libdir_flag_spec='-L$libdir' hardcode_shlibpath_var=no ;; freebsd1*) ld_shlibs=no ;; # FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor # support. Future versions do this automatically, but an explicit c++rt0.o # does not break anything, and helps significantly (at the cost of a little # extra space). freebsd2.2*) archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags /usr/lib/c++rt0.o' hardcode_libdir_flag_spec='-R$libdir' hardcode_direct=yes hardcode_shlibpath_var=no ;; # Unfortunately, older versions of FreeBSD 2 do not have this feature. freebsd2*) archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' hardcode_direct=yes hardcode_minus_L=yes hardcode_shlibpath_var=no ;; # FreeBSD 3 and greater uses gcc -shared to do shared libraries. freebsd* | dragonfly*) archive_cmds='$CC -shared -o $lib $libobjs $deplibs $compiler_flags' hardcode_libdir_flag_spec='-R$libdir' hardcode_direct=yes hardcode_shlibpath_var=no ;; hpux9*) if test "$GCC" = yes; then archive_cmds='$RM $output_objdir/$soname~$CC -shared -fPIC ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $libobjs $deplibs $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' else archive_cmds='$RM $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' fi hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir' hardcode_libdir_separator=: hardcode_direct=yes # hardcode_minus_L: Not really in the search PATH, # but as the default location of the library. hardcode_minus_L=yes export_dynamic_flag_spec='${wl}-E' ;; hpux10*) if test "$GCC" = yes -a "$with_gnu_ld" = no; then archive_cmds='$CC -shared -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags' else archive_cmds='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags' fi if test "$with_gnu_ld" = no; then hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir' hardcode_libdir_flag_spec_ld='+b $libdir' hardcode_libdir_separator=: hardcode_direct=yes hardcode_direct_absolute=yes export_dynamic_flag_spec='${wl}-E' # hardcode_minus_L: Not really in the search PATH, # but as the default location of the library. hardcode_minus_L=yes fi ;; hpux11*) if test "$GCC" = yes -a "$with_gnu_ld" = no; then case $host_cpu in hppa*64*) archive_cmds='$CC -shared ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags' ;; ia64*) archive_cmds='$CC -shared -fPIC ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags' ;; *) archive_cmds='$CC -shared -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags' ;; esac else case $host_cpu in hppa*64*) archive_cmds='$CC -b ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags' ;; ia64*) archive_cmds='$CC -b ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags' ;; *) archive_cmds='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags' ;; esac fi if test "$with_gnu_ld" = no; then hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir' hardcode_libdir_separator=: case $host_cpu in hppa*64*|ia64*) hardcode_direct=no hardcode_shlibpath_var=no ;; *) hardcode_direct=yes hardcode_direct_absolute=yes export_dynamic_flag_spec='${wl}-E' # hardcode_minus_L: Not really in the search PATH, # but as the default location of the library. hardcode_minus_L=yes ;; esac fi ;; irix5* | irix6* | nonstopux*) if test "$GCC" = yes; then archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' # Try to use the -exported_symbol ld option, if it does not # work, assume that -exports_file does not work either and # implicitly export all symbols. save_LDFLAGS="$LDFLAGS" LDFLAGS="$LDFLAGS -shared ${wl}-exported_symbol ${wl}foo ${wl}-update_registry ${wl}/dev/null" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int foo(void) {} _ACEOF if ac_fn_c_try_link "$LINENO"; then : archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations ${wl}-exports_file ${wl}$export_symbols -o $lib' fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LDFLAGS="$save_LDFLAGS" else archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib' archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -exports_file $export_symbols -o $lib' fi archive_cmds_need_lc='no' hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' hardcode_libdir_separator=: inherit_rpath=yes link_all_deplibs=yes ;; netbsd*) if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' # a.out else archive_cmds='$LD -shared -o $lib $libobjs $deplibs $linker_flags' # ELF fi hardcode_libdir_flag_spec='-R$libdir' hardcode_direct=yes hardcode_shlibpath_var=no ;; newsos6) archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' hardcode_direct=yes hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' hardcode_libdir_separator=: hardcode_shlibpath_var=no ;; *nto* | *qnx*) ;; openbsd*) if test -f /usr/libexec/ld.so; then hardcode_direct=yes hardcode_shlibpath_var=no hardcode_direct_absolute=yes if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' archive_expsym_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-retain-symbols-file,$export_symbols' hardcode_libdir_flag_spec='${wl}-rpath,$libdir' export_dynamic_flag_spec='${wl}-E' else case $host_os in openbsd[01].* | openbsd2.[0-7] | openbsd2.[0-7].*) archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' hardcode_libdir_flag_spec='-R$libdir' ;; *) archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' hardcode_libdir_flag_spec='${wl}-rpath,$libdir' ;; esac fi else ld_shlibs=no fi ;; os2*) hardcode_libdir_flag_spec='-L$libdir' hardcode_minus_L=yes allow_undefined_flag=unsupported archive_cmds='$ECHO "LIBRARY $libname INITINSTANCE" > $output_objdir/$libname.def~$ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~$ECHO DATA >> $output_objdir/$libname.def~$ECHO " SINGLE NONSHARED" >> $output_objdir/$libname.def~$ECHO EXPORTS >> $output_objdir/$libname.def~emxexp $libobjs >> $output_objdir/$libname.def~$CC -Zdll -Zcrtdll -o $lib $libobjs $deplibs $compiler_flags $output_objdir/$libname.def' old_archive_from_new_cmds='emximp -o $output_objdir/$libname.a $output_objdir/$libname.def' ;; osf3*) if test "$GCC" = yes; then allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*' archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' else allow_undefined_flag=' -expect_unresolved \*' archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib' fi archive_cmds_need_lc='no' hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' hardcode_libdir_separator=: ;; osf4* | osf5*) # as osf3* with the addition of -msym flag if test "$GCC" = yes; then allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*' archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' else allow_undefined_flag=' -expect_unresolved \*' archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags -msym -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib' archive_expsym_cmds='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done; printf "%s\\n" "-hidden">> $lib.exp~ $CC -shared${allow_undefined_flag} ${wl}-input ${wl}$lib.exp $compiler_flags $libobjs $deplibs -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib~$RM $lib.exp' # Both c and cxx compiler support -rpath directly hardcode_libdir_flag_spec='-rpath $libdir' fi archive_cmds_need_lc='no' hardcode_libdir_separator=: ;; solaris*) no_undefined_flag=' -z defs' if test "$GCC" = yes; then wlarc='${wl}' archive_cmds='$CC -shared ${wl}-z ${wl}text ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags' archive_expsym_cmds='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ $CC -shared ${wl}-z ${wl}text ${wl}-M ${wl}$lib.exp ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp' else case `$CC -V 2>&1` in *"Compilers 5.0"*) wlarc='' archive_cmds='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags' archive_expsym_cmds='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$RM $lib.exp' ;; *) wlarc='${wl}' archive_cmds='$CC -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $compiler_flags' archive_expsym_cmds='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ $CC -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp' ;; esac fi hardcode_libdir_flag_spec='-R$libdir' hardcode_shlibpath_var=no case $host_os in solaris2.[0-5] | solaris2.[0-5].*) ;; *) # The compiler driver will combine and reorder linker options, # but understands `-z linker_flag'. GCC discards it without `$wl', # but is careful enough not to reorder. # Supported since Solaris 2.6 (maybe 2.5.1?) if test "$GCC" = yes; then whole_archive_flag_spec='${wl}-z ${wl}allextract$convenience ${wl}-z ${wl}defaultextract' else whole_archive_flag_spec='-z allextract$convenience -z defaultextract' fi ;; esac link_all_deplibs=yes ;; sunos4*) if test "x$host_vendor" = xsequent; then # Use $CC to link under sequent, because it throws in some extra .o # files that make .init and .fini sections work. archive_cmds='$CC -G ${wl}-h $soname -o $lib $libobjs $deplibs $compiler_flags' else archive_cmds='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags' fi hardcode_libdir_flag_spec='-L$libdir' hardcode_direct=yes hardcode_minus_L=yes hardcode_shlibpath_var=no ;; sysv4) case $host_vendor in sni) archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' hardcode_direct=yes # is this really true??? ;; siemens) ## LD is ld it makes a PLAMLIB ## CC just makes a GrossModule. archive_cmds='$LD -G -o $lib $libobjs $deplibs $linker_flags' reload_cmds='$CC -r -o $output$reload_objs' hardcode_direct=no ;; motorola) archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' hardcode_direct=no #Motorola manual says yes, but my tests say they lie ;; esac runpath_var='LD_RUN_PATH' hardcode_shlibpath_var=no ;; sysv4.3*) archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' hardcode_shlibpath_var=no export_dynamic_flag_spec='-Bexport' ;; sysv4*MP*) if test -d /usr/nec; then archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' hardcode_shlibpath_var=no runpath_var=LD_RUN_PATH hardcode_runpath_var=yes ld_shlibs=yes fi ;; sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[01].[10]* | unixware7* | sco3.2v5.0.[024]*) no_undefined_flag='${wl}-z,text' archive_cmds_need_lc=no hardcode_shlibpath_var=no runpath_var='LD_RUN_PATH' if test "$GCC" = yes; then archive_cmds='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' archive_expsym_cmds='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' else archive_cmds='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' archive_expsym_cmds='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' fi ;; sysv5* | sco3.2v5* | sco5v6*) # Note: We can NOT use -z defs as we might desire, because we do not # link with -lc, and that would cause any symbols used from libc to # always be unresolved, which means just about no library would # ever link correctly. If we're not using GNU ld we use -z text # though, which does catch some bad symbols but isn't as heavy-handed # as -z defs. no_undefined_flag='${wl}-z,text' allow_undefined_flag='${wl}-z,nodefs' archive_cmds_need_lc=no hardcode_shlibpath_var=no hardcode_libdir_flag_spec='${wl}-R,$libdir' hardcode_libdir_separator=':' link_all_deplibs=yes export_dynamic_flag_spec='${wl}-Bexport' runpath_var='LD_RUN_PATH' if test "$GCC" = yes; then archive_cmds='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' archive_expsym_cmds='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' else archive_cmds='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' archive_expsym_cmds='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' fi ;; uts4*) archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' hardcode_libdir_flag_spec='-L$libdir' hardcode_shlibpath_var=no ;; *) ld_shlibs=no ;; esac if test x$host_vendor = xsni; then case $host in sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*) export_dynamic_flag_spec='${wl}-Blargedynsym' ;; esac fi fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ld_shlibs" >&5 $as_echo "$ld_shlibs" >&6; } test "$ld_shlibs" = no && can_build_shared=no with_gnu_ld=$with_gnu_ld # # Do we need to explicitly link libc? # case "x$archive_cmds_need_lc" in x|xyes) # Assume -lc should be added archive_cmds_need_lc=yes if test "$enable_shared" = yes && test "$GCC" = yes; then case $archive_cmds in *'~'*) # FIXME: we may have to deal with multi-command sequences. ;; '$CC '*) # Test whether the compiler implicitly links with -lc since on some # systems, -lgcc has to come before -lc. If gcc already passes -lc # to ld, don't add -lc before -lgcc. { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether -lc should be explicitly linked in" >&5 $as_echo_n "checking whether -lc should be explicitly linked in... " >&6; } $RM conftest* echo "$lt_simple_compile_test_code" > conftest.$ac_ext if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 (eval $ac_compile) 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } 2>conftest.err; then soname=conftest lib=conftest libobjs=conftest.$ac_objext deplibs= wl=$lt_prog_compiler_wl pic_flag=$lt_prog_compiler_pic compiler_flags=-v linker_flags=-v verstring= output_objdir=. libname=conftest lt_save_allow_undefined_flag=$allow_undefined_flag allow_undefined_flag= if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$archive_cmds 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1\""; } >&5 (eval $archive_cmds 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1) 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } then archive_cmds_need_lc=no else archive_cmds_need_lc=yes fi allow_undefined_flag=$lt_save_allow_undefined_flag else cat conftest.err 1>&5 fi $RM conftest* { $as_echo "$as_me:${as_lineno-$LINENO}: result: $archive_cmds_need_lc" >&5 $as_echo "$archive_cmds_need_lc" >&6; } ;; esac fi ;; esac { $as_echo "$as_me:${as_lineno-$LINENO}: checking dynamic linker characteristics" >&5 $as_echo_n "checking dynamic linker characteristics... " >&6; } if test "$GCC" = yes; then case $host_os in darwin*) lt_awk_arg="/^libraries:/,/LR/" ;; *) lt_awk_arg="/^libraries:/" ;; esac lt_search_path_spec=`$CC -print-search-dirs | awk $lt_awk_arg | $SED -e "s/^libraries://" -e "s,=/,/,g"` if $ECHO "$lt_search_path_spec" | $GREP ';' >/dev/null ; then # if the path contains ";" then we assume it to be the separator # otherwise default to the standard path separator (i.e. ":") - it is # assumed that no part of a normal pathname contains ";" but that should # okay in the real world where ";" in dirpaths is itself problematic. lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED -e 's/;/ /g'` else lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"` fi # Ok, now we have the path, separated by spaces, we can step through it # and add multilib dir if necessary. lt_tmp_lt_search_path_spec= lt_multi_os_dir=`$CC $CPPFLAGS $CFLAGS $LDFLAGS -print-multi-os-directory 2>/dev/null` for lt_sys_path in $lt_search_path_spec; do if test -d "$lt_sys_path/$lt_multi_os_dir"; then lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path/$lt_multi_os_dir" else test -d "$lt_sys_path" && \ lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path" fi done lt_search_path_spec=`$ECHO $lt_tmp_lt_search_path_spec | awk ' BEGIN {RS=" "; FS="/|\n";} { lt_foo=""; lt_count=0; for (lt_i = NF; lt_i > 0; lt_i--) { if ($lt_i != "" && $lt_i != ".") { if ($lt_i == "..") { lt_count++; } else { if (lt_count == 0) { lt_foo="/" $lt_i lt_foo; } else { lt_count--; } } } } if (lt_foo != "") { lt_freq[lt_foo]++; } if (lt_freq[lt_foo] == 1) { print lt_foo; } }'` sys_lib_search_path_spec=`$ECHO $lt_search_path_spec` else sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib" fi library_names_spec= libname_spec='lib$name' soname_spec= shrext_cmds=".so" postinstall_cmds= postuninstall_cmds= finish_cmds= finish_eval= shlibpath_var= shlibpath_overrides_runpath=unknown version_type=none dynamic_linker="$host_os ld.so" sys_lib_dlsearch_path_spec="/lib /usr/lib" need_lib_prefix=unknown hardcode_into_libs=no # when you set need_version to no, make sure it does not cause -set_version # flags to be left without arguments need_version=unknown case $host_os in aix3*) version_type=linux library_names_spec='${libname}${release}${shared_ext}$versuffix $libname.a' shlibpath_var=LIBPATH # AIX 3 has no versioning support, so we append a major version to the name. soname_spec='${libname}${release}${shared_ext}$major' ;; aix[4-9]*) version_type=linux need_lib_prefix=no need_version=no hardcode_into_libs=yes if test "$host_cpu" = ia64; then # AIX 5 supports IA64 library_names_spec='${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext}$versuffix $libname${shared_ext}' shlibpath_var=LD_LIBRARY_PATH else # With GCC up to 2.95.x, collect2 would create an import file # for dependence libraries. The import file would start with # the line `#! .'. This would cause the generated library to # depend on `.', always an invalid library. This was fixed in # development snapshots of GCC prior to 3.0. case $host_os in aix4 | aix4.[01] | aix4.[01].*) if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)' echo ' yes ' echo '#endif'; } | ${CC} -E - | $GREP yes > /dev/null; then : else can_build_shared=no fi ;; esac # AIX (on Power*) has no versioning support, so currently we can not hardcode correct # soname into executable. Probably we can add versioning support to # collect2, so additional links can be useful in future. if test "$aix_use_runtimelinking" = yes; then # If using run time linking (on AIX 4.2 or later) use lib.so # instead of lib.a to let people know that these are not # typical AIX shared libraries. library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' else # We preserve .a as extension for shared libraries through AIX4.2 # and later when we are not doing run time linking. library_names_spec='${libname}${release}.a $libname.a' soname_spec='${libname}${release}${shared_ext}$major' fi shlibpath_var=LIBPATH fi ;; amigaos*) case $host_cpu in powerpc) # Since July 2007 AmigaOS4 officially supports .so libraries. # When compiling the executable, add -use-dynld -Lsobjs: to the compileline. library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' ;; m68k) library_names_spec='$libname.ixlibrary $libname.a' # Create ${libname}_ixlibrary.a entries in /sys/libs. finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`$ECHO "X$lib" | $Xsed -e '\''s%^.*/\([^/]*\)\.ixlibrary$%\1%'\''`; test $RM /sys/libs/${libname}_ixlibrary.a; $show "cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a"; cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a || exit 1; done' ;; esac ;; beos*) library_names_spec='${libname}${shared_ext}' dynamic_linker="$host_os ld.so" shlibpath_var=LIBRARY_PATH ;; bsdi[45]*) version_type=linux need_version=no library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' soname_spec='${libname}${release}${shared_ext}$major' finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir' shlibpath_var=LD_LIBRARY_PATH sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib" sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib" # the default ld.so.conf also contains /usr/contrib/lib and # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow # libtool to hard-code these into programs ;; cygwin* | mingw* | pw32* | cegcc*) version_type=windows shrext_cmds=".dll" need_version=no need_lib_prefix=no case $GCC,$host_os in yes,cygwin* | yes,mingw* | yes,pw32* | yes,cegcc*) library_names_spec='$libname.dll.a' # DLL is installed to $(libdir)/../bin by postinstall_cmds postinstall_cmds='base_file=`basename \${file}`~ dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i; echo \$dlname'\''`~ dldir=$destdir/`dirname \$dlpath`~ test -d \$dldir || mkdir -p \$dldir~ $install_prog $dir/$dlname \$dldir/$dlname~ chmod a+x \$dldir/$dlname~ if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then eval '\''$striplib \$dldir/$dlname'\'' || exit \$?; fi' postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~ dlpath=$dir/\$dldll~ $RM \$dlpath' shlibpath_overrides_runpath=yes case $host_os in cygwin*) # Cygwin DLLs use 'cyg' prefix rather than 'lib' soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}' sys_lib_search_path_spec="/usr/lib /lib/w32api /lib /usr/local/lib" ;; mingw* | cegcc*) # MinGW DLLs use traditional 'lib' prefix soname_spec='${libname}`echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}' sys_lib_search_path_spec=`$CC -print-search-dirs | $GREP "^libraries:" | $SED -e "s/^libraries://" -e "s,=/,/,g"` if $ECHO "$sys_lib_search_path_spec" | $GREP ';[c-zC-Z]:/' >/dev/null; then # It is most probably a Windows format PATH printed by # mingw gcc, but we are running on Cygwin. Gcc prints its search # path with ; separators, and with drive letters. We can handle the # drive letters (cygwin fileutils understands them), so leave them, # especially as we might pass files found there to a mingw objdump, # which wouldn't understand a cygwinified path. Ahh. sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'` else sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"` fi ;; pw32*) # pw32 DLLs use 'pw' prefix rather than 'lib' library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}' ;; esac ;; *) library_names_spec='${libname}`echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext} $libname.lib' ;; esac dynamic_linker='Win32 ld.exe' # FIXME: first we should search . and the directory the executable is in shlibpath_var=PATH ;; darwin* | rhapsody*) dynamic_linker="$host_os dyld" version_type=darwin need_lib_prefix=no need_version=no library_names_spec='${libname}${release}${major}$shared_ext ${libname}$shared_ext' soname_spec='${libname}${release}${major}$shared_ext' shlibpath_overrides_runpath=yes shlibpath_var=DYLD_LIBRARY_PATH shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`' sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/local/lib" sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib' ;; dgux*) version_type=linux need_lib_prefix=no need_version=no library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname$shared_ext' soname_spec='${libname}${release}${shared_ext}$major' shlibpath_var=LD_LIBRARY_PATH ;; freebsd1*) dynamic_linker=no ;; freebsd* | dragonfly*) # DragonFly does not have aout. When/if they implement a new # versioning mechanism, adjust this. if test -x /usr/bin/objformat; then objformat=`/usr/bin/objformat` else case $host_os in freebsd[123]*) objformat=aout ;; *) objformat=elf ;; esac fi version_type=freebsd-$objformat case $version_type in freebsd-elf*) library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}' need_version=no need_lib_prefix=no ;; freebsd-*) library_names_spec='${libname}${release}${shared_ext}$versuffix $libname${shared_ext}$versuffix' need_version=yes ;; esac shlibpath_var=LD_LIBRARY_PATH case $host_os in freebsd2*) shlibpath_overrides_runpath=yes ;; freebsd3.[01]* | freebsdelf3.[01]*) shlibpath_overrides_runpath=yes hardcode_into_libs=yes ;; freebsd3.[2-9]* | freebsdelf3.[2-9]* | \ freebsd4.[0-5] | freebsdelf4.[0-5] | freebsd4.1.1 | freebsdelf4.1.1) shlibpath_overrides_runpath=no hardcode_into_libs=yes ;; *) # from 4.6 on, and DragonFly shlibpath_overrides_runpath=yes hardcode_into_libs=yes ;; esac ;; gnu*) version_type=linux need_lib_prefix=no need_version=no library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}' soname_spec='${libname}${release}${shared_ext}$major' shlibpath_var=LD_LIBRARY_PATH hardcode_into_libs=yes ;; hpux9* | hpux10* | hpux11*) # Give a soname corresponding to the major version so that dld.sl refuses to # link against other versions. version_type=sunos need_lib_prefix=no need_version=no case $host_cpu in ia64*) shrext_cmds='.so' hardcode_into_libs=yes dynamic_linker="$host_os dld.so" shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=yes # Unless +noenvvar is specified. library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' soname_spec='${libname}${release}${shared_ext}$major' if test "X$HPUX_IA64_MODE" = X32; then sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib" else sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64" fi sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec ;; hppa*64*) shrext_cmds='.sl' hardcode_into_libs=yes dynamic_linker="$host_os dld.sl" shlibpath_var=LD_LIBRARY_PATH # How should we handle SHLIB_PATH shlibpath_overrides_runpath=yes # Unless +noenvvar is specified. library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' soname_spec='${libname}${release}${shared_ext}$major' sys_lib_search_path_spec="/usr/lib/pa20_64 /usr/ccs/lib/pa20_64" sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec ;; *) shrext_cmds='.sl' dynamic_linker="$host_os dld.sl" shlibpath_var=SHLIB_PATH shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' soname_spec='${libname}${release}${shared_ext}$major' ;; esac # HP-UX runs *really* slowly unless shared libraries are mode 555. postinstall_cmds='chmod 555 $lib' ;; interix[3-9]*) version_type=linux need_lib_prefix=no need_version=no library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}' soname_spec='${libname}${release}${shared_ext}$major' dynamic_linker='Interix 3.x ld.so.1 (PE, like ELF)' shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=no hardcode_into_libs=yes ;; irix5* | irix6* | nonstopux*) case $host_os in nonstopux*) version_type=nonstopux ;; *) if test "$lt_cv_prog_gnu_ld" = yes; then version_type=linux else version_type=irix fi ;; esac need_lib_prefix=no need_version=no soname_spec='${libname}${release}${shared_ext}$major' library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext} $libname${shared_ext}' case $host_os in irix5* | nonstopux*) libsuff= shlibsuff= ;; *) case $LD in # libtool.m4 will add one of these switches to LD *-32|*"-32 "|*-melf32bsmip|*"-melf32bsmip ") libsuff= shlibsuff= libmagic=32-bit;; *-n32|*"-n32 "|*-melf32bmipn32|*"-melf32bmipn32 ") libsuff=32 shlibsuff=N32 libmagic=N32;; *-64|*"-64 "|*-melf64bmip|*"-melf64bmip ") libsuff=64 shlibsuff=64 libmagic=64-bit;; *) libsuff= shlibsuff= libmagic=never-match;; esac ;; esac shlibpath_var=LD_LIBRARY${shlibsuff}_PATH shlibpath_overrides_runpath=no sys_lib_search_path_spec="/usr/lib${libsuff} /lib${libsuff} /usr/local/lib${libsuff}" sys_lib_dlsearch_path_spec="/usr/lib${libsuff} /lib${libsuff}" hardcode_into_libs=yes ;; # No shared lib support for Linux oldld, aout, or coff. linux*oldld* | linux*aout* | linux*coff*) dynamic_linker=no ;; # This must be Linux ELF. linux* | k*bsd*-gnu) version_type=linux need_lib_prefix=no need_version=no library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' soname_spec='${libname}${release}${shared_ext}$major' finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir' shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=no # Some binutils ld are patched to set DT_RUNPATH save_LDFLAGS=$LDFLAGS save_libdir=$libdir eval "libdir=/foo; wl=\"$lt_prog_compiler_wl\"; \ LDFLAGS=\"\$LDFLAGS $hardcode_libdir_flag_spec\"" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : if ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir" >/dev/null; then : shlibpath_overrides_runpath=yes fi fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LDFLAGS=$save_LDFLAGS libdir=$save_libdir # This implies no fast_install, which is unacceptable. # Some rework will be needed to allow for fast_install # before this can be enabled. hardcode_into_libs=yes # Add ABI-specific directories to the system library path. sys_lib_dlsearch_path_spec="/lib64 /usr/lib64 /lib /usr/lib" # Append ld.so.conf contents to the search path if test -f /etc/ld.so.conf; then lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \$2)); skip = 1; } { if (!skip) print \$0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;/^[ ]*hwcap[ ]/d;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '` sys_lib_dlsearch_path_spec="$sys_lib_dlsearch_path_spec $lt_ld_extra" fi # We used to test for /lib/ld.so.1 and disable shared libraries on # powerpc, because MkLinux only supported shared libraries with the # GNU dynamic linker. Since this was broken with cross compilers, # most powerpc-linux boxes support dynamic linking these days and # people can always --disable-shared, the test was removed, and we # assume the GNU/Linux dynamic linker is in use. dynamic_linker='GNU/Linux ld.so' ;; netbsd*) version_type=sunos need_lib_prefix=no need_version=no if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix' finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' dynamic_linker='NetBSD (a.out) ld.so' else library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}' soname_spec='${libname}${release}${shared_ext}$major' dynamic_linker='NetBSD ld.elf_so' fi shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=yes hardcode_into_libs=yes ;; newsos6) version_type=linux library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=yes ;; *nto* | *qnx*) version_type=qnx need_lib_prefix=no need_version=no library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' soname_spec='${libname}${release}${shared_ext}$major' shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=no hardcode_into_libs=yes dynamic_linker='ldqnx.so' ;; openbsd*) version_type=sunos sys_lib_dlsearch_path_spec="/usr/lib" need_lib_prefix=no # Some older versions of OpenBSD (3.3 at least) *do* need versioned libs. case $host_os in openbsd3.3 | openbsd3.3.*) need_version=yes ;; *) need_version=no ;; esac library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix' finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' shlibpath_var=LD_LIBRARY_PATH if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then case $host_os in openbsd2.[89] | openbsd2.[89].*) shlibpath_overrides_runpath=no ;; *) shlibpath_overrides_runpath=yes ;; esac else shlibpath_overrides_runpath=yes fi ;; os2*) libname_spec='$name' shrext_cmds=".dll" need_lib_prefix=no library_names_spec='$libname${shared_ext} $libname.a' dynamic_linker='OS/2 ld.exe' shlibpath_var=LIBPATH ;; osf3* | osf4* | osf5*) version_type=osf need_lib_prefix=no need_version=no soname_spec='${libname}${release}${shared_ext}$major' library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' shlibpath_var=LD_LIBRARY_PATH sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib" sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec" ;; rdos*) dynamic_linker=no ;; solaris*) version_type=linux need_lib_prefix=no need_version=no library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' soname_spec='${libname}${release}${shared_ext}$major' shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=yes hardcode_into_libs=yes # ldd complains unless libraries are executable postinstall_cmds='chmod +x $lib' ;; sunos4*) version_type=sunos library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix' finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir' shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=yes if test "$with_gnu_ld" = yes; then need_lib_prefix=no fi need_version=yes ;; sysv4 | sysv4.3*) version_type=linux library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' soname_spec='${libname}${release}${shared_ext}$major' shlibpath_var=LD_LIBRARY_PATH case $host_vendor in sni) shlibpath_overrides_runpath=no need_lib_prefix=no runpath_var=LD_RUN_PATH ;; siemens) need_lib_prefix=no ;; motorola) need_lib_prefix=no need_version=no shlibpath_overrides_runpath=no sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib' ;; esac ;; sysv4*MP*) if test -d /usr/nec ;then version_type=linux library_names_spec='$libname${shared_ext}.$versuffix $libname${shared_ext}.$major $libname${shared_ext}' soname_spec='$libname${shared_ext}.$major' shlibpath_var=LD_LIBRARY_PATH fi ;; sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*) version_type=freebsd-elf need_lib_prefix=no need_version=no library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}' soname_spec='${libname}${release}${shared_ext}$major' shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=yes hardcode_into_libs=yes if test "$with_gnu_ld" = yes; then sys_lib_search_path_spec='/usr/local/lib /usr/gnu/lib /usr/ccs/lib /usr/lib /lib' else sys_lib_search_path_spec='/usr/ccs/lib /usr/lib' case $host_os in sco3.2v5*) sys_lib_search_path_spec="$sys_lib_search_path_spec /lib" ;; esac fi sys_lib_dlsearch_path_spec='/usr/lib' ;; tpf*) # TPF is a cross-target only. Preferred cross-host = GNU/Linux. version_type=linux need_lib_prefix=no need_version=no library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=no hardcode_into_libs=yes ;; uts4*) version_type=linux library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' soname_spec='${libname}${release}${shared_ext}$major' shlibpath_var=LD_LIBRARY_PATH ;; *) dynamic_linker=no ;; esac { $as_echo "$as_me:${as_lineno-$LINENO}: result: $dynamic_linker" >&5 $as_echo "$dynamic_linker" >&6; } test "$dynamic_linker" = no && can_build_shared=no variables_saved_for_relink="PATH $shlibpath_var $runpath_var" if test "$GCC" = yes; then variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH" fi if test "${lt_cv_sys_lib_search_path_spec+set}" = set; then sys_lib_search_path_spec="$lt_cv_sys_lib_search_path_spec" fi if test "${lt_cv_sys_lib_dlsearch_path_spec+set}" = set; then sys_lib_dlsearch_path_spec="$lt_cv_sys_lib_dlsearch_path_spec" fi { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to hardcode library paths into programs" >&5 $as_echo_n "checking how to hardcode library paths into programs... " >&6; } hardcode_action= if test -n "$hardcode_libdir_flag_spec" || test -n "$runpath_var" || test "X$hardcode_automatic" = "Xyes" ; then # We can hardcode non-existent directories. if test "$hardcode_direct" != no && # If the only mechanism to avoid hardcoding is shlibpath_var, we # have to relink, otherwise we might link with an installed library # when we should be linking with a yet-to-be-installed one ## test "$_LT_TAGVAR(hardcode_shlibpath_var, )" != no && test "$hardcode_minus_L" != no; then # Linking always hardcodes the temporary library directory. hardcode_action=relink else # We can link without hardcoding, and we can hardcode nonexisting dirs. hardcode_action=immediate fi else # We cannot hardcode anything, or else we can only hardcode existing # directories. hardcode_action=unsupported fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $hardcode_action" >&5 $as_echo "$hardcode_action" >&6; } if test "$hardcode_action" = relink || test "$inherit_rpath" = yes; then # Fast installation is not supported enable_fast_install=no elif test "$shlibpath_overrides_runpath" = yes || test "$enable_shared" = no; then # Fast installation is not necessary enable_fast_install=needless fi if test "x$enable_dlopen" != xyes; then enable_dlopen=unknown enable_dlopen_self=unknown enable_dlopen_self_static=unknown else lt_cv_dlopen=no lt_cv_dlopen_libs= case $host_os in beos*) lt_cv_dlopen="load_add_on" lt_cv_dlopen_libs= lt_cv_dlopen_self=yes ;; mingw* | pw32* | cegcc*) lt_cv_dlopen="LoadLibrary" lt_cv_dlopen_libs= ;; cygwin*) lt_cv_dlopen="dlopen" lt_cv_dlopen_libs= ;; darwin*) # if libdl is installed we need to link against it { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -ldl" >&5 $as_echo_n "checking for dlopen in -ldl... " >&6; } if test "${ac_cv_lib_dl_dlopen+set}" = set; then : $as_echo_n "(cached) " >&6 else ac_check_lib_save_LIBS=$LIBS LIBS="-ldl $LIBS" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ /* Override any GCC internal prototype to avoid an error. Use char because int might match the return type of a GCC builtin and then its argument prototype would still apply. */ #ifdef __cplusplus extern "C" #endif char dlopen (); int main () { return dlopen (); ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : ac_cv_lib_dl_dlopen=yes else ac_cv_lib_dl_dlopen=no fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dl_dlopen" >&5 $as_echo "$ac_cv_lib_dl_dlopen" >&6; } if test "x$ac_cv_lib_dl_dlopen" = x""yes; then : lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl" else lt_cv_dlopen="dyld" lt_cv_dlopen_libs= lt_cv_dlopen_self=yes fi ;; *) ac_fn_c_check_func "$LINENO" "shl_load" "ac_cv_func_shl_load" if test "x$ac_cv_func_shl_load" = x""yes; then : lt_cv_dlopen="shl_load" else { $as_echo "$as_me:${as_lineno-$LINENO}: checking for shl_load in -ldld" >&5 $as_echo_n "checking for shl_load in -ldld... " >&6; } if test "${ac_cv_lib_dld_shl_load+set}" = set; then : $as_echo_n "(cached) " >&6 else ac_check_lib_save_LIBS=$LIBS LIBS="-ldld $LIBS" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ /* Override any GCC internal prototype to avoid an error. Use char because int might match the return type of a GCC builtin and then its argument prototype would still apply. */ #ifdef __cplusplus extern "C" #endif char shl_load (); int main () { return shl_load (); ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : ac_cv_lib_dld_shl_load=yes else ac_cv_lib_dld_shl_load=no fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dld_shl_load" >&5 $as_echo "$ac_cv_lib_dld_shl_load" >&6; } if test "x$ac_cv_lib_dld_shl_load" = x""yes; then : lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-ldld" else ac_fn_c_check_func "$LINENO" "dlopen" "ac_cv_func_dlopen" if test "x$ac_cv_func_dlopen" = x""yes; then : lt_cv_dlopen="dlopen" else { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -ldl" >&5 $as_echo_n "checking for dlopen in -ldl... " >&6; } if test "${ac_cv_lib_dl_dlopen+set}" = set; then : $as_echo_n "(cached) " >&6 else ac_check_lib_save_LIBS=$LIBS LIBS="-ldl $LIBS" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ /* Override any GCC internal prototype to avoid an error. Use char because int might match the return type of a GCC builtin and then its argument prototype would still apply. */ #ifdef __cplusplus extern "C" #endif char dlopen (); int main () { return dlopen (); ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : ac_cv_lib_dl_dlopen=yes else ac_cv_lib_dl_dlopen=no fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dl_dlopen" >&5 $as_echo "$ac_cv_lib_dl_dlopen" >&6; } if test "x$ac_cv_lib_dl_dlopen" = x""yes; then : lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl" else { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -lsvld" >&5 $as_echo_n "checking for dlopen in -lsvld... " >&6; } if test "${ac_cv_lib_svld_dlopen+set}" = set; then : $as_echo_n "(cached) " >&6 else ac_check_lib_save_LIBS=$LIBS LIBS="-lsvld $LIBS" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ /* Override any GCC internal prototype to avoid an error. Use char because int might match the return type of a GCC builtin and then its argument prototype would still apply. */ #ifdef __cplusplus extern "C" #endif char dlopen (); int main () { return dlopen (); ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : ac_cv_lib_svld_dlopen=yes else ac_cv_lib_svld_dlopen=no fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_svld_dlopen" >&5 $as_echo "$ac_cv_lib_svld_dlopen" >&6; } if test "x$ac_cv_lib_svld_dlopen" = x""yes; then : lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-lsvld" else { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dld_link in -ldld" >&5 $as_echo_n "checking for dld_link in -ldld... " >&6; } if test "${ac_cv_lib_dld_dld_link+set}" = set; then : $as_echo_n "(cached) " >&6 else ac_check_lib_save_LIBS=$LIBS LIBS="-ldld $LIBS" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ /* Override any GCC internal prototype to avoid an error. Use char because int might match the return type of a GCC builtin and then its argument prototype would still apply. */ #ifdef __cplusplus extern "C" #endif char dld_link (); int main () { return dld_link (); ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : ac_cv_lib_dld_dld_link=yes else ac_cv_lib_dld_dld_link=no fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dld_dld_link" >&5 $as_echo "$ac_cv_lib_dld_dld_link" >&6; } if test "x$ac_cv_lib_dld_dld_link" = x""yes; then : lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-ldld" fi fi fi fi fi fi ;; esac if test "x$lt_cv_dlopen" != xno; then enable_dlopen=yes else enable_dlopen=no fi case $lt_cv_dlopen in dlopen) save_CPPFLAGS="$CPPFLAGS" test "x$ac_cv_header_dlfcn_h" = xyes && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H" save_LDFLAGS="$LDFLAGS" wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\" save_LIBS="$LIBS" LIBS="$lt_cv_dlopen_libs $LIBS" { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether a program can dlopen itself" >&5 $as_echo_n "checking whether a program can dlopen itself... " >&6; } if test "${lt_cv_dlopen_self+set}" = set; then : $as_echo_n "(cached) " >&6 else if test "$cross_compiling" = yes; then : lt_cv_dlopen_self=cross else lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_status=$lt_dlunknown cat > conftest.$ac_ext <<_LT_EOF #line 11272 "configure" #include "confdefs.h" #if HAVE_DLFCN_H #include #endif #include #ifdef RTLD_GLOBAL # define LT_DLGLOBAL RTLD_GLOBAL #else # ifdef DL_GLOBAL # define LT_DLGLOBAL DL_GLOBAL # else # define LT_DLGLOBAL 0 # endif #endif /* We may have to define LT_DLLAZY_OR_NOW in the command line if we find out it does not work in some platform. */ #ifndef LT_DLLAZY_OR_NOW # ifdef RTLD_LAZY # define LT_DLLAZY_OR_NOW RTLD_LAZY # else # ifdef DL_LAZY # define LT_DLLAZY_OR_NOW DL_LAZY # else # ifdef RTLD_NOW # define LT_DLLAZY_OR_NOW RTLD_NOW # else # ifdef DL_NOW # define LT_DLLAZY_OR_NOW DL_NOW # else # define LT_DLLAZY_OR_NOW 0 # endif # endif # endif # endif #endif void fnord() { int i=42;} int main () { void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW); int status = $lt_dlunknown; if (self) { if (dlsym (self,"fnord")) status = $lt_dlno_uscore; else if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore; /* dlclose (self); */ } else puts (dlerror ()); return status; } _LT_EOF if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5 (eval $ac_link) 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } && test -s conftest${ac_exeext} 2>/dev/null; then (./conftest; exit; ) >&5 2>/dev/null lt_status=$? case x$lt_status in x$lt_dlno_uscore) lt_cv_dlopen_self=yes ;; x$lt_dlneed_uscore) lt_cv_dlopen_self=yes ;; x$lt_dlunknown|x*) lt_cv_dlopen_self=no ;; esac else : # compilation failed lt_cv_dlopen_self=no fi fi rm -fr conftest* fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_dlopen_self" >&5 $as_echo "$lt_cv_dlopen_self" >&6; } if test "x$lt_cv_dlopen_self" = xyes; then wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $lt_prog_compiler_static\" { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether a statically linked program can dlopen itself" >&5 $as_echo_n "checking whether a statically linked program can dlopen itself... " >&6; } if test "${lt_cv_dlopen_self_static+set}" = set; then : $as_echo_n "(cached) " >&6 else if test "$cross_compiling" = yes; then : lt_cv_dlopen_self_static=cross else lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_status=$lt_dlunknown cat > conftest.$ac_ext <<_LT_EOF #line 11368 "configure" #include "confdefs.h" #if HAVE_DLFCN_H #include #endif #include #ifdef RTLD_GLOBAL # define LT_DLGLOBAL RTLD_GLOBAL #else # ifdef DL_GLOBAL # define LT_DLGLOBAL DL_GLOBAL # else # define LT_DLGLOBAL 0 # endif #endif /* We may have to define LT_DLLAZY_OR_NOW in the command line if we find out it does not work in some platform. */ #ifndef LT_DLLAZY_OR_NOW # ifdef RTLD_LAZY # define LT_DLLAZY_OR_NOW RTLD_LAZY # else # ifdef DL_LAZY # define LT_DLLAZY_OR_NOW DL_LAZY # else # ifdef RTLD_NOW # define LT_DLLAZY_OR_NOW RTLD_NOW # else # ifdef DL_NOW # define LT_DLLAZY_OR_NOW DL_NOW # else # define LT_DLLAZY_OR_NOW 0 # endif # endif # endif # endif #endif void fnord() { int i=42;} int main () { void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW); int status = $lt_dlunknown; if (self) { if (dlsym (self,"fnord")) status = $lt_dlno_uscore; else if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore; /* dlclose (self); */ } else puts (dlerror ()); return status; } _LT_EOF if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5 (eval $ac_link) 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } && test -s conftest${ac_exeext} 2>/dev/null; then (./conftest; exit; ) >&5 2>/dev/null lt_status=$? case x$lt_status in x$lt_dlno_uscore) lt_cv_dlopen_self_static=yes ;; x$lt_dlneed_uscore) lt_cv_dlopen_self_static=yes ;; x$lt_dlunknown|x*) lt_cv_dlopen_self_static=no ;; esac else : # compilation failed lt_cv_dlopen_self_static=no fi fi rm -fr conftest* fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_dlopen_self_static" >&5 $as_echo "$lt_cv_dlopen_self_static" >&6; } fi CPPFLAGS="$save_CPPFLAGS" LDFLAGS="$save_LDFLAGS" LIBS="$save_LIBS" ;; esac case $lt_cv_dlopen_self in yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;; *) enable_dlopen_self=unknown ;; esac case $lt_cv_dlopen_self_static in yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;; *) enable_dlopen_self_static=unknown ;; esac fi striplib= old_striplib= { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether stripping libraries is possible" >&5 $as_echo_n "checking whether stripping libraries is possible... " >&6; } if test -n "$STRIP" && $STRIP -V 2>&1 | $GREP "GNU strip" >/dev/null; then test -z "$old_striplib" && old_striplib="$STRIP --strip-debug" test -z "$striplib" && striplib="$STRIP --strip-unneeded" { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } else # FIXME - insert some real tests, host_os isn't really good enough case $host_os in darwin*) if test -n "$STRIP" ; then striplib="$STRIP -x" old_striplib="$STRIP -S" { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi ;; *) { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } ;; esac fi # Report which library types will actually be built { $as_echo "$as_me:${as_lineno-$LINENO}: checking if libtool supports shared libraries" >&5 $as_echo_n "checking if libtool supports shared libraries... " >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: result: $can_build_shared" >&5 $as_echo "$can_build_shared" >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to build shared libraries" >&5 $as_echo_n "checking whether to build shared libraries... " >&6; } test "$can_build_shared" = "no" && enable_shared=no # On AIX, shared libraries and static libraries use the same namespace, and # are all built from PIC. case $host_os in aix3*) test "$enable_shared" = yes && enable_static=no if test -n "$RANLIB"; then archive_cmds="$archive_cmds~\$RANLIB \$lib" postinstall_cmds='$RANLIB $lib' fi ;; aix[4-9]*) if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then test "$enable_shared" = yes && enable_static=no fi ;; esac { $as_echo "$as_me:${as_lineno-$LINENO}: result: $enable_shared" >&5 $as_echo "$enable_shared" >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to build static libraries" >&5 $as_echo_n "checking whether to build static libraries... " >&6; } # Make sure either enable_shared or enable_static is yes. test "$enable_shared" = yes || enable_static=yes { $as_echo "$as_me:${as_lineno-$LINENO}: result: $enable_static" >&5 $as_echo "$enable_static" >&6; } fi ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu CC="$lt_save_CC" ac_config_commands="$ac_config_commands libtool" # Only expand once: for ac_prog in 'bison -y' byacc do # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if test "${ac_cv_prog_YACC+set}" = set; then : $as_echo_n "(cached) " >&6 else if test -n "$YACC"; then ac_cv_prog_YACC="$YACC" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_YACC="$ac_prog" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi YACC=$ac_cv_prog_YACC if test -n "$YACC"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $YACC" >&5 $as_echo "$YACC" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi test -n "$YACC" && break done test -n "$YACC" || YACC="yacc" for ac_prog in "xrdb" do # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if test "${ac_cv_path_PATH_TO_XRDB+set}" = set; then : $as_echo_n "(cached) " >&6 else case $PATH_TO_XRDB in [\\/]* | ?:[\\/]*) ac_cv_path_PATH_TO_XRDB="$PATH_TO_XRDB" # Let the user override the test with a path. ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_path_PATH_TO_XRDB="$as_dir/$ac_word$ac_exec_ext" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS ;; esac fi PATH_TO_XRDB=$ac_cv_path_PATH_TO_XRDB if test -n "$PATH_TO_XRDB"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PATH_TO_XRDB" >&5 $as_echo "$PATH_TO_XRDB" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi test -n "$PATH_TO_XRDB" && break done ACLOCAL_AMFLAGS="\${ACLOCAL_FLAGS}" if test -n "$ac_macro_dir"; then ACLOCAL_AMFLAGS="-I $ac_macro_dir $ACLOCAL_AMFLAGS" fi # Check whether --enable-debug was given. if test "${enable_debug+set}" = set; then : enableval=$enable_debug; else enable_debug=no fi if test x$enable_debug = xyes ; then $as_echo "#define GNOME_ENABLE_DEBUG 1" >>confdefs.h fi # Check whether --enable-compile-warnings was given. if test "${enable_compile_warnings+set}" = set; then : enableval=$enable_compile_warnings; else enable_compile_warnings="maximum" fi warnCFLAGS= if test "x$GCC" != xyes; then enable_compile_warnings=no fi warning_flags= realsave_CFLAGS="$CFLAGS" case "$enable_compile_warnings" in no) warning_flags= ;; minimum) warning_flags="-Wall" ;; yes) warning_flags="-Wall -Wmissing-prototypes" ;; maximum|error) warning_flags="-Wall -Wmissing-prototypes -Wnested-externs -Wpointer-arith" CFLAGS="$warning_flags $CFLAGS" for option in -Wno-sign-compare; do SAVE_CFLAGS="$CFLAGS" CFLAGS="$CFLAGS $option" { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether gcc understands $option" >&5 $as_echo_n "checking whether gcc understands $option... " >&6; } cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO"; then : has_option=yes else has_option=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext CFLAGS="$SAVE_CFLAGS" { $as_echo "$as_me:${as_lineno-$LINENO}: result: $has_option" >&5 $as_echo "$has_option" >&6; } if test $has_option = yes; then warning_flags="$warning_flags $option" fi unset has_option unset SAVE_CFLAGS done unset option if test "$enable_compile_warnings" = "error" ; then warning_flags="$warning_flags -Werror" fi ;; *) as_fn_error "Unknown argument '$enable_compile_warnings' to --enable-compile-warnings" "$LINENO" 5 ;; esac CFLAGS="$realsave_CFLAGS" { $as_echo "$as_me:${as_lineno-$LINENO}: checking what warning flags to pass to the C compiler" >&5 $as_echo_n "checking what warning flags to pass to the C compiler... " >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: result: $warning_flags" >&5 $as_echo "$warning_flags" >&6; } # Check whether --enable-iso-c was given. if test "${enable_iso_c+set}" = set; then : enableval=$enable_iso_c; else enable_iso_c=no fi { $as_echo "$as_me:${as_lineno-$LINENO}: checking what language compliance flags to pass to the C compiler" >&5 $as_echo_n "checking what language compliance flags to pass to the C compiler... " >&6; } complCFLAGS= if test "x$enable_iso_c" != "xno"; then if test "x$GCC" = "xyes"; then case " $CFLAGS " in *\ \ -ansi\ \ *) ;; *) complCFLAGS="$complCFLAGS -ansi" ;; esac case " $CFLAGS " in *\ \ -pedantic\ \ *) ;; *) complCFLAGS="$complCFLAGS -pedantic" ;; esac fi fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $complCFLAGS" >&5 $as_echo "$complCFLAGS" >&6; } WARN_CFLAGS="$warning_flags $complCFLAGS" # see bug #455597 # GNOME_MAINTAINER_MODE_DEFINES { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether NLS is requested" >&5 $as_echo_n "checking whether NLS is requested... " >&6; } # Check whether --enable-nls was given. if test "${enable_nls+set}" = set; then : enableval=$enable_nls; USE_NLS=$enableval else USE_NLS=yes fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $USE_NLS" >&5 $as_echo "$USE_NLS" >&6; } case "$am__api_version" in 1.01234) as_fn_error "Automake 1.5 or newer is required to use intltool" "$LINENO" 5 ;; *) ;; esac if test -n "0.40.0"; then { $as_echo "$as_me:${as_lineno-$LINENO}: checking for intltool >= 0.40.0" >&5 $as_echo_n "checking for intltool >= 0.40.0... " >&6; } INTLTOOL_REQUIRED_VERSION_AS_INT=`echo 0.40.0 | awk -F. '{ print $ 1 * 1000 + $ 2 * 100 + $ 3; }'` INTLTOOL_APPLIED_VERSION=`intltool-update --version | head -1 | cut -d" " -f3` INTLTOOL_APPLIED_VERSION_AS_INT=`echo $INTLTOOL_APPLIED_VERSION | awk -F. '{ print $ 1 * 1000 + $ 2 * 100 + $ 3; }'` { $as_echo "$as_me:${as_lineno-$LINENO}: result: $INTLTOOL_APPLIED_VERSION found" >&5 $as_echo "$INTLTOOL_APPLIED_VERSION found" >&6; } test "$INTLTOOL_APPLIED_VERSION_AS_INT" -ge "$INTLTOOL_REQUIRED_VERSION_AS_INT" || as_fn_error "Your intltool is too old. You need intltool 0.40.0 or later." "$LINENO" 5 fi # Extract the first word of "intltool-update", so it can be a program name with args. set dummy intltool-update; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if test "${ac_cv_path_INTLTOOL_UPDATE+set}" = set; then : $as_echo_n "(cached) " >&6 else case $INTLTOOL_UPDATE in [\\/]* | ?:[\\/]*) ac_cv_path_INTLTOOL_UPDATE="$INTLTOOL_UPDATE" # Let the user override the test with a path. ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_path_INTLTOOL_UPDATE="$as_dir/$ac_word$ac_exec_ext" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS ;; esac fi INTLTOOL_UPDATE=$ac_cv_path_INTLTOOL_UPDATE if test -n "$INTLTOOL_UPDATE"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $INTLTOOL_UPDATE" >&5 $as_echo "$INTLTOOL_UPDATE" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi # Extract the first word of "intltool-merge", so it can be a program name with args. set dummy intltool-merge; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if test "${ac_cv_path_INTLTOOL_MERGE+set}" = set; then : $as_echo_n "(cached) " >&6 else case $INTLTOOL_MERGE in [\\/]* | ?:[\\/]*) ac_cv_path_INTLTOOL_MERGE="$INTLTOOL_MERGE" # Let the user override the test with a path. ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_path_INTLTOOL_MERGE="$as_dir/$ac_word$ac_exec_ext" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS ;; esac fi INTLTOOL_MERGE=$ac_cv_path_INTLTOOL_MERGE if test -n "$INTLTOOL_MERGE"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $INTLTOOL_MERGE" >&5 $as_echo "$INTLTOOL_MERGE" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi # Extract the first word of "intltool-extract", so it can be a program name with args. set dummy intltool-extract; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if test "${ac_cv_path_INTLTOOL_EXTRACT+set}" = set; then : $as_echo_n "(cached) " >&6 else case $INTLTOOL_EXTRACT in [\\/]* | ?:[\\/]*) ac_cv_path_INTLTOOL_EXTRACT="$INTLTOOL_EXTRACT" # Let the user override the test with a path. ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_path_INTLTOOL_EXTRACT="$as_dir/$ac_word$ac_exec_ext" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS ;; esac fi INTLTOOL_EXTRACT=$ac_cv_path_INTLTOOL_EXTRACT if test -n "$INTLTOOL_EXTRACT"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $INTLTOOL_EXTRACT" >&5 $as_echo "$INTLTOOL_EXTRACT" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test -z "$INTLTOOL_UPDATE" -o -z "$INTLTOOL_MERGE" -o -z "$INTLTOOL_EXTRACT"; then as_fn_error "The intltool scripts were not found. Please install intltool." "$LINENO" 5 fi INTLTOOL_DESKTOP_RULE='%.desktop: %.desktop.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' INTLTOOL_DIRECTORY_RULE='%.directory: %.directory.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' INTLTOOL_KEYS_RULE='%.keys: %.keys.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -k -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' INTLTOOL_PROP_RULE='%.prop: %.prop.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' INTLTOOL_OAF_RULE='%.oaf: %.oaf.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -o -p $(top_srcdir)/po $< $@' INTLTOOL_PONG_RULE='%.pong: %.pong.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' INTLTOOL_SERVER_RULE='%.server: %.server.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -o -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' INTLTOOL_SHEET_RULE='%.sheet: %.sheet.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' INTLTOOL_SOUNDLIST_RULE='%.soundlist: %.soundlist.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' INTLTOOL_UI_RULE='%.ui: %.ui.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' INTLTOOL_XML_RULE='%.xml: %.xml.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' INTLTOOL_XML_NOMERGE_RULE='%.xml: %.xml.in $(INTLTOOL_MERGE) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u /tmp $< $@' INTLTOOL_XAM_RULE='%.xam: %.xml.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' INTLTOOL_KBD_RULE='%.kbd: %.kbd.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -m -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' INTLTOOL_CAVES_RULE='%.caves: %.caves.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' INTLTOOL_SCHEMAS_RULE='%.schemas: %.schemas.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -s -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' INTLTOOL_THEME_RULE='%.theme: %.theme.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' INTLTOOL_SERVICE_RULE='%.service: %.service.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' INTLTOOL_POLICY_RULE='%.policy: %.policy.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' # Check the gettext tools to make sure they are GNU # Extract the first word of "xgettext", so it can be a program name with args. set dummy xgettext; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if test "${ac_cv_path_XGETTEXT+set}" = set; then : $as_echo_n "(cached) " >&6 else case $XGETTEXT in [\\/]* | ?:[\\/]*) ac_cv_path_XGETTEXT="$XGETTEXT" # Let the user override the test with a path. ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_path_XGETTEXT="$as_dir/$ac_word$ac_exec_ext" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS ;; esac fi XGETTEXT=$ac_cv_path_XGETTEXT if test -n "$XGETTEXT"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $XGETTEXT" >&5 $as_echo "$XGETTEXT" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi # Extract the first word of "msgmerge", so it can be a program name with args. set dummy msgmerge; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if test "${ac_cv_path_MSGMERGE+set}" = set; then : $as_echo_n "(cached) " >&6 else case $MSGMERGE in [\\/]* | ?:[\\/]*) ac_cv_path_MSGMERGE="$MSGMERGE" # Let the user override the test with a path. ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_path_MSGMERGE="$as_dir/$ac_word$ac_exec_ext" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS ;; esac fi MSGMERGE=$ac_cv_path_MSGMERGE if test -n "$MSGMERGE"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MSGMERGE" >&5 $as_echo "$MSGMERGE" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi # Extract the first word of "msgfmt", so it can be a program name with args. set dummy msgfmt; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if test "${ac_cv_path_MSGFMT+set}" = set; then : $as_echo_n "(cached) " >&6 else case $MSGFMT in [\\/]* | ?:[\\/]*) ac_cv_path_MSGFMT="$MSGFMT" # Let the user override the test with a path. ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_path_MSGFMT="$as_dir/$ac_word$ac_exec_ext" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS ;; esac fi MSGFMT=$ac_cv_path_MSGFMT if test -n "$MSGFMT"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MSGFMT" >&5 $as_echo "$MSGFMT" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi # Extract the first word of "gmsgfmt", so it can be a program name with args. set dummy gmsgfmt; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if test "${ac_cv_path_GMSGFMT+set}" = set; then : $as_echo_n "(cached) " >&6 else case $GMSGFMT in [\\/]* | ?:[\\/]*) ac_cv_path_GMSGFMT="$GMSGFMT" # Let the user override the test with a path. ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_path_GMSGFMT="$as_dir/$ac_word$ac_exec_ext" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS test -z "$ac_cv_path_GMSGFMT" && ac_cv_path_GMSGFMT="$MSGFMT" ;; esac fi GMSGFMT=$ac_cv_path_GMSGFMT if test -n "$GMSGFMT"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $GMSGFMT" >&5 $as_echo "$GMSGFMT" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test -z "$XGETTEXT" -o -z "$MSGMERGE" -o -z "$MSGFMT"; then as_fn_error "GNU gettext tools not found; required for intltool" "$LINENO" 5 fi xgversion="`$XGETTEXT --version|grep '(GNU ' 2> /dev/null`" mmversion="`$MSGMERGE --version|grep '(GNU ' 2> /dev/null`" mfversion="`$MSGFMT --version|grep '(GNU ' 2> /dev/null`" if test -z "$xgversion" -o -z "$mmversion" -o -z "$mfversion"; then as_fn_error "GNU gettext tools not found; required for intltool" "$LINENO" 5 fi # Extract the first word of "perl", so it can be a program name with args. set dummy perl; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if test "${ac_cv_path_INTLTOOL_PERL+set}" = set; then : $as_echo_n "(cached) " >&6 else case $INTLTOOL_PERL in [\\/]* | ?:[\\/]*) ac_cv_path_INTLTOOL_PERL="$INTLTOOL_PERL" # Let the user override the test with a path. ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_path_INTLTOOL_PERL="$as_dir/$ac_word$ac_exec_ext" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS ;; esac fi INTLTOOL_PERL=$ac_cv_path_INTLTOOL_PERL if test -n "$INTLTOOL_PERL"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $INTLTOOL_PERL" >&5 $as_echo "$INTLTOOL_PERL" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test -z "$INTLTOOL_PERL"; then as_fn_error "perl not found" "$LINENO" 5 fi { $as_echo "$as_me:${as_lineno-$LINENO}: checking for perl >= 5.8.1" >&5 $as_echo_n "checking for perl >= 5.8.1... " >&6; } $INTLTOOL_PERL -e "use 5.8.1;" > /dev/null 2>&1 if test $? -ne 0; then as_fn_error "perl 5.8.1 is required for intltool" "$LINENO" 5 else IT_PERL_VERSION="`$INTLTOOL_PERL -e \"printf '%vd', $^V\"`" { $as_echo "$as_me:${as_lineno-$LINENO}: result: $IT_PERL_VERSION" >&5 $as_echo "$IT_PERL_VERSION" >&6; } fi if test "x" != "xno-xml"; then { $as_echo "$as_me:${as_lineno-$LINENO}: checking for XML::Parser" >&5 $as_echo_n "checking for XML::Parser... " >&6; } if `$INTLTOOL_PERL -e "require XML::Parser" 2>/dev/null`; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: ok" >&5 $as_echo "ok" >&6; } else as_fn_error "XML::Parser perl module is required for intltool" "$LINENO" 5 fi fi # Substitute ALL_LINGUAS so we can use it in po/Makefile # Set DATADIRNAME correctly if it is not set yet # (copied from glib-gettext.m4) if test -z "$DATADIRNAME"; then cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { extern int _nl_msg_cat_cntr; return _nl_msg_cat_cntr ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : DATADIRNAME=share else case $host in *-*-solaris*) ac_fn_c_check_func "$LINENO" "bind_textdomain_codeset" "ac_cv_func_bind_textdomain_codeset" if test "x$ac_cv_func_bind_textdomain_codeset" = x""yes; then : DATADIRNAME=share else DATADIRNAME=lib fi ;; *) DATADIRNAME=lib ;; esac fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext fi GETTEXT_PACKAGE=libbonoboui-2.0 cat >>confdefs.h <<_ACEOF #define GETTEXT_PACKAGE "$GETTEXT_PACKAGE" _ACEOF for ac_header in locale.h do : ac_fn_c_check_header_mongrel "$LINENO" "locale.h" "ac_cv_header_locale_h" "$ac_includes_default" if test "x$ac_cv_header_locale_h" = x""yes; then : cat >>confdefs.h <<_ACEOF #define HAVE_LOCALE_H 1 _ACEOF fi done if test $ac_cv_header_locale_h = yes; then { $as_echo "$as_me:${as_lineno-$LINENO}: checking for LC_MESSAGES" >&5 $as_echo_n "checking for LC_MESSAGES... " >&6; } if test "${am_cv_val_LC_MESSAGES+set}" = set; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include int main () { return LC_MESSAGES ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : am_cv_val_LC_MESSAGES=yes else am_cv_val_LC_MESSAGES=no fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_val_LC_MESSAGES" >&5 $as_echo "$am_cv_val_LC_MESSAGES" >&6; } if test $am_cv_val_LC_MESSAGES = yes; then $as_echo "#define HAVE_LC_MESSAGES 1" >>confdefs.h fi fi USE_NLS=yes gt_cv_have_gettext=no CATOBJEXT=NONE XGETTEXT=: INTLLIBS= ac_fn_c_check_header_mongrel "$LINENO" "libintl.h" "ac_cv_header_libintl_h" "$ac_includes_default" if test "x$ac_cv_header_libintl_h" = x""yes; then : gt_cv_func_dgettext_libintl="no" libintl_extra_libs="" # # First check in libc # { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ngettext in libc" >&5 $as_echo_n "checking for ngettext in libc... " >&6; } if test "${gt_cv_func_ngettext_libc+set}" = set; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include int main () { return !ngettext ("","", 1) ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : gt_cv_func_ngettext_libc=yes else gt_cv_func_ngettext_libc=no fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $gt_cv_func_ngettext_libc" >&5 $as_echo "$gt_cv_func_ngettext_libc" >&6; } if test "$gt_cv_func_ngettext_libc" = "yes" ; then { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dgettext in libc" >&5 $as_echo_n "checking for dgettext in libc... " >&6; } if test "${gt_cv_func_dgettext_libc+set}" = set; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include int main () { return !dgettext ("","") ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : gt_cv_func_dgettext_libc=yes else gt_cv_func_dgettext_libc=no fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $gt_cv_func_dgettext_libc" >&5 $as_echo "$gt_cv_func_dgettext_libc" >&6; } fi if test "$gt_cv_func_ngettext_libc" = "yes" ; then for ac_func in bind_textdomain_codeset do : ac_fn_c_check_func "$LINENO" "bind_textdomain_codeset" "ac_cv_func_bind_textdomain_codeset" if test "x$ac_cv_func_bind_textdomain_codeset" = x""yes; then : cat >>confdefs.h <<_ACEOF #define HAVE_BIND_TEXTDOMAIN_CODESET 1 _ACEOF fi done fi # # If we don't have everything we want, check in libintl # if test "$gt_cv_func_dgettext_libc" != "yes" \ || test "$gt_cv_func_ngettext_libc" != "yes" \ || test "$ac_cv_func_bind_textdomain_codeset" != "yes" ; then { $as_echo "$as_me:${as_lineno-$LINENO}: checking for bindtextdomain in -lintl" >&5 $as_echo_n "checking for bindtextdomain in -lintl... " >&6; } if test "${ac_cv_lib_intl_bindtextdomain+set}" = set; then : $as_echo_n "(cached) " >&6 else ac_check_lib_save_LIBS=$LIBS LIBS="-lintl $LIBS" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ /* Override any GCC internal prototype to avoid an error. Use char because int might match the return type of a GCC builtin and then its argument prototype would still apply. */ #ifdef __cplusplus extern "C" #endif char bindtextdomain (); int main () { return bindtextdomain (); ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : ac_cv_lib_intl_bindtextdomain=yes else ac_cv_lib_intl_bindtextdomain=no fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_intl_bindtextdomain" >&5 $as_echo "$ac_cv_lib_intl_bindtextdomain" >&6; } if test "x$ac_cv_lib_intl_bindtextdomain" = x""yes; then : { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ngettext in -lintl" >&5 $as_echo_n "checking for ngettext in -lintl... " >&6; } if test "${ac_cv_lib_intl_ngettext+set}" = set; then : $as_echo_n "(cached) " >&6 else ac_check_lib_save_LIBS=$LIBS LIBS="-lintl $LIBS" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ /* Override any GCC internal prototype to avoid an error. Use char because int might match the return type of a GCC builtin and then its argument prototype would still apply. */ #ifdef __cplusplus extern "C" #endif char ngettext (); int main () { return ngettext (); ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : ac_cv_lib_intl_ngettext=yes else ac_cv_lib_intl_ngettext=no fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_intl_ngettext" >&5 $as_echo "$ac_cv_lib_intl_ngettext" >&6; } if test "x$ac_cv_lib_intl_ngettext" = x""yes; then : { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dgettext in -lintl" >&5 $as_echo_n "checking for dgettext in -lintl... " >&6; } if test "${ac_cv_lib_intl_dgettext+set}" = set; then : $as_echo_n "(cached) " >&6 else ac_check_lib_save_LIBS=$LIBS LIBS="-lintl $LIBS" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ /* Override any GCC internal prototype to avoid an error. Use char because int might match the return type of a GCC builtin and then its argument prototype would still apply. */ #ifdef __cplusplus extern "C" #endif char dgettext (); int main () { return dgettext (); ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : ac_cv_lib_intl_dgettext=yes else ac_cv_lib_intl_dgettext=no fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_intl_dgettext" >&5 $as_echo "$ac_cv_lib_intl_dgettext" >&6; } if test "x$ac_cv_lib_intl_dgettext" = x""yes; then : gt_cv_func_dgettext_libintl=yes fi fi fi if test "$gt_cv_func_dgettext_libintl" != "yes" ; then { $as_echo "$as_me:${as_lineno-$LINENO}: checking if -liconv is needed to use gettext" >&5 $as_echo_n "checking if -liconv is needed to use gettext... " >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: result: " >&5 $as_echo "" >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ngettext in -lintl" >&5 $as_echo_n "checking for ngettext in -lintl... " >&6; } if test "${ac_cv_lib_intl_ngettext+set}" = set; then : $as_echo_n "(cached) " >&6 else ac_check_lib_save_LIBS=$LIBS LIBS="-lintl -liconv $LIBS" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ /* Override any GCC internal prototype to avoid an error. Use char because int might match the return type of a GCC builtin and then its argument prototype would still apply. */ #ifdef __cplusplus extern "C" #endif char ngettext (); int main () { return ngettext (); ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : ac_cv_lib_intl_ngettext=yes else ac_cv_lib_intl_ngettext=no fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_intl_ngettext" >&5 $as_echo "$ac_cv_lib_intl_ngettext" >&6; } if test "x$ac_cv_lib_intl_ngettext" = x""yes; then : { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dcgettext in -lintl" >&5 $as_echo_n "checking for dcgettext in -lintl... " >&6; } if test "${ac_cv_lib_intl_dcgettext+set}" = set; then : $as_echo_n "(cached) " >&6 else ac_check_lib_save_LIBS=$LIBS LIBS="-lintl -liconv $LIBS" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ /* Override any GCC internal prototype to avoid an error. Use char because int might match the return type of a GCC builtin and then its argument prototype would still apply. */ #ifdef __cplusplus extern "C" #endif char dcgettext (); int main () { return dcgettext (); ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : ac_cv_lib_intl_dcgettext=yes else ac_cv_lib_intl_dcgettext=no fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_intl_dcgettext" >&5 $as_echo "$ac_cv_lib_intl_dcgettext" >&6; } if test "x$ac_cv_lib_intl_dcgettext" = x""yes; then : gt_cv_func_dgettext_libintl=yes libintl_extra_libs=-liconv else : fi else : fi fi # # If we found libintl, then check in it for bind_textdomain_codeset(); # we'll prefer libc if neither have bind_textdomain_codeset(), # and both have dgettext and ngettext # if test "$gt_cv_func_dgettext_libintl" = "yes" ; then glib_save_LIBS="$LIBS" LIBS="$LIBS -lintl $libintl_extra_libs" unset ac_cv_func_bind_textdomain_codeset for ac_func in bind_textdomain_codeset do : ac_fn_c_check_func "$LINENO" "bind_textdomain_codeset" "ac_cv_func_bind_textdomain_codeset" if test "x$ac_cv_func_bind_textdomain_codeset" = x""yes; then : cat >>confdefs.h <<_ACEOF #define HAVE_BIND_TEXTDOMAIN_CODESET 1 _ACEOF fi done LIBS="$glib_save_LIBS" if test "$ac_cv_func_bind_textdomain_codeset" = "yes" ; then gt_cv_func_dgettext_libc=no else if test "$gt_cv_func_dgettext_libc" = "yes" \ && test "$gt_cv_func_ngettext_libc" = "yes"; then gt_cv_func_dgettext_libintl=no fi fi fi fi if test "$gt_cv_func_dgettext_libc" = "yes" \ || test "$gt_cv_func_dgettext_libintl" = "yes"; then gt_cv_have_gettext=yes fi if test "$gt_cv_func_dgettext_libintl" = "yes"; then INTLLIBS="-lintl $libintl_extra_libs" fi if test "$gt_cv_have_gettext" = "yes"; then $as_echo "#define HAVE_GETTEXT 1" >>confdefs.h # Extract the first word of "msgfmt", so it can be a program name with args. set dummy msgfmt; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if test "${ac_cv_path_MSGFMT+set}" = set; then : $as_echo_n "(cached) " >&6 else case "$MSGFMT" in /*) ac_cv_path_MSGFMT="$MSGFMT" # Let the user override the test with a path. ;; *) IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:" for ac_dir in $PATH; do test -z "$ac_dir" && ac_dir=. if test -f $ac_dir/$ac_word; then if test -z "`$ac_dir/$ac_word -h 2>&1 | grep 'dv '`"; then ac_cv_path_MSGFMT="$ac_dir/$ac_word" break fi fi done IFS="$ac_save_ifs" test -z "$ac_cv_path_MSGFMT" && ac_cv_path_MSGFMT="no" ;; esac fi MSGFMT="$ac_cv_path_MSGFMT" if test "$MSGFMT" != "no"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MSGFMT" >&5 $as_echo "$MSGFMT" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test "$MSGFMT" != "no"; then glib_save_LIBS="$LIBS" LIBS="$LIBS $INTLLIBS" for ac_func in dcgettext do : ac_fn_c_check_func "$LINENO" "dcgettext" "ac_cv_func_dcgettext" if test "x$ac_cv_func_dcgettext" = x""yes; then : cat >>confdefs.h <<_ACEOF #define HAVE_DCGETTEXT 1 _ACEOF fi done MSGFMT_OPTS= { $as_echo "$as_me:${as_lineno-$LINENO}: checking if msgfmt accepts -c" >&5 $as_echo_n "checking if msgfmt accepts -c... " >&6; } cat >conftest.foo <<_ACEOF msgid "" msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Project-Id-Version: test 1.0\n" "PO-Revision-Date: 2007-02-15 12:01+0100\n" "Last-Translator: test \n" "Language-Team: C \n" "MIME-Version: 1.0\n" "Content-Transfer-Encoding: 8bit\n" _ACEOF if { { $as_echo "$as_me:${as_lineno-$LINENO}: \$MSGFMT -c -o /dev/null conftest.foo"; } >&5 ($MSGFMT -c -o /dev/null conftest.foo) 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then MSGFMT_OPTS=-c; { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } echo "$as_me: failed input was:" >&5 sed 's/^/| /' conftest.foo >&5 fi # Extract the first word of "gmsgfmt", so it can be a program name with args. set dummy gmsgfmt; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if test "${ac_cv_path_GMSGFMT+set}" = set; then : $as_echo_n "(cached) " >&6 else case $GMSGFMT in [\\/]* | ?:[\\/]*) ac_cv_path_GMSGFMT="$GMSGFMT" # Let the user override the test with a path. ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_path_GMSGFMT="$as_dir/$ac_word$ac_exec_ext" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS test -z "$ac_cv_path_GMSGFMT" && ac_cv_path_GMSGFMT="$MSGFMT" ;; esac fi GMSGFMT=$ac_cv_path_GMSGFMT if test -n "$GMSGFMT"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $GMSGFMT" >&5 $as_echo "$GMSGFMT" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi # Extract the first word of "xgettext", so it can be a program name with args. set dummy xgettext; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if test "${ac_cv_path_XGETTEXT+set}" = set; then : $as_echo_n "(cached) " >&6 else case "$XGETTEXT" in /*) ac_cv_path_XGETTEXT="$XGETTEXT" # Let the user override the test with a path. ;; *) IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:" for ac_dir in $PATH; do test -z "$ac_dir" && ac_dir=. if test -f $ac_dir/$ac_word; then if test -z "`$ac_dir/$ac_word -h 2>&1 | grep '(HELP)'`"; then ac_cv_path_XGETTEXT="$ac_dir/$ac_word" break fi fi done IFS="$ac_save_ifs" test -z "$ac_cv_path_XGETTEXT" && ac_cv_path_XGETTEXT=":" ;; esac fi XGETTEXT="$ac_cv_path_XGETTEXT" if test "$XGETTEXT" != ":"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $XGETTEXT" >&5 $as_echo "$XGETTEXT" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { extern int _nl_msg_cat_cntr; return _nl_msg_cat_cntr ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : CATOBJEXT=.gmo DATADIRNAME=share else case $host in *-*-solaris*) ac_fn_c_check_func "$LINENO" "bind_textdomain_codeset" "ac_cv_func_bind_textdomain_codeset" if test "x$ac_cv_func_bind_textdomain_codeset" = x""yes; then : CATOBJEXT=.gmo DATADIRNAME=share else CATOBJEXT=.mo DATADIRNAME=lib fi ;; *) CATOBJEXT=.mo DATADIRNAME=lib ;; esac fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS="$glib_save_LIBS" INSTOBJEXT=.mo else gt_cv_have_gettext=no fi fi fi if test "$gt_cv_have_gettext" = "yes" ; then $as_echo "#define ENABLE_NLS 1" >>confdefs.h fi if test "$XGETTEXT" != ":"; then if $XGETTEXT --omit-header /dev/null 2> /dev/null; then : ; else { $as_echo "$as_me:${as_lineno-$LINENO}: result: found xgettext program is not GNU xgettext; ignore it" >&5 $as_echo "found xgettext program is not GNU xgettext; ignore it" >&6; } XGETTEXT=":" fi fi # We need to process the po/ directory. POSUB=po ac_config_commands="$ac_config_commands default-1" for lang in $ALL_LINGUAS; do GMOFILES="$GMOFILES $lang.gmo" POFILES="$POFILES $lang.po" done if test "$gt_cv_have_gettext" = "yes"; then if test "x$ALL_LINGUAS" = "x"; then LINGUAS= else { $as_echo "$as_me:${as_lineno-$LINENO}: checking for catalogs to be installed" >&5 $as_echo_n "checking for catalogs to be installed... " >&6; } NEW_LINGUAS= for presentlang in $ALL_LINGUAS; do useit=no if test "%UNSET%" != "${LINGUAS-%UNSET%}"; then desiredlanguages="$LINGUAS" else desiredlanguages="$ALL_LINGUAS" fi for desiredlang in $desiredlanguages; do # Use the presentlang catalog if desiredlang is # a. equal to presentlang, or # b. a variant of presentlang (because in this case, # presentlang can be used as a fallback for messages # which are not translated in the desiredlang catalog). case "$desiredlang" in "$presentlang"*) useit=yes;; esac done if test $useit = yes; then NEW_LINGUAS="$NEW_LINGUAS $presentlang" fi done LINGUAS=$NEW_LINGUAS { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LINGUAS" >&5 $as_echo "$LINGUAS" >&6; } fi if test -n "$LINGUAS"; then for lang in $LINGUAS; do CATALOGS="$CATALOGS $lang$CATOBJEXT"; done fi fi MKINSTALLDIRS= if test -n "$ac_aux_dir"; then MKINSTALLDIRS="$ac_aux_dir/mkinstalldirs" fi if test -z "$MKINSTALLDIRS"; then MKINSTALLDIRS="\$(top_srcdir)/mkinstalldirs" fi test -d po || mkdir po if test "x$srcdir" != "x."; then if test "x`echo $srcdir | sed 's@/.*@@'`" = "x"; then posrcprefix="$srcdir/" else posrcprefix="../$srcdir/" fi else posrcprefix="../" fi rm -f po/POTFILES sed -e "/^#/d" -e "/^\$/d" -e "s,.*, $posrcprefix& \\\\," -e "\$s/\(.*\) \\\\/\1/" \ < $srcdir/po/POTFILES.in > po/POTFILES # Extract the first word of "pkg-config", so it can be a program name with args. set dummy pkg-config; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if test "${ac_cv_path_PKG_CONFIG+set}" = set; then : $as_echo_n "(cached) " >&6 else case $PKG_CONFIG in [\\/]* | ?:[\\/]*) ac_cv_path_PKG_CONFIG="$PKG_CONFIG" # Let the user override the test with a path. ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_path_PKG_CONFIG="$as_dir/$ac_word$ac_exec_ext" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS test -z "$ac_cv_path_PKG_CONFIG" && ac_cv_path_PKG_CONFIG="no" ;; esac fi PKG_CONFIG=$ac_cv_path_PKG_CONFIG if test -n "$PKG_CONFIG"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PKG_CONFIG" >&5 $as_echo "$PKG_CONFIG" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test x$PKG_CONFIG = xno; then as_fn_error "Couldn't find pkg-config, please install it and retry" "$LINENO" 5 fi gtk_target="`$PKG_CONFIG --variable=target gtk+-2.0`" if test $gtk_target = x11 ; then # # If Pango included the shared library dependencies from X11 in # the pkg-config output, then we use that (to avoid duplicates). # but if they were omitted to avoid binary compatibility problems # then we need to repeat the checks. # if $PKG_CONFIG --exists pangoxft ; then PANGO_PACKAGES="pangox pangoxft" else PANGO_PACKAGES="pangox" fi x_libs="`$PKG_CONFIG --libs $PANGO_PACKAGES`" case x_libs in *-lX11*) pango_omitted_x_deps=no ;; *) pango_omitted_x_deps=yes ;; esac if test $pango_omitted_x_deps = yes ; then { $as_echo "$as_me:${as_lineno-$LINENO}: checking for X" >&5 $as_echo_n "checking for X... " >&6; } # Check whether --with-x was given. if test "${with_x+set}" = set; then : withval=$with_x; fi # $have_x is `yes', `no', `disabled', or empty when we do not yet know. if test "x$with_x" = xno; then # The user explicitly disabled X. have_x=disabled else case $x_includes,$x_libraries in #( *\'*) as_fn_error "cannot use X directory names containing '" "$LINENO" 5;; #( *,NONE | NONE,*) if test "${ac_cv_have_x+set}" = set; then : $as_echo_n "(cached) " >&6 else # One or both of the vars are not set, and there is no cached value. ac_x_includes=no ac_x_libraries=no rm -f -r conftest.dir if mkdir conftest.dir; then cd conftest.dir cat >Imakefile <<'_ACEOF' incroot: @echo incroot='${INCROOT}' usrlibdir: @echo usrlibdir='${USRLIBDIR}' libdir: @echo libdir='${LIBDIR}' _ACEOF if (export CC; ${XMKMF-xmkmf}) >/dev/null 2>/dev/null && test -f Makefile; then # GNU make sometimes prints "make[1]: Entering...", which would confuse us. for ac_var in incroot usrlibdir libdir; do eval "ac_im_$ac_var=\`\${MAKE-make} $ac_var 2>/dev/null | sed -n 's/^$ac_var=//p'\`" done # Open Windows xmkmf reportedly sets LIBDIR instead of USRLIBDIR. for ac_extension in a so sl dylib la dll; do if test ! -f "$ac_im_usrlibdir/libX11.$ac_extension" && test -f "$ac_im_libdir/libX11.$ac_extension"; then ac_im_usrlibdir=$ac_im_libdir; break fi done # Screen out bogus values from the imake configuration. They are # bogus both because they are the default anyway, and because # using them would break gcc on systems where it needs fixed includes. case $ac_im_incroot in /usr/include) ac_x_includes= ;; *) test -f "$ac_im_incroot/X11/Xos.h" && ac_x_includes=$ac_im_incroot;; esac case $ac_im_usrlibdir in /usr/lib | /usr/lib64 | /lib | /lib64) ;; *) test -d "$ac_im_usrlibdir" && ac_x_libraries=$ac_im_usrlibdir ;; esac fi cd .. rm -f -r conftest.dir fi # Standard set of common directories for X headers. # Check X11 before X11Rn because it is often a symlink to the current release. ac_x_header_dirs=' /usr/X11/include /usr/X11R7/include /usr/X11R6/include /usr/X11R5/include /usr/X11R4/include /usr/include/X11 /usr/include/X11R7 /usr/include/X11R6 /usr/include/X11R5 /usr/include/X11R4 /usr/local/X11/include /usr/local/X11R7/include /usr/local/X11R6/include /usr/local/X11R5/include /usr/local/X11R4/include /usr/local/include/X11 /usr/local/include/X11R7 /usr/local/include/X11R6 /usr/local/include/X11R5 /usr/local/include/X11R4 /usr/X386/include /usr/x386/include /usr/XFree86/include/X11 /usr/include /usr/local/include /usr/unsupported/include /usr/athena/include /usr/local/x11r5/include /usr/lpp/Xamples/include /usr/openwin/include /usr/openwin/share/include' if test "$ac_x_includes" = no; then # Guess where to find include files, by looking for Xlib.h. # First, try using that file with no special directory specified. cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include _ACEOF if ac_fn_c_try_cpp "$LINENO"; then : # We can compile using X headers with no special include directory. ac_x_includes= else for ac_dir in $ac_x_header_dirs; do if test -r "$ac_dir/X11/Xlib.h"; then ac_x_includes=$ac_dir break fi done fi rm -f conftest.err conftest.$ac_ext fi # $ac_x_includes = no if test "$ac_x_libraries" = no; then # Check for the libraries. # See if we find them without any special options. # Don't add to $LIBS permanently. ac_save_LIBS=$LIBS LIBS="-lX11 $LIBS" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include int main () { XrmInitialize () ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : LIBS=$ac_save_LIBS # We can link X programs with no special library path. ac_x_libraries= else LIBS=$ac_save_LIBS for ac_dir in `$as_echo "$ac_x_includes $ac_x_header_dirs" | sed s/include/lib/g` do # Don't even attempt the hair of trying to link an X program! for ac_extension in a so sl dylib la dll; do if test -r "$ac_dir/libX11.$ac_extension"; then ac_x_libraries=$ac_dir break 2 fi done done fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext fi # $ac_x_libraries = no case $ac_x_includes,$ac_x_libraries in #( no,* | *,no | *\'*) # Didn't find X, or a directory has "'" in its name. ac_cv_have_x="have_x=no";; #( *) # Record where we found X for the cache. ac_cv_have_x="have_x=yes\ ac_x_includes='$ac_x_includes'\ ac_x_libraries='$ac_x_libraries'" esac fi ;; #( *) have_x=yes;; esac eval "$ac_cv_have_x" fi # $with_x != no if test "$have_x" != yes; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $have_x" >&5 $as_echo "$have_x" >&6; } no_x=yes else # If each of the values was on the command line, it overrides each guess. test "x$x_includes" = xNONE && x_includes=$ac_x_includes test "x$x_libraries" = xNONE && x_libraries=$ac_x_libraries # Update the cache value to reflect the command line values. ac_cv_have_x="have_x=yes\ ac_x_includes='$x_includes'\ ac_x_libraries='$x_libraries'" { $as_echo "$as_me:${as_lineno-$LINENO}: result: libraries $x_libraries, headers $x_includes" >&5 $as_echo "libraries $x_libraries, headers $x_includes" >&6; } fi if test "$no_x" = yes; then # Not all programs may use this symbol, but it does not hurt to define it. $as_echo "#define X_DISPLAY_MISSING 1" >>confdefs.h X_CFLAGS= X_PRE_LIBS= X_LIBS= X_EXTRA_LIBS= else if test -n "$x_includes"; then X_CFLAGS="$X_CFLAGS -I$x_includes" fi # It would also be nice to do this for all -L options, not just this one. if test -n "$x_libraries"; then X_LIBS="$X_LIBS -L$x_libraries" # For Solaris; some versions of Sun CC require a space after -R and # others require no space. Words are not sufficient . . . . { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether -R must be followed by a space" >&5 $as_echo_n "checking whether -R must be followed by a space... " >&6; } ac_xsave_LIBS=$LIBS; LIBS="$LIBS -R$x_libraries" ac_xsave_c_werror_flag=$ac_c_werror_flag ac_c_werror_flag=yes cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } X_LIBS="$X_LIBS -R$x_libraries" else LIBS="$ac_xsave_LIBS -R $x_libraries" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } X_LIBS="$X_LIBS -R $x_libraries" else { $as_echo "$as_me:${as_lineno-$LINENO}: result: neither works" >&5 $as_echo "neither works" >&6; } fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext ac_c_werror_flag=$ac_xsave_c_werror_flag LIBS=$ac_xsave_LIBS fi # Check for system-dependent libraries X programs must link with. # Do this before checking for the system-independent R6 libraries # (-lICE), since we may need -lsocket or whatever for X linking. if test "$ISC" = yes; then X_EXTRA_LIBS="$X_EXTRA_LIBS -lnsl_s -linet" else # Martyn Johnson says this is needed for Ultrix, if the X # libraries were built with DECnet support. And Karl Berry says # the Alpha needs dnet_stub (dnet does not exist). ac_xsave_LIBS="$LIBS"; LIBS="$LIBS $X_LIBS -lX11" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ /* Override any GCC internal prototype to avoid an error. Use char because int might match the return type of a GCC builtin and then its argument prototype would still apply. */ #ifdef __cplusplus extern "C" #endif char XOpenDisplay (); int main () { return XOpenDisplay (); ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : else { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dnet_ntoa in -ldnet" >&5 $as_echo_n "checking for dnet_ntoa in -ldnet... " >&6; } if test "${ac_cv_lib_dnet_dnet_ntoa+set}" = set; then : $as_echo_n "(cached) " >&6 else ac_check_lib_save_LIBS=$LIBS LIBS="-ldnet $LIBS" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ /* Override any GCC internal prototype to avoid an error. Use char because int might match the return type of a GCC builtin and then its argument prototype would still apply. */ #ifdef __cplusplus extern "C" #endif char dnet_ntoa (); int main () { return dnet_ntoa (); ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : ac_cv_lib_dnet_dnet_ntoa=yes else ac_cv_lib_dnet_dnet_ntoa=no fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dnet_dnet_ntoa" >&5 $as_echo "$ac_cv_lib_dnet_dnet_ntoa" >&6; } if test "x$ac_cv_lib_dnet_dnet_ntoa" = x""yes; then : X_EXTRA_LIBS="$X_EXTRA_LIBS -ldnet" fi if test $ac_cv_lib_dnet_dnet_ntoa = no; then { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dnet_ntoa in -ldnet_stub" >&5 $as_echo_n "checking for dnet_ntoa in -ldnet_stub... " >&6; } if test "${ac_cv_lib_dnet_stub_dnet_ntoa+set}" = set; then : $as_echo_n "(cached) " >&6 else ac_check_lib_save_LIBS=$LIBS LIBS="-ldnet_stub $LIBS" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ /* Override any GCC internal prototype to avoid an error. Use char because int might match the return type of a GCC builtin and then its argument prototype would still apply. */ #ifdef __cplusplus extern "C" #endif char dnet_ntoa (); int main () { return dnet_ntoa (); ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : ac_cv_lib_dnet_stub_dnet_ntoa=yes else ac_cv_lib_dnet_stub_dnet_ntoa=no fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dnet_stub_dnet_ntoa" >&5 $as_echo "$ac_cv_lib_dnet_stub_dnet_ntoa" >&6; } if test "x$ac_cv_lib_dnet_stub_dnet_ntoa" = x""yes; then : X_EXTRA_LIBS="$X_EXTRA_LIBS -ldnet_stub" fi fi fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS="$ac_xsave_LIBS" # msh@cis.ufl.edu says -lnsl (and -lsocket) are needed for his 386/AT, # to get the SysV transport functions. # Chad R. Larson says the Pyramis MIS-ES running DC/OSx (SVR4) # needs -lnsl. # The nsl library prevents programs from opening the X display # on Irix 5.2, according to T.E. Dickey. # The functions gethostbyname, getservbyname, and inet_addr are # in -lbsd on LynxOS 3.0.1/i386, according to Lars Hecking. ac_fn_c_check_func "$LINENO" "gethostbyname" "ac_cv_func_gethostbyname" if test "x$ac_cv_func_gethostbyname" = x""yes; then : fi if test $ac_cv_func_gethostbyname = no; then { $as_echo "$as_me:${as_lineno-$LINENO}: checking for gethostbyname in -lnsl" >&5 $as_echo_n "checking for gethostbyname in -lnsl... " >&6; } if test "${ac_cv_lib_nsl_gethostbyname+set}" = set; then : $as_echo_n "(cached) " >&6 else ac_check_lib_save_LIBS=$LIBS LIBS="-lnsl $LIBS" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ /* Override any GCC internal prototype to avoid an error. Use char because int might match the return type of a GCC builtin and then its argument prototype would still apply. */ #ifdef __cplusplus extern "C" #endif char gethostbyname (); int main () { return gethostbyname (); ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : ac_cv_lib_nsl_gethostbyname=yes else ac_cv_lib_nsl_gethostbyname=no fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_nsl_gethostbyname" >&5 $as_echo "$ac_cv_lib_nsl_gethostbyname" >&6; } if test "x$ac_cv_lib_nsl_gethostbyname" = x""yes; then : X_EXTRA_LIBS="$X_EXTRA_LIBS -lnsl" fi if test $ac_cv_lib_nsl_gethostbyname = no; then { $as_echo "$as_me:${as_lineno-$LINENO}: checking for gethostbyname in -lbsd" >&5 $as_echo_n "checking for gethostbyname in -lbsd... " >&6; } if test "${ac_cv_lib_bsd_gethostbyname+set}" = set; then : $as_echo_n "(cached) " >&6 else ac_check_lib_save_LIBS=$LIBS LIBS="-lbsd $LIBS" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ /* Override any GCC internal prototype to avoid an error. Use char because int might match the return type of a GCC builtin and then its argument prototype would still apply. */ #ifdef __cplusplus extern "C" #endif char gethostbyname (); int main () { return gethostbyname (); ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : ac_cv_lib_bsd_gethostbyname=yes else ac_cv_lib_bsd_gethostbyname=no fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_bsd_gethostbyname" >&5 $as_echo "$ac_cv_lib_bsd_gethostbyname" >&6; } if test "x$ac_cv_lib_bsd_gethostbyname" = x""yes; then : X_EXTRA_LIBS="$X_EXTRA_LIBS -lbsd" fi fi fi # lieder@skyler.mavd.honeywell.com says without -lsocket, # socket/setsockopt and other routines are undefined under SCO ODT # 2.0. But -lsocket is broken on IRIX 5.2 (and is not necessary # on later versions), says Simon Leinen: it contains gethostby* # variants that don't use the name server (or something). -lsocket # must be given before -lnsl if both are needed. We assume that # if connect needs -lnsl, so does gethostbyname. ac_fn_c_check_func "$LINENO" "connect" "ac_cv_func_connect" if test "x$ac_cv_func_connect" = x""yes; then : fi if test $ac_cv_func_connect = no; then { $as_echo "$as_me:${as_lineno-$LINENO}: checking for connect in -lsocket" >&5 $as_echo_n "checking for connect in -lsocket... " >&6; } if test "${ac_cv_lib_socket_connect+set}" = set; then : $as_echo_n "(cached) " >&6 else ac_check_lib_save_LIBS=$LIBS LIBS="-lsocket $X_EXTRA_LIBS $LIBS" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ /* Override any GCC internal prototype to avoid an error. Use char because int might match the return type of a GCC builtin and then its argument prototype would still apply. */ #ifdef __cplusplus extern "C" #endif char connect (); int main () { return connect (); ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : ac_cv_lib_socket_connect=yes else ac_cv_lib_socket_connect=no fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_socket_connect" >&5 $as_echo "$ac_cv_lib_socket_connect" >&6; } if test "x$ac_cv_lib_socket_connect" = x""yes; then : X_EXTRA_LIBS="-lsocket $X_EXTRA_LIBS" fi fi # Guillermo Gomez says -lposix is necessary on A/UX. ac_fn_c_check_func "$LINENO" "remove" "ac_cv_func_remove" if test "x$ac_cv_func_remove" = x""yes; then : fi if test $ac_cv_func_remove = no; then { $as_echo "$as_me:${as_lineno-$LINENO}: checking for remove in -lposix" >&5 $as_echo_n "checking for remove in -lposix... " >&6; } if test "${ac_cv_lib_posix_remove+set}" = set; then : $as_echo_n "(cached) " >&6 else ac_check_lib_save_LIBS=$LIBS LIBS="-lposix $LIBS" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ /* Override any GCC internal prototype to avoid an error. Use char because int might match the return type of a GCC builtin and then its argument prototype would still apply. */ #ifdef __cplusplus extern "C" #endif char remove (); int main () { return remove (); ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : ac_cv_lib_posix_remove=yes else ac_cv_lib_posix_remove=no fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_posix_remove" >&5 $as_echo "$ac_cv_lib_posix_remove" >&6; } if test "x$ac_cv_lib_posix_remove" = x""yes; then : X_EXTRA_LIBS="$X_EXTRA_LIBS -lposix" fi fi # BSDI BSD/OS 2.1 needs -lipc for XOpenDisplay. ac_fn_c_check_func "$LINENO" "shmat" "ac_cv_func_shmat" if test "x$ac_cv_func_shmat" = x""yes; then : fi if test $ac_cv_func_shmat = no; then { $as_echo "$as_me:${as_lineno-$LINENO}: checking for shmat in -lipc" >&5 $as_echo_n "checking for shmat in -lipc... " >&6; } if test "${ac_cv_lib_ipc_shmat+set}" = set; then : $as_echo_n "(cached) " >&6 else ac_check_lib_save_LIBS=$LIBS LIBS="-lipc $LIBS" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ /* Override any GCC internal prototype to avoid an error. Use char because int might match the return type of a GCC builtin and then its argument prototype would still apply. */ #ifdef __cplusplus extern "C" #endif char shmat (); int main () { return shmat (); ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : ac_cv_lib_ipc_shmat=yes else ac_cv_lib_ipc_shmat=no fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_ipc_shmat" >&5 $as_echo "$ac_cv_lib_ipc_shmat" >&6; } if test "x$ac_cv_lib_ipc_shmat" = x""yes; then : X_EXTRA_LIBS="$X_EXTRA_LIBS -lipc" fi fi fi # Check for libraries that X11R6 Xt/Xaw programs need. ac_save_LDFLAGS=$LDFLAGS test -n "$x_libraries" && LDFLAGS="$LDFLAGS -L$x_libraries" # SM needs ICE to (dynamically) link under SunOS 4.x (so we have to # check for ICE first), but we must link in the order -lSM -lICE or # we get undefined symbols. So assume we have SM if we have ICE. # These have to be linked with before -lX11, unlike the other # libraries we check for below, so use a different variable. # John Interrante, Karl Berry { $as_echo "$as_me:${as_lineno-$LINENO}: checking for IceConnectionNumber in -lICE" >&5 $as_echo_n "checking for IceConnectionNumber in -lICE... " >&6; } if test "${ac_cv_lib_ICE_IceConnectionNumber+set}" = set; then : $as_echo_n "(cached) " >&6 else ac_check_lib_save_LIBS=$LIBS LIBS="-lICE $X_EXTRA_LIBS $LIBS" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ /* Override any GCC internal prototype to avoid an error. Use char because int might match the return type of a GCC builtin and then its argument prototype would still apply. */ #ifdef __cplusplus extern "C" #endif char IceConnectionNumber (); int main () { return IceConnectionNumber (); ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : ac_cv_lib_ICE_IceConnectionNumber=yes else ac_cv_lib_ICE_IceConnectionNumber=no fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_ICE_IceConnectionNumber" >&5 $as_echo "$ac_cv_lib_ICE_IceConnectionNumber" >&6; } if test "x$ac_cv_lib_ICE_IceConnectionNumber" = x""yes; then : X_PRE_LIBS="$X_PRE_LIBS -lSM -lICE" fi LDFLAGS=$ac_save_LDFLAGS fi if test x$no_x = xyes ; then as_fn_error "X development libraries not found" "$LINENO" 5 else X_LIBS="$X_PRE_LIBS $X_LIBS -lX11 $X_EXTRA_LIBS" fi fi fi # popt { $as_echo "$as_me:${as_lineno-$LINENO}: checking for poptStrippedArgv in -lpopt" >&5 $as_echo_n "checking for poptStrippedArgv in -lpopt... " >&6; } if test "${ac_cv_lib_popt_poptStrippedArgv+set}" = set; then : $as_echo_n "(cached) " >&6 else ac_check_lib_save_LIBS=$LIBS LIBS="-lpopt $LIBS" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ /* Override any GCC internal prototype to avoid an error. Use char because int might match the return type of a GCC builtin and then its argument prototype would still apply. */ #ifdef __cplusplus extern "C" #endif char poptStrippedArgv (); int main () { return poptStrippedArgv (); ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : ac_cv_lib_popt_poptStrippedArgv=yes else ac_cv_lib_popt_poptStrippedArgv=no fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_popt_poptStrippedArgv" >&5 $as_echo "$ac_cv_lib_popt_poptStrippedArgv" >&6; } if test "x$ac_cv_lib_popt_poptStrippedArgv" = x""yes; then : POPT_LIBS=-lpopt else as_fn_error "You must have popt version 1.5 or greater installed." "$LINENO" 5 fi ac_fn_c_check_header_mongrel "$LINENO" "popt.h" "ac_cv_header_popt_h" "$ac_includes_default" if test "x$ac_cv_header_popt_h" = x""yes; then : else as_fn_error "Failed to find popt.h - you may have to adjust your environment" "$LINENO" 5 fi BONOBOUI_MODULES="libgnomecanvas-2.0 >= 1.116.0 \ libbonobo-2.0 >= 2.13.0 \ libgnome-2.0 >= 2.13.7 \ bonobo-activation-2.0 >= 2.13.0 \ libxml-2.0 >= 2.4.20 \ gconf-2.0 >= 1.1.9 \ gtk+-2.0 >= 2.6.0 \ gobject-2.0 >= 2.6.0" if test "x$ac_cv_env_PKG_CONFIG_set" != "xset"; then if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}pkg-config", so it can be a program name with args. set dummy ${ac_tool_prefix}pkg-config; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if test "${ac_cv_path_PKG_CONFIG+set}" = set; then : $as_echo_n "(cached) " >&6 else case $PKG_CONFIG in [\\/]* | ?:[\\/]*) ac_cv_path_PKG_CONFIG="$PKG_CONFIG" # Let the user override the test with a path. ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_path_PKG_CONFIG="$as_dir/$ac_word$ac_exec_ext" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS ;; esac fi PKG_CONFIG=$ac_cv_path_PKG_CONFIG if test -n "$PKG_CONFIG"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PKG_CONFIG" >&5 $as_echo "$PKG_CONFIG" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi fi if test -z "$ac_cv_path_PKG_CONFIG"; then ac_pt_PKG_CONFIG=$PKG_CONFIG # Extract the first word of "pkg-config", so it can be a program name with args. set dummy pkg-config; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if test "${ac_cv_path_ac_pt_PKG_CONFIG+set}" = set; then : $as_echo_n "(cached) " >&6 else case $ac_pt_PKG_CONFIG in [\\/]* | ?:[\\/]*) ac_cv_path_ac_pt_PKG_CONFIG="$ac_pt_PKG_CONFIG" # Let the user override the test with a path. ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_path_ac_pt_PKG_CONFIG="$as_dir/$ac_word$ac_exec_ext" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS ;; esac fi ac_pt_PKG_CONFIG=$ac_cv_path_ac_pt_PKG_CONFIG if test -n "$ac_pt_PKG_CONFIG"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_pt_PKG_CONFIG" >&5 $as_echo "$ac_pt_PKG_CONFIG" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test "x$ac_pt_PKG_CONFIG" = x; then PKG_CONFIG="" else case $cross_compiling:$ac_tool_warned in yes:) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac PKG_CONFIG=$ac_pt_PKG_CONFIG fi else PKG_CONFIG="$ac_cv_path_PKG_CONFIG" fi fi if test -n "$PKG_CONFIG"; then _pkg_min_version=0.9.0 { $as_echo "$as_me:${as_lineno-$LINENO}: checking pkg-config is at least version $_pkg_min_version" >&5 $as_echo_n "checking pkg-config is at least version $_pkg_min_version... " >&6; } if $PKG_CONFIG --atleast-pkgconfig-version $_pkg_min_version; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } PKG_CONFIG="" fi fi pkg_failed=no { $as_echo "$as_me:${as_lineno-$LINENO}: checking for BONOBOUI" >&5 $as_echo_n "checking for BONOBOUI... " >&6; } if test -n "$BONOBOUI_CFLAGS"; then pkg_cv_BONOBOUI_CFLAGS="$BONOBOUI_CFLAGS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"\$BONOBOUI_MODULES\""; } >&5 ($PKG_CONFIG --exists --print-errors "$BONOBOUI_MODULES") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_BONOBOUI_CFLAGS=`$PKG_CONFIG --cflags "$BONOBOUI_MODULES" 2>/dev/null` else pkg_failed=yes fi else pkg_failed=untried fi if test -n "$BONOBOUI_LIBS"; then pkg_cv_BONOBOUI_LIBS="$BONOBOUI_LIBS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"\$BONOBOUI_MODULES\""; } >&5 ($PKG_CONFIG --exists --print-errors "$BONOBOUI_MODULES") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_BONOBOUI_LIBS=`$PKG_CONFIG --libs "$BONOBOUI_MODULES" 2>/dev/null` else pkg_failed=yes fi else pkg_failed=untried fi if test $pkg_failed = yes; then if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then _pkg_short_errors_supported=yes else _pkg_short_errors_supported=no fi if test $_pkg_short_errors_supported = yes; then BONOBOUI_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "$BONOBOUI_MODULES" 2>&1` else BONOBOUI_PKG_ERRORS=`$PKG_CONFIG --print-errors "$BONOBOUI_MODULES" 2>&1` fi # Put the nasty error message in config.log where it belongs echo "$BONOBOUI_PKG_ERRORS" >&5 as_fn_error "Package requirements ($BONOBOUI_MODULES) were not met: $BONOBOUI_PKG_ERRORS Consider adjusting the PKG_CONFIG_PATH environment variable if you installed software in a non-standard prefix. Alternatively, you may set the environment variables BONOBOUI_CFLAGS and BONOBOUI_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details. " "$LINENO" 5 elif test $pkg_failed = untried; then { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} as_fn_error "The pkg-config script could not be found or is too old. Make sure it is in your PATH or set the PKG_CONFIG environment variable to the full path to pkg-config. Alternatively, you may set the environment variables BONOBOUI_CFLAGS and BONOBOUI_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details. To get pkg-config, see . See \`config.log' for more details." "$LINENO" 5; } else BONOBOUI_CFLAGS=$pkg_cv_BONOBOUI_CFLAGS BONOBOUI_LIBS=$pkg_cv_BONOBOUI_LIBS { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } : fi { $as_echo "$as_me:${as_lineno-$LINENO}: checking for broken, old development packages" >&5 $as_echo_n "checking for broken, old development packages... " >&6; } if $PKG_CONFIG --exists gdk_pixbuf; then if $PKG_CONFIG --modversion 'gdk_pixbuf >= 0.12'; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: parallel install ok" >&5 $as_echo "parallel install ok" >&6; }; else as_fn_error "If you have gdk-pixbuf you need at least ver 0.12" "$LINENO" 5; fi else { $as_echo "$as_me:${as_lineno-$LINENO}: result: clean" >&5 $as_echo "clean" >&6; } fi; pkg_failed=no { $as_echo "$as_me:${as_lineno-$LINENO}: checking for BONOBOUI_GLADE" >&5 $as_echo_n "checking for BONOBOUI_GLADE... " >&6; } if test -n "$BONOBOUI_GLADE_CFLAGS"; then pkg_cv_BONOBOUI_GLADE_CFLAGS="$BONOBOUI_GLADE_CFLAGS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"\$BONOBOUI_MODULES libglade-2.0 >= 1.99.11\""; } >&5 ($PKG_CONFIG --exists --print-errors "$BONOBOUI_MODULES libglade-2.0 >= 1.99.11") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_BONOBOUI_GLADE_CFLAGS=`$PKG_CONFIG --cflags "$BONOBOUI_MODULES libglade-2.0 >= 1.99.11" 2>/dev/null` else pkg_failed=yes fi else pkg_failed=untried fi if test -n "$BONOBOUI_GLADE_LIBS"; then pkg_cv_BONOBOUI_GLADE_LIBS="$BONOBOUI_GLADE_LIBS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"\$BONOBOUI_MODULES libglade-2.0 >= 1.99.11\""; } >&5 ($PKG_CONFIG --exists --print-errors "$BONOBOUI_MODULES libglade-2.0 >= 1.99.11") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_BONOBOUI_GLADE_LIBS=`$PKG_CONFIG --libs "$BONOBOUI_MODULES libglade-2.0 >= 1.99.11" 2>/dev/null` else pkg_failed=yes fi else pkg_failed=untried fi if test $pkg_failed = yes; then if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then _pkg_short_errors_supported=yes else _pkg_short_errors_supported=no fi if test $_pkg_short_errors_supported = yes; then BONOBOUI_GLADE_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "$BONOBOUI_MODULES libglade-2.0 >= 1.99.11" 2>&1` else BONOBOUI_GLADE_PKG_ERRORS=`$PKG_CONFIG --print-errors "$BONOBOUI_MODULES libglade-2.0 >= 1.99.11" 2>&1` fi # Put the nasty error message in config.log where it belongs echo "$BONOBOUI_GLADE_PKG_ERRORS" >&5 as_fn_error "Package requirements ($BONOBOUI_MODULES libglade-2.0 >= 1.99.11) were not met: $BONOBOUI_GLADE_PKG_ERRORS Consider adjusting the PKG_CONFIG_PATH environment variable if you installed software in a non-standard prefix. Alternatively, you may set the environment variables BONOBOUI_GLADE_CFLAGS and BONOBOUI_GLADE_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details. " "$LINENO" 5 elif test $pkg_failed = untried; then { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} as_fn_error "The pkg-config script could not be found or is too old. Make sure it is in your PATH or set the PKG_CONFIG environment variable to the full path to pkg-config. Alternatively, you may set the environment variables BONOBOUI_GLADE_CFLAGS and BONOBOUI_GLADE_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details. To get pkg-config, see . See \`config.log' for more details." "$LINENO" 5; } else BONOBOUI_GLADE_CFLAGS=$pkg_cv_BONOBOUI_GLADE_CFLAGS BONOBOUI_GLADE_LIBS=$pkg_cv_BONOBOUI_GLADE_LIBS { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } : fi if test "$enable_maintainer_mode" = "yes"; then BONOBOUI_SINGLE_INCLUDES="-DGTK_DISABLE_SINGLE_INCLUDES -DG_DISABLE_SINGLE_INCLUDES" fi # glib-genmarshal # Extract the first word of "glib-genmarshal", so it can be a program name with args. set dummy glib-genmarshal; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if test "${ac_cv_path_GLIB_GENMARSHAL+set}" = set; then : $as_echo_n "(cached) " >&6 else case $GLIB_GENMARSHAL in [\\/]* | ?:[\\/]*) ac_cv_path_GLIB_GENMARSHAL="$GLIB_GENMARSHAL" # Let the user override the test with a path. ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_path_GLIB_GENMARSHAL="$as_dir/$ac_word$ac_exec_ext" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS ;; esac fi GLIB_GENMARSHAL=$ac_cv_path_GLIB_GENMARSHAL if test -n "$GLIB_GENMARSHAL"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $GLIB_GENMARSHAL" >&5 $as_echo "$GLIB_GENMARSHAL" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi # glib-mkenums # Extract the first word of "glib-mkenums", so it can be a program name with args. set dummy glib-mkenums; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if test "${ac_cv_path_GLIB_MKENUMS+set}" = set; then : $as_echo_n "(cached) " >&6 else case $GLIB_MKENUMS in [\\/]* | ?:[\\/]*) ac_cv_path_GLIB_MKENUMS="$GLIB_MKENUMS" # Let the user override the test with a path. ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_path_GLIB_MKENUMS="$as_dir/$ac_word$ac_exec_ext" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS ;; esac fi GLIB_MKENUMS=$ac_cv_path_GLIB_MKENUMS if test -n "$GLIB_MKENUMS"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $GLIB_MKENUMS" >&5 $as_echo "$GLIB_MKENUMS" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi # Extract the first word of "gtkdoc-check", so it can be a program name with args. set dummy gtkdoc-check; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if test "${ac_cv_path_GTKDOC_CHECK+set}" = set; then : $as_echo_n "(cached) " >&6 else case $GTKDOC_CHECK in [\\/]* | ?:[\\/]*) ac_cv_path_GTKDOC_CHECK="$GTKDOC_CHECK" # Let the user override the test with a path. ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_path_GTKDOC_CHECK="$as_dir/$ac_word$ac_exec_ext" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS ;; esac fi GTKDOC_CHECK=$ac_cv_path_GTKDOC_CHECK if test -n "$GTKDOC_CHECK"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $GTKDOC_CHECK" >&5 $as_echo "$GTKDOC_CHECK" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi for ac_prog in gtkdoc-rebase do # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if test "${ac_cv_path_GTKDOC_REBASE+set}" = set; then : $as_echo_n "(cached) " >&6 else case $GTKDOC_REBASE in [\\/]* | ?:[\\/]*) ac_cv_path_GTKDOC_REBASE="$GTKDOC_REBASE" # Let the user override the test with a path. ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_path_GTKDOC_REBASE="$as_dir/$ac_word$ac_exec_ext" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS ;; esac fi GTKDOC_REBASE=$ac_cv_path_GTKDOC_REBASE if test -n "$GTKDOC_REBASE"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $GTKDOC_REBASE" >&5 $as_echo "$GTKDOC_REBASE" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi test -n "$GTKDOC_REBASE" && break done test -n "$GTKDOC_REBASE" || GTKDOC_REBASE="true" # Extract the first word of "gtkdoc-mkpdf", so it can be a program name with args. set dummy gtkdoc-mkpdf; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if test "${ac_cv_path_GTKDOC_MKPDF+set}" = set; then : $as_echo_n "(cached) " >&6 else case $GTKDOC_MKPDF in [\\/]* | ?:[\\/]*) ac_cv_path_GTKDOC_MKPDF="$GTKDOC_MKPDF" # Let the user override the test with a path. ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_path_GTKDOC_MKPDF="$as_dir/$ac_word$ac_exec_ext" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS ;; esac fi GTKDOC_MKPDF=$ac_cv_path_GTKDOC_MKPDF if test -n "$GTKDOC_MKPDF"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $GTKDOC_MKPDF" >&5 $as_echo "$GTKDOC_MKPDF" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi # Check whether --with-html-dir was given. if test "${with_html_dir+set}" = set; then : withval=$with_html_dir; else with_html_dir='${datadir}/gtk-doc/html' fi HTML_DIR="$with_html_dir" # Check whether --enable-gtk-doc was given. if test "${enable_gtk_doc+set}" = set; then : enableval=$enable_gtk_doc; else enable_gtk_doc=no fi if test x$enable_gtk_doc = xyes; then if test -n "$PKG_CONFIG" && \ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gtk-doc >= 1.0\""; } >&5 ($PKG_CONFIG --exists --print-errors "gtk-doc >= 1.0") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then : else as_fn_error "You need to have gtk-doc >= 1.0 installed to build $PACKAGE_NAME" "$LINENO" 5 fi fi { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to build gtk-doc documentation" >&5 $as_echo_n "checking whether to build gtk-doc documentation... " >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: result: $enable_gtk_doc" >&5 $as_echo "$enable_gtk_doc" >&6; } # Check whether --enable-gtk-doc-html was given. if test "${enable_gtk_doc_html+set}" = set; then : enableval=$enable_gtk_doc_html; else enable_gtk_doc_html=yes fi # Check whether --enable-gtk-doc-pdf was given. if test "${enable_gtk_doc_pdf+set}" = set; then : enableval=$enable_gtk_doc_pdf; else enable_gtk_doc_pdf=no fi if test -z "$GTKDOC_MKPDF"; then enable_gtk_doc_pdf=no fi if test x$enable_gtk_doc = xyes; then ENABLE_GTK_DOC_TRUE= ENABLE_GTK_DOC_FALSE='#' else ENABLE_GTK_DOC_TRUE='#' ENABLE_GTK_DOC_FALSE= fi if test x$enable_gtk_doc_html = xyes; then GTK_DOC_BUILD_HTML_TRUE= GTK_DOC_BUILD_HTML_FALSE='#' else GTK_DOC_BUILD_HTML_TRUE='#' GTK_DOC_BUILD_HTML_FALSE= fi if test x$enable_gtk_doc_pdf = xyes; then GTK_DOC_BUILD_PDF_TRUE= GTK_DOC_BUILD_PDF_FALSE='#' else GTK_DOC_BUILD_PDF_TRUE='#' GTK_DOC_BUILD_PDF_FALSE= fi if test -n "$LIBTOOL"; then GTK_DOC_USE_LIBTOOL_TRUE= GTK_DOC_USE_LIBTOOL_FALSE='#' else GTK_DOC_USE_LIBTOOL_TRUE='#' GTK_DOC_USE_LIBTOOL_FALSE= fi if test -n "$GTKDOC_REBASE"; then GTK_DOC_USE_REBASE_TRUE= GTK_DOC_USE_REBASE_FALSE='#' else GTK_DOC_USE_REBASE_TRUE='#' GTK_DOC_USE_REBASE_FALSE= fi ac_config_files="$ac_config_files Makefile libbonoboui-zip po/Makefile.in bonobo/Makefile bonobo/libbonoboui-2.0.pc bonobo/libbonoboui-2.0-uninstalled.pc glade/Makefile samples/Makefile samples/controls/Makefile samples/bonoboui/Makefile samples/container/Makefile samples/compound-doc/Makefile samples/compound-doc/container/Makefile samples/canvdemo/Makefile tests/Makefile tests/control/Makefile tools/Makefile tools/browser/Makefile doc/Makefile doc/api/Makefile doc/api/figures/Makefile" cat >confcache <<\_ACEOF # This file is a shell script that caches the results of configure # tests run on this system so they can be shared between configure # scripts and configure runs, see configure's option --config-cache. # It is not useful on other systems. If it contains results you don't # want to keep, you may remove or edit it. # # config.status only pays attention to the cache file if you give it # the --recheck option to rerun configure. # # `ac_cv_env_foo' variables (set or unset) will be overridden when # loading this file, other *unset* `ac_cv_foo' will be assigned the # following values. _ACEOF # The following way of writing the cache mishandles newlines in values, # but we know of no workaround that is simple, portable, and efficient. # So, we kill variables containing newlines. # Ultrix sh set writes to stderr and can't be redirected directly, # and sets the high bit in the cache file unless we assign to the vars. ( for ac_var in `(set) 2>&1 | sed -n 's/^\([a-zA-Z_][a-zA-Z0-9_]*\)=.*/\1/p'`; do eval ac_val=\$$ac_var case $ac_val in #( *${as_nl}*) case $ac_var in #( *_cv_*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5 $as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;; esac case $ac_var in #( _ | IFS | as_nl) ;; #( BASH_ARGV | BASH_SOURCE) eval $ac_var= ;; #( *) { eval $ac_var=; unset $ac_var;} ;; esac ;; esac done (set) 2>&1 | case $as_nl`(ac_space=' '; set) 2>&1` in #( *${as_nl}ac_space=\ *) # `set' does not quote correctly, so add quotes: double-quote # substitution turns \\\\ into \\, and sed turns \\ into \. sed -n \ "s/'/'\\\\''/g; s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\\2'/p" ;; #( *) # `set' quotes correctly as required by POSIX, so do not add quotes. sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p" ;; esac | sort ) | sed ' /^ac_cv_env_/b end t clear :clear s/^\([^=]*\)=\(.*[{}].*\)$/test "${\1+set}" = set || &/ t end s/^\([^=]*\)=\(.*\)$/\1=${\1=\2}/ :end' >>confcache if diff "$cache_file" confcache >/dev/null 2>&1; then :; else if test -w "$cache_file"; then test "x$cache_file" != "x/dev/null" && { $as_echo "$as_me:${as_lineno-$LINENO}: updating cache $cache_file" >&5 $as_echo "$as_me: updating cache $cache_file" >&6;} cat confcache >$cache_file else { $as_echo "$as_me:${as_lineno-$LINENO}: not updating unwritable cache $cache_file" >&5 $as_echo "$as_me: not updating unwritable cache $cache_file" >&6;} fi fi rm -f confcache test "x$prefix" = xNONE && prefix=$ac_default_prefix # Let make expand exec_prefix. test "x$exec_prefix" = xNONE && exec_prefix='${prefix}' DEFS=-DHAVE_CONFIG_H ac_libobjs= ac_ltlibobjs= for ac_i in : $LIBOBJS; do test "x$ac_i" = x: && continue # 1. Remove the extension, and $U if already installed. ac_script='s/\$U\././;s/\.o$//;s/\.obj$//' ac_i=`$as_echo "$ac_i" | sed "$ac_script"` # 2. Prepend LIBOBJDIR. When used with automake>=1.10 LIBOBJDIR # will be set to the directory where LIBOBJS objects are built. as_fn_append ac_libobjs " \${LIBOBJDIR}$ac_i\$U.$ac_objext" as_fn_append ac_ltlibobjs " \${LIBOBJDIR}$ac_i"'$U.lo' done LIBOBJS=$ac_libobjs LTLIBOBJS=$ac_ltlibobjs if test -n "$EXEEXT"; then am__EXEEXT_TRUE= am__EXEEXT_FALSE='#' else am__EXEEXT_TRUE='#' am__EXEEXT_FALSE= fi if test -z "${MAINTAINER_MODE_TRUE}" && test -z "${MAINTAINER_MODE_FALSE}"; then as_fn_error "conditional \"MAINTAINER_MODE\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${AMDEP_TRUE}" && test -z "${AMDEP_FALSE}"; then as_fn_error "conditional \"AMDEP\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${am__fastdepCC_TRUE}" && test -z "${am__fastdepCC_FALSE}"; then as_fn_error "conditional \"am__fastdepCC\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${am__fastdepCC_TRUE}" && test -z "${am__fastdepCC_FALSE}"; then as_fn_error "conditional \"am__fastdepCC\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi ac_config_commands="$ac_config_commands po/stamp-it" if test -z "${ENABLE_GTK_DOC_TRUE}" && test -z "${ENABLE_GTK_DOC_FALSE}"; then as_fn_error "conditional \"ENABLE_GTK_DOC\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${GTK_DOC_BUILD_HTML_TRUE}" && test -z "${GTK_DOC_BUILD_HTML_FALSE}"; then as_fn_error "conditional \"GTK_DOC_BUILD_HTML\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${GTK_DOC_BUILD_PDF_TRUE}" && test -z "${GTK_DOC_BUILD_PDF_FALSE}"; then as_fn_error "conditional \"GTK_DOC_BUILD_PDF\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${GTK_DOC_USE_LIBTOOL_TRUE}" && test -z "${GTK_DOC_USE_LIBTOOL_FALSE}"; then as_fn_error "conditional \"GTK_DOC_USE_LIBTOOL\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${GTK_DOC_USE_REBASE_TRUE}" && test -z "${GTK_DOC_USE_REBASE_FALSE}"; then as_fn_error "conditional \"GTK_DOC_USE_REBASE\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi : ${CONFIG_STATUS=./config.status} ac_write_fail=0 ac_clean_files_save=$ac_clean_files ac_clean_files="$ac_clean_files $CONFIG_STATUS" { $as_echo "$as_me:${as_lineno-$LINENO}: creating $CONFIG_STATUS" >&5 $as_echo "$as_me: creating $CONFIG_STATUS" >&6;} as_write_fail=0 cat >$CONFIG_STATUS <<_ASEOF || as_write_fail=1 #! $SHELL # Generated by $as_me. # Run this file to recreate the current configuration. # Compiler output produced by configure, useful for debugging # configure, is in config.log if it exists. debug=false ac_cs_recheck=false ac_cs_silent=false SHELL=\${CONFIG_SHELL-$SHELL} export SHELL _ASEOF cat >>$CONFIG_STATUS <<\_ASEOF || as_write_fail=1 ## -------------------- ## ## M4sh Initialization. ## ## -------------------- ## # Be more Bourne compatible DUALCASE=1; export DUALCASE # for MKS sh if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then : emulate sh NULLCMD=: # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which # is contrary to our usage. Disable this feature. alias -g '${1+"$@"}'='"$@"' setopt NO_GLOB_SUBST else case `(set -o) 2>/dev/null` in #( *posix*) : set -o posix ;; #( *) : ;; esac fi as_nl=' ' export as_nl # Printing a long string crashes Solaris 7 /usr/bin/printf. as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\' as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo # Prefer a ksh shell builtin over an external printf program on Solaris, # but without wasting forks for bash or zsh. if test -z "$BASH_VERSION$ZSH_VERSION" \ && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then as_echo='print -r --' as_echo_n='print -rn --' elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then as_echo='printf %s\n' as_echo_n='printf %s' else if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"' as_echo_n='/usr/ucb/echo -n' else as_echo_body='eval expr "X$1" : "X\\(.*\\)"' as_echo_n_body='eval arg=$1; case $arg in #( *"$as_nl"*) expr "X$arg" : "X\\(.*\\)$as_nl"; arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;; esac; expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl" ' export as_echo_n_body as_echo_n='sh -c $as_echo_n_body as_echo' fi export as_echo_body as_echo='sh -c $as_echo_body as_echo' fi # The user is always right. if test "${PATH_SEPARATOR+set}" != set; then PATH_SEPARATOR=: (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && { (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 || PATH_SEPARATOR=';' } fi # IFS # We need space, tab and new line, in precisely that order. Quoting is # there to prevent editors from complaining about space-tab. # (If _AS_PATH_WALK were called with IFS unset, it would disable word # splitting by setting IFS to empty value.) IFS=" "" $as_nl" # Find who we are. Look in the path if we contain no directory separator. case $0 in #(( *[\\/]* ) as_myself=$0 ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break done IFS=$as_save_IFS ;; esac # We did not find ourselves, most probably we were run as `sh COMMAND' # in which case we are not to be found in the path. if test "x$as_myself" = x; then as_myself=$0 fi if test ! -f "$as_myself"; then $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2 exit 1 fi # Unset variables that we do not need and which cause bugs (e.g. in # pre-3.0 UWIN ksh). But do not cause bugs in bash 2.01; the "|| exit 1" # suppresses any "Segmentation fault" message there. '((' could # trigger a bug in pdksh 5.2.14. for as_var in BASH_ENV ENV MAIL MAILPATH do eval test x\${$as_var+set} = xset \ && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || : done PS1='$ ' PS2='> ' PS4='+ ' # NLS nuisances. LC_ALL=C export LC_ALL LANGUAGE=C export LANGUAGE # CDPATH. (unset CDPATH) >/dev/null 2>&1 && unset CDPATH # as_fn_error ERROR [LINENO LOG_FD] # --------------------------------- # Output "`basename $0`: error: ERROR" to stderr. If LINENO and LOG_FD are # provided, also output the error to LOG_FD, referencing LINENO. Then exit the # script with status $?, using 1 if that was 0. as_fn_error () { as_status=$?; test $as_status -eq 0 && as_status=1 if test "$3"; then as_lineno=${as_lineno-"$2"} as_lineno_stack=as_lineno_stack=$as_lineno_stack $as_echo "$as_me:${as_lineno-$LINENO}: error: $1" >&$3 fi $as_echo "$as_me: error: $1" >&2 as_fn_exit $as_status } # as_fn_error # as_fn_set_status STATUS # ----------------------- # Set $? to STATUS, without forking. as_fn_set_status () { return $1 } # as_fn_set_status # as_fn_exit STATUS # ----------------- # Exit the shell with STATUS, even in a "trap 0" or "set -e" context. as_fn_exit () { set +e as_fn_set_status $1 exit $1 } # as_fn_exit # as_fn_unset VAR # --------------- # Portably unset VAR. as_fn_unset () { { eval $1=; unset $1;} } as_unset=as_fn_unset # as_fn_append VAR VALUE # ---------------------- # Append the text in VALUE to the end of the definition contained in VAR. Take # advantage of any shell optimizations that allow amortized linear growth over # repeated appends, instead of the typical quadratic growth present in naive # implementations. if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then : eval 'as_fn_append () { eval $1+=\$2 }' else as_fn_append () { eval $1=\$$1\$2 } fi # as_fn_append # as_fn_arith ARG... # ------------------ # Perform arithmetic evaluation on the ARGs, and store the result in the # global $as_val. Take advantage of shells that can avoid forks. The arguments # must be portable across $(()) and expr. if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then : eval 'as_fn_arith () { as_val=$(( $* )) }' else as_fn_arith () { as_val=`expr "$@" || test $? -eq 1` } fi # as_fn_arith if expr a : '\(a\)' >/dev/null 2>&1 && test "X`expr 00001 : '.*\(...\)'`" = X001; then as_expr=expr else as_expr=false fi if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then as_basename=basename else as_basename=false fi if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then as_dirname=dirname else as_dirname=false fi as_me=`$as_basename -- "$0" || $as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ X"$0" : 'X\(//\)$' \| \ X"$0" : 'X\(/\)' \| . 2>/dev/null || $as_echo X/"$0" | sed '/^.*\/\([^/][^/]*\)\/*$/{ s//\1/ q } /^X\/\(\/\/\)$/{ s//\1/ q } /^X\/\(\/\).*/{ s//\1/ q } s/.*/./; q'` # Avoid depending upon Character Ranges. as_cr_letters='abcdefghijklmnopqrstuvwxyz' as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' as_cr_Letters=$as_cr_letters$as_cr_LETTERS as_cr_digits='0123456789' as_cr_alnum=$as_cr_Letters$as_cr_digits ECHO_C= ECHO_N= ECHO_T= case `echo -n x` in #((((( -n*) case `echo 'xy\c'` in *c*) ECHO_T=' ';; # ECHO_T is single tab character. xy) ECHO_C='\c';; *) echo `echo ksh88 bug on AIX 6.1` > /dev/null ECHO_T=' ';; esac;; *) ECHO_N='-n';; esac rm -f conf$$ conf$$.exe conf$$.file if test -d conf$$.dir; then rm -f conf$$.dir/conf$$.file else rm -f conf$$.dir mkdir conf$$.dir 2>/dev/null fi if (echo >conf$$.file) 2>/dev/null; then if ln -s conf$$.file conf$$ 2>/dev/null; then as_ln_s='ln -s' # ... but there are two gotchas: # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail. # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable. # In both cases, we have to default to `cp -p'. ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe || as_ln_s='cp -p' elif ln conf$$.file conf$$ 2>/dev/null; then as_ln_s=ln else as_ln_s='cp -p' fi else as_ln_s='cp -p' fi rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file rmdir conf$$.dir 2>/dev/null # as_fn_mkdir_p # ------------- # Create "$as_dir" as a directory, including parents if necessary. as_fn_mkdir_p () { case $as_dir in #( -*) as_dir=./$as_dir;; esac test -d "$as_dir" || eval $as_mkdir_p || { as_dirs= while :; do case $as_dir in #( *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'( *) as_qdir=$as_dir;; esac as_dirs="'$as_qdir' $as_dirs" as_dir=`$as_dirname -- "$as_dir" || $as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ X"$as_dir" : 'X\(//\)[^/]' \| \ X"$as_dir" : 'X\(//\)$' \| \ X"$as_dir" : 'X\(/\)' \| . 2>/dev/null || $as_echo X"$as_dir" | sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/ q } /^X\(\/\/\)[^/].*/{ s//\1/ q } /^X\(\/\/\)$/{ s//\1/ q } /^X\(\/\).*/{ s//\1/ q } s/.*/./; q'` test -d "$as_dir" && break done test -z "$as_dirs" || eval "mkdir $as_dirs" } || test -d "$as_dir" || as_fn_error "cannot create directory $as_dir" } # as_fn_mkdir_p if mkdir -p . 2>/dev/null; then as_mkdir_p='mkdir -p "$as_dir"' else test -d ./-p && rmdir ./-p as_mkdir_p=false fi if test -x / >/dev/null 2>&1; then as_test_x='test -x' else if ls -dL / >/dev/null 2>&1; then as_ls_L_option=L else as_ls_L_option= fi as_test_x=' eval sh -c '\'' if test -d "$1"; then test -d "$1/."; else case $1 in #( -*)set "./$1";; esac; case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in #(( ???[sx]*):;;*)false;;esac;fi '\'' sh ' fi as_executable_p=$as_test_x # Sed expression to map a string onto a valid CPP name. as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" # Sed expression to map a string onto a valid variable name. as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" exec 6>&1 ## ----------------------------------- ## ## Main body of $CONFIG_STATUS script. ## ## ----------------------------------- ## _ASEOF test $as_write_fail = 0 && chmod +x $CONFIG_STATUS || ac_write_fail=1 cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 # Save the log message, to keep $0 and so on meaningful, and to # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" This file was extended by libbonoboui $as_me 2.24.5, which was generated by GNU Autoconf 2.65. Invocation command line was CONFIG_FILES = $CONFIG_FILES CONFIG_HEADERS = $CONFIG_HEADERS CONFIG_LINKS = $CONFIG_LINKS CONFIG_COMMANDS = $CONFIG_COMMANDS $ $0 $@ on `(hostname || uname -n) 2>/dev/null | sed 1q` " _ACEOF case $ac_config_files in *" "*) set x $ac_config_files; shift; ac_config_files=$*;; esac case $ac_config_headers in *" "*) set x $ac_config_headers; shift; ac_config_headers=$*;; esac cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 # Files that config.status was made for. config_files="$ac_config_files" config_headers="$ac_config_headers" config_commands="$ac_config_commands" _ACEOF cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 ac_cs_usage="\ \`$as_me' instantiates files and other configuration actions from templates according to the current configuration. Unless the files and actions are specified as TAGs, all are instantiated by default. Usage: $0 [OPTION]... [TAG]... -h, --help print this help, then exit -V, --version print version number and configuration settings, then exit --config print configuration, then exit -q, --quiet, --silent do not print progress messages -d, --debug don't remove temporary files --recheck update $as_me by reconfiguring in the same conditions --file=FILE[:TEMPLATE] instantiate the configuration file FILE --header=FILE[:TEMPLATE] instantiate the configuration header FILE Configuration files: $config_files Configuration headers: $config_headers Configuration commands: $config_commands Report bugs to ." _ACEOF cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" ac_cs_version="\\ libbonoboui config.status 2.24.5 configured by $0, generated by GNU Autoconf 2.65, with options \\"\$ac_cs_config\\" Copyright (C) 2009 Free Software Foundation, Inc. This config.status script is free software; the Free Software Foundation gives unlimited permission to copy, distribute and modify it." ac_pwd='$ac_pwd' srcdir='$srcdir' INSTALL='$INSTALL' MKDIR_P='$MKDIR_P' AWK='$AWK' test -n "\$AWK" || AWK=awk _ACEOF cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 # The default lists apply if the user does not specify any file. ac_need_defaults=: while test $# != 0 do case $1 in --*=*) ac_option=`expr "X$1" : 'X\([^=]*\)='` ac_optarg=`expr "X$1" : 'X[^=]*=\(.*\)'` ac_shift=: ;; *) ac_option=$1 ac_optarg=$2 ac_shift=shift ;; esac case $ac_option in # Handling of the options. -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r) ac_cs_recheck=: ;; --version | --versio | --versi | --vers | --ver | --ve | --v | -V ) $as_echo "$ac_cs_version"; exit ;; --config | --confi | --conf | --con | --co | --c ) $as_echo "$ac_cs_config"; exit ;; --debug | --debu | --deb | --de | --d | -d ) debug=: ;; --file | --fil | --fi | --f ) $ac_shift case $ac_optarg in *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;; esac as_fn_append CONFIG_FILES " '$ac_optarg'" ac_need_defaults=false;; --header | --heade | --head | --hea ) $ac_shift case $ac_optarg in *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;; esac as_fn_append CONFIG_HEADERS " '$ac_optarg'" ac_need_defaults=false;; --he | --h) # Conflict between --help and --header as_fn_error "ambiguous option: \`$1' Try \`$0 --help' for more information.";; --help | --hel | -h ) $as_echo "$ac_cs_usage"; exit ;; -q | -quiet | --quiet | --quie | --qui | --qu | --q \ | -silent | --silent | --silen | --sile | --sil | --si | --s) ac_cs_silent=: ;; # This is an error. -*) as_fn_error "unrecognized option: \`$1' Try \`$0 --help' for more information." ;; *) as_fn_append ac_config_targets " $1" ac_need_defaults=false ;; esac shift done ac_configure_extra_args= if $ac_cs_silent; then exec 6>/dev/null ac_configure_extra_args="$ac_configure_extra_args --silent" fi _ACEOF cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 if \$ac_cs_recheck; then set X '$SHELL' '$0' $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion shift \$as_echo "running CONFIG_SHELL=$SHELL \$*" >&6 CONFIG_SHELL='$SHELL' export CONFIG_SHELL exec "\$@" fi _ACEOF cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 exec 5>>config.log { echo sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX ## Running $as_me. ## _ASBOX $as_echo "$ac_log" } >&5 _ACEOF cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 # # INIT-COMMANDS # AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir" # The HP-UX ksh and POSIX shell print the target directory to stdout # if CDPATH is set. (unset CDPATH) >/dev/null 2>&1 && unset CDPATH sed_quote_subst='$sed_quote_subst' double_quote_subst='$double_quote_subst' delay_variable_subst='$delay_variable_subst' AS='`$ECHO "X$AS" | $Xsed -e "$delay_single_quote_subst"`' DLLTOOL='`$ECHO "X$DLLTOOL" | $Xsed -e "$delay_single_quote_subst"`' OBJDUMP='`$ECHO "X$OBJDUMP" | $Xsed -e "$delay_single_quote_subst"`' macro_version='`$ECHO "X$macro_version" | $Xsed -e "$delay_single_quote_subst"`' macro_revision='`$ECHO "X$macro_revision" | $Xsed -e "$delay_single_quote_subst"`' enable_shared='`$ECHO "X$enable_shared" | $Xsed -e "$delay_single_quote_subst"`' enable_static='`$ECHO "X$enable_static" | $Xsed -e "$delay_single_quote_subst"`' pic_mode='`$ECHO "X$pic_mode" | $Xsed -e "$delay_single_quote_subst"`' enable_fast_install='`$ECHO "X$enable_fast_install" | $Xsed -e "$delay_single_quote_subst"`' host_alias='`$ECHO "X$host_alias" | $Xsed -e "$delay_single_quote_subst"`' host='`$ECHO "X$host" | $Xsed -e "$delay_single_quote_subst"`' host_os='`$ECHO "X$host_os" | $Xsed -e "$delay_single_quote_subst"`' build_alias='`$ECHO "X$build_alias" | $Xsed -e "$delay_single_quote_subst"`' build='`$ECHO "X$build" | $Xsed -e "$delay_single_quote_subst"`' build_os='`$ECHO "X$build_os" | $Xsed -e "$delay_single_quote_subst"`' SED='`$ECHO "X$SED" | $Xsed -e "$delay_single_quote_subst"`' Xsed='`$ECHO "X$Xsed" | $Xsed -e "$delay_single_quote_subst"`' GREP='`$ECHO "X$GREP" | $Xsed -e "$delay_single_quote_subst"`' EGREP='`$ECHO "X$EGREP" | $Xsed -e "$delay_single_quote_subst"`' FGREP='`$ECHO "X$FGREP" | $Xsed -e "$delay_single_quote_subst"`' LD='`$ECHO "X$LD" | $Xsed -e "$delay_single_quote_subst"`' NM='`$ECHO "X$NM" | $Xsed -e "$delay_single_quote_subst"`' LN_S='`$ECHO "X$LN_S" | $Xsed -e "$delay_single_quote_subst"`' max_cmd_len='`$ECHO "X$max_cmd_len" | $Xsed -e "$delay_single_quote_subst"`' ac_objext='`$ECHO "X$ac_objext" | $Xsed -e "$delay_single_quote_subst"`' exeext='`$ECHO "X$exeext" | $Xsed -e "$delay_single_quote_subst"`' lt_unset='`$ECHO "X$lt_unset" | $Xsed -e "$delay_single_quote_subst"`' lt_SP2NL='`$ECHO "X$lt_SP2NL" | $Xsed -e "$delay_single_quote_subst"`' lt_NL2SP='`$ECHO "X$lt_NL2SP" | $Xsed -e "$delay_single_quote_subst"`' reload_flag='`$ECHO "X$reload_flag" | $Xsed -e "$delay_single_quote_subst"`' reload_cmds='`$ECHO "X$reload_cmds" | $Xsed -e "$delay_single_quote_subst"`' deplibs_check_method='`$ECHO "X$deplibs_check_method" | $Xsed -e "$delay_single_quote_subst"`' file_magic_cmd='`$ECHO "X$file_magic_cmd" | $Xsed -e "$delay_single_quote_subst"`' AR='`$ECHO "X$AR" | $Xsed -e "$delay_single_quote_subst"`' AR_FLAGS='`$ECHO "X$AR_FLAGS" | $Xsed -e "$delay_single_quote_subst"`' STRIP='`$ECHO "X$STRIP" | $Xsed -e "$delay_single_quote_subst"`' RANLIB='`$ECHO "X$RANLIB" | $Xsed -e "$delay_single_quote_subst"`' old_postinstall_cmds='`$ECHO "X$old_postinstall_cmds" | $Xsed -e "$delay_single_quote_subst"`' old_postuninstall_cmds='`$ECHO "X$old_postuninstall_cmds" | $Xsed -e "$delay_single_quote_subst"`' old_archive_cmds='`$ECHO "X$old_archive_cmds" | $Xsed -e "$delay_single_quote_subst"`' CC='`$ECHO "X$CC" | $Xsed -e "$delay_single_quote_subst"`' CFLAGS='`$ECHO "X$CFLAGS" | $Xsed -e "$delay_single_quote_subst"`' compiler='`$ECHO "X$compiler" | $Xsed -e "$delay_single_quote_subst"`' GCC='`$ECHO "X$GCC" | $Xsed -e "$delay_single_quote_subst"`' lt_cv_sys_global_symbol_pipe='`$ECHO "X$lt_cv_sys_global_symbol_pipe" | $Xsed -e "$delay_single_quote_subst"`' lt_cv_sys_global_symbol_to_cdecl='`$ECHO "X$lt_cv_sys_global_symbol_to_cdecl" | $Xsed -e "$delay_single_quote_subst"`' lt_cv_sys_global_symbol_to_c_name_address='`$ECHO "X$lt_cv_sys_global_symbol_to_c_name_address" | $Xsed -e "$delay_single_quote_subst"`' lt_cv_sys_global_symbol_to_c_name_address_lib_prefix='`$ECHO "X$lt_cv_sys_global_symbol_to_c_name_address_lib_prefix" | $Xsed -e "$delay_single_quote_subst"`' objdir='`$ECHO "X$objdir" | $Xsed -e "$delay_single_quote_subst"`' SHELL='`$ECHO "X$SHELL" | $Xsed -e "$delay_single_quote_subst"`' ECHO='`$ECHO "X$ECHO" | $Xsed -e "$delay_single_quote_subst"`' MAGIC_CMD='`$ECHO "X$MAGIC_CMD" | $Xsed -e "$delay_single_quote_subst"`' lt_prog_compiler_no_builtin_flag='`$ECHO "X$lt_prog_compiler_no_builtin_flag" | $Xsed -e "$delay_single_quote_subst"`' lt_prog_compiler_wl='`$ECHO "X$lt_prog_compiler_wl" | $Xsed -e "$delay_single_quote_subst"`' lt_prog_compiler_pic='`$ECHO "X$lt_prog_compiler_pic" | $Xsed -e "$delay_single_quote_subst"`' lt_prog_compiler_static='`$ECHO "X$lt_prog_compiler_static" | $Xsed -e "$delay_single_quote_subst"`' lt_cv_prog_compiler_c_o='`$ECHO "X$lt_cv_prog_compiler_c_o" | $Xsed -e "$delay_single_quote_subst"`' need_locks='`$ECHO "X$need_locks" | $Xsed -e "$delay_single_quote_subst"`' DSYMUTIL='`$ECHO "X$DSYMUTIL" | $Xsed -e "$delay_single_quote_subst"`' NMEDIT='`$ECHO "X$NMEDIT" | $Xsed -e "$delay_single_quote_subst"`' LIPO='`$ECHO "X$LIPO" | $Xsed -e "$delay_single_quote_subst"`' OTOOL='`$ECHO "X$OTOOL" | $Xsed -e "$delay_single_quote_subst"`' OTOOL64='`$ECHO "X$OTOOL64" | $Xsed -e "$delay_single_quote_subst"`' libext='`$ECHO "X$libext" | $Xsed -e "$delay_single_quote_subst"`' shrext_cmds='`$ECHO "X$shrext_cmds" | $Xsed -e "$delay_single_quote_subst"`' extract_expsyms_cmds='`$ECHO "X$extract_expsyms_cmds" | $Xsed -e "$delay_single_quote_subst"`' archive_cmds_need_lc='`$ECHO "X$archive_cmds_need_lc" | $Xsed -e "$delay_single_quote_subst"`' enable_shared_with_static_runtimes='`$ECHO "X$enable_shared_with_static_runtimes" | $Xsed -e "$delay_single_quote_subst"`' export_dynamic_flag_spec='`$ECHO "X$export_dynamic_flag_spec" | $Xsed -e "$delay_single_quote_subst"`' whole_archive_flag_spec='`$ECHO "X$whole_archive_flag_spec" | $Xsed -e "$delay_single_quote_subst"`' compiler_needs_object='`$ECHO "X$compiler_needs_object" | $Xsed -e "$delay_single_quote_subst"`' old_archive_from_new_cmds='`$ECHO "X$old_archive_from_new_cmds" | $Xsed -e "$delay_single_quote_subst"`' old_archive_from_expsyms_cmds='`$ECHO "X$old_archive_from_expsyms_cmds" | $Xsed -e "$delay_single_quote_subst"`' archive_cmds='`$ECHO "X$archive_cmds" | $Xsed -e "$delay_single_quote_subst"`' archive_expsym_cmds='`$ECHO "X$archive_expsym_cmds" | $Xsed -e "$delay_single_quote_subst"`' module_cmds='`$ECHO "X$module_cmds" | $Xsed -e "$delay_single_quote_subst"`' module_expsym_cmds='`$ECHO "X$module_expsym_cmds" | $Xsed -e "$delay_single_quote_subst"`' with_gnu_ld='`$ECHO "X$with_gnu_ld" | $Xsed -e "$delay_single_quote_subst"`' allow_undefined_flag='`$ECHO "X$allow_undefined_flag" | $Xsed -e "$delay_single_quote_subst"`' no_undefined_flag='`$ECHO "X$no_undefined_flag" | $Xsed -e "$delay_single_quote_subst"`' hardcode_libdir_flag_spec='`$ECHO "X$hardcode_libdir_flag_spec" | $Xsed -e "$delay_single_quote_subst"`' hardcode_libdir_flag_spec_ld='`$ECHO "X$hardcode_libdir_flag_spec_ld" | $Xsed -e "$delay_single_quote_subst"`' hardcode_libdir_separator='`$ECHO "X$hardcode_libdir_separator" | $Xsed -e "$delay_single_quote_subst"`' hardcode_direct='`$ECHO "X$hardcode_direct" | $Xsed -e "$delay_single_quote_subst"`' hardcode_direct_absolute='`$ECHO "X$hardcode_direct_absolute" | $Xsed -e "$delay_single_quote_subst"`' hardcode_minus_L='`$ECHO "X$hardcode_minus_L" | $Xsed -e "$delay_single_quote_subst"`' hardcode_shlibpath_var='`$ECHO "X$hardcode_shlibpath_var" | $Xsed -e "$delay_single_quote_subst"`' hardcode_automatic='`$ECHO "X$hardcode_automatic" | $Xsed -e "$delay_single_quote_subst"`' inherit_rpath='`$ECHO "X$inherit_rpath" | $Xsed -e "$delay_single_quote_subst"`' link_all_deplibs='`$ECHO "X$link_all_deplibs" | $Xsed -e "$delay_single_quote_subst"`' fix_srcfile_path='`$ECHO "X$fix_srcfile_path" | $Xsed -e "$delay_single_quote_subst"`' always_export_symbols='`$ECHO "X$always_export_symbols" | $Xsed -e "$delay_single_quote_subst"`' export_symbols_cmds='`$ECHO "X$export_symbols_cmds" | $Xsed -e "$delay_single_quote_subst"`' exclude_expsyms='`$ECHO "X$exclude_expsyms" | $Xsed -e "$delay_single_quote_subst"`' include_expsyms='`$ECHO "X$include_expsyms" | $Xsed -e "$delay_single_quote_subst"`' prelink_cmds='`$ECHO "X$prelink_cmds" | $Xsed -e "$delay_single_quote_subst"`' file_list_spec='`$ECHO "X$file_list_spec" | $Xsed -e "$delay_single_quote_subst"`' variables_saved_for_relink='`$ECHO "X$variables_saved_for_relink" | $Xsed -e "$delay_single_quote_subst"`' need_lib_prefix='`$ECHO "X$need_lib_prefix" | $Xsed -e "$delay_single_quote_subst"`' need_version='`$ECHO "X$need_version" | $Xsed -e "$delay_single_quote_subst"`' version_type='`$ECHO "X$version_type" | $Xsed -e "$delay_single_quote_subst"`' runpath_var='`$ECHO "X$runpath_var" | $Xsed -e "$delay_single_quote_subst"`' shlibpath_var='`$ECHO "X$shlibpath_var" | $Xsed -e "$delay_single_quote_subst"`' shlibpath_overrides_runpath='`$ECHO "X$shlibpath_overrides_runpath" | $Xsed -e "$delay_single_quote_subst"`' libname_spec='`$ECHO "X$libname_spec" | $Xsed -e "$delay_single_quote_subst"`' library_names_spec='`$ECHO "X$library_names_spec" | $Xsed -e "$delay_single_quote_subst"`' soname_spec='`$ECHO "X$soname_spec" | $Xsed -e "$delay_single_quote_subst"`' postinstall_cmds='`$ECHO "X$postinstall_cmds" | $Xsed -e "$delay_single_quote_subst"`' postuninstall_cmds='`$ECHO "X$postuninstall_cmds" | $Xsed -e "$delay_single_quote_subst"`' finish_cmds='`$ECHO "X$finish_cmds" | $Xsed -e "$delay_single_quote_subst"`' finish_eval='`$ECHO "X$finish_eval" | $Xsed -e "$delay_single_quote_subst"`' hardcode_into_libs='`$ECHO "X$hardcode_into_libs" | $Xsed -e "$delay_single_quote_subst"`' sys_lib_search_path_spec='`$ECHO "X$sys_lib_search_path_spec" | $Xsed -e "$delay_single_quote_subst"`' sys_lib_dlsearch_path_spec='`$ECHO "X$sys_lib_dlsearch_path_spec" | $Xsed -e "$delay_single_quote_subst"`' hardcode_action='`$ECHO "X$hardcode_action" | $Xsed -e "$delay_single_quote_subst"`' enable_dlopen='`$ECHO "X$enable_dlopen" | $Xsed -e "$delay_single_quote_subst"`' enable_dlopen_self='`$ECHO "X$enable_dlopen_self" | $Xsed -e "$delay_single_quote_subst"`' enable_dlopen_self_static='`$ECHO "X$enable_dlopen_self_static" | $Xsed -e "$delay_single_quote_subst"`' old_striplib='`$ECHO "X$old_striplib" | $Xsed -e "$delay_single_quote_subst"`' striplib='`$ECHO "X$striplib" | $Xsed -e "$delay_single_quote_subst"`' LTCC='$LTCC' LTCFLAGS='$LTCFLAGS' compiler='$compiler_DEFAULT' # Quote evaled strings. for var in SED \ GREP \ EGREP \ FGREP \ LD \ NM \ LN_S \ lt_SP2NL \ lt_NL2SP \ reload_flag \ deplibs_check_method \ file_magic_cmd \ AR \ AR_FLAGS \ STRIP \ RANLIB \ CC \ CFLAGS \ compiler \ lt_cv_sys_global_symbol_pipe \ lt_cv_sys_global_symbol_to_cdecl \ lt_cv_sys_global_symbol_to_c_name_address \ lt_cv_sys_global_symbol_to_c_name_address_lib_prefix \ SHELL \ ECHO \ lt_prog_compiler_no_builtin_flag \ lt_prog_compiler_wl \ lt_prog_compiler_pic \ lt_prog_compiler_static \ lt_cv_prog_compiler_c_o \ need_locks \ DSYMUTIL \ NMEDIT \ LIPO \ OTOOL \ OTOOL64 \ shrext_cmds \ export_dynamic_flag_spec \ whole_archive_flag_spec \ compiler_needs_object \ with_gnu_ld \ allow_undefined_flag \ no_undefined_flag \ hardcode_libdir_flag_spec \ hardcode_libdir_flag_spec_ld \ hardcode_libdir_separator \ fix_srcfile_path \ exclude_expsyms \ include_expsyms \ file_list_spec \ variables_saved_for_relink \ libname_spec \ library_names_spec \ soname_spec \ finish_eval \ old_striplib \ striplib; do case \`eval \\\\\$ECHO "X\\\\\$\$var"\` in *[\\\\\\\`\\"\\\$]*) eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"X\\\$\$var\\" | \\\$Xsed -e \\"\\\$sed_quote_subst\\"\\\`\\\\\\"" ;; *) eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\"" ;; esac done # Double-quote double-evaled strings. for var in reload_cmds \ old_postinstall_cmds \ old_postuninstall_cmds \ old_archive_cmds \ extract_expsyms_cmds \ old_archive_from_new_cmds \ old_archive_from_expsyms_cmds \ archive_cmds \ archive_expsym_cmds \ module_cmds \ module_expsym_cmds \ export_symbols_cmds \ prelink_cmds \ postinstall_cmds \ postuninstall_cmds \ finish_cmds \ sys_lib_search_path_spec \ sys_lib_dlsearch_path_spec; do case \`eval \\\\\$ECHO "X\\\\\$\$var"\` in *[\\\\\\\`\\"\\\$]*) eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"X\\\$\$var\\" | \\\$Xsed -e \\"\\\$double_quote_subst\\" -e \\"\\\$sed_quote_subst\\" -e \\"\\\$delay_variable_subst\\"\\\`\\\\\\"" ;; *) eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\"" ;; esac done # Fix-up fallback echo if it was mangled by the above quoting rules. case \$lt_ECHO in *'\\\$0 --fallback-echo"') lt_ECHO=\`\$ECHO "X\$lt_ECHO" | \$Xsed -e 's/\\\\\\\\\\\\\\\$0 --fallback-echo"\$/\$0 --fallback-echo"/'\` ;; esac ac_aux_dir='$ac_aux_dir' xsi_shell='$xsi_shell' lt_shell_append='$lt_shell_append' # See if we are running on zsh, and set the options which allow our # commands through without removal of \ escapes INIT. if test -n "\${ZSH_VERSION+set}" ; then setopt NO_GLOB_SUBST fi PACKAGE='$PACKAGE' VERSION='$VERSION' TIMESTAMP='$TIMESTAMP' RM='$RM' ofile='$ofile' _ACEOF cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 # Handling of arguments. for ac_config_target in $ac_config_targets do case $ac_config_target in "config.h") CONFIG_HEADERS="$CONFIG_HEADERS config.h" ;; "depfiles") CONFIG_COMMANDS="$CONFIG_COMMANDS depfiles" ;; "libtool") CONFIG_COMMANDS="$CONFIG_COMMANDS libtool" ;; "default-1") CONFIG_COMMANDS="$CONFIG_COMMANDS default-1" ;; "Makefile") CONFIG_FILES="$CONFIG_FILES Makefile" ;; "libbonoboui-zip") CONFIG_FILES="$CONFIG_FILES libbonoboui-zip" ;; "po/Makefile.in") CONFIG_FILES="$CONFIG_FILES po/Makefile.in" ;; "bonobo/Makefile") CONFIG_FILES="$CONFIG_FILES bonobo/Makefile" ;; "bonobo/libbonoboui-2.0.pc") CONFIG_FILES="$CONFIG_FILES bonobo/libbonoboui-2.0.pc" ;; "bonobo/libbonoboui-2.0-uninstalled.pc") CONFIG_FILES="$CONFIG_FILES bonobo/libbonoboui-2.0-uninstalled.pc" ;; "glade/Makefile") CONFIG_FILES="$CONFIG_FILES glade/Makefile" ;; "samples/Makefile") CONFIG_FILES="$CONFIG_FILES samples/Makefile" ;; "samples/controls/Makefile") CONFIG_FILES="$CONFIG_FILES samples/controls/Makefile" ;; "samples/bonoboui/Makefile") CONFIG_FILES="$CONFIG_FILES samples/bonoboui/Makefile" ;; "samples/container/Makefile") CONFIG_FILES="$CONFIG_FILES samples/container/Makefile" ;; "samples/compound-doc/Makefile") CONFIG_FILES="$CONFIG_FILES samples/compound-doc/Makefile" ;; "samples/compound-doc/container/Makefile") CONFIG_FILES="$CONFIG_FILES samples/compound-doc/container/Makefile" ;; "samples/canvdemo/Makefile") CONFIG_FILES="$CONFIG_FILES samples/canvdemo/Makefile" ;; "tests/Makefile") CONFIG_FILES="$CONFIG_FILES tests/Makefile" ;; "tests/control/Makefile") CONFIG_FILES="$CONFIG_FILES tests/control/Makefile" ;; "tools/Makefile") CONFIG_FILES="$CONFIG_FILES tools/Makefile" ;; "tools/browser/Makefile") CONFIG_FILES="$CONFIG_FILES tools/browser/Makefile" ;; "doc/Makefile") CONFIG_FILES="$CONFIG_FILES doc/Makefile" ;; "doc/api/Makefile") CONFIG_FILES="$CONFIG_FILES doc/api/Makefile" ;; "doc/api/figures/Makefile") CONFIG_FILES="$CONFIG_FILES doc/api/figures/Makefile" ;; "po/stamp-it") CONFIG_COMMANDS="$CONFIG_COMMANDS po/stamp-it" ;; *) as_fn_error "invalid argument: \`$ac_config_target'" "$LINENO" 5;; esac done # If the user did not use the arguments to specify the items to instantiate, # then the envvar interface is used. Set only those that are not. # We use the long form for the default assignment because of an extremely # bizarre bug on SunOS 4.1.3. if $ac_need_defaults; then test "${CONFIG_FILES+set}" = set || CONFIG_FILES=$config_files test "${CONFIG_HEADERS+set}" = set || CONFIG_HEADERS=$config_headers test "${CONFIG_COMMANDS+set}" = set || CONFIG_COMMANDS=$config_commands fi # Have a temporary directory for convenience. Make it in the build tree # simply because there is no reason against having it here, and in addition, # creating and moving files from /tmp can sometimes cause problems. # Hook for its removal unless debugging. # Note that there is a small window in which the directory will not be cleaned: # after its creation but before its name has been assigned to `$tmp'. $debug || { tmp= trap 'exit_status=$? { test -z "$tmp" || test ! -d "$tmp" || rm -fr "$tmp"; } && exit $exit_status ' 0 trap 'as_fn_exit 1' 1 2 13 15 } # Create a (secure) tmp directory for tmp files. { tmp=`(umask 077 && mktemp -d "./confXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" } || { tmp=./conf$$-$RANDOM (umask 077 && mkdir "$tmp") } || as_fn_error "cannot create a temporary directory in ." "$LINENO" 5 # Set up the scripts for CONFIG_FILES section. # No need to generate them if there are no CONFIG_FILES. # This happens for instance with `./config.status config.h'. if test -n "$CONFIG_FILES"; then ac_cr=`echo X | tr X '\015'` # On cygwin, bash can eat \r inside `` if the user requested igncr. # But we know of no other shell where ac_cr would be empty at this # point, so we can use a bashism as a fallback. if test "x$ac_cr" = x; then eval ac_cr=\$\'\\r\' fi ac_cs_awk_cr=`$AWK 'BEGIN { print "a\rb" }' /dev/null` if test "$ac_cs_awk_cr" = "a${ac_cr}b"; then ac_cs_awk_cr='\r' else ac_cs_awk_cr=$ac_cr fi echo 'BEGIN {' >"$tmp/subs1.awk" && _ACEOF { echo "cat >conf$$subs.awk <<_ACEOF" && echo "$ac_subst_vars" | sed 's/.*/&!$&$ac_delim/' && echo "_ACEOF" } >conf$$subs.sh || as_fn_error "could not make $CONFIG_STATUS" "$LINENO" 5 ac_delim_num=`echo "$ac_subst_vars" | grep -c '$'` ac_delim='%!_!# ' for ac_last_try in false false false false false :; do . ./conf$$subs.sh || as_fn_error "could not make $CONFIG_STATUS" "$LINENO" 5 ac_delim_n=`sed -n "s/.*$ac_delim\$/X/p" conf$$subs.awk | grep -c X` if test $ac_delim_n = $ac_delim_num; then break elif $ac_last_try; then as_fn_error "could not make $CONFIG_STATUS" "$LINENO" 5 else ac_delim="$ac_delim!$ac_delim _$ac_delim!! " fi done rm -f conf$$subs.sh cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 cat >>"\$tmp/subs1.awk" <<\\_ACAWK && _ACEOF sed -n ' h s/^/S["/; s/!.*/"]=/ p g s/^[^!]*!// :repl t repl s/'"$ac_delim"'$// t delim :nl h s/\(.\{148\}\)..*/\1/ t more1 s/["\\]/\\&/g; s/^/"/; s/$/\\n"\\/ p n b repl :more1 s/["\\]/\\&/g; s/^/"/; s/$/"\\/ p g s/.\{148\}// t nl :delim h s/\(.\{148\}\)..*/\1/ t more2 s/["\\]/\\&/g; s/^/"/; s/$/"/ p b :more2 s/["\\]/\\&/g; s/^/"/; s/$/"\\/ p g s/.\{148\}// t delim ' >$CONFIG_STATUS || ac_write_fail=1 rm -f conf$$subs.awk cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 _ACAWK cat >>"\$tmp/subs1.awk" <<_ACAWK && for (key in S) S_is_set[key] = 1 FS = "" } { line = $ 0 nfields = split(line, field, "@") substed = 0 len = length(field[1]) for (i = 2; i < nfields; i++) { key = field[i] keylen = length(key) if (S_is_set[key]) { value = S[key] line = substr(line, 1, len) "" value "" substr(line, len + keylen + 3) len += length(value) + length(field[++i]) substed = 1 } else len += 1 + keylen } print line } _ACAWK _ACEOF cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 if sed "s/$ac_cr//" < /dev/null > /dev/null 2>&1; then sed "s/$ac_cr\$//; s/$ac_cr/$ac_cs_awk_cr/g" else cat fi < "$tmp/subs1.awk" > "$tmp/subs.awk" \ || as_fn_error "could not setup config files machinery" "$LINENO" 5 _ACEOF # VPATH may cause trouble with some makes, so we remove $(srcdir), # ${srcdir} and @srcdir@ from VPATH if srcdir is ".", strip leading and # trailing colons and then remove the whole line if VPATH becomes empty # (actually we leave an empty line to preserve line numbers). if test "x$srcdir" = x.; then ac_vpsub='/^[ ]*VPATH[ ]*=/{ s/:*\$(srcdir):*/:/ s/:*\${srcdir}:*/:/ s/:*@srcdir@:*/:/ s/^\([^=]*=[ ]*\):*/\1/ s/:*$// s/^[^=]*=[ ]*$// }' fi cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 fi # test -n "$CONFIG_FILES" # Set up the scripts for CONFIG_HEADERS section. # No need to generate them if there are no CONFIG_HEADERS. # This happens for instance with `./config.status Makefile'. if test -n "$CONFIG_HEADERS"; then cat >"$tmp/defines.awk" <<\_ACAWK || BEGIN { _ACEOF # Transform confdefs.h into an awk script `defines.awk', embedded as # here-document in config.status, that substitutes the proper values into # config.h.in to produce config.h. # Create a delimiter string that does not exist in confdefs.h, to ease # handling of long lines. ac_delim='%!_!# ' for ac_last_try in false false :; do ac_t=`sed -n "/$ac_delim/p" confdefs.h` if test -z "$ac_t"; then break elif $ac_last_try; then as_fn_error "could not make $CONFIG_HEADERS" "$LINENO" 5 else ac_delim="$ac_delim!$ac_delim _$ac_delim!! " fi done # For the awk script, D is an array of macro values keyed by name, # likewise P contains macro parameters if any. Preserve backslash # newline sequences. ac_word_re=[_$as_cr_Letters][_$as_cr_alnum]* sed -n ' s/.\{148\}/&'"$ac_delim"'/g t rset :rset s/^[ ]*#[ ]*define[ ][ ]*/ / t def d :def s/\\$// t bsnl s/["\\]/\\&/g s/^ \('"$ac_word_re"'\)\(([^()]*)\)[ ]*\(.*\)/P["\1"]="\2"\ D["\1"]=" \3"/p s/^ \('"$ac_word_re"'\)[ ]*\(.*\)/D["\1"]=" \2"/p d :bsnl s/["\\]/\\&/g s/^ \('"$ac_word_re"'\)\(([^()]*)\)[ ]*\(.*\)/P["\1"]="\2"\ D["\1"]=" \3\\\\\\n"\\/p t cont s/^ \('"$ac_word_re"'\)[ ]*\(.*\)/D["\1"]=" \2\\\\\\n"\\/p t cont d :cont n s/.\{148\}/&'"$ac_delim"'/g t clear :clear s/\\$// t bsnlc s/["\\]/\\&/g; s/^/"/; s/$/"/p d :bsnlc s/["\\]/\\&/g; s/^/"/; s/$/\\\\\\n"\\/p b cont ' >$CONFIG_STATUS || ac_write_fail=1 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 for (key in D) D_is_set[key] = 1 FS = "" } /^[\t ]*#[\t ]*(define|undef)[\t ]+$ac_word_re([\t (]|\$)/ { line = \$ 0 split(line, arg, " ") if (arg[1] == "#") { defundef = arg[2] mac1 = arg[3] } else { defundef = substr(arg[1], 2) mac1 = arg[2] } split(mac1, mac2, "(") #) macro = mac2[1] prefix = substr(line, 1, index(line, defundef) - 1) if (D_is_set[macro]) { # Preserve the white space surrounding the "#". print prefix "define", macro P[macro] D[macro] next } else { # Replace #undef with comments. This is necessary, for example, # in the case of _POSIX_SOURCE, which is predefined and required # on some systems where configure will not decide to define it. if (defundef == "undef") { print "/*", prefix defundef, macro, "*/" next } } } { print } _ACAWK _ACEOF cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 as_fn_error "could not setup config headers machinery" "$LINENO" 5 fi # test -n "$CONFIG_HEADERS" eval set X " :F $CONFIG_FILES :H $CONFIG_HEADERS :C $CONFIG_COMMANDS" shift for ac_tag do case $ac_tag in :[FHLC]) ac_mode=$ac_tag; continue;; esac case $ac_mode$ac_tag in :[FHL]*:*);; :L* | :C*:*) as_fn_error "invalid tag \`$ac_tag'" "$LINENO" 5;; :[FH]-) ac_tag=-:-;; :[FH]*) ac_tag=$ac_tag:$ac_tag.in;; esac ac_save_IFS=$IFS IFS=: set x $ac_tag IFS=$ac_save_IFS shift ac_file=$1 shift case $ac_mode in :L) ac_source=$1;; :[FH]) ac_file_inputs= for ac_f do case $ac_f in -) ac_f="$tmp/stdin";; *) # Look for the file first in the build tree, then in the source tree # (if the path is not absolute). The absolute path cannot be DOS-style, # because $ac_f cannot contain `:'. test -f "$ac_f" || case $ac_f in [\\/$]*) false;; *) test -f "$srcdir/$ac_f" && ac_f="$srcdir/$ac_f";; esac || as_fn_error "cannot find input file: \`$ac_f'" "$LINENO" 5;; esac case $ac_f in *\'*) ac_f=`$as_echo "$ac_f" | sed "s/'/'\\\\\\\\''/g"`;; esac as_fn_append ac_file_inputs " '$ac_f'" done # Let's still pretend it is `configure' which instantiates (i.e., don't # use $as_me), people would be surprised to read: # /* config.h. Generated by config.status. */ configure_input='Generated from '` $as_echo "$*" | sed 's|^[^:]*/||;s|:[^:]*/|, |g' `' by configure.' if test x"$ac_file" != x-; then configure_input="$ac_file. $configure_input" { $as_echo "$as_me:${as_lineno-$LINENO}: creating $ac_file" >&5 $as_echo "$as_me: creating $ac_file" >&6;} fi # Neutralize special characters interpreted by sed in replacement strings. case $configure_input in #( *\&* | *\|* | *\\* ) ac_sed_conf_input=`$as_echo "$configure_input" | sed 's/[\\\\&|]/\\\\&/g'`;; #( *) ac_sed_conf_input=$configure_input;; esac case $ac_tag in *:-:* | *:-) cat >"$tmp/stdin" \ || as_fn_error "could not create $ac_file" "$LINENO" 5 ;; esac ;; esac ac_dir=`$as_dirname -- "$ac_file" || $as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ X"$ac_file" : 'X\(//\)[^/]' \| \ X"$ac_file" : 'X\(//\)$' \| \ X"$ac_file" : 'X\(/\)' \| . 2>/dev/null || $as_echo X"$ac_file" | sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/ q } /^X\(\/\/\)[^/].*/{ s//\1/ q } /^X\(\/\/\)$/{ s//\1/ q } /^X\(\/\).*/{ s//\1/ q } s/.*/./; q'` as_dir="$ac_dir"; as_fn_mkdir_p ac_builddir=. case "$ac_dir" in .) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;; *) ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'` # A ".." for each directory in $ac_dir_suffix. ac_top_builddir_sub=`$as_echo "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'` case $ac_top_builddir_sub in "") ac_top_builddir_sub=. ac_top_build_prefix= ;; *) ac_top_build_prefix=$ac_top_builddir_sub/ ;; esac ;; esac ac_abs_top_builddir=$ac_pwd ac_abs_builddir=$ac_pwd$ac_dir_suffix # for backward compatibility: ac_top_builddir=$ac_top_build_prefix case $srcdir in .) # We are building in place. ac_srcdir=. ac_top_srcdir=$ac_top_builddir_sub ac_abs_top_srcdir=$ac_pwd ;; [\\/]* | ?:[\\/]* ) # Absolute name. ac_srcdir=$srcdir$ac_dir_suffix; ac_top_srcdir=$srcdir ac_abs_top_srcdir=$srcdir ;; *) # Relative name. ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix ac_top_srcdir=$ac_top_build_prefix$srcdir ac_abs_top_srcdir=$ac_pwd/$srcdir ;; esac ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix case $ac_mode in :F) # # CONFIG_FILE # case $INSTALL in [\\/$]* | ?:[\\/]* ) ac_INSTALL=$INSTALL ;; *) ac_INSTALL=$ac_top_build_prefix$INSTALL ;; esac ac_MKDIR_P=$MKDIR_P case $MKDIR_P in [\\/$]* | ?:[\\/]* ) ;; */*) ac_MKDIR_P=$ac_top_build_prefix$MKDIR_P ;; esac _ACEOF cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 # If the template does not know about datarootdir, expand it. # FIXME: This hack should be removed a few years after 2.60. ac_datarootdir_hack=; ac_datarootdir_seen= ac_sed_dataroot=' /datarootdir/ { p q } /@datadir@/p /@docdir@/p /@infodir@/p /@localedir@/p /@mandir@/p' case `eval "sed -n \"\$ac_sed_dataroot\" $ac_file_inputs"` in *datarootdir*) ac_datarootdir_seen=yes;; *@datadir@*|*@docdir@*|*@infodir@*|*@localedir@*|*@mandir@*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&5 $as_echo "$as_me: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&2;} _ACEOF cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_datarootdir_hack=' s&@datadir@&$datadir&g s&@docdir@&$docdir&g s&@infodir@&$infodir&g s&@localedir@&$localedir&g s&@mandir@&$mandir&g s&\\\${datarootdir}&$datarootdir&g' ;; esac _ACEOF # Neutralize VPATH when `$srcdir' = `.'. # Shell code in configure.ac might set extrasub. # FIXME: do we really want to maintain this feature? cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_sed_extra="$ac_vpsub $extrasub _ACEOF cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 :t /@[a-zA-Z_][a-zA-Z_0-9]*@/!b s|@configure_input@|$ac_sed_conf_input|;t t s&@top_builddir@&$ac_top_builddir_sub&;t t s&@top_build_prefix@&$ac_top_build_prefix&;t t s&@srcdir@&$ac_srcdir&;t t s&@abs_srcdir@&$ac_abs_srcdir&;t t s&@top_srcdir@&$ac_top_srcdir&;t t s&@abs_top_srcdir@&$ac_abs_top_srcdir&;t t s&@builddir@&$ac_builddir&;t t s&@abs_builddir@&$ac_abs_builddir&;t t s&@abs_top_builddir@&$ac_abs_top_builddir&;t t s&@INSTALL@&$ac_INSTALL&;t t s&@MKDIR_P@&$ac_MKDIR_P&;t t $ac_datarootdir_hack " eval sed \"\$ac_sed_extra\" "$ac_file_inputs" | $AWK -f "$tmp/subs.awk" >$tmp/out \ || as_fn_error "could not create $ac_file" "$LINENO" 5 test -z "$ac_datarootdir_hack$ac_datarootdir_seen" && { ac_out=`sed -n '/\${datarootdir}/p' "$tmp/out"`; test -n "$ac_out"; } && { ac_out=`sed -n '/^[ ]*datarootdir[ ]*:*=/p' "$tmp/out"`; test -z "$ac_out"; } && { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file contains a reference to the variable \`datarootdir' which seems to be undefined. Please make sure it is defined." >&5 $as_echo "$as_me: WARNING: $ac_file contains a reference to the variable \`datarootdir' which seems to be undefined. Please make sure it is defined." >&2;} rm -f "$tmp/stdin" case $ac_file in -) cat "$tmp/out" && rm -f "$tmp/out";; *) rm -f "$ac_file" && mv "$tmp/out" "$ac_file";; esac \ || as_fn_error "could not create $ac_file" "$LINENO" 5 ;; :H) # # CONFIG_HEADER # if test x"$ac_file" != x-; then { $as_echo "/* $configure_input */" \ && eval '$AWK -f "$tmp/defines.awk"' "$ac_file_inputs" } >"$tmp/config.h" \ || as_fn_error "could not create $ac_file" "$LINENO" 5 if diff "$ac_file" "$tmp/config.h" >/dev/null 2>&1; then { $as_echo "$as_me:${as_lineno-$LINENO}: $ac_file is unchanged" >&5 $as_echo "$as_me: $ac_file is unchanged" >&6;} else rm -f "$ac_file" mv "$tmp/config.h" "$ac_file" \ || as_fn_error "could not create $ac_file" "$LINENO" 5 fi else $as_echo "/* $configure_input */" \ && eval '$AWK -f "$tmp/defines.awk"' "$ac_file_inputs" \ || as_fn_error "could not create -" "$LINENO" 5 fi # Compute "$ac_file"'s index in $config_headers. _am_arg="$ac_file" _am_stamp_count=1 for _am_header in $config_headers :; do case $_am_header in $_am_arg | $_am_arg:* ) break ;; * ) _am_stamp_count=`expr $_am_stamp_count + 1` ;; esac done echo "timestamp for $_am_arg" >`$as_dirname -- "$_am_arg" || $as_expr X"$_am_arg" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ X"$_am_arg" : 'X\(//\)[^/]' \| \ X"$_am_arg" : 'X\(//\)$' \| \ X"$_am_arg" : 'X\(/\)' \| . 2>/dev/null || $as_echo X"$_am_arg" | sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/ q } /^X\(\/\/\)[^/].*/{ s//\1/ q } /^X\(\/\/\)$/{ s//\1/ q } /^X\(\/\).*/{ s//\1/ q } s/.*/./; q'`/stamp-h$_am_stamp_count ;; :C) { $as_echo "$as_me:${as_lineno-$LINENO}: executing $ac_file commands" >&5 $as_echo "$as_me: executing $ac_file commands" >&6;} ;; esac case $ac_file$ac_mode in "depfiles":C) test x"$AMDEP_TRUE" != x"" || { # Autoconf 2.62 quotes --file arguments for eval, but not when files # are listed without --file. Let's play safe and only enable the eval # if we detect the quoting. case $CONFIG_FILES in *\'*) eval set x "$CONFIG_FILES" ;; *) set x $CONFIG_FILES ;; esac shift for mf do # Strip MF so we end up with the name of the file. mf=`echo "$mf" | sed -e 's/:.*$//'` # Check whether this is an Automake generated Makefile or not. # We used to match only the files named `Makefile.in', but # some people rename them; so instead we look at the file content. # Grep'ing the first line is not enough: some people post-process # each Makefile.in and add a new line on top of each file to say so. # Grep'ing the whole file is not good either: AIX grep has a line # limit of 2048, but all sed's we know have understand at least 4000. if sed -n 's,^#.*generated by automake.*,X,p' "$mf" | grep X >/dev/null 2>&1; then dirpart=`$as_dirname -- "$mf" || $as_expr X"$mf" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ X"$mf" : 'X\(//\)[^/]' \| \ X"$mf" : 'X\(//\)$' \| \ X"$mf" : 'X\(/\)' \| . 2>/dev/null || $as_echo X"$mf" | sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/ q } /^X\(\/\/\)[^/].*/{ s//\1/ q } /^X\(\/\/\)$/{ s//\1/ q } /^X\(\/\).*/{ s//\1/ q } s/.*/./; q'` else continue fi # Extract the definition of DEPDIR, am__include, and am__quote # from the Makefile without running `make'. DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"` test -z "$DEPDIR" && continue am__include=`sed -n 's/^am__include = //p' < "$mf"` test -z "am__include" && continue am__quote=`sed -n 's/^am__quote = //p' < "$mf"` # When using ansi2knr, U may be empty or an underscore; expand it U=`sed -n 's/^U = //p' < "$mf"` # Find all dependency output files, they are included files with # $(DEPDIR) in their names. We invoke sed twice because it is the # simplest approach to changing $(DEPDIR) to its actual value in the # expansion. for file in `sed -n " s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \ sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do # Make sure the directory exists. test -f "$dirpart/$file" && continue fdir=`$as_dirname -- "$file" || $as_expr X"$file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ X"$file" : 'X\(//\)[^/]' \| \ X"$file" : 'X\(//\)$' \| \ X"$file" : 'X\(/\)' \| . 2>/dev/null || $as_echo X"$file" | sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/ q } /^X\(\/\/\)[^/].*/{ s//\1/ q } /^X\(\/\/\)$/{ s//\1/ q } /^X\(\/\).*/{ s//\1/ q } s/.*/./; q'` as_dir=$dirpart/$fdir; as_fn_mkdir_p # echo "creating $dirpart/$file" echo '# dummy' > "$dirpart/$file" done done } ;; "libtool":C) # See if we are running on zsh, and set the options which allow our # commands through without removal of \ escapes. if test -n "${ZSH_VERSION+set}" ; then setopt NO_GLOB_SUBST fi cfgfile="${ofile}T" trap "$RM \"$cfgfile\"; exit 1" 1 2 15 $RM "$cfgfile" cat <<_LT_EOF >> "$cfgfile" #! $SHELL # `$ECHO "$ofile" | sed 's%^.*/%%'` - Provide generalized library-building support services. # Generated automatically by $as_me ($PACKAGE$TIMESTAMP) $VERSION # Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`: # NOTE: Changes made to this file will be lost: look at ltmain.sh. # # Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005, # 2006, 2007, 2008 Free Software Foundation, Inc. # Written by Gordon Matzigkeit, 1996 # # This file is part of GNU Libtool. # # GNU Libtool is free software; you can redistribute it and/or # modify it under the terms of the GNU General Public License as # published by the Free Software Foundation; either version 2 of # the License, or (at your option) any later version. # # As a special exception to the GNU General Public License, # if you distribute this file as part of a program or library that # is built using GNU Libtool, you may include this file under the # same distribution terms that you use for the rest of that program. # # GNU Libtool is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with GNU Libtool; see the file COPYING. If not, a copy # can be downloaded from http://www.gnu.org/licenses/gpl.html, or # obtained by writing to the Free Software Foundation, Inc., # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. # The names of the tagged configurations supported by this script. available_tags="" # ### BEGIN LIBTOOL CONFIG # Assembler program. AS=$AS # DLL creation program. DLLTOOL=$DLLTOOL # Object dumper program. OBJDUMP=$OBJDUMP # Which release of libtool.m4 was used? macro_version=$macro_version macro_revision=$macro_revision # Whether or not to build shared libraries. build_libtool_libs=$enable_shared # Whether or not to build static libraries. build_old_libs=$enable_static # What type of objects to build. pic_mode=$pic_mode # Whether or not to optimize for fast installation. fast_install=$enable_fast_install # The host system. host_alias=$host_alias host=$host host_os=$host_os # The build system. build_alias=$build_alias build=$build build_os=$build_os # A sed program that does not truncate output. SED=$lt_SED # Sed that helps us avoid accidentally triggering echo(1) options like -n. Xsed="\$SED -e 1s/^X//" # A grep program that handles long lines. GREP=$lt_GREP # An ERE matcher. EGREP=$lt_EGREP # A literal string matcher. FGREP=$lt_FGREP # A BSD- or MS-compatible name lister. NM=$lt_NM # Whether we need soft or hard links. LN_S=$lt_LN_S # What is the maximum length of a command? max_cmd_len=$max_cmd_len # Object file suffix (normally "o"). objext=$ac_objext # Executable file suffix (normally ""). exeext=$exeext # whether the shell understands "unset". lt_unset=$lt_unset # turn spaces into newlines. SP2NL=$lt_lt_SP2NL # turn newlines into spaces. NL2SP=$lt_lt_NL2SP # How to create reloadable object files. reload_flag=$lt_reload_flag reload_cmds=$lt_reload_cmds # Method to check whether dependent libraries are shared objects. deplibs_check_method=$lt_deplibs_check_method # Command to use when deplibs_check_method == "file_magic". file_magic_cmd=$lt_file_magic_cmd # The archiver. AR=$lt_AR AR_FLAGS=$lt_AR_FLAGS # A symbol stripping program. STRIP=$lt_STRIP # Commands used to install an old-style archive. RANLIB=$lt_RANLIB old_postinstall_cmds=$lt_old_postinstall_cmds old_postuninstall_cmds=$lt_old_postuninstall_cmds # A C compiler. LTCC=$lt_CC # LTCC compiler flags. LTCFLAGS=$lt_CFLAGS # Take the output of nm and produce a listing of raw symbols and C names. global_symbol_pipe=$lt_lt_cv_sys_global_symbol_pipe # Transform the output of nm in a proper C declaration. global_symbol_to_cdecl=$lt_lt_cv_sys_global_symbol_to_cdecl # Transform the output of nm in a C name address pair. global_symbol_to_c_name_address=$lt_lt_cv_sys_global_symbol_to_c_name_address # Transform the output of nm in a C name address pair when lib prefix is needed. global_symbol_to_c_name_address_lib_prefix=$lt_lt_cv_sys_global_symbol_to_c_name_address_lib_prefix # The name of the directory that contains temporary libtool files. objdir=$objdir # Shell to use when invoking shell scripts. SHELL=$lt_SHELL # An echo program that does not interpret backslashes. ECHO=$lt_ECHO # Used to examine libraries when file_magic_cmd begins with "file". MAGIC_CMD=$MAGIC_CMD # Must we lock files when doing compilation? need_locks=$lt_need_locks # Tool to manipulate archived DWARF debug symbol files on Mac OS X. DSYMUTIL=$lt_DSYMUTIL # Tool to change global to local symbols on Mac OS X. NMEDIT=$lt_NMEDIT # Tool to manipulate fat objects and archives on Mac OS X. LIPO=$lt_LIPO # ldd/readelf like tool for Mach-O binaries on Mac OS X. OTOOL=$lt_OTOOL # ldd/readelf like tool for 64 bit Mach-O binaries on Mac OS X 10.4. OTOOL64=$lt_OTOOL64 # Old archive suffix (normally "a"). libext=$libext # Shared library suffix (normally ".so"). shrext_cmds=$lt_shrext_cmds # The commands to extract the exported symbol list from a shared archive. extract_expsyms_cmds=$lt_extract_expsyms_cmds # Variables whose values should be saved in libtool wrapper scripts and # restored at link time. variables_saved_for_relink=$lt_variables_saved_for_relink # Do we need the "lib" prefix for modules? need_lib_prefix=$need_lib_prefix # Do we need a version for libraries? need_version=$need_version # Library versioning type. version_type=$version_type # Shared library runtime path variable. runpath_var=$runpath_var # Shared library path variable. shlibpath_var=$shlibpath_var # Is shlibpath searched before the hard-coded library search path? shlibpath_overrides_runpath=$shlibpath_overrides_runpath # Format of library name prefix. libname_spec=$lt_libname_spec # List of archive names. First name is the real one, the rest are links. # The last name is the one that the linker finds with -lNAME library_names_spec=$lt_library_names_spec # The coded name of the library, if different from the real name. soname_spec=$lt_soname_spec # Command to use after installation of a shared archive. postinstall_cmds=$lt_postinstall_cmds # Command to use after uninstallation of a shared archive. postuninstall_cmds=$lt_postuninstall_cmds # Commands used to finish a libtool library installation in a directory. finish_cmds=$lt_finish_cmds # As "finish_cmds", except a single script fragment to be evaled but # not shown. finish_eval=$lt_finish_eval # Whether we should hardcode library paths into libraries. hardcode_into_libs=$hardcode_into_libs # Compile-time system search path for libraries. sys_lib_search_path_spec=$lt_sys_lib_search_path_spec # Run-time system search path for libraries. sys_lib_dlsearch_path_spec=$lt_sys_lib_dlsearch_path_spec # Whether dlopen is supported. dlopen_support=$enable_dlopen # Whether dlopen of programs is supported. dlopen_self=$enable_dlopen_self # Whether dlopen of statically linked programs is supported. dlopen_self_static=$enable_dlopen_self_static # Commands to strip libraries. old_striplib=$lt_old_striplib striplib=$lt_striplib # The linker used to build libraries. LD=$lt_LD # Commands used to build an old-style archive. old_archive_cmds=$lt_old_archive_cmds # A language specific compiler. CC=$lt_compiler # Is the compiler the GNU compiler? with_gcc=$GCC # Compiler flag to turn off builtin functions. no_builtin_flag=$lt_lt_prog_compiler_no_builtin_flag # How to pass a linker flag through the compiler. wl=$lt_lt_prog_compiler_wl # Additional compiler flags for building library objects. pic_flag=$lt_lt_prog_compiler_pic # Compiler flag to prevent dynamic linking. link_static_flag=$lt_lt_prog_compiler_static # Does compiler simultaneously support -c and -o options? compiler_c_o=$lt_lt_cv_prog_compiler_c_o # Whether or not to add -lc for building shared libraries. build_libtool_need_lc=$archive_cmds_need_lc # Whether or not to disallow shared libs when runtime libs are static. allow_libtool_libs_with_static_runtimes=$enable_shared_with_static_runtimes # Compiler flag to allow reflexive dlopens. export_dynamic_flag_spec=$lt_export_dynamic_flag_spec # Compiler flag to generate shared objects directly from archives. whole_archive_flag_spec=$lt_whole_archive_flag_spec # Whether the compiler copes with passing no objects directly. compiler_needs_object=$lt_compiler_needs_object # Create an old-style archive from a shared archive. old_archive_from_new_cmds=$lt_old_archive_from_new_cmds # Create a temporary old-style archive to link instead of a shared archive. old_archive_from_expsyms_cmds=$lt_old_archive_from_expsyms_cmds # Commands used to build a shared archive. archive_cmds=$lt_archive_cmds archive_expsym_cmds=$lt_archive_expsym_cmds # Commands used to build a loadable module if different from building # a shared archive. module_cmds=$lt_module_cmds module_expsym_cmds=$lt_module_expsym_cmds # Whether we are building with GNU ld or not. with_gnu_ld=$lt_with_gnu_ld # Flag that allows shared libraries with undefined symbols to be built. allow_undefined_flag=$lt_allow_undefined_flag # Flag that enforces no undefined symbols. no_undefined_flag=$lt_no_undefined_flag # Flag to hardcode \$libdir into a binary during linking. # This must work even if \$libdir does not exist hardcode_libdir_flag_spec=$lt_hardcode_libdir_flag_spec # If ld is used when linking, flag to hardcode \$libdir into a binary # during linking. This must work even if \$libdir does not exist. hardcode_libdir_flag_spec_ld=$lt_hardcode_libdir_flag_spec_ld # Whether we need a single "-rpath" flag with a separated argument. hardcode_libdir_separator=$lt_hardcode_libdir_separator # Set to "yes" if using DIR/libNAME\${shared_ext} during linking hardcodes # DIR into the resulting binary. hardcode_direct=$hardcode_direct # Set to "yes" if using DIR/libNAME\${shared_ext} during linking hardcodes # DIR into the resulting binary and the resulting library dependency is # "absolute",i.e impossible to change by setting \${shlibpath_var} if the # library is relocated. hardcode_direct_absolute=$hardcode_direct_absolute # Set to "yes" if using the -LDIR flag during linking hardcodes DIR # into the resulting binary. hardcode_minus_L=$hardcode_minus_L # Set to "yes" if using SHLIBPATH_VAR=DIR during linking hardcodes DIR # into the resulting binary. hardcode_shlibpath_var=$hardcode_shlibpath_var # Set to "yes" if building a shared library automatically hardcodes DIR # into the library and all subsequent libraries and executables linked # against it. hardcode_automatic=$hardcode_automatic # Set to yes if linker adds runtime paths of dependent libraries # to runtime path list. inherit_rpath=$inherit_rpath # Whether libtool must link a program against all its dependency libraries. link_all_deplibs=$link_all_deplibs # Fix the shell variable \$srcfile for the compiler. fix_srcfile_path=$lt_fix_srcfile_path # Set to "yes" if exported symbols are required. always_export_symbols=$always_export_symbols # The commands to list exported symbols. export_symbols_cmds=$lt_export_symbols_cmds # Symbols that should not be listed in the preloaded symbols. exclude_expsyms=$lt_exclude_expsyms # Symbols that must always be exported. include_expsyms=$lt_include_expsyms # Commands necessary for linking programs (against libraries) with templates. prelink_cmds=$lt_prelink_cmds # Specify filename containing input files. file_list_spec=$lt_file_list_spec # How to hardcode a shared library path into an executable. hardcode_action=$hardcode_action # ### END LIBTOOL CONFIG _LT_EOF case $host_os in aix3*) cat <<\_LT_EOF >> "$cfgfile" # AIX sometimes has problems with the GCC collect2 program. For some # reason, if we set the COLLECT_NAMES environment variable, the problems # vanish in a puff of smoke. if test "X${COLLECT_NAMES+set}" != Xset; then COLLECT_NAMES= export COLLECT_NAMES fi _LT_EOF ;; esac ltmain="$ac_aux_dir/ltmain.sh" # We use sed instead of cat because bash on DJGPP gets confused if # if finds mixed CR/LF and LF-only lines. Since sed operates in # text mode, it properly converts lines to CR/LF. This bash problem # is reportedly fixed, but why not run on old versions too? sed '/^# Generated shell functions inserted here/q' "$ltmain" >> "$cfgfile" \ || (rm -f "$cfgfile"; exit 1) case $xsi_shell in yes) cat << \_LT_EOF >> "$cfgfile" # func_dirname file append nondir_replacement # Compute the dirname of FILE. If nonempty, add APPEND to the result, # otherwise set result to NONDIR_REPLACEMENT. func_dirname () { case ${1} in */*) func_dirname_result="${1%/*}${2}" ;; * ) func_dirname_result="${3}" ;; esac } # func_basename file func_basename () { func_basename_result="${1##*/}" } # func_dirname_and_basename file append nondir_replacement # perform func_basename and func_dirname in a single function # call: # dirname: Compute the dirname of FILE. If nonempty, # add APPEND to the result, otherwise set result # to NONDIR_REPLACEMENT. # value returned in "$func_dirname_result" # basename: Compute filename of FILE. # value retuned in "$func_basename_result" # Implementation must be kept synchronized with func_dirname # and func_basename. For efficiency, we do not delegate to # those functions but instead duplicate the functionality here. func_dirname_and_basename () { case ${1} in */*) func_dirname_result="${1%/*}${2}" ;; * ) func_dirname_result="${3}" ;; esac func_basename_result="${1##*/}" } # func_stripname prefix suffix name # strip PREFIX and SUFFIX off of NAME. # PREFIX and SUFFIX must not contain globbing or regex special # characters, hashes, percent signs, but SUFFIX may contain a leading # dot (in which case that matches only a dot). func_stripname () { # pdksh 5.2.14 does not do ${X%$Y} correctly if both X and Y are # positional parameters, so assign one to ordinary parameter first. func_stripname_result=${3} func_stripname_result=${func_stripname_result#"${1}"} func_stripname_result=${func_stripname_result%"${2}"} } # func_opt_split func_opt_split () { func_opt_split_opt=${1%%=*} func_opt_split_arg=${1#*=} } # func_lo2o object func_lo2o () { case ${1} in *.lo) func_lo2o_result=${1%.lo}.${objext} ;; *) func_lo2o_result=${1} ;; esac } # func_xform libobj-or-source func_xform () { func_xform_result=${1%.*}.lo } # func_arith arithmetic-term... func_arith () { func_arith_result=$(( $* )) } # func_len string # STRING may not start with a hyphen. func_len () { func_len_result=${#1} } _LT_EOF ;; *) # Bourne compatible functions. cat << \_LT_EOF >> "$cfgfile" # func_dirname file append nondir_replacement # Compute the dirname of FILE. If nonempty, add APPEND to the result, # otherwise set result to NONDIR_REPLACEMENT. func_dirname () { # Extract subdirectory from the argument. func_dirname_result=`$ECHO "X${1}" | $Xsed -e "$dirname"` if test "X$func_dirname_result" = "X${1}"; then func_dirname_result="${3}" else func_dirname_result="$func_dirname_result${2}" fi } # func_basename file func_basename () { func_basename_result=`$ECHO "X${1}" | $Xsed -e "$basename"` } # func_stripname prefix suffix name # strip PREFIX and SUFFIX off of NAME. # PREFIX and SUFFIX must not contain globbing or regex special # characters, hashes, percent signs, but SUFFIX may contain a leading # dot (in which case that matches only a dot). # func_strip_suffix prefix name func_stripname () { case ${2} in .*) func_stripname_result=`$ECHO "X${3}" \ | $Xsed -e "s%^${1}%%" -e "s%\\\\${2}\$%%"`;; *) func_stripname_result=`$ECHO "X${3}" \ | $Xsed -e "s%^${1}%%" -e "s%${2}\$%%"`;; esac } # sed scripts: my_sed_long_opt='1s/^\(-[^=]*\)=.*/\1/;q' my_sed_long_arg='1s/^-[^=]*=//' # func_opt_split func_opt_split () { func_opt_split_opt=`$ECHO "X${1}" | $Xsed -e "$my_sed_long_opt"` func_opt_split_arg=`$ECHO "X${1}" | $Xsed -e "$my_sed_long_arg"` } # func_lo2o object func_lo2o () { func_lo2o_result=`$ECHO "X${1}" | $Xsed -e "$lo2o"` } # func_xform libobj-or-source func_xform () { func_xform_result=`$ECHO "X${1}" | $Xsed -e 's/\.[^.]*$/.lo/'` } # func_arith arithmetic-term... func_arith () { func_arith_result=`expr "$@"` } # func_len string # STRING may not start with a hyphen. func_len () { func_len_result=`expr "$1" : ".*" 2>/dev/null || echo $max_cmd_len` } _LT_EOF esac case $lt_shell_append in yes) cat << \_LT_EOF >> "$cfgfile" # func_append var value # Append VALUE to the end of shell variable VAR. func_append () { eval "$1+=\$2" } _LT_EOF ;; *) cat << \_LT_EOF >> "$cfgfile" # func_append var value # Append VALUE to the end of shell variable VAR. func_append () { eval "$1=\$$1\$2" } _LT_EOF ;; esac sed -n '/^# Generated shell functions inserted here/,$p' "$ltmain" >> "$cfgfile" \ || (rm -f "$cfgfile"; exit 1) mv -f "$cfgfile" "$ofile" || (rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile") chmod +x "$ofile" ;; "default-1":C) case "$CONFIG_FILES" in *po/Makefile.in*) sed -e "/POTFILES =/r po/POTFILES" po/Makefile.in > po/Makefile esac ;; "po/stamp-it":C) if ! grep "^# INTLTOOL_MAKEFILE$" "po/Makefile.in" > /dev/null ; then as_fn_error "po/Makefile.in.in was not created by intltoolize." "$LINENO" 5 fi rm -f "po/stamp-it" "po/stamp-it.tmp" "po/POTFILES" "po/Makefile.tmp" >"po/stamp-it.tmp" sed '/^#/d s/^[[].*] *// /^[ ]*$/d '"s|^| $ac_top_srcdir/|" \ "$srcdir/po/POTFILES.in" | sed '$!s/$/ \\/' >"po/POTFILES" sed '/^POTFILES =/,/[^\\]$/ { /^POTFILES =/!d r po/POTFILES } ' "po/Makefile.in" >"po/Makefile" rm -f "po/Makefile.tmp" mv "po/stamp-it.tmp" "po/stamp-it" ;; esac done # for ac_tag as_fn_exit 0 _ACEOF ac_clean_files=$ac_clean_files_save test $ac_write_fail = 0 || as_fn_error "write failure creating $CONFIG_STATUS" "$LINENO" 5 # configure is writing to config.log, and then calls config.status. # config.status does its own redirection, appending to config.log. # Unfortunately, on DOS this fails, as config.log is still kept open # by configure, so config.status won't be able to write to it; its # output is simply discarded. So we exec the FD to /dev/null, # effectively closing config.log, so it can be properly (re)opened and # appended to by config.status. When coming back to configure, we # need to make the FD available again. if test "$no_create" != yes; then ac_cs_success=: ac_config_status_args= test "$silent" = yes && ac_config_status_args="$ac_config_status_args --quiet" exec 5>/dev/null $SHELL $CONFIG_STATUS $ac_config_status_args || ac_cs_success=false exec 5>>config.log # Use ||, not &&, to avoid exiting from the if with $? = 1, which # would make configure fail if this is the last instruction. $ac_cs_success || as_fn_exit $? fi if test -n "$ac_unrecognized_opts" && test "$enable_option_checking" != no; then { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: unrecognized options: $ac_unrecognized_opts" >&5 $as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2;} fi libbonoboui-2.24.5/config.guess0000755000076400007640000012761511546334700013377 00000000000000#! /bin/sh # Attempt to guess a canonical system name. # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, # 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009 # Free Software Foundation, Inc. timestamp='2009-11-20' # This file is free software; you can redistribute it and/or modify it # under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, but # WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU # General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software # Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA # 02110-1301, USA. # # As a special exception to the GNU General Public License, if you # distribute this file as part of a program that contains a # configuration script generated by Autoconf, you may include it under # the same distribution terms that you use for the rest of that program. # Originally written by Per Bothner. Please send patches (context # diff format) to and include a ChangeLog # entry. # # This script attempts to guess a canonical system name similar to # config.sub. If it succeeds, it prints the system name on stdout, and # exits with 0. Otherwise, it exits with 1. # # You can get the latest version of this script from: # http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD me=`echo "$0" | sed -e 's,.*/,,'` usage="\ Usage: $0 [OPTION] Output the configuration name of the system \`$me' is run on. Operation modes: -h, --help print this help, then exit -t, --time-stamp print date of last modification, then exit -v, --version print version number, then exit Report bugs and patches to ." version="\ GNU config.guess ($timestamp) Originally written by Per Bothner. Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." help=" Try \`$me --help' for more information." # Parse command line while test $# -gt 0 ; do case $1 in --time-stamp | --time* | -t ) echo "$timestamp" ; exit ;; --version | -v ) echo "$version" ; exit ;; --help | --h* | -h ) echo "$usage"; exit ;; -- ) # Stop option processing shift; break ;; - ) # Use stdin as input. break ;; -* ) echo "$me: invalid option $1$help" >&2 exit 1 ;; * ) break ;; esac done if test $# != 0; then echo "$me: too many arguments$help" >&2 exit 1 fi trap 'exit 1' 1 2 15 # CC_FOR_BUILD -- compiler used by this script. Note that the use of a # compiler to aid in system detection is discouraged as it requires # temporary files to be created and, as you can see below, it is a # headache to deal with in a portable fashion. # Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still # use `HOST_CC' if defined, but it is deprecated. # Portable tmp directory creation inspired by the Autoconf team. set_cc_for_build=' trap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ; trap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ; : ${TMPDIR=/tmp} ; { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } || { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } || { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } || { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ; dummy=$tmp/dummy ; tmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ; case $CC_FOR_BUILD,$HOST_CC,$CC in ,,) echo "int x;" > $dummy.c ; for c in cc gcc c89 c99 ; do if ($c -c -o $dummy.o $dummy.c) >/dev/null 2>&1 ; then CC_FOR_BUILD="$c"; break ; fi ; done ; if test x"$CC_FOR_BUILD" = x ; then CC_FOR_BUILD=no_compiler_found ; fi ;; ,,*) CC_FOR_BUILD=$CC ;; ,*,*) CC_FOR_BUILD=$HOST_CC ;; esac ; set_cc_for_build= ;' # This is needed to find uname on a Pyramid OSx when run in the BSD universe. # (ghazi@noc.rutgers.edu 1994-08-24) if (test -f /.attbin/uname) >/dev/null 2>&1 ; then PATH=$PATH:/.attbin ; export PATH fi UNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown UNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown UNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown # Note: order is significant - the case branches are not exclusive. case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in *:NetBSD:*:*) # NetBSD (nbsd) targets should (where applicable) match one or # more of the tupples: *-*-netbsdelf*, *-*-netbsdaout*, # *-*-netbsdecoff* and *-*-netbsd*. For targets that recently # switched to ELF, *-*-netbsd* would select the old # object file format. This provides both forward # compatibility and a consistent mechanism for selecting the # object file format. # # Note: NetBSD doesn't particularly care about the vendor # portion of the name. We always set it to "unknown". sysctl="sysctl -n hw.machine_arch" UNAME_MACHINE_ARCH=`(/sbin/$sysctl 2>/dev/null || \ /usr/sbin/$sysctl 2>/dev/null || echo unknown)` case "${UNAME_MACHINE_ARCH}" in armeb) machine=armeb-unknown ;; arm*) machine=arm-unknown ;; sh3el) machine=shl-unknown ;; sh3eb) machine=sh-unknown ;; sh5el) machine=sh5le-unknown ;; *) machine=${UNAME_MACHINE_ARCH}-unknown ;; esac # The Operating System including object format, if it has switched # to ELF recently, or will in the future. case "${UNAME_MACHINE_ARCH}" in arm*|i386|m68k|ns32k|sh3*|sparc|vax) eval $set_cc_for_build if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \ | grep -q __ELF__ then # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout). # Return netbsd for either. FIX? os=netbsd else os=netbsdelf fi ;; *) os=netbsd ;; esac # The OS release # Debian GNU/NetBSD machines have a different userland, and # thus, need a distinct triplet. However, they do not need # kernel version information, so it can be replaced with a # suitable tag, in the style of linux-gnu. case "${UNAME_VERSION}" in Debian*) release='-gnu' ;; *) release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'` ;; esac # Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM: # contains redundant information, the shorter form: # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used. echo "${machine}-${os}${release}" exit ;; *:OpenBSD:*:*) UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'` echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE} exit ;; *:ekkoBSD:*:*) echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE} exit ;; *:SolidBSD:*:*) echo ${UNAME_MACHINE}-unknown-solidbsd${UNAME_RELEASE} exit ;; macppc:MirBSD:*:*) echo powerpc-unknown-mirbsd${UNAME_RELEASE} exit ;; *:MirBSD:*:*) echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE} exit ;; alpha:OSF1:*:*) case $UNAME_RELEASE in *4.0) UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'` ;; *5.*) UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'` ;; esac # According to Compaq, /usr/sbin/psrinfo has been available on # OSF/1 and Tru64 systems produced since 1995. I hope that # covers most systems running today. This code pipes the CPU # types through head -n 1, so we only detect the type of CPU 0. ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^ The alpha \(.*\) processor.*$/\1/p' | head -n 1` case "$ALPHA_CPU_TYPE" in "EV4 (21064)") UNAME_MACHINE="alpha" ;; "EV4.5 (21064)") UNAME_MACHINE="alpha" ;; "LCA4 (21066/21068)") UNAME_MACHINE="alpha" ;; "EV5 (21164)") UNAME_MACHINE="alphaev5" ;; "EV5.6 (21164A)") UNAME_MACHINE="alphaev56" ;; "EV5.6 (21164PC)") UNAME_MACHINE="alphapca56" ;; "EV5.7 (21164PC)") UNAME_MACHINE="alphapca57" ;; "EV6 (21264)") UNAME_MACHINE="alphaev6" ;; "EV6.7 (21264A)") UNAME_MACHINE="alphaev67" ;; "EV6.8CB (21264C)") UNAME_MACHINE="alphaev68" ;; "EV6.8AL (21264B)") UNAME_MACHINE="alphaev68" ;; "EV6.8CX (21264D)") UNAME_MACHINE="alphaev68" ;; "EV6.9A (21264/EV69A)") UNAME_MACHINE="alphaev69" ;; "EV7 (21364)") UNAME_MACHINE="alphaev7" ;; "EV7.9 (21364A)") UNAME_MACHINE="alphaev79" ;; esac # A Pn.n version is a patched version. # A Vn.n version is a released version. # A Tn.n version is a released field test version. # A Xn.n version is an unreleased experimental baselevel. # 1.2 uses "1.2" for uname -r. echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` exit ;; Alpha\ *:Windows_NT*:*) # How do we know it's Interix rather than the generic POSIX subsystem? # Should we change UNAME_MACHINE based on the output of uname instead # of the specific Alpha model? echo alpha-pc-interix exit ;; 21064:Windows_NT:50:3) echo alpha-dec-winnt3.5 exit ;; Amiga*:UNIX_System_V:4.0:*) echo m68k-unknown-sysv4 exit ;; *:[Aa]miga[Oo][Ss]:*:*) echo ${UNAME_MACHINE}-unknown-amigaos exit ;; *:[Mm]orph[Oo][Ss]:*:*) echo ${UNAME_MACHINE}-unknown-morphos exit ;; *:OS/390:*:*) echo i370-ibm-openedition exit ;; *:z/VM:*:*) echo s390-ibm-zvmoe exit ;; *:OS400:*:*) echo powerpc-ibm-os400 exit ;; arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*) echo arm-acorn-riscix${UNAME_RELEASE} exit ;; arm:riscos:*:*|arm:RISCOS:*:*) echo arm-unknown-riscos exit ;; SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*) echo hppa1.1-hitachi-hiuxmpp exit ;; Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*) # akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE. if test "`(/bin/universe) 2>/dev/null`" = att ; then echo pyramid-pyramid-sysv3 else echo pyramid-pyramid-bsd fi exit ;; NILE*:*:*:dcosx) echo pyramid-pyramid-svr4 exit ;; DRS?6000:unix:4.0:6*) echo sparc-icl-nx6 exit ;; DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*) case `/usr/bin/uname -p` in sparc) echo sparc-icl-nx7; exit ;; esac ;; s390x:SunOS:*:*) echo ${UNAME_MACHINE}-ibm-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` exit ;; sun4H:SunOS:5.*:*) echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` exit ;; sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*) echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` exit ;; i86pc:AuroraUX:5.*:* | i86xen:AuroraUX:5.*:*) echo i386-pc-auroraux${UNAME_RELEASE} exit ;; i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*) eval $set_cc_for_build SUN_ARCH="i386" # If there is a compiler, see if it is configured for 64-bit objects. # Note that the Sun cc does not turn __LP64__ into 1 like gcc does. # This test works for both compilers. if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then if (echo '#ifdef __amd64'; echo IS_64BIT_ARCH; echo '#endif') | \ (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \ grep IS_64BIT_ARCH >/dev/null then SUN_ARCH="x86_64" fi fi echo ${SUN_ARCH}-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` exit ;; sun4*:SunOS:6*:*) # According to config.sub, this is the proper way to canonicalize # SunOS6. Hard to guess exactly what SunOS6 will be like, but # it's likely to be more like Solaris than SunOS4. echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` exit ;; sun4*:SunOS:*:*) case "`/usr/bin/arch -k`" in Series*|S4*) UNAME_RELEASE=`uname -v` ;; esac # Japanese Language versions have a version number like `4.1.3-JL'. echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'` exit ;; sun3*:SunOS:*:*) echo m68k-sun-sunos${UNAME_RELEASE} exit ;; sun*:*:4.2BSD:*) UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null` test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3 case "`/bin/arch`" in sun3) echo m68k-sun-sunos${UNAME_RELEASE} ;; sun4) echo sparc-sun-sunos${UNAME_RELEASE} ;; esac exit ;; aushp:SunOS:*:*) echo sparc-auspex-sunos${UNAME_RELEASE} exit ;; # The situation for MiNT is a little confusing. The machine name # can be virtually everything (everything which is not # "atarist" or "atariste" at least should have a processor # > m68000). The system name ranges from "MiNT" over "FreeMiNT" # to the lowercase version "mint" (or "freemint"). Finally # the system name "TOS" denotes a system which is actually not # MiNT. But MiNT is downward compatible to TOS, so this should # be no problem. atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*) echo m68k-atari-mint${UNAME_RELEASE} exit ;; atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*) echo m68k-atari-mint${UNAME_RELEASE} exit ;; *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*) echo m68k-atari-mint${UNAME_RELEASE} exit ;; milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*) echo m68k-milan-mint${UNAME_RELEASE} exit ;; hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*) echo m68k-hades-mint${UNAME_RELEASE} exit ;; *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*) echo m68k-unknown-mint${UNAME_RELEASE} exit ;; m68k:machten:*:*) echo m68k-apple-machten${UNAME_RELEASE} exit ;; powerpc:machten:*:*) echo powerpc-apple-machten${UNAME_RELEASE} exit ;; RISC*:Mach:*:*) echo mips-dec-mach_bsd4.3 exit ;; RISC*:ULTRIX:*:*) echo mips-dec-ultrix${UNAME_RELEASE} exit ;; VAX*:ULTRIX*:*:*) echo vax-dec-ultrix${UNAME_RELEASE} exit ;; 2020:CLIX:*:* | 2430:CLIX:*:*) echo clipper-intergraph-clix${UNAME_RELEASE} exit ;; mips:*:*:UMIPS | mips:*:*:RISCos) eval $set_cc_for_build sed 's/^ //' << EOF >$dummy.c #ifdef __cplusplus #include /* for printf() prototype */ int main (int argc, char *argv[]) { #else int main (argc, argv) int argc; char *argv[]; { #endif #if defined (host_mips) && defined (MIPSEB) #if defined (SYSTYPE_SYSV) printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0); #endif #if defined (SYSTYPE_SVR4) printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0); #endif #if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD) printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0); #endif #endif exit (-1); } EOF $CC_FOR_BUILD -o $dummy $dummy.c && dummyarg=`echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` && SYSTEM_NAME=`$dummy $dummyarg` && { echo "$SYSTEM_NAME"; exit; } echo mips-mips-riscos${UNAME_RELEASE} exit ;; Motorola:PowerMAX_OS:*:*) echo powerpc-motorola-powermax exit ;; Motorola:*:4.3:PL8-*) echo powerpc-harris-powermax exit ;; Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*) echo powerpc-harris-powermax exit ;; Night_Hawk:Power_UNIX:*:*) echo powerpc-harris-powerunix exit ;; m88k:CX/UX:7*:*) echo m88k-harris-cxux7 exit ;; m88k:*:4*:R4*) echo m88k-motorola-sysv4 exit ;; m88k:*:3*:R3*) echo m88k-motorola-sysv3 exit ;; AViiON:dgux:*:*) # DG/UX returns AViiON for all architectures UNAME_PROCESSOR=`/usr/bin/uname -p` if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ] then if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \ [ ${TARGET_BINARY_INTERFACE}x = x ] then echo m88k-dg-dgux${UNAME_RELEASE} else echo m88k-dg-dguxbcs${UNAME_RELEASE} fi else echo i586-dg-dgux${UNAME_RELEASE} fi exit ;; M88*:DolphinOS:*:*) # DolphinOS (SVR3) echo m88k-dolphin-sysv3 exit ;; M88*:*:R3*:*) # Delta 88k system running SVR3 echo m88k-motorola-sysv3 exit ;; XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3) echo m88k-tektronix-sysv3 exit ;; Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD) echo m68k-tektronix-bsd exit ;; *:IRIX*:*:*) echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'` exit ;; ????????:AIX?:[12].1:2) # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX. echo romp-ibm-aix # uname -m gives an 8 hex-code CPU id exit ;; # Note that: echo "'`uname -s`'" gives 'AIX ' i*86:AIX:*:*) echo i386-ibm-aix exit ;; ia64:AIX:*:*) if [ -x /usr/bin/oslevel ] ; then IBM_REV=`/usr/bin/oslevel` else IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE} fi echo ${UNAME_MACHINE}-ibm-aix${IBM_REV} exit ;; *:AIX:2:3) if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then eval $set_cc_for_build sed 's/^ //' << EOF >$dummy.c #include main() { if (!__power_pc()) exit(1); puts("powerpc-ibm-aix3.2.5"); exit(0); } EOF if $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` then echo "$SYSTEM_NAME" else echo rs6000-ibm-aix3.2.5 fi elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then echo rs6000-ibm-aix3.2.4 else echo rs6000-ibm-aix3.2 fi exit ;; *:AIX:*:[456]) IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'` if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then IBM_ARCH=rs6000 else IBM_ARCH=powerpc fi if [ -x /usr/bin/oslevel ] ; then IBM_REV=`/usr/bin/oslevel` else IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE} fi echo ${IBM_ARCH}-ibm-aix${IBM_REV} exit ;; *:AIX:*:*) echo rs6000-ibm-aix exit ;; ibmrt:4.4BSD:*|romp-ibm:BSD:*) echo romp-ibm-bsd4.4 exit ;; ibmrt:*BSD:*|romp-ibm:BSD:*) # covers RT/PC BSD and echo romp-ibm-bsd${UNAME_RELEASE} # 4.3 with uname added to exit ;; # report: romp-ibm BSD 4.3 *:BOSX:*:*) echo rs6000-bull-bosx exit ;; DPX/2?00:B.O.S.:*:*) echo m68k-bull-sysv3 exit ;; 9000/[34]??:4.3bsd:1.*:*) echo m68k-hp-bsd exit ;; hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*) echo m68k-hp-bsd4.4 exit ;; 9000/[34678]??:HP-UX:*:*) HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'` case "${UNAME_MACHINE}" in 9000/31? ) HP_ARCH=m68000 ;; 9000/[34]?? ) HP_ARCH=m68k ;; 9000/[678][0-9][0-9]) if [ -x /usr/bin/getconf ]; then sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null` sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null` case "${sc_cpu_version}" in 523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0 528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1 532) # CPU_PA_RISC2_0 case "${sc_kernel_bits}" in 32) HP_ARCH="hppa2.0n" ;; 64) HP_ARCH="hppa2.0w" ;; '') HP_ARCH="hppa2.0" ;; # HP-UX 10.20 esac ;; esac fi if [ "${HP_ARCH}" = "" ]; then eval $set_cc_for_build sed 's/^ //' << EOF >$dummy.c #define _HPUX_SOURCE #include #include int main () { #if defined(_SC_KERNEL_BITS) long bits = sysconf(_SC_KERNEL_BITS); #endif long cpu = sysconf (_SC_CPU_VERSION); switch (cpu) { case CPU_PA_RISC1_0: puts ("hppa1.0"); break; case CPU_PA_RISC1_1: puts ("hppa1.1"); break; case CPU_PA_RISC2_0: #if defined(_SC_KERNEL_BITS) switch (bits) { case 64: puts ("hppa2.0w"); break; case 32: puts ("hppa2.0n"); break; default: puts ("hppa2.0"); break; } break; #else /* !defined(_SC_KERNEL_BITS) */ puts ("hppa2.0"); break; #endif default: puts ("hppa1.0"); break; } exit (0); } EOF (CCOPTS= $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy` test -z "$HP_ARCH" && HP_ARCH=hppa fi ;; esac if [ ${HP_ARCH} = "hppa2.0w" ] then eval $set_cc_for_build # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating # 32-bit code. hppa64-hp-hpux* has the same kernel and a compiler # generating 64-bit code. GNU and HP use different nomenclature: # # $ CC_FOR_BUILD=cc ./config.guess # => hppa2.0w-hp-hpux11.23 # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess # => hppa64-hp-hpux11.23 if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | grep -q __LP64__ then HP_ARCH="hppa2.0w" else HP_ARCH="hppa64" fi fi echo ${HP_ARCH}-hp-hpux${HPUX_REV} exit ;; ia64:HP-UX:*:*) HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'` echo ia64-hp-hpux${HPUX_REV} exit ;; 3050*:HI-UX:*:*) eval $set_cc_for_build sed 's/^ //' << EOF >$dummy.c #include int main () { long cpu = sysconf (_SC_CPU_VERSION); /* The order matters, because CPU_IS_HP_MC68K erroneously returns true for CPU_PA_RISC1_0. CPU_IS_PA_RISC returns correct results, however. */ if (CPU_IS_PA_RISC (cpu)) { switch (cpu) { case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break; case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break; case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break; default: puts ("hppa-hitachi-hiuxwe2"); break; } } else if (CPU_IS_HP_MC68K (cpu)) puts ("m68k-hitachi-hiuxwe2"); else puts ("unknown-hitachi-hiuxwe2"); exit (0); } EOF $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` && { echo "$SYSTEM_NAME"; exit; } echo unknown-hitachi-hiuxwe2 exit ;; 9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* ) echo hppa1.1-hp-bsd exit ;; 9000/8??:4.3bsd:*:*) echo hppa1.0-hp-bsd exit ;; *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*) echo hppa1.0-hp-mpeix exit ;; hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* ) echo hppa1.1-hp-osf exit ;; hp8??:OSF1:*:*) echo hppa1.0-hp-osf exit ;; i*86:OSF1:*:*) if [ -x /usr/sbin/sysversion ] ; then echo ${UNAME_MACHINE}-unknown-osf1mk else echo ${UNAME_MACHINE}-unknown-osf1 fi exit ;; parisc*:Lites*:*:*) echo hppa1.1-hp-lites exit ;; C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*) echo c1-convex-bsd exit ;; C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*) if getsysinfo -f scalar_acc then echo c32-convex-bsd else echo c2-convex-bsd fi exit ;; C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*) echo c34-convex-bsd exit ;; C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*) echo c38-convex-bsd exit ;; C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*) echo c4-convex-bsd exit ;; CRAY*Y-MP:*:*:*) echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' exit ;; CRAY*[A-Z]90:*:*:*) echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \ | sed -e 's/CRAY.*\([A-Z]90\)/\1/' \ -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \ -e 's/\.[^.]*$/.X/' exit ;; CRAY*TS:*:*:*) echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' exit ;; CRAY*T3E:*:*:*) echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' exit ;; CRAY*SV1:*:*:*) echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' exit ;; *:UNICOS/mp:*:*) echo craynv-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' exit ;; F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*) FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'` FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'` echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" exit ;; 5000:UNIX_System_V:4.*:*) FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'` FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'` echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" exit ;; i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*) echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE} exit ;; sparc*:BSD/OS:*:*) echo sparc-unknown-bsdi${UNAME_RELEASE} exit ;; *:BSD/OS:*:*) echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE} exit ;; *:FreeBSD:*:*) case ${UNAME_MACHINE} in pc98) echo i386-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;; amd64) echo x86_64-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;; *) echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;; esac exit ;; i*:CYGWIN*:*) echo ${UNAME_MACHINE}-pc-cygwin exit ;; *:MINGW*:*) echo ${UNAME_MACHINE}-pc-mingw32 exit ;; i*:windows32*:*) # uname -m includes "-pc" on this system. echo ${UNAME_MACHINE}-mingw32 exit ;; i*:PW*:*) echo ${UNAME_MACHINE}-pc-pw32 exit ;; *:Interix*:*) case ${UNAME_MACHINE} in x86) echo i586-pc-interix${UNAME_RELEASE} exit ;; authenticamd | genuineintel | EM64T) echo x86_64-unknown-interix${UNAME_RELEASE} exit ;; IA64) echo ia64-unknown-interix${UNAME_RELEASE} exit ;; esac ;; [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*) echo i${UNAME_MACHINE}-pc-mks exit ;; 8664:Windows_NT:*) echo x86_64-pc-mks exit ;; i*:Windows_NT*:* | Pentium*:Windows_NT*:*) # How do we know it's Interix rather than the generic POSIX subsystem? # It also conflicts with pre-2.0 versions of AT&T UWIN. Should we # UNAME_MACHINE based on the output of uname instead of i386? echo i586-pc-interix exit ;; i*:UWIN*:*) echo ${UNAME_MACHINE}-pc-uwin exit ;; amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*) echo x86_64-unknown-cygwin exit ;; p*:CYGWIN*:*) echo powerpcle-unknown-cygwin exit ;; prep*:SunOS:5.*:*) echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` exit ;; *:GNU:*:*) # the GNU system echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'` exit ;; *:GNU/*:*:*) # other systems with GNU libc and userland echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-gnu exit ;; i*86:Minix:*:*) echo ${UNAME_MACHINE}-pc-minix exit ;; alpha:Linux:*:*) case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in EV5) UNAME_MACHINE=alphaev5 ;; EV56) UNAME_MACHINE=alphaev56 ;; PCA56) UNAME_MACHINE=alphapca56 ;; PCA57) UNAME_MACHINE=alphapca56 ;; EV6) UNAME_MACHINE=alphaev6 ;; EV67) UNAME_MACHINE=alphaev67 ;; EV68*) UNAME_MACHINE=alphaev68 ;; esac objdump --private-headers /bin/sh | grep -q ld.so.1 if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC} exit ;; arm*:Linux:*:*) eval $set_cc_for_build if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \ | grep -q __ARM_EABI__ then echo ${UNAME_MACHINE}-unknown-linux-gnu else echo ${UNAME_MACHINE}-unknown-linux-gnueabi fi exit ;; avr32*:Linux:*:*) echo ${UNAME_MACHINE}-unknown-linux-gnu exit ;; cris:Linux:*:*) echo cris-axis-linux-gnu exit ;; crisv32:Linux:*:*) echo crisv32-axis-linux-gnu exit ;; frv:Linux:*:*) echo frv-unknown-linux-gnu exit ;; i*86:Linux:*:*) LIBC=gnu eval $set_cc_for_build sed 's/^ //' << EOF >$dummy.c #ifdef __dietlibc__ LIBC=dietlibc #endif EOF eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^LIBC'` echo "${UNAME_MACHINE}-pc-linux-${LIBC}" exit ;; ia64:Linux:*:*) echo ${UNAME_MACHINE}-unknown-linux-gnu exit ;; m32r*:Linux:*:*) echo ${UNAME_MACHINE}-unknown-linux-gnu exit ;; m68*:Linux:*:*) echo ${UNAME_MACHINE}-unknown-linux-gnu exit ;; mips:Linux:*:* | mips64:Linux:*:*) eval $set_cc_for_build sed 's/^ //' << EOF >$dummy.c #undef CPU #undef ${UNAME_MACHINE} #undef ${UNAME_MACHINE}el #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL) CPU=${UNAME_MACHINE}el #else #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB) CPU=${UNAME_MACHINE} #else CPU= #endif #endif EOF eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^CPU'` test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; } ;; or32:Linux:*:*) echo or32-unknown-linux-gnu exit ;; padre:Linux:*:*) echo sparc-unknown-linux-gnu exit ;; parisc64:Linux:*:* | hppa64:Linux:*:*) echo hppa64-unknown-linux-gnu exit ;; parisc:Linux:*:* | hppa:Linux:*:*) # Look for CPU level case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in PA7*) echo hppa1.1-unknown-linux-gnu ;; PA8*) echo hppa2.0-unknown-linux-gnu ;; *) echo hppa-unknown-linux-gnu ;; esac exit ;; ppc64:Linux:*:*) echo powerpc64-unknown-linux-gnu exit ;; ppc:Linux:*:*) echo powerpc-unknown-linux-gnu exit ;; s390:Linux:*:* | s390x:Linux:*:*) echo ${UNAME_MACHINE}-ibm-linux exit ;; sh64*:Linux:*:*) echo ${UNAME_MACHINE}-unknown-linux-gnu exit ;; sh*:Linux:*:*) echo ${UNAME_MACHINE}-unknown-linux-gnu exit ;; sparc:Linux:*:* | sparc64:Linux:*:*) echo ${UNAME_MACHINE}-unknown-linux-gnu exit ;; vax:Linux:*:*) echo ${UNAME_MACHINE}-dec-linux-gnu exit ;; x86_64:Linux:*:*) echo x86_64-unknown-linux-gnu exit ;; xtensa*:Linux:*:*) echo ${UNAME_MACHINE}-unknown-linux-gnu exit ;; i*86:DYNIX/ptx:4*:*) # ptx 4.0 does uname -s correctly, with DYNIX/ptx in there. # earlier versions are messed up and put the nodename in both # sysname and nodename. echo i386-sequent-sysv4 exit ;; i*86:UNIX_SV:4.2MP:2.*) # Unixware is an offshoot of SVR4, but it has its own version # number series starting with 2... # I am not positive that other SVR4 systems won't match this, # I just have to hope. -- rms. # Use sysv4.2uw... so that sysv4* matches it. echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION} exit ;; i*86:OS/2:*:*) # If we were able to find `uname', then EMX Unix compatibility # is probably installed. echo ${UNAME_MACHINE}-pc-os2-emx exit ;; i*86:XTS-300:*:STOP) echo ${UNAME_MACHINE}-unknown-stop exit ;; i*86:atheos:*:*) echo ${UNAME_MACHINE}-unknown-atheos exit ;; i*86:syllable:*:*) echo ${UNAME_MACHINE}-pc-syllable exit ;; i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.[02]*:*) echo i386-unknown-lynxos${UNAME_RELEASE} exit ;; i*86:*DOS:*:*) echo ${UNAME_MACHINE}-pc-msdosdjgpp exit ;; i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*) UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'` if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL} else echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL} fi exit ;; i*86:*:5:[678]*) # UnixWare 7.x, OpenUNIX and OpenServer 6. case `/bin/uname -X | grep "^Machine"` in *486*) UNAME_MACHINE=i486 ;; *Pentium) UNAME_MACHINE=i586 ;; *Pent*|*Celeron) UNAME_MACHINE=i686 ;; esac echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION} exit ;; i*86:*:3.2:*) if test -f /usr/options/cb.name; then UNAME_REL=`sed -n 's/.*Version //p' /dev/null >/dev/null ; then UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')` (/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486 (/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \ && UNAME_MACHINE=i586 (/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \ && UNAME_MACHINE=i686 (/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \ && UNAME_MACHINE=i686 echo ${UNAME_MACHINE}-pc-sco$UNAME_REL else echo ${UNAME_MACHINE}-pc-sysv32 fi exit ;; pc:*:*:*) # Left here for compatibility: # uname -m prints for DJGPP always 'pc', but it prints nothing about # the processor, so we play safe by assuming i586. # Note: whatever this is, it MUST be the same as what config.sub # prints for the "djgpp" host, or else GDB configury will decide that # this is a cross-build. echo i586-pc-msdosdjgpp exit ;; Intel:Mach:3*:*) echo i386-pc-mach3 exit ;; paragon:*:*:*) echo i860-intel-osf1 exit ;; i860:*:4.*:*) # i860-SVR4 if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4 else # Add other i860-SVR4 vendors below as they are discovered. echo i860-unknown-sysv${UNAME_RELEASE} # Unknown i860-SVR4 fi exit ;; mini*:CTIX:SYS*5:*) # "miniframe" echo m68010-convergent-sysv exit ;; mc68k:UNIX:SYSTEM5:3.51m) echo m68k-convergent-sysv exit ;; M680?0:D-NIX:5.3:*) echo m68k-diab-dnix exit ;; M68*:*:R3V[5678]*:*) test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;; 3[345]??:*:4.0:3.0 | 3[34]??A:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 3[34]??/*:*:4.0:3.0 | 4400:*:4.0:3.0 | 4850:*:4.0:3.0 | SKA40:*:4.0:3.0 | SDS2:*:4.0:3.0 | SHG2:*:4.0:3.0 | S7501*:*:4.0:3.0) OS_REL='' test -r /etc/.relid \ && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid` /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ && { echo i486-ncr-sysv4.3${OS_REL}; exit; } /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \ && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;; 3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*) /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ && { echo i486-ncr-sysv4; exit; } ;; NCR*:*:4.2:* | MPRAS*:*:4.2:*) OS_REL='.3' test -r /etc/.relid \ && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid` /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ && { echo i486-ncr-sysv4.3${OS_REL}; exit; } /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \ && { echo i586-ncr-sysv4.3${OS_REL}; exit; } /bin/uname -p 2>/dev/null | /bin/grep pteron >/dev/null \ && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;; m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*) echo m68k-unknown-lynxos${UNAME_RELEASE} exit ;; mc68030:UNIX_System_V:4.*:*) echo m68k-atari-sysv4 exit ;; TSUNAMI:LynxOS:2.*:*) echo sparc-unknown-lynxos${UNAME_RELEASE} exit ;; rs6000:LynxOS:2.*:*) echo rs6000-unknown-lynxos${UNAME_RELEASE} exit ;; PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.[02]*:*) echo powerpc-unknown-lynxos${UNAME_RELEASE} exit ;; SM[BE]S:UNIX_SV:*:*) echo mips-dde-sysv${UNAME_RELEASE} exit ;; RM*:ReliantUNIX-*:*:*) echo mips-sni-sysv4 exit ;; RM*:SINIX-*:*:*) echo mips-sni-sysv4 exit ;; *:SINIX-*:*:*) if uname -p 2>/dev/null >/dev/null ; then UNAME_MACHINE=`(uname -p) 2>/dev/null` echo ${UNAME_MACHINE}-sni-sysv4 else echo ns32k-sni-sysv fi exit ;; PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort # says echo i586-unisys-sysv4 exit ;; *:UNIX_System_V:4*:FTX*) # From Gerald Hewes . # How about differentiating between stratus architectures? -djm echo hppa1.1-stratus-sysv4 exit ;; *:*:*:FTX*) # From seanf@swdc.stratus.com. echo i860-stratus-sysv4 exit ;; i*86:VOS:*:*) # From Paul.Green@stratus.com. echo ${UNAME_MACHINE}-stratus-vos exit ;; *:VOS:*:*) # From Paul.Green@stratus.com. echo hppa1.1-stratus-vos exit ;; mc68*:A/UX:*:*) echo m68k-apple-aux${UNAME_RELEASE} exit ;; news*:NEWS-OS:6*:*) echo mips-sony-newsos6 exit ;; R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*) if [ -d /usr/nec ]; then echo mips-nec-sysv${UNAME_RELEASE} else echo mips-unknown-sysv${UNAME_RELEASE} fi exit ;; BeBox:BeOS:*:*) # BeOS running on hardware made by Be, PPC only. echo powerpc-be-beos exit ;; BeMac:BeOS:*:*) # BeOS running on Mac or Mac clone, PPC only. echo powerpc-apple-beos exit ;; BePC:BeOS:*:*) # BeOS running on Intel PC compatible. echo i586-pc-beos exit ;; BePC:Haiku:*:*) # Haiku running on Intel PC compatible. echo i586-pc-haiku exit ;; SX-4:SUPER-UX:*:*) echo sx4-nec-superux${UNAME_RELEASE} exit ;; SX-5:SUPER-UX:*:*) echo sx5-nec-superux${UNAME_RELEASE} exit ;; SX-6:SUPER-UX:*:*) echo sx6-nec-superux${UNAME_RELEASE} exit ;; SX-7:SUPER-UX:*:*) echo sx7-nec-superux${UNAME_RELEASE} exit ;; SX-8:SUPER-UX:*:*) echo sx8-nec-superux${UNAME_RELEASE} exit ;; SX-8R:SUPER-UX:*:*) echo sx8r-nec-superux${UNAME_RELEASE} exit ;; Power*:Rhapsody:*:*) echo powerpc-apple-rhapsody${UNAME_RELEASE} exit ;; *:Rhapsody:*:*) echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE} exit ;; *:Darwin:*:*) UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown case $UNAME_PROCESSOR in i386) eval $set_cc_for_build if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \ (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \ grep IS_64BIT_ARCH >/dev/null then UNAME_PROCESSOR="x86_64" fi fi ;; unknown) UNAME_PROCESSOR=powerpc ;; esac echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE} exit ;; *:procnto*:*:* | *:QNX:[0123456789]*:*) UNAME_PROCESSOR=`uname -p` if test "$UNAME_PROCESSOR" = "x86"; then UNAME_PROCESSOR=i386 UNAME_MACHINE=pc fi echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE} exit ;; *:QNX:*:4*) echo i386-pc-qnx exit ;; NSE-?:NONSTOP_KERNEL:*:*) echo nse-tandem-nsk${UNAME_RELEASE} exit ;; NSR-?:NONSTOP_KERNEL:*:*) echo nsr-tandem-nsk${UNAME_RELEASE} exit ;; *:NonStop-UX:*:*) echo mips-compaq-nonstopux exit ;; BS2000:POSIX*:*:*) echo bs2000-siemens-sysv exit ;; DS/*:UNIX_System_V:*:*) echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE} exit ;; *:Plan9:*:*) # "uname -m" is not consistent, so use $cputype instead. 386 # is converted to i386 for consistency with other x86 # operating systems. if test "$cputype" = "386"; then UNAME_MACHINE=i386 else UNAME_MACHINE="$cputype" fi echo ${UNAME_MACHINE}-unknown-plan9 exit ;; *:TOPS-10:*:*) echo pdp10-unknown-tops10 exit ;; *:TENEX:*:*) echo pdp10-unknown-tenex exit ;; KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*) echo pdp10-dec-tops20 exit ;; XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*) echo pdp10-xkl-tops20 exit ;; *:TOPS-20:*:*) echo pdp10-unknown-tops20 exit ;; *:ITS:*:*) echo pdp10-unknown-its exit ;; SEI:*:*:SEIUX) echo mips-sei-seiux${UNAME_RELEASE} exit ;; *:DragonFly:*:*) echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` exit ;; *:*VMS:*:*) UNAME_MACHINE=`(uname -p) 2>/dev/null` case "${UNAME_MACHINE}" in A*) echo alpha-dec-vms ; exit ;; I*) echo ia64-dec-vms ; exit ;; V*) echo vax-dec-vms ; exit ;; esac ;; *:XENIX:*:SysV) echo i386-pc-xenix exit ;; i*86:skyos:*:*) echo ${UNAME_MACHINE}-pc-skyos`echo ${UNAME_RELEASE}` | sed -e 's/ .*$//' exit ;; i*86:rdos:*:*) echo ${UNAME_MACHINE}-pc-rdos exit ;; i*86:AROS:*:*) echo ${UNAME_MACHINE}-pc-aros exit ;; esac #echo '(No uname command or uname output not recognized.)' 1>&2 #echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2 eval $set_cc_for_build cat >$dummy.c < # include #endif main () { #if defined (sony) #if defined (MIPSEB) /* BFD wants "bsd" instead of "newsos". Perhaps BFD should be changed, I don't know.... */ printf ("mips-sony-bsd\n"); exit (0); #else #include printf ("m68k-sony-newsos%s\n", #ifdef NEWSOS4 "4" #else "" #endif ); exit (0); #endif #endif #if defined (__arm) && defined (__acorn) && defined (__unix) printf ("arm-acorn-riscix\n"); exit (0); #endif #if defined (hp300) && !defined (hpux) printf ("m68k-hp-bsd\n"); exit (0); #endif #if defined (NeXT) #if !defined (__ARCHITECTURE__) #define __ARCHITECTURE__ "m68k" #endif int version; version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`; if (version < 4) printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version); else printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version); exit (0); #endif #if defined (MULTIMAX) || defined (n16) #if defined (UMAXV) printf ("ns32k-encore-sysv\n"); exit (0); #else #if defined (CMU) printf ("ns32k-encore-mach\n"); exit (0); #else printf ("ns32k-encore-bsd\n"); exit (0); #endif #endif #endif #if defined (__386BSD__) printf ("i386-pc-bsd\n"); exit (0); #endif #if defined (sequent) #if defined (i386) printf ("i386-sequent-dynix\n"); exit (0); #endif #if defined (ns32000) printf ("ns32k-sequent-dynix\n"); exit (0); #endif #endif #if defined (_SEQUENT_) struct utsname un; uname(&un); if (strncmp(un.version, "V2", 2) == 0) { printf ("i386-sequent-ptx2\n"); exit (0); } if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */ printf ("i386-sequent-ptx1\n"); exit (0); } printf ("i386-sequent-ptx\n"); exit (0); #endif #if defined (vax) # if !defined (ultrix) # include # if defined (BSD) # if BSD == 43 printf ("vax-dec-bsd4.3\n"); exit (0); # else # if BSD == 199006 printf ("vax-dec-bsd4.3reno\n"); exit (0); # else printf ("vax-dec-bsd\n"); exit (0); # endif # endif # else printf ("vax-dec-bsd\n"); exit (0); # endif # else printf ("vax-dec-ultrix\n"); exit (0); # endif #endif #if defined (alliant) && defined (i860) printf ("i860-alliant-bsd\n"); exit (0); #endif exit (1); } EOF $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && SYSTEM_NAME=`$dummy` && { echo "$SYSTEM_NAME"; exit; } # Apollos put the system type in the environment. test -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit; } # Convex versions that predate uname can use getsysinfo(1) if [ -x /usr/convex/getsysinfo ] then case `getsysinfo -f cpu_type` in c1*) echo c1-convex-bsd exit ;; c2*) if getsysinfo -f scalar_acc then echo c32-convex-bsd else echo c2-convex-bsd fi exit ;; c34*) echo c34-convex-bsd exit ;; c38*) echo c38-convex-bsd exit ;; c4*) echo c4-convex-bsd exit ;; esac fi cat >&2 < in order to provide the needed information to handle your system. config.guess timestamp = $timestamp uname -m = `(uname -m) 2>/dev/null || echo unknown` uname -r = `(uname -r) 2>/dev/null || echo unknown` uname -s = `(uname -s) 2>/dev/null || echo unknown` uname -v = `(uname -v) 2>/dev/null || echo unknown` /usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null` /bin/uname -X = `(/bin/uname -X) 2>/dev/null` hostinfo = `(hostinfo) 2>/dev/null` /bin/universe = `(/bin/universe) 2>/dev/null` /usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null` /bin/arch = `(/bin/arch) 2>/dev/null` /usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null` /usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null` UNAME_MACHINE = ${UNAME_MACHINE} UNAME_RELEASE = ${UNAME_RELEASE} UNAME_SYSTEM = ${UNAME_SYSTEM} UNAME_VERSION = ${UNAME_VERSION} EOF exit 1 # Local variables: # eval: (add-hook 'write-file-hooks 'time-stamp) # time-stamp-start: "timestamp='" # time-stamp-format: "%:y-%02m-%02d" # time-stamp-end: "'" # End: libbonoboui-2.24.5/MAINTAINERS0000644000076400007640000000032311173072741012536 00000000000000Michael Meeks Email: michael@ximian.com Userid: michael Kjartan Maraas Email: kmaraas@gnome.org Userid: kmaraas Documentation ============= Gustavo Carneiro libbonoboui-2.24.5/gtk-doc.make0000644000076400007640000001567111546334672013254 00000000000000# -*- mode: makefile -*- #################################### # Everything below here is generic # #################################### if GTK_DOC_USE_LIBTOOL GTKDOC_CC = $(LIBTOOL) --tag=CC --mode=compile $(CC) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) GTKDOC_LD = $(LIBTOOL) --tag=CC --mode=link $(CC) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) GTKDOC_RUN = $(LIBTOOL) --mode=execute else GTKDOC_CC = $(CC) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) GTKDOC_LD = $(CC) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) GTKDOC_RUN = endif # We set GPATH here; this gives us semantics for GNU make # which are more like other make's VPATH, when it comes to # whether a source that is a target of one rule is then # searched for in VPATH/GPATH. # GPATH = $(srcdir) TARGET_DIR=$(HTML_DIR)/$(DOC_MODULE) EXTRA_DIST = \ $(content_files) \ $(HTML_IMAGES) \ $(DOC_MAIN_SGML_FILE) \ $(DOC_MODULE)-sections.txt \ $(DOC_MODULE)-overrides.txt DOC_STAMPS=scan-build.stamp tmpl-build.stamp sgml-build.stamp html-build.stamp \ pdf-build.stamp \ $(srcdir)/tmpl.stamp $(srcdir)/sgml.stamp $(srcdir)/html.stamp \ $(srcdir)/pdf.stamp SCANOBJ_FILES = \ $(DOC_MODULE).args \ $(DOC_MODULE).hierarchy \ $(DOC_MODULE).interfaces \ $(DOC_MODULE).prerequisites \ $(DOC_MODULE).signals REPORT_FILES = \ $(DOC_MODULE)-undocumented.txt \ $(DOC_MODULE)-undeclared.txt \ $(DOC_MODULE)-unused.txt CLEANFILES = $(SCANOBJ_FILES) $(REPORT_FILES) $(DOC_STAMPS) if ENABLE_GTK_DOC if GTK_DOC_BUILD_HTML HTML_BUILD_STAMP=html-build.stamp else HTML_BUILD_STAMP= endif if GTK_DOC_BUILD_PDF PDF_BUILD_STAMP=pdf-build.stamp else PDF_BUILD_STAMP= endif all-local: $(HTML_BUILD_STAMP) $(PDF_BUILD_STAMP) else all-local: endif docs: $(HTML_BUILD_STAMP) $(PDF_BUILD_STAMP) $(REPORT_FILES): sgml-build.stamp #### scan #### scan-build.stamp: $(HFILE_GLOB) $(CFILE_GLOB) @echo 'gtk-doc: Scanning header files' @-chmod -R u+w $(srcdir) @_source_dir='' ; for i in $(DOC_SOURCE_DIR) ; do \ _source_dir="$${_source_dir} --source-dir=$$i" ; \ done ; \ cd $(srcdir) && \ gtkdoc-scan --module=$(DOC_MODULE) --ignore-headers="$(IGNORE_HFILES)" $${_source_dir} $(SCAN_OPTIONS) $(EXTRA_HFILES) @if grep -l '^..*$$' $(srcdir)/$(DOC_MODULE).types > /dev/null 2>&1 ; then \ CC="$(GTKDOC_CC)" LD="$(GTKDOC_LD)" RUN="$(GTKDOC_RUN)" CFLAGS="$(GTKDOC_CFLAGS) $(CFLAGS)" LDFLAGS="$(GTKDOC_LIBS) $(LDFLAGS)" gtkdoc-scangobj $(SCANGOBJ_OPTIONS) --module=$(DOC_MODULE) --output-dir=$(srcdir) ; \ else \ cd $(srcdir) ; \ for i in $(SCANOBJ_FILES) ; do \ test -f $$i || touch $$i ; \ done \ fi @touch scan-build.stamp $(DOC_MODULE)-decl.txt $(SCANOBJ_FILES) $(DOC_MODULE)-sections.txt $(DOC_MODULE)-overrides.txt: scan-build.stamp @true #### templates #### tmpl-build.stamp: $(DOC_MODULE)-decl.txt $(SCANOBJ_FILES) $(DOC_MODULE)-sections.txt $(DOC_MODULE)-overrides.txt @echo 'gtk-doc: Rebuilding template files' @-chmod -R u+w $(srcdir) @cd $(srcdir) && gtkdoc-mktmpl --module=$(DOC_MODULE) $(MKTMPL_OPTIONS) @touch tmpl-build.stamp tmpl.stamp: tmpl-build.stamp @true $(srcdir)/tmpl/*.sgml: @true #### xml #### sgml-build.stamp: tmpl.stamp $(DOC_MODULE)-sections.txt $(srcdir)/tmpl/*.sgml $(expand_content_files) @echo 'gtk-doc: Building XML' @-chmod -R u+w $(srcdir) @_source_dir='' ; for i in $(DOC_SOURCE_DIR) ; do \ _source_dir="$${_source_dir} --source-dir=$$i" ; \ done ; \ cd $(srcdir) && \ gtkdoc-mkdb --module=$(DOC_MODULE) --output-format=xml --expand-content-files="$(expand_content_files)" --main-sgml-file=$(DOC_MAIN_SGML_FILE) $${_source_dir} $(MKDB_OPTIONS) @touch sgml-build.stamp sgml.stamp: sgml-build.stamp @true #### html #### html-build.stamp: sgml.stamp $(DOC_MAIN_SGML_FILE) $(content_files) @echo 'gtk-doc: Building HTML' @-chmod -R u+w $(srcdir) @rm -rf $(srcdir)/html @mkdir $(srcdir)/html @mkhtml_options=""; \ gtkdoc-mkhtml 2>&1 --help | grep >/dev/null "\-\-path"; \ if test "$(?)" = "0"; then \ mkhtml_options=--path="$(srcdir)"; \ fi; \ cd $(srcdir)/html && gtkdoc-mkhtml $$mkhtml_options $(MKHTML_OPTIONS) $(DOC_MODULE) ../$(DOC_MAIN_SGML_FILE) @test "x$(HTML_IMAGES)" = "x" || ( cd $(srcdir) && cp $(HTML_IMAGES) html ) @echo 'gtk-doc: Fixing cross-references' @cd $(srcdir) && gtkdoc-fixxref --module=$(DOC_MODULE) --module-dir=html --html-dir=$(HTML_DIR) $(FIXXREF_OPTIONS) @touch html-build.stamp #### pdf #### pdf-build.stamp: sgml.stamp $(DOC_MAIN_SGML_FILE) $(content_files) @echo 'gtk-doc: Building PDF' @-chmod -R u+w $(srcdir) @rm -rf $(srcdir)/$(DOC_MODULE).pdf @mkpdf_imgdirs=""; \ if test "x$(HTML_IMAGES)" != "x"; then \ for img in $(HTML_IMAGES); do \ part=`dirname $$img`; \ echo $$mkpdf_imgdirs | grep >/dev/null "\-\-imgdir=$$part "; \ if test $$? != 0; then \ mkpdf_imgdirs="$$mkpdf_imgdirs --imgdir=$$part"; \ fi; \ done; \ fi; \ cd $(srcdir) && gtkdoc-mkpdf --path="$(abs_srcdir)" $$mkpdf_imgdirs $(DOC_MODULE) $(DOC_MAIN_SGML_FILE) $(MKPDF_OPTIONS) @touch pdf-build.stamp ############## clean-local: rm -f *~ *.bak rm -rf .libs distclean-local: cd $(srcdir) && \ rm -rf xml $(REPORT_FILES) $(DOC_MODULE).pdf \ $(DOC_MODULE)-decl-list.txt $(DOC_MODULE)-decl.txt maintainer-clean-local: clean cd $(srcdir) && rm -rf xml html install-data-local: @installfiles=`echo $(srcdir)/html/*`; \ if test "$$installfiles" = '$(srcdir)/html/*'; \ then echo '-- Nothing to install' ; \ else \ if test -n "$(DOC_MODULE_VERSION)"; then \ installdir="$(DESTDIR)$(TARGET_DIR)-$(DOC_MODULE_VERSION)"; \ else \ installdir="$(DESTDIR)$(TARGET_DIR)"; \ fi; \ $(mkinstalldirs) $${installdir} ; \ for i in $$installfiles; do \ echo '-- Installing '$$i ; \ $(INSTALL_DATA) $$i $${installdir}; \ done; \ if test -n "$(DOC_MODULE_VERSION)"; then \ mv -f $${installdir}/$(DOC_MODULE).devhelp2 \ $${installdir}/$(DOC_MODULE)-$(DOC_MODULE_VERSION).devhelp2; \ mv -f $${installdir}/$(DOC_MODULE).devhelp \ $${installdir}/$(DOC_MODULE)-$(DOC_MODULE_VERSION).devhelp; \ fi; \ $(GTKDOC_REBASE) --relative --dest-dir=$(DESTDIR) --html-dir=$${installdir}; \ fi uninstall-local: @if test -n "$(DOC_MODULE_VERSION)"; then \ installdir="$(DESTDIR)$(TARGET_DIR)-$(DOC_MODULE_VERSION)"; \ else \ installdir="$(DESTDIR)$(TARGET_DIR)"; \ fi; \ rm -rf $${installdir} # # Require gtk-doc when making dist # if ENABLE_GTK_DOC dist-check-gtkdoc: else dist-check-gtkdoc: @echo "*** gtk-doc must be installed and enabled in order to make dist" @false endif dist-hook: dist-check-gtkdoc dist-hook-local mkdir $(distdir)/tmpl mkdir $(distdir)/html -cp $(srcdir)/tmpl/*.sgml $(distdir)/tmpl cp $(srcdir)/html/* $(distdir)/html -cp $(srcdir)/$(DOC_MODULE).pdf $(distdir)/ -cp $(srcdir)/$(DOC_MODULE).types $(distdir)/ -cp $(srcdir)/$(DOC_MODULE)-sections.txt $(distdir)/ cd $(distdir) && rm -f $(DISTCLEANFILES) $(GTKDOC_REBASE) --online --relative --html-dir=$(distdir)/html .PHONY : dist-hook-local docs libbonoboui-2.24.5/libbonoboui-zip.in0000755000076400007640000000172711173072741014510 00000000000000#!/bin/sh # Build zipfiles for libbonoboui on Win32. Separate runtime and # developer ones. Run after make install. ZIP=/tmp/libbonoboui-@VERSION@.zip DEVZIP=/tmp/libbonoboui-dev-@VERSION@.zip cd @prefix@ rm $ZIP zip $ZIP -@ <, 1996 # Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005, 2006, 2007 2008 Free Software Foundation, Inc. # This is free software; see the source for copying conditions. There is NO # warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. # GNU Libtool is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # As a special exception to the GNU General Public License, # if you distribute this file as part of a program or library that # is built using GNU Libtool, you may include this file under the # same distribution terms that you use for the rest of that program. # # GNU Libtool is distributed in the hope that it will be useful, but # WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU # General Public License for more details. # # You should have received a copy of the GNU General Public License # along with GNU Libtool; see the file COPYING. If not, a copy # can be downloaded from http://www.gnu.org/licenses/gpl.html, # or obtained by writing to the Free Software Foundation, Inc., # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. # Usage: $progname [OPTION]... [MODE-ARG]... # # Provide generalized library-building support services. # # --config show all configuration variables # --debug enable verbose shell tracing # -n, --dry-run display commands without modifying any files # --features display basic configuration information and exit # --mode=MODE use operation mode MODE # --preserve-dup-deps don't remove duplicate dependency libraries # --quiet, --silent don't print informational messages # --tag=TAG use configuration variables from tag TAG # -v, --verbose print informational messages (default) # --version print version information # -h, --help print short or long help message # # MODE must be one of the following: # # clean remove files from the build directory # compile compile a source file into a libtool object # execute automatically set library path, then run a program # finish complete the installation of libtool libraries # install install libraries or executables # link create a library or an executable # uninstall remove libraries from an installed directory # # MODE-ARGS vary depending on the MODE. # Try `$progname --help --mode=MODE' for a more detailed description of MODE. # # When reporting a bug, please describe a test case to reproduce it and # include the following information: # # host-triplet: $host # shell: $SHELL # compiler: $LTCC # compiler flags: $LTCFLAGS # linker: $LD (gnu? $with_gnu_ld) # $progname: (GNU libtool) 2.2.6b # automake: $automake_version # autoconf: $autoconf_version # # Report bugs to . PROGRAM=ltmain.sh PACKAGE=libtool VERSION=2.2.6b TIMESTAMP="" package_revision=1.3017 # Be Bourne compatible if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then emulate sh NULLCMD=: # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which # is contrary to our usage. Disable this feature. alias -g '${1+"$@"}'='"$@"' setopt NO_GLOB_SUBST else case `(set -o) 2>/dev/null` in *posix*) set -o posix;; esac fi BIN_SH=xpg4; export BIN_SH # for Tru64 DUALCASE=1; export DUALCASE # for MKS sh # NLS nuisances: We save the old values to restore during execute mode. # Only set LANG and LC_ALL to C if already set. # These must not be set unconditionally because not all systems understand # e.g. LANG=C (notably SCO). lt_user_locale= lt_safe_locale= for lt_var in LANG LANGUAGE LC_ALL LC_CTYPE LC_COLLATE LC_MESSAGES do eval "if test \"\${$lt_var+set}\" = set; then save_$lt_var=\$$lt_var $lt_var=C export $lt_var lt_user_locale=\"$lt_var=\\\$save_\$lt_var; \$lt_user_locale\" lt_safe_locale=\"$lt_var=C; \$lt_safe_locale\" fi" done $lt_unset CDPATH : ${CP="cp -f"} : ${ECHO="echo"} : ${EGREP="/bin/grep -E"} : ${FGREP="/bin/grep -F"} : ${GREP="/bin/grep"} : ${LN_S="ln -s"} : ${MAKE="make"} : ${MKDIR="mkdir"} : ${MV="mv -f"} : ${RM="rm -f"} : ${SED="/bin/sed"} : ${SHELL="${CONFIG_SHELL-/bin/sh}"} : ${Xsed="$SED -e 1s/^X//"} # Global variables: EXIT_SUCCESS=0 EXIT_FAILURE=1 EXIT_MISMATCH=63 # $? = 63 is used to indicate version mismatch to missing. EXIT_SKIP=77 # $? = 77 is used to indicate a skipped test to automake. exit_status=$EXIT_SUCCESS # Make sure IFS has a sensible default lt_nl=' ' IFS=" $lt_nl" dirname="s,/[^/]*$,," basename="s,^.*/,," # func_dirname_and_basename file append nondir_replacement # perform func_basename and func_dirname in a single function # call: # dirname: Compute the dirname of FILE. If nonempty, # add APPEND to the result, otherwise set result # to NONDIR_REPLACEMENT. # value returned in "$func_dirname_result" # basename: Compute filename of FILE. # value retuned in "$func_basename_result" # Implementation must be kept synchronized with func_dirname # and func_basename. For efficiency, we do not delegate to # those functions but instead duplicate the functionality here. func_dirname_and_basename () { # Extract subdirectory from the argument. func_dirname_result=`$ECHO "X${1}" | $Xsed -e "$dirname"` if test "X$func_dirname_result" = "X${1}"; then func_dirname_result="${3}" else func_dirname_result="$func_dirname_result${2}" fi func_basename_result=`$ECHO "X${1}" | $Xsed -e "$basename"` } # Generated shell functions inserted here. # Work around backward compatibility issue on IRIX 6.5. On IRIX 6.4+, sh # is ksh but when the shell is invoked as "sh" and the current value of # the _XPG environment variable is not equal to 1 (one), the special # positional parameter $0, within a function call, is the name of the # function. progpath="$0" # The name of this program: # In the unlikely event $progname began with a '-', it would play havoc with # func_echo (imagine progname=-n), so we prepend ./ in that case: func_dirname_and_basename "$progpath" progname=$func_basename_result case $progname in -*) progname=./$progname ;; esac # Make sure we have an absolute path for reexecution: case $progpath in [\\/]*|[A-Za-z]:\\*) ;; *[\\/]*) progdir=$func_dirname_result progdir=`cd "$progdir" && pwd` progpath="$progdir/$progname" ;; *) save_IFS="$IFS" IFS=: for progdir in $PATH; do IFS="$save_IFS" test -x "$progdir/$progname" && break done IFS="$save_IFS" test -n "$progdir" || progdir=`pwd` progpath="$progdir/$progname" ;; esac # Sed substitution that helps us do robust quoting. It backslashifies # metacharacters that are still active within double-quoted strings. Xsed="${SED}"' -e 1s/^X//' sed_quote_subst='s/\([`"$\\]\)/\\\1/g' # Same as above, but do not quote variable references. double_quote_subst='s/\(["`\\]\)/\\\1/g' # Re-`\' parameter expansions in output of double_quote_subst that were # `\'-ed in input to the same. If an odd number of `\' preceded a '$' # in input to double_quote_subst, that '$' was protected from expansion. # Since each input `\' is now two `\'s, look for any number of runs of # four `\'s followed by two `\'s and then a '$'. `\' that '$'. bs='\\' bs2='\\\\' bs4='\\\\\\\\' dollar='\$' sed_double_backslash="\ s/$bs4/&\\ /g s/^$bs2$dollar/$bs&/ s/\\([^$bs]\\)$bs2$dollar/\\1$bs2$bs$dollar/g s/\n//g" # Standard options: opt_dry_run=false opt_help=false opt_quiet=false opt_verbose=false opt_warning=: # func_echo arg... # Echo program name prefixed message, along with the current mode # name if it has been set yet. func_echo () { $ECHO "$progname${mode+: }$mode: $*" } # func_verbose arg... # Echo program name prefixed message in verbose mode only. func_verbose () { $opt_verbose && func_echo ${1+"$@"} # A bug in bash halts the script if the last line of a function # fails when set -e is in force, so we need another command to # work around that: : } # func_error arg... # Echo program name prefixed message to standard error. func_error () { $ECHO "$progname${mode+: }$mode: "${1+"$@"} 1>&2 } # func_warning arg... # Echo program name prefixed warning message to standard error. func_warning () { $opt_warning && $ECHO "$progname${mode+: }$mode: warning: "${1+"$@"} 1>&2 # bash bug again: : } # func_fatal_error arg... # Echo program name prefixed message to standard error, and exit. func_fatal_error () { func_error ${1+"$@"} exit $EXIT_FAILURE } # func_fatal_help arg... # Echo program name prefixed message to standard error, followed by # a help hint, and exit. func_fatal_help () { func_error ${1+"$@"} func_fatal_error "$help" } help="Try \`$progname --help' for more information." ## default # func_grep expression filename # Check whether EXPRESSION matches any line of FILENAME, without output. func_grep () { $GREP "$1" "$2" >/dev/null 2>&1 } # func_mkdir_p directory-path # Make sure the entire path to DIRECTORY-PATH is available. func_mkdir_p () { my_directory_path="$1" my_dir_list= if test -n "$my_directory_path" && test "$opt_dry_run" != ":"; then # Protect directory names starting with `-' case $my_directory_path in -*) my_directory_path="./$my_directory_path" ;; esac # While some portion of DIR does not yet exist... while test ! -d "$my_directory_path"; do # ...make a list in topmost first order. Use a colon delimited # list incase some portion of path contains whitespace. my_dir_list="$my_directory_path:$my_dir_list" # If the last portion added has no slash in it, the list is done case $my_directory_path in */*) ;; *) break ;; esac # ...otherwise throw away the child directory and loop my_directory_path=`$ECHO "X$my_directory_path" | $Xsed -e "$dirname"` done my_dir_list=`$ECHO "X$my_dir_list" | $Xsed -e 's,:*$,,'` save_mkdir_p_IFS="$IFS"; IFS=':' for my_dir in $my_dir_list; do IFS="$save_mkdir_p_IFS" # mkdir can fail with a `File exist' error if two processes # try to create one of the directories concurrently. Don't # stop in that case! $MKDIR "$my_dir" 2>/dev/null || : done IFS="$save_mkdir_p_IFS" # Bail out if we (or some other process) failed to create a directory. test -d "$my_directory_path" || \ func_fatal_error "Failed to create \`$1'" fi } # func_mktempdir [string] # Make a temporary directory that won't clash with other running # libtool processes, and avoids race conditions if possible. If # given, STRING is the basename for that directory. func_mktempdir () { my_template="${TMPDIR-/tmp}/${1-$progname}" if test "$opt_dry_run" = ":"; then # Return a directory name, but don't create it in dry-run mode my_tmpdir="${my_template}-$$" else # If mktemp works, use that first and foremost my_tmpdir=`mktemp -d "${my_template}-XXXXXXXX" 2>/dev/null` if test ! -d "$my_tmpdir"; then # Failing that, at least try and use $RANDOM to avoid a race my_tmpdir="${my_template}-${RANDOM-0}$$" save_mktempdir_umask=`umask` umask 0077 $MKDIR "$my_tmpdir" umask $save_mktempdir_umask fi # If we're not in dry-run mode, bomb out on failure test -d "$my_tmpdir" || \ func_fatal_error "cannot create temporary directory \`$my_tmpdir'" fi $ECHO "X$my_tmpdir" | $Xsed } # func_quote_for_eval arg # Aesthetically quote ARG to be evaled later. # This function returns two values: FUNC_QUOTE_FOR_EVAL_RESULT # is double-quoted, suitable for a subsequent eval, whereas # FUNC_QUOTE_FOR_EVAL_UNQUOTED_RESULT has merely all characters # which are still active within double quotes backslashified. func_quote_for_eval () { case $1 in *[\\\`\"\$]*) func_quote_for_eval_unquoted_result=`$ECHO "X$1" | $Xsed -e "$sed_quote_subst"` ;; *) func_quote_for_eval_unquoted_result="$1" ;; esac case $func_quote_for_eval_unquoted_result in # Double-quote args containing shell metacharacters to delay # word splitting, command substitution and and variable # expansion for a subsequent eval. # Many Bourne shells cannot handle close brackets correctly # in scan sets, so we specify it separately. *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") func_quote_for_eval_result="\"$func_quote_for_eval_unquoted_result\"" ;; *) func_quote_for_eval_result="$func_quote_for_eval_unquoted_result" esac } # func_quote_for_expand arg # Aesthetically quote ARG to be evaled later; same as above, # but do not quote variable references. func_quote_for_expand () { case $1 in *[\\\`\"]*) my_arg=`$ECHO "X$1" | $Xsed \ -e "$double_quote_subst" -e "$sed_double_backslash"` ;; *) my_arg="$1" ;; esac case $my_arg in # Double-quote args containing shell metacharacters to delay # word splitting and command substitution for a subsequent eval. # Many Bourne shells cannot handle close brackets correctly # in scan sets, so we specify it separately. *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") my_arg="\"$my_arg\"" ;; esac func_quote_for_expand_result="$my_arg" } # func_show_eval cmd [fail_exp] # Unless opt_silent is true, then output CMD. Then, if opt_dryrun is # not true, evaluate CMD. If the evaluation of CMD fails, and FAIL_EXP # is given, then evaluate it. func_show_eval () { my_cmd="$1" my_fail_exp="${2-:}" ${opt_silent-false} || { func_quote_for_expand "$my_cmd" eval "func_echo $func_quote_for_expand_result" } if ${opt_dry_run-false}; then :; else eval "$my_cmd" my_status=$? if test "$my_status" -eq 0; then :; else eval "(exit $my_status); $my_fail_exp" fi fi } # func_show_eval_locale cmd [fail_exp] # Unless opt_silent is true, then output CMD. Then, if opt_dryrun is # not true, evaluate CMD. If the evaluation of CMD fails, and FAIL_EXP # is given, then evaluate it. Use the saved locale for evaluation. func_show_eval_locale () { my_cmd="$1" my_fail_exp="${2-:}" ${opt_silent-false} || { func_quote_for_expand "$my_cmd" eval "func_echo $func_quote_for_expand_result" } if ${opt_dry_run-false}; then :; else eval "$lt_user_locale $my_cmd" my_status=$? eval "$lt_safe_locale" if test "$my_status" -eq 0; then :; else eval "(exit $my_status); $my_fail_exp" fi fi } # func_version # Echo version message to standard output and exit. func_version () { $SED -n '/^# '$PROGRAM' (GNU /,/# warranty; / { s/^# // s/^# *$// s/\((C)\)[ 0-9,-]*\( [1-9][0-9]*\)/\1\2/ p }' < "$progpath" exit $? } # func_usage # Echo short help message to standard output and exit. func_usage () { $SED -n '/^# Usage:/,/# -h/ { s/^# // s/^# *$// s/\$progname/'$progname'/ p }' < "$progpath" $ECHO $ECHO "run \`$progname --help | more' for full usage" exit $? } # func_help # Echo long help message to standard output and exit. func_help () { $SED -n '/^# Usage:/,/# Report bugs to/ { s/^# // s/^# *$// s*\$progname*'$progname'* s*\$host*'"$host"'* s*\$SHELL*'"$SHELL"'* s*\$LTCC*'"$LTCC"'* s*\$LTCFLAGS*'"$LTCFLAGS"'* s*\$LD*'"$LD"'* s/\$with_gnu_ld/'"$with_gnu_ld"'/ s/\$automake_version/'"`(automake --version) 2>/dev/null |$SED 1q`"'/ s/\$autoconf_version/'"`(autoconf --version) 2>/dev/null |$SED 1q`"'/ p }' < "$progpath" exit $? } # func_missing_arg argname # Echo program name prefixed message to standard error and set global # exit_cmd. func_missing_arg () { func_error "missing argument for $1" exit_cmd=exit } exit_cmd=: # Check that we have a working $ECHO. if test "X$1" = X--no-reexec; then # Discard the --no-reexec flag, and continue. shift elif test "X$1" = X--fallback-echo; then # Avoid inline document here, it may be left over : elif test "X`{ $ECHO '\t'; } 2>/dev/null`" = 'X\t'; then # Yippee, $ECHO works! : else # Restart under the correct shell, and then maybe $ECHO will work. exec $SHELL "$progpath" --no-reexec ${1+"$@"} fi if test "X$1" = X--fallback-echo; then # used as fallback echo shift cat </dev/null 2>&1; then taglist="$taglist $tagname" # Evaluate the configuration. Be careful to quote the path # and the sed script, to avoid splitting on whitespace, but # also don't use non-portable quotes within backquotes within # quotes we have to do it in 2 steps: extractedcf=`$SED -n -e "$sed_extractcf" < "$progpath"` eval "$extractedcf" else func_error "ignoring unknown tag $tagname" fi ;; esac } # Parse options once, thoroughly. This comes as soon as possible in # the script to make things like `libtool --version' happen quickly. { # Shorthand for --mode=foo, only valid as the first argument case $1 in clean|clea|cle|cl) shift; set dummy --mode clean ${1+"$@"}; shift ;; compile|compil|compi|comp|com|co|c) shift; set dummy --mode compile ${1+"$@"}; shift ;; execute|execut|execu|exec|exe|ex|e) shift; set dummy --mode execute ${1+"$@"}; shift ;; finish|finis|fini|fin|fi|f) shift; set dummy --mode finish ${1+"$@"}; shift ;; install|instal|insta|inst|ins|in|i) shift; set dummy --mode install ${1+"$@"}; shift ;; link|lin|li|l) shift; set dummy --mode link ${1+"$@"}; shift ;; uninstall|uninstal|uninsta|uninst|unins|unin|uni|un|u) shift; set dummy --mode uninstall ${1+"$@"}; shift ;; esac # Parse non-mode specific arguments: while test "$#" -gt 0; do opt="$1" shift case $opt in --config) func_config ;; --debug) preserve_args="$preserve_args $opt" func_echo "enabling shell trace mode" opt_debug='set -x' $opt_debug ;; -dlopen) test "$#" -eq 0 && func_missing_arg "$opt" && break execute_dlfiles="$execute_dlfiles $1" shift ;; --dry-run | -n) opt_dry_run=: ;; --features) func_features ;; --finish) mode="finish" ;; --mode) test "$#" -eq 0 && func_missing_arg "$opt" && break case $1 in # Valid mode arguments: clean) ;; compile) ;; execute) ;; finish) ;; install) ;; link) ;; relink) ;; uninstall) ;; # Catch anything else as an error *) func_error "invalid argument for $opt" exit_cmd=exit break ;; esac mode="$1" shift ;; --preserve-dup-deps) opt_duplicate_deps=: ;; --quiet|--silent) preserve_args="$preserve_args $opt" opt_silent=: ;; --verbose| -v) preserve_args="$preserve_args $opt" opt_silent=false ;; --tag) test "$#" -eq 0 && func_missing_arg "$opt" && break preserve_args="$preserve_args $opt $1" func_enable_tag "$1" # tagname is set here shift ;; # Separate optargs to long options: -dlopen=*|--mode=*|--tag=*) func_opt_split "$opt" set dummy "$func_opt_split_opt" "$func_opt_split_arg" ${1+"$@"} shift ;; -\?|-h) func_usage ;; --help) opt_help=: ;; --version) func_version ;; -*) func_fatal_help "unrecognized option \`$opt'" ;; *) nonopt="$opt" break ;; esac done case $host in *cygwin* | *mingw* | *pw32* | *cegcc*) # don't eliminate duplications in $postdeps and $predeps opt_duplicate_compiler_generated_deps=: ;; *) opt_duplicate_compiler_generated_deps=$opt_duplicate_deps ;; esac # Having warned about all mis-specified options, bail out if # anything was wrong. $exit_cmd $EXIT_FAILURE } # func_check_version_match # Ensure that we are using m4 macros, and libtool script from the same # release of libtool. func_check_version_match () { if test "$package_revision" != "$macro_revision"; then if test "$VERSION" != "$macro_version"; then if test -z "$macro_version"; then cat >&2 <<_LT_EOF $progname: Version mismatch error. This is $PACKAGE $VERSION, but the $progname: definition of this LT_INIT comes from an older release. $progname: You should recreate aclocal.m4 with macros from $PACKAGE $VERSION $progname: and run autoconf again. _LT_EOF else cat >&2 <<_LT_EOF $progname: Version mismatch error. This is $PACKAGE $VERSION, but the $progname: definition of this LT_INIT comes from $PACKAGE $macro_version. $progname: You should recreate aclocal.m4 with macros from $PACKAGE $VERSION $progname: and run autoconf again. _LT_EOF fi else cat >&2 <<_LT_EOF $progname: Version mismatch error. This is $PACKAGE $VERSION, revision $package_revision, $progname: but the definition of this LT_INIT comes from revision $macro_revision. $progname: You should recreate aclocal.m4 with macros from revision $package_revision $progname: of $PACKAGE $VERSION and run autoconf again. _LT_EOF fi exit $EXIT_MISMATCH fi } ## ----------- ## ## Main. ## ## ----------- ## $opt_help || { # Sanity checks first: func_check_version_match if test "$build_libtool_libs" != yes && test "$build_old_libs" != yes; then func_fatal_configuration "not configured to build any kind of library" fi test -z "$mode" && func_fatal_error "error: you must specify a MODE." # Darwin sucks eval std_shrext=\"$shrext_cmds\" # Only execute mode is allowed to have -dlopen flags. if test -n "$execute_dlfiles" && test "$mode" != execute; then func_error "unrecognized option \`-dlopen'" $ECHO "$help" 1>&2 exit $EXIT_FAILURE fi # Change the help message to a mode-specific one. generic_help="$help" help="Try \`$progname --help --mode=$mode' for more information." } # func_lalib_p file # True iff FILE is a libtool `.la' library or `.lo' object file. # This function is only a basic sanity check; it will hardly flush out # determined imposters. func_lalib_p () { test -f "$1" && $SED -e 4q "$1" 2>/dev/null \ | $GREP "^# Generated by .*$PACKAGE" > /dev/null 2>&1 } # func_lalib_unsafe_p file # True iff FILE is a libtool `.la' library or `.lo' object file. # This function implements the same check as func_lalib_p without # resorting to external programs. To this end, it redirects stdin and # closes it afterwards, without saving the original file descriptor. # As a safety measure, use it only where a negative result would be # fatal anyway. Works if `file' does not exist. func_lalib_unsafe_p () { lalib_p=no if test -f "$1" && test -r "$1" && exec 5<&0 <"$1"; then for lalib_p_l in 1 2 3 4 do read lalib_p_line case "$lalib_p_line" in \#\ Generated\ by\ *$PACKAGE* ) lalib_p=yes; break;; esac done exec 0<&5 5<&- fi test "$lalib_p" = yes } # func_ltwrapper_script_p file # True iff FILE is a libtool wrapper script # This function is only a basic sanity check; it will hardly flush out # determined imposters. func_ltwrapper_script_p () { func_lalib_p "$1" } # func_ltwrapper_executable_p file # True iff FILE is a libtool wrapper executable # This function is only a basic sanity check; it will hardly flush out # determined imposters. func_ltwrapper_executable_p () { func_ltwrapper_exec_suffix= case $1 in *.exe) ;; *) func_ltwrapper_exec_suffix=.exe ;; esac $GREP "$magic_exe" "$1$func_ltwrapper_exec_suffix" >/dev/null 2>&1 } # func_ltwrapper_scriptname file # Assumes file is an ltwrapper_executable # uses $file to determine the appropriate filename for a # temporary ltwrapper_script. func_ltwrapper_scriptname () { func_ltwrapper_scriptname_result="" if func_ltwrapper_executable_p "$1"; then func_dirname_and_basename "$1" "" "." func_stripname '' '.exe' "$func_basename_result" func_ltwrapper_scriptname_result="$func_dirname_result/$objdir/${func_stripname_result}_ltshwrapper" fi } # func_ltwrapper_p file # True iff FILE is a libtool wrapper script or wrapper executable # This function is only a basic sanity check; it will hardly flush out # determined imposters. func_ltwrapper_p () { func_ltwrapper_script_p "$1" || func_ltwrapper_executable_p "$1" } # func_execute_cmds commands fail_cmd # Execute tilde-delimited COMMANDS. # If FAIL_CMD is given, eval that upon failure. # FAIL_CMD may read-access the current command in variable CMD! func_execute_cmds () { $opt_debug save_ifs=$IFS; IFS='~' for cmd in $1; do IFS=$save_ifs eval cmd=\"$cmd\" func_show_eval "$cmd" "${2-:}" done IFS=$save_ifs } # func_source file # Source FILE, adding directory component if necessary. # Note that it is not necessary on cygwin/mingw to append a dot to # FILE even if both FILE and FILE.exe exist: automatic-append-.exe # behavior happens only for exec(3), not for open(2)! Also, sourcing # `FILE.' does not work on cygwin managed mounts. func_source () { $opt_debug case $1 in */* | *\\*) . "$1" ;; *) . "./$1" ;; esac } # func_infer_tag arg # Infer tagged configuration to use if any are available and # if one wasn't chosen via the "--tag" command line option. # Only attempt this if the compiler in the base compile # command doesn't match the default compiler. # arg is usually of the form 'gcc ...' func_infer_tag () { $opt_debug if test -n "$available_tags" && test -z "$tagname"; then CC_quoted= for arg in $CC; do func_quote_for_eval "$arg" CC_quoted="$CC_quoted $func_quote_for_eval_result" done case $@ in # Blanks in the command may have been stripped by the calling shell, # but not from the CC environment variable when configure was run. " $CC "* | "$CC "* | " `$ECHO $CC` "* | "`$ECHO $CC` "* | " $CC_quoted"* | "$CC_quoted "* | " `$ECHO $CC_quoted` "* | "`$ECHO $CC_quoted` "*) ;; # Blanks at the start of $base_compile will cause this to fail # if we don't check for them as well. *) for z in $available_tags; do if $GREP "^# ### BEGIN LIBTOOL TAG CONFIG: $z$" < "$progpath" > /dev/null; then # Evaluate the configuration. eval "`${SED} -n -e '/^# ### BEGIN LIBTOOL TAG CONFIG: '$z'$/,/^# ### END LIBTOOL TAG CONFIG: '$z'$/p' < $progpath`" CC_quoted= for arg in $CC; do # Double-quote args containing other shell metacharacters. func_quote_for_eval "$arg" CC_quoted="$CC_quoted $func_quote_for_eval_result" done case "$@ " in " $CC "* | "$CC "* | " `$ECHO $CC` "* | "`$ECHO $CC` "* | " $CC_quoted"* | "$CC_quoted "* | " `$ECHO $CC_quoted` "* | "`$ECHO $CC_quoted` "*) # The compiler in the base compile command matches # the one in the tagged configuration. # Assume this is the tagged configuration we want. tagname=$z break ;; esac fi done # If $tagname still isn't set, then no tagged configuration # was found and let the user know that the "--tag" command # line option must be used. if test -z "$tagname"; then func_echo "unable to infer tagged configuration" func_fatal_error "specify a tag with \`--tag'" # else # func_verbose "using $tagname tagged configuration" fi ;; esac fi } # func_write_libtool_object output_name pic_name nonpic_name # Create a libtool object file (analogous to a ".la" file), # but don't create it if we're doing a dry run. func_write_libtool_object () { write_libobj=${1} if test "$build_libtool_libs" = yes; then write_lobj=\'${2}\' else write_lobj=none fi if test "$build_old_libs" = yes; then write_oldobj=\'${3}\' else write_oldobj=none fi $opt_dry_run || { cat >${write_libobj}T <?"'"'"' &()|`$[]' \ && func_warning "libobj name \`$libobj' may not contain shell special characters." func_dirname_and_basename "$obj" "/" "" objname="$func_basename_result" xdir="$func_dirname_result" lobj=${xdir}$objdir/$objname test -z "$base_compile" && \ func_fatal_help "you must specify a compilation command" # Delete any leftover library objects. if test "$build_old_libs" = yes; then removelist="$obj $lobj $libobj ${libobj}T" else removelist="$lobj $libobj ${libobj}T" fi # On Cygwin there's no "real" PIC flag so we must build both object types case $host_os in cygwin* | mingw* | pw32* | os2* | cegcc*) pic_mode=default ;; esac if test "$pic_mode" = no && test "$deplibs_check_method" != pass_all; then # non-PIC code in shared libraries is not supported pic_mode=default fi # Calculate the filename of the output object if compiler does # not support -o with -c if test "$compiler_c_o" = no; then output_obj=`$ECHO "X$srcfile" | $Xsed -e 's%^.*/%%' -e 's%\.[^.]*$%%'`.${objext} lockfile="$output_obj.lock" else output_obj= need_locks=no lockfile= fi # Lock this critical section if it is needed # We use this script file to make the link, it avoids creating a new file if test "$need_locks" = yes; then until $opt_dry_run || ln "$progpath" "$lockfile" 2>/dev/null; do func_echo "Waiting for $lockfile to be removed" sleep 2 done elif test "$need_locks" = warn; then if test -f "$lockfile"; then $ECHO "\ *** ERROR, $lockfile exists and contains: `cat $lockfile 2>/dev/null` This indicates that another process is trying to use the same temporary object file, and libtool could not work around it because your compiler does not support \`-c' and \`-o' together. If you repeat this compilation, it may succeed, by chance, but you had better avoid parallel builds (make -j) in this platform, or get a better compiler." $opt_dry_run || $RM $removelist exit $EXIT_FAILURE fi removelist="$removelist $output_obj" $ECHO "$srcfile" > "$lockfile" fi $opt_dry_run || $RM $removelist removelist="$removelist $lockfile" trap '$opt_dry_run || $RM $removelist; exit $EXIT_FAILURE' 1 2 15 if test -n "$fix_srcfile_path"; then eval srcfile=\"$fix_srcfile_path\" fi func_quote_for_eval "$srcfile" qsrcfile=$func_quote_for_eval_result # Only build a PIC object if we are building libtool libraries. if test "$build_libtool_libs" = yes; then # Without this assignment, base_compile gets emptied. fbsd_hideous_sh_bug=$base_compile if test "$pic_mode" != no; then command="$base_compile $qsrcfile $pic_flag" else # Don't build PIC code command="$base_compile $qsrcfile" fi func_mkdir_p "$xdir$objdir" if test -z "$output_obj"; then # Place PIC objects in $objdir command="$command -o $lobj" fi func_show_eval_locale "$command" \ 'test -n "$output_obj" && $RM $removelist; exit $EXIT_FAILURE' if test "$need_locks" = warn && test "X`cat $lockfile 2>/dev/null`" != "X$srcfile"; then $ECHO "\ *** ERROR, $lockfile contains: `cat $lockfile 2>/dev/null` but it should contain: $srcfile This indicates that another process is trying to use the same temporary object file, and libtool could not work around it because your compiler does not support \`-c' and \`-o' together. If you repeat this compilation, it may succeed, by chance, but you had better avoid parallel builds (make -j) in this platform, or get a better compiler." $opt_dry_run || $RM $removelist exit $EXIT_FAILURE fi # Just move the object if needed, then go on to compile the next one if test -n "$output_obj" && test "X$output_obj" != "X$lobj"; then func_show_eval '$MV "$output_obj" "$lobj"' \ 'error=$?; $opt_dry_run || $RM $removelist; exit $error' fi # Allow error messages only from the first compilation. if test "$suppress_opt" = yes; then suppress_output=' >/dev/null 2>&1' fi fi # Only build a position-dependent object if we build old libraries. if test "$build_old_libs" = yes; then if test "$pic_mode" != yes; then # Don't build PIC code command="$base_compile $qsrcfile$pie_flag" else command="$base_compile $qsrcfile $pic_flag" fi if test "$compiler_c_o" = yes; then command="$command -o $obj" fi # Suppress compiler output if we already did a PIC compilation. command="$command$suppress_output" func_show_eval_locale "$command" \ '$opt_dry_run || $RM $removelist; exit $EXIT_FAILURE' if test "$need_locks" = warn && test "X`cat $lockfile 2>/dev/null`" != "X$srcfile"; then $ECHO "\ *** ERROR, $lockfile contains: `cat $lockfile 2>/dev/null` but it should contain: $srcfile This indicates that another process is trying to use the same temporary object file, and libtool could not work around it because your compiler does not support \`-c' and \`-o' together. If you repeat this compilation, it may succeed, by chance, but you had better avoid parallel builds (make -j) in this platform, or get a better compiler." $opt_dry_run || $RM $removelist exit $EXIT_FAILURE fi # Just move the object if needed if test -n "$output_obj" && test "X$output_obj" != "X$obj"; then func_show_eval '$MV "$output_obj" "$obj"' \ 'error=$?; $opt_dry_run || $RM $removelist; exit $error' fi fi $opt_dry_run || { func_write_libtool_object "$libobj" "$objdir/$objname" "$objname" # Unlock the critical section if it was locked if test "$need_locks" != no; then removelist=$lockfile $RM "$lockfile" fi } exit $EXIT_SUCCESS } $opt_help || { test "$mode" = compile && func_mode_compile ${1+"$@"} } func_mode_help () { # We need to display help for each of the modes. case $mode in "") # Generic help is extracted from the usage comments # at the start of this file. func_help ;; clean) $ECHO \ "Usage: $progname [OPTION]... --mode=clean RM [RM-OPTION]... FILE... Remove files from the build directory. RM is the name of the program to use to delete files associated with each FILE (typically \`/bin/rm'). RM-OPTIONS are options (such as \`-f') to be passed to RM. If FILE is a libtool library, object or program, all the files associated with it are deleted. Otherwise, only FILE itself is deleted using RM." ;; compile) $ECHO \ "Usage: $progname [OPTION]... --mode=compile COMPILE-COMMAND... SOURCEFILE Compile a source file into a libtool library object. This mode accepts the following additional options: -o OUTPUT-FILE set the output file name to OUTPUT-FILE -no-suppress do not suppress compiler output for multiple passes -prefer-pic try to building PIC objects only -prefer-non-pic try to building non-PIC objects only -shared do not build a \`.o' file suitable for static linking -static only build a \`.o' file suitable for static linking COMPILE-COMMAND is a command to be used in creating a \`standard' object file from the given SOURCEFILE. The output file name is determined by removing the directory component from SOURCEFILE, then substituting the C source code suffix \`.c' with the library object suffix, \`.lo'." ;; execute) $ECHO \ "Usage: $progname [OPTION]... --mode=execute COMMAND [ARGS]... Automatically set library path, then run a program. This mode accepts the following additional options: -dlopen FILE add the directory containing FILE to the library path This mode sets the library path environment variable according to \`-dlopen' flags. If any of the ARGS are libtool executable wrappers, then they are translated into their corresponding uninstalled binary, and any of their required library directories are added to the library path. Then, COMMAND is executed, with ARGS as arguments." ;; finish) $ECHO \ "Usage: $progname [OPTION]... --mode=finish [LIBDIR]... Complete the installation of libtool libraries. Each LIBDIR is a directory that contains libtool libraries. The commands that this mode executes may require superuser privileges. Use the \`--dry-run' option if you just want to see what would be executed." ;; install) $ECHO \ "Usage: $progname [OPTION]... --mode=install INSTALL-COMMAND... Install executables or libraries. INSTALL-COMMAND is the installation command. The first component should be either the \`install' or \`cp' program. The following components of INSTALL-COMMAND are treated specially: -inst-prefix PREFIX-DIR Use PREFIX-DIR as a staging area for installation The rest of the components are interpreted as arguments to that command (only BSD-compatible install options are recognized)." ;; link) $ECHO \ "Usage: $progname [OPTION]... --mode=link LINK-COMMAND... Link object files or libraries together to form another library, or to create an executable program. LINK-COMMAND is a command using the C compiler that you would use to create a program from several object files. The following components of LINK-COMMAND are treated specially: -all-static do not do any dynamic linking at all -avoid-version do not add a version suffix if possible -dlopen FILE \`-dlpreopen' FILE if it cannot be dlopened at runtime -dlpreopen FILE link in FILE and add its symbols to lt_preloaded_symbols -export-dynamic allow symbols from OUTPUT-FILE to be resolved with dlsym(3) -export-symbols SYMFILE try to export only the symbols listed in SYMFILE -export-symbols-regex REGEX try to export only the symbols matching REGEX -LLIBDIR search LIBDIR for required installed libraries -lNAME OUTPUT-FILE requires the installed library libNAME -module build a library that can dlopened -no-fast-install disable the fast-install mode -no-install link a not-installable executable -no-undefined declare that a library does not refer to external symbols -o OUTPUT-FILE create OUTPUT-FILE from the specified objects -objectlist FILE Use a list of object files found in FILE to specify objects -precious-files-regex REGEX don't remove output files matching REGEX -release RELEASE specify package release information -rpath LIBDIR the created library will eventually be installed in LIBDIR -R[ ]LIBDIR add LIBDIR to the runtime path of programs and libraries -shared only do dynamic linking of libtool libraries -shrext SUFFIX override the standard shared library file extension -static do not do any dynamic linking of uninstalled libtool libraries -static-libtool-libs do not do any dynamic linking of libtool libraries -version-info CURRENT[:REVISION[:AGE]] specify library version info [each variable defaults to 0] -weak LIBNAME declare that the target provides the LIBNAME interface All other options (arguments beginning with \`-') are ignored. Every other argument is treated as a filename. Files ending in \`.la' are treated as uninstalled libtool libraries, other files are standard or library object files. If the OUTPUT-FILE ends in \`.la', then a libtool library is created, only library objects (\`.lo' files) may be specified, and \`-rpath' is required, except when creating a convenience library. If OUTPUT-FILE ends in \`.a' or \`.lib', then a standard library is created using \`ar' and \`ranlib', or on Windows using \`lib'. If OUTPUT-FILE ends in \`.lo' or \`.${objext}', then a reloadable object file is created, otherwise an executable program is created." ;; uninstall) $ECHO \ "Usage: $progname [OPTION]... --mode=uninstall RM [RM-OPTION]... FILE... Remove libraries from an installation directory. RM is the name of the program to use to delete files associated with each FILE (typically \`/bin/rm'). RM-OPTIONS are options (such as \`-f') to be passed to RM. If FILE is a libtool library, all the files associated with it are deleted. Otherwise, only FILE itself is deleted using RM." ;; *) func_fatal_help "invalid operation mode \`$mode'" ;; esac $ECHO $ECHO "Try \`$progname --help' for more information about other modes." exit $? } # Now that we've collected a possible --mode arg, show help if necessary $opt_help && func_mode_help # func_mode_execute arg... func_mode_execute () { $opt_debug # The first argument is the command name. cmd="$nonopt" test -z "$cmd" && \ func_fatal_help "you must specify a COMMAND" # Handle -dlopen flags immediately. for file in $execute_dlfiles; do test -f "$file" \ || func_fatal_help "\`$file' is not a file" dir= case $file in *.la) # Check to see that this really is a libtool archive. func_lalib_unsafe_p "$file" \ || func_fatal_help "\`$lib' is not a valid libtool archive" # Read the libtool library. dlname= library_names= func_source "$file" # Skip this library if it cannot be dlopened. if test -z "$dlname"; then # Warn if it was a shared library. test -n "$library_names" && \ func_warning "\`$file' was not linked with \`-export-dynamic'" continue fi func_dirname "$file" "" "." dir="$func_dirname_result" if test -f "$dir/$objdir/$dlname"; then dir="$dir/$objdir" else if test ! -f "$dir/$dlname"; then func_fatal_error "cannot find \`$dlname' in \`$dir' or \`$dir/$objdir'" fi fi ;; *.lo) # Just add the directory containing the .lo file. func_dirname "$file" "" "." dir="$func_dirname_result" ;; *) func_warning "\`-dlopen' is ignored for non-libtool libraries and objects" continue ;; esac # Get the absolute pathname. absdir=`cd "$dir" && pwd` test -n "$absdir" && dir="$absdir" # Now add the directory to shlibpath_var. if eval "test -z \"\$$shlibpath_var\""; then eval "$shlibpath_var=\"\$dir\"" else eval "$shlibpath_var=\"\$dir:\$$shlibpath_var\"" fi done # This variable tells wrapper scripts just to set shlibpath_var # rather than running their programs. libtool_execute_magic="$magic" # Check if any of the arguments is a wrapper script. args= for file do case $file in -*) ;; *) # Do a test to see if this is really a libtool program. if func_ltwrapper_script_p "$file"; then func_source "$file" # Transform arg to wrapped name. file="$progdir/$program" elif func_ltwrapper_executable_p "$file"; then func_ltwrapper_scriptname "$file" func_source "$func_ltwrapper_scriptname_result" # Transform arg to wrapped name. file="$progdir/$program" fi ;; esac # Quote arguments (to preserve shell metacharacters). func_quote_for_eval "$file" args="$args $func_quote_for_eval_result" done if test "X$opt_dry_run" = Xfalse; then if test -n "$shlibpath_var"; then # Export the shlibpath_var. eval "export $shlibpath_var" fi # Restore saved environment variables for lt_var in LANG LANGUAGE LC_ALL LC_CTYPE LC_COLLATE LC_MESSAGES do eval "if test \"\${save_$lt_var+set}\" = set; then $lt_var=\$save_$lt_var; export $lt_var else $lt_unset $lt_var fi" done # Now prepare to actually exec the command. exec_cmd="\$cmd$args" else # Display what would be done. if test -n "$shlibpath_var"; then eval "\$ECHO \"\$shlibpath_var=\$$shlibpath_var\"" $ECHO "export $shlibpath_var" fi $ECHO "$cmd$args" exit $EXIT_SUCCESS fi } test "$mode" = execute && func_mode_execute ${1+"$@"} # func_mode_finish arg... func_mode_finish () { $opt_debug libdirs="$nonopt" admincmds= if test -n "$finish_cmds$finish_eval" && test -n "$libdirs"; then for dir do libdirs="$libdirs $dir" done for libdir in $libdirs; do if test -n "$finish_cmds"; then # Do each command in the finish commands. func_execute_cmds "$finish_cmds" 'admincmds="$admincmds '"$cmd"'"' fi if test -n "$finish_eval"; then # Do the single finish_eval. eval cmds=\"$finish_eval\" $opt_dry_run || eval "$cmds" || admincmds="$admincmds $cmds" fi done fi # Exit here if they wanted silent mode. $opt_silent && exit $EXIT_SUCCESS $ECHO "X----------------------------------------------------------------------" | $Xsed $ECHO "Libraries have been installed in:" for libdir in $libdirs; do $ECHO " $libdir" done $ECHO $ECHO "If you ever happen to want to link against installed libraries" $ECHO "in a given directory, LIBDIR, you must either use libtool, and" $ECHO "specify the full pathname of the library, or use the \`-LLIBDIR'" $ECHO "flag during linking and do at least one of the following:" if test -n "$shlibpath_var"; then $ECHO " - add LIBDIR to the \`$shlibpath_var' environment variable" $ECHO " during execution" fi if test -n "$runpath_var"; then $ECHO " - add LIBDIR to the \`$runpath_var' environment variable" $ECHO " during linking" fi if test -n "$hardcode_libdir_flag_spec"; then libdir=LIBDIR eval flag=\"$hardcode_libdir_flag_spec\" $ECHO " - use the \`$flag' linker flag" fi if test -n "$admincmds"; then $ECHO " - have your system administrator run these commands:$admincmds" fi if test -f /etc/ld.so.conf; then $ECHO " - have your system administrator add LIBDIR to \`/etc/ld.so.conf'" fi $ECHO $ECHO "See any operating system documentation about shared libraries for" case $host in solaris2.[6789]|solaris2.1[0-9]) $ECHO "more information, such as the ld(1), crle(1) and ld.so(8) manual" $ECHO "pages." ;; *) $ECHO "more information, such as the ld(1) and ld.so(8) manual pages." ;; esac $ECHO "X----------------------------------------------------------------------" | $Xsed exit $EXIT_SUCCESS } test "$mode" = finish && func_mode_finish ${1+"$@"} # func_mode_install arg... func_mode_install () { $opt_debug # There may be an optional sh(1) argument at the beginning of # install_prog (especially on Windows NT). if test "$nonopt" = "$SHELL" || test "$nonopt" = /bin/sh || # Allow the use of GNU shtool's install command. $ECHO "X$nonopt" | $GREP shtool >/dev/null; then # Aesthetically quote it. func_quote_for_eval "$nonopt" install_prog="$func_quote_for_eval_result " arg=$1 shift else install_prog= arg=$nonopt fi # The real first argument should be the name of the installation program. # Aesthetically quote it. func_quote_for_eval "$arg" install_prog="$install_prog$func_quote_for_eval_result" # We need to accept at least all the BSD install flags. dest= files= opts= prev= install_type= isdir=no stripme= for arg do if test -n "$dest"; then files="$files $dest" dest=$arg continue fi case $arg in -d) isdir=yes ;; -f) case " $install_prog " in *[\\\ /]cp\ *) ;; *) prev=$arg ;; esac ;; -g | -m | -o) prev=$arg ;; -s) stripme=" -s" continue ;; -*) ;; *) # If the previous option needed an argument, then skip it. if test -n "$prev"; then prev= else dest=$arg continue fi ;; esac # Aesthetically quote the argument. func_quote_for_eval "$arg" install_prog="$install_prog $func_quote_for_eval_result" done test -z "$install_prog" && \ func_fatal_help "you must specify an install program" test -n "$prev" && \ func_fatal_help "the \`$prev' option requires an argument" if test -z "$files"; then if test -z "$dest"; then func_fatal_help "no file or destination specified" else func_fatal_help "you must specify a destination" fi fi # Strip any trailing slash from the destination. func_stripname '' '/' "$dest" dest=$func_stripname_result # Check to see that the destination is a directory. test -d "$dest" && isdir=yes if test "$isdir" = yes; then destdir="$dest" destname= else func_dirname_and_basename "$dest" "" "." destdir="$func_dirname_result" destname="$func_basename_result" # Not a directory, so check to see that there is only one file specified. set dummy $files; shift test "$#" -gt 1 && \ func_fatal_help "\`$dest' is not a directory" fi case $destdir in [\\/]* | [A-Za-z]:[\\/]*) ;; *) for file in $files; do case $file in *.lo) ;; *) func_fatal_help "\`$destdir' must be an absolute directory name" ;; esac done ;; esac # This variable tells wrapper scripts just to set variables rather # than running their programs. libtool_install_magic="$magic" staticlibs= future_libdirs= current_libdirs= for file in $files; do # Do each installation. case $file in *.$libext) # Do the static libraries later. staticlibs="$staticlibs $file" ;; *.la) # Check to see that this really is a libtool archive. func_lalib_unsafe_p "$file" \ || func_fatal_help "\`$file' is not a valid libtool archive" library_names= old_library= relink_command= func_source "$file" # Add the libdir to current_libdirs if it is the destination. if test "X$destdir" = "X$libdir"; then case "$current_libdirs " in *" $libdir "*) ;; *) current_libdirs="$current_libdirs $libdir" ;; esac else # Note the libdir as a future libdir. case "$future_libdirs " in *" $libdir "*) ;; *) future_libdirs="$future_libdirs $libdir" ;; esac fi func_dirname "$file" "/" "" dir="$func_dirname_result" dir="$dir$objdir" if test -n "$relink_command"; then # Determine the prefix the user has applied to our future dir. inst_prefix_dir=`$ECHO "X$destdir" | $Xsed -e "s%$libdir\$%%"` # Don't allow the user to place us outside of our expected # location b/c this prevents finding dependent libraries that # are installed to the same prefix. # At present, this check doesn't affect windows .dll's that # are installed into $libdir/../bin (currently, that works fine) # but it's something to keep an eye on. test "$inst_prefix_dir" = "$destdir" && \ func_fatal_error "error: cannot install \`$file' to a directory not ending in $libdir" if test -n "$inst_prefix_dir"; then # Stick the inst_prefix_dir data into the link command. relink_command=`$ECHO "X$relink_command" | $Xsed -e "s%@inst_prefix_dir@%-inst-prefix-dir $inst_prefix_dir%"` else relink_command=`$ECHO "X$relink_command" | $Xsed -e "s%@inst_prefix_dir@%%"` fi func_warning "relinking \`$file'" func_show_eval "$relink_command" \ 'func_fatal_error "error: relink \`$file'\'' with the above command before installing it"' fi # See the names of the shared library. set dummy $library_names; shift if test -n "$1"; then realname="$1" shift srcname="$realname" test -n "$relink_command" && srcname="$realname"T # Install the shared library and build the symlinks. func_show_eval "$install_prog $dir/$srcname $destdir/$realname" \ 'exit $?' tstripme="$stripme" case $host_os in cygwin* | mingw* | pw32* | cegcc*) case $realname in *.dll.a) tstripme="" ;; esac ;; esac if test -n "$tstripme" && test -n "$striplib"; then func_show_eval "$striplib $destdir/$realname" 'exit $?' fi if test "$#" -gt 0; then # Delete the old symlinks, and create new ones. # Try `ln -sf' first, because the `ln' binary might depend on # the symlink we replace! Solaris /bin/ln does not understand -f, # so we also need to try rm && ln -s. for linkname do test "$linkname" != "$realname" \ && func_show_eval "(cd $destdir && { $LN_S -f $realname $linkname || { $RM $linkname && $LN_S $realname $linkname; }; })" done fi # Do each command in the postinstall commands. lib="$destdir/$realname" func_execute_cmds "$postinstall_cmds" 'exit $?' fi # Install the pseudo-library for information purposes. func_basename "$file" name="$func_basename_result" instname="$dir/$name"i func_show_eval "$install_prog $instname $destdir/$name" 'exit $?' # Maybe install the static library, too. test -n "$old_library" && staticlibs="$staticlibs $dir/$old_library" ;; *.lo) # Install (i.e. copy) a libtool object. # Figure out destination file name, if it wasn't already specified. if test -n "$destname"; then destfile="$destdir/$destname" else func_basename "$file" destfile="$func_basename_result" destfile="$destdir/$destfile" fi # Deduce the name of the destination old-style object file. case $destfile in *.lo) func_lo2o "$destfile" staticdest=$func_lo2o_result ;; *.$objext) staticdest="$destfile" destfile= ;; *) func_fatal_help "cannot copy a libtool object to \`$destfile'" ;; esac # Install the libtool object if requested. test -n "$destfile" && \ func_show_eval "$install_prog $file $destfile" 'exit $?' # Install the old object if enabled. if test "$build_old_libs" = yes; then # Deduce the name of the old-style object file. func_lo2o "$file" staticobj=$func_lo2o_result func_show_eval "$install_prog \$staticobj \$staticdest" 'exit $?' fi exit $EXIT_SUCCESS ;; *) # Figure out destination file name, if it wasn't already specified. if test -n "$destname"; then destfile="$destdir/$destname" else func_basename "$file" destfile="$func_basename_result" destfile="$destdir/$destfile" fi # If the file is missing, and there is a .exe on the end, strip it # because it is most likely a libtool script we actually want to # install stripped_ext="" case $file in *.exe) if test ! -f "$file"; then func_stripname '' '.exe' "$file" file=$func_stripname_result stripped_ext=".exe" fi ;; esac # Do a test to see if this is really a libtool program. case $host in *cygwin* | *mingw*) if func_ltwrapper_executable_p "$file"; then func_ltwrapper_scriptname "$file" wrapper=$func_ltwrapper_scriptname_result else func_stripname '' '.exe' "$file" wrapper=$func_stripname_result fi ;; *) wrapper=$file ;; esac if func_ltwrapper_script_p "$wrapper"; then notinst_deplibs= relink_command= func_source "$wrapper" # Check the variables that should have been set. test -z "$generated_by_libtool_version" && \ func_fatal_error "invalid libtool wrapper script \`$wrapper'" finalize=yes for lib in $notinst_deplibs; do # Check to see that each library is installed. libdir= if test -f "$lib"; then func_source "$lib" fi libfile="$libdir/"`$ECHO "X$lib" | $Xsed -e 's%^.*/%%g'` ### testsuite: skip nested quoting test if test -n "$libdir" && test ! -f "$libfile"; then func_warning "\`$lib' has not been installed in \`$libdir'" finalize=no fi done relink_command= func_source "$wrapper" outputname= if test "$fast_install" = no && test -n "$relink_command"; then $opt_dry_run || { if test "$finalize" = yes; then tmpdir=`func_mktempdir` func_basename "$file$stripped_ext" file="$func_basename_result" outputname="$tmpdir/$file" # Replace the output file specification. relink_command=`$ECHO "X$relink_command" | $Xsed -e 's%@OUTPUT@%'"$outputname"'%g'` $opt_silent || { func_quote_for_expand "$relink_command" eval "func_echo $func_quote_for_expand_result" } if eval "$relink_command"; then : else func_error "error: relink \`$file' with the above command before installing it" $opt_dry_run || ${RM}r "$tmpdir" continue fi file="$outputname" else func_warning "cannot relink \`$file'" fi } else # Install the binary that we compiled earlier. file=`$ECHO "X$file$stripped_ext" | $Xsed -e "s%\([^/]*\)$%$objdir/\1%"` fi fi # remove .exe since cygwin /usr/bin/install will append another # one anyway case $install_prog,$host in */usr/bin/install*,*cygwin*) case $file:$destfile in *.exe:*.exe) # this is ok ;; *.exe:*) destfile=$destfile.exe ;; *:*.exe) func_stripname '' '.exe' "$destfile" destfile=$func_stripname_result ;; esac ;; esac func_show_eval "$install_prog\$stripme \$file \$destfile" 'exit $?' $opt_dry_run || if test -n "$outputname"; then ${RM}r "$tmpdir" fi ;; esac done for file in $staticlibs; do func_basename "$file" name="$func_basename_result" # Set up the ranlib parameters. oldlib="$destdir/$name" func_show_eval "$install_prog \$file \$oldlib" 'exit $?' if test -n "$stripme" && test -n "$old_striplib"; then func_show_eval "$old_striplib $oldlib" 'exit $?' fi # Do each command in the postinstall commands. func_execute_cmds "$old_postinstall_cmds" 'exit $?' done test -n "$future_libdirs" && \ func_warning "remember to run \`$progname --finish$future_libdirs'" if test -n "$current_libdirs"; then # Maybe just do a dry run. $opt_dry_run && current_libdirs=" -n$current_libdirs" exec_cmd='$SHELL $progpath $preserve_args --finish$current_libdirs' else exit $EXIT_SUCCESS fi } test "$mode" = install && func_mode_install ${1+"$@"} # func_generate_dlsyms outputname originator pic_p # Extract symbols from dlprefiles and create ${outputname}S.o with # a dlpreopen symbol table. func_generate_dlsyms () { $opt_debug my_outputname="$1" my_originator="$2" my_pic_p="${3-no}" my_prefix=`$ECHO "$my_originator" | sed 's%[^a-zA-Z0-9]%_%g'` my_dlsyms= if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; then if test -n "$NM" && test -n "$global_symbol_pipe"; then my_dlsyms="${my_outputname}S.c" else func_error "not configured to extract global symbols from dlpreopened files" fi fi if test -n "$my_dlsyms"; then case $my_dlsyms in "") ;; *.c) # Discover the nlist of each of the dlfiles. nlist="$output_objdir/${my_outputname}.nm" func_show_eval "$RM $nlist ${nlist}S ${nlist}T" # Parse the name list into a source file. func_verbose "creating $output_objdir/$my_dlsyms" $opt_dry_run || $ECHO > "$output_objdir/$my_dlsyms" "\ /* $my_dlsyms - symbol resolution table for \`$my_outputname' dlsym emulation. */ /* Generated by $PROGRAM (GNU $PACKAGE$TIMESTAMP) $VERSION */ #ifdef __cplusplus extern \"C\" { #endif /* External symbol declarations for the compiler. */\ " if test "$dlself" = yes; then func_verbose "generating symbol list for \`$output'" $opt_dry_run || echo ': @PROGRAM@ ' > "$nlist" # Add our own program objects to the symbol list. progfiles=`$ECHO "X$objs$old_deplibs" | $SP2NL | $Xsed -e "$lo2o" | $NL2SP` for progfile in $progfiles; do func_verbose "extracting global C symbols from \`$progfile'" $opt_dry_run || eval "$NM $progfile | $global_symbol_pipe >> '$nlist'" done if test -n "$exclude_expsyms"; then $opt_dry_run || { eval '$EGREP -v " ($exclude_expsyms)$" "$nlist" > "$nlist"T' eval '$MV "$nlist"T "$nlist"' } fi if test -n "$export_symbols_regex"; then $opt_dry_run || { eval '$EGREP -e "$export_symbols_regex" "$nlist" > "$nlist"T' eval '$MV "$nlist"T "$nlist"' } fi # Prepare the list of exported symbols if test -z "$export_symbols"; then export_symbols="$output_objdir/$outputname.exp" $opt_dry_run || { $RM $export_symbols eval "${SED} -n -e '/^: @PROGRAM@ $/d' -e 's/^.* \(.*\)$/\1/p' "'< "$nlist" > "$export_symbols"' case $host in *cygwin* | *mingw* | *cegcc* ) eval "echo EXPORTS "'> "$output_objdir/$outputname.def"' eval 'cat "$export_symbols" >> "$output_objdir/$outputname.def"' ;; esac } else $opt_dry_run || { eval "${SED} -e 's/\([].[*^$]\)/\\\\\1/g' -e 's/^/ /' -e 's/$/$/'"' < "$export_symbols" > "$output_objdir/$outputname.exp"' eval '$GREP -f "$output_objdir/$outputname.exp" < "$nlist" > "$nlist"T' eval '$MV "$nlist"T "$nlist"' case $host in *cygwin | *mingw* | *cegcc* ) eval "echo EXPORTS "'> "$output_objdir/$outputname.def"' eval 'cat "$nlist" >> "$output_objdir/$outputname.def"' ;; esac } fi fi for dlprefile in $dlprefiles; do func_verbose "extracting global C symbols from \`$dlprefile'" func_basename "$dlprefile" name="$func_basename_result" $opt_dry_run || { eval '$ECHO ": $name " >> "$nlist"' eval "$NM $dlprefile 2>/dev/null | $global_symbol_pipe >> '$nlist'" } done $opt_dry_run || { # Make sure we have at least an empty file. test -f "$nlist" || : > "$nlist" if test -n "$exclude_expsyms"; then $EGREP -v " ($exclude_expsyms)$" "$nlist" > "$nlist"T $MV "$nlist"T "$nlist" fi # Try sorting and uniquifying the output. if $GREP -v "^: " < "$nlist" | if sort -k 3 /dev/null 2>&1; then sort -k 3 else sort +2 fi | uniq > "$nlist"S; then : else $GREP -v "^: " < "$nlist" > "$nlist"S fi if test -f "$nlist"S; then eval "$global_symbol_to_cdecl"' < "$nlist"S >> "$output_objdir/$my_dlsyms"' else $ECHO '/* NONE */' >> "$output_objdir/$my_dlsyms" fi $ECHO >> "$output_objdir/$my_dlsyms" "\ /* The mapping between symbol names and symbols. */ typedef struct { const char *name; void *address; } lt_dlsymlist; " case $host in *cygwin* | *mingw* | *cegcc* ) $ECHO >> "$output_objdir/$my_dlsyms" "\ /* DATA imports from DLLs on WIN32 con't be const, because runtime relocations are performed -- see ld's documentation on pseudo-relocs. */" lt_dlsym_const= ;; *osf5*) echo >> "$output_objdir/$my_dlsyms" "\ /* This system does not cope well with relocations in const data */" lt_dlsym_const= ;; *) lt_dlsym_const=const ;; esac $ECHO >> "$output_objdir/$my_dlsyms" "\ extern $lt_dlsym_const lt_dlsymlist lt_${my_prefix}_LTX_preloaded_symbols[]; $lt_dlsym_const lt_dlsymlist lt_${my_prefix}_LTX_preloaded_symbols[] = {\ { \"$my_originator\", (void *) 0 }," case $need_lib_prefix in no) eval "$global_symbol_to_c_name_address" < "$nlist" >> "$output_objdir/$my_dlsyms" ;; *) eval "$global_symbol_to_c_name_address_lib_prefix" < "$nlist" >> "$output_objdir/$my_dlsyms" ;; esac $ECHO >> "$output_objdir/$my_dlsyms" "\ {0, (void *) 0} }; /* This works around a problem in FreeBSD linker */ #ifdef FREEBSD_WORKAROUND static const void *lt_preloaded_setup() { return lt_${my_prefix}_LTX_preloaded_symbols; } #endif #ifdef __cplusplus } #endif\ " } # !$opt_dry_run pic_flag_for_symtable= case "$compile_command " in *" -static "*) ;; *) case $host in # compiling the symbol table file with pic_flag works around # a FreeBSD bug that causes programs to crash when -lm is # linked before any other PIC object. But we must not use # pic_flag when linking with -static. The problem exists in # FreeBSD 2.2.6 and is fixed in FreeBSD 3.1. *-*-freebsd2*|*-*-freebsd3.0*|*-*-freebsdelf3.0*) pic_flag_for_symtable=" $pic_flag -DFREEBSD_WORKAROUND" ;; *-*-hpux*) pic_flag_for_symtable=" $pic_flag" ;; *) if test "X$my_pic_p" != Xno; then pic_flag_for_symtable=" $pic_flag" fi ;; esac ;; esac symtab_cflags= for arg in $LTCFLAGS; do case $arg in -pie | -fpie | -fPIE) ;; *) symtab_cflags="$symtab_cflags $arg" ;; esac done # Now compile the dynamic symbol file. func_show_eval '(cd $output_objdir && $LTCC$symtab_cflags -c$no_builtin_flag$pic_flag_for_symtable "$my_dlsyms")' 'exit $?' # Clean up the generated files. func_show_eval '$RM "$output_objdir/$my_dlsyms" "$nlist" "${nlist}S" "${nlist}T"' # Transform the symbol file into the correct name. symfileobj="$output_objdir/${my_outputname}S.$objext" case $host in *cygwin* | *mingw* | *cegcc* ) if test -f "$output_objdir/$my_outputname.def"; then compile_command=`$ECHO "X$compile_command" | $Xsed -e "s%@SYMFILE@%$output_objdir/$my_outputname.def $symfileobj%"` finalize_command=`$ECHO "X$finalize_command" | $Xsed -e "s%@SYMFILE@%$output_objdir/$my_outputname.def $symfileobj%"` else compile_command=`$ECHO "X$compile_command" | $Xsed -e "s%@SYMFILE@%$symfileobj%"` finalize_command=`$ECHO "X$finalize_command" | $Xsed -e "s%@SYMFILE@%$symfileobj%"` fi ;; *) compile_command=`$ECHO "X$compile_command" | $Xsed -e "s%@SYMFILE@%$symfileobj%"` finalize_command=`$ECHO "X$finalize_command" | $Xsed -e "s%@SYMFILE@%$symfileobj%"` ;; esac ;; *) func_fatal_error "unknown suffix for \`$my_dlsyms'" ;; esac else # We keep going just in case the user didn't refer to # lt_preloaded_symbols. The linker will fail if global_symbol_pipe # really was required. # Nullify the symbol file. compile_command=`$ECHO "X$compile_command" | $Xsed -e "s% @SYMFILE@%%"` finalize_command=`$ECHO "X$finalize_command" | $Xsed -e "s% @SYMFILE@%%"` fi } # func_win32_libid arg # return the library type of file 'arg' # # Need a lot of goo to handle *both* DLLs and import libs # Has to be a shell function in order to 'eat' the argument # that is supplied when $file_magic_command is called. func_win32_libid () { $opt_debug win32_libid_type="unknown" win32_fileres=`file -L $1 2>/dev/null` case $win32_fileres in *ar\ archive\ import\ library*) # definitely import win32_libid_type="x86 archive import" ;; *ar\ archive*) # could be an import, or static if eval $OBJDUMP -f $1 | $SED -e '10q' 2>/dev/null | $EGREP 'file format pe-i386(.*architecture: i386)?' >/dev/null ; then win32_nmres=`eval $NM -f posix -A $1 | $SED -n -e ' 1,100{ / I /{ s,.*,import, p q } }'` case $win32_nmres in import*) win32_libid_type="x86 archive import";; *) win32_libid_type="x86 archive static";; esac fi ;; *DLL*) win32_libid_type="x86 DLL" ;; *executable*) # but shell scripts are "executable" too... case $win32_fileres in *MS\ Windows\ PE\ Intel*) win32_libid_type="x86 DLL" ;; esac ;; esac $ECHO "$win32_libid_type" } # func_extract_an_archive dir oldlib func_extract_an_archive () { $opt_debug f_ex_an_ar_dir="$1"; shift f_ex_an_ar_oldlib="$1" func_show_eval "(cd \$f_ex_an_ar_dir && $AR x \"\$f_ex_an_ar_oldlib\")" 'exit $?' if ($AR t "$f_ex_an_ar_oldlib" | sort | sort -uc >/dev/null 2>&1); then : else func_fatal_error "object name conflicts in archive: $f_ex_an_ar_dir/$f_ex_an_ar_oldlib" fi } # func_extract_archives gentop oldlib ... func_extract_archives () { $opt_debug my_gentop="$1"; shift my_oldlibs=${1+"$@"} my_oldobjs="" my_xlib="" my_xabs="" my_xdir="" for my_xlib in $my_oldlibs; do # Extract the objects. case $my_xlib in [\\/]* | [A-Za-z]:[\\/]*) my_xabs="$my_xlib" ;; *) my_xabs=`pwd`"/$my_xlib" ;; esac func_basename "$my_xlib" my_xlib="$func_basename_result" my_xlib_u=$my_xlib while :; do case " $extracted_archives " in *" $my_xlib_u "*) func_arith $extracted_serial + 1 extracted_serial=$func_arith_result my_xlib_u=lt$extracted_serial-$my_xlib ;; *) break ;; esac done extracted_archives="$extracted_archives $my_xlib_u" my_xdir="$my_gentop/$my_xlib_u" func_mkdir_p "$my_xdir" case $host in *-darwin*) func_verbose "Extracting $my_xabs" # Do not bother doing anything if just a dry run $opt_dry_run || { darwin_orig_dir=`pwd` cd $my_xdir || exit $? darwin_archive=$my_xabs darwin_curdir=`pwd` darwin_base_archive=`basename "$darwin_archive"` darwin_arches=`$LIPO -info "$darwin_archive" 2>/dev/null | $GREP Architectures 2>/dev/null || true` if test -n "$darwin_arches"; then darwin_arches=`$ECHO "$darwin_arches" | $SED -e 's/.*are://'` darwin_arch= func_verbose "$darwin_base_archive has multiple architectures $darwin_arches" for darwin_arch in $darwin_arches ; do func_mkdir_p "unfat-$$/${darwin_base_archive}-${darwin_arch}" $LIPO -thin $darwin_arch -output "unfat-$$/${darwin_base_archive}-${darwin_arch}/${darwin_base_archive}" "${darwin_archive}" cd "unfat-$$/${darwin_base_archive}-${darwin_arch}" func_extract_an_archive "`pwd`" "${darwin_base_archive}" cd "$darwin_curdir" $RM "unfat-$$/${darwin_base_archive}-${darwin_arch}/${darwin_base_archive}" done # $darwin_arches ## Okay now we've a bunch of thin objects, gotta fatten them up :) darwin_filelist=`find unfat-$$ -type f -name \*.o -print -o -name \*.lo -print | $SED -e "$basename" | sort -u` darwin_file= darwin_files= for darwin_file in $darwin_filelist; do darwin_files=`find unfat-$$ -name $darwin_file -print | $NL2SP` $LIPO -create -output "$darwin_file" $darwin_files done # $darwin_filelist $RM -rf unfat-$$ cd "$darwin_orig_dir" else cd $darwin_orig_dir func_extract_an_archive "$my_xdir" "$my_xabs" fi # $darwin_arches } # !$opt_dry_run ;; *) func_extract_an_archive "$my_xdir" "$my_xabs" ;; esac my_oldobjs="$my_oldobjs "`find $my_xdir -name \*.$objext -print -o -name \*.lo -print | $NL2SP` done func_extract_archives_result="$my_oldobjs" } # func_emit_wrapper_part1 [arg=no] # # Emit the first part of a libtool wrapper script on stdout. # For more information, see the description associated with # func_emit_wrapper(), below. func_emit_wrapper_part1 () { func_emit_wrapper_part1_arg1=no if test -n "$1" ; then func_emit_wrapper_part1_arg1=$1 fi $ECHO "\ #! $SHELL # $output - temporary wrapper script for $objdir/$outputname # Generated by $PROGRAM (GNU $PACKAGE$TIMESTAMP) $VERSION # # The $output program cannot be directly executed until all the libtool # libraries that it depends on are installed. # # This wrapper script should never be moved out of the build directory. # If it is, it will not operate correctly. # Sed substitution that helps us do robust quoting. It backslashifies # metacharacters that are still active within double-quoted strings. Xsed='${SED} -e 1s/^X//' sed_quote_subst='$sed_quote_subst' # Be Bourne compatible if test -n \"\${ZSH_VERSION+set}\" && (emulate sh) >/dev/null 2>&1; then emulate sh NULLCMD=: # Zsh 3.x and 4.x performs word splitting on \${1+\"\$@\"}, which # is contrary to our usage. Disable this feature. alias -g '\${1+\"\$@\"}'='\"\$@\"' setopt NO_GLOB_SUBST else case \`(set -o) 2>/dev/null\` in *posix*) set -o posix;; esac fi BIN_SH=xpg4; export BIN_SH # for Tru64 DUALCASE=1; export DUALCASE # for MKS sh # The HP-UX ksh and POSIX shell print the target directory to stdout # if CDPATH is set. (unset CDPATH) >/dev/null 2>&1 && unset CDPATH relink_command=\"$relink_command\" # This environment variable determines our operation mode. if test \"\$libtool_install_magic\" = \"$magic\"; then # install mode needs the following variables: generated_by_libtool_version='$macro_version' notinst_deplibs='$notinst_deplibs' else # When we are sourced in execute mode, \$file and \$ECHO are already set. if test \"\$libtool_execute_magic\" != \"$magic\"; then ECHO=\"$qecho\" file=\"\$0\" # Make sure echo works. if test \"X\$1\" = X--no-reexec; then # Discard the --no-reexec flag, and continue. shift elif test \"X\`{ \$ECHO '\t'; } 2>/dev/null\`\" = 'X\t'; then # Yippee, \$ECHO works! : else # Restart under the correct shell, and then maybe \$ECHO will work. exec $SHELL \"\$0\" --no-reexec \${1+\"\$@\"} fi fi\ " $ECHO "\ # Find the directory that this script lives in. thisdir=\`\$ECHO \"X\$file\" | \$Xsed -e 's%/[^/]*$%%'\` test \"x\$thisdir\" = \"x\$file\" && thisdir=. # Follow symbolic links until we get to the real thisdir. file=\`ls -ld \"\$file\" | ${SED} -n 's/.*-> //p'\` while test -n \"\$file\"; do destdir=\`\$ECHO \"X\$file\" | \$Xsed -e 's%/[^/]*\$%%'\` # If there was a directory component, then change thisdir. if test \"x\$destdir\" != \"x\$file\"; then case \"\$destdir\" in [\\\\/]* | [A-Za-z]:[\\\\/]*) thisdir=\"\$destdir\" ;; *) thisdir=\"\$thisdir/\$destdir\" ;; esac fi file=\`\$ECHO \"X\$file\" | \$Xsed -e 's%^.*/%%'\` file=\`ls -ld \"\$thisdir/\$file\" | ${SED} -n 's/.*-> //p'\` done " } # end: func_emit_wrapper_part1 # func_emit_wrapper_part2 [arg=no] # # Emit the second part of a libtool wrapper script on stdout. # For more information, see the description associated with # func_emit_wrapper(), below. func_emit_wrapper_part2 () { func_emit_wrapper_part2_arg1=no if test -n "$1" ; then func_emit_wrapper_part2_arg1=$1 fi $ECHO "\ # Usually 'no', except on cygwin/mingw when embedded into # the cwrapper. WRAPPER_SCRIPT_BELONGS_IN_OBJDIR=$func_emit_wrapper_part2_arg1 if test \"\$WRAPPER_SCRIPT_BELONGS_IN_OBJDIR\" = \"yes\"; then # special case for '.' if test \"\$thisdir\" = \".\"; then thisdir=\`pwd\` fi # remove .libs from thisdir case \"\$thisdir\" in *[\\\\/]$objdir ) thisdir=\`\$ECHO \"X\$thisdir\" | \$Xsed -e 's%[\\\\/][^\\\\/]*$%%'\` ;; $objdir ) thisdir=. ;; esac fi # Try to get the absolute directory name. absdir=\`cd \"\$thisdir\" && pwd\` test -n \"\$absdir\" && thisdir=\"\$absdir\" " if test "$fast_install" = yes; then $ECHO "\ program=lt-'$outputname'$exeext progdir=\"\$thisdir/$objdir\" if test ! -f \"\$progdir/\$program\" || { file=\`ls -1dt \"\$progdir/\$program\" \"\$progdir/../\$program\" 2>/dev/null | ${SED} 1q\`; \\ test \"X\$file\" != \"X\$progdir/\$program\"; }; then file=\"\$\$-\$program\" if test ! -d \"\$progdir\"; then $MKDIR \"\$progdir\" else $RM \"\$progdir/\$file\" fi" $ECHO "\ # relink executable if necessary if test -n \"\$relink_command\"; then if relink_command_output=\`eval \$relink_command 2>&1\`; then : else $ECHO \"\$relink_command_output\" >&2 $RM \"\$progdir/\$file\" exit 1 fi fi $MV \"\$progdir/\$file\" \"\$progdir/\$program\" 2>/dev/null || { $RM \"\$progdir/\$program\"; $MV \"\$progdir/\$file\" \"\$progdir/\$program\"; } $RM \"\$progdir/\$file\" fi" else $ECHO "\ program='$outputname' progdir=\"\$thisdir/$objdir\" " fi $ECHO "\ if test -f \"\$progdir/\$program\"; then" # Export our shlibpath_var if we have one. if test "$shlibpath_overrides_runpath" = yes && test -n "$shlibpath_var" && test -n "$temp_rpath"; then $ECHO "\ # Add our own library path to $shlibpath_var $shlibpath_var=\"$temp_rpath\$$shlibpath_var\" # Some systems cannot cope with colon-terminated $shlibpath_var # The second colon is a workaround for a bug in BeOS R4 sed $shlibpath_var=\`\$ECHO \"X\$$shlibpath_var\" | \$Xsed -e 's/::*\$//'\` export $shlibpath_var " fi # fixup the dll searchpath if we need to. if test -n "$dllsearchpath"; then $ECHO "\ # Add the dll search path components to the executable PATH PATH=$dllsearchpath:\$PATH " fi $ECHO "\ if test \"\$libtool_execute_magic\" != \"$magic\"; then # Run the actual program with our arguments. " case $host in # Backslashes separate directories on plain windows *-*-mingw | *-*-os2* | *-cegcc*) $ECHO "\ exec \"\$progdir\\\\\$program\" \${1+\"\$@\"} " ;; *) $ECHO "\ exec \"\$progdir/\$program\" \${1+\"\$@\"} " ;; esac $ECHO "\ \$ECHO \"\$0: cannot exec \$program \$*\" 1>&2 exit 1 fi else # The program doesn't exist. \$ECHO \"\$0: error: \\\`\$progdir/\$program' does not exist\" 1>&2 \$ECHO \"This script is just a wrapper for \$program.\" 1>&2 $ECHO \"See the $PACKAGE documentation for more information.\" 1>&2 exit 1 fi fi\ " } # end: func_emit_wrapper_part2 # func_emit_wrapper [arg=no] # # Emit a libtool wrapper script on stdout. # Don't directly open a file because we may want to # incorporate the script contents within a cygwin/mingw # wrapper executable. Must ONLY be called from within # func_mode_link because it depends on a number of variables # set therein. # # ARG is the value that the WRAPPER_SCRIPT_BELONGS_IN_OBJDIR # variable will take. If 'yes', then the emitted script # will assume that the directory in which it is stored is # the $objdir directory. This is a cygwin/mingw-specific # behavior. func_emit_wrapper () { func_emit_wrapper_arg1=no if test -n "$1" ; then func_emit_wrapper_arg1=$1 fi # split this up so that func_emit_cwrapperexe_src # can call each part independently. func_emit_wrapper_part1 "${func_emit_wrapper_arg1}" func_emit_wrapper_part2 "${func_emit_wrapper_arg1}" } # func_to_host_path arg # # Convert paths to host format when used with build tools. # Intended for use with "native" mingw (where libtool itself # is running under the msys shell), or in the following cross- # build environments: # $build $host # mingw (msys) mingw [e.g. native] # cygwin mingw # *nix + wine mingw # where wine is equipped with the `winepath' executable. # In the native mingw case, the (msys) shell automatically # converts paths for any non-msys applications it launches, # but that facility isn't available from inside the cwrapper. # Similar accommodations are necessary for $host mingw and # $build cygwin. Calling this function does no harm for other # $host/$build combinations not listed above. # # ARG is the path (on $build) that should be converted to # the proper representation for $host. The result is stored # in $func_to_host_path_result. func_to_host_path () { func_to_host_path_result="$1" if test -n "$1" ; then case $host in *mingw* ) lt_sed_naive_backslashify='s|\\\\*|\\|g;s|/|\\|g;s|\\|\\\\|g' case $build in *mingw* ) # actually, msys # awkward: cmd appends spaces to result lt_sed_strip_trailing_spaces="s/[ ]*\$//" func_to_host_path_tmp1=`( cmd //c echo "$1" |\ $SED -e "$lt_sed_strip_trailing_spaces" ) 2>/dev/null || echo ""` func_to_host_path_result=`echo "$func_to_host_path_tmp1" |\ $SED -e "$lt_sed_naive_backslashify"` ;; *cygwin* ) func_to_host_path_tmp1=`cygpath -w "$1"` func_to_host_path_result=`echo "$func_to_host_path_tmp1" |\ $SED -e "$lt_sed_naive_backslashify"` ;; * ) # Unfortunately, winepath does not exit with a non-zero # error code, so we are forced to check the contents of # stdout. On the other hand, if the command is not # found, the shell will set an exit code of 127 and print # *an error message* to stdout. So we must check for both # error code of zero AND non-empty stdout, which explains # the odd construction: func_to_host_path_tmp1=`winepath -w "$1" 2>/dev/null` if test "$?" -eq 0 && test -n "${func_to_host_path_tmp1}"; then func_to_host_path_result=`echo "$func_to_host_path_tmp1" |\ $SED -e "$lt_sed_naive_backslashify"` else # Allow warning below. func_to_host_path_result="" fi ;; esac if test -z "$func_to_host_path_result" ; then func_error "Could not determine host path corresponding to" func_error " '$1'" func_error "Continuing, but uninstalled executables may not work." # Fallback: func_to_host_path_result="$1" fi ;; esac fi } # end: func_to_host_path # func_to_host_pathlist arg # # Convert pathlists to host format when used with build tools. # See func_to_host_path(), above. This function supports the # following $build/$host combinations (but does no harm for # combinations not listed here): # $build $host # mingw (msys) mingw [e.g. native] # cygwin mingw # *nix + wine mingw # # Path separators are also converted from $build format to # $host format. If ARG begins or ends with a path separator # character, it is preserved (but converted to $host format) # on output. # # ARG is a pathlist (on $build) that should be converted to # the proper representation on $host. The result is stored # in $func_to_host_pathlist_result. func_to_host_pathlist () { func_to_host_pathlist_result="$1" if test -n "$1" ; then case $host in *mingw* ) lt_sed_naive_backslashify='s|\\\\*|\\|g;s|/|\\|g;s|\\|\\\\|g' # Remove leading and trailing path separator characters from # ARG. msys behavior is inconsistent here, cygpath turns them # into '.;' and ';.', and winepath ignores them completely. func_to_host_pathlist_tmp2="$1" # Once set for this call, this variable should not be # reassigned. It is used in tha fallback case. func_to_host_pathlist_tmp1=`echo "$func_to_host_pathlist_tmp2" |\ $SED -e 's|^:*||' -e 's|:*$||'` case $build in *mingw* ) # Actually, msys. # Awkward: cmd appends spaces to result. lt_sed_strip_trailing_spaces="s/[ ]*\$//" func_to_host_pathlist_tmp2=`( cmd //c echo "$func_to_host_pathlist_tmp1" |\ $SED -e "$lt_sed_strip_trailing_spaces" ) 2>/dev/null || echo ""` func_to_host_pathlist_result=`echo "$func_to_host_pathlist_tmp2" |\ $SED -e "$lt_sed_naive_backslashify"` ;; *cygwin* ) func_to_host_pathlist_tmp2=`cygpath -w -p "$func_to_host_pathlist_tmp1"` func_to_host_pathlist_result=`echo "$func_to_host_pathlist_tmp2" |\ $SED -e "$lt_sed_naive_backslashify"` ;; * ) # unfortunately, winepath doesn't convert pathlists func_to_host_pathlist_result="" func_to_host_pathlist_oldIFS=$IFS IFS=: for func_to_host_pathlist_f in $func_to_host_pathlist_tmp1 ; do IFS=$func_to_host_pathlist_oldIFS if test -n "$func_to_host_pathlist_f" ; then func_to_host_path "$func_to_host_pathlist_f" if test -n "$func_to_host_path_result" ; then if test -z "$func_to_host_pathlist_result" ; then func_to_host_pathlist_result="$func_to_host_path_result" else func_to_host_pathlist_result="$func_to_host_pathlist_result;$func_to_host_path_result" fi fi fi IFS=: done IFS=$func_to_host_pathlist_oldIFS ;; esac if test -z "$func_to_host_pathlist_result" ; then func_error "Could not determine the host path(s) corresponding to" func_error " '$1'" func_error "Continuing, but uninstalled executables may not work." # Fallback. This may break if $1 contains DOS-style drive # specifications. The fix is not to complicate the expression # below, but for the user to provide a working wine installation # with winepath so that path translation in the cross-to-mingw # case works properly. lt_replace_pathsep_nix_to_dos="s|:|;|g" func_to_host_pathlist_result=`echo "$func_to_host_pathlist_tmp1" |\ $SED -e "$lt_replace_pathsep_nix_to_dos"` fi # Now, add the leading and trailing path separators back case "$1" in :* ) func_to_host_pathlist_result=";$func_to_host_pathlist_result" ;; esac case "$1" in *: ) func_to_host_pathlist_result="$func_to_host_pathlist_result;" ;; esac ;; esac fi } # end: func_to_host_pathlist # func_emit_cwrapperexe_src # emit the source code for a wrapper executable on stdout # Must ONLY be called from within func_mode_link because # it depends on a number of variable set therein. func_emit_cwrapperexe_src () { cat < #include #ifdef _MSC_VER # include # include # include # define setmode _setmode #else # include # include # ifdef __CYGWIN__ # include # define HAVE_SETENV # ifdef __STRICT_ANSI__ char *realpath (const char *, char *); int putenv (char *); int setenv (const char *, const char *, int); # endif # endif #endif #include #include #include #include #include #include #include #include #if defined(PATH_MAX) # define LT_PATHMAX PATH_MAX #elif defined(MAXPATHLEN) # define LT_PATHMAX MAXPATHLEN #else # define LT_PATHMAX 1024 #endif #ifndef S_IXOTH # define S_IXOTH 0 #endif #ifndef S_IXGRP # define S_IXGRP 0 #endif #ifdef _MSC_VER # define S_IXUSR _S_IEXEC # define stat _stat # ifndef _INTPTR_T_DEFINED # define intptr_t int # endif #endif #ifndef DIR_SEPARATOR # define DIR_SEPARATOR '/' # define PATH_SEPARATOR ':' #endif #if defined (_WIN32) || defined (__MSDOS__) || defined (__DJGPP__) || \ defined (__OS2__) # define HAVE_DOS_BASED_FILE_SYSTEM # define FOPEN_WB "wb" # ifndef DIR_SEPARATOR_2 # define DIR_SEPARATOR_2 '\\' # endif # ifndef PATH_SEPARATOR_2 # define PATH_SEPARATOR_2 ';' # endif #endif #ifndef DIR_SEPARATOR_2 # define IS_DIR_SEPARATOR(ch) ((ch) == DIR_SEPARATOR) #else /* DIR_SEPARATOR_2 */ # define IS_DIR_SEPARATOR(ch) \ (((ch) == DIR_SEPARATOR) || ((ch) == DIR_SEPARATOR_2)) #endif /* DIR_SEPARATOR_2 */ #ifndef PATH_SEPARATOR_2 # define IS_PATH_SEPARATOR(ch) ((ch) == PATH_SEPARATOR) #else /* PATH_SEPARATOR_2 */ # define IS_PATH_SEPARATOR(ch) ((ch) == PATH_SEPARATOR_2) #endif /* PATH_SEPARATOR_2 */ #ifdef __CYGWIN__ # define FOPEN_WB "wb" #endif #ifndef FOPEN_WB # define FOPEN_WB "w" #endif #ifndef _O_BINARY # define _O_BINARY 0 #endif #define XMALLOC(type, num) ((type *) xmalloc ((num) * sizeof(type))) #define XFREE(stale) do { \ if (stale) { free ((void *) stale); stale = 0; } \ } while (0) #undef LTWRAPPER_DEBUGPRINTF #if defined DEBUGWRAPPER # define LTWRAPPER_DEBUGPRINTF(args) ltwrapper_debugprintf args static void ltwrapper_debugprintf (const char *fmt, ...) { va_list args; va_start (args, fmt); (void) vfprintf (stderr, fmt, args); va_end (args); } #else # define LTWRAPPER_DEBUGPRINTF(args) #endif const char *program_name = NULL; void *xmalloc (size_t num); char *xstrdup (const char *string); const char *base_name (const char *name); char *find_executable (const char *wrapper); char *chase_symlinks (const char *pathspec); int make_executable (const char *path); int check_executable (const char *path); char *strendzap (char *str, const char *pat); void lt_fatal (const char *message, ...); void lt_setenv (const char *name, const char *value); char *lt_extend_str (const char *orig_value, const char *add, int to_end); void lt_opt_process_env_set (const char *arg); void lt_opt_process_env_prepend (const char *arg); void lt_opt_process_env_append (const char *arg); int lt_split_name_value (const char *arg, char** name, char** value); void lt_update_exe_path (const char *name, const char *value); void lt_update_lib_path (const char *name, const char *value); static const char *script_text_part1 = EOF func_emit_wrapper_part1 yes | $SED -e 's/\([\\"]\)/\\\1/g' \ -e 's/^/ "/' -e 's/$/\\n"/' echo ";" cat <"))); for (i = 0; i < newargc; i++) { LTWRAPPER_DEBUGPRINTF (("(main) newargz[%d] : %s\n", i, (newargz[i] ? newargz[i] : ""))); } EOF case $host_os in mingw*) cat <<"EOF" /* execv doesn't actually work on mingw as expected on unix */ rval = _spawnv (_P_WAIT, lt_argv_zero, (const char * const *) newargz); if (rval == -1) { /* failed to start process */ LTWRAPPER_DEBUGPRINTF (("(main) failed to launch target \"%s\": errno = %d\n", lt_argv_zero, errno)); return 127; } return rval; EOF ;; *) cat <<"EOF" execv (lt_argv_zero, newargz); return rval; /* =127, but avoids unused variable warning */ EOF ;; esac cat <<"EOF" } void * xmalloc (size_t num) { void *p = (void *) malloc (num); if (!p) lt_fatal ("Memory exhausted"); return p; } char * xstrdup (const char *string) { return string ? strcpy ((char *) xmalloc (strlen (string) + 1), string) : NULL; } const char * base_name (const char *name) { const char *base; #if defined (HAVE_DOS_BASED_FILE_SYSTEM) /* Skip over the disk name in MSDOS pathnames. */ if (isalpha ((unsigned char) name[0]) && name[1] == ':') name += 2; #endif for (base = name; *name; name++) if (IS_DIR_SEPARATOR (*name)) base = name + 1; return base; } int check_executable (const char *path) { struct stat st; LTWRAPPER_DEBUGPRINTF (("(check_executable) : %s\n", path ? (*path ? path : "EMPTY!") : "NULL!")); if ((!path) || (!*path)) return 0; if ((stat (path, &st) >= 0) && (st.st_mode & (S_IXUSR | S_IXGRP | S_IXOTH))) return 1; else return 0; } int make_executable (const char *path) { int rval = 0; struct stat st; LTWRAPPER_DEBUGPRINTF (("(make_executable) : %s\n", path ? (*path ? path : "EMPTY!") : "NULL!")); if ((!path) || (!*path)) return 0; if (stat (path, &st) >= 0) { rval = chmod (path, st.st_mode | S_IXOTH | S_IXGRP | S_IXUSR); } return rval; } /* Searches for the full path of the wrapper. Returns newly allocated full path name if found, NULL otherwise Does not chase symlinks, even on platforms that support them. */ char * find_executable (const char *wrapper) { int has_slash = 0; const char *p; const char *p_next; /* static buffer for getcwd */ char tmp[LT_PATHMAX + 1]; int tmp_len; char *concat_name; LTWRAPPER_DEBUGPRINTF (("(find_executable) : %s\n", wrapper ? (*wrapper ? wrapper : "EMPTY!") : "NULL!")); if ((wrapper == NULL) || (*wrapper == '\0')) return NULL; /* Absolute path? */ #if defined (HAVE_DOS_BASED_FILE_SYSTEM) if (isalpha ((unsigned char) wrapper[0]) && wrapper[1] == ':') { concat_name = xstrdup (wrapper); if (check_executable (concat_name)) return concat_name; XFREE (concat_name); } else { #endif if (IS_DIR_SEPARATOR (wrapper[0])) { concat_name = xstrdup (wrapper); if (check_executable (concat_name)) return concat_name; XFREE (concat_name); } #if defined (HAVE_DOS_BASED_FILE_SYSTEM) } #endif for (p = wrapper; *p; p++) if (*p == '/') { has_slash = 1; break; } if (!has_slash) { /* no slashes; search PATH */ const char *path = getenv ("PATH"); if (path != NULL) { for (p = path; *p; p = p_next) { const char *q; size_t p_len; for (q = p; *q; q++) if (IS_PATH_SEPARATOR (*q)) break; p_len = q - p; p_next = (*q == '\0' ? q : q + 1); if (p_len == 0) { /* empty path: current directory */ if (getcwd (tmp, LT_PATHMAX) == NULL) lt_fatal ("getcwd failed"); tmp_len = strlen (tmp); concat_name = XMALLOC (char, tmp_len + 1 + strlen (wrapper) + 1); memcpy (concat_name, tmp, tmp_len); concat_name[tmp_len] = '/'; strcpy (concat_name + tmp_len + 1, wrapper); } else { concat_name = XMALLOC (char, p_len + 1 + strlen (wrapper) + 1); memcpy (concat_name, p, p_len); concat_name[p_len] = '/'; strcpy (concat_name + p_len + 1, wrapper); } if (check_executable (concat_name)) return concat_name; XFREE (concat_name); } } /* not found in PATH; assume curdir */ } /* Relative path | not found in path: prepend cwd */ if (getcwd (tmp, LT_PATHMAX) == NULL) lt_fatal ("getcwd failed"); tmp_len = strlen (tmp); concat_name = XMALLOC (char, tmp_len + 1 + strlen (wrapper) + 1); memcpy (concat_name, tmp, tmp_len); concat_name[tmp_len] = '/'; strcpy (concat_name + tmp_len + 1, wrapper); if (check_executable (concat_name)) return concat_name; XFREE (concat_name); return NULL; } char * chase_symlinks (const char *pathspec) { #ifndef S_ISLNK return xstrdup (pathspec); #else char buf[LT_PATHMAX]; struct stat s; char *tmp_pathspec = xstrdup (pathspec); char *p; int has_symlinks = 0; while (strlen (tmp_pathspec) && !has_symlinks) { LTWRAPPER_DEBUGPRINTF (("checking path component for symlinks: %s\n", tmp_pathspec)); if (lstat (tmp_pathspec, &s) == 0) { if (S_ISLNK (s.st_mode) != 0) { has_symlinks = 1; break; } /* search backwards for last DIR_SEPARATOR */ p = tmp_pathspec + strlen (tmp_pathspec) - 1; while ((p > tmp_pathspec) && (!IS_DIR_SEPARATOR (*p))) p--; if ((p == tmp_pathspec) && (!IS_DIR_SEPARATOR (*p))) { /* no more DIR_SEPARATORS left */ break; } *p = '\0'; } else { char *errstr = strerror (errno); lt_fatal ("Error accessing file %s (%s)", tmp_pathspec, errstr); } } XFREE (tmp_pathspec); if (!has_symlinks) { return xstrdup (pathspec); } tmp_pathspec = realpath (pathspec, buf); if (tmp_pathspec == 0) { lt_fatal ("Could not follow symlinks for %s", pathspec); } return xstrdup (tmp_pathspec); #endif } char * strendzap (char *str, const char *pat) { size_t len, patlen; assert (str != NULL); assert (pat != NULL); len = strlen (str); patlen = strlen (pat); if (patlen <= len) { str += len - patlen; if (strcmp (str, pat) == 0) *str = '\0'; } return str; } static void lt_error_core (int exit_status, const char *mode, const char *message, va_list ap) { fprintf (stderr, "%s: %s: ", program_name, mode); vfprintf (stderr, message, ap); fprintf (stderr, ".\n"); if (exit_status >= 0) exit (exit_status); } void lt_fatal (const char *message, ...) { va_list ap; va_start (ap, message); lt_error_core (EXIT_FAILURE, "FATAL", message, ap); va_end (ap); } void lt_setenv (const char *name, const char *value) { LTWRAPPER_DEBUGPRINTF (("(lt_setenv) setting '%s' to '%s'\n", (name ? name : ""), (value ? value : ""))); { #ifdef HAVE_SETENV /* always make a copy, for consistency with !HAVE_SETENV */ char *str = xstrdup (value); setenv (name, str, 1); #else int len = strlen (name) + 1 + strlen (value) + 1; char *str = XMALLOC (char, len); sprintf (str, "%s=%s", name, value); if (putenv (str) != EXIT_SUCCESS) { XFREE (str); } #endif } } char * lt_extend_str (const char *orig_value, const char *add, int to_end) { char *new_value; if (orig_value && *orig_value) { int orig_value_len = strlen (orig_value); int add_len = strlen (add); new_value = XMALLOC (char, add_len + orig_value_len + 1); if (to_end) { strcpy (new_value, orig_value); strcpy (new_value + orig_value_len, add); } else { strcpy (new_value, add); strcpy (new_value + add_len, orig_value); } } else { new_value = xstrdup (add); } return new_value; } int lt_split_name_value (const char *arg, char** name, char** value) { const char *p; int len; if (!arg || !*arg) return 1; p = strchr (arg, (int)'='); if (!p) return 1; *value = xstrdup (++p); len = strlen (arg) - strlen (*value); *name = XMALLOC (char, len); strncpy (*name, arg, len-1); (*name)[len - 1] = '\0'; return 0; } void lt_opt_process_env_set (const char *arg) { char *name = NULL; char *value = NULL; if (lt_split_name_value (arg, &name, &value) != 0) { XFREE (name); XFREE (value); lt_fatal ("bad argument for %s: '%s'", env_set_opt, arg); } lt_setenv (name, value); XFREE (name); XFREE (value); } void lt_opt_process_env_prepend (const char *arg) { char *name = NULL; char *value = NULL; char *new_value = NULL; if (lt_split_name_value (arg, &name, &value) != 0) { XFREE (name); XFREE (value); lt_fatal ("bad argument for %s: '%s'", env_prepend_opt, arg); } new_value = lt_extend_str (getenv (name), value, 0); lt_setenv (name, new_value); XFREE (new_value); XFREE (name); XFREE (value); } void lt_opt_process_env_append (const char *arg) { char *name = NULL; char *value = NULL; char *new_value = NULL; if (lt_split_name_value (arg, &name, &value) != 0) { XFREE (name); XFREE (value); lt_fatal ("bad argument for %s: '%s'", env_append_opt, arg); } new_value = lt_extend_str (getenv (name), value, 1); lt_setenv (name, new_value); XFREE (new_value); XFREE (name); XFREE (value); } void lt_update_exe_path (const char *name, const char *value) { LTWRAPPER_DEBUGPRINTF (("(lt_update_exe_path) modifying '%s' by prepending '%s'\n", (name ? name : ""), (value ? value : ""))); if (name && *name && value && *value) { char *new_value = lt_extend_str (getenv (name), value, 0); /* some systems can't cope with a ':'-terminated path #' */ int len = strlen (new_value); while (((len = strlen (new_value)) > 0) && IS_PATH_SEPARATOR (new_value[len-1])) { new_value[len-1] = '\0'; } lt_setenv (name, new_value); XFREE (new_value); } } void lt_update_lib_path (const char *name, const char *value) { LTWRAPPER_DEBUGPRINTF (("(lt_update_lib_path) modifying '%s' by prepending '%s'\n", (name ? name : ""), (value ? value : ""))); if (name && *name && value && *value) { char *new_value = lt_extend_str (getenv (name), value, 0); lt_setenv (name, new_value); XFREE (new_value); } } EOF } # end: func_emit_cwrapperexe_src # func_mode_link arg... func_mode_link () { $opt_debug case $host in *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-cegcc*) # It is impossible to link a dll without this setting, and # we shouldn't force the makefile maintainer to figure out # which system we are compiling for in order to pass an extra # flag for every libtool invocation. # allow_undefined=no # FIXME: Unfortunately, there are problems with the above when trying # to make a dll which has undefined symbols, in which case not # even a static library is built. For now, we need to specify # -no-undefined on the libtool link line when we can be certain # that all symbols are satisfied, otherwise we get a static library. allow_undefined=yes ;; *) allow_undefined=yes ;; esac libtool_args=$nonopt base_compile="$nonopt $@" compile_command=$nonopt finalize_command=$nonopt compile_rpath= finalize_rpath= compile_shlibpath= finalize_shlibpath= convenience= old_convenience= deplibs= old_deplibs= compiler_flags= linker_flags= dllsearchpath= lib_search_path=`pwd` inst_prefix_dir= new_inherited_linker_flags= avoid_version=no dlfiles= dlprefiles= dlself=no export_dynamic=no export_symbols= export_symbols_regex= generated= libobjs= ltlibs= module=no no_install=no objs= non_pic_objects= precious_files_regex= prefer_static_libs=no preload=no prev= prevarg= release= rpath= xrpath= perm_rpath= temp_rpath= thread_safe=no vinfo= vinfo_number=no weak_libs= single_module="${wl}-single_module" func_infer_tag $base_compile # We need to know -static, to get the right output filenames. for arg do case $arg in -shared) test "$build_libtool_libs" != yes && \ func_fatal_configuration "can not build a shared library" build_old_libs=no break ;; -all-static | -static | -static-libtool-libs) case $arg in -all-static) if test "$build_libtool_libs" = yes && test -z "$link_static_flag"; then func_warning "complete static linking is impossible in this configuration" fi if test -n "$link_static_flag"; then dlopen_self=$dlopen_self_static fi prefer_static_libs=yes ;; -static) if test -z "$pic_flag" && test -n "$link_static_flag"; then dlopen_self=$dlopen_self_static fi prefer_static_libs=built ;; -static-libtool-libs) if test -z "$pic_flag" && test -n "$link_static_flag"; then dlopen_self=$dlopen_self_static fi prefer_static_libs=yes ;; esac build_libtool_libs=no build_old_libs=yes break ;; esac done # See if our shared archives depend on static archives. test -n "$old_archive_from_new_cmds" && build_old_libs=yes # Go through the arguments, transforming them on the way. while test "$#" -gt 0; do arg="$1" shift func_quote_for_eval "$arg" qarg=$func_quote_for_eval_unquoted_result func_append libtool_args " $func_quote_for_eval_result" # If the previous option needs an argument, assign it. if test -n "$prev"; then case $prev in output) func_append compile_command " @OUTPUT@" func_append finalize_command " @OUTPUT@" ;; esac case $prev in dlfiles|dlprefiles) if test "$preload" = no; then # Add the symbol object into the linking commands. func_append compile_command " @SYMFILE@" func_append finalize_command " @SYMFILE@" preload=yes fi case $arg in *.la | *.lo) ;; # We handle these cases below. force) if test "$dlself" = no; then dlself=needless export_dynamic=yes fi prev= continue ;; self) if test "$prev" = dlprefiles; then dlself=yes elif test "$prev" = dlfiles && test "$dlopen_self" != yes; then dlself=yes else dlself=needless export_dynamic=yes fi prev= continue ;; *) if test "$prev" = dlfiles; then dlfiles="$dlfiles $arg" else dlprefiles="$dlprefiles $arg" fi prev= continue ;; esac ;; expsyms) export_symbols="$arg" test -f "$arg" \ || func_fatal_error "symbol file \`$arg' does not exist" prev= continue ;; expsyms_regex) export_symbols_regex="$arg" prev= continue ;; framework) case $host in *-*-darwin*) case "$deplibs " in *" $qarg.ltframework "*) ;; *) deplibs="$deplibs $qarg.ltframework" # this is fixed later ;; esac ;; esac prev= continue ;; inst_prefix) inst_prefix_dir="$arg" prev= continue ;; objectlist) if test -f "$arg"; then save_arg=$arg moreargs= for fil in `cat "$save_arg"` do # moreargs="$moreargs $fil" arg=$fil # A libtool-controlled object. # Check to see that this really is a libtool object. if func_lalib_unsafe_p "$arg"; then pic_object= non_pic_object= # Read the .lo file func_source "$arg" if test -z "$pic_object" || test -z "$non_pic_object" || test "$pic_object" = none && test "$non_pic_object" = none; then func_fatal_error "cannot find name of object for \`$arg'" fi # Extract subdirectory from the argument. func_dirname "$arg" "/" "" xdir="$func_dirname_result" if test "$pic_object" != none; then # Prepend the subdirectory the object is found in. pic_object="$xdir$pic_object" if test "$prev" = dlfiles; then if test "$build_libtool_libs" = yes && test "$dlopen_support" = yes; then dlfiles="$dlfiles $pic_object" prev= continue else # If libtool objects are unsupported, then we need to preload. prev=dlprefiles fi fi # CHECK ME: I think I busted this. -Ossama if test "$prev" = dlprefiles; then # Preload the old-style object. dlprefiles="$dlprefiles $pic_object" prev= fi # A PIC object. func_append libobjs " $pic_object" arg="$pic_object" fi # Non-PIC object. if test "$non_pic_object" != none; then # Prepend the subdirectory the object is found in. non_pic_object="$xdir$non_pic_object" # A standard non-PIC object func_append non_pic_objects " $non_pic_object" if test -z "$pic_object" || test "$pic_object" = none ; then arg="$non_pic_object" fi else # If the PIC object exists, use it instead. # $xdir was prepended to $pic_object above. non_pic_object="$pic_object" func_append non_pic_objects " $non_pic_object" fi else # Only an error if not doing a dry-run. if $opt_dry_run; then # Extract subdirectory from the argument. func_dirname "$arg" "/" "" xdir="$func_dirname_result" func_lo2o "$arg" pic_object=$xdir$objdir/$func_lo2o_result non_pic_object=$xdir$func_lo2o_result func_append libobjs " $pic_object" func_append non_pic_objects " $non_pic_object" else func_fatal_error "\`$arg' is not a valid libtool object" fi fi done else func_fatal_error "link input file \`$arg' does not exist" fi arg=$save_arg prev= continue ;; precious_regex) precious_files_regex="$arg" prev= continue ;; release) release="-$arg" prev= continue ;; rpath | xrpath) # We need an absolute path. case $arg in [\\/]* | [A-Za-z]:[\\/]*) ;; *) func_fatal_error "only absolute run-paths are allowed" ;; esac if test "$prev" = rpath; then case "$rpath " in *" $arg "*) ;; *) rpath="$rpath $arg" ;; esac else case "$xrpath " in *" $arg "*) ;; *) xrpath="$xrpath $arg" ;; esac fi prev= continue ;; shrext) shrext_cmds="$arg" prev= continue ;; weak) weak_libs="$weak_libs $arg" prev= continue ;; xcclinker) linker_flags="$linker_flags $qarg" compiler_flags="$compiler_flags $qarg" prev= func_append compile_command " $qarg" func_append finalize_command " $qarg" continue ;; xcompiler) compiler_flags="$compiler_flags $qarg" prev= func_append compile_command " $qarg" func_append finalize_command " $qarg" continue ;; xlinker) linker_flags="$linker_flags $qarg" compiler_flags="$compiler_flags $wl$qarg" prev= func_append compile_command " $wl$qarg" func_append finalize_command " $wl$qarg" continue ;; *) eval "$prev=\"\$arg\"" prev= continue ;; esac fi # test -n "$prev" prevarg="$arg" case $arg in -all-static) if test -n "$link_static_flag"; then # See comment for -static flag below, for more details. func_append compile_command " $link_static_flag" func_append finalize_command " $link_static_flag" fi continue ;; -allow-undefined) # FIXME: remove this flag sometime in the future. func_fatal_error "\`-allow-undefined' must not be used because it is the default" ;; -avoid-version) avoid_version=yes continue ;; -dlopen) prev=dlfiles continue ;; -dlpreopen) prev=dlprefiles continue ;; -export-dynamic) export_dynamic=yes continue ;; -export-symbols | -export-symbols-regex) if test -n "$export_symbols" || test -n "$export_symbols_regex"; then func_fatal_error "more than one -exported-symbols argument is not allowed" fi if test "X$arg" = "X-export-symbols"; then prev=expsyms else prev=expsyms_regex fi continue ;; -framework) prev=framework continue ;; -inst-prefix-dir) prev=inst_prefix continue ;; # The native IRIX linker understands -LANG:*, -LIST:* and -LNO:* # so, if we see these flags be careful not to treat them like -L -L[A-Z][A-Z]*:*) case $with_gcc/$host in no/*-*-irix* | /*-*-irix*) func_append compile_command " $arg" func_append finalize_command " $arg" ;; esac continue ;; -L*) func_stripname '-L' '' "$arg" dir=$func_stripname_result if test -z "$dir"; then if test "$#" -gt 0; then func_fatal_error "require no space between \`-L' and \`$1'" else func_fatal_error "need path for \`-L' option" fi fi # We need an absolute path. case $dir in [\\/]* | [A-Za-z]:[\\/]*) ;; *) absdir=`cd "$dir" && pwd` test -z "$absdir" && \ func_fatal_error "cannot determine absolute directory name of \`$dir'" dir="$absdir" ;; esac case "$deplibs " in *" -L$dir "*) ;; *) deplibs="$deplibs -L$dir" lib_search_path="$lib_search_path $dir" ;; esac case $host in *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-cegcc*) testbindir=`$ECHO "X$dir" | $Xsed -e 's*/lib$*/bin*'` case :$dllsearchpath: in *":$dir:"*) ;; ::) dllsearchpath=$dir;; *) dllsearchpath="$dllsearchpath:$dir";; esac case :$dllsearchpath: in *":$testbindir:"*) ;; ::) dllsearchpath=$testbindir;; *) dllsearchpath="$dllsearchpath:$testbindir";; esac ;; esac continue ;; -l*) if test "X$arg" = "X-lc" || test "X$arg" = "X-lm"; then case $host in *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-beos* | *-cegcc*) # These systems don't actually have a C or math library (as such) continue ;; *-*-os2*) # These systems don't actually have a C library (as such) test "X$arg" = "X-lc" && continue ;; *-*-openbsd* | *-*-freebsd* | *-*-dragonfly*) # Do not include libc due to us having libc/libc_r. test "X$arg" = "X-lc" && continue ;; *-*-rhapsody* | *-*-darwin1.[012]) # Rhapsody C and math libraries are in the System framework deplibs="$deplibs System.ltframework" continue ;; *-*-sco3.2v5* | *-*-sco5v6*) # Causes problems with __ctype test "X$arg" = "X-lc" && continue ;; *-*-sysv4.2uw2* | *-*-sysv5* | *-*-unixware* | *-*-OpenUNIX*) # Compiler inserts libc in the correct place for threads to work test "X$arg" = "X-lc" && continue ;; esac elif test "X$arg" = "X-lc_r"; then case $host in *-*-openbsd* | *-*-freebsd* | *-*-dragonfly*) # Do not include libc_r directly, use -pthread flag. continue ;; esac fi deplibs="$deplibs $arg" continue ;; -module) module=yes continue ;; # Tru64 UNIX uses -model [arg] to determine the layout of C++ # classes, name mangling, and exception handling. # Darwin uses the -arch flag to determine output architecture. -model|-arch|-isysroot) compiler_flags="$compiler_flags $arg" func_append compile_command " $arg" func_append finalize_command " $arg" prev=xcompiler continue ;; -mt|-mthreads|-kthread|-Kthread|-pthread|-pthreads|--thread-safe|-threads) compiler_flags="$compiler_flags $arg" func_append compile_command " $arg" func_append finalize_command " $arg" case "$new_inherited_linker_flags " in *" $arg "*) ;; * ) new_inherited_linker_flags="$new_inherited_linker_flags $arg" ;; esac continue ;; -multi_module) single_module="${wl}-multi_module" continue ;; -no-fast-install) fast_install=no continue ;; -no-install) case $host in *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-*-darwin* | *-cegcc*) # The PATH hackery in wrapper scripts is required on Windows # and Darwin in order for the loader to find any dlls it needs. func_warning "\`-no-install' is ignored for $host" func_warning "assuming \`-no-fast-install' instead" fast_install=no ;; *) no_install=yes ;; esac continue ;; -no-undefined) allow_undefined=no continue ;; -objectlist) prev=objectlist continue ;; -o) prev=output ;; -precious-files-regex) prev=precious_regex continue ;; -release) prev=release continue ;; -rpath) prev=rpath continue ;; -R) prev=xrpath continue ;; -R*) func_stripname '-R' '' "$arg" dir=$func_stripname_result # We need an absolute path. case $dir in [\\/]* | [A-Za-z]:[\\/]*) ;; *) func_fatal_error "only absolute run-paths are allowed" ;; esac case "$xrpath " in *" $dir "*) ;; *) xrpath="$xrpath $dir" ;; esac continue ;; -shared) # The effects of -shared are defined in a previous loop. continue ;; -shrext) prev=shrext continue ;; -static | -static-libtool-libs) # The effects of -static are defined in a previous loop. # We used to do the same as -all-static on platforms that # didn't have a PIC flag, but the assumption that the effects # would be equivalent was wrong. It would break on at least # Digital Unix and AIX. continue ;; -thread-safe) thread_safe=yes continue ;; -version-info) prev=vinfo continue ;; -version-number) prev=vinfo vinfo_number=yes continue ;; -weak) prev=weak continue ;; -Wc,*) func_stripname '-Wc,' '' "$arg" args=$func_stripname_result arg= save_ifs="$IFS"; IFS=',' for flag in $args; do IFS="$save_ifs" func_quote_for_eval "$flag" arg="$arg $wl$func_quote_for_eval_result" compiler_flags="$compiler_flags $func_quote_for_eval_result" done IFS="$save_ifs" func_stripname ' ' '' "$arg" arg=$func_stripname_result ;; -Wl,*) func_stripname '-Wl,' '' "$arg" args=$func_stripname_result arg= save_ifs="$IFS"; IFS=',' for flag in $args; do IFS="$save_ifs" func_quote_for_eval "$flag" arg="$arg $wl$func_quote_for_eval_result" compiler_flags="$compiler_flags $wl$func_quote_for_eval_result" linker_flags="$linker_flags $func_quote_for_eval_result" done IFS="$save_ifs" func_stripname ' ' '' "$arg" arg=$func_stripname_result ;; -Xcompiler) prev=xcompiler continue ;; -Xlinker) prev=xlinker continue ;; -XCClinker) prev=xcclinker continue ;; # -msg_* for osf cc -msg_*) func_quote_for_eval "$arg" arg="$func_quote_for_eval_result" ;; # -64, -mips[0-9] enable 64-bit mode on the SGI compiler # -r[0-9][0-9]* specifies the processor on the SGI compiler # -xarch=*, -xtarget=* enable 64-bit mode on the Sun compiler # +DA*, +DD* enable 64-bit mode on the HP compiler # -q* pass through compiler args for the IBM compiler # -m*, -t[45]*, -txscale* pass through architecture-specific # compiler args for GCC # -F/path gives path to uninstalled frameworks, gcc on darwin # -p, -pg, --coverage, -fprofile-* pass through profiling flag for GCC # @file GCC response files -64|-mips[0-9]|-r[0-9][0-9]*|-xarch=*|-xtarget=*|+DA*|+DD*|-q*|-m*| \ -t[45]*|-txscale*|-p|-pg|--coverage|-fprofile-*|-F*|@*) func_quote_for_eval "$arg" arg="$func_quote_for_eval_result" func_append compile_command " $arg" func_append finalize_command " $arg" compiler_flags="$compiler_flags $arg" continue ;; # Some other compiler flag. -* | +*) func_quote_for_eval "$arg" arg="$func_quote_for_eval_result" ;; *.$objext) # A standard object. objs="$objs $arg" ;; *.lo) # A libtool-controlled object. # Check to see that this really is a libtool object. if func_lalib_unsafe_p "$arg"; then pic_object= non_pic_object= # Read the .lo file func_source "$arg" if test -z "$pic_object" || test -z "$non_pic_object" || test "$pic_object" = none && test "$non_pic_object" = none; then func_fatal_error "cannot find name of object for \`$arg'" fi # Extract subdirectory from the argument. func_dirname "$arg" "/" "" xdir="$func_dirname_result" if test "$pic_object" != none; then # Prepend the subdirectory the object is found in. pic_object="$xdir$pic_object" if test "$prev" = dlfiles; then if test "$build_libtool_libs" = yes && test "$dlopen_support" = yes; then dlfiles="$dlfiles $pic_object" prev= continue else # If libtool objects are unsupported, then we need to preload. prev=dlprefiles fi fi # CHECK ME: I think I busted this. -Ossama if test "$prev" = dlprefiles; then # Preload the old-style object. dlprefiles="$dlprefiles $pic_object" prev= fi # A PIC object. func_append libobjs " $pic_object" arg="$pic_object" fi # Non-PIC object. if test "$non_pic_object" != none; then # Prepend the subdirectory the object is found in. non_pic_object="$xdir$non_pic_object" # A standard non-PIC object func_append non_pic_objects " $non_pic_object" if test -z "$pic_object" || test "$pic_object" = none ; then arg="$non_pic_object" fi else # If the PIC object exists, use it instead. # $xdir was prepended to $pic_object above. non_pic_object="$pic_object" func_append non_pic_objects " $non_pic_object" fi else # Only an error if not doing a dry-run. if $opt_dry_run; then # Extract subdirectory from the argument. func_dirname "$arg" "/" "" xdir="$func_dirname_result" func_lo2o "$arg" pic_object=$xdir$objdir/$func_lo2o_result non_pic_object=$xdir$func_lo2o_result func_append libobjs " $pic_object" func_append non_pic_objects " $non_pic_object" else func_fatal_error "\`$arg' is not a valid libtool object" fi fi ;; *.$libext) # An archive. deplibs="$deplibs $arg" old_deplibs="$old_deplibs $arg" continue ;; *.la) # A libtool-controlled library. if test "$prev" = dlfiles; then # This library was specified with -dlopen. dlfiles="$dlfiles $arg" prev= elif test "$prev" = dlprefiles; then # The library was specified with -dlpreopen. dlprefiles="$dlprefiles $arg" prev= else deplibs="$deplibs $arg" fi continue ;; # Some other compiler argument. *) # Unknown arguments in both finalize_command and compile_command need # to be aesthetically quoted because they are evaled later. func_quote_for_eval "$arg" arg="$func_quote_for_eval_result" ;; esac # arg # Now actually substitute the argument into the commands. if test -n "$arg"; then func_append compile_command " $arg" func_append finalize_command " $arg" fi done # argument parsing loop test -n "$prev" && \ func_fatal_help "the \`$prevarg' option requires an argument" if test "$export_dynamic" = yes && test -n "$export_dynamic_flag_spec"; then eval arg=\"$export_dynamic_flag_spec\" func_append compile_command " $arg" func_append finalize_command " $arg" fi oldlibs= # calculate the name of the file, without its directory func_basename "$output" outputname="$func_basename_result" libobjs_save="$libobjs" if test -n "$shlibpath_var"; then # get the directories listed in $shlibpath_var eval shlib_search_path=\`\$ECHO \"X\${$shlibpath_var}\" \| \$Xsed -e \'s/:/ /g\'\` else shlib_search_path= fi eval sys_lib_search_path=\"$sys_lib_search_path_spec\" eval sys_lib_dlsearch_path=\"$sys_lib_dlsearch_path_spec\" func_dirname "$output" "/" "" output_objdir="$func_dirname_result$objdir" # Create the object directory. func_mkdir_p "$output_objdir" # Determine the type of output case $output in "") func_fatal_help "you must specify an output file" ;; *.$libext) linkmode=oldlib ;; *.lo | *.$objext) linkmode=obj ;; *.la) linkmode=lib ;; *) linkmode=prog ;; # Anything else should be a program. esac specialdeplibs= libs= # Find all interdependent deplibs by searching for libraries # that are linked more than once (e.g. -la -lb -la) for deplib in $deplibs; do if $opt_duplicate_deps ; then case "$libs " in *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;; esac fi libs="$libs $deplib" done if test "$linkmode" = lib; then libs="$predeps $libs $compiler_lib_search_path $postdeps" # Compute libraries that are listed more than once in $predeps # $postdeps and mark them as special (i.e., whose duplicates are # not to be eliminated). pre_post_deps= if $opt_duplicate_compiler_generated_deps; then for pre_post_dep in $predeps $postdeps; do case "$pre_post_deps " in *" $pre_post_dep "*) specialdeplibs="$specialdeplibs $pre_post_deps" ;; esac pre_post_deps="$pre_post_deps $pre_post_dep" done fi pre_post_deps= fi deplibs= newdependency_libs= newlib_search_path= need_relink=no # whether we're linking any uninstalled libtool libraries notinst_deplibs= # not-installed libtool libraries notinst_path= # paths that contain not-installed libtool libraries case $linkmode in lib) passes="conv dlpreopen link" for file in $dlfiles $dlprefiles; do case $file in *.la) ;; *) func_fatal_help "libraries can \`-dlopen' only libtool libraries: $file" ;; esac done ;; prog) compile_deplibs= finalize_deplibs= alldeplibs=no newdlfiles= newdlprefiles= passes="conv scan dlopen dlpreopen link" ;; *) passes="conv" ;; esac for pass in $passes; do # The preopen pass in lib mode reverses $deplibs; put it back here # so that -L comes before libs that need it for instance... if test "$linkmode,$pass" = "lib,link"; then ## FIXME: Find the place where the list is rebuilt in the wrong ## order, and fix it there properly tmp_deplibs= for deplib in $deplibs; do tmp_deplibs="$deplib $tmp_deplibs" done deplibs="$tmp_deplibs" fi if test "$linkmode,$pass" = "lib,link" || test "$linkmode,$pass" = "prog,scan"; then libs="$deplibs" deplibs= fi if test "$linkmode" = prog; then case $pass in dlopen) libs="$dlfiles" ;; dlpreopen) libs="$dlprefiles" ;; link) libs="$deplibs %DEPLIBS% $dependency_libs" ;; esac fi if test "$linkmode,$pass" = "lib,dlpreopen"; then # Collect and forward deplibs of preopened libtool libs for lib in $dlprefiles; do # Ignore non-libtool-libs dependency_libs= case $lib in *.la) func_source "$lib" ;; esac # Collect preopened libtool deplibs, except any this library # has declared as weak libs for deplib in $dependency_libs; do deplib_base=`$ECHO "X$deplib" | $Xsed -e "$basename"` case " $weak_libs " in *" $deplib_base "*) ;; *) deplibs="$deplibs $deplib" ;; esac done done libs="$dlprefiles" fi if test "$pass" = dlopen; then # Collect dlpreopened libraries save_deplibs="$deplibs" deplibs= fi for deplib in $libs; do lib= found=no case $deplib in -mt|-mthreads|-kthread|-Kthread|-pthread|-pthreads|--thread-safe|-threads) if test "$linkmode,$pass" = "prog,link"; then compile_deplibs="$deplib $compile_deplibs" finalize_deplibs="$deplib $finalize_deplibs" else compiler_flags="$compiler_flags $deplib" if test "$linkmode" = lib ; then case "$new_inherited_linker_flags " in *" $deplib "*) ;; * ) new_inherited_linker_flags="$new_inherited_linker_flags $deplib" ;; esac fi fi continue ;; -l*) if test "$linkmode" != lib && test "$linkmode" != prog; then func_warning "\`-l' is ignored for archives/objects" continue fi func_stripname '-l' '' "$deplib" name=$func_stripname_result if test "$linkmode" = lib; then searchdirs="$newlib_search_path $lib_search_path $compiler_lib_search_dirs $sys_lib_search_path $shlib_search_path" else searchdirs="$newlib_search_path $lib_search_path $sys_lib_search_path $shlib_search_path" fi for searchdir in $searchdirs; do for search_ext in .la $std_shrext .so .a; do # Search the libtool library lib="$searchdir/lib${name}${search_ext}" if test -f "$lib"; then if test "$search_ext" = ".la"; then found=yes else found=no fi break 2 fi done done if test "$found" != yes; then # deplib doesn't seem to be a libtool library if test "$linkmode,$pass" = "prog,link"; then compile_deplibs="$deplib $compile_deplibs" finalize_deplibs="$deplib $finalize_deplibs" else deplibs="$deplib $deplibs" test "$linkmode" = lib && newdependency_libs="$deplib $newdependency_libs" fi continue else # deplib is a libtool library # If $allow_libtool_libs_with_static_runtimes && $deplib is a stdlib, # We need to do some special things here, and not later. if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then case " $predeps $postdeps " in *" $deplib "*) if func_lalib_p "$lib"; then library_names= old_library= func_source "$lib" for l in $old_library $library_names; do ll="$l" done if test "X$ll" = "X$old_library" ; then # only static version available found=no func_dirname "$lib" "" "." ladir="$func_dirname_result" lib=$ladir/$old_library if test "$linkmode,$pass" = "prog,link"; then compile_deplibs="$deplib $compile_deplibs" finalize_deplibs="$deplib $finalize_deplibs" else deplibs="$deplib $deplibs" test "$linkmode" = lib && newdependency_libs="$deplib $newdependency_libs" fi continue fi fi ;; *) ;; esac fi fi ;; # -l *.ltframework) if test "$linkmode,$pass" = "prog,link"; then compile_deplibs="$deplib $compile_deplibs" finalize_deplibs="$deplib $finalize_deplibs" else deplibs="$deplib $deplibs" if test "$linkmode" = lib ; then case "$new_inherited_linker_flags " in *" $deplib "*) ;; * ) new_inherited_linker_flags="$new_inherited_linker_flags $deplib" ;; esac fi fi continue ;; -L*) case $linkmode in lib) deplibs="$deplib $deplibs" test "$pass" = conv && continue newdependency_libs="$deplib $newdependency_libs" func_stripname '-L' '' "$deplib" newlib_search_path="$newlib_search_path $func_stripname_result" ;; prog) if test "$pass" = conv; then deplibs="$deplib $deplibs" continue fi if test "$pass" = scan; then deplibs="$deplib $deplibs" else compile_deplibs="$deplib $compile_deplibs" finalize_deplibs="$deplib $finalize_deplibs" fi func_stripname '-L' '' "$deplib" newlib_search_path="$newlib_search_path $func_stripname_result" ;; *) func_warning "\`-L' is ignored for archives/objects" ;; esac # linkmode continue ;; # -L -R*) if test "$pass" = link; then func_stripname '-R' '' "$deplib" dir=$func_stripname_result # Make sure the xrpath contains only unique directories. case "$xrpath " in *" $dir "*) ;; *) xrpath="$xrpath $dir" ;; esac fi deplibs="$deplib $deplibs" continue ;; *.la) lib="$deplib" ;; *.$libext) if test "$pass" = conv; then deplibs="$deplib $deplibs" continue fi case $linkmode in lib) # Linking convenience modules into shared libraries is allowed, # but linking other static libraries is non-portable. case " $dlpreconveniencelibs " in *" $deplib "*) ;; *) valid_a_lib=no case $deplibs_check_method in match_pattern*) set dummy $deplibs_check_method; shift match_pattern_regex=`expr "$deplibs_check_method" : "$1 \(.*\)"` if eval "\$ECHO \"X$deplib\"" 2>/dev/null | $Xsed -e 10q \ | $EGREP "$match_pattern_regex" > /dev/null; then valid_a_lib=yes fi ;; pass_all) valid_a_lib=yes ;; esac if test "$valid_a_lib" != yes; then $ECHO $ECHO "*** Warning: Trying to link with static lib archive $deplib." $ECHO "*** I have the capability to make that library automatically link in when" $ECHO "*** you link to this library. But I can only do this if you have a" $ECHO "*** shared version of the library, which you do not appear to have" $ECHO "*** because the file extensions .$libext of this argument makes me believe" $ECHO "*** that it is just a static archive that I should not use here." else $ECHO $ECHO "*** Warning: Linking the shared library $output against the" $ECHO "*** static library $deplib is not portable!" deplibs="$deplib $deplibs" fi ;; esac continue ;; prog) if test "$pass" != link; then deplibs="$deplib $deplibs" else compile_deplibs="$deplib $compile_deplibs" finalize_deplibs="$deplib $finalize_deplibs" fi continue ;; esac # linkmode ;; # *.$libext *.lo | *.$objext) if test "$pass" = conv; then deplibs="$deplib $deplibs" elif test "$linkmode" = prog; then if test "$pass" = dlpreopen || test "$dlopen_support" != yes || test "$build_libtool_libs" = no; then # If there is no dlopen support or we're linking statically, # we need to preload. newdlprefiles="$newdlprefiles $deplib" compile_deplibs="$deplib $compile_deplibs" finalize_deplibs="$deplib $finalize_deplibs" else newdlfiles="$newdlfiles $deplib" fi fi continue ;; %DEPLIBS%) alldeplibs=yes continue ;; esac # case $deplib if test "$found" = yes || test -f "$lib"; then : else func_fatal_error "cannot find the library \`$lib' or unhandled argument \`$deplib'" fi # Check to see that this really is a libtool archive. func_lalib_unsafe_p "$lib" \ || func_fatal_error "\`$lib' is not a valid libtool archive" func_dirname "$lib" "" "." ladir="$func_dirname_result" dlname= dlopen= dlpreopen= libdir= library_names= old_library= inherited_linker_flags= # If the library was installed with an old release of libtool, # it will not redefine variables installed, or shouldnotlink installed=yes shouldnotlink=no avoidtemprpath= # Read the .la file func_source "$lib" # Convert "-framework foo" to "foo.ltframework" if test -n "$inherited_linker_flags"; then tmp_inherited_linker_flags=`$ECHO "X$inherited_linker_flags" | $Xsed -e 's/-framework \([^ $]*\)/\1.ltframework/g'` for tmp_inherited_linker_flag in $tmp_inherited_linker_flags; do case " $new_inherited_linker_flags " in *" $tmp_inherited_linker_flag "*) ;; *) new_inherited_linker_flags="$new_inherited_linker_flags $tmp_inherited_linker_flag";; esac done fi dependency_libs=`$ECHO "X $dependency_libs" | $Xsed -e 's% \([^ $]*\).ltframework% -framework \1%g'` if test "$linkmode,$pass" = "lib,link" || test "$linkmode,$pass" = "prog,scan" || { test "$linkmode" != prog && test "$linkmode" != lib; }; then test -n "$dlopen" && dlfiles="$dlfiles $dlopen" test -n "$dlpreopen" && dlprefiles="$dlprefiles $dlpreopen" fi if test "$pass" = conv; then # Only check for convenience libraries deplibs="$lib $deplibs" if test -z "$libdir"; then if test -z "$old_library"; then func_fatal_error "cannot find name of link library for \`$lib'" fi # It is a libtool convenience library, so add in its objects. convenience="$convenience $ladir/$objdir/$old_library" old_convenience="$old_convenience $ladir/$objdir/$old_library" elif test "$linkmode" != prog && test "$linkmode" != lib; then func_fatal_error "\`$lib' is not a convenience library" fi tmp_libs= for deplib in $dependency_libs; do deplibs="$deplib $deplibs" if $opt_duplicate_deps ; then case "$tmp_libs " in *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;; esac fi tmp_libs="$tmp_libs $deplib" done continue fi # $pass = conv # Get the name of the library we link against. linklib= for l in $old_library $library_names; do linklib="$l" done if test -z "$linklib"; then func_fatal_error "cannot find name of link library for \`$lib'" fi # This library was specified with -dlopen. if test "$pass" = dlopen; then if test -z "$libdir"; then func_fatal_error "cannot -dlopen a convenience library: \`$lib'" fi if test -z "$dlname" || test "$dlopen_support" != yes || test "$build_libtool_libs" = no; then # If there is no dlname, no dlopen support or we're linking # statically, we need to preload. We also need to preload any # dependent libraries so libltdl's deplib preloader doesn't # bomb out in the load deplibs phase. dlprefiles="$dlprefiles $lib $dependency_libs" else newdlfiles="$newdlfiles $lib" fi continue fi # $pass = dlopen # We need an absolute path. case $ladir in [\\/]* | [A-Za-z]:[\\/]*) abs_ladir="$ladir" ;; *) abs_ladir=`cd "$ladir" && pwd` if test -z "$abs_ladir"; then func_warning "cannot determine absolute directory name of \`$ladir'" func_warning "passing it literally to the linker, although it might fail" abs_ladir="$ladir" fi ;; esac func_basename "$lib" laname="$func_basename_result" # Find the relevant object directory and library name. if test "X$installed" = Xyes; then if test ! -f "$libdir/$linklib" && test -f "$abs_ladir/$linklib"; then func_warning "library \`$lib' was moved." dir="$ladir" absdir="$abs_ladir" libdir="$abs_ladir" else dir="$libdir" absdir="$libdir" fi test "X$hardcode_automatic" = Xyes && avoidtemprpath=yes else if test ! -f "$ladir/$objdir/$linklib" && test -f "$abs_ladir/$linklib"; then dir="$ladir" absdir="$abs_ladir" # Remove this search path later notinst_path="$notinst_path $abs_ladir" else dir="$ladir/$objdir" absdir="$abs_ladir/$objdir" # Remove this search path later notinst_path="$notinst_path $abs_ladir" fi fi # $installed = yes func_stripname 'lib' '.la' "$laname" name=$func_stripname_result # This library was specified with -dlpreopen. if test "$pass" = dlpreopen; then if test -z "$libdir" && test "$linkmode" = prog; then func_fatal_error "only libraries may -dlpreopen a convenience library: \`$lib'" fi # Prefer using a static library (so that no silly _DYNAMIC symbols # are required to link). if test -n "$old_library"; then newdlprefiles="$newdlprefiles $dir/$old_library" # Keep a list of preopened convenience libraries to check # that they are being used correctly in the link pass. test -z "$libdir" && \ dlpreconveniencelibs="$dlpreconveniencelibs $dir/$old_library" # Otherwise, use the dlname, so that lt_dlopen finds it. elif test -n "$dlname"; then newdlprefiles="$newdlprefiles $dir/$dlname" else newdlprefiles="$newdlprefiles $dir/$linklib" fi fi # $pass = dlpreopen if test -z "$libdir"; then # Link the convenience library if test "$linkmode" = lib; then deplibs="$dir/$old_library $deplibs" elif test "$linkmode,$pass" = "prog,link"; then compile_deplibs="$dir/$old_library $compile_deplibs" finalize_deplibs="$dir/$old_library $finalize_deplibs" else deplibs="$lib $deplibs" # used for prog,scan pass fi continue fi if test "$linkmode" = prog && test "$pass" != link; then newlib_search_path="$newlib_search_path $ladir" deplibs="$lib $deplibs" linkalldeplibs=no if test "$link_all_deplibs" != no || test -z "$library_names" || test "$build_libtool_libs" = no; then linkalldeplibs=yes fi tmp_libs= for deplib in $dependency_libs; do case $deplib in -L*) func_stripname '-L' '' "$deplib" newlib_search_path="$newlib_search_path $func_stripname_result" ;; esac # Need to link against all dependency_libs? if test "$linkalldeplibs" = yes; then deplibs="$deplib $deplibs" else # Need to hardcode shared library paths # or/and link against static libraries newdependency_libs="$deplib $newdependency_libs" fi if $opt_duplicate_deps ; then case "$tmp_libs " in *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;; esac fi tmp_libs="$tmp_libs $deplib" done # for deplib continue fi # $linkmode = prog... if test "$linkmode,$pass" = "prog,link"; then if test -n "$library_names" && { { test "$prefer_static_libs" = no || test "$prefer_static_libs,$installed" = "built,yes"; } || test -z "$old_library"; }; then # We need to hardcode the library path if test -n "$shlibpath_var" && test -z "$avoidtemprpath" ; then # Make sure the rpath contains only unique directories. case "$temp_rpath:" in *"$absdir:"*) ;; *) temp_rpath="$temp_rpath$absdir:" ;; esac fi # Hardcode the library path. # Skip directories that are in the system default run-time # search path. case " $sys_lib_dlsearch_path " in *" $absdir "*) ;; *) case "$compile_rpath " in *" $absdir "*) ;; *) compile_rpath="$compile_rpath $absdir" esac ;; esac case " $sys_lib_dlsearch_path " in *" $libdir "*) ;; *) case "$finalize_rpath " in *" $libdir "*) ;; *) finalize_rpath="$finalize_rpath $libdir" esac ;; esac fi # $linkmode,$pass = prog,link... if test "$alldeplibs" = yes && { test "$deplibs_check_method" = pass_all || { test "$build_libtool_libs" = yes && test -n "$library_names"; }; }; then # We only need to search for static libraries continue fi fi link_static=no # Whether the deplib will be linked statically use_static_libs=$prefer_static_libs if test "$use_static_libs" = built && test "$installed" = yes; then use_static_libs=no fi if test -n "$library_names" && { test "$use_static_libs" = no || test -z "$old_library"; }; then case $host in *cygwin* | *mingw* | *cegcc*) # No point in relinking DLLs because paths are not encoded notinst_deplibs="$notinst_deplibs $lib" need_relink=no ;; *) if test "$installed" = no; then notinst_deplibs="$notinst_deplibs $lib" need_relink=yes fi ;; esac # This is a shared library # Warn about portability, can't link against -module's on some # systems (darwin). Don't bleat about dlopened modules though! dlopenmodule="" for dlpremoduletest in $dlprefiles; do if test "X$dlpremoduletest" = "X$lib"; then dlopenmodule="$dlpremoduletest" break fi done if test -z "$dlopenmodule" && test "$shouldnotlink" = yes && test "$pass" = link; then $ECHO if test "$linkmode" = prog; then $ECHO "*** Warning: Linking the executable $output against the loadable module" else $ECHO "*** Warning: Linking the shared library $output against the loadable module" fi $ECHO "*** $linklib is not portable!" fi if test "$linkmode" = lib && test "$hardcode_into_libs" = yes; then # Hardcode the library path. # Skip directories that are in the system default run-time # search path. case " $sys_lib_dlsearch_path " in *" $absdir "*) ;; *) case "$compile_rpath " in *" $absdir "*) ;; *) compile_rpath="$compile_rpath $absdir" esac ;; esac case " $sys_lib_dlsearch_path " in *" $libdir "*) ;; *) case "$finalize_rpath " in *" $libdir "*) ;; *) finalize_rpath="$finalize_rpath $libdir" esac ;; esac fi if test -n "$old_archive_from_expsyms_cmds"; then # figure out the soname set dummy $library_names shift realname="$1" shift libname=`eval "\\$ECHO \"$libname_spec\""` # use dlname if we got it. it's perfectly good, no? if test -n "$dlname"; then soname="$dlname" elif test -n "$soname_spec"; then # bleh windows case $host in *cygwin* | mingw* | *cegcc*) func_arith $current - $age major=$func_arith_result versuffix="-$major" ;; esac eval soname=\"$soname_spec\" else soname="$realname" fi # Make a new name for the extract_expsyms_cmds to use soroot="$soname" func_basename "$soroot" soname="$func_basename_result" func_stripname 'lib' '.dll' "$soname" newlib=libimp-$func_stripname_result.a # If the library has no export list, then create one now if test -f "$output_objdir/$soname-def"; then : else func_verbose "extracting exported symbol list from \`$soname'" func_execute_cmds "$extract_expsyms_cmds" 'exit $?' fi # Create $newlib if test -f "$output_objdir/$newlib"; then :; else func_verbose "generating import library for \`$soname'" func_execute_cmds "$old_archive_from_expsyms_cmds" 'exit $?' fi # make sure the library variables are pointing to the new library dir=$output_objdir linklib=$newlib fi # test -n "$old_archive_from_expsyms_cmds" if test "$linkmode" = prog || test "$mode" != relink; then add_shlibpath= add_dir= add= lib_linked=yes case $hardcode_action in immediate | unsupported) if test "$hardcode_direct" = no; then add="$dir/$linklib" case $host in *-*-sco3.2v5.0.[024]*) add_dir="-L$dir" ;; *-*-sysv4*uw2*) add_dir="-L$dir" ;; *-*-sysv5OpenUNIX* | *-*-sysv5UnixWare7.[01].[10]* | \ *-*-unixware7*) add_dir="-L$dir" ;; *-*-darwin* ) # if the lib is a (non-dlopened) module then we can not # link against it, someone is ignoring the earlier warnings if /usr/bin/file -L $add 2> /dev/null | $GREP ": [^:]* bundle" >/dev/null ; then if test "X$dlopenmodule" != "X$lib"; then $ECHO "*** Warning: lib $linklib is a module, not a shared library" if test -z "$old_library" ; then $ECHO $ECHO "*** And there doesn't seem to be a static archive available" $ECHO "*** The link will probably fail, sorry" else add="$dir/$old_library" fi elif test -n "$old_library"; then add="$dir/$old_library" fi fi esac elif test "$hardcode_minus_L" = no; then case $host in *-*-sunos*) add_shlibpath="$dir" ;; esac add_dir="-L$dir" add="-l$name" elif test "$hardcode_shlibpath_var" = no; then add_shlibpath="$dir" add="-l$name" else lib_linked=no fi ;; relink) if test "$hardcode_direct" = yes && test "$hardcode_direct_absolute" = no; then add="$dir/$linklib" elif test "$hardcode_minus_L" = yes; then add_dir="-L$dir" # Try looking first in the location we're being installed to. if test -n "$inst_prefix_dir"; then case $libdir in [\\/]*) add_dir="$add_dir -L$inst_prefix_dir$libdir" ;; esac fi add="-l$name" elif test "$hardcode_shlibpath_var" = yes; then add_shlibpath="$dir" add="-l$name" else lib_linked=no fi ;; *) lib_linked=no ;; esac if test "$lib_linked" != yes; then func_fatal_configuration "unsupported hardcode properties" fi if test -n "$add_shlibpath"; then case :$compile_shlibpath: in *":$add_shlibpath:"*) ;; *) compile_shlibpath="$compile_shlibpath$add_shlibpath:" ;; esac fi if test "$linkmode" = prog; then test -n "$add_dir" && compile_deplibs="$add_dir $compile_deplibs" test -n "$add" && compile_deplibs="$add $compile_deplibs" else test -n "$add_dir" && deplibs="$add_dir $deplibs" test -n "$add" && deplibs="$add $deplibs" if test "$hardcode_direct" != yes && test "$hardcode_minus_L" != yes && test "$hardcode_shlibpath_var" = yes; then case :$finalize_shlibpath: in *":$libdir:"*) ;; *) finalize_shlibpath="$finalize_shlibpath$libdir:" ;; esac fi fi fi if test "$linkmode" = prog || test "$mode" = relink; then add_shlibpath= add_dir= add= # Finalize command for both is simple: just hardcode it. if test "$hardcode_direct" = yes && test "$hardcode_direct_absolute" = no; then add="$libdir/$linklib" elif test "$hardcode_minus_L" = yes; then add_dir="-L$libdir" add="-l$name" elif test "$hardcode_shlibpath_var" = yes; then case :$finalize_shlibpath: in *":$libdir:"*) ;; *) finalize_shlibpath="$finalize_shlibpath$libdir:" ;; esac add="-l$name" elif test "$hardcode_automatic" = yes; then if test -n "$inst_prefix_dir" && test -f "$inst_prefix_dir$libdir/$linklib" ; then add="$inst_prefix_dir$libdir/$linklib" else add="$libdir/$linklib" fi else # We cannot seem to hardcode it, guess we'll fake it. add_dir="-L$libdir" # Try looking first in the location we're being installed to. if test -n "$inst_prefix_dir"; then case $libdir in [\\/]*) add_dir="$add_dir -L$inst_prefix_dir$libdir" ;; esac fi add="-l$name" fi if test "$linkmode" = prog; then test -n "$add_dir" && finalize_deplibs="$add_dir $finalize_deplibs" test -n "$add" && finalize_deplibs="$add $finalize_deplibs" else test -n "$add_dir" && deplibs="$add_dir $deplibs" test -n "$add" && deplibs="$add $deplibs" fi fi elif test "$linkmode" = prog; then # Here we assume that one of hardcode_direct or hardcode_minus_L # is not unsupported. This is valid on all known static and # shared platforms. if test "$hardcode_direct" != unsupported; then test -n "$old_library" && linklib="$old_library" compile_deplibs="$dir/$linklib $compile_deplibs" finalize_deplibs="$dir/$linklib $finalize_deplibs" else compile_deplibs="-l$name -L$dir $compile_deplibs" finalize_deplibs="-l$name -L$dir $finalize_deplibs" fi elif test "$build_libtool_libs" = yes; then # Not a shared library if test "$deplibs_check_method" != pass_all; then # We're trying link a shared library against a static one # but the system doesn't support it. # Just print a warning and add the library to dependency_libs so # that the program can be linked against the static library. $ECHO $ECHO "*** Warning: This system can not link to static lib archive $lib." $ECHO "*** I have the capability to make that library automatically link in when" $ECHO "*** you link to this library. But I can only do this if you have a" $ECHO "*** shared version of the library, which you do not appear to have." if test "$module" = yes; then $ECHO "*** But as you try to build a module library, libtool will still create " $ECHO "*** a static module, that should work as long as the dlopening application" $ECHO "*** is linked with the -dlopen flag to resolve symbols at runtime." if test -z "$global_symbol_pipe"; then $ECHO $ECHO "*** However, this would only work if libtool was able to extract symbol" $ECHO "*** lists from a program, using \`nm' or equivalent, but libtool could" $ECHO "*** not find such a program. So, this module is probably useless." $ECHO "*** \`nm' from GNU binutils and a full rebuild may help." fi if test "$build_old_libs" = no; then build_libtool_libs=module build_old_libs=yes else build_libtool_libs=no fi fi else deplibs="$dir/$old_library $deplibs" link_static=yes fi fi # link shared/static library? if test "$linkmode" = lib; then if test -n "$dependency_libs" && { test "$hardcode_into_libs" != yes || test "$build_old_libs" = yes || test "$link_static" = yes; }; then # Extract -R from dependency_libs temp_deplibs= for libdir in $dependency_libs; do case $libdir in -R*) func_stripname '-R' '' "$libdir" temp_xrpath=$func_stripname_result case " $xrpath " in *" $temp_xrpath "*) ;; *) xrpath="$xrpath $temp_xrpath";; esac;; *) temp_deplibs="$temp_deplibs $libdir";; esac done dependency_libs="$temp_deplibs" fi newlib_search_path="$newlib_search_path $absdir" # Link against this library test "$link_static" = no && newdependency_libs="$abs_ladir/$laname $newdependency_libs" # ... and its dependency_libs tmp_libs= for deplib in $dependency_libs; do newdependency_libs="$deplib $newdependency_libs" if $opt_duplicate_deps ; then case "$tmp_libs " in *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;; esac fi tmp_libs="$tmp_libs $deplib" done if test "$link_all_deplibs" != no; then # Add the search paths of all dependency libraries for deplib in $dependency_libs; do case $deplib in -L*) path="$deplib" ;; *.la) func_dirname "$deplib" "" "." dir="$func_dirname_result" # We need an absolute path. case $dir in [\\/]* | [A-Za-z]:[\\/]*) absdir="$dir" ;; *) absdir=`cd "$dir" && pwd` if test -z "$absdir"; then func_warning "cannot determine absolute directory name of \`$dir'" absdir="$dir" fi ;; esac if $GREP "^installed=no" $deplib > /dev/null; then case $host in *-*-darwin*) depdepl= eval deplibrary_names=`${SED} -n -e 's/^library_names=\(.*\)$/\1/p' $deplib` if test -n "$deplibrary_names" ; then for tmp in $deplibrary_names ; do depdepl=$tmp done if test -f "$absdir/$objdir/$depdepl" ; then depdepl="$absdir/$objdir/$depdepl" darwin_install_name=`${OTOOL} -L $depdepl | awk '{if (NR == 2) {print $1;exit}}'` if test -z "$darwin_install_name"; then darwin_install_name=`${OTOOL64} -L $depdepl | awk '{if (NR == 2) {print $1;exit}}'` fi compiler_flags="$compiler_flags ${wl}-dylib_file ${wl}${darwin_install_name}:${depdepl}" linker_flags="$linker_flags -dylib_file ${darwin_install_name}:${depdepl}" path= fi fi ;; *) path="-L$absdir/$objdir" ;; esac else eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $deplib` test -z "$libdir" && \ func_fatal_error "\`$deplib' is not a valid libtool archive" test "$absdir" != "$libdir" && \ func_warning "\`$deplib' seems to be moved" path="-L$absdir" fi ;; esac case " $deplibs " in *" $path "*) ;; *) deplibs="$path $deplibs" ;; esac done fi # link_all_deplibs != no fi # linkmode = lib done # for deplib in $libs if test "$pass" = link; then if test "$linkmode" = "prog"; then compile_deplibs="$new_inherited_linker_flags $compile_deplibs" finalize_deplibs="$new_inherited_linker_flags $finalize_deplibs" else compiler_flags="$compiler_flags "`$ECHO "X $new_inherited_linker_flags" | $Xsed -e 's% \([^ $]*\).ltframework% -framework \1%g'` fi fi dependency_libs="$newdependency_libs" if test "$pass" = dlpreopen; then # Link the dlpreopened libraries before other libraries for deplib in $save_deplibs; do deplibs="$deplib $deplibs" done fi if test "$pass" != dlopen; then if test "$pass" != conv; then # Make sure lib_search_path contains only unique directories. lib_search_path= for dir in $newlib_search_path; do case "$lib_search_path " in *" $dir "*) ;; *) lib_search_path="$lib_search_path $dir" ;; esac done newlib_search_path= fi if test "$linkmode,$pass" != "prog,link"; then vars="deplibs" else vars="compile_deplibs finalize_deplibs" fi for var in $vars dependency_libs; do # Add libraries to $var in reverse order eval tmp_libs=\"\$$var\" new_libs= for deplib in $tmp_libs; do # FIXME: Pedantically, this is the right thing to do, so # that some nasty dependency loop isn't accidentally # broken: #new_libs="$deplib $new_libs" # Pragmatically, this seems to cause very few problems in # practice: case $deplib in -L*) new_libs="$deplib $new_libs" ;; -R*) ;; *) # And here is the reason: when a library appears more # than once as an explicit dependence of a library, or # is implicitly linked in more than once by the # compiler, it is considered special, and multiple # occurrences thereof are not removed. Compare this # with having the same library being listed as a # dependency of multiple other libraries: in this case, # we know (pedantically, we assume) the library does not # need to be listed more than once, so we keep only the # last copy. This is not always right, but it is rare # enough that we require users that really mean to play # such unportable linking tricks to link the library # using -Wl,-lname, so that libtool does not consider it # for duplicate removal. case " $specialdeplibs " in *" $deplib "*) new_libs="$deplib $new_libs" ;; *) case " $new_libs " in *" $deplib "*) ;; *) new_libs="$deplib $new_libs" ;; esac ;; esac ;; esac done tmp_libs= for deplib in $new_libs; do case $deplib in -L*) case " $tmp_libs " in *" $deplib "*) ;; *) tmp_libs="$tmp_libs $deplib" ;; esac ;; *) tmp_libs="$tmp_libs $deplib" ;; esac done eval $var=\"$tmp_libs\" done # for var fi # Last step: remove runtime libs from dependency_libs # (they stay in deplibs) tmp_libs= for i in $dependency_libs ; do case " $predeps $postdeps $compiler_lib_search_path " in *" $i "*) i="" ;; esac if test -n "$i" ; then tmp_libs="$tmp_libs $i" fi done dependency_libs=$tmp_libs done # for pass if test "$linkmode" = prog; then dlfiles="$newdlfiles" fi if test "$linkmode" = prog || test "$linkmode" = lib; then dlprefiles="$newdlprefiles" fi case $linkmode in oldlib) if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; then func_warning "\`-dlopen' is ignored for archives" fi case " $deplibs" in *\ -l* | *\ -L*) func_warning "\`-l' and \`-L' are ignored for archives" ;; esac test -n "$rpath" && \ func_warning "\`-rpath' is ignored for archives" test -n "$xrpath" && \ func_warning "\`-R' is ignored for archives" test -n "$vinfo" && \ func_warning "\`-version-info/-version-number' is ignored for archives" test -n "$release" && \ func_warning "\`-release' is ignored for archives" test -n "$export_symbols$export_symbols_regex" && \ func_warning "\`-export-symbols' is ignored for archives" # Now set the variables for building old libraries. build_libtool_libs=no oldlibs="$output" objs="$objs$old_deplibs" ;; lib) # Make sure we only generate libraries of the form `libNAME.la'. case $outputname in lib*) func_stripname 'lib' '.la' "$outputname" name=$func_stripname_result eval shared_ext=\"$shrext_cmds\" eval libname=\"$libname_spec\" ;; *) test "$module" = no && \ func_fatal_help "libtool library \`$output' must begin with \`lib'" if test "$need_lib_prefix" != no; then # Add the "lib" prefix for modules if required func_stripname '' '.la' "$outputname" name=$func_stripname_result eval shared_ext=\"$shrext_cmds\" eval libname=\"$libname_spec\" else func_stripname '' '.la' "$outputname" libname=$func_stripname_result fi ;; esac if test -n "$objs"; then if test "$deplibs_check_method" != pass_all; then func_fatal_error "cannot build libtool library \`$output' from non-libtool objects on this host:$objs" else $ECHO $ECHO "*** Warning: Linking the shared library $output against the non-libtool" $ECHO "*** objects $objs is not portable!" libobjs="$libobjs $objs" fi fi test "$dlself" != no && \ func_warning "\`-dlopen self' is ignored for libtool libraries" set dummy $rpath shift test "$#" -gt 1 && \ func_warning "ignoring multiple \`-rpath's for a libtool library" install_libdir="$1" oldlibs= if test -z "$rpath"; then if test "$build_libtool_libs" = yes; then # Building a libtool convenience library. # Some compilers have problems with a `.al' extension so # convenience libraries should have the same extension an # archive normally would. oldlibs="$output_objdir/$libname.$libext $oldlibs" build_libtool_libs=convenience build_old_libs=yes fi test -n "$vinfo" && \ func_warning "\`-version-info/-version-number' is ignored for convenience libraries" test -n "$release" && \ func_warning "\`-release' is ignored for convenience libraries" else # Parse the version information argument. save_ifs="$IFS"; IFS=':' set dummy $vinfo 0 0 0 shift IFS="$save_ifs" test -n "$7" && \ func_fatal_help "too many parameters to \`-version-info'" # convert absolute version numbers to libtool ages # this retains compatibility with .la files and attempts # to make the code below a bit more comprehensible case $vinfo_number in yes) number_major="$1" number_minor="$2" number_revision="$3" # # There are really only two kinds -- those that # use the current revision as the major version # and those that subtract age and use age as # a minor version. But, then there is irix # which has an extra 1 added just for fun # case $version_type in darwin|linux|osf|windows|none) func_arith $number_major + $number_minor current=$func_arith_result age="$number_minor" revision="$number_revision" ;; freebsd-aout|freebsd-elf|sunos) current="$number_major" revision="$number_minor" age="0" ;; irix|nonstopux) func_arith $number_major + $number_minor current=$func_arith_result age="$number_minor" revision="$number_minor" lt_irix_increment=no ;; esac ;; no) current="$1" revision="$2" age="$3" ;; esac # Check that each of the things are valid numbers. case $current in 0|[1-9]|[1-9][0-9]|[1-9][0-9][0-9]|[1-9][0-9][0-9][0-9]|[1-9][0-9][0-9][0-9][0-9]) ;; *) func_error "CURRENT \`$current' must be a nonnegative integer" func_fatal_error "\`$vinfo' is not valid version information" ;; esac case $revision in 0|[1-9]|[1-9][0-9]|[1-9][0-9][0-9]|[1-9][0-9][0-9][0-9]|[1-9][0-9][0-9][0-9][0-9]) ;; *) func_error "REVISION \`$revision' must be a nonnegative integer" func_fatal_error "\`$vinfo' is not valid version information" ;; esac case $age in 0|[1-9]|[1-9][0-9]|[1-9][0-9][0-9]|[1-9][0-9][0-9][0-9]|[1-9][0-9][0-9][0-9][0-9]) ;; *) func_error "AGE \`$age' must be a nonnegative integer" func_fatal_error "\`$vinfo' is not valid version information" ;; esac if test "$age" -gt "$current"; then func_error "AGE \`$age' is greater than the current interface number \`$current'" func_fatal_error "\`$vinfo' is not valid version information" fi # Calculate the version variables. major= versuffix= verstring= case $version_type in none) ;; darwin) # Like Linux, but with the current version available in # verstring for coding it into the library header func_arith $current - $age major=.$func_arith_result versuffix="$major.$age.$revision" # Darwin ld doesn't like 0 for these options... func_arith $current + 1 minor_current=$func_arith_result xlcverstring="${wl}-compatibility_version ${wl}$minor_current ${wl}-current_version ${wl}$minor_current.$revision" verstring="-compatibility_version $minor_current -current_version $minor_current.$revision" ;; freebsd-aout) major=".$current" versuffix=".$current.$revision"; ;; freebsd-elf) major=".$current" versuffix=".$current" ;; irix | nonstopux) if test "X$lt_irix_increment" = "Xno"; then func_arith $current - $age else func_arith $current - $age + 1 fi major=$func_arith_result case $version_type in nonstopux) verstring_prefix=nonstopux ;; *) verstring_prefix=sgi ;; esac verstring="$verstring_prefix$major.$revision" # Add in all the interfaces that we are compatible with. loop=$revision while test "$loop" -ne 0; do func_arith $revision - $loop iface=$func_arith_result func_arith $loop - 1 loop=$func_arith_result verstring="$verstring_prefix$major.$iface:$verstring" done # Before this point, $major must not contain `.'. major=.$major versuffix="$major.$revision" ;; linux) func_arith $current - $age major=.$func_arith_result versuffix="$major.$age.$revision" ;; osf) func_arith $current - $age major=.$func_arith_result versuffix=".$current.$age.$revision" verstring="$current.$age.$revision" # Add in all the interfaces that we are compatible with. loop=$age while test "$loop" -ne 0; do func_arith $current - $loop iface=$func_arith_result func_arith $loop - 1 loop=$func_arith_result verstring="$verstring:${iface}.0" done # Make executables depend on our current version. verstring="$verstring:${current}.0" ;; qnx) major=".$current" versuffix=".$current" ;; sunos) major=".$current" versuffix=".$current.$revision" ;; windows) # Use '-' rather than '.', since we only want one # extension on DOS 8.3 filesystems. func_arith $current - $age major=$func_arith_result versuffix="-$major" ;; *) func_fatal_configuration "unknown library version type \`$version_type'" ;; esac # Clear the version info if we defaulted, and they specified a release. if test -z "$vinfo" && test -n "$release"; then major= case $version_type in darwin) # we can't check for "0.0" in archive_cmds due to quoting # problems, so we reset it completely verstring= ;; *) verstring="0.0" ;; esac if test "$need_version" = no; then versuffix= else versuffix=".0.0" fi fi # Remove version info from name if versioning should be avoided if test "$avoid_version" = yes && test "$need_version" = no; then major= versuffix= verstring="" fi # Check to see if the archive will have undefined symbols. if test "$allow_undefined" = yes; then if test "$allow_undefined_flag" = unsupported; then func_warning "undefined symbols not allowed in $host shared libraries" build_libtool_libs=no build_old_libs=yes fi else # Don't allow undefined symbols. allow_undefined_flag="$no_undefined_flag" fi fi func_generate_dlsyms "$libname" "$libname" "yes" libobjs="$libobjs $symfileobj" test "X$libobjs" = "X " && libobjs= if test "$mode" != relink; then # Remove our outputs, but don't remove object files since they # may have been created when compiling PIC objects. removelist= tempremovelist=`$ECHO "$output_objdir/*"` for p in $tempremovelist; do case $p in *.$objext | *.gcno) ;; $output_objdir/$outputname | $output_objdir/$libname.* | $output_objdir/${libname}${release}.*) if test "X$precious_files_regex" != "X"; then if $ECHO "$p" | $EGREP -e "$precious_files_regex" >/dev/null 2>&1 then continue fi fi removelist="$removelist $p" ;; *) ;; esac done test -n "$removelist" && \ func_show_eval "${RM}r \$removelist" fi # Now set the variables for building old libraries. if test "$build_old_libs" = yes && test "$build_libtool_libs" != convenience ; then oldlibs="$oldlibs $output_objdir/$libname.$libext" # Transform .lo files to .o files. oldobjs="$objs "`$ECHO "X$libobjs" | $SP2NL | $Xsed -e '/\.'${libext}'$/d' -e "$lo2o" | $NL2SP` fi # Eliminate all temporary directories. #for path in $notinst_path; do # lib_search_path=`$ECHO "X$lib_search_path " | $Xsed -e "s% $path % %g"` # deplibs=`$ECHO "X$deplibs " | $Xsed -e "s% -L$path % %g"` # dependency_libs=`$ECHO "X$dependency_libs " | $Xsed -e "s% -L$path % %g"` #done if test -n "$xrpath"; then # If the user specified any rpath flags, then add them. temp_xrpath= for libdir in $xrpath; do temp_xrpath="$temp_xrpath -R$libdir" case "$finalize_rpath " in *" $libdir "*) ;; *) finalize_rpath="$finalize_rpath $libdir" ;; esac done if test "$hardcode_into_libs" != yes || test "$build_old_libs" = yes; then dependency_libs="$temp_xrpath $dependency_libs" fi fi # Make sure dlfiles contains only unique files that won't be dlpreopened old_dlfiles="$dlfiles" dlfiles= for lib in $old_dlfiles; do case " $dlprefiles $dlfiles " in *" $lib "*) ;; *) dlfiles="$dlfiles $lib" ;; esac done # Make sure dlprefiles contains only unique files old_dlprefiles="$dlprefiles" dlprefiles= for lib in $old_dlprefiles; do case "$dlprefiles " in *" $lib "*) ;; *) dlprefiles="$dlprefiles $lib" ;; esac done if test "$build_libtool_libs" = yes; then if test -n "$rpath"; then case $host in *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-*-beos* | *-cegcc*) # these systems don't actually have a c library (as such)! ;; *-*-rhapsody* | *-*-darwin1.[012]) # Rhapsody C library is in the System framework deplibs="$deplibs System.ltframework" ;; *-*-netbsd*) # Don't link with libc until the a.out ld.so is fixed. ;; *-*-openbsd* | *-*-freebsd* | *-*-dragonfly*) # Do not include libc due to us having libc/libc_r. ;; *-*-sco3.2v5* | *-*-sco5v6*) # Causes problems with __ctype ;; *-*-sysv4.2uw2* | *-*-sysv5* | *-*-unixware* | *-*-OpenUNIX*) # Compiler inserts libc in the correct place for threads to work ;; *) # Add libc to deplibs on all other systems if necessary. if test "$build_libtool_need_lc" = "yes"; then deplibs="$deplibs -lc" fi ;; esac fi # Transform deplibs into only deplibs that can be linked in shared. name_save=$name libname_save=$libname release_save=$release versuffix_save=$versuffix major_save=$major # I'm not sure if I'm treating the release correctly. I think # release should show up in the -l (ie -lgmp5) so we don't want to # add it in twice. Is that correct? release="" versuffix="" major="" newdeplibs= droppeddeps=no case $deplibs_check_method in pass_all) # Don't check for shared/static. Everything works. # This might be a little naive. We might want to check # whether the library exists or not. But this is on # osf3 & osf4 and I'm not really sure... Just # implementing what was already the behavior. newdeplibs=$deplibs ;; test_compile) # This code stresses the "libraries are programs" paradigm to its # limits. Maybe even breaks it. We compile a program, linking it # against the deplibs as a proxy for the library. Then we can check # whether they linked in statically or dynamically with ldd. $opt_dry_run || $RM conftest.c cat > conftest.c </dev/null` for potent_lib in $potential_libs; do # Follow soft links. if ls -lLd "$potent_lib" 2>/dev/null | $GREP " -> " >/dev/null; then continue fi # The statement above tries to avoid entering an # endless loop below, in case of cyclic links. # We might still enter an endless loop, since a link # loop can be closed while we follow links, # but so what? potlib="$potent_lib" while test -h "$potlib" 2>/dev/null; do potliblink=`ls -ld $potlib | ${SED} 's/.* -> //'` case $potliblink in [\\/]* | [A-Za-z]:[\\/]*) potlib="$potliblink";; *) potlib=`$ECHO "X$potlib" | $Xsed -e 's,[^/]*$,,'`"$potliblink";; esac done if eval $file_magic_cmd \"\$potlib\" 2>/dev/null | $SED -e 10q | $EGREP "$file_magic_regex" > /dev/null; then newdeplibs="$newdeplibs $a_deplib" a_deplib="" break 2 fi done done fi if test -n "$a_deplib" ; then droppeddeps=yes $ECHO $ECHO "*** Warning: linker path does not have real file for library $a_deplib." $ECHO "*** I have the capability to make that library automatically link in when" $ECHO "*** you link to this library. But I can only do this if you have a" $ECHO "*** shared version of the library, which you do not appear to have" $ECHO "*** because I did check the linker path looking for a file starting" if test -z "$potlib" ; then $ECHO "*** with $libname but no candidates were found. (...for file magic test)" else $ECHO "*** with $libname and none of the candidates passed a file format test" $ECHO "*** using a file magic. Last file checked: $potlib" fi fi ;; *) # Add a -L argument. newdeplibs="$newdeplibs $a_deplib" ;; esac done # Gone through all deplibs. ;; match_pattern*) set dummy $deplibs_check_method; shift match_pattern_regex=`expr "$deplibs_check_method" : "$1 \(.*\)"` for a_deplib in $deplibs; do case $a_deplib in -l*) func_stripname -l '' "$a_deplib" name=$func_stripname_result if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then case " $predeps $postdeps " in *" $a_deplib "*) newdeplibs="$newdeplibs $a_deplib" a_deplib="" ;; esac fi if test -n "$a_deplib" ; then libname=`eval "\\$ECHO \"$libname_spec\""` for i in $lib_search_path $sys_lib_search_path $shlib_search_path; do potential_libs=`ls $i/$libname[.-]* 2>/dev/null` for potent_lib in $potential_libs; do potlib="$potent_lib" # see symlink-check above in file_magic test if eval "\$ECHO \"X$potent_lib\"" 2>/dev/null | $Xsed -e 10q | \ $EGREP "$match_pattern_regex" > /dev/null; then newdeplibs="$newdeplibs $a_deplib" a_deplib="" break 2 fi done done fi if test -n "$a_deplib" ; then droppeddeps=yes $ECHO $ECHO "*** Warning: linker path does not have real file for library $a_deplib." $ECHO "*** I have the capability to make that library automatically link in when" $ECHO "*** you link to this library. But I can only do this if you have a" $ECHO "*** shared version of the library, which you do not appear to have" $ECHO "*** because I did check the linker path looking for a file starting" if test -z "$potlib" ; then $ECHO "*** with $libname but no candidates were found. (...for regex pattern test)" else $ECHO "*** with $libname and none of the candidates passed a file format test" $ECHO "*** using a regex pattern. Last file checked: $potlib" fi fi ;; *) # Add a -L argument. newdeplibs="$newdeplibs $a_deplib" ;; esac done # Gone through all deplibs. ;; none | unknown | *) newdeplibs="" tmp_deplibs=`$ECHO "X $deplibs" | $Xsed \ -e 's/ -lc$//' -e 's/ -[LR][^ ]*//g'` if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then for i in $predeps $postdeps ; do # can't use Xsed below, because $i might contain '/' tmp_deplibs=`$ECHO "X $tmp_deplibs" | $Xsed -e "s,$i,,"` done fi if $ECHO "X $tmp_deplibs" | $Xsed -e 's/[ ]//g' | $GREP . >/dev/null; then $ECHO if test "X$deplibs_check_method" = "Xnone"; then $ECHO "*** Warning: inter-library dependencies are not supported in this platform." else $ECHO "*** Warning: inter-library dependencies are not known to be supported." fi $ECHO "*** All declared inter-library dependencies are being dropped." droppeddeps=yes fi ;; esac versuffix=$versuffix_save major=$major_save release=$release_save libname=$libname_save name=$name_save case $host in *-*-rhapsody* | *-*-darwin1.[012]) # On Rhapsody replace the C library with the System framework newdeplibs=`$ECHO "X $newdeplibs" | $Xsed -e 's/ -lc / System.ltframework /'` ;; esac if test "$droppeddeps" = yes; then if test "$module" = yes; then $ECHO $ECHO "*** Warning: libtool could not satisfy all declared inter-library" $ECHO "*** dependencies of module $libname. Therefore, libtool will create" $ECHO "*** a static module, that should work as long as the dlopening" $ECHO "*** application is linked with the -dlopen flag." if test -z "$global_symbol_pipe"; then $ECHO $ECHO "*** However, this would only work if libtool was able to extract symbol" $ECHO "*** lists from a program, using \`nm' or equivalent, but libtool could" $ECHO "*** not find such a program. So, this module is probably useless." $ECHO "*** \`nm' from GNU binutils and a full rebuild may help." fi if test "$build_old_libs" = no; then oldlibs="$output_objdir/$libname.$libext" build_libtool_libs=module build_old_libs=yes else build_libtool_libs=no fi else $ECHO "*** The inter-library dependencies that have been dropped here will be" $ECHO "*** automatically added whenever a program is linked with this library" $ECHO "*** or is declared to -dlopen it." if test "$allow_undefined" = no; then $ECHO $ECHO "*** Since this library must not contain undefined symbols," $ECHO "*** because either the platform does not support them or" $ECHO "*** it was explicitly requested with -no-undefined," $ECHO "*** libtool will only create a static version of it." if test "$build_old_libs" = no; then oldlibs="$output_objdir/$libname.$libext" build_libtool_libs=module build_old_libs=yes else build_libtool_libs=no fi fi fi fi # Done checking deplibs! deplibs=$newdeplibs fi # Time to change all our "foo.ltframework" stuff back to "-framework foo" case $host in *-*-darwin*) newdeplibs=`$ECHO "X $newdeplibs" | $Xsed -e 's% \([^ $]*\).ltframework% -framework \1%g'` new_inherited_linker_flags=`$ECHO "X $new_inherited_linker_flags" | $Xsed -e 's% \([^ $]*\).ltframework% -framework \1%g'` deplibs=`$ECHO "X $deplibs" | $Xsed -e 's% \([^ $]*\).ltframework% -framework \1%g'` ;; esac # move library search paths that coincide with paths to not yet # installed libraries to the beginning of the library search list new_libs= for path in $notinst_path; do case " $new_libs " in *" -L$path/$objdir "*) ;; *) case " $deplibs " in *" -L$path/$objdir "*) new_libs="$new_libs -L$path/$objdir" ;; esac ;; esac done for deplib in $deplibs; do case $deplib in -L*) case " $new_libs " in *" $deplib "*) ;; *) new_libs="$new_libs $deplib" ;; esac ;; *) new_libs="$new_libs $deplib" ;; esac done deplibs="$new_libs" # All the library-specific variables (install_libdir is set above). library_names= old_library= dlname= # Test again, we may have decided not to build it any more if test "$build_libtool_libs" = yes; then if test "$hardcode_into_libs" = yes; then # Hardcode the library paths hardcode_libdirs= dep_rpath= rpath="$finalize_rpath" test "$mode" != relink && rpath="$compile_rpath$rpath" for libdir in $rpath; do if test -n "$hardcode_libdir_flag_spec"; then if test -n "$hardcode_libdir_separator"; then if test -z "$hardcode_libdirs"; then hardcode_libdirs="$libdir" else # Just accumulate the unique libdirs. case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*) ;; *) hardcode_libdirs="$hardcode_libdirs$hardcode_libdir_separator$libdir" ;; esac fi else eval flag=\"$hardcode_libdir_flag_spec\" dep_rpath="$dep_rpath $flag" fi elif test -n "$runpath_var"; then case "$perm_rpath " in *" $libdir "*) ;; *) perm_rpath="$perm_rpath $libdir" ;; esac fi done # Substitute the hardcoded libdirs into the rpath. if test -n "$hardcode_libdir_separator" && test -n "$hardcode_libdirs"; then libdir="$hardcode_libdirs" if test -n "$hardcode_libdir_flag_spec_ld"; then eval dep_rpath=\"$hardcode_libdir_flag_spec_ld\" else eval dep_rpath=\"$hardcode_libdir_flag_spec\" fi fi if test -n "$runpath_var" && test -n "$perm_rpath"; then # We should set the runpath_var. rpath= for dir in $perm_rpath; do rpath="$rpath$dir:" done eval "$runpath_var='$rpath\$$runpath_var'; export $runpath_var" fi test -n "$dep_rpath" && deplibs="$dep_rpath $deplibs" fi shlibpath="$finalize_shlibpath" test "$mode" != relink && shlibpath="$compile_shlibpath$shlibpath" if test -n "$shlibpath"; then eval "$shlibpath_var='$shlibpath\$$shlibpath_var'; export $shlibpath_var" fi # Get the real and link names of the library. eval shared_ext=\"$shrext_cmds\" eval library_names=\"$library_names_spec\" set dummy $library_names shift realname="$1" shift if test -n "$soname_spec"; then eval soname=\"$soname_spec\" else soname="$realname" fi if test -z "$dlname"; then dlname=$soname fi lib="$output_objdir/$realname" linknames= for link do linknames="$linknames $link" done # Use standard objects if they are pic test -z "$pic_flag" && libobjs=`$ECHO "X$libobjs" | $SP2NL | $Xsed -e "$lo2o" | $NL2SP` test "X$libobjs" = "X " && libobjs= delfiles= if test -n "$export_symbols" && test -n "$include_expsyms"; then $opt_dry_run || cp "$export_symbols" "$output_objdir/$libname.uexp" export_symbols="$output_objdir/$libname.uexp" delfiles="$delfiles $export_symbols" fi orig_export_symbols= case $host_os in cygwin* | mingw* | cegcc*) if test -n "$export_symbols" && test -z "$export_symbols_regex"; then # exporting using user supplied symfile if test "x`$SED 1q $export_symbols`" != xEXPORTS; then # and it's NOT already a .def file. Must figure out # which of the given symbols are data symbols and tag # them as such. So, trigger use of export_symbols_cmds. # export_symbols gets reassigned inside the "prepare # the list of exported symbols" if statement, so the # include_expsyms logic still works. orig_export_symbols="$export_symbols" export_symbols= always_export_symbols=yes fi fi ;; esac # Prepare the list of exported symbols if test -z "$export_symbols"; then if test "$always_export_symbols" = yes || test -n "$export_symbols_regex"; then func_verbose "generating symbol list for \`$libname.la'" export_symbols="$output_objdir/$libname.exp" $opt_dry_run || $RM $export_symbols cmds=$export_symbols_cmds save_ifs="$IFS"; IFS='~' for cmd in $cmds; do IFS="$save_ifs" eval cmd=\"$cmd\" func_len " $cmd" len=$func_len_result if test "$len" -lt "$max_cmd_len" || test "$max_cmd_len" -le -1; then func_show_eval "$cmd" 'exit $?' skipped_export=false else # The command line is too long to execute in one step. func_verbose "using reloadable object file for export list..." skipped_export=: # Break out early, otherwise skipped_export may be # set to false by a later but shorter cmd. break fi done IFS="$save_ifs" if test -n "$export_symbols_regex" && test "X$skipped_export" != "X:"; then func_show_eval '$EGREP -e "$export_symbols_regex" "$export_symbols" > "${export_symbols}T"' func_show_eval '$MV "${export_symbols}T" "$export_symbols"' fi fi fi if test -n "$export_symbols" && test -n "$include_expsyms"; then tmp_export_symbols="$export_symbols" test -n "$orig_export_symbols" && tmp_export_symbols="$orig_export_symbols" $opt_dry_run || eval '$ECHO "X$include_expsyms" | $Xsed | $SP2NL >> "$tmp_export_symbols"' fi if test "X$skipped_export" != "X:" && test -n "$orig_export_symbols"; then # The given exports_symbols file has to be filtered, so filter it. func_verbose "filter symbol list for \`$libname.la' to tag DATA exports" # FIXME: $output_objdir/$libname.filter potentially contains lots of # 's' commands which not all seds can handle. GNU sed should be fine # though. Also, the filter scales superlinearly with the number of # global variables. join(1) would be nice here, but unfortunately # isn't a blessed tool. $opt_dry_run || $SED -e '/[ ,]DATA/!d;s,\(.*\)\([ \,].*\),s|^\1$|\1\2|,' < $export_symbols > $output_objdir/$libname.filter delfiles="$delfiles $export_symbols $output_objdir/$libname.filter" export_symbols=$output_objdir/$libname.def $opt_dry_run || $SED -f $output_objdir/$libname.filter < $orig_export_symbols > $export_symbols fi tmp_deplibs= for test_deplib in $deplibs; do case " $convenience " in *" $test_deplib "*) ;; *) tmp_deplibs="$tmp_deplibs $test_deplib" ;; esac done deplibs="$tmp_deplibs" if test -n "$convenience"; then if test -n "$whole_archive_flag_spec" && test "$compiler_needs_object" = yes && test -z "$libobjs"; then # extract the archives, so we have objects to list. # TODO: could optimize this to just extract one archive. whole_archive_flag_spec= fi if test -n "$whole_archive_flag_spec"; then save_libobjs=$libobjs eval libobjs=\"\$libobjs $whole_archive_flag_spec\" test "X$libobjs" = "X " && libobjs= else gentop="$output_objdir/${outputname}x" generated="$generated $gentop" func_extract_archives $gentop $convenience libobjs="$libobjs $func_extract_archives_result" test "X$libobjs" = "X " && libobjs= fi fi if test "$thread_safe" = yes && test -n "$thread_safe_flag_spec"; then eval flag=\"$thread_safe_flag_spec\" linker_flags="$linker_flags $flag" fi # Make a backup of the uninstalled library when relinking if test "$mode" = relink; then $opt_dry_run || eval '(cd $output_objdir && $RM ${realname}U && $MV $realname ${realname}U)' || exit $? fi # Do each of the archive commands. if test "$module" = yes && test -n "$module_cmds" ; then if test -n "$export_symbols" && test -n "$module_expsym_cmds"; then eval test_cmds=\"$module_expsym_cmds\" cmds=$module_expsym_cmds else eval test_cmds=\"$module_cmds\" cmds=$module_cmds fi else if test -n "$export_symbols" && test -n "$archive_expsym_cmds"; then eval test_cmds=\"$archive_expsym_cmds\" cmds=$archive_expsym_cmds else eval test_cmds=\"$archive_cmds\" cmds=$archive_cmds fi fi if test "X$skipped_export" != "X:" && func_len " $test_cmds" && len=$func_len_result && test "$len" -lt "$max_cmd_len" || test "$max_cmd_len" -le -1; then : else # The command line is too long to link in one step, link piecewise # or, if using GNU ld and skipped_export is not :, use a linker # script. # Save the value of $output and $libobjs because we want to # use them later. If we have whole_archive_flag_spec, we # want to use save_libobjs as it was before # whole_archive_flag_spec was expanded, because we can't # assume the linker understands whole_archive_flag_spec. # This may have to be revisited, in case too many # convenience libraries get linked in and end up exceeding # the spec. if test -z "$convenience" || test -z "$whole_archive_flag_spec"; then save_libobjs=$libobjs fi save_output=$output output_la=`$ECHO "X$output" | $Xsed -e "$basename"` # Clear the reloadable object creation command queue and # initialize k to one. test_cmds= concat_cmds= objlist= last_robj= k=1 if test -n "$save_libobjs" && test "X$skipped_export" != "X:" && test "$with_gnu_ld" = yes; then output=${output_objdir}/${output_la}.lnkscript func_verbose "creating GNU ld script: $output" $ECHO 'INPUT (' > $output for obj in $save_libobjs do $ECHO "$obj" >> $output done $ECHO ')' >> $output delfiles="$delfiles $output" elif test -n "$save_libobjs" && test "X$skipped_export" != "X:" && test "X$file_list_spec" != X; then output=${output_objdir}/${output_la}.lnk func_verbose "creating linker input file list: $output" : > $output set x $save_libobjs shift firstobj= if test "$compiler_needs_object" = yes; then firstobj="$1 " shift fi for obj do $ECHO "$obj" >> $output done delfiles="$delfiles $output" output=$firstobj\"$file_list_spec$output\" else if test -n "$save_libobjs"; then func_verbose "creating reloadable object files..." output=$output_objdir/$output_la-${k}.$objext eval test_cmds=\"$reload_cmds\" func_len " $test_cmds" len0=$func_len_result len=$len0 # Loop over the list of objects to be linked. for obj in $save_libobjs do func_len " $obj" func_arith $len + $func_len_result len=$func_arith_result if test "X$objlist" = X || test "$len" -lt "$max_cmd_len"; then func_append objlist " $obj" else # The command $test_cmds is almost too long, add a # command to the queue. if test "$k" -eq 1 ; then # The first file doesn't have a previous command to add. eval concat_cmds=\"$reload_cmds $objlist $last_robj\" else # All subsequent reloadable object files will link in # the last one created. eval concat_cmds=\"\$concat_cmds~$reload_cmds $objlist $last_robj~\$RM $last_robj\" fi last_robj=$output_objdir/$output_la-${k}.$objext func_arith $k + 1 k=$func_arith_result output=$output_objdir/$output_la-${k}.$objext objlist=$obj func_len " $last_robj" func_arith $len0 + $func_len_result len=$func_arith_result fi done # Handle the remaining objects by creating one last # reloadable object file. All subsequent reloadable object # files will link in the last one created. test -z "$concat_cmds" || concat_cmds=$concat_cmds~ eval concat_cmds=\"\${concat_cmds}$reload_cmds $objlist $last_robj\" if test -n "$last_robj"; then eval concat_cmds=\"\${concat_cmds}~\$RM $last_robj\" fi delfiles="$delfiles $output" else output= fi if ${skipped_export-false}; then func_verbose "generating symbol list for \`$libname.la'" export_symbols="$output_objdir/$libname.exp" $opt_dry_run || $RM $export_symbols libobjs=$output # Append the command to create the export file. test -z "$concat_cmds" || concat_cmds=$concat_cmds~ eval concat_cmds=\"\$concat_cmds$export_symbols_cmds\" if test -n "$last_robj"; then eval concat_cmds=\"\$concat_cmds~\$RM $last_robj\" fi fi test -n "$save_libobjs" && func_verbose "creating a temporary reloadable object file: $output" # Loop through the commands generated above and execute them. save_ifs="$IFS"; IFS='~' for cmd in $concat_cmds; do IFS="$save_ifs" $opt_silent || { func_quote_for_expand "$cmd" eval "func_echo $func_quote_for_expand_result" } $opt_dry_run || eval "$cmd" || { lt_exit=$? # Restore the uninstalled library and exit if test "$mode" = relink; then ( cd "$output_objdir" && \ $RM "${realname}T" && \ $MV "${realname}U" "$realname" ) fi exit $lt_exit } done IFS="$save_ifs" if test -n "$export_symbols_regex" && ${skipped_export-false}; then func_show_eval '$EGREP -e "$export_symbols_regex" "$export_symbols" > "${export_symbols}T"' func_show_eval '$MV "${export_symbols}T" "$export_symbols"' fi fi if ${skipped_export-false}; then if test -n "$export_symbols" && test -n "$include_expsyms"; then tmp_export_symbols="$export_symbols" test -n "$orig_export_symbols" && tmp_export_symbols="$orig_export_symbols" $opt_dry_run || eval '$ECHO "X$include_expsyms" | $Xsed | $SP2NL >> "$tmp_export_symbols"' fi if test -n "$orig_export_symbols"; then # The given exports_symbols file has to be filtered, so filter it. func_verbose "filter symbol list for \`$libname.la' to tag DATA exports" # FIXME: $output_objdir/$libname.filter potentially contains lots of # 's' commands which not all seds can handle. GNU sed should be fine # though. Also, the filter scales superlinearly with the number of # global variables. join(1) would be nice here, but unfortunately # isn't a blessed tool. $opt_dry_run || $SED -e '/[ ,]DATA/!d;s,\(.*\)\([ \,].*\),s|^\1$|\1\2|,' < $export_symbols > $output_objdir/$libname.filter delfiles="$delfiles $export_symbols $output_objdir/$libname.filter" export_symbols=$output_objdir/$libname.def $opt_dry_run || $SED -f $output_objdir/$libname.filter < $orig_export_symbols > $export_symbols fi fi libobjs=$output # Restore the value of output. output=$save_output if test -n "$convenience" && test -n "$whole_archive_flag_spec"; then eval libobjs=\"\$libobjs $whole_archive_flag_spec\" test "X$libobjs" = "X " && libobjs= fi # Expand the library linking commands again to reset the # value of $libobjs for piecewise linking. # Do each of the archive commands. if test "$module" = yes && test -n "$module_cmds" ; then if test -n "$export_symbols" && test -n "$module_expsym_cmds"; then cmds=$module_expsym_cmds else cmds=$module_cmds fi else if test -n "$export_symbols" && test -n "$archive_expsym_cmds"; then cmds=$archive_expsym_cmds else cmds=$archive_cmds fi fi fi if test -n "$delfiles"; then # Append the command to remove temporary files to $cmds. eval cmds=\"\$cmds~\$RM $delfiles\" fi # Add any objects from preloaded convenience libraries if test -n "$dlprefiles"; then gentop="$output_objdir/${outputname}x" generated="$generated $gentop" func_extract_archives $gentop $dlprefiles libobjs="$libobjs $func_extract_archives_result" test "X$libobjs" = "X " && libobjs= fi save_ifs="$IFS"; IFS='~' for cmd in $cmds; do IFS="$save_ifs" eval cmd=\"$cmd\" $opt_silent || { func_quote_for_expand "$cmd" eval "func_echo $func_quote_for_expand_result" } $opt_dry_run || eval "$cmd" || { lt_exit=$? # Restore the uninstalled library and exit if test "$mode" = relink; then ( cd "$output_objdir" && \ $RM "${realname}T" && \ $MV "${realname}U" "$realname" ) fi exit $lt_exit } done IFS="$save_ifs" # Restore the uninstalled library and exit if test "$mode" = relink; then $opt_dry_run || eval '(cd $output_objdir && $RM ${realname}T && $MV $realname ${realname}T && $MV ${realname}U $realname)' || exit $? if test -n "$convenience"; then if test -z "$whole_archive_flag_spec"; then func_show_eval '${RM}r "$gentop"' fi fi exit $EXIT_SUCCESS fi # Create links to the real library. for linkname in $linknames; do if test "$realname" != "$linkname"; then func_show_eval '(cd "$output_objdir" && $RM "$linkname" && $LN_S "$realname" "$linkname")' 'exit $?' fi done # If -module or -export-dynamic was specified, set the dlname. if test "$module" = yes || test "$export_dynamic" = yes; then # On all known operating systems, these are identical. dlname="$soname" fi fi ;; obj) if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; then func_warning "\`-dlopen' is ignored for objects" fi case " $deplibs" in *\ -l* | *\ -L*) func_warning "\`-l' and \`-L' are ignored for objects" ;; esac test -n "$rpath" && \ func_warning "\`-rpath' is ignored for objects" test -n "$xrpath" && \ func_warning "\`-R' is ignored for objects" test -n "$vinfo" && \ func_warning "\`-version-info' is ignored for objects" test -n "$release" && \ func_warning "\`-release' is ignored for objects" case $output in *.lo) test -n "$objs$old_deplibs" && \ func_fatal_error "cannot build library object \`$output' from non-libtool objects" libobj=$output func_lo2o "$libobj" obj=$func_lo2o_result ;; *) libobj= obj="$output" ;; esac # Delete the old objects. $opt_dry_run || $RM $obj $libobj # Objects from convenience libraries. This assumes # single-version convenience libraries. Whenever we create # different ones for PIC/non-PIC, this we'll have to duplicate # the extraction. reload_conv_objs= gentop= # reload_cmds runs $LD directly, so let us get rid of # -Wl from whole_archive_flag_spec and hope we can get by with # turning comma into space.. wl= if test -n "$convenience"; then if test -n "$whole_archive_flag_spec"; then eval tmp_whole_archive_flags=\"$whole_archive_flag_spec\" reload_conv_objs=$reload_objs\ `$ECHO "X$tmp_whole_archive_flags" | $Xsed -e 's|,| |g'` else gentop="$output_objdir/${obj}x" generated="$generated $gentop" func_extract_archives $gentop $convenience reload_conv_objs="$reload_objs $func_extract_archives_result" fi fi # Create the old-style object. reload_objs="$objs$old_deplibs "`$ECHO "X$libobjs" | $SP2NL | $Xsed -e '/\.'${libext}$'/d' -e '/\.lib$/d' -e "$lo2o" | $NL2SP`" $reload_conv_objs" ### testsuite: skip nested quoting test output="$obj" func_execute_cmds "$reload_cmds" 'exit $?' # Exit if we aren't doing a library object file. if test -z "$libobj"; then if test -n "$gentop"; then func_show_eval '${RM}r "$gentop"' fi exit $EXIT_SUCCESS fi if test "$build_libtool_libs" != yes; then if test -n "$gentop"; then func_show_eval '${RM}r "$gentop"' fi # Create an invalid libtool object if no PIC, so that we don't # accidentally link it into a program. # $show "echo timestamp > $libobj" # $opt_dry_run || eval "echo timestamp > $libobj" || exit $? exit $EXIT_SUCCESS fi if test -n "$pic_flag" || test "$pic_mode" != default; then # Only do commands if we really have different PIC objects. reload_objs="$libobjs $reload_conv_objs" output="$libobj" func_execute_cmds "$reload_cmds" 'exit $?' fi if test -n "$gentop"; then func_show_eval '${RM}r "$gentop"' fi exit $EXIT_SUCCESS ;; prog) case $host in *cygwin*) func_stripname '' '.exe' "$output" output=$func_stripname_result.exe;; esac test -n "$vinfo" && \ func_warning "\`-version-info' is ignored for programs" test -n "$release" && \ func_warning "\`-release' is ignored for programs" test "$preload" = yes \ && test "$dlopen_support" = unknown \ && test "$dlopen_self" = unknown \ && test "$dlopen_self_static" = unknown && \ func_warning "\`LT_INIT([dlopen])' not used. Assuming no dlopen support." case $host in *-*-rhapsody* | *-*-darwin1.[012]) # On Rhapsody replace the C library is the System framework compile_deplibs=`$ECHO "X $compile_deplibs" | $Xsed -e 's/ -lc / System.ltframework /'` finalize_deplibs=`$ECHO "X $finalize_deplibs" | $Xsed -e 's/ -lc / System.ltframework /'` ;; esac case $host in *-*-darwin*) # Don't allow lazy linking, it breaks C++ global constructors # But is supposedly fixed on 10.4 or later (yay!). if test "$tagname" = CXX ; then case ${MACOSX_DEPLOYMENT_TARGET-10.0} in 10.[0123]) compile_command="$compile_command ${wl}-bind_at_load" finalize_command="$finalize_command ${wl}-bind_at_load" ;; esac fi # Time to change all our "foo.ltframework" stuff back to "-framework foo" compile_deplibs=`$ECHO "X $compile_deplibs" | $Xsed -e 's% \([^ $]*\).ltframework% -framework \1%g'` finalize_deplibs=`$ECHO "X $finalize_deplibs" | $Xsed -e 's% \([^ $]*\).ltframework% -framework \1%g'` ;; esac # move library search paths that coincide with paths to not yet # installed libraries to the beginning of the library search list new_libs= for path in $notinst_path; do case " $new_libs " in *" -L$path/$objdir "*) ;; *) case " $compile_deplibs " in *" -L$path/$objdir "*) new_libs="$new_libs -L$path/$objdir" ;; esac ;; esac done for deplib in $compile_deplibs; do case $deplib in -L*) case " $new_libs " in *" $deplib "*) ;; *) new_libs="$new_libs $deplib" ;; esac ;; *) new_libs="$new_libs $deplib" ;; esac done compile_deplibs="$new_libs" compile_command="$compile_command $compile_deplibs" finalize_command="$finalize_command $finalize_deplibs" if test -n "$rpath$xrpath"; then # If the user specified any rpath flags, then add them. for libdir in $rpath $xrpath; do # This is the magic to use -rpath. case "$finalize_rpath " in *" $libdir "*) ;; *) finalize_rpath="$finalize_rpath $libdir" ;; esac done fi # Now hardcode the library paths rpath= hardcode_libdirs= for libdir in $compile_rpath $finalize_rpath; do if test -n "$hardcode_libdir_flag_spec"; then if test -n "$hardcode_libdir_separator"; then if test -z "$hardcode_libdirs"; then hardcode_libdirs="$libdir" else # Just accumulate the unique libdirs. case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*) ;; *) hardcode_libdirs="$hardcode_libdirs$hardcode_libdir_separator$libdir" ;; esac fi else eval flag=\"$hardcode_libdir_flag_spec\" rpath="$rpath $flag" fi elif test -n "$runpath_var"; then case "$perm_rpath " in *" $libdir "*) ;; *) perm_rpath="$perm_rpath $libdir" ;; esac fi case $host in *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-cegcc*) testbindir=`${ECHO} "$libdir" | ${SED} -e 's*/lib$*/bin*'` case :$dllsearchpath: in *":$libdir:"*) ;; ::) dllsearchpath=$libdir;; *) dllsearchpath="$dllsearchpath:$libdir";; esac case :$dllsearchpath: in *":$testbindir:"*) ;; ::) dllsearchpath=$testbindir;; *) dllsearchpath="$dllsearchpath:$testbindir";; esac ;; esac done # Substitute the hardcoded libdirs into the rpath. if test -n "$hardcode_libdir_separator" && test -n "$hardcode_libdirs"; then libdir="$hardcode_libdirs" eval rpath=\" $hardcode_libdir_flag_spec\" fi compile_rpath="$rpath" rpath= hardcode_libdirs= for libdir in $finalize_rpath; do if test -n "$hardcode_libdir_flag_spec"; then if test -n "$hardcode_libdir_separator"; then if test -z "$hardcode_libdirs"; then hardcode_libdirs="$libdir" else # Just accumulate the unique libdirs. case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*) ;; *) hardcode_libdirs="$hardcode_libdirs$hardcode_libdir_separator$libdir" ;; esac fi else eval flag=\"$hardcode_libdir_flag_spec\" rpath="$rpath $flag" fi elif test -n "$runpath_var"; then case "$finalize_perm_rpath " in *" $libdir "*) ;; *) finalize_perm_rpath="$finalize_perm_rpath $libdir" ;; esac fi done # Substitute the hardcoded libdirs into the rpath. if test -n "$hardcode_libdir_separator" && test -n "$hardcode_libdirs"; then libdir="$hardcode_libdirs" eval rpath=\" $hardcode_libdir_flag_spec\" fi finalize_rpath="$rpath" if test -n "$libobjs" && test "$build_old_libs" = yes; then # Transform all the library objects into standard objects. compile_command=`$ECHO "X$compile_command" | $SP2NL | $Xsed -e "$lo2o" | $NL2SP` finalize_command=`$ECHO "X$finalize_command" | $SP2NL | $Xsed -e "$lo2o" | $NL2SP` fi func_generate_dlsyms "$outputname" "@PROGRAM@" "no" # template prelinking step if test -n "$prelink_cmds"; then func_execute_cmds "$prelink_cmds" 'exit $?' fi wrappers_required=yes case $host in *cygwin* | *mingw* ) if test "$build_libtool_libs" != yes; then wrappers_required=no fi ;; *cegcc) # Disable wrappers for cegcc, we are cross compiling anyway. wrappers_required=no ;; *) if test "$need_relink" = no || test "$build_libtool_libs" != yes; then wrappers_required=no fi ;; esac if test "$wrappers_required" = no; then # Replace the output file specification. compile_command=`$ECHO "X$compile_command" | $Xsed -e 's%@OUTPUT@%'"$output"'%g'` link_command="$compile_command$compile_rpath" # We have no uninstalled library dependencies, so finalize right now. exit_status=0 func_show_eval "$link_command" 'exit_status=$?' # Delete the generated files. if test -f "$output_objdir/${outputname}S.${objext}"; then func_show_eval '$RM "$output_objdir/${outputname}S.${objext}"' fi exit $exit_status fi if test -n "$compile_shlibpath$finalize_shlibpath"; then compile_command="$shlibpath_var=\"$compile_shlibpath$finalize_shlibpath\$$shlibpath_var\" $compile_command" fi if test -n "$finalize_shlibpath"; then finalize_command="$shlibpath_var=\"$finalize_shlibpath\$$shlibpath_var\" $finalize_command" fi compile_var= finalize_var= if test -n "$runpath_var"; then if test -n "$perm_rpath"; then # We should set the runpath_var. rpath= for dir in $perm_rpath; do rpath="$rpath$dir:" done compile_var="$runpath_var=\"$rpath\$$runpath_var\" " fi if test -n "$finalize_perm_rpath"; then # We should set the runpath_var. rpath= for dir in $finalize_perm_rpath; do rpath="$rpath$dir:" done finalize_var="$runpath_var=\"$rpath\$$runpath_var\" " fi fi if test "$no_install" = yes; then # We don't need to create a wrapper script. link_command="$compile_var$compile_command$compile_rpath" # Replace the output file specification. link_command=`$ECHO "X$link_command" | $Xsed -e 's%@OUTPUT@%'"$output"'%g'` # Delete the old output file. $opt_dry_run || $RM $output # Link the executable and exit func_show_eval "$link_command" 'exit $?' exit $EXIT_SUCCESS fi if test "$hardcode_action" = relink; then # Fast installation is not supported link_command="$compile_var$compile_command$compile_rpath" relink_command="$finalize_var$finalize_command$finalize_rpath" func_warning "this platform does not like uninstalled shared libraries" func_warning "\`$output' will be relinked during installation" else if test "$fast_install" != no; then link_command="$finalize_var$compile_command$finalize_rpath" if test "$fast_install" = yes; then relink_command=`$ECHO "X$compile_var$compile_command$compile_rpath" | $Xsed -e 's%@OUTPUT@%\$progdir/\$file%g'` else # fast_install is set to needless relink_command= fi else link_command="$compile_var$compile_command$compile_rpath" relink_command="$finalize_var$finalize_command$finalize_rpath" fi fi # Replace the output file specification. link_command=`$ECHO "X$link_command" | $Xsed -e 's%@OUTPUT@%'"$output_objdir/$outputname"'%g'` # Delete the old output files. $opt_dry_run || $RM $output $output_objdir/$outputname $output_objdir/lt-$outputname func_show_eval "$link_command" 'exit $?' # Now create the wrapper script. func_verbose "creating $output" # Quote the relink command for shipping. if test -n "$relink_command"; then # Preserve any variables that may affect compiler behavior for var in $variables_saved_for_relink; do if eval test -z \"\${$var+set}\"; then relink_command="{ test -z \"\${$var+set}\" || $lt_unset $var || { $var=; export $var; }; }; $relink_command" elif eval var_value=\$$var; test -z "$var_value"; then relink_command="$var=; export $var; $relink_command" else func_quote_for_eval "$var_value" relink_command="$var=$func_quote_for_eval_result; export $var; $relink_command" fi done relink_command="(cd `pwd`; $relink_command)" relink_command=`$ECHO "X$relink_command" | $Xsed -e "$sed_quote_subst"` fi # Quote $ECHO for shipping. if test "X$ECHO" = "X$SHELL $progpath --fallback-echo"; then case $progpath in [\\/]* | [A-Za-z]:[\\/]*) qecho="$SHELL $progpath --fallback-echo";; *) qecho="$SHELL `pwd`/$progpath --fallback-echo";; esac qecho=`$ECHO "X$qecho" | $Xsed -e "$sed_quote_subst"` else qecho=`$ECHO "X$ECHO" | $Xsed -e "$sed_quote_subst"` fi # Only actually do things if not in dry run mode. $opt_dry_run || { # win32 will think the script is a binary if it has # a .exe suffix, so we strip it off here. case $output in *.exe) func_stripname '' '.exe' "$output" output=$func_stripname_result ;; esac # test for cygwin because mv fails w/o .exe extensions case $host in *cygwin*) exeext=.exe func_stripname '' '.exe' "$outputname" outputname=$func_stripname_result ;; *) exeext= ;; esac case $host in *cygwin* | *mingw* ) func_dirname_and_basename "$output" "" "." output_name=$func_basename_result output_path=$func_dirname_result cwrappersource="$output_path/$objdir/lt-$output_name.c" cwrapper="$output_path/$output_name.exe" $RM $cwrappersource $cwrapper trap "$RM $cwrappersource $cwrapper; exit $EXIT_FAILURE" 1 2 15 func_emit_cwrapperexe_src > $cwrappersource # The wrapper executable is built using the $host compiler, # because it contains $host paths and files. If cross- # compiling, it, like the target executable, must be # executed on the $host or under an emulation environment. $opt_dry_run || { $LTCC $LTCFLAGS -o $cwrapper $cwrappersource $STRIP $cwrapper } # Now, create the wrapper script for func_source use: func_ltwrapper_scriptname $cwrapper $RM $func_ltwrapper_scriptname_result trap "$RM $func_ltwrapper_scriptname_result; exit $EXIT_FAILURE" 1 2 15 $opt_dry_run || { # note: this script will not be executed, so do not chmod. if test "x$build" = "x$host" ; then $cwrapper --lt-dump-script > $func_ltwrapper_scriptname_result else func_emit_wrapper no > $func_ltwrapper_scriptname_result fi } ;; * ) $RM $output trap "$RM $output; exit $EXIT_FAILURE" 1 2 15 func_emit_wrapper no > $output chmod +x $output ;; esac } exit $EXIT_SUCCESS ;; esac # See if we need to build an old-fashioned archive. for oldlib in $oldlibs; do if test "$build_libtool_libs" = convenience; then oldobjs="$libobjs_save $symfileobj" addlibs="$convenience" build_libtool_libs=no else if test "$build_libtool_libs" = module; then oldobjs="$libobjs_save" build_libtool_libs=no else oldobjs="$old_deplibs $non_pic_objects" if test "$preload" = yes && test -f "$symfileobj"; then oldobjs="$oldobjs $symfileobj" fi fi addlibs="$old_convenience" fi if test -n "$addlibs"; then gentop="$output_objdir/${outputname}x" generated="$generated $gentop" func_extract_archives $gentop $addlibs oldobjs="$oldobjs $func_extract_archives_result" fi # Do each command in the archive commands. if test -n "$old_archive_from_new_cmds" && test "$build_libtool_libs" = yes; then cmds=$old_archive_from_new_cmds else # Add any objects from preloaded convenience libraries if test -n "$dlprefiles"; then gentop="$output_objdir/${outputname}x" generated="$generated $gentop" func_extract_archives $gentop $dlprefiles oldobjs="$oldobjs $func_extract_archives_result" fi # POSIX demands no paths to be encoded in archives. We have # to avoid creating archives with duplicate basenames if we # might have to extract them afterwards, e.g., when creating a # static archive out of a convenience library, or when linking # the entirety of a libtool archive into another (currently # not supported by libtool). if (for obj in $oldobjs do func_basename "$obj" $ECHO "$func_basename_result" done | sort | sort -uc >/dev/null 2>&1); then : else $ECHO "copying selected object files to avoid basename conflicts..." gentop="$output_objdir/${outputname}x" generated="$generated $gentop" func_mkdir_p "$gentop" save_oldobjs=$oldobjs oldobjs= counter=1 for obj in $save_oldobjs do func_basename "$obj" objbase="$func_basename_result" case " $oldobjs " in " ") oldobjs=$obj ;; *[\ /]"$objbase "*) while :; do # Make sure we don't pick an alternate name that also # overlaps. newobj=lt$counter-$objbase func_arith $counter + 1 counter=$func_arith_result case " $oldobjs " in *[\ /]"$newobj "*) ;; *) if test ! -f "$gentop/$newobj"; then break; fi ;; esac done func_show_eval "ln $obj $gentop/$newobj || cp $obj $gentop/$newobj" oldobjs="$oldobjs $gentop/$newobj" ;; *) oldobjs="$oldobjs $obj" ;; esac done fi eval cmds=\"$old_archive_cmds\" func_len " $cmds" len=$func_len_result if test "$len" -lt "$max_cmd_len" || test "$max_cmd_len" -le -1; then cmds=$old_archive_cmds else # the command line is too long to link in one step, link in parts func_verbose "using piecewise archive linking..." save_RANLIB=$RANLIB RANLIB=: objlist= concat_cmds= save_oldobjs=$oldobjs oldobjs= # Is there a better way of finding the last object in the list? for obj in $save_oldobjs do last_oldobj=$obj done eval test_cmds=\"$old_archive_cmds\" func_len " $test_cmds" len0=$func_len_result len=$len0 for obj in $save_oldobjs do func_len " $obj" func_arith $len + $func_len_result len=$func_arith_result func_append objlist " $obj" if test "$len" -lt "$max_cmd_len"; then : else # the above command should be used before it gets too long oldobjs=$objlist if test "$obj" = "$last_oldobj" ; then RANLIB=$save_RANLIB fi test -z "$concat_cmds" || concat_cmds=$concat_cmds~ eval concat_cmds=\"\${concat_cmds}$old_archive_cmds\" objlist= len=$len0 fi done RANLIB=$save_RANLIB oldobjs=$objlist if test "X$oldobjs" = "X" ; then eval cmds=\"\$concat_cmds\" else eval cmds=\"\$concat_cmds~\$old_archive_cmds\" fi fi fi func_execute_cmds "$cmds" 'exit $?' done test -n "$generated" && \ func_show_eval "${RM}r$generated" # Now create the libtool archive. case $output in *.la) old_library= test "$build_old_libs" = yes && old_library="$libname.$libext" func_verbose "creating $output" # Preserve any variables that may affect compiler behavior for var in $variables_saved_for_relink; do if eval test -z \"\${$var+set}\"; then relink_command="{ test -z \"\${$var+set}\" || $lt_unset $var || { $var=; export $var; }; }; $relink_command" elif eval var_value=\$$var; test -z "$var_value"; then relink_command="$var=; export $var; $relink_command" else func_quote_for_eval "$var_value" relink_command="$var=$func_quote_for_eval_result; export $var; $relink_command" fi done # Quote the link command for shipping. relink_command="(cd `pwd`; $SHELL $progpath $preserve_args --mode=relink $libtool_args @inst_prefix_dir@)" relink_command=`$ECHO "X$relink_command" | $Xsed -e "$sed_quote_subst"` if test "$hardcode_automatic" = yes ; then relink_command= fi # Only create the output if not a dry run. $opt_dry_run || { for installed in no yes; do if test "$installed" = yes; then if test -z "$install_libdir"; then break fi output="$output_objdir/$outputname"i # Replace all uninstalled libtool libraries with the installed ones newdependency_libs= for deplib in $dependency_libs; do case $deplib in *.la) func_basename "$deplib" name="$func_basename_result" eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $deplib` test -z "$libdir" && \ func_fatal_error "\`$deplib' is not a valid libtool archive" newdependency_libs="$newdependency_libs $libdir/$name" ;; *) newdependency_libs="$newdependency_libs $deplib" ;; esac done dependency_libs="$newdependency_libs" newdlfiles= for lib in $dlfiles; do case $lib in *.la) func_basename "$lib" name="$func_basename_result" eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $lib` test -z "$libdir" && \ func_fatal_error "\`$lib' is not a valid libtool archive" newdlfiles="$newdlfiles $libdir/$name" ;; *) newdlfiles="$newdlfiles $lib" ;; esac done dlfiles="$newdlfiles" newdlprefiles= for lib in $dlprefiles; do case $lib in *.la) # Only pass preopened files to the pseudo-archive (for # eventual linking with the app. that links it) if we # didn't already link the preopened objects directly into # the library: func_basename "$lib" name="$func_basename_result" eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $lib` test -z "$libdir" && \ func_fatal_error "\`$lib' is not a valid libtool archive" newdlprefiles="$newdlprefiles $libdir/$name" ;; esac done dlprefiles="$newdlprefiles" else newdlfiles= for lib in $dlfiles; do case $lib in [\\/]* | [A-Za-z]:[\\/]*) abs="$lib" ;; *) abs=`pwd`"/$lib" ;; esac newdlfiles="$newdlfiles $abs" done dlfiles="$newdlfiles" newdlprefiles= for lib in $dlprefiles; do case $lib in [\\/]* | [A-Za-z]:[\\/]*) abs="$lib" ;; *) abs=`pwd`"/$lib" ;; esac newdlprefiles="$newdlprefiles $abs" done dlprefiles="$newdlprefiles" fi $RM $output # place dlname in correct position for cygwin tdlname=$dlname case $host,$output,$installed,$module,$dlname in *cygwin*,*lai,yes,no,*.dll | *mingw*,*lai,yes,no,*.dll | *cegcc*,*lai,yes,no,*.dll) tdlname=../bin/$dlname ;; esac $ECHO > $output "\ # $outputname - a libtool library file # Generated by $PROGRAM (GNU $PACKAGE$TIMESTAMP) $VERSION # # Please DO NOT delete this file! # It is necessary for linking the library. # The name that we can dlopen(3). dlname='$tdlname' # Names of this library. library_names='$library_names' # The name of the static archive. old_library='$old_library' # Linker flags that can not go in dependency_libs. inherited_linker_flags='$new_inherited_linker_flags' # Libraries that this one depends upon. dependency_libs='$dependency_libs' # Names of additional weak libraries provided by this library weak_library_names='$weak_libs' # Version information for $libname. current=$current age=$age revision=$revision # Is this an already installed library? installed=$installed # Should we warn about portability when linking against -modules? shouldnotlink=$module # Files to dlopen/dlpreopen dlopen='$dlfiles' dlpreopen='$dlprefiles' # Directory that this library needs to be installed in: libdir='$install_libdir'" if test "$installed" = no && test "$need_relink" = yes; then $ECHO >> $output "\ relink_command=\"$relink_command\"" fi done } # Do a symbolic link so that the libtool archive can be found in # LD_LIBRARY_PATH before the program is installed. func_show_eval '( cd "$output_objdir" && $RM "$outputname" && $LN_S "../$outputname" "$outputname" )' 'exit $?' ;; esac exit $EXIT_SUCCESS } { test "$mode" = link || test "$mode" = relink; } && func_mode_link ${1+"$@"} # func_mode_uninstall arg... func_mode_uninstall () { $opt_debug RM="$nonopt" files= rmforce= exit_status=0 # This variable tells wrapper scripts just to set variables rather # than running their programs. libtool_install_magic="$magic" for arg do case $arg in -f) RM="$RM $arg"; rmforce=yes ;; -*) RM="$RM $arg" ;; *) files="$files $arg" ;; esac done test -z "$RM" && \ func_fatal_help "you must specify an RM program" rmdirs= origobjdir="$objdir" for file in $files; do func_dirname "$file" "" "." dir="$func_dirname_result" if test "X$dir" = X.; then objdir="$origobjdir" else objdir="$dir/$origobjdir" fi func_basename "$file" name="$func_basename_result" test "$mode" = uninstall && objdir="$dir" # Remember objdir for removal later, being careful to avoid duplicates if test "$mode" = clean; then case " $rmdirs " in *" $objdir "*) ;; *) rmdirs="$rmdirs $objdir" ;; esac fi # Don't error if the file doesn't exist and rm -f was used. if { test -L "$file"; } >/dev/null 2>&1 || { test -h "$file"; } >/dev/null 2>&1 || test -f "$file"; then : elif test -d "$file"; then exit_status=1 continue elif test "$rmforce" = yes; then continue fi rmfiles="$file" case $name in *.la) # Possibly a libtool archive, so verify it. if func_lalib_p "$file"; then func_source $dir/$name # Delete the libtool libraries and symlinks. for n in $library_names; do rmfiles="$rmfiles $objdir/$n" done test -n "$old_library" && rmfiles="$rmfiles $objdir/$old_library" case "$mode" in clean) case " $library_names " in # " " in the beginning catches empty $dlname *" $dlname "*) ;; *) rmfiles="$rmfiles $objdir/$dlname" ;; esac test -n "$libdir" && rmfiles="$rmfiles $objdir/$name $objdir/${name}i" ;; uninstall) if test -n "$library_names"; then # Do each command in the postuninstall commands. func_execute_cmds "$postuninstall_cmds" 'test "$rmforce" = yes || exit_status=1' fi if test -n "$old_library"; then # Do each command in the old_postuninstall commands. func_execute_cmds "$old_postuninstall_cmds" 'test "$rmforce" = yes || exit_status=1' fi # FIXME: should reinstall the best remaining shared library. ;; esac fi ;; *.lo) # Possibly a libtool object, so verify it. if func_lalib_p "$file"; then # Read the .lo file func_source $dir/$name # Add PIC object to the list of files to remove. if test -n "$pic_object" && test "$pic_object" != none; then rmfiles="$rmfiles $dir/$pic_object" fi # Add non-PIC object to the list of files to remove. if test -n "$non_pic_object" && test "$non_pic_object" != none; then rmfiles="$rmfiles $dir/$non_pic_object" fi fi ;; *) if test "$mode" = clean ; then noexename=$name case $file in *.exe) func_stripname '' '.exe' "$file" file=$func_stripname_result func_stripname '' '.exe' "$name" noexename=$func_stripname_result # $file with .exe has already been added to rmfiles, # add $file without .exe rmfiles="$rmfiles $file" ;; esac # Do a test to see if this is a libtool program. if func_ltwrapper_p "$file"; then if func_ltwrapper_executable_p "$file"; then func_ltwrapper_scriptname "$file" relink_command= func_source $func_ltwrapper_scriptname_result rmfiles="$rmfiles $func_ltwrapper_scriptname_result" else relink_command= func_source $dir/$noexename fi # note $name still contains .exe if it was in $file originally # as does the version of $file that was added into $rmfiles rmfiles="$rmfiles $objdir/$name $objdir/${name}S.${objext}" if test "$fast_install" = yes && test -n "$relink_command"; then rmfiles="$rmfiles $objdir/lt-$name" fi if test "X$noexename" != "X$name" ; then rmfiles="$rmfiles $objdir/lt-${noexename}.c" fi fi fi ;; esac func_show_eval "$RM $rmfiles" 'exit_status=1' done objdir="$origobjdir" # Try to remove the ${objdir}s in the directories where we deleted files for dir in $rmdirs; do if test -d "$dir"; then func_show_eval "rmdir $dir >/dev/null 2>&1" fi done exit $exit_status } { test "$mode" = uninstall || test "$mode" = clean; } && func_mode_uninstall ${1+"$@"} test -z "$mode" && { help="$generic_help" func_fatal_help "you must specify a MODE" } test -z "$exec_cmd" && \ func_fatal_help "invalid operation mode \`$mode'" if test -n "$exec_cmd"; then eval exec "$exec_cmd" exit $EXIT_FAILURE fi exit $exit_status # The TAGs below are defined such that we never get into a situation # in which we disable both kinds of libraries. Given conflicting # choices, we go for a static library, that is the most portable, # since we can't tell whether shared libraries were disabled because # the user asked for that or because the platform doesn't support # them. This is particularly important on AIX, because we don't # support having both static and shared libraries enabled at the same # time on that platform, so we default to a shared-only configuration. # If a disable-shared tag is given, we'll fallback to a static-only # configuration. But we'll never go from static-only to shared-only. # ### BEGIN LIBTOOL TAG CONFIG: disable-shared build_libtool_libs=no build_old_libs=yes # ### END LIBTOOL TAG CONFIG: disable-shared # ### BEGIN LIBTOOL TAG CONFIG: disable-static build_old_libs=`case $build_libtool_libs in yes) echo no;; *) echo yes;; esac` # ### END LIBTOOL TAG CONFIG: disable-static # Local Variables: # mode:shell-script # sh-indentation:2 # End: # vi:sw=2 libbonoboui-2.24.5/Makefile.am0000644000076400007640000000047111173072741013101 00000000000000SUBDIRS = bonobo glade samples tests tools po doc libincludedir = $(includedir)/libbonoboui-2.0 libinclude_HEADERS = \ bonobo.h \ libbonoboui.h EXTRA_DIST = \ MAINTAINERS \ libbonoboui-zip.in \ changes.txt \ gtk-doc.make DISTCLEANFILES = DISTCHECK_CONFIGURE_FLAGS = --enable-gtk-doc libbonoboui-2.24.5/install-sh0000755000076400007640000003253711546334700013061 00000000000000#!/bin/sh # install - install a program, script, or datafile scriptversion=2009-04-28.21; # UTC # This originates from X11R5 (mit/util/scripts/install.sh), which was # later released in X11R6 (xc/config/util/install.sh) with the # following copyright and license. # # Copyright (C) 1994 X Consortium # # Permission is hereby granted, free of charge, to any person obtaining a copy # of this software and associated documentation files (the "Software"), to # deal in the Software without restriction, including without limitation the # rights to use, copy, modify, merge, publish, distribute, sublicense, and/or # sell copies of the Software, and to permit persons to whom the Software is # furnished to do so, subject to the following conditions: # # The above copyright notice and this permission notice shall be included in # all copies or substantial portions of the Software. # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, # FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE # X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN # AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNEC- # TION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # # Except as contained in this notice, the name of the X Consortium shall not # be used in advertising or otherwise to promote the sale, use or other deal- # ings in this Software without prior written authorization from the X Consor- # tium. # # # FSF changes to this file are in the public domain. # # Calling this script install-sh is preferred over install.sh, to prevent # `make' implicit rules from creating a file called install from it # when there is no Makefile. # # This script is compatible with the BSD install script, but was written # from scratch. nl=' ' IFS=" "" $nl" # set DOITPROG to echo to test this script # Don't use :- since 4.3BSD and earlier shells don't like it. doit=${DOITPROG-} if test -z "$doit"; then doit_exec=exec else doit_exec=$doit fi # Put in absolute file names if you don't have them in your path; # or use environment vars. chgrpprog=${CHGRPPROG-chgrp} chmodprog=${CHMODPROG-chmod} chownprog=${CHOWNPROG-chown} cmpprog=${CMPPROG-cmp} cpprog=${CPPROG-cp} mkdirprog=${MKDIRPROG-mkdir} mvprog=${MVPROG-mv} rmprog=${RMPROG-rm} stripprog=${STRIPPROG-strip} posix_glob='?' initialize_posix_glob=' test "$posix_glob" != "?" || { if (set -f) 2>/dev/null; then posix_glob= else posix_glob=: fi } ' posix_mkdir= # Desired mode of installed file. mode=0755 chgrpcmd= chmodcmd=$chmodprog chowncmd= mvcmd=$mvprog rmcmd="$rmprog -f" stripcmd= src= dst= dir_arg= dst_arg= copy_on_change=false no_target_directory= usage="\ Usage: $0 [OPTION]... [-T] SRCFILE DSTFILE or: $0 [OPTION]... SRCFILES... DIRECTORY or: $0 [OPTION]... -t DIRECTORY SRCFILES... or: $0 [OPTION]... -d DIRECTORIES... In the 1st form, copy SRCFILE to DSTFILE. In the 2nd and 3rd, copy all SRCFILES to DIRECTORY. In the 4th, create DIRECTORIES. Options: --help display this help and exit. --version display version info and exit. -c (ignored) -C install only if different (preserve the last data modification time) -d create directories instead of installing files. -g GROUP $chgrpprog installed files to GROUP. -m MODE $chmodprog installed files to MODE. -o USER $chownprog installed files to USER. -s $stripprog installed files. -t DIRECTORY install into DIRECTORY. -T report an error if DSTFILE is a directory. Environment variables override the default commands: CHGRPPROG CHMODPROG CHOWNPROG CMPPROG CPPROG MKDIRPROG MVPROG RMPROG STRIPPROG " while test $# -ne 0; do case $1 in -c) ;; -C) copy_on_change=true;; -d) dir_arg=true;; -g) chgrpcmd="$chgrpprog $2" shift;; --help) echo "$usage"; exit $?;; -m) mode=$2 case $mode in *' '* | *' '* | *' '* | *'*'* | *'?'* | *'['*) echo "$0: invalid mode: $mode" >&2 exit 1;; esac shift;; -o) chowncmd="$chownprog $2" shift;; -s) stripcmd=$stripprog;; -t) dst_arg=$2 shift;; -T) no_target_directory=true;; --version) echo "$0 $scriptversion"; exit $?;; --) shift break;; -*) echo "$0: invalid option: $1" >&2 exit 1;; *) break;; esac shift done if test $# -ne 0 && test -z "$dir_arg$dst_arg"; then # When -d is used, all remaining arguments are directories to create. # When -t is used, the destination is already specified. # Otherwise, the last argument is the destination. Remove it from $@. for arg do if test -n "$dst_arg"; then # $@ is not empty: it contains at least $arg. set fnord "$@" "$dst_arg" shift # fnord fi shift # arg dst_arg=$arg done fi if test $# -eq 0; then if test -z "$dir_arg"; then echo "$0: no input file specified." >&2 exit 1 fi # It's OK to call `install-sh -d' without argument. # This can happen when creating conditional directories. exit 0 fi if test -z "$dir_arg"; then trap '(exit $?); exit' 1 2 13 15 # Set umask so as not to create temps with too-generous modes. # However, 'strip' requires both read and write access to temps. case $mode in # Optimize common cases. *644) cp_umask=133;; *755) cp_umask=22;; *[0-7]) if test -z "$stripcmd"; then u_plus_rw= else u_plus_rw='% 200' fi cp_umask=`expr '(' 777 - $mode % 1000 ')' $u_plus_rw`;; *) if test -z "$stripcmd"; then u_plus_rw= else u_plus_rw=,u+rw fi cp_umask=$mode$u_plus_rw;; esac fi for src do # Protect names starting with `-'. case $src in -*) src=./$src;; esac if test -n "$dir_arg"; then dst=$src dstdir=$dst test -d "$dstdir" dstdir_status=$? else # Waiting for this to be detected by the "$cpprog $src $dsttmp" command # might cause directories to be created, which would be especially bad # if $src (and thus $dsttmp) contains '*'. if test ! -f "$src" && test ! -d "$src"; then echo "$0: $src does not exist." >&2 exit 1 fi if test -z "$dst_arg"; then echo "$0: no destination specified." >&2 exit 1 fi dst=$dst_arg # Protect names starting with `-'. case $dst in -*) dst=./$dst;; esac # If destination is a directory, append the input filename; won't work # if double slashes aren't ignored. if test -d "$dst"; then if test -n "$no_target_directory"; then echo "$0: $dst_arg: Is a directory" >&2 exit 1 fi dstdir=$dst dst=$dstdir/`basename "$src"` dstdir_status=0 else # Prefer dirname, but fall back on a substitute if dirname fails. dstdir=` (dirname "$dst") 2>/dev/null || expr X"$dst" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ X"$dst" : 'X\(//\)[^/]' \| \ X"$dst" : 'X\(//\)$' \| \ X"$dst" : 'X\(/\)' \| . 2>/dev/null || echo X"$dst" | sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/ q } /^X\(\/\/\)[^/].*/{ s//\1/ q } /^X\(\/\/\)$/{ s//\1/ q } /^X\(\/\).*/{ s//\1/ q } s/.*/./; q' ` test -d "$dstdir" dstdir_status=$? fi fi obsolete_mkdir_used=false if test $dstdir_status != 0; then case $posix_mkdir in '') # Create intermediate dirs using mode 755 as modified by the umask. # This is like FreeBSD 'install' as of 1997-10-28. umask=`umask` case $stripcmd.$umask in # Optimize common cases. *[2367][2367]) mkdir_umask=$umask;; .*0[02][02] | .[02][02] | .[02]) mkdir_umask=22;; *[0-7]) mkdir_umask=`expr $umask + 22 \ - $umask % 100 % 40 + $umask % 20 \ - $umask % 10 % 4 + $umask % 2 `;; *) mkdir_umask=$umask,go-w;; esac # With -d, create the new directory with the user-specified mode. # Otherwise, rely on $mkdir_umask. if test -n "$dir_arg"; then mkdir_mode=-m$mode else mkdir_mode= fi posix_mkdir=false case $umask in *[123567][0-7][0-7]) # POSIX mkdir -p sets u+wx bits regardless of umask, which # is incompatible with FreeBSD 'install' when (umask & 300) != 0. ;; *) tmpdir=${TMPDIR-/tmp}/ins$RANDOM-$$ trap 'ret=$?; rmdir "$tmpdir/d" "$tmpdir" 2>/dev/null; exit $ret' 0 if (umask $mkdir_umask && exec $mkdirprog $mkdir_mode -p -- "$tmpdir/d") >/dev/null 2>&1 then if test -z "$dir_arg" || { # Check for POSIX incompatibilities with -m. # HP-UX 11.23 and IRIX 6.5 mkdir -m -p sets group- or # other-writeable bit of parent directory when it shouldn't. # FreeBSD 6.1 mkdir -m -p sets mode of existing directory. ls_ld_tmpdir=`ls -ld "$tmpdir"` case $ls_ld_tmpdir in d????-?r-*) different_mode=700;; d????-?--*) different_mode=755;; *) false;; esac && $mkdirprog -m$different_mode -p -- "$tmpdir" && { ls_ld_tmpdir_1=`ls -ld "$tmpdir"` test "$ls_ld_tmpdir" = "$ls_ld_tmpdir_1" } } then posix_mkdir=: fi rmdir "$tmpdir/d" "$tmpdir" else # Remove any dirs left behind by ancient mkdir implementations. rmdir ./$mkdir_mode ./-p ./-- 2>/dev/null fi trap '' 0;; esac;; esac if $posix_mkdir && ( umask $mkdir_umask && $doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir" ) then : else # The umask is ridiculous, or mkdir does not conform to POSIX, # or it failed possibly due to a race condition. Create the # directory the slow way, step by step, checking for races as we go. case $dstdir in /*) prefix='/';; -*) prefix='./';; *) prefix='';; esac eval "$initialize_posix_glob" oIFS=$IFS IFS=/ $posix_glob set -f set fnord $dstdir shift $posix_glob set +f IFS=$oIFS prefixes= for d do test -z "$d" && continue prefix=$prefix$d if test -d "$prefix"; then prefixes= else if $posix_mkdir; then (umask=$mkdir_umask && $doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir") && break # Don't fail if two instances are running concurrently. test -d "$prefix" || exit 1 else case $prefix in *\'*) qprefix=`echo "$prefix" | sed "s/'/'\\\\\\\\''/g"`;; *) qprefix=$prefix;; esac prefixes="$prefixes '$qprefix'" fi fi prefix=$prefix/ done if test -n "$prefixes"; then # Don't fail if two instances are running concurrently. (umask $mkdir_umask && eval "\$doit_exec \$mkdirprog $prefixes") || test -d "$dstdir" || exit 1 obsolete_mkdir_used=true fi fi fi if test -n "$dir_arg"; then { test -z "$chowncmd" || $doit $chowncmd "$dst"; } && { test -z "$chgrpcmd" || $doit $chgrpcmd "$dst"; } && { test "$obsolete_mkdir_used$chowncmd$chgrpcmd" = false || test -z "$chmodcmd" || $doit $chmodcmd $mode "$dst"; } || exit 1 else # Make a couple of temp file names in the proper directory. dsttmp=$dstdir/_inst.$$_ rmtmp=$dstdir/_rm.$$_ # Trap to clean up those temp files at exit. trap 'ret=$?; rm -f "$dsttmp" "$rmtmp" && exit $ret' 0 # Copy the file name to the temp name. (umask $cp_umask && $doit_exec $cpprog "$src" "$dsttmp") && # and set any options; do chmod last to preserve setuid bits. # # If any of these fail, we abort the whole thing. If we want to # ignore errors from any of these, just make sure not to ignore # errors from the above "$doit $cpprog $src $dsttmp" command. # { test -z "$chowncmd" || $doit $chowncmd "$dsttmp"; } && { test -z "$chgrpcmd" || $doit $chgrpcmd "$dsttmp"; } && { test -z "$stripcmd" || $doit $stripcmd "$dsttmp"; } && { test -z "$chmodcmd" || $doit $chmodcmd $mode "$dsttmp"; } && # If -C, don't bother to copy if it wouldn't change the file. if $copy_on_change && old=`LC_ALL=C ls -dlL "$dst" 2>/dev/null` && new=`LC_ALL=C ls -dlL "$dsttmp" 2>/dev/null` && eval "$initialize_posix_glob" && $posix_glob set -f && set X $old && old=:$2:$4:$5:$6 && set X $new && new=:$2:$4:$5:$6 && $posix_glob set +f && test "$old" = "$new" && $cmpprog "$dst" "$dsttmp" >/dev/null 2>&1 then rm -f "$dsttmp" else # Rename the file to the real destination. $doit $mvcmd -f "$dsttmp" "$dst" 2>/dev/null || # The rename failed, perhaps because mv can't rename something else # to itself, or perhaps because mv is so ancient that it does not # support -f. { # Now remove or move aside any old file at destination location. # We try this two ways since rm can't unlink itself on some # systems and the destination file might be busy for other # reasons. In this case, the final cleanup might fail but the new # file should still install successfully. { test ! -f "$dst" || $doit $rmcmd -f "$dst" 2>/dev/null || { $doit $mvcmd -f "$dst" "$rmtmp" 2>/dev/null && { $doit $rmcmd -f "$rmtmp" 2>/dev/null; :; } } || { echo "$0: cannot unlink or rename $dst" >&2 (exit 1); exit 1 } } && # Now rename the file to the real destination. $doit $mvcmd "$dsttmp" "$dst" } fi || exit 1 trap '' 0 fi done # Local variables: # eval: (add-hook 'write-file-hooks 'time-stamp) # time-stamp-start: "scriptversion=" # time-stamp-format: "%:y-%02m-%02d.%02H" # time-stamp-time-zone: "UTC" # time-stamp-end: "; # UTC" # End: libbonoboui-2.24.5/bonobo/0000775000076400007640000000000011546335131012402 500000000000000libbonoboui-2.24.5/bonobo/bonobo-ui-sync.h0000644000076400007640000001311311173072741015334 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ /* * bonobo-ui-sync.h: An abstract base for Bonobo XML / widget sync sync'ing. * * Author: * Michael Meeks (michael@helixcode.com) * * Copyright 2000 Helix Code, Inc. */ #ifndef _BONOBO_UI_SYNC_H_ #define _BONOBO_UI_SYNC_H_ /* Internal API */ #ifdef BONOBO_UI_INTERNAL #include #include #include #include typedef struct _BonoboUISync BonoboUISync; #include G_BEGIN_DECLS #define BONOBO_TYPE_UI_SYNC (bonobo_ui_sync_get_type ()) #define BONOBO_UI_SYNC(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BONOBO_TYPE_UI_SYNC, BonoboUISync)) #define BONOBO_UI_SYNC_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), BONOBO_TYPE_UI_SYNC, BonoboUISyncClass)) #define BONOBO_IS_UI_SYNC(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BONOBO_TYPE_UI_SYNC)) #define BONOBO_IS_UI_SYNC_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), BONOBO_TYPE_UI_SYNC)) typedef void (*BonoboUISyncStateFn) (BonoboUISync *sync, BonoboUINode *node, BonoboUINode *cmd_node, GtkWidget *widget, GtkWidget *parent); typedef GtkWidget *(*BonoboUISyncBuildFn) (BonoboUISync *sync, BonoboUINode *node, BonoboUINode *cmd_node, int *pos, GtkWidget *parent); typedef struct _BonoboUISyncPrivate BonoboUISyncPrivate; struct _BonoboUISync { GObject parent; BonoboUIEngine *engine; gboolean is_recursive; gboolean has_widgets; BonoboUISyncPrivate *priv; }; typedef struct { GObjectClass parent_class; BonoboUISyncStateFn sync_state; BonoboUISyncStateFn sync_state_placeholder; BonoboUISyncBuildFn build; BonoboUISyncBuildFn build_placeholder; void (*update_root) (BonoboUISync *sync, BonoboUINode *root); void (*remove_root) (BonoboUISync *sync, BonoboUINode *root); GList *(*get_widgets) (BonoboUISync *sync, BonoboUINode *node); void (*state_update) (BonoboUISync *sync, GtkWidget *widget, const char *new_state); gboolean (*ignore_widget) (BonoboUISync *sync, GtkWidget *widget); gboolean (*can_handle) (BonoboUISync *sync, BonoboUINode *node); void (*stamp_root) (BonoboUISync *sync); GtkWidget *(*get_attached) (BonoboUISync *sync, GtkWidget *widget, BonoboUINode *node); GtkWidget *(*wrap_widget) (BonoboUISync *sync, GtkWidget *custom_widget); } BonoboUISyncClass; GType bonobo_ui_sync_get_type (void) G_GNUC_CONST; BonoboUISync *bonobo_ui_sync_construct (BonoboUISync *sync, BonoboUIEngine *engine, gboolean is_recursive, gboolean has_widgets); gboolean bonobo_ui_sync_is_recursive (BonoboUISync *sync); gboolean bonobo_ui_sync_has_widgets (BonoboUISync *sync); void bonobo_ui_sync_remove_root (BonoboUISync *sync, BonoboUINode *root); void bonobo_ui_sync_update_root (BonoboUISync *sync, BonoboUINode *root); void bonobo_ui_sync_state (BonoboUISync *sync, BonoboUINode *node, BonoboUINode *cmd_node, GtkWidget *widget, GtkWidget *parent); void bonobo_ui_sync_state_placeholder (BonoboUISync *sync, BonoboUINode *node, BonoboUINode *cmd_node, GtkWidget *widget, GtkWidget *parent); GtkWidget *bonobo_ui_sync_build (BonoboUISync *sync, BonoboUINode *node, BonoboUINode *cmd_node, int *pos, GtkWidget *parent); GtkWidget *bonobo_ui_sync_build_placeholder (BonoboUISync *sync, BonoboUINode *node, BonoboUINode *cmd_node, int *pos, GtkWidget *parent); gboolean bonobo_ui_sync_ignore_widget (BonoboUISync *sync, GtkWidget *widget); GList *bonobo_ui_sync_get_widgets (BonoboUISync *sync, BonoboUINode *node); void bonobo_ui_sync_stamp_root (BonoboUISync *sync); gboolean bonobo_ui_sync_can_handle (BonoboUISync *sync, BonoboUINode *node); GtkWidget *bonobo_ui_sync_get_attached (BonoboUISync *sync, GtkWidget *widget, BonoboUINode *node); void bonobo_ui_sync_state_update (BonoboUISync *sync, GtkWidget *widget, const char *new_state); gboolean bonobo_ui_sync_do_show_hide (BonoboUISync *sync, BonoboUINode *node, BonoboUINode *cmd_node, GtkWidget *widget); GtkWidget *bonobo_ui_sync_wrap_widget (BonoboUISync *sync, GtkWidget *custom_widget); /* * These are to allow you to remove certain types of Sync * from a bonobo-window to allow full sub-classing of that. * Do not use to instantiate syncs manualy or to sub-class. */ GType bonobo_ui_sync_keys_get_type (void); GType bonobo_ui_sync_menu_get_type (void); GType bonobo_ui_sync_status_get_type (void); GType bonobo_ui_sync_toolbar_get_type (void); G_END_DECLS #endif /* BONOBO_UI_INTERNAL */ #endif /* _BONOBO_UI_SYNC_H_ */ libbonoboui-2.24.5/bonobo/bonobo-ui-component.h0000664000076400007640000002121411433016366016365 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ /** * bonobo-ui-component.h: Client UI signal multiplexer and verb repository. * * Author: * Michael Meeks (michael@helixcode.com) * * Copyright 1999, 2001 Ximian, Inc. */ #ifndef _BONOBO_UI_COMPONENT_H_ #define _BONOBO_UI_COMPONENT_H_ #include #include #include G_BEGIN_DECLS #define BONOBO_TYPE_UI_COMPONENT (bonobo_ui_component_get_type ()) #define BONOBO_UI_COMPONENT(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), BONOBO_TYPE_UI_COMPONENT, BonoboUIComponent)) #define BONOBO_UI_COMPONENT_CLASS(k) (G_TYPE_CHECK_CLASS_CAST((k), BONOBO_TYPE_UI_COMPONENT, BonoboUIComponentClass)) #define BONOBO_IS_UI_COMPONENT(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), BONOBO_TYPE_UI_COMPONENT)) #define BONOBO_IS_UI_COMPONENT_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), BONOBO_TYPE_UI_COMPONENT)) typedef struct _BonoboUIComponent BonoboUIComponent; typedef struct _BonoboUIComponentPrivate BonoboUIComponentPrivate; typedef void (*BonoboUIListenerFn) (BonoboUIComponent *component, const char *path, Bonobo_UIComponent_EventType type, const char *state, gpointer user_data); typedef void (*BonoboUIVerbFn) (BonoboUIComponent *component, gpointer user_data, const char *cname); struct _BonoboUIComponent { BonoboObject object; BonoboUIComponentPrivate *priv; }; typedef struct { BonoboObjectClass parent_class; POA_Bonobo_UIComponent__epv epv; gpointer dummy[6]; /* Signals */ void (*exec_verb) (BonoboUIComponent *comp, const char *cname); void (*ui_event) (BonoboUIComponent *comp, const char *path, Bonobo_UIComponent_EventType type, const char *state); /* Virtual XML Methods */ void (*freeze) (BonoboUIComponent *component, CORBA_Environment *opt_ev); void (*thaw) (BonoboUIComponent *component, CORBA_Environment *opt_ev); void (*xml_set) (BonoboUIComponent *component, const char *path, const char *xml, CORBA_Environment *ev); CORBA_char *(*xml_get) (BonoboUIComponent *component, const char *path, gboolean recurse, CORBA_Environment *ev); void (*xml_rm) (BonoboUIComponent *component, const char *path, CORBA_Environment *ev); void (*set_prop) (BonoboUIComponent *component, const char *path, const char *prop, const char *value, CORBA_Environment *opt_ev); gchar *(*get_prop) (BonoboUIComponent *component, const char *path, const char *prop, CORBA_Environment *opt_ev); gboolean (*exists) (BonoboUIComponent *component, const char *path, CORBA_Environment *ev); } BonoboUIComponentClass; GType bonobo_ui_component_get_type (void) G_GNUC_CONST; BonoboUIComponent *bonobo_ui_component_construct (BonoboUIComponent *component, const char *name); BonoboUIComponent *bonobo_ui_component_new (const char *name); BonoboUIComponent *bonobo_ui_component_new_default (void); void bonobo_ui_component_set_name (BonoboUIComponent *component, const char *name); const char *bonobo_ui_component_get_name (BonoboUIComponent *component); void bonobo_ui_component_set_container (BonoboUIComponent *component, Bonobo_UIContainer container, CORBA_Environment *opt_ev); void bonobo_ui_component_unset_container (BonoboUIComponent *component, CORBA_Environment *opt_ev); Bonobo_UIContainer bonobo_ui_component_get_container (BonoboUIComponent *component); void bonobo_ui_component_add_verb (BonoboUIComponent *component, const char *cname, BonoboUIVerbFn fn, gpointer user_data); void bonobo_ui_component_add_verb_full (BonoboUIComponent *component, const char *cname, GClosure *closure); void bonobo_ui_component_remove_verb (BonoboUIComponent *component, const char *cname); void bonobo_ui_component_remove_verb_by_closure (BonoboUIComponent *component, GClosure *closure); void bonobo_ui_component_add_listener (BonoboUIComponent *component, const char *id, BonoboUIListenerFn fn, gpointer user_data); void bonobo_ui_component_add_listener_full (BonoboUIComponent *component, const char *id, GClosure *closure); void bonobo_ui_component_remove_listener (BonoboUIComponent *component, const char *cname); void bonobo_ui_component_remove_listener_by_closure (BonoboUIComponent *component, GClosure *closure); void bonobo_ui_component_set (BonoboUIComponent *component, const char *path, const char *xml, CORBA_Environment *opt_ev); void bonobo_ui_component_set_translate(BonoboUIComponent *component, const char *path, const char *xml, CORBA_Environment *opt_ev); void bonobo_ui_component_set_tree (BonoboUIComponent *component, const char *path, BonoboUINode *node, CORBA_Environment *ev); void bonobo_ui_component_rm (BonoboUIComponent *component, const char *path, CORBA_Environment *ev); gboolean bonobo_ui_component_path_exists (BonoboUIComponent *component, const char *path, CORBA_Environment *ev); CORBA_char *bonobo_ui_component_get (BonoboUIComponent *component, const char *path, gboolean recurse, CORBA_Environment *opt_ev); BonoboUINode *bonobo_ui_component_get_tree (BonoboUIComponent *component, const char *path, gboolean recurse, CORBA_Environment *opt_ev); void bonobo_ui_component_object_set (BonoboUIComponent *component, const char *path, Bonobo_Unknown control, CORBA_Environment *opt_ev); Bonobo_Unknown bonobo_ui_component_object_get (BonoboUIComponent *component, const char *path, CORBA_Environment *opt_ev); void bonobo_ui_component_widget_set (BonoboUIComponent *component, const char *path, GtkWidget *widget, CORBA_Environment *opt_ev); void bonobo_ui_component_freeze (BonoboUIComponent *component, CORBA_Environment *opt_ev); void bonobo_ui_component_thaw (BonoboUIComponent *component, CORBA_Environment *opt_ev); void bonobo_ui_component_set_prop (BonoboUIComponent *component, const char *path, const char *prop, const char *value, CORBA_Environment *opt_ev); gchar *bonobo_ui_component_get_prop (BonoboUIComponent *component, const char *path, const char *prop, CORBA_Environment *opt_ev); void bonobo_ui_component_set_status (BonoboUIComponent *component, const char *text, CORBA_Environment *opt_ev); typedef struct { const char *cname; BonoboUIVerbFn cb; gpointer user_data; gpointer dummy; } BonoboUIVerb; #define BONOBO_UI_VERB(name,cb) { (name), (cb), NULL, NULL } #define BONOBO_UI_VERB_DATA(name,cb,data) { (name), (cb), (data), NULL } #define BONOBO_UI_UNSAFE_VERB(name,cb) { (name), ((BonoboUIVerbFn)(cb)), NULL, NULL } #define BONOBO_UI_UNSAFE_VERB_DATA(name,cb,data) { (name), ((BonoboUIVerbFn)(cb)), (data), NULL } #define BONOBO_UI_VERB_END { NULL, NULL, NULL, NULL } void bonobo_ui_component_add_verb_list (BonoboUIComponent *component, const BonoboUIVerb *list); void bonobo_ui_component_add_verb_list_with_data (BonoboUIComponent *component, const BonoboUIVerb *list, gpointer user_data); G_END_DECLS #endif /* _BONOBO_UI_COMPONENT_H_ */ libbonoboui-2.24.5/bonobo/bonobo-dock-item.c0000644000076400007640000013706711173072741015633 00000000000000/* bonobo-dock-item.c * * Copyright (C) 1998 Ettore Perazzoli * Copyright (C) 1998 Elliot Lee * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald * All rights reserved. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Library General Public * License as published by the Free Software Foundation; either * version 2 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Library General Public License for more details. * * You should have received a copy of the GNU Library General Public * License along with this library; if not, write to the * Free Software Foundation, Inc., 59 Temple Place - Suite 330, * Boston, MA 02111-1307, USA. */ /* @NOTATION@ */ /* * NB. this may look like a GtkBin, but it contains * a BonoboDockItemGrip in addition to it's child, * stranger things have been done in the name of * bin-compat. */ #include #include "bonobo-dock-item.h" #include "bonobo-dock-band.h" #include "bonobo-dock-item-grip.h" #include "bonobo-ui-marshal.h" #ifdef GDK_WINDOWING_X11 #include #endif #include #include #include struct _BonoboDockItemPrivate { GtkWidget *child; GtkWidget *grip; GtkWidget *float_window; GtkWidget *float_window_box; gboolean float_window_hidden; }; G_DEFINE_TYPE (BonoboDockItem, bonobo_dock_item, GTK_TYPE_BIN) enum { PROP_0, PROP_SHADOW, PROP_ORIENTATION, PROP_PREFERRED_WIDTH, PROP_PREFERRED_HEIGHT }; #define DRAG_HANDLE_SIZE 10 enum { DOCK_DRAG_BEGIN, DOCK_DRAG_END, DOCK_DRAG_MOTION, DOCK_DETACH, ORIENTATION_CHANGED, LAST_SIGNAL }; static guint get_preferred_width (BonoboDockItem *item); static guint get_preferred_height (BonoboDockItem *item); static void bonobo_dock_item_set_property (GObject *object, guint param_id, const GValue *value, GParamSpec *pspec); static void bonobo_dock_item_get_property (GObject *object, guint param_id, GValue *value, GParamSpec *pspec); static void bonobo_dock_item_finalize (GObject *object); static void bonobo_dock_item_map (GtkWidget *widget); static void bonobo_dock_item_unmap (GtkWidget *widget); static void bonobo_dock_item_realize (GtkWidget *widget); static void bonobo_dock_item_unrealize (GtkWidget *widget); static void bonobo_dock_item_style_set (GtkWidget *widget, GtkStyle *previous_style); static void bonobo_dock_item_size_request (GtkWidget *widget, GtkRequisition *requisition); static void bonobo_dock_item_size_allocate (GtkWidget *widget, GtkAllocation *real_allocation); static void bonobo_dock_item_add (GtkContainer *container, GtkWidget *widget); static void bonobo_dock_item_remove (GtkContainer *container, GtkWidget *widget); static void bonobo_dock_item_forall (GtkContainer *container, gboolean include_internals, GtkCallback callback, gpointer callback_data); static void bonobo_dock_item_paint (GtkWidget *widget, GdkEventExpose *event); static gboolean bonobo_dock_item_expose (GtkWidget *widget, GdkEventExpose *event); static gboolean bonobo_dock_item_button_changed (GtkWidget *widget, GdkEventButton *event); static gboolean bonobo_dock_item_motion (GtkWidget *widget, GdkEventMotion *event); static void bonobo_dock_item_float_window_size_request (GtkWidget *widget, GtkRequisition *requisition, gpointer data); static void bonobo_dock_item_float_window_size_allocate (GtkWidget *widget, GtkAllocation *allocation, gpointer data); static gboolean bonobo_dock_item_float_window_expose (GtkWidget *widget, GdkEventExpose *event, gpointer data); static gboolean bonobo_dock_item_float_window_button_changed (GtkWidget *widget, GdkEventButton *event, gpointer data); static gboolean bonobo_dock_item_float_window_motion (GtkWidget *widget, GdkEventMotion *event, gpointer data); static guint dock_item_signals[LAST_SIGNAL] = { 0 }; /* Helper functions. */ static gboolean check_guint_arg (GObject *object, const gchar *name, guint *value_return) { GParamSpec *pspec; g_return_val_if_fail (object != NULL, FALSE); pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (object), name); if (pspec != NULL) { GValue value = { 0, }; g_value_init (&value, G_TYPE_UINT); g_object_get_property (G_OBJECT (object), name, &value); *value_return = g_value_get_uint (&value); g_value_unset (&value); return TRUE; } else return FALSE; } static guint get_preferred_width (BonoboDockItem *dock_item) { GtkWidget *child; guint preferred_width; child = dock_item->_priv->child; if (!child) return 0; if (! check_guint_arg (G_OBJECT (child), "preferred_width", &preferred_width)) { GtkRequisition child_requisition; gtk_widget_get_child_requisition (child, &child_requisition); preferred_width = child_requisition.width; } if (dock_item->orientation == GTK_ORIENTATION_HORIZONTAL) preferred_width += BONOBO_DOCK_ITEM_NOT_LOCKED (dock_item) ? DRAG_HANDLE_SIZE : 0; preferred_width += GTK_CONTAINER (dock_item)->border_width * 2; return preferred_width; } static guint get_preferred_height (BonoboDockItem *dock_item) { GtkWidget *child; guint preferred_height; child = dock_item->_priv->child; if (!child) return 0; if (! check_guint_arg (G_OBJECT (child), "preferred_height", &preferred_height)) { GtkRequisition child_requisition; gtk_widget_get_child_requisition (child, &child_requisition); preferred_height = child_requisition.height; } if (dock_item->orientation == GTK_ORIENTATION_VERTICAL) preferred_height += BONOBO_DOCK_ITEM_NOT_LOCKED (dock_item) ? DRAG_HANDLE_SIZE : 0; preferred_height += GTK_CONTAINER (dock_item)->border_width * 2; return preferred_height; } static void bonobo_dock_item_class_init (BonoboDockItemClass *klass) { GObjectClass *gobject_class; GtkWidgetClass *widget_class; GtkContainerClass *container_class; gobject_class = (GObjectClass *) klass; widget_class = (GtkWidgetClass *) klass; container_class = (GtkContainerClass *) klass; gobject_class->set_property = bonobo_dock_item_set_property; gobject_class->get_property = bonobo_dock_item_get_property; g_object_class_install_property ( gobject_class, PROP_SHADOW, g_param_spec_enum ("shadow", _("Shadow type"), _("Shadow type"), GTK_TYPE_SHADOW_TYPE, GTK_SHADOW_OUT, (G_PARAM_READABLE | G_PARAM_WRITABLE))); g_object_class_install_property ( gobject_class, PROP_ORIENTATION, g_param_spec_enum ("orientation", _("Orientation"), _("Orientation"), GTK_TYPE_ORIENTATION, GTK_ORIENTATION_HORIZONTAL, (G_PARAM_READABLE | G_PARAM_WRITABLE))); g_object_class_install_property ( gobject_class, PROP_PREFERRED_WIDTH, g_param_spec_uint ("preferred_width", _("Preferred width"), _("Preferred width"), 0, G_MAXINT, 0, G_PARAM_READABLE)); g_object_class_install_property ( gobject_class, PROP_PREFERRED_HEIGHT, g_param_spec_uint ("preferred_height", _("Preferred height"), _("Preferred height"), 0, G_MAXINT, 0, G_PARAM_READABLE)); dock_item_signals[DOCK_DRAG_BEGIN] = g_signal_new ("dock_drag_begin", G_TYPE_FROM_CLASS (gobject_class), G_SIGNAL_RUN_LAST, G_STRUCT_OFFSET (BonoboDockItemClass, dock_drag_begin), NULL, NULL, g_cclosure_marshal_VOID__VOID, G_TYPE_NONE, 0); dock_item_signals[DOCK_DRAG_MOTION] = g_signal_new ("dock_drag_motion", G_TYPE_FROM_CLASS (gobject_class), G_SIGNAL_RUN_LAST, G_STRUCT_OFFSET (BonoboDockItemClass, dock_drag_motion), NULL, NULL, bonobo_ui_marshal_VOID__INT_INT, G_TYPE_NONE, 2, G_TYPE_INT, G_TYPE_INT); dock_item_signals[DOCK_DRAG_END] = g_signal_new ("dock_drag_end", G_TYPE_FROM_CLASS (gobject_class), G_SIGNAL_RUN_LAST, G_STRUCT_OFFSET (BonoboDockItemClass, dock_drag_end), NULL, NULL, g_cclosure_marshal_VOID__VOID, G_TYPE_NONE, 0); dock_item_signals[DOCK_DETACH] = g_signal_new ("dock_detach", G_TYPE_FROM_CLASS (gobject_class), G_SIGNAL_RUN_LAST, G_STRUCT_OFFSET (BonoboDockItemClass, dock_detach), NULL, NULL, g_cclosure_marshal_VOID__VOID, G_TYPE_NONE, 0); dock_item_signals[ORIENTATION_CHANGED] = g_signal_new ("orientation_changed", G_TYPE_FROM_CLASS (gobject_class), G_SIGNAL_RUN_LAST, G_STRUCT_OFFSET (BonoboDockItemClass, orientation_changed), NULL, NULL, g_cclosure_marshal_VOID__ENUM, G_TYPE_NONE, 1, GTK_TYPE_ORIENTATION); gobject_class->finalize = bonobo_dock_item_finalize; widget_class->map = bonobo_dock_item_map; widget_class->unmap = bonobo_dock_item_unmap; widget_class->realize = bonobo_dock_item_realize; widget_class->unrealize = bonobo_dock_item_unrealize; widget_class->style_set = bonobo_dock_item_style_set; widget_class->size_request = bonobo_dock_item_size_request; widget_class->size_allocate = bonobo_dock_item_size_allocate; widget_class->expose_event = bonobo_dock_item_expose; widget_class->button_press_event = bonobo_dock_item_button_changed; widget_class->button_release_event = bonobo_dock_item_button_changed; widget_class->motion_notify_event = bonobo_dock_item_motion; container_class->add = bonobo_dock_item_add; container_class->remove = bonobo_dock_item_remove; container_class->forall = bonobo_dock_item_forall; } static void bonobo_dock_item_init (BonoboDockItem *dock_item) { GTK_WIDGET_UNSET_FLAGS (dock_item, GTK_NO_WINDOW); dock_item->_priv = g_new0 (BonoboDockItemPrivate, 1); dock_item->_priv->grip = bonobo_dock_item_grip_new (dock_item); dock_item->_priv->float_window = NULL; dock_item->_priv->float_window_hidden = FALSE; gtk_widget_set_parent (dock_item->_priv->grip, GTK_WIDGET (dock_item)); gtk_widget_show (dock_item->_priv->grip); dock_item->bin_window = NULL; dock_item->float_window = NULL; dock_item->shadow_type = GTK_SHADOW_OUT; dock_item->orientation = GTK_ORIENTATION_HORIZONTAL; dock_item->behavior = BONOBO_DOCK_ITEM_BEH_NORMAL; dock_item->float_window_mapped = FALSE; dock_item->is_floating = FALSE; dock_item->in_drag = FALSE; dock_item->dragoff_x = 0; dock_item->dragoff_y = 0; dock_item->float_x = 0; dock_item->float_y = 0; } static void bonobo_dock_item_set_property (GObject *object, guint param_id, const GValue *value, GParamSpec *pspec) { BonoboDockItem *dock_item; g_return_if_fail (object != NULL); g_return_if_fail (BONOBO_IS_DOCK_ITEM (object)); dock_item = BONOBO_DOCK_ITEM (object); switch (param_id) { case PROP_SHADOW: bonobo_dock_item_set_shadow_type (dock_item, g_value_get_enum (value)); break; case PROP_ORIENTATION: bonobo_dock_item_set_orientation (dock_item, g_value_get_enum (value)); break; default: G_OBJECT_WARN_INVALID_PROPERTY_ID (object, param_id, pspec); break; } } static void bonobo_dock_item_get_property (GObject *object, guint param_id, GValue *value, GParamSpec *pspec) { BonoboDockItem *dock_item; g_return_if_fail (object != NULL); g_return_if_fail (BONOBO_IS_DOCK_ITEM (object)); dock_item = BONOBO_DOCK_ITEM (object); switch (param_id) { case PROP_SHADOW: g_value_set_enum (value, bonobo_dock_item_get_shadow_type (dock_item)); break; case PROP_ORIENTATION: g_value_set_enum (value, bonobo_dock_item_get_orientation (dock_item)); break; case PROP_PREFERRED_HEIGHT: g_value_set_uint (value, get_preferred_height (dock_item)); break; case PROP_PREFERRED_WIDTH: g_value_set_uint (value, get_preferred_width (dock_item)); break; default: G_OBJECT_WARN_INVALID_PROPERTY_ID (object, param_id, pspec); break; } } static void bonobo_dock_item_finalize (GObject *object) { BonoboDockItem *di; g_return_if_fail (object != NULL); g_return_if_fail (BONOBO_IS_DOCK_ITEM (object)); di = BONOBO_DOCK_ITEM (object); g_free (di->name); di->name = NULL; g_free (di->_priv); di->_priv = NULL; G_OBJECT_CLASS (bonobo_dock_item_parent_class)->finalize (object); } static void bonobo_dock_item_map (GtkWidget *widget) { GtkBin *bin; BonoboDockItem *di; g_return_if_fail (widget != NULL); g_return_if_fail (BONOBO_IS_DOCK_ITEM (widget)); GTK_WIDGET_SET_FLAGS (widget, GTK_MAPPED); bin = GTK_BIN (widget); di = BONOBO_DOCK_ITEM (widget); gdk_window_show (di->bin_window); if (! di->is_floating) gdk_window_show (widget->window); if (di->is_floating && !di->float_window_mapped) bonobo_dock_item_detach (di, di->float_x, di->float_y); if (bin->child && GTK_WIDGET_VISIBLE (bin->child) && !GTK_WIDGET_MAPPED (bin->child)) gtk_widget_map (bin->child); if (di->_priv->grip && GTK_WIDGET_VISIBLE (di->_priv->grip) && !GTK_WIDGET_MAPPED (di->_priv->grip)) gtk_widget_map (di->_priv->grip); } static void bonobo_dock_item_unmap (GtkWidget *widget) { BonoboDockItem *di; g_return_if_fail (widget != NULL); g_return_if_fail (BONOBO_IS_DOCK_ITEM (widget)); GTK_WIDGET_UNSET_FLAGS (widget, GTK_MAPPED); di = BONOBO_DOCK_ITEM (widget); gdk_window_hide (widget->window); if (di->float_window_mapped) { gtk_widget_hide (GTK_WIDGET (di->_priv->float_window)); di->float_window_mapped = FALSE; di->_priv->float_window_hidden = TRUE; } if (di->_priv->grip) gtk_widget_unmap (di->_priv->grip); } static void bonobo_dock_item_realize (GtkWidget *widget) { GdkWindowAttr attributes; gint attributes_mask; BonoboDockItem *di; g_return_if_fail (widget != NULL); g_return_if_fail (BONOBO_IS_DOCK_ITEM (widget)); di = BONOBO_DOCK_ITEM (widget); GTK_WIDGET_SET_FLAGS (widget, GTK_REALIZED); attributes.x = widget->allocation.x; attributes.y = widget->allocation.y; attributes.width = widget->allocation.width; attributes.height = widget->allocation.height; attributes.window_type = GDK_WINDOW_CHILD; attributes.wclass = GDK_INPUT_OUTPUT; attributes.visual = gtk_widget_get_visual (widget); attributes.colormap = gtk_widget_get_colormap (widget); attributes.event_mask = (gtk_widget_get_events (widget) | GDK_EXPOSURE_MASK); attributes_mask = GDK_WA_X | GDK_WA_Y | GDK_WA_VISUAL | GDK_WA_COLORMAP; widget->window = gdk_window_new (gtk_widget_get_parent_window (widget), &attributes, attributes_mask); gdk_window_set_user_data (widget->window, widget); attributes.x = 0; attributes.y = 0; attributes.width = widget->allocation.width; attributes.height = widget->allocation.height; attributes.window_type = GDK_WINDOW_CHILD; attributes.event_mask |= (gtk_widget_get_events (widget) | GDK_EXPOSURE_MASK | GDK_BUTTON1_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK | GDK_KEY_PRESS_MASK); attributes_mask = GDK_WA_X | GDK_WA_Y | GDK_WA_VISUAL | GDK_WA_COLORMAP; di->bin_window = gdk_window_new (widget->window, &attributes, attributes_mask); gdk_window_set_user_data (di->bin_window, widget); if (GTK_BIN (di)->child) gtk_widget_set_parent_window (GTK_BIN (di)->child, di->bin_window); gtk_widget_set_parent_window (di->_priv->grip, di->bin_window); di->_priv->float_window = gtk_window_new (GTK_WINDOW_TOPLEVEL); gtk_window_set_screen (GTK_WINDOW (di->_priv->float_window), gtk_widget_get_screen (widget)); gtk_window_set_decorated (GTK_WINDOW (di->_priv->float_window), FALSE); g_signal_connect (di->_priv->float_window, "size_allocate", G_CALLBACK (bonobo_dock_item_float_window_size_allocate), di); g_signal_connect (di->_priv->float_window, "size_request", G_CALLBACK (bonobo_dock_item_float_window_size_request), di); g_signal_connect (di->_priv->float_window, "expose_event", G_CALLBACK (bonobo_dock_item_float_window_expose), di); g_signal_connect (di->_priv->float_window, "button_press_event", G_CALLBACK (bonobo_dock_item_float_window_button_changed), di); g_signal_connect (di->_priv->float_window, "button_release_event", G_CALLBACK (bonobo_dock_item_float_window_button_changed), di); g_signal_connect (di->_priv->float_window, "motion_notify_event", G_CALLBACK (bonobo_dock_item_float_window_motion), di); widget->style = gtk_style_attach (widget->style, widget->window); gtk_style_set_background (widget->style, widget->window, GTK_WIDGET_STATE (di)); gtk_style_set_background (widget->style, di->bin_window, GTK_WIDGET_STATE (di)); gdk_window_set_back_pixmap (widget->window, NULL, TRUE); if (di->is_floating) bonobo_dock_item_detach (di, di->float_x, di->float_y); } static void bonobo_dock_item_unrealize (GtkWidget *widget) { BonoboDockItem *di; g_return_if_fail (widget != NULL); g_return_if_fail (BONOBO_IS_DOCK_ITEM (widget)); di = BONOBO_DOCK_ITEM (widget); gdk_window_set_user_data (di->bin_window, NULL); gdk_window_destroy (di->bin_window); di->bin_window = NULL; if (di->_priv->float_window_hidden) di->float_window_mapped = TRUE; if (di->float_window_mapped) bonobo_dock_item_unfloat (di); gtk_widget_destroy (GTK_WIDGET (di->_priv->float_window)); di->_priv->float_window = NULL; GTK_WIDGET_CLASS (bonobo_dock_item_parent_class)->unrealize (widget); } static void bonobo_dock_item_style_set (GtkWidget *widget, GtkStyle *previous_style) { BonoboDockItem *di; g_return_if_fail (widget != NULL); g_return_if_fail (BONOBO_IS_DOCK_ITEM (widget)); di = BONOBO_DOCK_ITEM (widget); if (GTK_WIDGET_REALIZED (widget) && !GTK_WIDGET_NO_WINDOW (widget)) { gtk_style_set_background (widget->style, widget->window, widget->state); gtk_style_set_background (widget->style, di->bin_window, widget->state); if (GTK_WIDGET_DRAWABLE (widget)) gdk_window_clear (widget->window); } } static void size_request (GtkWidget *widget, GtkRequisition *requisition, BonoboDockItem *dock_item) { GtkBin *bin; GtkRequisition child_requisition; bin = GTK_BIN (widget); /* If our child is not visible, we still request its size, since we won't have any useful hint for our size otherwise. */ if (bin->child != NULL) gtk_widget_size_request (bin->child, &child_requisition); else { child_requisition.width = 0; child_requisition.height = 0; } if (dock_item->orientation == GTK_ORIENTATION_HORIZONTAL) { requisition->width = BONOBO_DOCK_ITEM_NOT_LOCKED (dock_item) ? DRAG_HANDLE_SIZE : 0; if (bin->child != NULL) { requisition->width += child_requisition.width; requisition->height = child_requisition.height; } else requisition->height = 0; } else { requisition->height = BONOBO_DOCK_ITEM_NOT_LOCKED (dock_item) ? DRAG_HANDLE_SIZE : 0; if (bin->child != NULL) { requisition->width = child_requisition.width; requisition->height += child_requisition.height; } else requisition->width = 0; } requisition->width += GTK_CONTAINER (widget)->border_width * 2; requisition->height += GTK_CONTAINER (widget)->border_width * 2; } static void bonobo_dock_item_size_request (GtkWidget *widget, GtkRequisition *requisition) { BonoboDockItem *dock_item; g_return_if_fail (widget != NULL); g_return_if_fail (BONOBO_IS_DOCK_ITEM (widget)); g_return_if_fail (requisition != NULL); dock_item = BONOBO_DOCK_ITEM (widget); size_request (widget, requisition, dock_item); } static void bonobo_dock_item_float_window_size_request (GtkWidget *widget, GtkRequisition *requisition, gpointer data) { BonoboDockItem *dock_item; g_return_if_fail (widget != NULL); g_return_if_fail (requisition != NULL); dock_item = BONOBO_DOCK_ITEM (data); size_request (widget, requisition, dock_item); } static void grip_size_allocate (GtkWidget *widget, GtkAllocation *allocation, GtkAllocation *child_allocation, GtkWidget *grip, BonoboDockItem *di) { GtkWidget *child = GTK_BIN (widget)->child; GtkAllocation grip_alloc = *allocation; grip_alloc.x = grip_alloc.y = 0; if (di->orientation != GTK_ORIENTATION_HORIZONTAL) { grip_alloc.height = DRAG_HANDLE_SIZE; child_allocation->y += DRAG_HANDLE_SIZE; } else { grip_alloc.width = DRAG_HANDLE_SIZE; if (gtk_widget_get_direction (widget) == GTK_TEXT_DIR_LTR) child_allocation->x += DRAG_HANDLE_SIZE; else { GtkRequisition child_requisition; gtk_widget_get_child_requisition (child, &child_requisition); grip_alloc.x = child_requisition.width; } } gtk_widget_size_allocate (grip, &grip_alloc); } static void bonobo_dock_item_float_window_size_allocate (GtkWidget *widget, GtkAllocation *allocation, gpointer data) { GtkBin *bin; BonoboDockItem *di; GtkRequisition child_requisition; GtkAllocation child_allocation; GtkWidget *child, *grip; int border_width; GList *list; di = BONOBO_DOCK_ITEM (data); bin = GTK_BIN(widget); child = bin->child; border_width = GTK_CONTAINER (widget)->border_width; /* Grip and InternalToolbar are the children */ list = gtk_container_get_children (GTK_CONTAINER (child)); grip = list->data; child_allocation.x = border_width; child_allocation.y = border_width; if (BONOBO_DOCK_ITEM_NOT_LOCKED(di)) grip_size_allocate (widget, allocation, &child_allocation, grip, di); list = list->next; child = list->data; gtk_widget_get_child_requisition (child, &child_requisition); child_allocation.width = child_requisition.width + 2 * border_width; child_allocation.height = child_requisition.height + 2 * border_width; gtk_widget_size_allocate (child, &child_allocation); } static void bonobo_dock_item_size_allocate (GtkWidget *widget, GtkAllocation *allocation) { GtkBin *bin; BonoboDockItem *di; g_return_if_fail (widget != NULL); g_return_if_fail (BONOBO_IS_DOCK_ITEM (widget)); g_return_if_fail (allocation != NULL); bin = GTK_BIN (widget); di = BONOBO_DOCK_ITEM (widget); widget->allocation = *allocation; if (GTK_WIDGET_REALIZED (widget)) gdk_window_move_resize (widget->window, widget->allocation.x, widget->allocation.y, widget->allocation.width, widget->allocation.height); if (bin->child && GTK_WIDGET_VISIBLE (bin->child)) { GtkAllocation child_allocation; int border_width; border_width = GTK_CONTAINER (widget)->border_width; child_allocation.x = border_width; child_allocation.y = border_width; if (BONOBO_DOCK_ITEM_NOT_LOCKED(di)) grip_size_allocate (widget, allocation, &child_allocation,di->_priv->grip, di); if (!di->is_floating) { child_allocation.width = MAX (1, (int) widget->allocation.width - 2 * border_width); child_allocation.height = MAX (1, (int) widget->allocation.height - 2 * border_width); if (BONOBO_DOCK_ITEM_NOT_LOCKED (di)) { if (di->orientation == GTK_ORIENTATION_HORIZONTAL) child_allocation.width = MAX ((int) child_allocation.width - DRAG_HANDLE_SIZE, 1); else child_allocation.height = MAX ((int) child_allocation.height - DRAG_HANDLE_SIZE, 1); } if (GTK_WIDGET_REALIZED (di)) gdk_window_move_resize (di->bin_window, 0, 0, widget->allocation.width, widget->allocation.height); } gtk_widget_size_allocate (bin->child, &child_allocation); } } static void window_paint (GtkWidget *widget, GdkEventExpose *event, BonoboDockItem *di) { GdkWindow *window; GtkWidget *grip; GtkContainer *container; if (!di->is_floating) { window = di->bin_window; container = GTK_CONTAINER (di); grip = di->_priv->grip; } else { GtkBin *bin; GtkWidget *child; GList *list; bin = GTK_BIN (widget); child = bin->child; list = gtk_container_get_children (GTK_CONTAINER (child)); window = child->window; grip = list->data; container = GTK_CONTAINER (child); } if (!event) gtk_paint_box(widget->style, window, GTK_WIDGET_STATE (widget), di->shadow_type, NULL, widget, "dockitem_bin", 0, 0, -1, -1); else gtk_paint_box(widget->style, window, GTK_WIDGET_STATE (widget), di->shadow_type, &event->area, widget, "dockitem_bin", 0, 0, -1, -1); if (BONOBO_DOCK_ITEM_NOT_LOCKED (di)) gtk_container_propagate_expose ( container, grip , event); } static void bonobo_dock_item_float_window_paint (GtkWidget *widget, GdkEventExpose *event, gpointer data) { BonoboDockItem *di; di = BONOBO_DOCK_ITEM (data); if (di->is_floating) window_paint (widget, event, di); } static void bonobo_dock_item_paint (GtkWidget *widget, GdkEventExpose *event) { BonoboDockItem *di; di = BONOBO_DOCK_ITEM (widget); if (!di->is_floating) window_paint (widget, event, di); } static gboolean bonobo_dock_item_float_window_expose (GtkWidget *widget, GdkEventExpose *event, gpointer data) { g_return_val_if_fail (widget != NULL, FALSE); g_return_val_if_fail (event != NULL, FALSE); if (GTK_WIDGET_DRAWABLE (widget)) { bonobo_dock_item_float_window_paint (widget, event, data); GTK_WIDGET_CLASS (bonobo_dock_item_parent_class)->expose_event (widget, event); } return FALSE; } static gboolean bonobo_dock_item_expose (GtkWidget *widget, GdkEventExpose *event) { g_return_val_if_fail (widget != NULL, FALSE); g_return_val_if_fail (BONOBO_IS_DOCK_ITEM (widget), FALSE); g_return_val_if_fail (event != NULL, FALSE); if (GTK_WIDGET_DRAWABLE (widget) && event->window != widget->window) { bonobo_dock_item_paint (widget, event); GTK_WIDGET_CLASS (bonobo_dock_item_parent_class)->expose_event (widget, event); } return FALSE; } static void bonobo_dock_item_drag_end (BonoboDockItem *di) { gdk_display_pointer_ungrab (gtk_widget_get_display (GTK_WIDGET (di)), GDK_CURRENT_TIME); di->in_drag = FALSE; g_signal_emit (di, dock_item_signals [DOCK_DRAG_END], 0); } static gboolean button_changed (GtkWidget *widget, GdkEventButton *event, BonoboDockItem *di) { gboolean event_handled = FALSE; if (event->button == 1 && event->type == GDK_BUTTON_PRESS) { GtkWidget *child; gboolean in_handle; if (!di->is_floating) child = di->_priv->child; else child = GTK_WIDGET (bonobo_dock_item_get_child (di)); switch (di->orientation) { case GTK_ORIENTATION_HORIZONTAL: if (gtk_widget_get_direction (widget) == GTK_TEXT_DIR_LTR) in_handle = event->x < DRAG_HANDLE_SIZE; else in_handle = event->x > widget->allocation.width - DRAG_HANDLE_SIZE; break; case GTK_ORIENTATION_VERTICAL: in_handle = event->y < DRAG_HANDLE_SIZE; break; default: in_handle = FALSE; break; } if (!child) { in_handle = FALSE; event_handled = TRUE; } if (in_handle) { di->dragoff_x = event->x; di->dragoff_y = event->y; bonobo_dock_item_grab_pointer (di); g_signal_emit (di , dock_item_signals[DOCK_DRAG_BEGIN], 0); event_handled = TRUE; } } else if (event->type == GDK_BUTTON_RELEASE && di->in_drag) { bonobo_dock_item_drag_end (di); event_handled = TRUE; } return event_handled; } static gboolean bonobo_dock_item_float_window_button_changed (GtkWidget *widget, GdkEventButton *event, gpointer data) { BonoboDockItem *di; g_return_val_if_fail (widget != NULL, FALSE); g_return_val_if_fail (event != NULL, FALSE); di = BONOBO_DOCK_ITEM (data); if (!BONOBO_DOCK_ITEM_NOT_LOCKED(di)) return FALSE; return button_changed (widget, event, di); } static gboolean bonobo_dock_item_button_changed (GtkWidget *widget, GdkEventButton *event) { BonoboDockItem *di; g_return_val_if_fail (widget != NULL, FALSE); g_return_val_if_fail (BONOBO_IS_DOCK_ITEM (widget), FALSE); g_return_val_if_fail (event != NULL, FALSE); di = BONOBO_DOCK_ITEM (widget); if (event->window != di->bin_window) return FALSE; if (!BONOBO_DOCK_ITEM_NOT_LOCKED(widget)) return FALSE; return button_changed (widget, event, di); } static gboolean widget_motion (GtkWidget *widget, GdkEventMotion *event, BonoboDockItem *di) { GdkWindow *root_window; gint new_x, new_y; root_window = gdk_screen_get_root_window (gdk_drawable_get_screen (GDK_DRAWABLE (event->window))); gdk_window_get_pointer (root_window, &new_x, &new_y, NULL); new_x -= di->dragoff_x; new_y -= di->dragoff_y; g_signal_emit (GTK_WIDGET (di), dock_item_signals[DOCK_DRAG_MOTION], 0, new_x, new_y); return TRUE; } static gboolean bonobo_dock_item_float_window_motion (GtkWidget *widget, GdkEventMotion *event, gpointer data) { BonoboDockItem *di; g_return_val_if_fail (widget != NULL, FALSE); g_return_val_if_fail (event != NULL, FALSE); di = BONOBO_DOCK_ITEM (data); if (!di->in_drag) return FALSE; return widget_motion (widget, event, di); } static gboolean bonobo_dock_item_motion (GtkWidget *widget, GdkEventMotion *event) { BonoboDockItem *di; g_return_val_if_fail (widget != NULL, FALSE); g_return_val_if_fail (BONOBO_IS_DOCK_ITEM (widget), FALSE); g_return_val_if_fail (event != NULL, FALSE); di = BONOBO_DOCK_ITEM (widget); if (!di->in_drag) return FALSE; if (event->window != di->bin_window) return FALSE; return widget_motion (widget, event, di); } static void bonobo_dock_item_add (GtkContainer *container, GtkWidget *widget) { BonoboDockItem *dock_item; BonoboDockItemPrivate *priv; GParamSpec *pspec; dock_item = BONOBO_DOCK_ITEM (container); priv = dock_item->_priv; g_return_if_fail (BONOBO_IS_DOCK_ITEM (container)); /* Is this needed ? We hit this assertion when calling from bonobo_dock_item_unfloat() */ g_return_if_fail (GTK_BIN (container)->child == NULL); g_assert (priv->child == NULL); g_return_if_fail (widget->parent == NULL); /* Claim the base reference to the widget, so that it doesn't get owned by the * floating window. */ g_object_ref_sink (widget); gtk_widget_set_parent_window (widget, dock_item->bin_window); dock_item->_priv->child = widget; GTK_CONTAINER_CLASS (bonobo_dock_item_parent_class)->add (container, widget); pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (widget), "orientation"); if (pspec != NULL) { GValue value = { 0, }; g_value_init (&value, GTK_TYPE_ORIENTATION); g_value_set_enum (&value, dock_item->orientation); g_object_set_property (G_OBJECT (widget), "orientation", &value); g_value_unset (&value); } } static void bonobo_dock_item_set_floating (BonoboDockItem *item, gboolean val) { item->is_floating = val; /* If there is a child and it supports the 'is_floating' flag * set that too. */ if (item->bin.child != NULL && g_object_class_find_property (G_OBJECT_GET_CLASS (item->bin.child), "is_floating") != NULL) { GValue value = { 0, }; g_value_init (&value, G_TYPE_BOOLEAN); g_value_set_boolean (&value, val); g_object_set_property (G_OBJECT (item->bin.child), "is_floating", &value); g_value_unset (&value); } } static void bonobo_dock_item_remove (GtkContainer *container, GtkWidget *widget) { BonoboDockItem *di; g_return_if_fail (BONOBO_IS_DOCK_ITEM (container)); di = BONOBO_DOCK_ITEM (container); if (widget == di->_priv->grip) { gboolean grip_was_visible; grip_was_visible = GTK_WIDGET_VISIBLE (widget); gtk_widget_unparent (widget); di->_priv->grip = NULL; if (grip_was_visible) gtk_widget_queue_resize (GTK_WIDGET (di)); return; } g_return_if_fail (di->_priv->child == widget); g_assert (di->_priv->child == di->bin.child); g_object_unref (di->_priv->child); di->_priv->child = NULL; GTK_CONTAINER_CLASS (bonobo_dock_item_parent_class)->remove (container, widget); } static void bonobo_dock_item_forall (GtkContainer *container, gboolean include_internals, GtkCallback callback, gpointer callback_data) { GtkBin *bin = (GtkBin *) container; BonoboDockItem *di = (BonoboDockItem *) container; g_return_if_fail (callback != NULL); if (di->float_window_mapped) return; /* The owner of the widgets is the floating window, not the item */ if (di->_priv->grip) callback (di->_priv->grip, callback_data); if (bin->child) callback (bin->child, callback_data); } /** * bonobo_dock_item_construct: * @new: a #BonoboDockItem. * @name: Name for the new item * @behavior: Behavior for the new item * * Description: Constructs the @new BonoboDockItem named @name, with the * specified @behavior. * * Returns: A new BonoboDockItem widget. **/ void bonobo_dock_item_construct (BonoboDockItem *new, const gchar *name, BonoboDockItemBehavior behavior) { g_return_if_fail (new != NULL); g_return_if_fail (BONOBO_IS_DOCK_ITEM (new)); new->name = g_strdup (name); new->behavior = behavior; if (behavior & BONOBO_DOCK_ITEM_BEH_LOCKED) { gtk_widget_hide (new->_priv->grip); GTK_WIDGET_UNSET_FLAGS (new->_priv->grip, GTK_CAN_FOCUS); } } /** * bonobo_dock_item_new: * @name: Name for the new item * @behavior: Behavior for the new item * * Description: Create a new BonoboDockItem named @name, with the * specified @behavior. * * Returns: A new BonoboDockItem widget. **/ GtkWidget * bonobo_dock_item_new (const gchar *name, BonoboDockItemBehavior behavior) { BonoboDockItem *new; new = BONOBO_DOCK_ITEM (g_object_new (bonobo_dock_item_get_type (), NULL)); bonobo_dock_item_construct (new, name, behavior); return GTK_WIDGET (new); } /** * bonobo_dock_item_get_child: * @item: A BonoboDockItem widget * * Description: Retrieve the child of @item. * * Returns: The child of @item. **/ GtkWidget * bonobo_dock_item_get_child (BonoboDockItem *item) { g_return_val_if_fail (BONOBO_IS_DOCK_ITEM (item), NULL); if (item->is_floating) { GList *list; GtkWidget *child = GTK_BIN (GTK_WIDGET (item->_priv->float_window))->child; list = gtk_container_get_children (GTK_CONTAINER (child)); while (list) { GtkWidget *widget = list->data; if (GTK_IS_TOOLBAR (widget)) return widget; list = list->next; } g_assert_not_reached (); } return GTK_BIN (item)->child; } /** * bonobo_dock_item_get_name: * @item: A BonoboDockItem widget. * * Description: Retrieve the name of @item. * * Return value: The name of @item as a malloc()ed zero-terminated * string. **/ gchar * bonobo_dock_item_get_name (BonoboDockItem *item) { return g_strdup (item->name); } /** * bonobo_dock_item_set_shadow_type: * @dock_item: A BonoboDockItem widget * @type: The shadow type for @dock_item * * Description: Set the shadow type for @dock_item. **/ void bonobo_dock_item_set_shadow_type (BonoboDockItem *dock_item, GtkShadowType type) { g_return_if_fail (BONOBO_IS_DOCK_ITEM (dock_item)); if (dock_item->shadow_type != type) { dock_item->shadow_type = type; if (GTK_WIDGET_DRAWABLE (dock_item)) gtk_widget_queue_draw (GTK_WIDGET (dock_item)); gtk_widget_queue_resize (GTK_WIDGET (dock_item)); } } /** * bonobo_dock_item_get_shadow_type: * @dock_item: A BonoboDockItem widget. * * Description: Retrieve the shadow type of @dock_item. * * Returns: @dock_item's shadow type. **/ GtkShadowType bonobo_dock_item_get_shadow_type (BonoboDockItem *dock_item) { g_return_val_if_fail (dock_item != NULL, GTK_SHADOW_OUT); g_return_val_if_fail (BONOBO_IS_DOCK_ITEM (dock_item), GTK_SHADOW_OUT); return dock_item->shadow_type; } /** * bonobo_dock_item_set_orientation: * @dock_item: A BonoboDockItem widget * @orientation: New orientation for @dock_item * * Description: Set the orientation for @dock_item. * * Returns: %TRUE if the operation succeeds, %FALSE if it fails. **/ gboolean bonobo_dock_item_set_orientation (BonoboDockItem *dock_item, GtkOrientation orientation) { g_return_val_if_fail (dock_item != NULL, FALSE); g_return_val_if_fail (BONOBO_IS_DOCK_ITEM (dock_item), FALSE); if (dock_item->orientation != orientation) { if ((orientation == GTK_ORIENTATION_VERTICAL && (dock_item->behavior & BONOBO_DOCK_ITEM_BEH_NEVER_VERTICAL)) || (orientation == GTK_ORIENTATION_HORIZONTAL && (dock_item->behavior & BONOBO_DOCK_ITEM_BEH_NEVER_HORIZONTAL))) return FALSE; dock_item->orientation = orientation; if (dock_item->bin.child != NULL) { GValue value = { 0, }; g_value_init (&value, GTK_TYPE_ORIENTATION); g_value_set_enum (&value, orientation); g_object_set_property (G_OBJECT (dock_item->bin.child), "orientation", &value); g_value_unset (&value); } if (GTK_WIDGET_DRAWABLE (dock_item)) gtk_widget_queue_draw (GTK_WIDGET (dock_item)); gtk_widget_queue_resize (GTK_WIDGET (dock_item)); g_signal_emit (dock_item, dock_item_signals[ORIENTATION_CHANGED], 0, orientation); } return TRUE; } /** * bonobo_dock_item_get_orientation: * @dock_item: A BonoboDockItem widget. * * Description: Retrieve the orientation of @dock_item. * * Returns: The current orientation of @dock_item. **/ GtkOrientation bonobo_dock_item_get_orientation (BonoboDockItem *dock_item) { g_return_val_if_fail (BONOBO_IS_DOCK_ITEM (dock_item), GTK_ORIENTATION_HORIZONTAL); return dock_item->orientation; } /** * bonobo_dock_item_set_behavior: * @dock_item: A BonoboDockItem widget. * @behavior: New behavior for @dock_item * * Description: Set the behavior for @dock_item. */ void bonobo_dock_item_set_behavior (BonoboDockItem *dock_item, BonoboDockItemBehavior behavior) { g_return_if_fail (BONOBO_IS_DOCK_ITEM (dock_item)); if (dock_item->behavior == behavior) return; dock_item->behavior = behavior; if (behavior & BONOBO_DOCK_ITEM_BEH_LOCKED) bonobo_dock_item_set_locked (dock_item, TRUE); if (behavior & BONOBO_DOCK_ITEM_BEH_NEVER_FLOATING && dock_item->is_floating) bonobo_dock_item_unfloat (dock_item); if (behavior & BONOBO_DOCK_ITEM_BEH_NEVER_VERTICAL && dock_item->orientation == GTK_ORIENTATION_VERTICAL) bonobo_dock_item_set_orientation (dock_item, GTK_ORIENTATION_HORIZONTAL); if (behavior & BONOBO_DOCK_ITEM_BEH_NEVER_HORIZONTAL && dock_item->orientation == GTK_ORIENTATION_HORIZONTAL) bonobo_dock_item_set_orientation (dock_item, GTK_ORIENTATION_VERTICAL); gtk_widget_queue_resize (GTK_WIDGET (dock_item)); } /** * bonobo_dock_item_get_behavior: * @dock_item: A BonoboDockItem widget. * * Description: Retrieve the behavior of @dock_item. * * Returns: The behavior of @dock_item. **/ BonoboDockItemBehavior bonobo_dock_item_get_behavior (BonoboDockItem *dock_item) { g_return_val_if_fail (BONOBO_IS_DOCK_ITEM (dock_item), BONOBO_DOCK_ITEM_BEH_NORMAL); return dock_item->behavior; } /* Private interface. */ void bonobo_dock_item_set_locked (BonoboDockItem *dock_item, gboolean locked) { g_return_if_fail (BONOBO_IS_DOCK_ITEM (dock_item)); if (locked) { if (!BONOBO_DOCK_ITEM_NOT_LOCKED (dock_item)) return; dock_item->behavior |= BONOBO_DOCK_ITEM_BEH_LOCKED; gtk_widget_hide (dock_item->_priv->grip); } else { if (BONOBO_DOCK_ITEM_NOT_LOCKED (dock_item)) return; dock_item->behavior &= ~BONOBO_DOCK_ITEM_BEH_LOCKED; gtk_widget_show (dock_item->_priv->grip); } } void bonobo_dock_item_grab_pointer (BonoboDockItem *item) { GdkCursor *fleur; GdkWindow *gdk_window; g_assert (BONOBO_IS_DOCK_ITEM (item)); item->in_drag = TRUE; fleur = gdk_cursor_new_for_display (gtk_widget_get_display (GTK_WIDGET (item)), GDK_FLEUR); if (item->is_floating) { /* This is not working well...can drag only in the small region of the grip and the first button. To be precise, it just sucks that we can't get a decent grab on the grip itself */ gdk_window = GTK_WIDGET (item->_priv->float_window)->window; } else { gdk_window = item->bin_window; } /* Hm, not sure this is the right thing to do, but it seems to work. */ while (gdk_pointer_grab (gdk_window, FALSE, (GDK_BUTTON1_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_RELEASE_MASK), NULL, fleur, GDK_CURRENT_TIME) != 0); gdk_cursor_unref (fleur); } gboolean bonobo_dock_item_detach (BonoboDockItem *item, gint x, gint y) { BonoboDockItemPrivate *priv; GtkWidget *widget; priv = item->_priv; if (item->behavior & BONOBO_DOCK_ITEM_BEH_NEVER_FLOATING) return FALSE; item->float_x = x; item->float_y = y; bonobo_dock_item_set_floating (item, TRUE); if (!GTK_WIDGET_REALIZED (item)) return TRUE; g_assert (priv->child != NULL); g_assert (priv->grip != NULL); if (!priv->float_window_hidden) { if (item->orientation == GTK_ORIENTATION_HORIZONTAL) priv->float_window_box = gtk_vbox_new (FALSE, 0); else priv->float_window_box = gtk_hbox_new (FALSE, 0); /* the size allocate etc. stuff looked dubious to me we shouldn't be overriding size_allocate really when we re-parent the grip into the floating toolbar box it should all just work in that case, since there's no need to knobble the GTK_BIN stuff, by not overriding, the grip is not allocated hmm, it should be a child of the container, we should override, but not do a signal connection for the float_window */ gtk_container_add (GTK_CONTAINER (priv->float_window), priv->float_window_box); widget = priv->grip; /* container_remove() will make priv->grip NULL, so we save it here */ g_object_ref (priv->grip); gtk_container_remove (GTK_CONTAINER (item), priv->grip); priv->grip = widget; gtk_box_pack_start (GTK_BOX (priv->float_window_box), priv->grip, FALSE, FALSE, 0); g_object_unref (priv->grip); widget = priv->child; g_object_ref (priv->child); gtk_container_remove (GTK_CONTAINER (item), priv->child); priv->child = widget; gtk_box_pack_start (GTK_BOX (priv->float_window_box), priv->child, FALSE, FALSE, 0); g_object_unref (priv->child); } gtk_window_move (GTK_WINDOW (priv->float_window), x, y); gtk_widget_show_all (GTK_WIDGET (priv->float_window)); gdk_window_set_events (priv->float_window->window, gdk_window_get_events (priv->float_window->window) | GDK_BUTTON_PRESS_MASK); item->float_window_mapped = TRUE; priv->float_window_hidden = FALSE; gdk_window_hide (GTK_WIDGET (item)->window); gtk_widget_queue_draw (GTK_WIDGET (item)); gtk_window_set_transient_for (GTK_WINDOW (priv->float_window), (GTK_WINDOW (gtk_widget_get_toplevel (GTK_WIDGET (item))))); g_signal_emit (item, dock_item_signals [DOCK_DETACH], 0); return TRUE; } void bonobo_dock_item_unfloat (BonoboDockItem *item) { BonoboDockItemPrivate *priv; gboolean is_realized; GtkWidget *widget; priv = item->_priv; g_assert (item->float_window_mapped); g_assert (priv->child != NULL); g_assert (priv->grip != NULL); is_realized = GTK_WIDGET_REALIZED (item); /* Grip */ g_object_ref (priv->grip); gtk_container_remove (GTK_CONTAINER (priv->float_window_box), priv->grip); if (is_realized) gtk_widget_set_parent_window (priv->grip, item->bin_window); gtk_widget_set_parent (priv->grip, GTK_WIDGET (item)); g_object_unref (priv->grip); /* Child */ widget = priv->child; g_object_ref (widget); g_assert (item->bin.child == NULL); gtk_container_remove (GTK_CONTAINER (priv->float_window_box), widget); priv->child = NULL; if (is_realized) gtk_widget_set_parent_window (widget, item->bin_window); /* priv->child must be NULL at this point, or bonobo_dock_item_add() barfs */ gtk_container_add (GTK_CONTAINER (item), widget); g_assert (item->bin.child == widget); g_assert (priv->child == widget); g_object_unref (widget); /* Window */ gtk_widget_destroy (priv->float_window_box); priv->float_window_box = NULL; gtk_widget_hide (GTK_WIDGET (item->_priv->float_window)); gdk_window_show (GTK_WIDGET (item)->window); item->float_window_mapped = FALSE; item->_priv->float_window_hidden = FALSE; bonobo_dock_item_set_floating (item, FALSE); gtk_widget_queue_resize (GTK_WIDGET (item)); } void bonobo_dock_item_attach (BonoboDockItem *item, GtkWidget *parent, gint x, gint y) { if (GTK_WIDGET (item)->parent != GTK_WIDGET (parent)) { gdk_window_move_resize (GTK_WIDGET (item)->window, -1, -1, 0, 0); g_object_ref (item); gtk_container_remove (GTK_CONTAINER (GTK_WIDGET (item)->parent), GTK_WIDGET (item)); gtk_container_add (GTK_CONTAINER (parent), GTK_WIDGET (item)); g_object_unref (item); if (item->is_floating) bonobo_dock_item_unfloat (item); bonobo_dock_item_grab_pointer (item); } } void bonobo_dock_item_drag_floating (BonoboDockItem *item, gint x, gint y) { if (item->is_floating) { gtk_window_move (GTK_WINDOW (item->_priv->float_window), x, y); item->float_x = x; item->float_y = y; } } void bonobo_dock_item_handle_size_request (BonoboDockItem *item, GtkRequisition *requisition) { GtkBin *bin; GtkContainer *container; bin = GTK_BIN (item); container = GTK_CONTAINER (item); if (bin->child != NULL) gtk_widget_size_request (bin->child, requisition); if (item->orientation == GTK_ORIENTATION_HORIZONTAL) requisition->width += DRAG_HANDLE_SIZE; else requisition->height += DRAG_HANDLE_SIZE; requisition->width += container->border_width * 2; requisition->height += container->border_width * 2; } void bonobo_dock_item_get_floating_position (BonoboDockItem *item, gint *x, gint *y) { if (GTK_WIDGET_REALIZED (item) && item->is_floating) gtk_window_get_position (GTK_WINDOW (item->_priv->float_window), x, y); else { *x = item->float_x; *y = item->float_y; } } GtkWidget * bonobo_dock_item_get_grip (BonoboDockItem *item) { g_return_val_if_fail (BONOBO_IS_DOCK_ITEM (item), NULL); if (item->behavior & BONOBO_DOCK_ITEM_BEH_LOCKED) return NULL; else return item->_priv->grip; } libbonoboui-2.24.5/bonobo/bonobo-control-frame.h0000644000076400007640000001110111173072741016510 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ /** * Bonobo control frame object. * * Authors: * Nat Friedman (nat@helixcode.com) * Miguel de Icaza (miguel@kernel.org) * * Copyright 1999, 2000 Helix Code, Inc. */ #ifndef _BONOBO_CONTROL_FRAME_H_ #define _BONOBO_CONTROL_FRAME_H_ #include #include #include #include #include typedef struct _BonoboControlFrame BonoboControlFrame; #include G_BEGIN_DECLS #define BONOBO_TYPE_CONTROL_FRAME (bonobo_control_frame_get_type ()) #define BONOBO_CONTROL_FRAME(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), BONOBO_TYPE_CONTROL_FRAME, BonoboControlFrame)) #define BONOBO_CONTROL_FRAME_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), BONOBO_TYPE_CONTROL_FRAME, BonoboControlFrameClass)) #define BONOBO_IS_CONTROL_FRAME(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), BONOBO_TYPE_CONTROL_FRAME)) #define BONOBO_IS_CONTROL_FRAME_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), BONOBO_TYPE_CONTROL_FRAME)) typedef struct _BonoboControlFramePrivate BonoboControlFramePrivate; struct _BonoboControlFrame { BonoboObject base; BonoboControlFramePrivate *priv; }; typedef struct { BonoboObjectClass parent_class; POA_Bonobo_ControlFrame__epv epv; gpointer dummy[4]; /* Signals. */ void (*activated) (BonoboControlFrame *control_frame, gboolean state); void (*activate_uri) (BonoboControlFrame *control_frame, const char *uri, gboolean relative); } BonoboControlFrameClass; #define BONOBO_CONTROL_FRAME_TOPLEVEL_PROP "bonobo:toplevel" /* Object construction stuff */ GType bonobo_control_frame_get_type (void) G_GNUC_CONST; BonoboControlFrame *bonobo_control_frame_construct (BonoboControlFrame *control_frame, Bonobo_UIContainer ui_container, CORBA_Environment *ev); BonoboControlFrame *bonobo_control_frame_new (Bonobo_UIContainer ui_container); GtkWidget *bonobo_control_frame_get_widget (BonoboControlFrame *frame); /* This is only allowed when the Control is deactivated */ void bonobo_control_frame_set_ui_container (BonoboControlFrame *control_frame, Bonobo_UIContainer uic, CORBA_Environment *ev); /* Activating remote controls */ void bonobo_control_frame_control_activate (BonoboControlFrame *control_frame); void bonobo_control_frame_control_deactivate (BonoboControlFrame *control_frame); void bonobo_control_frame_set_autoactivate (BonoboControlFrame *control_frame, gboolean autoactivate); gboolean bonobo_control_frame_get_autoactivate (BonoboControlFrame *control_frame); /* Remote properties */ Bonobo_PropertyBag bonobo_control_frame_get_control_property_bag (BonoboControlFrame *control_frame, CORBA_Environment *opt_ev); /* Ambient properties */ void bonobo_control_frame_set_propbag (BonoboControlFrame *control_frame, BonoboPropertyBag *propbag); BonoboPropertyBag *bonobo_control_frame_get_propbag (BonoboControlFrame *control_frame); /* Widget state proxying */ void bonobo_control_frame_control_set_state (BonoboControlFrame *control_frame, GtkStateType state); void bonobo_control_frame_set_autostate (BonoboControlFrame *control_frame, gboolean autostate); gboolean bonobo_control_frame_get_autostate (BonoboControlFrame *control_frame); /* Connecting to the remote control */ void bonobo_control_frame_bind_to_control (BonoboControlFrame *control_frame, Bonobo_Control control, CORBA_Environment *opt_ev); Bonobo_Control bonobo_control_frame_get_control (BonoboControlFrame *control_frame); Bonobo_UIContainer bonobo_control_frame_get_ui_container (BonoboControlFrame *control_frame); BonoboUIComponent *bonobo_control_frame_get_popup_component (BonoboControlFrame *control_frame, CORBA_Environment *opt_ev); G_END_DECLS #endif /* _BONOBO_CONTROL_FRAME_H_ */ libbonoboui-2.24.5/bonobo/bonobo-ui-sync.c0000644000076400007640000002651711173072741015343 00000000000000/* -*- Mode: C; indent-tabs-mode: t; c-basic-offset: 8; tab-width: 8 -*- */ /* * bonobo-ui-sync.h: An abstract base for Bonobo XML / widget sync sync'ing. * * Author: * Michael Meeks (michael@ximian.com) * * Copyright 2000 Ximian, Inc. */ #include #include #include #include #include #include #define PARENT_TYPE G_TYPE_OBJECT #define CLASS(o) BONOBO_UI_SYNC_CLASS (G_OBJECT_GET_CLASS (o)) static void impl_sync_state_placeholder (BonoboUISync *sync, BonoboUINode *node, BonoboUINode *cmd_node, GtkWidget *widget, GtkWidget *parent) { gboolean show = FALSE; char *txt; if ((txt = bonobo_ui_engine_get_attr ( node, cmd_node, "delimit"))) { show = !strcmp (txt, "top"); bonobo_ui_node_free_string (txt); } if (show) gtk_widget_show (widget); else gtk_widget_hide (widget); } static void class_init (BonoboUISyncClass *sync_class) { sync_class->sync_state_placeholder = impl_sync_state_placeholder; } /** * bonobo_ui_sync_get_type: * @void: * * Synchronizer type function for derivation. * * Return value: the GType index. **/ GType bonobo_ui_sync_get_type (void) { static GType type = 0; if (type == 0) { GTypeInfo info = { sizeof (BonoboUISyncClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) class_init, NULL, /* class_finalize */ NULL, /* class_data */ sizeof (BonoboUISync), 0, /* n_preallocs */ (GInstanceInitFunc) NULL }; type = g_type_register_static (PARENT_TYPE, "BonoboUISync", &info, 0); } return type; } /** * bonobo_ui_sync_construct: * @sync: the synchronizer * @engine: the associated engine * @is_recursive: whether it deals with its children recursively * @has_widgets: whether it has associated widgets. * * Used to construct a new synchronizer object * * Return value: the new object. **/ BonoboUISync * bonobo_ui_sync_construct (BonoboUISync *sync, BonoboUIEngine *engine, gboolean is_recursive, gboolean has_widgets) { g_return_val_if_fail (BONOBO_IS_UI_SYNC (sync), NULL); sync->engine = engine; sync->is_recursive = is_recursive; sync->has_widgets = has_widgets; return sync; } /** * bonobo_ui_sync_is_recursive: * @sync: the synchronizer * * Return value: whether this deals with its children recursively **/ gboolean bonobo_ui_sync_is_recursive (BonoboUISync *sync) { g_return_val_if_fail (BONOBO_IS_UI_SYNC (sync), FALSE); return sync->is_recursive; } /** * bonobo_ui_sync_has_widgets: * @sync: the synchronizer * * Return value: whether this deals with widgets **/ gboolean bonobo_ui_sync_has_widgets (BonoboUISync *sync) { g_return_val_if_fail (BONOBO_IS_UI_SYNC (sync), FALSE); return sync->has_widgets; } /** * bonobo_ui_sync_state: * @sync: the synchronizer * @node: the node * @cmd_node: the associated command node * @widget: the widget * @parent: the parent of @node * * This method is used to synchronize the state of a @node * with that of a @widget, by ensuring the pertainant * attributes are reflected in the widget view. **/ void bonobo_ui_sync_state (BonoboUISync *sync, BonoboUINode *node, BonoboUINode *cmd_node, GtkWidget *widget, GtkWidget *parent) { g_return_if_fail (BONOBO_IS_UI_SYNC (sync)); CLASS (sync)->sync_state (sync, node, cmd_node, widget, parent); } /** * bonobo_ui_sync_state_placeholder: * @sync: the synchronizer * @node: the node * @cmd_node: the associated command node * @widget: the widget * @parent: the parent of @node * * This synchronizes the state of a placeholder, there is * a default implementation for this method. **/ void bonobo_ui_sync_state_placeholder (BonoboUISync *sync, BonoboUINode *node, BonoboUINode *cmd_node, GtkWidget *widget, GtkWidget *parent) { g_return_if_fail (BONOBO_IS_UI_SYNC (sync)); CLASS (sync)->sync_state_placeholder (sync, node, cmd_node, widget, parent); } /** * bonobo_ui_sync_build: * @sync: the synchronizer * @node: the node * @cmd_node: the associated command node * @pos: the position in the parent container to insert at * @parent: the parent of @node * * This function causes a child widget to be build that matches * @node's attributes. This should then be inserted by into * @parent's associated widget at position @pos in the container. * * Return value: the freshly built widget. **/ GtkWidget * bonobo_ui_sync_build (BonoboUISync *sync, BonoboUINode *node, BonoboUINode *cmd_node, int *pos, GtkWidget *parent) { g_return_val_if_fail (BONOBO_IS_UI_SYNC (sync), NULL); return CLASS (sync)->build (sync, node, cmd_node, pos, parent); } /** * bonobo_ui_sync_build_placeholder: * @sync: the synchronizer * @node: the node * @cmd_node: the associated command node * @pos: position in the parent to insert the built widget * @parent: the parent of @node * * As for #bonobo_ui_sync_build but for placeholders * * Return value: the freshly built widget. **/ GtkWidget * bonobo_ui_sync_build_placeholder (BonoboUISync *sync, BonoboUINode *node, BonoboUINode *cmd_node, int *pos, GtkWidget *parent) { g_return_val_if_fail (BONOBO_IS_UI_SYNC (sync), NULL); return CLASS (sync)->build_placeholder ( sync, node, cmd_node, pos, parent); } /** * bonobo_ui_sync_get_widgets: * @sync: the synchronizer * @node: the node * * This method is used to obtain a sensibly ordered list * of child widgets of the container associated with @node. * Essentialy this does something like gtk_container_children * but preserving the visible order of the widgets in the list. * * Return value: An ordered list of child widgets of @node **/ GList * bonobo_ui_sync_get_widgets (BonoboUISync *sync, BonoboUINode *node) { g_return_val_if_fail (BONOBO_IS_UI_SYNC (sync), NULL); if (CLASS (sync)->get_widgets) return CLASS (sync)->get_widgets (sync, node); else return NULL; } /** * bonobo_ui_sync_state_update: * @sync: the synchronizer * @widget: the widget * @new_state: the new state * * This is used to synchronize state with a stateful widget, * eg. when a "state" attribute is set, this is not reflected * in the normal 'state-sync' process, but occurs later with * a set of state_updates to avoid re-enterancy problems. **/ void bonobo_ui_sync_state_update (BonoboUISync *sync, GtkWidget *widget, const char *new_state) { g_return_if_fail (BONOBO_IS_UI_SYNC (sync)); CLASS (sync)->state_update (sync, widget, new_state); } /** * bonobo_ui_sync_remove_root: * @sync: the synchronizer * @root: the toplevel node to be removed. * * This is called when a 'root' or toplevel node is * removed that this synchronizer deals with. eg. in * the toolbar case, this might trigger hiding an * associated dock item. **/ void bonobo_ui_sync_remove_root (BonoboUISync *sync, BonoboUINode *root) { g_return_if_fail (BONOBO_IS_UI_SYNC (sync)); if (CLASS (sync)->remove_root) CLASS (sync)->remove_root (sync, root); } /** * bonobo_ui_sync_update_root: * @sync: the synchronizer * @root: the toplevel node * * This flags the fact that a toplevel node has changed * and is used primarily by non-recursive handlers, such * as the keybinding sync method. **/ void bonobo_ui_sync_update_root (BonoboUISync *sync, BonoboUINode *root) { g_return_if_fail (BONOBO_IS_UI_SYNC (sync)); if (CLASS (sync)->update_root) CLASS (sync)->update_root (sync, root); } /** * bonobo_ui_sync_ignore_widget: * @sync: the synchronizer * @widget: the widget * * Return value: TRUE if this widget should be ignored in a container * this is the case for eg. menu tearoffs items, and toolbar popout items. **/ gboolean bonobo_ui_sync_ignore_widget (BonoboUISync *sync, GtkWidget *widget) { g_return_val_if_fail (BONOBO_IS_UI_SYNC (sync), FALSE); if (CLASS (sync)->ignore_widget) return CLASS (sync)->ignore_widget (sync, widget); else return FALSE; } /** * bonobo_ui_sync_stamp_root: * @sync: the synchronizer * * This asks the synchronizer to stamp all its associated * root widget containers into the XML tree. **/ void bonobo_ui_sync_stamp_root (BonoboUISync *sync) { g_return_if_fail (BONOBO_IS_UI_SYNC (sync)); if (CLASS (sync)->stamp_root) CLASS (sync)->stamp_root (sync); } /** * bonobo_ui_sync_can_handle: * @sync: the synchronizer * @node: the node * * This is used to determine which, of multiple synchronizers * can be used to deal with a specific node type. Each synchronizer * deals with different types of node. * * Return value: TRUE if the synchronizer can deal with this node type **/ gboolean bonobo_ui_sync_can_handle (BonoboUISync *sync, BonoboUINode *node) { if (CLASS (sync)->can_handle) return CLASS (sync)->can_handle (sync, node); else return FALSE; } /** * bonobo_ui_sync_get_attached: * @sync: the synchronizer * @widget: the widget * @node: the node * * This is used to get an 'attached' widget - some * widgets have associated widgets that are coupled * in strange ways - eg. GtkMenuItem <-> GtkMenuShell * It is neccessary to store the GtkContainer item of * these couples in the XML tree, since then we can * do things more genericaly and cleanly. * * Return value: an associated widget or NULL if none exists. **/ GtkWidget * bonobo_ui_sync_get_attached (BonoboUISync *sync, GtkWidget *widget, BonoboUINode *node) { /* * For some widgets such as menus, the submenu widget * is attached to the actual container in a strange way * this works around only having single inheritance. */ g_return_val_if_fail (BONOBO_IS_UI_SYNC (sync), NULL); if (CLASS (sync)->get_attached) return CLASS (sync)->get_attached (sync, widget, node); else return NULL; } /** * bonobo_ui_sync_do_show_hide: * @sync: the synchronizer * @node: the node * @cmd_node: the associated command node * @widget: the widget * * This is a helper function that applies the hidden attribute * from either the @node or fallback to the @cmd_node to the * @widget. * * Return value: TRUE if the widget's hidden / shown state changed, * this is needed to work around some nasty dock sizing bugs. **/ gboolean bonobo_ui_sync_do_show_hide (BonoboUISync *sync, BonoboUINode *node, BonoboUINode *cmd_node, GtkWidget *widget) { char *txt; gboolean changed; GtkWidget *attached; if (sync && (attached = bonobo_ui_sync_get_attached ( sync, widget, node))) widget = attached; if (!widget) return FALSE; if ((txt = bonobo_ui_engine_get_attr (node, cmd_node, "hidden"))) { if (atoi (txt)) { changed = GTK_WIDGET_VISIBLE (widget); gtk_widget_hide (widget); } else { changed = !GTK_WIDGET_VISIBLE (widget); gtk_widget_show (widget); } bonobo_ui_node_free_string (txt); } else { changed = !GTK_WIDGET_VISIBLE (widget); gtk_widget_show (widget); } return changed; } GtkWidget * bonobo_ui_sync_wrap_widget (BonoboUISync *sync, GtkWidget *custom_widget) { g_return_val_if_fail (BONOBO_IS_UI_SYNC (sync), NULL); if (CLASS (sync)->wrap_widget) return CLASS (sync)->wrap_widget (sync, custom_widget); else return custom_widget; } libbonoboui-2.24.5/bonobo/bonobo-selector.h0000644000076400007640000000414211173072741015567 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ /** * bonobo-selector.h: Bonobo Component Selector * * Authors: * Richard Hestilow (hestgray@ionet.net) * Miguel de Icaza (miguel@kernel.org) * Martin Baulig (martin@ * Anders Carlsson (andersca@gnu.org) * Havoc Pennington (hp@redhat.com) * Dietmar Maurer (dietmar@maurer-it.com) * * Copyright 1999, 2000 Richard Hestilow, Helix Code, Inc, * Martin Baulig, Anders Carlsson, * Havoc Pennigton, Dietmar Maurer */ #ifndef __BONOBO_SELECTOR_H__ #define __BONOBO_SELECTOR_H__ #include G_BEGIN_DECLS #define BONOBO_TYPE_SELECTOR (bonobo_selector_get_type ()) #define BONOBO_SELECTOR(obj) G_TYPE_CHECK_INSTANCE_CAST(obj, bonobo_selector_get_type (), BonoboSelector) #define BONOBO_SELECTOR_CLASS(klass) G_TYPE_CHECK_CLASS_CAST (klass, bonobo_selector_get_type (), BonoboSelectorClass) #define BONOBO_IS_SELECTOR(obj) G_TYPE_CHECK_INSTANCE_TYPE (obj, bonobo_selector_get_type ()) typedef struct _BonoboSelectorPrivate BonoboSelectorPrivate; typedef struct _BonoboSelector BonoboSelector; struct _BonoboSelector { GtkDialog dialog; BonoboSelectorPrivate *priv; }; typedef struct { GtkDialogClass parent_class; void (* ok) (BonoboSelector *sel); void (* cancel) (BonoboSelector *sel); gpointer dummy[2]; } BonoboSelectorClass; GType bonobo_selector_get_type (void) G_GNUC_CONST; GtkWidget *bonobo_selector_construct (BonoboSelector *sel, const gchar *title, BonoboSelectorWidget *selector); GtkWidget *bonobo_selector_new (const gchar *title, const gchar **interfaces_required); gchar *bonobo_selector_get_selected_id (BonoboSelector *sel); gchar *bonobo_selector_get_selected_name (BonoboSelector *sel); gchar *bonobo_selector_get_selected_description (BonoboSelector *sel); gchar *bonobo_selector_select_id (const gchar *title, const gchar **interfaces_required); G_END_DECLS #endif /* __BONOBO_SELECTOR_H__ */ libbonoboui-2.24.5/bonobo/bonobo-dock-item-grip.h0000644000076400007640000000260711173072741016566 00000000000000/* -*- Mode: C; indent-tabs-mode: t; c-basic-offset: 8; tab-width: 8 -*- */ /** * bonobo-dock-item-grip.h * * Author: * Michael Meeks * * Copyright (C) 2002 Sun Microsystems, Inc. */ #ifndef _BONOBO_DOCK_ITEM_GRIP_H_ #define _BONOBO_DOCK_ITEM_GRIP_H_ #include #include G_BEGIN_DECLS #define BONOBO_TYPE_DOCK_ITEM_GRIP (bonobo_dock_item_grip_get_type()) #define BONOBO_DOCK_ITEM_GRIP(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BONOBO_TYPE_DOCK_ITEM_GRIP, BonoboDockItemGrip)) #define BONOBO_DOCK_ITEM_GRIP_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), BONOBO_TYPE_DOCK_ITEM_GRIP, BonoboDockItemGripClass)) #define BONOBO_IS_DOCK_ITEM_GRIP(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BONOBO_TYPE_DOCK_ITEM_GRIP)) #define BONOBO_IS_DOCK_ITEM_GRIP_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), BONOBO_TYPE_DOCK_ITEM_GRIP)) #define BONOBO_DOCK_ITEM_GRIP_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), BONOBO_TYPE_DOCK_ITEM_GRIP, BonoboDockItemGripClass)) typedef struct { GtkWidget parent; BonoboDockItem *item; } BonoboDockItemGrip; typedef struct { GtkWidgetClass parent_class; void (*activate) (BonoboDockItemGrip *grip); } BonoboDockItemGripClass; GType bonobo_dock_item_grip_get_type (void); GtkWidget *bonobo_dock_item_grip_new (BonoboDockItem *item); G_END_DECLS #endif /* _BONOBO_DOCK_ITEM_GRIP_H_ */ libbonoboui-2.24.5/bonobo/bonobo-ui-main.h0000644000076400007640000000263711173072741015315 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ /** * bonobo-main.h: Bonobo Main * * Author: * Miguel de Icaza (miguel@gnu.org) * Nat Friedman (nat@nat.org) * Peter Wainwright (prw@wainpr.demo.co.uk) * * Copyright 1999 Helix Code, Inc. */ #ifndef __BONOBO_UI_MAIN_H__ #define __BONOBO_UI_MAIN_H__ 1 #include #include G_BEGIN_DECLS #define LIBBONOBOUI_MODULE libbonobo_ui_module_info_get() const GnomeModuleInfo * libbonobo_ui_module_info_get (void) G_GNUC_CONST; #define BONOBO_UI_GTK_MODULE bonobo_ui_gtk_module_info_get() const GnomeModuleInfo * bonobo_ui_gtk_module_info_get (void) G_GNUC_CONST; gboolean bonobo_ui_is_initialized (void); gboolean bonobo_ui_init (const gchar *app_name, const gchar *app_version, int *argc, char **argv); void bonobo_ui_main (void); gboolean bonobo_ui_init_full (const gchar *app_name, const gchar *app_version, int *argc, char **argv, CORBA_ORB orb, PortableServer_POA poa, PortableServer_POAManager manager, gboolean full_init); void bonobo_setup_x_error_handler (void); /* internal */ int bonobo_ui_debug_shutdown (void); G_END_DECLS #endif /* __BONOBO_UI_MAIN_H__ */ libbonoboui-2.24.5/bonobo/bonobo-ui-component.c0000644000076400007640000011514211173072741016362 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ /** * gnome-component-ui.c: Client UI signal multiplexer and verb repository. * * Author: * Michael Meeks (michael@ximian.com) * * Copyright 1999, 2001 Ximian, Inc. */ #include #include #include #include #include #include #include #include #include #include #include #include #include #define PARENT_TYPE BONOBO_TYPE_OBJECT static GObjectClass *bonobo_ui_component_parent_class; enum { EXEC_VERB, UI_EVENT, LAST_SIGNAL }; static guint signals[LAST_SIGNAL] = { 0 }; #define GET_CLASS(c) (BONOBO_UI_COMPONENT_CLASS (G_OBJECT_GET_CLASS (c))) typedef struct { char *id; GClosure *closure; } UIListener; typedef struct { char *cname; GClosure *closure; } UIVerb; struct _BonoboUIComponentPrivate { GHashTable *verbs; GHashTable *listeners; char *name; Bonobo_UIContainer container; int frozenness; }; static inline BonoboUIComponent * bonobo_ui_from_servant (PortableServer_Servant servant) { return BONOBO_UI_COMPONENT (bonobo_object_from_servant (servant)); } static gboolean verb_destroy (gpointer dummy, UIVerb *verb, gpointer dummy2) { if (verb) { if (verb->closure) g_closure_unref (verb->closure); verb->closure = NULL; g_free (verb->cname); g_free (verb); } return TRUE; } static gboolean listener_destroy (gpointer dummy, UIListener *l, gpointer dummy2) { if (l) { if (l->closure) g_closure_unref (l->closure); l->closure = NULL; g_free (l->id); g_free (l); } return TRUE; } static void ui_event (BonoboUIComponent *component, const char *id, Bonobo_UIComponent_EventType type, const char *state) { UIListener *list; list = g_hash_table_lookup (component->priv->listeners, id); if (list && list->closure) bonobo_closure_invoke ( list->closure, G_TYPE_NONE, BONOBO_TYPE_UI_COMPONENT, component, G_TYPE_STRING, id, G_TYPE_INT, type, G_TYPE_STRING, state, G_TYPE_INVALID); } static void impl_Bonobo_UIComponent_setContainer (PortableServer_Servant servant, const Bonobo_UIContainer container, CORBA_Environment *ev) { BonoboUIComponent *component = bonobo_ui_from_servant (servant); bonobo_ui_component_set_container (component, container, ev); } static void impl_Bonobo_UIComponent_unsetContainer (PortableServer_Servant servant, CORBA_Environment *ev) { BonoboUIComponent *component = bonobo_ui_from_servant (servant); bonobo_ui_component_unset_container (component, ev); } static CORBA_string impl_Bonobo_UIComponent__get_name (PortableServer_Servant servant, CORBA_Environment *ev) { return CORBA_string_dup (""); } static CORBA_char * impl_Bonobo_UIComponent_describeVerbs (PortableServer_Servant servant, CORBA_Environment *ev) { g_warning ("FIXME: Describe verbs unimplemented"); return CORBA_string_dup (""); } static void impl_Bonobo_UIComponent_execVerb (PortableServer_Servant servant, const CORBA_char *cname, CORBA_Environment *ev) { BonoboUIComponent *component; UIVerb *verb; component = bonobo_ui_from_servant (servant); bonobo_object_ref (BONOBO_OBJECT (component)); /* g_warning ("TESTME: Exec verb '%s'", cname);*/ verb = g_hash_table_lookup (component->priv->verbs, cname); if (verb && verb->closure) /* We need a funny arg order here - so for our C closure we do odd things ! */ bonobo_closure_invoke ( verb->closure, G_TYPE_NONE, BONOBO_TYPE_UI_COMPONENT, component, G_TYPE_STRING, cname, G_TYPE_INVALID); else g_warning ("FIXME: verb '%s' not found, emit exception", cname); g_signal_emit (component, signals [EXEC_VERB], 0, cname); bonobo_object_unref (BONOBO_OBJECT (component)); } static void impl_Bonobo_UIComponent_uiEvent (PortableServer_Servant servant, const CORBA_char *id, const Bonobo_UIComponent_EventType type, const CORBA_char *state, CORBA_Environment *ev) { BonoboUIComponent *component; component = bonobo_ui_from_servant (servant); /* g_warning ("TESTME: Event '%s' '%d' '%s'\n", path, type, state);*/ bonobo_object_ref (BONOBO_OBJECT (component)); g_signal_emit (component, signals [UI_EVENT], 0, id, type, state); bonobo_object_unref (BONOBO_OBJECT (component)); } static void marshal_VOID__USER_DATA_STRING (GClosure *closure, GValue *return_value, guint n_param_values, const GValue *param_values, gpointer invocation_hint, gpointer marshal_data) { typedef void (*marshal_func_VOID__USER_DATA_STRING_t) (gpointer data1, gpointer data2, gpointer arg_1); register marshal_func_VOID__USER_DATA_STRING_t callback; register GCClosure *cc = (GCClosure*) closure; register gpointer data1, data2; g_return_if_fail (n_param_values == 2); if (G_CCLOSURE_SWAP_DATA (closure)) { data1 = closure->data; data2 = g_value_peek_pointer (param_values + 0); } else { data1 = g_value_peek_pointer (param_values + 0); data2 = closure->data; } callback = (marshal_func_VOID__USER_DATA_STRING_t) ( marshal_data ? marshal_data : cc->callback); callback (data1, data2, (char*) g_value_get_string (param_values + 1)); } /** * bonobo_ui_component_add_verb_full: * @component: the component to add it to * @cname: the programmatic name of the verb * @fn: the callback function for invoking it * @user_data: the associated user data for the callback * @destroy_fn: a destroy function for the callback data * * Add a verb to the UI component, that can be invoked by * the container. **/ void bonobo_ui_component_add_verb_full (BonoboUIComponent *component, const char *cname, GClosure *closure) { UIVerb *verb; BonoboUIComponentPrivate *priv; g_return_if_fail (cname != NULL); g_return_if_fail (BONOBO_IS_UI_COMPONENT (component)); priv = component->priv; if ((verb = g_hash_table_lookup (priv->verbs, cname))) { g_hash_table_remove (priv->verbs, cname); verb_destroy (NULL, verb, NULL); } verb = g_new (UIVerb, 1); verb->cname = g_strdup (cname); verb->closure = bonobo_closure_store (closure, marshal_VOID__USER_DATA_STRING); /* verb->cb (component, verb->user_data, cname); */ g_hash_table_insert (priv->verbs, verb->cname, verb); } /** * bonobo_ui_component_add_verb: * @component: the component to add it to * @cname: the programmatic name of the verb * @fn: the callback function for invoking it * @user_data: the associated user data for the callback * * Add a verb to the UI component, that can be invoked by * the container. **/ void bonobo_ui_component_add_verb (BonoboUIComponent *component, const char *cname, BonoboUIVerbFn fn, gpointer user_data) { bonobo_ui_component_add_verb_full ( component, cname, g_cclosure_new ( G_CALLBACK (fn), user_data, NULL)); } typedef struct { gboolean by_name; const char *name; gboolean by_closure; GClosure *closure; } RemoveInfo; static gboolean remove_verb (gpointer key, gpointer value, gpointer user_data) { RemoveInfo *info = user_data; UIVerb *verb = value; if (info->by_name && info->name && !strcmp (verb->cname, info->name)) return verb_destroy (NULL, verb, NULL); else if (info->by_closure && info->closure == verb->closure) return verb_destroy (NULL, verb, NULL); return FALSE; } /** * bonobo_ui_component_remove_verb: * @component: the component to add it to * @cname: the programmatic name of the verb * * Remove a verb by it's unique name **/ void bonobo_ui_component_remove_verb (BonoboUIComponent *component, const char *cname) { RemoveInfo info; memset (&info, 0, sizeof (info)); info.by_name = TRUE; info.name = cname; g_hash_table_foreach_remove (component->priv->verbs, remove_verb, &info); } /** * bonobo_ui_component_remove_verb_by_closure: * @component: the component to add it to * @fn: the function pointer * * remove any verb handled by @fn. **/ void bonobo_ui_component_remove_verb_by_closure (BonoboUIComponent *component, GClosure *closure) { RemoveInfo info; memset (&info, 0, sizeof (info)); info.by_closure = TRUE; info.closure = closure; g_hash_table_foreach_remove (component->priv->verbs, remove_verb, &info); } /** * bonobo_ui_component_add_listener_full: * @component: the component to add it to * @id: the programmatic name of the id * @fn: the callback function for invoking it * @user_data: the associated user data for the callback * @destroy_fn: a destroy function for the callback data * * Add a listener for stateful events. **/ void bonobo_ui_component_add_listener_full (BonoboUIComponent *component, const char *id, GClosure *closure) { UIListener *list; BonoboUIComponentPrivate *priv; g_return_if_fail (closure != NULL); g_return_if_fail (BONOBO_IS_UI_COMPONENT (component)); priv = component->priv; if ((list = g_hash_table_lookup (priv->listeners, id))) { g_hash_table_remove (priv->listeners, id); listener_destroy (NULL, list, NULL); } list = g_new (UIListener, 1); list->id = g_strdup (id); list->closure = bonobo_closure_store (closure, bonobo_ui_marshal_VOID__STRING_INT_STRING); g_hash_table_insert (priv->listeners, list->id, list); } /** * bonobo_ui_component_add_listener: * @component: the component to add it to * @id: the programmatic name of the id * @fn: the callback function for invoking it * @user_data: the associated user data for the callback * * Add a listener for stateful events. **/ void bonobo_ui_component_add_listener (BonoboUIComponent *component, const char *id, BonoboUIListenerFn fn, gpointer user_data) { bonobo_ui_component_add_listener_full ( component, id, g_cclosure_new (G_CALLBACK (fn), user_data, NULL)); } static gboolean remove_listener (gpointer key, gpointer value, gpointer user_data) { RemoveInfo *info = user_data; UIListener *listener = value; if (info->by_name && info->name && !strcmp (listener->id, info->name)) return listener_destroy (NULL, listener, NULL); else if (info->by_closure && info->closure == listener->closure) return listener_destroy (NULL, listener, NULL); return FALSE; } /** * bonobo_ui_component_remove_listener: * @component: the component to add it to * @cname: the programmatic name of the id * * Remove any listener by its unique id **/ void bonobo_ui_component_remove_listener (BonoboUIComponent *component, const char *cname) { RemoveInfo info; memset (&info, 0, sizeof (info)); info.by_name = TRUE; info.name = cname; g_hash_table_foreach_remove (component->priv->listeners, remove_listener, &info); } /** * bonobo_ui_component_remove_by_closure: * @component: the component to add it to * @fn: the function pointer * * Remove any listener with associated function @fn **/ void bonobo_ui_component_remove_listener_by_closure (BonoboUIComponent *component, GClosure *closure) { RemoveInfo info; memset (&info, 0, sizeof (info)); info.by_closure = TRUE; info.closure = closure; g_hash_table_foreach_remove (component->priv->listeners, remove_listener, &info); } static void bonobo_ui_component_finalize (GObject *object) { BonoboUIComponent *comp = (BonoboUIComponent *) object; BonoboUIComponentPrivate *priv = comp->priv; if (priv) { g_hash_table_foreach_remove ( priv->verbs, (GHRFunc) verb_destroy, NULL); g_hash_table_destroy (priv->verbs); priv->verbs = NULL; g_hash_table_foreach_remove ( priv->listeners, (GHRFunc) listener_destroy, NULL); g_hash_table_destroy (priv->listeners); priv->listeners = NULL; g_free (priv->name); g_free (priv); } comp->priv = NULL; bonobo_ui_component_parent_class->finalize (object); } /** * bonobo_ui_component_construct: * @ui_component: the UI component itself * @name: the name of the UI component * * Construct the UI component with name @name * * Return value: a constructed UI component or NULL on error **/ BonoboUIComponent * bonobo_ui_component_construct (BonoboUIComponent *ui_component, const char *name) { g_return_val_if_fail (BONOBO_IS_UI_COMPONENT (ui_component), NULL); ui_component->priv->name = g_strdup (name); return ui_component; } /** * bonobo_ui_component_new: * @name: the name of the UI component * * Create a new UI component with the specified name * * Return value: a new UI component **/ BonoboUIComponent * bonobo_ui_component_new (const char *name) { BonoboUIComponent *component; component = g_object_new (BONOBO_TYPE_UI_COMPONENT, NULL); if (!component) return NULL; return BONOBO_UI_COMPONENT ( bonobo_ui_component_construct ( component, name)); } /** * bonobo_ui_component_new_default: * @void: * * Create a UI component with a unique default name * constructed from various available system properties. * * Return value: a new UI component **/ BonoboUIComponent * bonobo_ui_component_new_default (void) { char *name; BonoboUIComponent *component; static int idx = 0; static int pid = 0; if (!pid) pid = getpid (); name = g_strdup_printf ("%d-%d", pid, idx++); component = bonobo_ui_component_new (name); g_free (name); return component; } /** * bonobo_ui_component_set_name: * @component: the UI component * @name: the new name * * Set the @name of the UI @component **/ void bonobo_ui_component_set_name (BonoboUIComponent *component, const char *name) { g_return_if_fail (name != NULL); g_return_if_fail (BONOBO_IS_UI_COMPONENT (component)); g_free (component->priv->name); component->priv->name = g_strdup (name); } /** * bonobo_ui_component_get_name: * @component: the UI component * * Return value: the name of the UI @component **/ const char * bonobo_ui_component_get_name (BonoboUIComponent *component) { g_return_val_if_fail (BONOBO_IS_UI_COMPONENT (component), NULL); return component->priv->name; } /** * bonobo_ui_component_set: * @component: the component * @path: the path to set * @xml: the xml to set * @opt_ev: the (optional) CORBA exception environment * * Set the @xml fragment into the remote #BonoboUIContainer's tree * attached to @component at the specified @path * * If you see blank menu items ( or just separators ) it's * likely that you should be using #bonobo_ui_component_set_translate * which substantialy deprecates this routine. **/ void bonobo_ui_component_set (BonoboUIComponent *component, const char *path, const char *xml, CORBA_Environment *opt_ev) { g_return_if_fail (BONOBO_IS_UI_COMPONENT (component)); GET_CLASS (component)->xml_set (component, path, xml, opt_ev); } static void impl_xml_set (BonoboUIComponent *component, const char *path, const char *xml, CORBA_Environment *ev) { CORBA_Environment *real_ev, tmp_ev; Bonobo_UIContainer container; char *name; container = component->priv->container; g_return_if_fail (container != CORBA_OBJECT_NIL); if (xml [0] == '\0') return; if (ev) real_ev = ev; else { CORBA_exception_init (&tmp_ev); real_ev = &tmp_ev; } name = component->priv->name ? component->priv->name : ""; /* fprintf (stderr, "setNode ( '%s', '%s', '%s' )", path, xml, name); */ Bonobo_UIContainer_setNode (container, path, xml, name, real_ev); if (BONOBO_EX (real_ev) && !ev) g_warning ("Serious exception on node_set '$%s' of '%s' to '%s'", bonobo_exception_get_text (real_ev), xml, path); if (!ev) CORBA_exception_free (&tmp_ev); } /** * bonobo_ui_component_set_tree: * @component: the component * @path: the path to set * @node: the #BonoboUINode representation of an xml tree to set * @ev: the (optional) CORBA exception environment * * Set the @xml fragment into the remote #BonoboUIContainer's tree * attached to @component at the specified @path * **/ void bonobo_ui_component_set_tree (BonoboUIComponent *component, const char *path, BonoboUINode *node, CORBA_Environment *ev) { char *str; str = bonobo_ui_node_to_string (node, TRUE); /* fprintf (stderr, "Merging '%s'\n", str); */ bonobo_ui_component_set ( component, path, str, ev); g_free (str); } /** * bonobo_ui_component_set_translate: * @component: the component * @path: the path to set * @xml: the non translated xml to set * @opt_ev: the (optional) CORBA exception environment * * This routine parses the XML strings, and converts any: * _label="Hello World" type strings into the translated, * and encoded format expected by the remote #BonoboUIContainer. **/ void bonobo_ui_component_set_translate (BonoboUIComponent *component, const char *path, const char *xml, CORBA_Environment *opt_ev) { BonoboUINode *node; if (!xml) return; node = bonobo_ui_node_from_string (xml); g_return_if_fail (node != NULL); bonobo_ui_util_translate_ui (node); bonobo_ui_component_set_tree (component, path, node, opt_ev); bonobo_ui_node_free (node); } /** * bonobo_ui_component_get: * @component: the component * @path: the path to get * @recurse: whether to get child nodes of @path * @opt_ev: the (optional) CORBA exception environment * * This routine fetches a chunk of the XML tree in the * #BonoboUIContainer associated with @component pointed * to by @path. If @recurse then the child nodes of @path * are returned too, otherwise they are not. * * Return value: an XML string (CORBA allocated) **/ CORBA_char * bonobo_ui_component_get (BonoboUIComponent *component, const char *path, gboolean recurse, CORBA_Environment *opt_ev) { g_return_val_if_fail (BONOBO_IS_UI_COMPONENT (component), NULL); return GET_CLASS (component)->xml_get (component, path, recurse, opt_ev); } static CORBA_char * impl_xml_get (BonoboUIComponent *component, const char *path, gboolean recurse, CORBA_Environment *ev) { CORBA_Environment *real_ev, tmp_ev; CORBA_char *xml; Bonobo_UIContainer container; container = component->priv->container; g_return_val_if_fail (container != CORBA_OBJECT_NIL, NULL); if (ev) real_ev = ev; else { CORBA_exception_init (&tmp_ev); real_ev = &tmp_ev; } xml = Bonobo_UIContainer_getNode (container, path, !recurse, real_ev); if (BONOBO_EX (real_ev)) { if (!ev) g_warning ("Serious exception getting node '%s' '$%s'", path, bonobo_exception_get_text (real_ev)); if (!ev) CORBA_exception_free (&tmp_ev); return NULL; } if (!ev) CORBA_exception_free (&tmp_ev); return xml; } /** * bonobo_ui_component_get_tree: * @component: the component * @path: the path to get * @recurse: whether to get child nodes of @path * @opt_ev: the (optional) CORBA exception environment * * This routine fetches a chunk of the XML tree in the * #BonoboUIContainer associated with @component pointed * to by @path. If @recurse then the child nodes of @path * are returned too, otherwise they are not. * * Return value: an #BonoboUINode XML representation **/ BonoboUINode * bonobo_ui_component_get_tree (BonoboUIComponent *component, const char *path, gboolean recurse, CORBA_Environment *opt_ev) { char *xml; BonoboUINode *node; xml = bonobo_ui_component_get (component, path, recurse, opt_ev); if (!xml) return NULL; node = bonobo_ui_node_from_string (xml); CORBA_free (xml); if (!node) return NULL; return node; } /** * bonobo_ui_component_rm: * @component: the component * @path: the path to set * @ev: the (optional) CORBA exception environment * * This routine removes a chunk of the XML tree in the * #BonoboUIContainer associated with @component pointed * to by @path. **/ void bonobo_ui_component_rm (BonoboUIComponent *component, const char *path, CORBA_Environment *ev) { g_return_if_fail (BONOBO_IS_UI_COMPONENT (component)); GET_CLASS (component)->xml_rm (component, path, ev); } static void impl_xml_rm (BonoboUIComponent *component, const char *path, CORBA_Environment *ev) { BonoboUIComponentPrivate *priv; CORBA_Environment *real_ev, tmp_ev; Bonobo_UIContainer container; container = component->priv->container; g_return_if_fail (container != CORBA_OBJECT_NIL); if (ev) real_ev = ev; else { CORBA_exception_init (&tmp_ev); real_ev = &tmp_ev; } priv = component->priv; Bonobo_UIContainer_removeNode ( container, path, priv->name, real_ev); if (!ev && BONOBO_EX (real_ev)) g_warning ("Serious exception removing path '%s' '%s'", path, bonobo_exception_get_text (real_ev)); if (!ev) CORBA_exception_free (&tmp_ev); } /** * bonobo_ui_component_object_set: * @component: the component * @path: the path to set * @control: a CORBA object reference * @opt_ev: the (optional) CORBA exception environment * * This registers the @control CORBA object into the * #BonoboUIContainer associated with this @component at * the specified @path. This is most often used to associate * controls with a certain path. **/ void bonobo_ui_component_object_set (BonoboUIComponent *component, const char *path, Bonobo_Unknown control, CORBA_Environment *opt_ev) { CORBA_Environment *real_ev, tmp_ev; Bonobo_UIContainer container; g_return_if_fail (BONOBO_IS_UI_COMPONENT (component)); container = component->priv->container; g_return_if_fail (container != CORBA_OBJECT_NIL); if (opt_ev) real_ev = opt_ev; else { CORBA_exception_init (&tmp_ev); real_ev = &tmp_ev; } Bonobo_UIContainer_setObject (container, path, control, real_ev); if (!opt_ev && BONOBO_EX (real_ev)) g_warning ("Serious exception setting object '%s' '%s'", path, bonobo_exception_get_text (real_ev)); if (!opt_ev) CORBA_exception_free (&tmp_ev); } void bonobo_ui_component_widget_set (BonoboUIComponent *component, const char *path, GtkWidget *widget, CORBA_Environment *opt_ev) { gpointer in_proc_servant; BonoboObject *in_proc_container; CORBA_Environment *real_ev, tmp_ev; Bonobo_UIContainer container; g_return_if_fail (widget != CORBA_OBJECT_NIL); g_return_if_fail (BONOBO_IS_UI_COMPONENT (component)); container = component->priv->container; g_return_if_fail (container != CORBA_OBJECT_NIL); if (opt_ev) real_ev = opt_ev; else { CORBA_exception_init (&tmp_ev); real_ev = &tmp_ev; } if ((in_proc_servant = ORBit_small_get_servant (container)) && (in_proc_container = bonobo_object (in_proc_servant)) && BONOBO_IS_UI_CONTAINER (in_proc_container)) { BonoboUIEngine *engine; engine = bonobo_ui_container_get_engine ( BONOBO_UI_CONTAINER (in_proc_container)); g_return_if_fail (engine != NULL); bonobo_ui_engine_widget_set (engine, path, widget); } else { BonoboControl *control = bonobo_control_new (widget); Bonobo_UIContainer_setObject ( container, path, BONOBO_OBJREF (control), real_ev); bonobo_object_unref (control); } if (!opt_ev && BONOBO_EX (real_ev)) g_warning ("Serious exception setting object '%s' '%s'", path, bonobo_exception_get_text (real_ev)); if (!opt_ev) CORBA_exception_free (&tmp_ev); } /** * bonobo_ui_component_object_get: * @component: the component * @path: the path to set * @ev: the (optional) CORBA exception environment * * This returns the @control CORBA object registered with the * #BonoboUIContainer associated with this @component at * the specified @path. * * Returns: the associated remote CORBA object. **/ Bonobo_Unknown bonobo_ui_component_object_get (BonoboUIComponent *component, const char *path, CORBA_Environment *ev) { CORBA_Environment *real_ev, tmp_ev; Bonobo_Unknown ret; Bonobo_UIContainer container; g_return_val_if_fail (BONOBO_IS_UI_COMPONENT (component), CORBA_OBJECT_NIL); container = component->priv->container; g_return_val_if_fail (container != CORBA_OBJECT_NIL, CORBA_OBJECT_NIL); if (ev) real_ev = ev; else { CORBA_exception_init (&tmp_ev); real_ev = &tmp_ev; } ret = Bonobo_UIContainer_getObject (container, path, real_ev); if (!ev && BONOBO_EX (real_ev)) g_warning ("Serious exception getting object '%s' '%s'", path, bonobo_exception_get_text (real_ev)); if (!ev) CORBA_exception_free (&tmp_ev); return ret; } /** * bonobo_ui_component_add_verb_list_with_data: * @component: the component * @list: the list of verbs * @user_data: the user data passed to the verb callbacks * * This is a helper function to save registering verbs individualy * it allows registration of a great batch of verbs at one time * in a list of #BonoboUIVerb terminated by #BONOBO_UI_VERB_END **/ void bonobo_ui_component_add_verb_list_with_data (BonoboUIComponent *component, const BonoboUIVerb *list, gpointer user_data) { const BonoboUIVerb *l; g_return_if_fail (list != NULL); g_return_if_fail (BONOBO_IS_UI_COMPONENT (component)); bonobo_object_ref (BONOBO_OBJECT (component)); for (l = list; l && l->cname; l++) { bonobo_ui_component_add_verb ( component, l->cname, l->cb, user_data ? user_data : l->user_data); } bonobo_object_unref (BONOBO_OBJECT (component)); } /** * bonobo_ui_component_add_verb_list: * @component: the component * @list: the list of verbs. * * Add a list of verbs with no associated user_data, you probably * want #bonobo_ui_component_add_verb_list_with_data **/ void bonobo_ui_component_add_verb_list (BonoboUIComponent *component, const BonoboUIVerb *list) { bonobo_ui_component_add_verb_list_with_data (component, list, NULL); } /** * bonobo_ui_component_freeze: * @component: the component * @ev: the (optional) CORBA exception environment * * This increments the freeze count on the associated * #BonoboUIContainer, (if not already frozen) this means that * a batch of update operations can be performed without a * re-render penalty per update. * * NB. if your GUI is frozen / not updating you probably have a * freeze / thaw reference leak/ **/ void bonobo_ui_component_freeze (BonoboUIComponent *component, CORBA_Environment *ev) { g_return_if_fail (BONOBO_IS_UI_COMPONENT (component)); GET_CLASS (component)->freeze (component, ev); } static void impl_freeze (BonoboUIComponent *component, CORBA_Environment *ev) { if (component->priv->frozenness == 0) { CORBA_Environment *real_ev, tmp_ev; Bonobo_UIContainer container; container = component->priv->container; g_return_if_fail (container != CORBA_OBJECT_NIL); if (ev) real_ev = ev; else { CORBA_exception_init (&tmp_ev); real_ev = &tmp_ev; } Bonobo_UIContainer_freeze (container, real_ev); if (BONOBO_EX (real_ev) && !ev) g_warning ("Serious exception on UI freeze '$%s'", bonobo_exception_get_text (real_ev)); if (!ev) CORBA_exception_free (&tmp_ev); } component->priv->frozenness++; } /** * bonobo_ui_component_thaw: * @component: the component * @ev: the (optional) CORBA exception environment * * This decrements the freeze count on the remote associated * #BonoboUIContainer, (if frozen). This means that a batch * of update operations can be performed without a re-render * penalty per update. * * NB. if your GUI is frozen / not updating you probably have a * freeze / thaw reference leak/ **/ void bonobo_ui_component_thaw (BonoboUIComponent *component, CORBA_Environment *ev) { g_return_if_fail (BONOBO_IS_UI_COMPONENT (component)); GET_CLASS (component)->thaw (component, ev); } static void impl_thaw (BonoboUIComponent *component, CORBA_Environment *ev) { component->priv->frozenness--; if (component->priv->frozenness == 0) { CORBA_Environment *real_ev, tmp_ev; Bonobo_UIContainer container; container = component->priv->container; g_return_if_fail (container != CORBA_OBJECT_NIL); if (ev) real_ev = ev; else { CORBA_exception_init (&tmp_ev); real_ev = &tmp_ev; } Bonobo_UIContainer_thaw (container, real_ev); if (BONOBO_EX (real_ev) && !ev) g_warning ("Serious exception on UI thaw '$%s'", bonobo_exception_get_text (real_ev)); if (!ev) CORBA_exception_free (&tmp_ev); } else if (component->priv->frozenness < 0) g_warning ("Freeze/thaw mismatch on '%s'", component->priv->name ? component->priv->name : ""); } /** * bonobo_ui_component_set_prop: * @component: the component * @path: the path to set the property on * @prop: the property name * @value: the property value * @opt_ev: the (optional) CORBA exception environment * * This helper function sets an XML property ( or attribute ) * on the XML node pointed at by @path. It does this by * a read / modify / write process. If you find yourself * doing this a lot, you need to consider batching this process. **/ void bonobo_ui_component_set_prop (BonoboUIComponent *component, const char *path, const char *prop, const char *value, CORBA_Environment *opt_ev) { g_return_if_fail (BONOBO_IS_UI_COMPONENT (component)); GET_CLASS (component)->set_prop (component, path, prop, value, opt_ev); } static void impl_set_prop (BonoboUIComponent *component, const char *path, const char *prop, const char *value, CORBA_Environment *opt_ev) { Bonobo_UIContainer container; CORBA_Environment *real_ev, tmp_ev; g_return_if_fail (path != NULL); g_return_if_fail (prop != NULL); g_return_if_fail (value != NULL); container = component->priv->container; g_return_if_fail (container != CORBA_OBJECT_NIL); if (opt_ev) real_ev = opt_ev; else { CORBA_exception_init (&tmp_ev); real_ev = &tmp_ev; } Bonobo_UIContainer_setAttr ( container, path, prop, value, component->priv->name, real_ev); if (!opt_ev) CORBA_exception_free (&tmp_ev); } /** * bonobo_ui_component_get_prop: * @component: the component * @path: the path to set the property on * @prop: the property name * @value: the property value * @opt_ev: the (optional) CORBA exception environment * * This helper function fetches an XML property ( or attribute ) * from the XML node pointed at by @path in the #BonoboUIContainer * associated with @component * * Return value: the xml property value or NULL - free with g_free. **/ gchar * bonobo_ui_component_get_prop (BonoboUIComponent *component, const char *path, const char *prop, CORBA_Environment *opt_ev) { g_return_val_if_fail (BONOBO_IS_UI_COMPONENT (component), NULL); return GET_CLASS (component)->get_prop (component, path, prop, opt_ev); } static gchar * impl_get_prop (BonoboUIComponent *component, const char *path, const char *prop, CORBA_Environment *opt_ev) { Bonobo_UIContainer container; CORBA_Environment *ev, tmp_ev; CORBA_char *ret; gchar *retval; g_return_val_if_fail (path != NULL, NULL); g_return_val_if_fail (prop != NULL, NULL); container = component->priv->container; g_return_val_if_fail (container != CORBA_OBJECT_NIL, NULL); if (opt_ev) ev = opt_ev; else { CORBA_exception_init (&tmp_ev); ev = &tmp_ev; } ret = Bonobo_UIContainer_getAttr ( container, path, prop, ev); if (BONOBO_EX (ev)) { if (!opt_ev && strcmp (BONOBO_EX_REPOID (ev), ex_Bonobo_UIContainer_NonExistentAttr)) g_warning ("Invalid path '%s' on prop '%s' get", path, prop); ret = NULL; } if (!opt_ev) CORBA_exception_free (&tmp_ev); if (ret) { retval = g_strdup (ret); CORBA_free (ret); } else retval = NULL; return retval; } /** * bonobo_ui_component_path_exists: * @component: the component * @path: the path to set the property on * @ev: the (optional) CORBA exception environment * * Return value: TRUE if the path exists in the container. **/ gboolean bonobo_ui_component_path_exists (BonoboUIComponent *component, const char *path, CORBA_Environment *ev) { g_return_val_if_fail (BONOBO_IS_UI_COMPONENT (component), FALSE); return GET_CLASS (component)->exists (component, path, ev); } static gboolean impl_exists (BonoboUIComponent *component, const char *path, CORBA_Environment *opt_ev) { gboolean ret; Bonobo_UIContainer container; CORBA_Environment *ev, tmp_ev; container = component->priv->container; g_return_val_if_fail (container != CORBA_OBJECT_NIL, FALSE); if (opt_ev) ev = opt_ev; else { CORBA_exception_init (&tmp_ev); ev = &tmp_ev; } ret = Bonobo_UIContainer_exists (container, path, ev); if (BONOBO_EX (ev)) { ret = FALSE; if (!opt_ev) g_warning ("Serious exception on path_exists '$%s'", bonobo_exception_get_text (ev)); } if (!opt_ev) CORBA_exception_free (&tmp_ev); return ret; } /** * bonobo_ui_component_set_status: * @component: the component * @text: the new status text * @ev: the (optional) CORBA exception environment * * This sets the contents of the status bar to @text in the * remote #BonoboUIContainer associated with @component. * This is done by setting the contents of the /status/main * node. **/ void bonobo_ui_component_set_status (BonoboUIComponent *component, const char *text, CORBA_Environment *opt_ev) { if (text == NULL || text [0] == '\0') { /* * FIXME: Remove what was there to reveal other msgs * NB. if we're using the same UI component as the view * was merged in with, this will result in us loosing our * status bar altogether - sub-optimal. */ bonobo_ui_component_rm (component, "/status/main", opt_ev); } else { char *str, *tmp; tmp = g_markup_escape_text (text, -1); str = g_strdup_printf ("%s", tmp); g_free (tmp); bonobo_ui_component_set (component, "/status", str, opt_ev); g_free (str); } } /** * bonobo_ui_component_unset_container: * @component: the component * * This dis-associates the @component from its associated * #BonoboUIContainer. **/ void bonobo_ui_component_unset_container (BonoboUIComponent *component, CORBA_Environment *opt_ev) { Bonobo_UIContainer container; g_return_if_fail (BONOBO_IS_UI_COMPONENT (component)); bonobo_object_ref (BONOBO_OBJECT (component)); container = component->priv->container; component->priv->container = CORBA_OBJECT_NIL; if (container != CORBA_OBJECT_NIL) { CORBA_Environment *ev, temp_ev; char *name; if (!opt_ev) { CORBA_exception_init (&temp_ev); ev = &temp_ev; } else ev = opt_ev; name = component->priv->name ? component->priv->name : ""; Bonobo_UIContainer_deregisterComponent (container, name, ev); if (!opt_ev && BONOBO_EX (ev)) { char *err; g_warning ("Serious exception deregistering component '%s'", (err = bonobo_exception_get_text (ev))); g_free (err); } CORBA_Object_release (container, ev); if (!opt_ev) CORBA_exception_free (&temp_ev); } bonobo_object_unref (BONOBO_OBJECT (component)); } /** * bonobo_ui_component_set_container: * @component: the component * @container: a remote container object. * * This associates this @component with a remote @container * object. **/ void bonobo_ui_component_set_container (BonoboUIComponent *component, Bonobo_UIContainer container, CORBA_Environment *opt_ev) { Bonobo_UIContainer ref_cont; g_return_if_fail (BONOBO_IS_UI_COMPONENT (component)); bonobo_object_ref (BONOBO_OBJECT (component)); if (container != CORBA_OBJECT_NIL) { Bonobo_UIComponent corba_component; CORBA_Environment *ev, temp_ev; char *name; if (!opt_ev) { CORBA_exception_init (&temp_ev); ev = &temp_ev; } else ev = opt_ev; ref_cont = CORBA_Object_duplicate (container, ev); corba_component = BONOBO_OBJREF (component); name = component->priv->name ? component->priv->name : ""; Bonobo_UIContainer_registerComponent ( ref_cont, name, corba_component, ev); if (!opt_ev && BONOBO_EX (ev)) { char *err; g_warning ("Serious exception registering component '%s'", (err = bonobo_exception_get_text (ev))); g_free (err); } if (!opt_ev) CORBA_exception_free (&temp_ev); } else ref_cont = CORBA_OBJECT_NIL; bonobo_ui_component_unset_container (component, NULL); component->priv->container = ref_cont; bonobo_object_unref (BONOBO_OBJECT (component)); } /** * bonobo_ui_component_get_container: * @component: the component. * * Return value: the associated remote container **/ Bonobo_UIContainer bonobo_ui_component_get_container (BonoboUIComponent *component) { g_return_val_if_fail (BONOBO_IS_UI_COMPONENT (component), CORBA_OBJECT_NIL); return component->priv->container; } static void bonobo_ui_component_class_init (BonoboUIComponentClass *klass) { GObjectClass *object_class = (GObjectClass *) klass; BonoboUIComponentClass *uclass = BONOBO_UI_COMPONENT_CLASS (klass); POA_Bonobo_UIComponent__epv *epv = &klass->epv; bonobo_ui_component_parent_class = g_type_class_peek_parent (klass); object_class->finalize = bonobo_ui_component_finalize; uclass->ui_event = ui_event; signals [EXEC_VERB] = g_signal_new ( "exec_verb", G_TYPE_FROM_CLASS (object_class), G_SIGNAL_RUN_FIRST, G_STRUCT_OFFSET (BonoboUIComponentClass, exec_verb), NULL, NULL, g_cclosure_marshal_VOID__STRING, G_TYPE_NONE, 1, G_TYPE_STRING); signals [UI_EVENT] = g_signal_new ( "ui_event", G_TYPE_FROM_CLASS (object_class), G_SIGNAL_RUN_FIRST, G_STRUCT_OFFSET (BonoboUIComponentClass, ui_event), NULL, NULL, bonobo_ui_marshal_VOID__STRING_INT_STRING, G_TYPE_NONE, 3, G_TYPE_STRING, G_TYPE_INT, G_TYPE_STRING); uclass->freeze = impl_freeze; uclass->thaw = impl_thaw; uclass->xml_set = impl_xml_set; uclass->xml_get = impl_xml_get; uclass->xml_rm = impl_xml_rm; uclass->set_prop = impl_set_prop; uclass->get_prop = impl_get_prop; uclass->exists = impl_exists; epv->setContainer = impl_Bonobo_UIComponent_setContainer; epv->unsetContainer = impl_Bonobo_UIComponent_unsetContainer; epv->_get_name = impl_Bonobo_UIComponent__get_name; epv->describeVerbs = impl_Bonobo_UIComponent_describeVerbs; epv->execVerb = impl_Bonobo_UIComponent_execVerb; epv->uiEvent = impl_Bonobo_UIComponent_uiEvent; } static void bonobo_ui_component_init (BonoboUIComponent *component) { BonoboUIComponentPrivate *priv; priv = g_new0 (BonoboUIComponentPrivate, 1); priv->verbs = g_hash_table_new (g_str_hash, g_str_equal); priv->listeners = g_hash_table_new (g_str_hash, g_str_equal); priv->container = CORBA_OBJECT_NIL; component->priv = priv; } BONOBO_TYPE_FUNC_FULL (BonoboUIComponent, Bonobo_UIComponent, PARENT_TYPE, bonobo_ui_component) libbonoboui-2.24.5/bonobo/bonobo-ui-sync-keys.h0000644000076400007640000000267711173072741016322 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ /* * bonobo-ui-sync-keys.h: The Bonobo UI/XML sync engine for keys bindings * * Author: * Michael Meeks (michael@helixcode.com) * * Copyright 2000 Helix Code, Inc. */ #ifndef _BONOBO_UI_SYNC_KEYS_H_ #define _BONOBO_UI_SYNC_KEYS_H_ #include #include G_BEGIN_DECLS #define BONOBO_TYPE_UI_SYNC_KEYS (bonobo_ui_sync_keys_get_type ()) #define BONOBO_UI_SYNC_KEYS(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BONOBO_TYPE_UI_SYNC_KEYS, BonoboUISyncKeys)) #define BONOBO_UI_SYNC_KEYS_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), BONOBO_TYPE_UI_SYNC_KEYS, BonoboUISyncKeysClass)) #define BONOBO_IS_UI_SYNC_KEYS(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BONOBO_TYPE_UI_SYNC_KEYS)) #define BONOBO_IS_UI_SYNC_KEYS_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), BONOBO_TYPE_UI_SYNC_KEYS)) typedef struct _BonoboUISyncKeysPrivate BonoboUISyncKeysPrivate; typedef struct { BonoboUISync parent; GHashTable *keybindings; BonoboUISyncKeysPrivate *priv; } BonoboUISyncKeys; typedef struct { BonoboUISyncClass parent_class; } BonoboUISyncKeysClass; BonoboUISync *bonobo_ui_sync_keys_new (BonoboUIEngine *engine); gint bonobo_ui_sync_keys_binding_handle (GtkWidget *widget, GdkEventKey *event, BonoboUISyncKeys *msync); G_END_DECLS #endif /* _BONOBO_UI_SYNC_KEYS_H_ */ libbonoboui-2.24.5/bonobo/bonobo-ui-marshal.list0000644000076400007640000000016211173072741016533 00000000000000VOID:STRING,INT,STRING VOID:STRING,BOOLEAN BOOLEAN:POINTER VOID:POINTER,STRING VOID:POINTER,POINTER VOID:INT,INT libbonoboui-2.24.5/bonobo/bonobo-ui-toolbar-control-item.c0000644000076400007640000002347111173072741020437 00000000000000/* -*- Mode: C; indent-tabs-mode: t; c-basic-offset: 8; tab-width: 8 -*- */ /** * bonobo-ui-toolbar-control-item.c: A special toolbar item for controls. * * Author: * Jon K Hellan (hellan@acm.org) * * Copyright 2000 Jon K Hellan. * Copyright (C) 2001 Eazel, Inc. */ #undef GTK_DISABLE_DEPRECATED #include #include #include #include #include #include G_DEFINE_TYPE (BonoboUIToolbarControlItem, bonobo_ui_toolbar_control_item, GTK_TYPE_TOOL_BUTTON) static void set_control_property_bag_value (BonoboUIToolbarControlItem *item, const char *name, BonoboArg *value) { BonoboControlFrame *frame; Bonobo_PropertyBag bag; if (!item->control) return; frame = bonobo_widget_get_control_frame (item->control); if (!frame) return; bag = bonobo_control_frame_get_control_property_bag (frame, NULL); if (bag == CORBA_OBJECT_NIL) return; bonobo_pbclient_set_value (bag, name, value, NULL); bonobo_object_release_unref (bag, NULL); } #define MAKE_SET_CONTROL_PROPERTY_BAG_VALUE(gtype, paramtype, capstype) \ static void \ set_control_property_bag_##gtype (BonoboUIToolbarControlItem *item, \ const char *name, \ paramtype value) \ { \ BonoboArg *arg; \ \ arg = bonobo_arg_new (BONOBO_ARG_##capstype); \ BONOBO_ARG_SET_##capstype (arg, value); \ set_control_property_bag_value (item, name, arg); \ bonobo_arg_release (arg); \ } MAKE_SET_CONTROL_PROPERTY_BAG_VALUE (gint, gint, INT) /* MAKE_SET_CONTROL_PROPERTY_BAG_VALUE (gboolean, gboolean, BOOLEAN) MAKE_SET_CONTROL_PROPERTY_BAG_VALUE (string, const char *, STRING) */ static GtkToolbar * get_parent_toolbar (BonoboUIToolbarControlItem *control_item) { GtkWidget *toolbar; toolbar = GTK_WIDGET (control_item)->parent; if (!GTK_IS_TOOLBAR (toolbar)) { g_warning ("Non-toolbar parent '%s'", g_type_name_from_instance ((GTypeInstance *)toolbar)); return NULL; } return GTK_TOOLBAR (toolbar); } static BonoboUIToolbarControlDisplay get_display_mode (BonoboUIToolbarControlItem *control_item) { GtkToolbar *toolbar = get_parent_toolbar (control_item); g_return_val_if_fail (toolbar != NULL, BONOBO_UI_TOOLBAR_CONTROL_DISPLAY_CONTROL); if (gtk_toolbar_get_orientation (toolbar) == GTK_ORIENTATION_HORIZONTAL) return control_item->hdisplay; else return control_item->vdisplay; } /* * We are assuming that there's room in horizontal orientation, but not * vertical. This can be made more sophisticated by looking at the control's * requested geometry. */ static void impl_toolbar_reconfigured (GtkToolItem *item) { GtkToolbar *toolbar; GtkOrientation orientation; BonoboUIToolbarControlDisplay display; BonoboUIToolbarControlItem *control_item = (BonoboUIToolbarControlItem *) item; if (GTK_WIDGET (item)->parent == NULL) return; toolbar = get_parent_toolbar (control_item); g_return_if_fail (toolbar != NULL); orientation = gtk_toolbar_get_orientation (toolbar); if (orientation == GTK_ORIENTATION_HORIZONTAL) display = control_item->hdisplay; else display = control_item->vdisplay; switch (display) { case BONOBO_UI_TOOLBAR_CONTROL_DISPLAY_CONTROL: gtk_widget_hide (control_item->button); gtk_widget_show (control_item->widget); break; case BONOBO_UI_TOOLBAR_CONTROL_DISPLAY_BUTTON: gtk_widget_hide (control_item->widget); gtk_widget_show (control_item->button); break; case BONOBO_UI_TOOLBAR_CONTROL_DISPLAY_NONE: gtk_widget_hide (control_item->widget); gtk_widget_hide (control_item->button); break; default: g_assert_not_reached (); } set_control_property_bag_gint (control_item, "orientation", orientation); set_control_property_bag_gint (control_item, "style", gtk_toolbar_get_style (toolbar)); GTK_TOOL_ITEM_CLASS (bonobo_ui_toolbar_control_item_parent_class)->toolbar_reconfigured (item); } static void impl_dispose (GObject *object) { BonoboUIToolbarControlItem *control_item; control_item = (BonoboUIToolbarControlItem *) object; if (control_item->widget) { gtk_widget_destroy (control_item->widget); control_item->control = NULL; control_item->widget = NULL; } G_OBJECT_CLASS (bonobo_ui_toolbar_control_item_parent_class)->dispose (object); } static void menu_item_map (GtkWidget *menu_item, BonoboUIToolbarControlItem *control_item) { if (GTK_BIN (menu_item)->child) return; g_object_ref (control_item->widget); gtk_container_remove (GTK_CONTAINER (control_item->box), control_item->widget); gtk_container_add (GTK_CONTAINER (menu_item), control_item->widget); g_object_unref (control_item->widget); } static void menu_item_return_control (GtkWidget *menu_item, BonoboUIToolbarControlItem *control_item) { if (!GTK_BIN (menu_item)->child) return; if (GTK_BIN (menu_item)->child == control_item->widget) { g_object_ref (control_item->widget); gtk_container_remove (GTK_CONTAINER (menu_item), control_item->widget); gtk_container_add (GTK_CONTAINER (control_item->box), control_item->widget); g_object_unref (control_item->widget); } } static gboolean impl_create_menu_proxy (GtkToolItem *tool_item) { GtkWidget *menu_item; BonoboUIToolbarControlItem *control_item = BONOBO_UI_TOOLBAR_CONTROL_ITEM (tool_item); if (get_display_mode (control_item) == BONOBO_UI_TOOLBAR_CONTROL_DISPLAY_NONE) return FALSE; if (control_item->hdisplay != BONOBO_UI_TOOLBAR_CONTROL_DISPLAY_CONTROL || control_item->vdisplay != BONOBO_UI_TOOLBAR_CONTROL_DISPLAY_CONTROL) /* Can cope with just a button */ return GTK_TOOL_ITEM_CLASS (bonobo_ui_toolbar_control_item_parent_class)->create_menu_proxy (tool_item); menu_item = gtk_menu_item_new (); /* This sucks, but the best we can do */ g_signal_connect (menu_item, "map", G_CALLBACK (menu_item_map), tool_item); g_signal_connect (menu_item, "destroy", G_CALLBACK (menu_item_return_control), tool_item); gtk_tool_item_set_proxy_menu_item (tool_item, "bonobo-control-button-menu-id", menu_item); return TRUE; } static void impl_notify (GObject *object, GParamSpec *pspec) { BonoboUIToolbarControlItem *control_item = BONOBO_UI_TOOLBAR_CONTROL_ITEM (object); if (control_item->control && !strcmp (pspec->name, "sensitive")) bonobo_control_frame_control_set_state (bonobo_widget_get_control_frame (control_item->control), GTK_WIDGET_SENSITIVE (control_item) ? Bonobo_Gtk_StateNormal : Bonobo_Gtk_StateInsensitive); G_OBJECT_CLASS (bonobo_ui_toolbar_control_item_parent_class)->notify (object, pspec); } static gboolean impl_map_event (GtkWidget *widget, GdkEventAny *event) { BonoboUIToolbarControlItem *control_item = BONOBO_UI_TOOLBAR_CONTROL_ITEM (widget); if (control_item->widget && control_item->widget->parent != control_item->box) menu_item_return_control (control_item->widget->parent, control_item); return GTK_WIDGET_CLASS (bonobo_ui_toolbar_control_item_parent_class)->map_event (widget, event); } static void bonobo_ui_toolbar_control_item_class_init (BonoboUIToolbarControlItemClass *klass) { GObjectClass *object_class = (GObjectClass *) klass; GtkWidgetClass *widget_class = (GtkWidgetClass *) klass; GtkToolItemClass *tool_item_class = (GtkToolItemClass *) klass; object_class->dispose = impl_dispose; object_class->notify = impl_notify; widget_class->map_event = impl_map_event; tool_item_class->create_menu_proxy = impl_create_menu_proxy; tool_item_class->toolbar_reconfigured = impl_toolbar_reconfigured; } static void bonobo_ui_toolbar_control_item_init (BonoboUIToolbarControlItem *control_item) { gtk_tool_item_set_homogeneous (GTK_TOOL_ITEM (control_item), FALSE); control_item->box = gtk_vbox_new (FALSE, 0); control_item->button = GTK_BIN (control_item)->child; g_object_ref_sink (control_item->button); gtk_container_remove (GTK_CONTAINER (control_item), control_item->button); gtk_container_add (GTK_CONTAINER (control_item->box), control_item->button); g_object_ref (control_item->button); gtk_container_add (GTK_CONTAINER (control_item), control_item->box); gtk_widget_show (control_item->box); } GtkWidget * bonobo_ui_toolbar_control_item_construct ( BonoboUIToolbarControlItem *control_item, GtkWidget *widget, Bonobo_Control control_ref) { if (!widget) widget = bonobo_widget_new_control_from_objref ( control_ref, CORBA_OBJECT_NIL); if (!widget) return NULL; control_item->widget = widget; control_item->control = BONOBO_IS_WIDGET (widget) ? BONOBO_WIDGET (widget) : NULL; gtk_container_add (GTK_CONTAINER (control_item->box), control_item->widget); return GTK_WIDGET (control_item); } GtkWidget * bonobo_ui_toolbar_control_item_new (Bonobo_Control control_ref) { BonoboUIToolbarControlItem *control_item; GtkWidget *ret; control_item = g_object_new ( bonobo_ui_toolbar_control_item_get_type (), NULL); ret = bonobo_ui_toolbar_control_item_construct ( control_item, NULL, control_ref); if (!ret) g_object_unref (control_item); return ret; } GtkWidget * bonobo_ui_toolbar_control_item_new_widget (GtkWidget *custom_in_proc_widget) { GtkWidget *ret; BonoboUIToolbarControlItem *control_item; control_item = g_object_new ( bonobo_ui_toolbar_control_item_get_type (), NULL); ret = bonobo_ui_toolbar_control_item_construct ( control_item, custom_in_proc_widget, CORBA_OBJECT_NIL); if (!ret) g_object_unref (custom_in_proc_widget); return ret; } void bonobo_ui_toolbar_control_item_set_display (BonoboUIToolbarControlItem *item, BonoboUIToolbarControlDisplay hdisplay, BonoboUIToolbarControlDisplay vdisplay) { g_return_if_fail (BONOBO_IS_UI_TOOLBAR_CONTROL_ITEM (item)); item->hdisplay = hdisplay; item->vdisplay = vdisplay; } libbonoboui-2.24.5/bonobo/bonobo-zoomable.h0000644000076400007640000000570311173072741015563 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- * * Bonobo::Zoomable - zoomable interface for Controls. * * Authors: Maciej Stachowiak * Martin Baulig * * Copyright (C) 2000 Eazel, Inc. * 2000 SuSE GmbH. */ #ifndef _BONOBO_ZOOMABLE_H_ #define _BONOBO_ZOOMABLE_H_ #include G_BEGIN_DECLS #define BONOBO_TYPE_ZOOMABLE (bonobo_zoomable_get_type ()) #define BONOBO_ZOOMABLE(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), BONOBO_TYPE_ZOOMABLE, BonoboZoomable)) #define BONOBO_ZOOMABLE_CLASS(k) (G_TYPE_CHECK_CLASS_CAST((k), BONOBO_TYPE_ZOOMABLE, BonoboZoomableClass)) #define BONOBO_IS_ZOOMABLE(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), BONOBO_TYPE_ZOOMABLE)) #define BONOBO_IS_ZOOMABLE_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), BONOBO_TYPE_ZOOMABLE)) #define BONOBO_ZOOMABLE_GET_CLASS(o)(G_TYPE_INSTANCE_GET_CLASS ((o), BONOBO_TYPE_ZOOMABLE, BonoboZoomableClass)) typedef struct _BonoboZoomablePrivate BonoboZoomablePrivate; typedef struct { BonoboObject object; BonoboZoomablePrivate *priv; } BonoboZoomable; typedef struct { BonoboObjectClass parent; POA_Bonobo_Zoomable__epv epv; void (*set_frame) (BonoboZoomable *zoomable); void (*set_zoom_level) (BonoboZoomable *zoomable, CORBA_float zoom_level); void (*zoom_in) (BonoboZoomable *zoomable); void (*zoom_out) (BonoboZoomable *zoomable); void (*zoom_to_fit) (BonoboZoomable *zoomable); void (*zoom_to_default) (BonoboZoomable *zoomable); gpointer dummy[4]; } BonoboZoomableClass; GType bonobo_zoomable_get_type (void) G_GNUC_CONST; BonoboZoomable *bonobo_zoomable_new (void); void bonobo_zoomable_set_parameters (BonoboZoomable *zoomable, float zoom_level, float min_zoom_level, float max_zoom_level, gboolean has_min_zoom_level, gboolean has_max_zoom_level); void bonobo_zoomable_set_parameters_full (BonoboZoomable *zoomable, float zoom_level, float min_zoom_level, float max_zoom_level, gboolean has_min_zoom_level, gboolean has_max_zoom_level, gboolean is_continuous, CORBA_float *preferred_zoom_levels, const gchar **preferred_zoom_level_names, gint num_preferred_zoom_levels); void bonobo_zoomable_add_preferred_zoom_level (BonoboZoomable *zoomable, CORBA_float zoom_level, const gchar *zoom_level_name); void bonobo_zoomable_report_zoom_level_changed (BonoboZoomable *zoomable, float new_zoom_level, CORBA_Environment *opt_ev); void bonobo_zoomable_report_zoom_parameters_changed (BonoboZoomable *zoomable, CORBA_Environment *opt_ev); G_END_DECLS #endif /* _BONOBO_ZOOMABLE_H_ */ libbonoboui-2.24.5/bonobo/bonobo-widget.c0000644000076400007640000003567411200301552015225 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ /** * bonobo-widget.c: BonoboWidget object. * * Authors: * Nat Friedman (nat@ximian.com) * * Copyright 1999, 2001 Ximian, Inc. * * Bonobo component embedding for hydrocephalic imbeciles. * * Pure cane sugar. * * This purpose of BonoboWidget is to make container-side use of * Bonobo as easy as pie. This widget has one function: * * Provide a simple wrapper for embedding Controls. Embedding * controls is already really easy, but BonoboWidget reduces * the work from about 5 lines to 1. To embed a given control, * just do: * * bw = bonobo_widget_new_control ("moniker for control"); * gtk_container_add (some_container, bw); * * Ta da! * * NB. A simple moniker might look like 'file:/tmp/a.jpeg' or * OAFIID:GNOME_Evolution_Calendar_Control */ #include #include #include #include #include #include #include #include G_DEFINE_TYPE (BonoboWidget, bonobo_widget, GTK_TYPE_BIN) struct _BonoboWidgetPrivate { /* Control stuff. */ BonoboControlFrame *frame; }; static Bonobo_Unknown bonobo_widget_launch_component (const char *moniker, const char *if_name, CORBA_Environment *ev) { Bonobo_Unknown component; component = bonobo_get_object (moniker, if_name, ev); if (BONOBO_EX (ev)) component = CORBA_OBJECT_NIL; if (component == CORBA_OBJECT_NIL) return NULL; return component; } /* * * Control support for BonoboWidget. * */ /** * bonobo_widget_construct_control_from_objref: * @bw: A BonoboWidget to construct * @control: A CORBA Object reference to an IDL:Bonobo/Control:1.0 * @uic: Bonobo_UIContainer for the launched object or CORBA_OBJECT_NIL * if there is no need of menu / toolbar merging. * @ev: a CORBA exception environment * * This is a constructor function. Only usable for wrapping and * derivation of new objects. For normal use, please refer to * #bonobo_widget_new_control_from_objref. * * Returns: A #BonoboWidget (the @bw) */ BonoboWidget * bonobo_widget_construct_control_from_objref (BonoboWidget *bw, Bonobo_Control control, Bonobo_UIContainer uic, CORBA_Environment *ev) { GtkWidget *frame_widget; /* Create a local ControlFrame for it. */ bw->priv->frame = bonobo_control_frame_new (uic); bonobo_control_frame_bind_to_control ( bw->priv->frame, control, ev); /* Grab the actual widget which visually contains the remote * Control. This is a GtkSocket, in reality. */ frame_widget = bonobo_control_frame_get_widget (bw->priv->frame); /* Now stick it into this BonoboWidget. */ gtk_container_add (GTK_CONTAINER (bw), frame_widget); gtk_widget_show (frame_widget); return bw; } /** * bonobo_widget_construct_control: * @bw: A BonoboWidget to construct * @moniker: A Moniker describing the object to be activated * @uic: Bonobo_UIContainer for the launched object or CORBA_OBJECT_NIL * if there is no need of menu / toolbar merging. * @ev: a CORBA exception environment * * This is a constructor function. Only usable for wrapping and * derivation of new objects. For normal use, please refer to * #bonobo_widget_new_control. * * This function will unref the passed in @bw in case it cannot launch * the component and return %NULL in such a case. Otherwise it returns * the @bw itself. * * Returns: A #BonoboWidget or %NULL */ BonoboWidget * bonobo_widget_construct_control (BonoboWidget *bw, const char *moniker, Bonobo_UIContainer uic, CORBA_Environment *ev) { BonoboWidget *widget; Bonobo_Control control; /* Create the remote Control object. */ control = bonobo_widget_launch_component ( moniker, "IDL:Bonobo/Control:1.0", ev); if (BONOBO_EX (ev) || control == CORBA_OBJECT_NIL) { /* Kill it (it is a floating object) */ g_object_ref_sink (bw); return NULL; } widget = bonobo_widget_construct_control_from_objref ( bw, control, uic, ev); bonobo_object_release_unref (control, ev); return widget; } typedef struct { BonoboWidget *bw; BonoboWidgetAsyncFn fn; gpointer user_data; Bonobo_UIContainer uic; } async_closure_t; static void control_new_async_cb (Bonobo_Unknown object, CORBA_Environment *ev, gpointer user_data) { async_closure_t *c = user_data; if (BONOBO_EX (ev) || object == CORBA_OBJECT_NIL) c->fn (NULL, ev, c->user_data); else { bonobo_widget_construct_control_from_objref ( c->bw, object, c->uic, ev); c->fn (c->bw, ev, c->user_data); } g_object_unref (c->bw); bonobo_object_release_unref (c->uic, ev); bonobo_object_release_unref (object, ev); g_free (c); } /** * bonobo_widget_new_control_async: * @moniker: A Moniker describing the object to be activated * @uic: Bonobo_UIContainer for the launched object or CORBA_OBJECT_NIL * if there is no need of menu / toolbar merging. * @fn: a callback function called when the activation has happend * @user_data: user data to be passed back to the callback. * * This method creates a widget, returns it to the user, and * asynchronously activates a control to insert into the widget. * * Return value: a (temporarily) empty Widget to be filled with the * control later **/ GtkWidget * bonobo_widget_new_control_async (const char *moniker, Bonobo_UIContainer uic, BonoboWidgetAsyncFn fn, gpointer user_data) { BonoboWidget *bw; async_closure_t *c = g_new0 (async_closure_t, 1); CORBA_Environment ev; g_return_val_if_fail (fn != NULL, NULL); g_return_val_if_fail (moniker != NULL, NULL); bw = g_object_new (BONOBO_TYPE_WIDGET, NULL); CORBA_exception_init (&ev); c->bw = g_object_ref (bw); c->fn = fn; c->user_data = user_data; c->uic = bonobo_object_dup_ref (uic, &ev); bonobo_get_object_async ( moniker, "IDL:Bonobo/Control:1.0", &ev, control_new_async_cb, c); if (BONOBO_EX (&ev)) { control_new_async_cb (CORBA_OBJECT_NIL, &ev, c); gtk_widget_destroy (GTK_WIDGET (bw)); bw = NULL; } CORBA_exception_free (&ev); return (GtkWidget *) bw; } /** * bonobo_widget_new_control_from_objref: * @control: A CORBA Object reference to an IDL:Bonobo/Control:1.0 * @uic: Bonobo_UIContainer for the launched object or CORBA_OBJECT_NIL * if there is no need of menu / toolbar merging. * * This function is a simple wrapper for easily embedding controls * into applications. This function is used when you have already * a CORBA object reference to an IDL:Bonobo/Control:1.0 (the * @control) argument. * * Returns: the @control wrapped as a #GtkWidget. */ GtkWidget * bonobo_widget_new_control_from_objref (Bonobo_Control control, Bonobo_UIContainer uic) { BonoboWidget *bw; CORBA_Environment ev; g_return_val_if_fail (control != CORBA_OBJECT_NIL, NULL); CORBA_exception_init (&ev); bw = g_object_new (BONOBO_TYPE_WIDGET, NULL); bw = bonobo_widget_construct_control_from_objref (bw, control, uic, &ev); if (BONOBO_EX (&ev)) bw = NULL; CORBA_exception_free (&ev); return (GtkWidget *) bw; } /** * bonobo_widget_new_control: * @moniker: A Moniker describing the object to be activated * @uic: Bonobo_UIContainer for the launched object or CORBA_OBJECT_NIL * if there is no need of menu / toolbar merging. * * This function is a simple wrapper for easily embedding controls * into applications. It will launch the component identified by @id * and will return it as a GtkWidget. * * Returns: A #GtkWidget that is bound to the Bonobo Control. */ GtkWidget * bonobo_widget_new_control (const char *moniker, Bonobo_UIContainer uic) { BonoboWidget *bw; CORBA_Environment ev; g_return_val_if_fail (moniker != NULL, NULL); CORBA_exception_init (&ev); bw = g_object_new (BONOBO_TYPE_WIDGET, NULL); bw = bonobo_widget_construct_control (bw, moniker, uic, &ev); if (BONOBO_EX (&ev)) { char *txt; g_warning ("Activation exception '%s'", (txt = bonobo_exception_get_text (&ev))); g_free (txt); bw = NULL; } CORBA_exception_free (&ev); return (GtkWidget *) bw; } /** * bonobo_widget_get_control_frame: * @bonobo_widget: a Bonobo Widget returned by one of the bonobo_widget_new() functions. * * Every IDL:Bonobo/Control:1.0 needs to be placed inside an * IDL:Bonobo/ControlFrame:1.0. This returns the BonoboControlFrame * object that wraps the Control in the @bonobo_widget. * * Returns: The BonoboControlFrame associated with the @bonobo_widget */ BonoboControlFrame * bonobo_widget_get_control_frame (BonoboWidget *bonobo_widget) { g_return_val_if_fail (BONOBO_IS_WIDGET (bonobo_widget), NULL); return bonobo_widget->priv->frame; } /** * bonobo_widget_get_ui_container: * @bonobo_widget: the #BonoboWidget to query. * * Returns: the CORBA object reference to the Bonobo_UIContainer * associated with the @bonobo_widget. */ Bonobo_UIContainer bonobo_widget_get_ui_container (BonoboWidget *bonobo_widget) { g_return_val_if_fail (BONOBO_IS_WIDGET (bonobo_widget), NULL); if (!bonobo_widget->priv->frame) return CORBA_OBJECT_NIL; return bonobo_control_frame_get_ui_container ( bonobo_widget->priv->frame); } Bonobo_Unknown bonobo_widget_get_objref (BonoboWidget *bonobo_widget) { g_return_val_if_fail (BONOBO_IS_WIDGET (bonobo_widget), NULL); if (!bonobo_widget->priv->frame) return CORBA_OBJECT_NIL; else return bonobo_control_frame_get_control (bonobo_widget->priv->frame); } static void bonobo_widget_dispose (GObject *object) { BonoboWidget *bw = BONOBO_WIDGET (object); BonoboWidgetPrivate *priv = bw->priv; if (priv->frame) { bonobo_object_unref (BONOBO_OBJECT (priv->frame)); priv->frame = NULL; } G_OBJECT_CLASS (bonobo_widget_parent_class)->dispose (object); } static void bonobo_widget_finalize (GObject *object) { BonoboWidget *bw = BONOBO_WIDGET (object); g_free (bw->priv); G_OBJECT_CLASS (bonobo_widget_parent_class)->finalize (object); } static void bonobo_widget_size_request (GtkWidget *widget, GtkRequisition *requisition) { GtkBin *bin; g_return_if_fail (widget != NULL); g_return_if_fail (BONOBO_IS_WIDGET (widget)); g_return_if_fail (requisition != NULL); bin = GTK_BIN (widget); if (bin->child && GTK_WIDGET_VISIBLE (bin->child)) { GtkRequisition child_requisition; gtk_widget_size_request (bin->child, &child_requisition); requisition->width = child_requisition.width; requisition->height = child_requisition.height; } } static void bonobo_widget_size_allocate (GtkWidget *widget, GtkAllocation *allocation) { GtkBin *bin; GtkAllocation child_allocation; g_return_if_fail (widget != NULL); g_return_if_fail (BONOBO_IS_WIDGET (widget)); g_return_if_fail (allocation != NULL); widget->allocation = *allocation; bin = GTK_BIN (widget); child_allocation.x = allocation->x; child_allocation.y = allocation->y; child_allocation.width = allocation->width; child_allocation.height = allocation->height; if (bin->child) gtk_widget_size_allocate (bin->child, &child_allocation); } static void bonobo_widget_remove (GtkContainer *container, GtkWidget *widget) { BonoboWidget *bw = (BonoboWidget *) container; bw->priv->frame = NULL; GTK_CONTAINER_CLASS (bonobo_widget_parent_class)->remove (container, widget); } static void bonobo_widget_class_init (BonoboWidgetClass *klass) { GObjectClass *object_class = (GObjectClass *) klass; GtkWidgetClass *widget_class = (GtkWidgetClass *) klass; GtkContainerClass *container_class = (GtkContainerClass *) klass; container_class->remove = bonobo_widget_remove; widget_class->size_request = bonobo_widget_size_request; widget_class->size_allocate = bonobo_widget_size_allocate; object_class->finalize = bonobo_widget_finalize; object_class->dispose = bonobo_widget_dispose; } static void bonobo_widget_init (BonoboWidget *bw) { bw->priv = g_new0 (BonoboWidgetPrivate, 1); } /** * bonobo_widget_set_property: * @control: A #BonoboWidget that represents an IDL:Bonobo/Control:1.0 * @first_prop: first property name to set. * * This is a utility function used to set a number of properties * in the Bonobo Control in @control. * * This function takes a variable list of arguments that must be NULL * terminated. Arguments come in tuples: a string (for the argument * name) and the data type that is to be transfered. The * implementation of the actual setting of the PropertyBag values is * done by the bonobo_property_bag_client_setv() function). * * This only works for BonoboWidgets that represent controls (ie, * that were returned by bonobo_widget_new_control_from_objref() or * bonobo_widget_new_control(). */ void bonobo_widget_set_property (BonoboWidget *control, const char *first_prop, ...) { Bonobo_PropertyBag pb; CORBA_Environment ev; va_list args; va_start (args, first_prop); g_return_if_fail (control != NULL); g_return_if_fail (first_prop != NULL); g_return_if_fail (control->priv != NULL); g_return_if_fail (BONOBO_IS_WIDGET (control)); CORBA_exception_init (&ev); pb = bonobo_control_frame_get_control_property_bag ( control->priv->frame, &ev); if (BONOBO_EX (&ev)) g_warning ("Error getting property bag from control"); else { /* FIXME: this should use ev */ char *err = bonobo_property_bag_client_setv (pb, &ev, first_prop, args); if (err) g_warning ("Error '%s'", err); } bonobo_object_release_unref (pb, &ev); CORBA_exception_free (&ev); va_end (args); } /** * bonobo_widget_get_property: * @control: A #BonoboWidget that represents an IDL:Bonobo/Control:1.0 * @first_prop: first property name to set. * * This is a utility function used to get a number of properties * in the Bonobo Control in @control. * * This function takes a variable list of arguments that must be NULL * terminated. Arguments come in tuples: a string (for the argument * name) and a pointer where the data will be stored. The * implementation of the actual setting of the PropertyBag values is * done by the bonobo_property_bag_client_setv() function). * * This only works for BonoboWidgets that represent controls (ie, * that were returned by bonobo_widget_new_control_from_objref() or * bonobo_widget_new_control(). */ void bonobo_widget_get_property (BonoboWidget *control, const char *first_prop, ...) { Bonobo_PropertyBag pb; CORBA_Environment ev; va_list args; va_start (args, first_prop); g_return_if_fail (control != NULL); g_return_if_fail (first_prop != NULL); g_return_if_fail (control->priv != NULL); g_return_if_fail (BONOBO_IS_WIDGET (control)); CORBA_exception_init (&ev); pb = bonobo_control_frame_get_control_property_bag ( control->priv->frame, &ev); if (BONOBO_EX (&ev)) g_warning ("Error getting property bag from control"); else { /* FIXME: this should use ev */ char *err = bonobo_property_bag_client_getv (pb, &ev, first_prop, args); if (err) g_warning ("Error '%s'", err); } bonobo_object_release_unref (pb, &ev); CORBA_exception_free (&ev); va_end (args); } libbonoboui-2.24.5/bonobo/Makefile.am0000664000076400007640000001513111546334570014365 00000000000000INCLUDES = \ -I$(top_srcdir) \ -I$(top_builddir) \ $(WARN_CFLAGS) \ $(BONOBOUI_CFLAGS) \ -DPREFIX=\""$(prefix)"\" \ -DPLUGIN_DIR=\""$(PLUGIN_DIR)"\" \ -DBONOBO_UI_INTERNAL \ -DBONOBO_UIDIR=\""$(datadir)/gnome-2.0/ui/"\" \ -DBONOBO_LIBDIR=\""$(libdir)"\" \ -DBONOBO_DATADIR=\""$(datadir)"\" \ -DBONOBO_PIXMAPDIR=\""$(datadir)/pixmaps"\" \ -DBONOBO_BINDIR=\""$(bindir)"\" \ -DBONOBO_LOCALSTATEDIR=\""$(localstatedir)"\" \ -DBONOBO_LOCALEDIR="\"$(datadir)/locale\"" \ -DBONOBO_EXPLICIT_TRANSLATION_DOMAIN="GETTEXT_PACKAGE" \ -DG_LOG_DOMAIN=\"Bonobo\" \ -DVERSION=\"$(VERSION)\" \ $(DISABLE_DEPRECATED) \ $(BONOBOUI_SINGLE_INCLUDES) \ -UBONOBO_DISABLE_DEPRECATED \ -UBONOBO_UI_DISABLE_DEPRECATED lib_LTLIBRARIES = libbonoboui-2.la noinst_HEADERS = \ bonobo-control-internal.h \ bonobo-ui-engine-config.h \ bonobo-ui-engine-private.h \ bonobo-ui-marshal.h \ bonobo-ui-node-private.h \ bonobo-ui-preferences.h \ bonobo-ui-private.h \ bonobo-ui-sync-menu.h \ bonobo-ui-sync-keys.h \ bonobo-ui-sync-status.h \ bonobo-ui-sync-toolbar.h \ bonobo-ui-toolbar.h \ bonobo-ui-toolbar-control-item.h \ bonobo-ui-toolbar-popup-item.h \ bonobo-ui-xml.h libbonoboincludedir = $(includedir)/libbonoboui-2.0/bonobo libbonoboui_h_sources = \ bonobo-canvas-component.h \ bonobo-canvas-item.h \ bonobo-control-frame.h \ bonobo-control.h \ bonobo-dock-band.h \ bonobo-dock-item.h \ bonobo-dock-layout.h \ bonobo-dock.h \ bonobo-file-selector-util.h \ bonobo-plug.h \ bonobo-property-control.h \ bonobo-selector-widget.h \ bonobo-selector.h \ bonobo-socket.h \ bonobo-ui-component.h \ bonobo-ui-config-widget.h \ bonobo-ui-container.h \ bonobo-ui-engine.h \ bonobo-ui-main.h \ bonobo-ui-node.h \ bonobo-ui-sync.h \ bonobo-ui-toolbar-button-item.h \ bonobo-ui-toolbar-item.h \ bonobo-ui-toolbar-toggle-button-item.h \ bonobo-ui-toolbar.h \ bonobo-ui-util.h \ bonobo-widget.h \ bonobo-window.h \ bonobo-zoomable-frame.h \ bonobo-zoomable.h libbonoboui_2_la_LDFLAGS = \ -no-undefined libbonoboui_2_la_LIBADD = \ $(BONOBOUI_LIBS) ${X_LIBS} $(INTLLIBS) $(POPT_LIBS) libbonoboui_2_la_SOURCES = \ bonobo-a11y.c \ bonobo-a11y.h \ bonobo-dock.c \ bonobo-dock.h \ bonobo-dock-item.c \ bonobo-dock-item.h \ bonobo-dock-item-grip.c \ bonobo-dock-item-grip.h \ bonobo-dock-band.c \ bonobo-dock-band.h \ bonobo-dock-layout.c \ bonobo-dock-layout.h \ bonobo-ui-init-gtk.c \ bonobo-ui-main.h \ bonobo-ui-main.c \ bonobo-canvas-component.c \ bonobo-canvas-item.c \ bonobo-control-frame.c \ bonobo-control.c \ bonobo-file-selector-util.c \ bonobo-plug.c \ bonobo-property-control.c \ bonobo-selector.c \ bonobo-selector-widget.c \ bonobo-socket.c \ bonobo-ui-component.c \ bonobo-ui-config-widget.c \ bonobo-ui-container.c \ bonobo-ui-engine.c \ bonobo-ui-engine-config.c \ bonobo-ui-node.c \ bonobo-ui-preferences.c \ bonobo-ui-sync.c \ bonobo-ui-sync-menu.c \ bonobo-ui-sync-keys.c \ bonobo-ui-sync-status.c \ bonobo-ui-sync-toolbar.c \ bonobo-ui-toolbar-button-item.c \ bonobo-ui-toolbar-control-item.c \ bonobo-ui-toolbar-item.c \ bonobo-ui-toolbar-popup-item.c \ bonobo-ui-toolbar-toggle-button-item.c \ bonobo-ui-toolbar.c \ bonobo-ui-internal-toolbar.c \ bonobo-ui-type-builtins.c \ bonobo-ui-util.c \ bonobo-ui-win32.c \ bonobo-ui-xml.c \ bonobo-widget.c \ bonobo-window.c \ bonobo-zoomable.c \ bonobo-zoomable-frame.c \ bonobo-ui-marshal-main.c $(libbonoboui_2_la_OBJECTS): $(libbonoboui_built_sources) libbonoboui_built_public_sources = \ bonobo-ui-type-builtins.h libbonoboui_built_private_sources = \ bonobo-ui-type-builtins.c \ bonobo-ui-marshal.c \ bonobo-ui-marshal.h \ libbonoboui.defs libbonoboui_built_sources = \ $(libbonoboui_built_public_sources) \ $(libbonoboui_built_private_sources) libbonoboinclude_HEADERS = \ $(libbonoboui_h_sources) \ $(libbonoboui_built_public_sources) bonobo-ui-marshal.h: bonobo-ui-marshal.list $(GLIB_GENMARSHAL) $(GLIB_GENMARSHAL) $< --header --prefix=bonobo_ui_marshal > $@ bonobo-ui-marshal.c: bonobo-ui-marshal.list $(GLIB_GENMARSHAL) $(GLIB_GENMARSHAL) $< --body --prefix=bonobo_ui_marshal > $@ bonobo-ui-type-builtins.c: Makefile $(libbonoboui_h_sources) $(GLIB_MKENUMS) --fhead "#undef GTK_DISABLE_DEPRECATED\n\n" \ --fhead "#include \"config.h\"\n\n" \ --fhead "#include \"libbonoboui.h\"\n\n" \ --fhead "#include \"bonobo-ui-type-builtins.h\"\n\n" \ --fprod "\n/* enumerations from \"@filename@\" */" \ --vhead "static const G@Type@Value _@enum_name@_values[] = {" \ --vprod " { @VALUENAME@, \"@VALUENAME@\", \"@valuenick@\" }," \ --vtail " { 0, NULL, NULL }\n};\n\n" \ --vtail "GType\n@enum_name@_get_type (void)\n{\n" \ --vtail " static GType type = 0;\n\n" \ --vtail " if (!type)\n" \ --vtail " type = g_@type@_register_static (\"@EnumName@\", _@enum_name@_values);\n\n" \ --vtail " return type;\n}\n\n" \ $(filter-out $<,$^) > xgen-gtbec \ && cp xgen-gtbec $(@F) \ && rm -f xgen-gtbec bonobo-ui-type-builtins.h: Makefile $(libbonoboui_h_sources) $(GLIB_MKENUMS) --fhead "#ifndef __BONOBO_UI_TYPE_BUILTINS_H__\n" \ --fhead "#define __BONOBO_UI_TYPE_BUILTINS_H__ 1\n\n" \ --fhead "#include \n\n" \ --fhead "G_BEGIN_DECLS\n\n" \ --ftail "G_END_DECLS\n\n" \ --ftail "#endif /* __BONOBO_UI_TYPE_BUILTINS_H__ */\n" \ --fprod "\n/* --- @filename@ --- */" \ --eprod "#define BONOBO_TYPE_@ENUMSHORT@ @enum_name@_get_type()\n" \ --eprod "GType @enum_name@_get_type (void);\n" \ $(filter-out $<,$^) > xgen-gth \ && cp xgen-gth $(@F) \ && rm -f xgen-gth libbonoboui.defs: Makefile $(libbonoboui_h_sources) $(GLIB_MKENUMS) --comments ";; @comment@" \ --fprod "; enumerations from \"@filename@\"\n " \ --vhead "(define-@type@ @EnumName@" \ --vprod " (@valuenick@ @VALUENAME@)" \ --vtail ")" \ $(filter-out $<,$^) > xgen-gdef \ && (cmp -s xgen-gdef libbonoboui.defs || cp xgen-gdef libbonoboui.defs) \ && rm -f xgen-gdef pkgconfigdir = $(libdir)/pkgconfig pkgconfig_DATA = libbonoboui-2.0.pc EXTRA_DIST = bonobo-insert-component.xpm libbonoboui-2.0.pc.in \ libbonoboui-2.0-uninstalled.pc.in bonobo-ui-marshal.list CLEANFILES = $(libbonoboui_built_sources) BUILT_SOURCE = $(libbonoboui_built_sources) DONT_DIST_SOURCE = $(libbonoboui_built_sources) dist-hook: for file in $(DONT_DIST_SOURCE) ; do \ rm -f $(distdir)/$$file ; \ done libbonoboui-2.24.5/bonobo/bonobo-ui-toolbar.h0000644000076400007640000000533511173072741016031 00000000000000/* -*- Mode: C; indent-tabs-mode: t; c-basic-offset: 8; tab-width: 8 -*- */ /** * bonobo-ui-toolbar.h * * Author: * Ettore Perazzoli * * Copyright (C) 2000 Helix Code, Inc. */ #ifndef _BONOBO_UI_TOOLBAR_H_ #define _BONOBO_UI_TOOLBAR_H_ #include #include #include "bonobo-ui-toolbar-item.h" #ifndef BONOBO_UI_DISABLE_DEPRECATED G_BEGIN_DECLS #define BONOBO_TYPE_UI_TOOLBAR (bonobo_ui_toolbar_get_type ()) #define BONOBO_UI_TOOLBAR(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BONOBO_TYPE_UI_TOOLBAR, BonoboUIToolbar)) #define BONOBO_UI_TOOLBAR_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), BONOBO_TYPE_UI_TOOLBAR, BonoboUIToolbarClass)) #define BONOBO_IS_UI_TOOLBAR(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BONOBO_TYPE_UI_TOOLBAR)) #define BONOBO_IS_UI_TOOLBAR_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), BONOBO_TYPE_UI_TOOLBAR)) typedef enum { BONOBO_UI_TOOLBAR_STYLE_PRIORITY_TEXT, BONOBO_UI_TOOLBAR_STYLE_ICONS_AND_TEXT, BONOBO_UI_TOOLBAR_STYLE_ICONS_ONLY, BONOBO_UI_TOOLBAR_STYLE_TEXT_ONLY } BonoboUIToolbarStyle; typedef struct _BonoboUIToolbarPrivate BonoboUIToolbarPrivate; typedef struct { GtkContainer parent; BonoboUIToolbarPrivate *priv; } BonoboUIToolbar; typedef struct { GtkContainerClass parent_class; void (* set_orientation) (BonoboUIToolbar *toolbar, GtkOrientation orientation); void (* style_changed) (BonoboUIToolbar *toolbar); gpointer dummy[4]; } BonoboUIToolbarClass; GType bonobo_ui_toolbar_get_type (void) G_GNUC_CONST; void bonobo_ui_toolbar_construct (BonoboUIToolbar *toolbar); GtkWidget *bonobo_ui_toolbar_new (void); void bonobo_ui_toolbar_set_orientation (BonoboUIToolbar *toolbar, GtkOrientation orientation); GtkOrientation bonobo_ui_toolbar_get_orientation (BonoboUIToolbar *toolbar); BonoboUIToolbarStyle bonobo_ui_toolbar_get_style (BonoboUIToolbar *toolbar); void bonobo_ui_toolbar_set_hv_styles (BonoboUIToolbar *toolbar, BonoboUIToolbarStyle hstyle, BonoboUIToolbarStyle vstyle); void bonobo_ui_toolbar_insert (BonoboUIToolbar *toolbar, BonoboUIToolbarItem *item, int position); GtkTooltips *bonobo_ui_toolbar_get_tooltips (BonoboUIToolbar *toolbar); void bonobo_ui_toolbar_show_tooltips (BonoboUIToolbar *toolbar, gboolean show_tips); GList *bonobo_ui_toolbar_get_children (BonoboUIToolbar *toolbar); G_END_DECLS #endif /* BONOBO_UI_DISABLE_DEPRECATED */ #endif /* _BONOBO_UI_TOOLBAR_H_ */ libbonoboui-2.24.5/bonobo/bonobo-ui-engine.c0000664000076400007640000022147611433016366015637 00000000000000/* -*- Mode: C; indent-tabs-mode: t; c-basic-offset: 8; tab-width: 8 -*- */ /* * bonobo-ui-engine.c: The Bonobo UI/XML Sync engine. * * Author: * Michael Meeks (michael@ximian.com) * * Copyright 2000,2001 Ximian, Inc. */ /* FIXME: bonobo_ui_engine_update should take * a BonoboUINode *, which we can walk up from * looking for cleanliness & then re-building * from there on down */ #undef GTK_DISABLE_DEPRECATED #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include /* only for embedded widgets */ #include #include #ifdef LOWLEVEL_DEBUG # define ACCESS(str) access (str, 0) #else # define ACCESS(str) #endif /* Various debugging output defines */ #undef STATE_SYNC_DEBUG #undef WIDGET_SYNC_DEBUG #undef XML_MERGE_DEBUG #define PARENT_TYPE G_TYPE_OBJECT static GObjectClass *parent_class = NULL; static GQuark id_id = 0; static GQuark cmd_id = 0; static GQuark verb_id = 0; static GQuark name_id = 0; static GQuark state_id = 0; static GQuark hidden_id = 0; static GQuark commands_id = 0; static GQuark sensitive_id = 0; enum { ADD_HINT, REMOVE_HINT, EMIT_VERB_ON, EMIT_EVENT_ON, DESTROY, LAST_SIGNAL }; static guint signals [LAST_SIGNAL] = { 0 }; static gint bonobo_ui_engine_inhibit_events = 0; static void add_debug_menu (BonoboUIEngine *engine) { char *xml; BonoboUINode *node; xml = g_strdup_printf ( "" " " " " " " "", _("Debug"), _("_Dump XML"), _("Dump the entire UI's XML description to the console")); node = bonobo_ui_node_from_string (xml); bonobo_ui_engine_xml_merge_tree (engine, "/", node, "BuiltIn"); g_free (xml); } /* * Mapping from nodes to their synchronization * class information functions. */ static BonoboUISync * find_sync_for_node (BonoboUIEngine *engine, BonoboUINode *node) { GSList *l; BonoboUISync *ret = NULL; if (!node) return NULL; if (node->name_id == cmd_id || node->name_id == commands_id) return NULL; for (l = engine->priv->syncs; l; l = l->next) { if (bonobo_ui_sync_can_handle (l->data, node)) { ret = l->data; break; } } if (ret) { /* fprintf (stderr, "Found sync '%s' for path '%s'\n", gtk_type_name (G_TYPE_FROM_CLASS (GTK_OBJECT_GET_CLASS (ret))), bonobo_ui_xml_make_path (node));*/ return ret; } return find_sync_for_node (engine, node->parent); } /** * bonobo_ui_engine_add_sync: * @engine: the enginer * @sync: the synchronizer * * Add a #BonoboUISync synchronizer to the engine **/ void bonobo_ui_engine_add_sync (BonoboUIEngine *engine, BonoboUISync *sync) { g_return_if_fail (BONOBO_IS_UI_ENGINE (engine)); if (g_slist_find (engine->priv->syncs, sync)) g_warning ("Already added this Synchronizer %p", sync); else engine->priv->syncs = g_slist_append ( engine->priv->syncs, sync); } /** * bonobo_ui_engine_remove_sync: * @engine: the engine * @sync: the sync * * Remove a specified #BonoboUISync synchronizer from the engine **/ void bonobo_ui_engine_remove_sync (BonoboUIEngine *engine, BonoboUISync *sync) { g_return_if_fail (BONOBO_IS_UI_ENGINE (engine)); engine->priv->syncs = g_slist_remove ( engine->priv->syncs, sync); } /** * bonobo_ui_engine_get_syncs: * @engine: the engine * * Retrieve a list of available synchronizers. * * Return value: a GSList of #BonoboUISync s **/ GSList * bonobo_ui_engine_get_syncs (BonoboUIEngine *engine) { g_return_val_if_fail (BONOBO_IS_UI_ENGINE (engine), NULL); return g_slist_copy (engine->priv->syncs); } /* * Cmd -> Node mapping functionality. */ typedef struct { char *name; GSList *nodes; } CmdToNode; static const char * node_get_id (BonoboUINode *node) { const char *txt; g_return_val_if_fail (node != NULL, NULL); if (!(txt = bonobo_ui_node_get_attr_by_id (node, id_id))) { txt = bonobo_ui_node_get_attr_by_id (node, verb_id); if (txt && txt [0] == '\0') txt = bonobo_ui_node_get_attr_by_id (node, name_id); } return txt; } static void cmd_to_node_add_node (BonoboUIEngine *engine, BonoboUINode *node, gboolean recurse) { CmdToNode *ctn; const char *name; if (recurse) { BonoboUINode *l; for (l = node->children; l; l = l->next) cmd_to_node_add_node (engine, l, TRUE); } name = node_get_id (node); if (!name) return; ctn = g_hash_table_lookup ( engine->priv->cmd_to_node, (gpointer) name); if (!ctn) { ctn = g_new (CmdToNode, 1); ctn->name = g_strdup (name); ctn->nodes = NULL; g_hash_table_insert ( engine->priv->cmd_to_node, ctn->name, ctn); } /* fprintf (stderr, "Adding %d'th '%s'\n", g_slist_length (ctn->nodes), ctn->name);*/ ctn->nodes = g_slist_prepend (ctn->nodes, node); } static void cmd_to_node_remove_node (BonoboUIEngine *engine, BonoboUINode *node, gboolean recurse) { CmdToNode *ctn; const char *name; if (recurse) { BonoboUINode *l; for (l = node->children; l; l = l->next) cmd_to_node_remove_node (engine, l, TRUE); } name = node_get_id (node); if (!name) return; ctn = g_hash_table_lookup ( engine->priv->cmd_to_node, name); if (!ctn) g_warning ("Removing non-registered name '%s'", name); else { /* fprintf (stderr, "Removing %d'th '%s'\n", g_slist_length (ctn->nodes), name);*/ ctn->nodes = g_slist_remove (ctn->nodes, node); } /* * NB. we leave the CmdToNode structures around * for future use. */ } static int cmd_to_node_clear_hash (gpointer key, gpointer value, gpointer user_data) { CmdToNode *ctn = value; g_free (ctn->name); g_slist_free (ctn->nodes); g_free (ctn); return TRUE; } static const GSList * cmd_to_nodes (BonoboUIEngine *engine, const char *name) { CmdToNode *ctn; if (!name) return NULL; ctn = g_hash_table_lookup ( engine->priv->cmd_to_node, name); return ctn ? ctn->nodes : NULL; } #define NODE_IS_ROOT_WIDGET(n) ((n->type & ROOT_WIDGET) != 0) #define NODE_IS_CUSTOM_WIDGET(n) ((n->type & CUSTOM_WIDGET) != 0) typedef enum { ROOT_WIDGET = 0x1, CUSTOM_WIDGET = 0x2 } NodeType; typedef struct { BonoboUIXmlData parent; int type; GtkWidget *widget; Bonobo_Unknown object; } NodeInfo; /* * BonoboUIXml impl functions */ static BonoboUIXmlData * info_new_fn (void) { NodeInfo *info = g_new0 (NodeInfo, 1); info->object = CORBA_OBJECT_NIL; return (BonoboUIXmlData *) info; } static void widget_unref (GtkWidget **ref) { GtkWidget *w; g_return_if_fail (ref != NULL); if ((w = *ref)) { *ref = NULL; g_object_unref (w); } } static void info_free_fn (BonoboUIXmlData *data) { NodeInfo *info = (NodeInfo *) data; if (info->object != CORBA_OBJECT_NIL) { dbgprintf ("** Releasing object %p on info %p\n", info->object, info); bonobo_object_release_unref (info->object, NULL); info->object = CORBA_OBJECT_NIL; } widget_unref (&info->widget); g_free (data); } static void info_dump_fn (BonoboUIXml *tree, BonoboUINode *node) { NodeInfo *info = bonobo_ui_xml_get_data (tree, node); if (info) { fprintf (stderr, " '%15s' object %8p type %d ", (char *)info->parent.id, info->object, info->type); if (info->widget) { BonoboUINode *attached_node = bonobo_ui_engine_widget_get_node (info->widget); fprintf (stderr, "widget '%8p' with node '%8p' attached ", info->widget, attached_node); if (attached_node == NULL) fprintf (stderr, "is NULL\n"); else if (attached_node != node) fprintf (stderr, "Serious mismatch attaches should be '%8p'\n", node); else { if (info->widget->parent) fprintf (stderr, "and matching; parented\n"); else fprintf (stderr, "and matching; BUT NO PARENT!\n"); } } else fprintf (stderr, " no associated widget\n"); } else fprintf (stderr, " very weird no data on node '%p'\n", node); } static void add_node_fn (BonoboUINode *parent, BonoboUINode *child, gpointer user_data) { cmd_to_node_add_node (user_data, child, TRUE); } /* * BonoboUIXml signal functions */ static void custom_widget_unparent (NodeInfo *info) { GtkContainer *container; g_return_if_fail (info != NULL); if (!info->widget) return; g_return_if_fail (GTK_IS_WIDGET (info->widget)); if (info->widget->parent) { container = GTK_CONTAINER (info->widget->parent); g_return_if_fail (container != NULL); gtk_container_remove (container, info->widget); } } static void sync_widget_set_node (BonoboUISync *sync, GtkWidget *widget, BonoboUINode *node) { GtkWidget *attached; if (!widget) return; g_return_if_fail (sync != NULL); bonobo_ui_engine_widget_attach_node (widget, node); attached = bonobo_ui_sync_get_attached (sync, widget, node); if (attached) bonobo_ui_engine_widget_attach_node (attached, node); } static void replace_override_fn (GObject *object, BonoboUINode *new, BonoboUINode *old, BonoboUIEngine *engine) { NodeInfo *info = bonobo_ui_xml_get_data (engine->priv->tree, new); NodeInfo *old_info = bonobo_ui_xml_get_data (engine->priv->tree, old); GtkWidget *old_widget; g_return_if_fail (info != NULL); g_return_if_fail (old_info != NULL); cmd_to_node_remove_node (engine, old, FALSE); cmd_to_node_add_node (engine, new, FALSE); /* g_warning ("Replace override on '%s' '%s' widget '%p'", bonobo_ui_node_get_name (old), bonobo_ui_node_get_attr (old, "name"), old_info->widget); info_dump_fn (old_info); info_dump_fn (info);*/ /* Copy useful stuff across & tranfer widget ref */ old_widget = old_info->widget; old_info->widget = NULL; info->type = old_info->type; info->widget = old_widget; /* Re-stamp the widget - get sync from old node actually in tree */ { BonoboUISync *sync = find_sync_for_node (engine, old); sync_widget_set_node (sync, info->widget, new); } /* Steal object reference */ info->object = old_info->object; old_info->object = CORBA_OBJECT_NIL; } static void prune_node (BonoboUIEngine *engine, BonoboUINode *node, gboolean save_custom) { NodeInfo *info; if (!node) return; info = bonobo_ui_xml_get_data (engine->priv->tree, node); if (info->widget) { gboolean save; save = NODE_IS_CUSTOM_WIDGET (info) && save_custom; if (!NODE_IS_ROOT_WIDGET (info) && !save) { BonoboUISync *sync; GtkWidget *item; item = info->widget; if ((sync = find_sync_for_node (engine, node))) { GtkWidget *attached; attached = bonobo_ui_sync_get_attached ( sync, item, node); if (attached) { #ifdef XML_MERGE_DEBUG fprintf (stderr, "Got '%p' attached to '%p' for node '%s'\n", attached, item, bonobo_ui_xml_make_path (node)); #endif item = attached; } } #ifdef XML_MERGE_DEBUG fprintf (stderr, "Destroy widget '%s' '%p'\n", bonobo_ui_xml_make_path (node), item); #endif gtk_widget_destroy (item); widget_unref (&info->widget); } else { if (save) custom_widget_unparent (info); /* printf ("leave widget '%s'\n", bonobo_ui_xml_make_path (node));*/ } } } /** * bonobo_ui_engine_prune_widget_info: * @engine: the engine * @node: the node * @save_custom: whether to save custom widgets * * This function destroys any widgets associated with * @node and all its children, if @save_custom, any widget * that is a custom widget ( such as a control ) will be * preserved. All widgets flagged ROOT are preserved always. **/ void bonobo_ui_engine_prune_widget_info (BonoboUIEngine *engine, BonoboUINode *node, gboolean save_custom) { BonoboUINode *l; if (!node) return; for (l = bonobo_ui_node_children (node); l; l = bonobo_ui_node_next (l)) bonobo_ui_engine_prune_widget_info ( engine, l, TRUE); prune_node (engine, node, save_custom); } static void override_fn (GObject *object, BonoboUINode *new, BonoboUINode *old, BonoboUIEngine *engine) { #ifdef XML_MERGE_DEBUG fprintf (stderr, "Override '%s'\n", bonobo_ui_xml_make_path (old)); #endif if (bonobo_ui_node_same_name (new, old)) { replace_override_fn (object, new, old, engine); } else { bonobo_ui_engine_prune_widget_info (engine, old, TRUE); cmd_to_node_remove_node (engine, old, FALSE); cmd_to_node_add_node (engine, new, FALSE); } } static void reinstate_fn (GObject *object, BonoboUINode *node, BonoboUIEngine *engine) { #ifdef XML_MERGE_DEBUG fprintf (stderr, "Reinstate '%s'\n", bonobo_ui_xml_make_path (node)); /* bonobo_ui_engine_dump (engine, stderr, "pre reinstate_fn");*/ #endif bonobo_ui_engine_prune_widget_info (engine, node, TRUE); cmd_to_node_add_node (engine, node, TRUE); } static void rename_fn (GObject *object, BonoboUINode *node, BonoboUIEngine *engine) { #ifdef XML_MERGE_DEBUG fprintf (stderr, "Rename '%s'\n", bonobo_ui_xml_make_path (node)); #endif } static void remove_fn (GObject *object, BonoboUINode *node, BonoboUIEngine *engine) { #ifdef XML_MERGE_DEBUG fprintf (stderr, "Remove on '%s'\n", bonobo_ui_xml_make_path (node)); /* bonobo_ui_engine_dump (engine, stderr, "before remove_fn");*/ #endif bonobo_ui_engine_prune_widget_info (engine, node, FALSE); if (bonobo_ui_node_parent (node) == engine->priv->tree->root) { BonoboUISync *sync = find_sync_for_node (engine, node); if (sync) bonobo_ui_sync_remove_root (sync, node); } cmd_to_node_remove_node (engine, node, TRUE); } /* * Sub Component management functions */ /* * This indirection is needed so we can serialize user settings * on a per component basis in future. */ typedef struct { char *name; Bonobo_Unknown object; } SubComponent; static SubComponent * sub_component_get (BonoboUIEngine *engine, const char *name) { SubComponent *component; GSList *l; g_return_val_if_fail (name != NULL, NULL); g_return_val_if_fail (BONOBO_IS_UI_ENGINE (engine), NULL); for (l = engine->priv->components; l; l = l->next) { component = l->data; if (!strcmp (component->name, name)) return component; } component = g_new (SubComponent, 1); component->name = g_strdup (name); component->object = CORBA_OBJECT_NIL; engine->priv->components = g_slist_prepend ( engine->priv->components, component); return component; } static SubComponent * sub_component_get_by_ref (BonoboUIEngine *engine, CORBA_Object obj) { GSList *l; SubComponent *component = NULL; CORBA_Environment ev; g_return_val_if_fail (obj != CORBA_OBJECT_NIL, NULL); g_return_val_if_fail (BONOBO_IS_UI_ENGINE (engine), NULL); CORBA_exception_init (&ev); for (l = engine->priv->components; l; l = l->next) { gboolean equiv; component = l->data; equiv = CORBA_Object_is_equivalent (component->object, obj, &ev); if (BONOBO_EX (&ev)) { /* Something very badly wrong */ component = NULL; break; } else if (equiv) break; } CORBA_exception_free (&ev); return component; } static Bonobo_Unknown sub_component_objref (BonoboUIEngine *engine, const char *name) { SubComponent *component = sub_component_get (engine, name); g_return_val_if_fail (component != NULL, CORBA_OBJECT_NIL); return component->object; } static void sub_components_dump (BonoboUIEngine *engine, FILE *out) { GSList *l; g_return_if_fail (engine != NULL); g_return_if_fail (engine->priv != NULL); fprintf (out, "Component mappings:\n"); for (l = engine->priv->components; l; l = l->next) { SubComponent *component = l->data; fprintf (out, "\t'%s' -> '%p'\n", component->name, component->object); } } /* Use the pointer identity instead of a costly compare */ static char * sub_component_cmp_name (BonoboUIEngine *engine, const char *name) { SubComponent *component; /* * NB. For overriding if we get a NULL we just update the * node without altering the id. */ if (!name || name [0] == '\0') { g_warning ("This should never happen"); return NULL; } component = sub_component_get (engine, name); g_return_val_if_fail (component != NULL, NULL); return component->name; } static void sub_component_destroy (BonoboUIEngine *engine, SubComponent *component) { engine->priv->components = g_slist_remove ( engine->priv->components, component); if (component) { g_free (component->name); if (component->object != CORBA_OBJECT_NIL) { CORBA_Environment ev; CORBA_exception_init (&ev); Bonobo_UIComponent_unsetContainer (component->object, &ev); CORBA_exception_free (&ev); bonobo_object_release_unref (component->object, NULL); } g_free (component); } } /** * bonobo_ui_engine_deregister_dead_components: * @engine: the engine * * Detect any components that have died and deregister * them - unmerging their UI elements. **/ void bonobo_ui_engine_deregister_dead_components (BonoboUIEngine *engine) { SubComponent *component; GSList *l, *next; CORBA_Environment ev; g_return_if_fail (BONOBO_IS_UI_ENGINE (engine)); for (l = engine->priv->components; l; l = next) { next = l->next; component = l->data; CORBA_exception_init (&ev); if (CORBA_Object_non_existent (component->object, &ev)) bonobo_ui_engine_deregister_component ( engine, component->name); CORBA_exception_free (&ev); } } /** * bonobo_ui_engine_get_component_names: * @engine: the engine * * Return value: the names of all registered components **/ GList * bonobo_ui_engine_get_component_names (BonoboUIEngine *engine) { GSList *l; GList *retval; g_return_val_if_fail (BONOBO_IS_UI_ENGINE (engine), NULL); retval = NULL; for (l = engine->priv->components; l; l = l->next) { SubComponent *component = l->data; retval = g_list_prepend (retval, component->name); } return retval; } /** * bonobo_ui_engine_get_component: * @engine: the engine * @name: the name of the component to fetch * * Return value: the component with name @name **/ Bonobo_Unknown bonobo_ui_engine_get_component (BonoboUIEngine *engine, const char *name) { GSList *l; g_return_val_if_fail (name != NULL, CORBA_OBJECT_NIL); g_return_val_if_fail (BONOBO_IS_UI_ENGINE (engine), CORBA_OBJECT_NIL); for (l = engine->priv->components; l; l = l->next) { SubComponent *component = l->data; if (!strcmp (component->name, name)) return component->object; } return CORBA_OBJECT_NIL; } /** * bonobo_ui_engine_register_component: * @engine: the engine * @name: a name to associate a component with * @component: the component * * Registers @component with @engine by @name. **/ void bonobo_ui_engine_register_component (BonoboUIEngine *engine, const char *name, Bonobo_Unknown component) { SubComponent *subcomp; g_return_if_fail (BONOBO_IS_UI_ENGINE (engine)); if ((subcomp = sub_component_get (engine, name))) { if (subcomp->object != CORBA_OBJECT_NIL) bonobo_object_release_unref (subcomp->object, NULL); } if (component != CORBA_OBJECT_NIL) subcomp->object = bonobo_object_dup_ref (component, NULL); else subcomp->object = CORBA_OBJECT_NIL; } /** * bonobo_ui_engine_deregister_component: * @engine: the engine * @name: the component name * * Deregisters component of @name from @engine. **/ void bonobo_ui_engine_deregister_component (BonoboUIEngine *engine, const char *name) { SubComponent *component; g_return_if_fail (BONOBO_IS_UI_ENGINE (engine)); if ((component = sub_component_get (engine, name))) { bonobo_ui_engine_xml_rm (engine, "/", component->name); sub_component_destroy (engine, component); } else g_warning ("Attempting to deregister non-registered " "component '%s'", name); } /** * bonobo_ui_engine_deregister_component_by_ref: * @engine: the engine * @ref: the ref. * * Deregisters component with reference @ref from @engine. **/ void bonobo_ui_engine_deregister_component_by_ref (BonoboUIEngine *engine, Bonobo_Unknown ref) { SubComponent *component; g_return_if_fail (BONOBO_IS_UI_ENGINE (engine)); if ((component = sub_component_get_by_ref (engine, ref))) { bonobo_ui_engine_xml_rm (engine, "/", component->name); sub_component_destroy (engine, component); } else g_warning ("Attempting to deregister non-registered " "component"); } /* * State update signal queueing functions */ typedef struct { BonoboUISync *sync; GtkWidget *widget; char *state; } StateUpdate; /* * Update the state later, but other aspects of the widget right now. * It's dangerous to update the state now because we can reenter if we * do that. */ static StateUpdate * state_update_new (BonoboUISync *sync, GtkWidget *widget, BonoboUINode *node) { char *state; const char *hidden, *sensitive; StateUpdate *su; g_return_val_if_fail (node != NULL, NULL); g_return_val_if_fail (GTK_IS_WIDGET (widget), NULL); hidden = bonobo_ui_node_get_attr_by_id (node, hidden_id); if (hidden && atoi (hidden)) gtk_widget_hide (widget); else gtk_widget_show (widget); sensitive = bonobo_ui_node_get_attr_by_id (node, sensitive_id); if (sensitive) gtk_widget_set_sensitive (widget, atoi (sensitive)); else gtk_widget_set_sensitive (widget, TRUE); if ((state = bonobo_ui_node_get_attr (node, "state"))) { su = g_new0 (StateUpdate, 1); su->sync = sync; su->widget = widget; g_object_ref (su->widget); su->state = state; } else su = NULL; return su; } static void state_update_destroy (StateUpdate *su) { if (su) { g_object_unref (su->widget); bonobo_ui_node_free_string (su->state); g_free (su); } } static void state_update_now (BonoboUIEngine *engine, BonoboUINode *node, GtkWidget *widget) { StateUpdate *su; BonoboUISync *sync; if (!widget) return; sync = find_sync_for_node (engine, node); g_return_if_fail (sync != NULL); su = state_update_new (sync, widget, node); if (su) { bonobo_ui_sync_state_update (su->sync, su->widget, su->state); state_update_destroy (su); } } /** * bonobo_ui_engine_xml_get_prop: * @engine: the engine * @path: the path into the tree * @prop: The property * * This function fetches the property @prop at node * at @path in the internal structure. * * Return value: a CORBA allocated string **/ CORBA_char * bonobo_ui_engine_xml_get_prop (BonoboUIEngine *engine, const char *path, const char *prop, gboolean *invalid_path) { const char *str; BonoboUINode *node; g_return_val_if_fail (BONOBO_IS_UI_ENGINE (engine), NULL); node = bonobo_ui_xml_get_path (engine->priv->tree, path); if (!node) { if (invalid_path) *invalid_path = TRUE; return NULL; } else { if (invalid_path) *invalid_path = FALSE; str = bonobo_ui_node_peek_attr (node, prop); if (!str) return NULL; return CORBA_string_dup (str); } } /** * bonobo_ui_engine_xml_get: * @engine: the engine * @path: the path into the tree * @node_only: just the node, or children too. * * This function fetches the node at @path in the * internal structure, and if @node_only dumps the * node to an XML string, otherwise it dumps it and * its children. * * Return value: the XML string - use CORBA_free to free **/ CORBA_char * bonobo_ui_engine_xml_get (BonoboUIEngine *engine, const char *path, gboolean node_only) { char *str; BonoboUINode *node; CORBA_char *ret; g_return_val_if_fail (BONOBO_IS_UI_ENGINE (engine), NULL); node = bonobo_ui_xml_get_path (engine->priv->tree, path); if (!node) return NULL; else { str = bonobo_ui_node_to_string (node, !node_only); ret = CORBA_string_dup (str); g_free (str); return ret; } } /** * bonobo_ui_engine_xml_node_exists: * @engine: the engine * @path: the path into the tree * * Return value: true if the node at @path exists **/ gboolean bonobo_ui_engine_xml_node_exists (BonoboUIEngine *engine, const char *path) { BonoboUINode *node; gboolean wildcard; g_return_val_if_fail (BONOBO_IS_UI_ENGINE (engine), FALSE); node = bonobo_ui_xml_get_path_wildcard ( engine->priv->tree, path, &wildcard); if (!wildcard) return (node != NULL); else return (node != NULL && bonobo_ui_node_children (node) != NULL); } /** * bonobo_ui_engine_object_set: * @engine: the engine * @path: the path into the tree * @object: an object reference * @ev: CORBA exception environment * * This associates a CORBA Object reference with a node * in the tree, most often this is done to insert a Control's * reference into a 'control' element. * * Return value: flag if success **/ BonoboUIError bonobo_ui_engine_object_set (BonoboUIEngine *engine, const char *path, Bonobo_Unknown object, CORBA_Environment *ev) { NodeInfo *info; BonoboUINode *node; g_return_val_if_fail (BONOBO_IS_UI_ENGINE (engine), BONOBO_UI_ERROR_BAD_PARAM); node = bonobo_ui_xml_get_path (engine->priv->tree, path); if (!node) return BONOBO_UI_ERROR_INVALID_PATH; info = bonobo_ui_xml_get_data (engine->priv->tree, node); if (info->object != CORBA_OBJECT_NIL) { bonobo_object_release_unref (info->object, ev); if (info->widget) gtk_widget_destroy (info->widget); widget_unref (&info->widget); } dbgprintf ("** Setting object %p on info %p\n", object, info); info->object = bonobo_object_dup_ref (object, ev); bonobo_ui_xml_set_dirty (engine->priv->tree, node); /* fprintf (stderr, "Object set '%s'\n", path); bonobo_ui_engine_dump (win, "Before object set updatew");*/ bonobo_ui_engine_update (engine); /* bonobo_ui_engine_dump (win, "After object set updatew");*/ return BONOBO_UI_ERROR_OK; } void bonobo_ui_engine_widget_set (BonoboUIEngine *engine, const char *path, GtkWidget *widget) { NodeInfo *info; GtkWidget *custom_widget; BonoboUINode *node; BonoboUISync *sync; g_return_if_fail (widget != NULL); bonobo_ui_engine_freeze (engine); bonobo_ui_engine_object_set ( engine, path, CORBA_OBJECT_NIL, NULL); node = bonobo_ui_engine_get_path (engine, path); g_return_if_fail (node != NULL); g_return_if_fail (!strcmp (bonobo_ui_node_get_name (node), "control")); sync = find_sync_for_node (engine, node); custom_widget = bonobo_ui_sync_wrap_widget (sync, widget); if (custom_widget) { info = bonobo_ui_xml_get_data (engine->priv->tree, node); info->widget = g_object_ref_sink (custom_widget); bonobo_ui_engine_stamp_custom (engine, node); } bonobo_ui_engine_thaw (engine); } /** * bonobo_ui_engine_object_get: * @engine: the engine * @path: the path into the tree * @object: an pointer to an object reference * @ev: CORBA exception environment * * This extracts a CORBA object reference associated with * the node at @path in @engine, and returns it in the * reference pointed to by @object. * * Return value: flag if success **/ BonoboUIError bonobo_ui_engine_object_get (BonoboUIEngine *engine, const char *path, Bonobo_Unknown *object, CORBA_Environment *ev) { NodeInfo *info; BonoboUINode *node; g_return_val_if_fail (object != NULL, BONOBO_UI_ERROR_BAD_PARAM); g_return_val_if_fail (BONOBO_IS_UI_ENGINE (engine), BONOBO_UI_ERROR_BAD_PARAM); *object = CORBA_OBJECT_NIL; node = bonobo_ui_xml_get_path (engine->priv->tree, path); if (!node) return BONOBO_UI_ERROR_INVALID_PATH; info = bonobo_ui_xml_get_data (engine->priv->tree, node); if (info->object != CORBA_OBJECT_NIL) *object = bonobo_object_dup_ref (info->object, ev); return BONOBO_UI_ERROR_OK; } static int find_last_slash (const char *path) { int i, last_slash = 0; for (i = 0; path [i]; i++) { if (path [i] == '/') last_slash = i; } return last_slash; } /** * bonobo_ui_engine_xml_set_prop: * @engine: the engine * @path: the path into the tree * @property: The property to set * @value: The new value of the property * @component: the component ID associated with the nodes. * * This function sets the property of a node in the internal tree * representation at @path in @engine. * * Return value: flag on error **/ BonoboUIError bonobo_ui_engine_xml_set_prop (BonoboUIEngine *engine, const char *path, const char *property, const char *value, const char *component) { char *cmp_name; const char *old_value; BonoboUINode *original; NodeInfo *info; g_return_val_if_fail (BONOBO_IS_UI_ENGINE (engine), BONOBO_UI_ERROR_BAD_PARAM); original = bonobo_ui_engine_get_path (engine, path); if (!original) return BONOBO_UI_ERROR_INVALID_PATH; info = bonobo_ui_xml_get_data (engine->priv->tree, original); cmp_name = sub_component_cmp_name (engine, component); if (info->parent.id == cmp_name) { old_value = bonobo_ui_node_peek_attr (original, property); if (!old_value && !value) return BONOBO_UI_ERROR_OK; else if (old_value && value && !strcmp (old_value, value)) return BONOBO_UI_ERROR_OK; else { bonobo_ui_node_set_attr (original, property, value); bonobo_ui_xml_set_dirty (engine->priv->tree, original); bonobo_ui_engine_update (engine); } } else { int last_slash; char *parent_path; BonoboUINode *copy; copy = bonobo_ui_node_new ( bonobo_ui_node_get_name (original)); bonobo_ui_node_copy_attrs (original, copy); bonobo_ui_node_set_attr (copy, property, value); last_slash = find_last_slash (path); parent_path = g_alloca (last_slash + 1); memcpy (parent_path, path, last_slash); parent_path [last_slash] = '\0'; bonobo_ui_xml_merge ( engine->priv->tree, parent_path, copy, cmp_name); bonobo_ui_engine_update (engine); } return BONOBO_UI_ERROR_OK; } /** * bonobo_ui_engine_xml_merge_tree: * @engine: the engine * @path: the path into the tree * @tree: the nodes * @component: the component ID associated with these nodes. * * This function merges the XML @tree into the internal tree * representation as children of the node at @path in @engine. * * Return value: flag on error **/ BonoboUIError bonobo_ui_engine_xml_merge_tree (BonoboUIEngine *engine, const char *path, BonoboUINode *tree, const char *component) { BonoboUIError err; g_return_val_if_fail (BONOBO_IS_UI_ENGINE (engine), BONOBO_UI_ERROR_BAD_PARAM); if (!tree || !bonobo_ui_node_get_name (tree)) return BONOBO_UI_ERROR_OK; if (!tree) { g_warning ("Stripped tree to nothing"); return BONOBO_UI_ERROR_OK; } /* * Because peer to peer merging makes the code hard, and * paths non-inituitive and since we want to merge root * elements as peers to save lots of redundant CORBA calls * we special case root. */ if (bonobo_ui_node_has_name (tree, "Root")) { err = bonobo_ui_xml_merge ( engine->priv->tree, path, bonobo_ui_node_children (tree), sub_component_cmp_name (engine, component)); bonobo_ui_node_free (tree); } else err = bonobo_ui_xml_merge ( engine->priv->tree, path, tree, sub_component_cmp_name (engine, component)); #ifdef XML_MERGE_DEBUG /* bonobo_ui_engine_dump (engine, stderr, "after merge");*/ #endif bonobo_ui_engine_update (engine); return err; } /** * bonobo_ui_engine_xml_rm: * @engine: the engine * @path: the path into the tree * @by_component: whether to remove elements from only a * specific component * * Remove a chunk of the xml tree pointed at by @path * in @engine, if @by_component then only remove items * associated with that component - possibly revealing * other overridden items. * * Return value: flag on error **/ BonoboUIError bonobo_ui_engine_xml_rm (BonoboUIEngine *engine, const char *path, const char *by_component) { BonoboUIError err; g_return_val_if_fail (BONOBO_IS_UI_ENGINE (engine), BONOBO_UI_ERROR_BAD_PARAM); err = bonobo_ui_xml_rm ( engine->priv->tree, path, sub_component_cmp_name (engine, by_component)); bonobo_ui_engine_update (engine); return err; } /** * bonobo_ui_engine_set_ui_container: * @engine: the engine * @ui_container: a UI Container bonobo object. * * Associates a given UI Container with this BonoboUIEngine. **/ void bonobo_ui_engine_set_ui_container (BonoboUIEngine *engine, BonoboUIContainer *ui_container) { BonoboUIContainer *old_container; g_return_if_fail (BONOBO_IS_UI_ENGINE (engine)); if (engine->priv->container == ui_container) return; g_return_if_fail (!ui_container || BONOBO_IS_UI_CONTAINER (ui_container)); old_container = engine->priv->container; if (ui_container) engine->priv->container = BONOBO_UI_CONTAINER ( bonobo_object_ref (BONOBO_OBJECT (ui_container))); else engine->priv->container = NULL; if (old_container) { bonobo_ui_container_set_engine (old_container, NULL); bonobo_object_unref (BONOBO_OBJECT (old_container)); } if (ui_container) bonobo_ui_container_set_engine (ui_container, engine); } /** * bonobo_ui_engine_get_ui_container: * @engine: the engine * * Fetches the associated UI Container * * Return value: the associated UI container. **/ BonoboUIContainer * bonobo_ui_engine_get_ui_container (BonoboUIEngine *engine) { g_return_val_if_fail (BONOBO_IS_UI_ENGINE (engine), NULL); return engine->priv->container; } static void real_exec_verb (BonoboUIEngine *engine, const char *component_name, const char *verb) { char *verb_cpy; Bonobo_UIComponent component; g_return_if_fail (verb != NULL); g_return_if_fail (component_name != NULL); g_return_if_fail (BONOBO_IS_UI_ENGINE (engine)); if (bonobo_ui_engine_inhibit_events > 0) return; g_object_ref (engine); component = sub_component_objref (engine, component_name); verb_cpy = g_strdup (verb); if (component != CORBA_OBJECT_NIL) { CORBA_Environment ev; CORBA_exception_init (&ev); CORBA_Object_duplicate (component, &ev); Bonobo_UIComponent_execVerb ( component, verb_cpy, &ev); if (engine->priv->container) bonobo_object_check_env ( BONOBO_OBJECT (engine->priv->container), component, &ev); if (BONOBO_EX (&ev)) g_warning ("Exception executing verb '%s'" "major %d, %s", verb_cpy, ev._major, BONOBO_EX_REPOID (&ev)); CORBA_Object_release (component, &ev); CORBA_exception_free (&ev); } g_free (verb_cpy); g_object_unref (engine); } static void impl_emit_verb_on (BonoboUIEngine *engine, BonoboUINode *node) { const char *verb; const char *sensitive; BonoboUINode *cmd_node; BonoboUIXmlData *data; g_return_if_fail (node != NULL); data = bonobo_ui_xml_get_data (NULL, node); g_return_if_fail (data != NULL); verb = node_get_id (node); if (!verb) return; if ((cmd_node = bonobo_ui_engine_get_cmd_node (engine, node)) && (sensitive = bonobo_ui_node_get_attr_by_id (cmd_node, sensitive_id)) && !atoi (sensitive)) return; /* Builtins */ if (!strcmp (verb, "BonoboCustomize")) bonobo_ui_engine_config_configure (engine->priv->config); else if (!strcmp (verb, "BonoboUIDump")) bonobo_ui_engine_dump (engine, stderr, "from verb"); else { if (!data->id) { g_warning ("Weird; no ID on verb '%s'", verb); return; } real_exec_verb (engine, data->id, verb); } } static BonoboUINode * cmd_get_node (BonoboUIEngine *engine, BonoboUINode *from_node) { char *path; BonoboUINode *ret; const char *cmd_name; g_return_val_if_fail (engine != NULL, NULL); if (!from_node) return NULL; if (!(cmd_name = node_get_id (from_node))) return NULL; path = g_strconcat ("/commands/", cmd_name, NULL); ret = bonobo_ui_xml_get_path (engine->priv->tree, path); if (!ret) { BonoboUIXmlData *data_from; BonoboUINode *commands; BonoboUINode *node; commands = bonobo_ui_node_new ("commands"); node = bonobo_ui_node_new_child (commands, "cmd"); bonobo_ui_node_set_attr (node, "name", cmd_name); data_from = bonobo_ui_xml_get_data ( engine->priv->tree, from_node); bonobo_ui_xml_merge ( engine->priv->tree, "/", commands, data_from->id); ret = bonobo_ui_xml_get_path ( engine->priv->tree, path); g_assert (ret != NULL); } g_free (path); return ret; } static GSList * make_updates_for_command (BonoboUIEngine *engine, GSList *list, BonoboUINode *state, const char *search_id) { const GSList *l; l = cmd_to_nodes (engine, search_id); if (!l) return list; /* printf ("Update cmd state if %s == %s on node '%s'\n", search_id, id, bonobo_ui_xml_make_path (search));*/ for (; l; l = l->next) { NodeInfo *info = bonobo_ui_xml_get_data ( engine->priv->tree, l->data); if (info->widget) { BonoboUISync *sync; StateUpdate *su; sync = find_sync_for_node (engine, l->data); g_return_val_if_fail (sync != NULL, list); su = state_update_new (sync, info->widget, state); if (su) list = g_slist_prepend (list, su); } } return list; } static void execute_state_updates (GSList *updates) { GSList *l; bonobo_ui_engine_inhibit_events ++; for (l = updates; l; l = l->next) { StateUpdate *su = l->data; bonobo_ui_sync_state_update (su->sync, su->widget, su->state); } for (l = updates; l; l = l->next) state_update_destroy (l->data); g_slist_free (updates); bonobo_ui_engine_inhibit_events --; } /* * set_cmd_attr: * Syncs cmd / widgets on events [ event flag set ] * or helps evil people who set state on menu / * toolbar items instead of on the associated verb / id. **/ static void set_cmd_attr (BonoboUIEngine *engine, BonoboUINode *node, GQuark prop, const char *value, gboolean event) { BonoboUINode *cmd_node; g_return_if_fail (node != NULL); g_return_if_fail (value != NULL); g_return_if_fail (BONOBO_IS_UI_ENGINE (engine)); if (!(cmd_node = cmd_get_node (engine, node))) { /* A non cmd widget */ NodeInfo *info = bonobo_ui_xml_get_data ( engine->priv->tree, node); if (bonobo_ui_node_try_set_attr (node, prop, value)) state_update_now (engine, node, info->widget); return; } #ifdef STATE_SYNC_DEBUG fprintf (stderr, "Set '%s' : '%s' to '%s'", bonobo_ui_node_peek_attr (cmd_node, "name"), g_quark_to_string (prop), value); #endif if (!bonobo_ui_node_try_set_attr (cmd_node, prop, value)) return; if (event) { GSList *updates; const char *cmd_name; cmd_name = bonobo_ui_node_peek_attr (cmd_node, "name"); updates = make_updates_for_command ( engine, NULL, cmd_node, cmd_name); execute_state_updates (updates); } else { BonoboUIXmlData *data = bonobo_ui_xml_get_data ( engine->priv->tree, cmd_node); data->dirty = TRUE; } } static void real_emit_ui_event (BonoboUIEngine *engine, const char *component_name, const char *id, int type, const char *new_state) { Bonobo_UIComponent component; g_return_if_fail (id != NULL); g_return_if_fail (new_state != NULL); if (!component_name) /* Auto-created entry, no-one can listen to it */ return; if (bonobo_ui_engine_inhibit_events > 0) return; g_object_ref (engine); component = sub_component_objref (engine, component_name); if (component != CORBA_OBJECT_NIL) { CORBA_Environment ev; CORBA_exception_init (&ev); Bonobo_UIComponent_uiEvent ( component, id, type, new_state, &ev); if (engine->priv->container) bonobo_object_check_env ( BONOBO_OBJECT (engine->priv->container), component, &ev); if (BONOBO_EX (&ev)) g_warning ("Exception emitting state change to %d '%s' '%s'" "major %d, %s", type, id, new_state, ev._major, BONOBO_EX_REPOID (&ev)); CORBA_exception_free (&ev); } g_object_unref (engine); } static void impl_emit_event_on (BonoboUIEngine *engine, BonoboUINode *node, const char *state) { const char *id; const char *sensitive; BonoboUINode *cmd_node; BonoboUIXmlData *data; char *component_id, *real_id, *real_state; g_return_if_fail (node != NULL); if (!(id = node_get_id (node))) return; if ((cmd_node = bonobo_ui_engine_get_cmd_node (engine, node)) && (sensitive = bonobo_ui_node_get_attr_by_id (cmd_node, sensitive_id)) && !atoi (sensitive)) return; data = bonobo_ui_xml_get_data (NULL, node); g_return_if_fail (data != NULL); g_object_ref (engine); component_id = g_strdup (data->id); real_id = g_strdup (id); real_state = g_strdup (state); /* This could invoke a CORBA method that might de-register the component */ set_cmd_attr (engine, node, state_id, state, TRUE); real_emit_ui_event (engine, component_id, real_id, Bonobo_UIComponent_STATE_CHANGED, real_state); g_object_unref (engine); g_free (real_state); g_free (real_id); g_free (component_id); } void bonobo_ui_engine_dispose (BonoboUIEngine *engine) { GSList *l; BonoboUIEnginePrivate *priv = engine->priv; dbgprintf ("bonobo_ui_engine_dispose %p\n", engine); bonobo_ui_engine_freeze (engine); while (priv->components) sub_component_destroy ( engine, priv->components->data); bonobo_ui_engine_set_ui_container (engine, NULL); /* Remove the engine from the configuration notify list */ bonobo_ui_preferences_remove_engine (engine); if (priv->config) { g_object_unref (priv->config); priv->config = NULL; } if (priv->tree) { g_object_unref (priv->tree); priv->tree = NULL; } g_hash_table_foreach_remove ( priv->cmd_to_node, cmd_to_node_clear_hash, NULL); for (l = priv->syncs; l; l = l->next) g_object_unref (l->data); g_slist_free (priv->syncs); priv->syncs = NULL; bonobo_ui_engine_thaw (engine); } static void impl_dispose (GObject *object) { bonobo_ui_engine_dispose (BONOBO_UI_ENGINE (object)); G_OBJECT_CLASS (parent_class)->dispose (object); } static void impl_finalize (GObject *object) { BonoboUIEngine *engine; dbgprintf ("bonobo_ui_engine_finalize %p\n", object); engine = BONOBO_UI_ENGINE (object); g_hash_table_destroy (engine->priv->cmd_to_node); g_free (engine->priv); G_OBJECT_CLASS (parent_class)->finalize (object); } static void class_init (BonoboUIEngineClass *engine_class) { GObjectClass *object_class; parent_class = g_type_class_peek_parent (engine_class); id_id = g_quark_from_static_string ("id"); cmd_id = g_quark_from_static_string ("cmd"); verb_id = g_quark_from_static_string ("verb"); name_id = g_quark_from_static_string ("name"); state_id = g_quark_from_static_string ("state"); hidden_id = g_quark_from_static_string ("hidden"); commands_id = g_quark_from_static_string ("commands"); sensitive_id = g_quark_from_static_string ("sensitive"); object_class = G_OBJECT_CLASS (engine_class); object_class->dispose = impl_dispose; object_class->finalize = impl_finalize; engine_class->emit_verb_on = impl_emit_verb_on; engine_class->emit_event_on = impl_emit_event_on; signals [ADD_HINT] = g_signal_new ("add_hint", G_TYPE_FROM_CLASS (object_class), G_SIGNAL_RUN_LAST, G_STRUCT_OFFSET (BonoboUIEngineClass, add_hint), NULL, NULL, g_cclosure_marshal_VOID__STRING, G_TYPE_NONE, 1, G_TYPE_STRING); signals [REMOVE_HINT] = g_signal_new ("remove_hint", G_TYPE_FROM_CLASS (object_class), G_SIGNAL_RUN_LAST, G_STRUCT_OFFSET (BonoboUIEngineClass, remove_hint), NULL, NULL, g_cclosure_marshal_VOID__VOID, G_TYPE_NONE, 0); signals [EMIT_VERB_ON] = g_signal_new ("emit_verb_on", G_TYPE_FROM_CLASS (object_class), G_SIGNAL_RUN_LAST, G_STRUCT_OFFSET (BonoboUIEngineClass, emit_verb_on), NULL, NULL, g_cclosure_marshal_VOID__POINTER, G_TYPE_NONE, 1, G_TYPE_POINTER); signals [EMIT_EVENT_ON] = g_signal_new ("emit_event_on", G_TYPE_FROM_CLASS (object_class), G_SIGNAL_RUN_LAST, G_STRUCT_OFFSET (BonoboUIEngineClass, emit_event_on), NULL, NULL, bonobo_ui_marshal_VOID__POINTER_STRING, G_TYPE_NONE, 2, G_TYPE_POINTER, G_TYPE_STRING); signals [DESTROY] = g_signal_new ("destroy", G_TYPE_FROM_CLASS (object_class), G_SIGNAL_RUN_LAST, G_STRUCT_OFFSET (BonoboUIEngineClass, destroy), NULL, NULL, g_cclosure_marshal_VOID__VOID, G_TYPE_NONE, 0); } static void init (BonoboUIEngine *engine) { BonoboUIEnginePrivate *priv; priv = g_new0 (BonoboUIEnginePrivate, 1); engine->priv = priv; priv->cmd_to_node = g_hash_table_new ( g_str_hash, g_str_equal); } GType bonobo_ui_engine_get_type (void) { static GType type = 0; if (type == 0) { GTypeInfo info = { sizeof (BonoboUIEngineClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) class_init, NULL, /* class_finalize */ NULL, /* class_data */ sizeof (BonoboUIEngine), 0, /* n_preallocs */ (GInstanceInitFunc) init }; type = g_type_register_static (PARENT_TYPE, "BonoboUIEngine", &info, 0); } return type; } static void add_node (BonoboUINode *parent, const char *name) { BonoboUINode *node = bonobo_ui_node_new (name); bonobo_ui_node_add_child (parent, node); } static void build_skeleton (BonoboUIXml *xml) { g_return_if_fail (BONOBO_IS_UI_XML (xml)); add_node (xml->root, "keybindings"); add_node (xml->root, "commands"); } /** * bonobo_ui_engine_construct: * @engine: the engine. * @view: the view [ often a BonoboWindow ] * * Construct a new bonobo_ui_engine * * Return value: the constructed engine. **/ BonoboUIEngine * bonobo_ui_engine_construct (BonoboUIEngine *engine, GObject *view) { GtkWindow *opt_parent; BonoboUIEnginePrivate *priv; g_return_val_if_fail (BONOBO_IS_UI_ENGINE (engine), NULL); priv = engine->priv; priv->view = view; priv->tree = bonobo_ui_xml_new ( NULL, info_new_fn, info_free_fn, info_dump_fn, add_node_fn, engine); if (GTK_IS_WINDOW (view)) opt_parent = GTK_WINDOW (view); else opt_parent = NULL; priv->config = bonobo_ui_engine_config_new (engine, opt_parent); build_skeleton (priv->tree); if (g_getenv ("BONOBO_DEBUG")) add_debug_menu (engine); g_signal_connect (priv->tree, "override", G_CALLBACK (override_fn), engine); g_signal_connect (priv->tree, "replace_override", G_CALLBACK (replace_override_fn), engine); g_signal_connect (priv->tree, "reinstate", G_CALLBACK (reinstate_fn), engine); g_signal_connect (priv->tree, "rename", G_CALLBACK (rename_fn), engine); g_signal_connect (priv->tree, "remove", G_CALLBACK (remove_fn), engine); /* Add the engine to the configuration notify list */ bonobo_ui_preferences_add_engine (engine); return engine; } /** * bonobo_ui_engine_new: * @void: * * Create a new #BonoboUIEngine structure * * Return value: the new UI Engine. **/ BonoboUIEngine * bonobo_ui_engine_new (GObject *view) { BonoboUIEngine *engine = g_object_new (BONOBO_TYPE_UI_ENGINE, NULL); return bonobo_ui_engine_construct (engine, view); } /** * bonobo_ui_engine_get_view: * @engine: the engine * * This returns the associated view, often a BonoboWindow * * Return value: the view widget. **/ GObject * bonobo_ui_engine_get_view (BonoboUIEngine *engine) { g_return_val_if_fail (BONOBO_IS_UI_ENGINE (engine), NULL); return engine->priv->view; } static void hide_all_widgets (BonoboUIEngine *engine, BonoboUINode *node) { NodeInfo *info; BonoboUINode *child; info = bonobo_ui_xml_get_data (engine->priv->tree, node); if (info->widget) gtk_widget_hide (info->widget); for (child = bonobo_ui_node_children (node); child != NULL; child = bonobo_ui_node_next (child)) hide_all_widgets (engine, child); } static gboolean contains_visible_widget (BonoboUIEngine *engine, BonoboUINode *node) { BonoboUINode *child; NodeInfo *info; for (child = bonobo_ui_node_children (node); child != NULL; child = bonobo_ui_node_next (child)) { info = bonobo_ui_xml_get_data (engine->priv->tree, child); if (info->widget && GTK_WIDGET_VISIBLE (info->widget)) return TRUE; if (contains_visible_widget (engine, child)) return TRUE; } return FALSE; } static void hide_placeholder_if_empty_or_hidden (BonoboUIEngine *engine, BonoboUINode *node) { NodeInfo *info; const char *txt; gboolean hide_placeholder_and_contents; gboolean has_visible_separator; txt = bonobo_ui_node_get_attr_by_id (node, hidden_id); hide_placeholder_and_contents = txt && atoi (txt); info = bonobo_ui_xml_get_data (engine->priv->tree, node); has_visible_separator = info && info->widget && GTK_WIDGET_VISIBLE (info->widget); if (hide_placeholder_and_contents) hide_all_widgets (engine, node); else if (has_visible_separator && !contains_visible_widget (engine, node)) gtk_widget_hide (info->widget); } static gboolean node_is_dirty (BonoboUIEngine *engine, BonoboUINode *node) { BonoboUIXmlData *data = bonobo_ui_xml_get_data ( engine->priv->tree, node); if (!data) return TRUE; else return data->dirty; } static void bonobo_ui_engine_sync (BonoboUIEngine *engine, BonoboUISync *sync, BonoboUINode *node, GtkWidget *parent, GList **widgets, int *pos) { BonoboUINode *a; GList *b, *nextb; #ifdef WIDGET_SYNC_DEBUG printf ("In sync to pos %d with widgets:\n", *pos); for (b = *widgets; b; b = b->next) { BonoboUINode *node = bonobo_ui_engine_widget_get_node (b->data); if (node) printf ("\t'%s'\n", bonobo_ui_xml_make_path (node)); else printf ("\tno node ptr\n"); } #endif b = *widgets; for (a = node; a; b = nextb) { gboolean same; nextb = b ? b->next : NULL; if (b && bonobo_ui_sync_ignore_widget (sync, b->data)) { (*pos)++; continue; } same = (b != NULL) && (bonobo_ui_engine_widget_get_node (b->data) == a); #ifdef WIDGET_SYNC_DEBUG printf ("Node '%s(%p)' Dirty '%d' same %d on b %d widget %p\n", bonobo_ui_xml_make_path (a), a, node_is_dirty (engine, a), same, b != NULL, b?b->data:NULL); #endif if (node_is_dirty (engine, a)) { BonoboUISyncStateFn ss; BonoboUISyncBuildFn bw; BonoboUINode *cmd_node; if (bonobo_ui_node_has_name (a, "placeholder")) { ss = bonobo_ui_sync_state_placeholder; bw = bonobo_ui_sync_build_placeholder; } else { ss = bonobo_ui_sync_state; bw = bonobo_ui_sync_build; } cmd_node = bonobo_ui_engine_get_cmd_node (engine, a); if (same) { #ifdef WIDGET_SYNC_DEBUG printf ("-- just syncing state --\n"); #endif ss (sync, a, cmd_node, b->data, parent); (*pos)++; } else { NodeInfo *info; GtkWidget *widget; info = bonobo_ui_xml_get_data ( engine->priv->tree, a); #ifdef WIDGET_SYNC_DEBUG printf ("re-building widget\n"); #endif widget = bw (sync, a, cmd_node, pos, parent); #ifdef WIDGET_SYNC_DEBUG printf ("Built item '%p' '%s' and inserted at '%d'\n", widget, bonobo_ui_node_get_name (a), *pos); #endif info->widget = widget ? g_object_ref (widget) : NULL; if (widget) { bonobo_ui_engine_widget_set_node ( sync->engine, widget, a); ss (sync, a, cmd_node, widget, parent); } #ifdef WIDGET_SYNC_DEBUG else printf ("Failed to build widget\n"); #endif nextb = b; /* NB. don't advance 'b' */ } } else { if (!same) { BonoboUINode *bn = b ? bonobo_ui_engine_widget_get_node (b->data) : NULL; NodeInfo *info; info = bonobo_ui_xml_get_data (engine->priv->tree, a); if (!info->widget) { /* * A control that hasn't been filled out yet * and thus has no widget in 'b' list but has * a node in 'a' list, thus we want to stick * on this 'b' node until a more favorable 'a' */ nextb = b; (*pos)--; g_assert (info->type | CUSTOM_WIDGET); #ifdef WIDGET_SYNC_DEBUG printf ("not dirty & not same, but has no widget\n"); #endif } else { g_warning ("non dirty node, but widget mismatch " "a: '%s:%s', b: '%s:%s' '%p'", bonobo_ui_node_get_name (a) ? bonobo_ui_node_get_name (a) : "NULL", bonobo_ui_node_peek_attr (a, "name") ? bonobo_ui_node_peek_attr (a, "name") : "NULL", bn ? (bonobo_ui_node_get_name (bn) ? bonobo_ui_node_get_name (bn) : "NULL") : "NULL", bn ? (bonobo_ui_node_peek_attr (bn, "name") ? bonobo_ui_node_peek_attr (bn, "name") : "NULL" ) : "NULL", info->widget); } } #ifdef WIDGET_SYNC_DEBUG else printf ("not dirty & same: no change\n"); #endif (*pos)++; } if (bonobo_ui_node_has_name (a, "placeholder")) { bonobo_ui_engine_sync ( engine, sync, bonobo_ui_node_children (a), parent, &nextb, pos); hide_placeholder_if_empty_or_hidden (engine, a); } a = bonobo_ui_node_next (a); } while (b && bonobo_ui_sync_ignore_widget (sync, b->data)) b = b->next; *widgets = b; } static void check_excess_widgets (BonoboUISync *sync, GList *wptr) { if (wptr) { GList *b; int warned = 0; for (b = wptr; b; b = b->next) { BonoboUINode *node; if (bonobo_ui_sync_ignore_widget (sync, b->data)) continue; if (!warned++) g_warning ("Excess widgets at the " "end of the container; weird"); node = bonobo_ui_engine_widget_get_node (b->data); g_message ("Widget type '%s' with node: '%s'", b->data ? G_OBJECT_CLASS_NAME (G_OBJECT_GET_CLASS (b->data)) : "NULL", node ? bonobo_ui_xml_make_path (node) : "NULL"); } } } static void do_sync (BonoboUIEngine *engine, BonoboUISync *sync, BonoboUINode *node) { #ifdef WIDGET_SYNC_DEBUG fprintf (stderr, "Syncing ('%s') on node '%s'\n", G_OBJECT_CLASS_NAME (sync), bonobo_ui_xml_make_path (node)); #endif bonobo_ui_node_ref (node); if (bonobo_ui_node_parent (node) == engine->priv->tree->root) bonobo_ui_sync_update_root (sync, node); /* FIXME: it would be nice to sub-class again to get rid of this */ if (bonobo_ui_sync_has_widgets (sync)) { int pos; GList *widgets, *wptr; wptr = widgets = bonobo_ui_sync_get_widgets (sync, node); pos = 0; bonobo_ui_engine_sync ( engine, sync, bonobo_ui_node_children (node), bonobo_ui_engine_node_get_widget (engine, node), &wptr, &pos); check_excess_widgets (sync, wptr); g_list_free (widgets); } bonobo_ui_xml_clean (engine->priv->tree, node); bonobo_ui_node_unref (node); } static void seek_dirty (BonoboUIEngine *engine, BonoboUISync *sync, BonoboUINode *node) { BonoboUIXmlData *info; if (!node) return; info = bonobo_ui_xml_get_data (engine->priv->tree, node); if (info->dirty) { /* Rebuild tree from here down */ do_sync (engine, sync, node); } else { BonoboUINode *l; for (l = bonobo_ui_node_children (node); l; l = bonobo_ui_node_next (l)) seek_dirty (engine, sync, l); } } /** * bonobo_ui_engine_update_node: * @engine: the engine * @node: the node to start updating. * * This function is used to write recursive synchronizers * and is intended only for internal / privilaged use. * * By the time this returns, due to re-enterancy, node * points at undefined memory. **/ void bonobo_ui_engine_update_node (BonoboUIEngine *engine, BonoboUISync *sync, BonoboUINode *node) { if (sync) { if (bonobo_ui_sync_is_recursive (sync)) seek_dirty (engine, sync, node); else do_sync (engine, sync, node); } #ifdef WIDGET_SYNC_DEBUG else if (!bonobo_ui_node_has_name (node, "commands")) g_warning ("No syncer for '%s'", bonobo_ui_xml_make_path (node)); #endif } static void dirty_by_cmd (BonoboUIEngine *engine, const char *search_id) { const GSList *l; g_return_if_fail (search_id != NULL); /* printf ("Dirty node by cmd if %s == %s on node '%s'\n", search_id, id, bonobo_ui_xml_make_path (search));*/ for (l = cmd_to_nodes (engine, search_id); l; l = l->next) bonobo_ui_xml_set_dirty (engine->priv->tree, l->data); } static void move_dirt_cmd_to_widget (BonoboUIEngine *engine) { BonoboUINode *cmds, *l; cmds = bonobo_ui_xml_get_path (engine->priv->tree, "/commands"); if (!cmds) return; for (l = cmds->children; l; l = l->next) { BonoboUIXmlData *data = bonobo_ui_xml_get_data ( engine->priv->tree, l); if (data->dirty) { const char *cmd_name; cmd_name = bonobo_ui_node_get_attr_by_id (l, name_id); if (!cmd_name) g_warning ("Serious error, cmd without name"); else dirty_by_cmd (engine, cmd_name); } } } static void update_commands_state (BonoboUIEngine *engine) { BonoboUINode *cmds, *l; GSList *updates = NULL; cmds = bonobo_ui_xml_get_path (engine->priv->tree, "/commands"); /* g_warning ("Update commands state!"); bonobo_ui_engine_dump (priv->win, "before update");*/ if (!cmds) return; for (l = cmds->children; l; l = l->next) { BonoboUIXmlData *data = bonobo_ui_xml_get_data ( engine->priv->tree, l); const char *cmd_name; cmd_name = bonobo_ui_node_get_attr_by_id (l, name_id); if (!cmd_name) g_warning ("Internal error; cmd with no id"); else if (data->dirty) updates = make_updates_for_command ( engine, updates, l, cmd_name); data->dirty = FALSE; } execute_state_updates (updates); } static void process_state_updates (BonoboUIEngine *engine) { while (engine->priv->state_updates) { StateUpdate *su = engine->priv->state_updates->data; engine->priv->state_updates = g_slist_remove ( engine->priv->state_updates, su); bonobo_ui_sync_state_update ( su->sync, su->widget, su->state); state_update_destroy (su); } } /** * bonobo_ui_engine_update: * @engine: the engine. * * This function is called to update the entire * UI model synchronizing any changes in it with * the widget tree where neccessary **/ void bonobo_ui_engine_update (BonoboUIEngine *engine) { BonoboUINode *node; GSList *l; g_return_if_fail (BONOBO_IS_UI_ENGINE (engine)); if (engine->priv->frozen || !engine->priv->tree) return; ACCESS ("Bonobo: UI engine update - start"); for (l = engine->priv->syncs; l; l = l->next) bonobo_ui_sync_stamp_root (l->data); ACCESS ("Bonobo: UI engine update - after stamp"); move_dirt_cmd_to_widget (engine); ACCESS ("Bonobo: UI engine update - after dirt transfer"); /* bonobo_ui_engine_dump (priv->win, "before update");*/ for (node = bonobo_ui_node_children (engine->priv->tree->root); node; node = bonobo_ui_node_next (node)) { BonoboUISync *sync; if (!bonobo_ui_node_get_name (node)) continue; sync = find_sync_for_node (engine, node); bonobo_ui_engine_update_node (engine, sync, node); } ACCESS ("Bonobo: UI engine update - after update nodes"); update_commands_state (engine); ACCESS ("Bonobo: UI engine update - after cmd state"); process_state_updates (engine); ACCESS ("Bonobo: UI engine update - end"); /* bonobo_ui_engine_dump (priv->win, "after update");*/ } /** * bonobo_ui_engine_queue_update: * @engine: the engine * @widget: the widget to update later * @node: the node * @cmd_node: the associated command's node * * This function is used to queue a state update on * @widget, essentialy transfering any state from the * XML model into the widget view. This is queued to * avoid re-enterancy problems. **/ void bonobo_ui_engine_queue_update (BonoboUIEngine *engine, GtkWidget *widget, BonoboUINode *node, BonoboUINode *cmd_node) { StateUpdate *su; BonoboUISync *sync; g_return_if_fail (node != NULL); sync = find_sync_for_node (engine, node); g_return_if_fail (sync != NULL); su = state_update_new ( sync, widget, cmd_node != NULL ? cmd_node : node); if (su) engine->priv->state_updates = g_slist_prepend ( engine->priv->state_updates, su); } /** * bonobo_ui_engine_build_control: * @engine: the engine * @node: the control node. * * A helper function for synchronizers, this creates a control * if possible from the node's associated object, stamps the * node as containing a control and sets its widget. * * Return value: a Control's GtkWidget. **/ GtkWidget * bonobo_ui_engine_build_control (BonoboUIEngine *engine, BonoboUINode *node) { GtkWidget *control = NULL; NodeInfo *info = bonobo_ui_xml_get_data ( engine->priv->tree, node); /* fprintf (stderr, "Control '%p', type '%d' object '%p'\n", info->widget, info->type, info->object);*/ if (info->widget) { control = info->widget; g_assert (info->widget->parent == NULL); } else if (info->object != CORBA_OBJECT_NIL) { control = bonobo_widget_new_control_from_objref ( info->object, CORBA_OBJECT_NIL); g_return_val_if_fail (control != NULL, NULL); info->type |= CUSTOM_WIDGET; } bonobo_ui_sync_do_show_hide (NULL, node, NULL, control); /* fprintf (stderr, "Type on '%s' '%s' is %d widget %p\n", bonobo_ui_node_get_name (node), bonobo_ui_node_peek_attr (node, "name"), info->type, info->widget);*/ return control; } /* Node info accessors */ /** * bonobo_ui_engine_stamp_custom: * @engine: the engine * @node: the node * * Marks a node as containing a custom widget. **/ void bonobo_ui_engine_stamp_custom (BonoboUIEngine *engine, BonoboUINode *node) { NodeInfo *info; info = bonobo_ui_xml_get_data (engine->priv->tree, node); info->type |= CUSTOM_WIDGET; } /** * bonobo_ui_engine_node_get_object: * @engine: the engine * @node: the node * * Return value: the CORBA_Object associated with a @node **/ CORBA_Object bonobo_ui_engine_node_get_object (BonoboUIEngine *engine, BonoboUINode *node) { NodeInfo *info; info = bonobo_ui_xml_get_data (engine->priv->tree, node); return info->object; } /** * bonobo_ui_engine_node_is_dirty: * @engine: the engine * @node: the node * * Return value: whether the @node is marked dirty **/ gboolean bonobo_ui_engine_node_is_dirty (BonoboUIEngine *engine, BonoboUINode *node) { BonoboUIXmlData *data; data = bonobo_ui_xml_get_data (engine->priv->tree, node); return data->dirty; } /** * bonobo_ui_engine_node_get_id: * @engine: the engine * @node: the node * * Each component has an associated textual id or name - see * bonobo_ui_engine_register_component * * Return value: the component id associated with the node **/ const char * bonobo_ui_engine_node_get_id (BonoboUIEngine *engine, BonoboUINode *node) { BonoboUIXmlData *data; data = bonobo_ui_xml_get_data (engine->priv->tree, node); return data->id; } /** * bonobo_ui_engine_node_set_dirty: * @engine: the engine * @node: the node * @dirty: whether the node should be dirty. * * Set @node s dirty bit to @dirty. **/ void bonobo_ui_engine_node_set_dirty (BonoboUIEngine *engine, BonoboUINode *node, gboolean dirty) { BonoboUIXmlData *data; data = bonobo_ui_xml_get_data (engine->priv->tree, node); data->dirty = dirty; } /** * bonobo_ui_engine_node_get_widget: * @engine: the engine * @node: the node * * Gets the widget associated with @node * * Return value: the widget **/ GtkWidget * bonobo_ui_engine_node_get_widget (BonoboUIEngine *engine, BonoboUINode *node) { NodeInfo *info; g_return_val_if_fail (engine != NULL, NULL); info = bonobo_ui_xml_get_data (engine->priv->tree, node); return info->widget; } /* Helpers */ /** * bonobo_ui_engine_get_attr: * @node: the node * @cmd_node: the command's node * @attr: the attribute name * * This function is used to get node attributes in many * UI synchronizers, it first attempts to get the attribute * from @node, and if this fails falls back to @cmd_node. * * Return value: the attr or NULL if it doesn't exist. **/ char * bonobo_ui_engine_get_attr (BonoboUINode *node, BonoboUINode *cmd_node, const char *attr) { char *txt; if ((txt = bonobo_ui_node_get_attr (node, attr))) return txt; if (cmd_node && (txt = bonobo_ui_node_get_attr (cmd_node, attr))) return txt; return NULL; } /** * bonobo_ui_engine_add_hint: * @engine: the engine * @str: the hint string * * This fires the 'add_hint' signal. **/ void bonobo_ui_engine_add_hint (BonoboUIEngine *engine, const char *str) { g_signal_emit (G_OBJECT (engine), signals [ADD_HINT], 0, str); } /** * bonobo_ui_engine_remove_hint: * @engine: the engine * * This fires the 'remove_hint' signal **/ void bonobo_ui_engine_remove_hint (BonoboUIEngine *engine) { g_signal_emit (G_OBJECT (engine), signals [REMOVE_HINT], 0); } /** * bonobo_ui_engine_emit_verb_on: * @engine: the engine * @node: the node * * This fires the 'emit_verb' signal **/ void bonobo_ui_engine_emit_verb_on (BonoboUIEngine *engine, BonoboUINode *node) { g_signal_emit (G_OBJECT (engine), signals [EMIT_VERB_ON], 0, node); } /** * bonobo_ui_engine_emit_event_on: * @engine: the engine * @node: the node * @state: the new state of the node * * This fires the 'emit_event_on' signal **/ void bonobo_ui_engine_emit_event_on (BonoboUIEngine *engine, BonoboUINode *node, const char *state) { g_signal_emit (G_OBJECT (engine), signals [EMIT_EVENT_ON], 0, node, state); } #define WIDGET_NODE_KEY "BonoboUIEngine:NodeKey" /** * bonobo_ui_engine_widget_get_node: * @widget: the widget * * Return value: the #BonoboUINode associated with this widget **/ BonoboUINode * bonobo_ui_engine_widget_get_node (GtkWidget *widget) { g_return_val_if_fail (widget != NULL, NULL); return g_object_get_data (G_OBJECT (widget), WIDGET_NODE_KEY); } /** * bonobo_ui_engine_widget_attach_node: * @widget: the widget * @node: the node * * Associate @node with @widget **/ void bonobo_ui_engine_widget_attach_node (GtkWidget *widget, BonoboUINode *node) { if (widget) g_object_set_data (G_OBJECT (widget), WIDGET_NODE_KEY, node); } /** * bonobo_ui_engine_widget_set_node: * @engine: the engine * @widget: the widget * @node: the node * * Used internaly to associate a widget with a node, * some synchronisers need to be able to execute code * on widget creation. **/ void bonobo_ui_engine_widget_set_node (BonoboUIEngine *engine, GtkWidget *widget, BonoboUINode *node) { BonoboUISync *sync; /* FIXME: this looks broken. why is it public ? * and why is it re-looking up the sync - v. slow */ if (!widget) return; sync = find_sync_for_node (engine, node); sync_widget_set_node (sync, widget, node); } /** * bonobo_ui_engine_get_cmd_node: * @engine: the engine * @from_node: the node * * This function seeks the command node associated * with @from_node in @engine 's internal tree. * * Return value: the command node or NULL **/ BonoboUINode * bonobo_ui_engine_get_cmd_node (BonoboUIEngine *engine, BonoboUINode *from_node) { char *path; BonoboUINode *ret; const char *cmd_name; g_return_val_if_fail (engine != NULL, NULL); if (!from_node) return NULL; if (!(cmd_name = node_get_id (from_node))) return NULL; path = g_strconcat ("/commands/", cmd_name, NULL); ret = bonobo_ui_xml_get_path (engine->priv->tree, path); if (!ret) { BonoboUIXmlData *data_from; BonoboUINode *commands; BonoboUINode *node; commands = bonobo_ui_node_new ("commands"); node = bonobo_ui_node_new_child (commands, "cmd"); bonobo_ui_node_set_attr (node, "name", cmd_name); data_from = bonobo_ui_xml_get_data ( engine->priv->tree, from_node); bonobo_ui_xml_merge ( engine->priv->tree, "/", commands, data_from->id); ret = bonobo_ui_xml_get_path (engine->priv->tree, path); g_assert (ret != NULL); } g_free (path); return ret; } /** * bonobo_ui_engine_emit_verb_on_w: * @engine: the engine * @widget: the widget * * This function looks up the node from @widget and * emits the 'emit_verb_on' signal on that node. **/ void bonobo_ui_engine_emit_verb_on_w (BonoboUIEngine *engine, GtkWidget *widget) { BonoboUINode *node = bonobo_ui_engine_widget_get_node (widget); g_signal_emit (G_OBJECT (engine), signals [EMIT_VERB_ON], 0, node); } /** * bonobo_ui_engine_emit_event_on_w: * @engine: the engine * @widget: the widget * @state: the new state * * This function looks up the node from @widget and * emits the 'emit_event_on' signal on that node * passint @state as the new state. **/ void bonobo_ui_engine_emit_event_on_w (BonoboUIEngine *engine, GtkWidget *widget, const char *state) { BonoboUINode *node = bonobo_ui_engine_widget_get_node (widget); g_signal_emit (G_OBJECT (engine), signals [EMIT_EVENT_ON], 0, node, state); } /** * bonobo_ui_engine_stamp_root: * @engine: the engine * @node: the node * @widget: the root widget * * This stamps @node with @widget which is marked as * being a ROOT node, so the engine will never destroy * it. **/ void bonobo_ui_engine_stamp_root (BonoboUIEngine *engine, BonoboUINode *node, GtkWidget *widget) { NodeInfo *info; GtkWidget *new_root; if (!node) return; info = bonobo_ui_xml_get_data (engine->priv->tree, node); new_root = widget ? g_object_ref (widget) : NULL; if (info->widget) g_object_unref (info->widget); info->widget = new_root; info->type |= ROOT_WIDGET; bonobo_ui_engine_widget_attach_node (widget, node); } /** * bonobo_ui_engine_get_path: * @engine: the engine. * @path: the path into the tree * * This routine gets a node from the internal XML tree * pointed at by @path * * Return value: the node. **/ BonoboUINode * bonobo_ui_engine_get_path (BonoboUIEngine *engine, const char *path) { g_return_val_if_fail (BONOBO_IS_UI_ENGINE (engine), NULL); return bonobo_ui_xml_get_path (engine->priv->tree, path); } /** * bonobo_ui_engine_freeze: * @engine: the engine * * This increments the freeze count on the tree, while * this count > 0 no syncronization between the internal * XML model and the widget views occurs. This means that * many simple merges can be glupped together with little * performance impact and overhead. **/ void bonobo_ui_engine_freeze (BonoboUIEngine *engine) { g_return_if_fail (BONOBO_IS_UI_ENGINE (engine)); engine->priv->frozen++; } /** * bonobo_ui_engine_thaw: * @engine: the engine * * This decrements the freeze count and if it is 0 * causes the UI widgets to be re-synched with the * XML model, see also bonobo_ui_engine_freeze **/ void bonobo_ui_engine_thaw (BonoboUIEngine *engine) { g_return_if_fail (BONOBO_IS_UI_ENGINE (engine)); if (--engine->priv->frozen <= 0) { bonobo_ui_engine_update (engine); engine->priv->frozen = 0; } } /** * bonobo_ui_engine_dump: * @engine: the engine * @out: the FILE stream to dump to * @msg: user visible message * * This is a debugging function mostly for internal * and testing use, it dumps the XML tree, including * the associated, and overridden nodes in a wierd * hackish format to the @out stream with the * helpful @msg prepended. **/ void bonobo_ui_engine_dump (BonoboUIEngine *engine, FILE *out, const char *msg) { g_return_if_fail (BONOBO_IS_UI_ENGINE (engine)); fprintf (out, "Bonobo UI Engine : frozen '%d'\n", engine->priv->frozen); sub_components_dump (engine, out); /* FIXME: propagate the FILE * */ bonobo_ui_xml_dump (engine->priv->tree, engine->priv->tree->root, msg); } /** * bonobo_ui_engine_dirty_tree: * @engine: the engine * @node: the node * * Mark all the node's children as being dirty and needing * a re-synch with their widget views. **/ void bonobo_ui_engine_dirty_tree (BonoboUIEngine *engine, BonoboUINode *node) { g_return_if_fail (BONOBO_IS_UI_ENGINE (engine)); #ifdef WIDGET_SYNC_DEBUG fprintf (stderr, "Dirty tree '%s'", bonobo_ui_xml_make_path (node)); #endif if (node) { bonobo_ui_xml_set_dirty (engine->priv->tree, node); bonobo_ui_engine_update (engine); } } /** * bonobo_ui_engine_clean_tree: * @engine: the engine * @node: the node * * This cleans the tree, marking the node and its children * as not needing a re-synch with their widget views. **/ void bonobo_ui_engine_clean_tree (BonoboUIEngine *engine, BonoboUINode *node) { g_return_if_fail (BONOBO_IS_UI_ENGINE (engine)); if (node) bonobo_ui_xml_clean (engine->priv->tree, node); } /** * bonobo_ui_engine_get_xml: * @engine: the engine * * Private - internal API * * Return value: the #BonoboUIXml engine used for * doing the XML merge logic **/ BonoboUIXml * bonobo_ui_engine_get_xml (BonoboUIEngine *engine) { g_return_val_if_fail (BONOBO_IS_UI_ENGINE (engine), NULL); return engine->priv->tree; } /** * bonobo_ui_engine_get_config: * @engine: the engine * * Private - internal API * * Return value: the associated configuration engine **/ BonoboUIEngineConfig * bonobo_ui_engine_get_config (BonoboUIEngine *engine) { g_return_val_if_fail (BONOBO_IS_UI_ENGINE (engine), NULL); return engine->priv->config; } void bonobo_ui_engine_exec_verb (BonoboUIEngine *engine, const CORBA_char *cname, CORBA_Environment *ev) { g_return_if_fail (ev != NULL); g_return_if_fail (cname != NULL); bonobo_return_if_fail (BONOBO_IS_UI_ENGINE (engine), ev); g_warning ("Emit Verb '%s'", cname); } void bonobo_ui_engine_ui_event (BonoboUIEngine *engine, const CORBA_char *id, const Bonobo_UIComponent_EventType type, const CORBA_char *state, CORBA_Environment *ev) { g_return_if_fail (ev != NULL); g_return_if_fail (id != NULL); g_return_if_fail (state != NULL); bonobo_return_if_fail (BONOBO_IS_UI_ENGINE (engine), ev); g_warning ("Emit UI Event '%s' %s'", id, state); } libbonoboui-2.24.5/bonobo/bonobo-ui-toolbar-item.c0000644000076400007640000002527011173072741016760 00000000000000/* -*- Mode: C; indent-tabs-mode: t; c-basic-offset: 8; tab-width: 8 -*- */ /** * bonobo-ui-toolbar-item.c * * Author: Ettore Perazzoli (ettore@ximian.com) * * Copyright (C) 2000 Ximian, Inc. */ #undef GTK_DISABLE_DEPRECATED #include #include #include G_DEFINE_TYPE (BonoboUIToolbarItem, bonobo_ui_toolbar_item, GTK_TYPE_BIN) struct _BonoboUIToolbarItemPrivate { /* Whether this item wants to have a label when the toolbar style is `BONOBO_UI_TOOLBAR_STYLE_PRIORITY_TEXT'. */ gboolean want_label; /* Whether this item wants to be expanded to all the available width/height. */ gboolean expandable; /* if set, pack this item on the right side of the toolbar */ gboolean pack_end; /* Orientation for this item. */ GtkOrientation orientation; /* Style for this item. */ BonoboUIToolbarItemStyle style; /* minimum width (or height, if rotated) for this item */ int minimum_width; }; enum { SET_ORIENTATION, SET_STYLE, SET_WANT_LABEL, ACTIVATE, STATE_ALTERED, LAST_SIGNAL }; static int signals[LAST_SIGNAL] = { 0 }; /* GObject methods. */ static void impl_finalize (GObject *object) { BonoboUIToolbarItem *toolbar_item = (BonoboUIToolbarItem *) object; g_free (toolbar_item->priv); G_OBJECT_CLASS (bonobo_ui_toolbar_item_parent_class)->finalize (object); } /* GtkWidget methods. */ static void impl_size_request (GtkWidget *widget, GtkRequisition *requisition_return) { BonoboUIToolbarItem *toolbar_item; BonoboUIToolbarItemPrivate *priv; GtkRequisition child_requisition; GtkWidget *child; int border_width; toolbar_item = BONOBO_UI_TOOLBAR_ITEM (widget); priv = toolbar_item->priv; border_width = GTK_CONTAINER (widget)->border_width; requisition_return->width = border_width; requisition_return->height = border_width; child = GTK_BIN (widget)->child; if (child == NULL) return; gtk_widget_size_request (child, &child_requisition); if (child_requisition.width < priv->minimum_width) child_requisition.width = priv->minimum_width; requisition_return->width += child_requisition.width; requisition_return->height += child_requisition.height; } static void impl_size_allocate (GtkWidget *widget, GtkAllocation *allocation) { GtkAllocation child_allocation; GtkWidget *child; int border_width; widget->allocation = *allocation; child = GTK_BIN (widget)->child; if (child == NULL || !GTK_WIDGET_VISIBLE (child)) return; border_width = GTK_CONTAINER (widget)->border_width; if (allocation->width > border_width) { child_allocation.x = allocation->x + border_width; child_allocation.width = allocation->width - border_width; } else { child_allocation.x = allocation->x; child_allocation.width = allocation->width; } if (allocation->height > border_width) { child_allocation.y = allocation->y + border_width; child_allocation.height = allocation->height - border_width; } else { child_allocation.y = allocation->y; child_allocation.height = allocation->height; } gtk_widget_size_allocate (GTK_BIN (widget)->child, &child_allocation); } /* BonoboUIToolbarItem signals. */ static void impl_set_orientation (BonoboUIToolbarItem *item, GtkOrientation orientation) { BonoboUIToolbarItemPrivate *priv; priv = item->priv; if (priv->orientation == orientation) return; priv->orientation = orientation; gtk_widget_queue_resize (GTK_WIDGET (item)); } static void impl_set_style (BonoboUIToolbarItem *item, BonoboUIToolbarItemStyle style) { gtk_widget_queue_resize (GTK_WIDGET (item)); } static void impl_set_want_label (BonoboUIToolbarItem *item, gboolean want_label) { BonoboUIToolbarItemPrivate *priv; priv = item->priv; priv->want_label = want_label; } /* Gtk+ object initialization. */ static void bonobo_ui_toolbar_item_class_init (BonoboUIToolbarItemClass *object_class) { GObjectClass *gobject_class; GtkWidgetClass *widget_class; BonoboUIToolbarItemClass *toolbar_item_class; gobject_class = (GObjectClass *) object_class; gobject_class->finalize = impl_finalize; widget_class = GTK_WIDGET_CLASS (object_class); widget_class->size_request = impl_size_request; widget_class->size_allocate = impl_size_allocate; toolbar_item_class = BONOBO_UI_TOOLBAR_ITEM_CLASS (object_class); toolbar_item_class->set_orientation = impl_set_orientation; toolbar_item_class->set_style = impl_set_style; toolbar_item_class->set_want_label = impl_set_want_label; signals[SET_ORIENTATION] = g_signal_new ("set_orientation", G_TYPE_FROM_CLASS (object_class), G_SIGNAL_RUN_LAST, G_STRUCT_OFFSET (BonoboUIToolbarItemClass, set_orientation), NULL, NULL, g_cclosure_marshal_VOID__INT, G_TYPE_NONE, 1, G_TYPE_INT); signals[SET_STYLE] = g_signal_new ("set_style", G_TYPE_FROM_CLASS (object_class), G_SIGNAL_RUN_LAST, G_STRUCT_OFFSET (BonoboUIToolbarItemClass, set_style), NULL, NULL, g_cclosure_marshal_VOID__INT, G_TYPE_NONE, 1, G_TYPE_INT); signals[SET_WANT_LABEL] = g_signal_new ("set_want_label", G_TYPE_FROM_CLASS (object_class), G_SIGNAL_RUN_FIRST, G_STRUCT_OFFSET (BonoboUIToolbarItemClass, set_want_label), NULL, NULL, g_cclosure_marshal_VOID__BOOLEAN, G_TYPE_NONE, 1, G_TYPE_BOOLEAN); signals[STATE_ALTERED] = g_signal_new ("state_altered", G_TYPE_FROM_CLASS (object_class), G_SIGNAL_RUN_LAST, G_STRUCT_OFFSET (BonoboUIToolbarItemClass, activate), NULL, NULL, g_cclosure_marshal_VOID__STRING, G_TYPE_NONE, 1, G_TYPE_STRING); signals[ACTIVATE] = g_signal_new ("activate", G_TYPE_FROM_CLASS (object_class), G_SIGNAL_RUN_LAST, G_STRUCT_OFFSET (BonoboUIToolbarItemClass, activate), NULL, NULL, g_cclosure_marshal_VOID__VOID, G_TYPE_NONE, 0); } static void bonobo_ui_toolbar_item_init (BonoboUIToolbarItem *toolbar_item) { BonoboUIToolbarItemPrivate *priv; priv = g_new (BonoboUIToolbarItemPrivate, 1); priv->want_label = FALSE; priv->orientation = GTK_ORIENTATION_HORIZONTAL; priv->style = BONOBO_UI_TOOLBAR_ITEM_STYLE_ICON_AND_TEXT_VERTICAL; priv->expandable = FALSE; priv->pack_end = FALSE; priv->minimum_width = 0; toolbar_item->priv = priv; } GtkWidget * bonobo_ui_toolbar_item_new (void) { BonoboUIToolbarItem *new; new = g_object_new (bonobo_ui_toolbar_item_get_type (), NULL); return GTK_WIDGET (new); } void bonobo_ui_toolbar_item_set_tooltip (BonoboUIToolbarItem *item, GtkTooltips *tooltips, const char *tooltip) { BonoboUIToolbarItemClass *klass; g_return_if_fail (BONOBO_IS_UI_TOOLBAR_ITEM (item)); klass = BONOBO_UI_TOOLBAR_ITEM_CLASS (GTK_OBJECT_GET_CLASS (item)); if (klass->set_tooltip) klass->set_tooltip (item, tooltips, tooltip); /* FIXME: implement setting of tooltips */ } void bonobo_ui_toolbar_item_set_state (BonoboUIToolbarItem *item, const char *new_state) { BonoboUIToolbarItemClass *klass; g_return_if_fail (BONOBO_IS_UI_TOOLBAR_ITEM (item)); klass = BONOBO_UI_TOOLBAR_ITEM_CLASS (GTK_OBJECT_GET_CLASS (item)); if (klass->set_state) klass->set_state (item, new_state); } void bonobo_ui_toolbar_item_set_orientation (BonoboUIToolbarItem *item, GtkOrientation orientation) { g_return_if_fail (BONOBO_IS_UI_TOOLBAR_ITEM (item)); g_return_if_fail (orientation == GTK_ORIENTATION_HORIZONTAL || orientation == GTK_ORIENTATION_VERTICAL); g_signal_emit (item, signals[SET_ORIENTATION], 0, orientation); } GtkOrientation bonobo_ui_toolbar_item_get_orientation (BonoboUIToolbarItem *item) { BonoboUIToolbarItemPrivate *priv; g_return_val_if_fail (BONOBO_IS_UI_TOOLBAR_ITEM (item), GTK_ORIENTATION_HORIZONTAL); priv = item->priv; return priv->orientation; } void bonobo_ui_toolbar_item_set_style (BonoboUIToolbarItem *item, BonoboUIToolbarItemStyle style) { BonoboUIToolbarItemPrivate *priv; g_return_if_fail (BONOBO_IS_UI_TOOLBAR_ITEM (item)); g_return_if_fail (style == BONOBO_UI_TOOLBAR_ITEM_STYLE_ICON_ONLY || style == BONOBO_UI_TOOLBAR_ITEM_STYLE_TEXT_ONLY || style == BONOBO_UI_TOOLBAR_ITEM_STYLE_ICON_AND_TEXT_HORIZONTAL || style == BONOBO_UI_TOOLBAR_ITEM_STYLE_ICON_AND_TEXT_VERTICAL); priv = item->priv; if (priv->style == style) return; priv->style = style; g_signal_emit (item, signals[SET_STYLE], 0, style); } BonoboUIToolbarItemStyle bonobo_ui_toolbar_item_get_style (BonoboUIToolbarItem *item) { BonoboUIToolbarItemPrivate *priv; g_return_val_if_fail (item != NULL, BONOBO_UI_TOOLBAR_ITEM_STYLE_ICON_AND_TEXT_VERTICAL); g_return_val_if_fail (BONOBO_IS_UI_TOOLBAR_ITEM (item), BONOBO_UI_TOOLBAR_ITEM_STYLE_ICON_AND_TEXT_VERTICAL); priv = item->priv; return priv->style; } void bonobo_ui_toolbar_item_set_want_label (BonoboUIToolbarItem *item, gboolean want_label) { g_return_if_fail (BONOBO_IS_UI_TOOLBAR_ITEM (item)); g_signal_emit (item, signals[SET_WANT_LABEL], 0, want_label); } gboolean bonobo_ui_toolbar_item_get_want_label (BonoboUIToolbarItem *item) { BonoboUIToolbarItemPrivate *priv; g_return_val_if_fail (BONOBO_IS_UI_TOOLBAR_ITEM (item), FALSE); priv = item->priv; return priv->want_label; } void bonobo_ui_toolbar_item_set_expandable (BonoboUIToolbarItem *item, gboolean expandable) { BonoboUIToolbarItemPrivate *priv; g_return_if_fail (BONOBO_IS_UI_TOOLBAR_ITEM (item)); priv = item->priv; if ((priv->expandable && expandable) || (! priv->expandable && ! expandable)) return; priv->expandable = expandable; gtk_widget_queue_resize (GTK_WIDGET (item)); } gboolean bonobo_ui_toolbar_item_get_expandable (BonoboUIToolbarItem *item) { BonoboUIToolbarItemPrivate *priv; g_return_val_if_fail (BONOBO_IS_UI_TOOLBAR_ITEM (item), FALSE); priv = item->priv; return priv->expandable; } void bonobo_ui_toolbar_item_set_pack_end (BonoboUIToolbarItem *item, gboolean pack_end) { BonoboUIToolbarItemPrivate *priv; g_return_if_fail (BONOBO_IS_UI_TOOLBAR_ITEM (item)); priv = item->priv; if ((priv->pack_end && pack_end) || (! priv->pack_end && ! pack_end)) return; priv->pack_end = pack_end; gtk_widget_queue_resize (GTK_WIDGET (item)); } gboolean bonobo_ui_toolbar_item_get_pack_end (BonoboUIToolbarItem *item) { BonoboUIToolbarItemPrivate *priv; g_return_val_if_fail (BONOBO_IS_UI_TOOLBAR_ITEM (item), FALSE); priv = item->priv; return priv->pack_end; } void bonobo_ui_toolbar_item_activate (BonoboUIToolbarItem *item) { g_return_if_fail (BONOBO_IS_UI_TOOLBAR_ITEM (item)); g_signal_emit (item, signals[ACTIVATE], 0); } void bonobo_ui_toolbar_item_set_minimum_width (BonoboUIToolbarItem *item, int minimum_width) { g_return_if_fail (BONOBO_IS_UI_TOOLBAR_ITEM (item)); item->priv->minimum_width = minimum_width; } libbonoboui-2.24.5/bonobo/bonobo-ui-toolbar-popup-item.c0000644000076400007640000000711011173072741020112 00000000000000/* -*- Mode: C; indent-tabs-mode: t; c-basic-offset: 8; tab-width: 8 -*- */ /** * bonobo-ui-toolbar-popup-item.h * * Author: * Ettore Perazzoli (ettore@ximian.com) * * Copyright (C) 2000 Ximian, Inc. */ #undef GTK_DISABLE_DEPRECATED #include #include #include G_DEFINE_TYPE (BonoboUIToolbarPopupItem, bonobo_ui_toolbar_popup_item, BONOBO_TYPE_UI_TOOLBAR_TOGGLE_BUTTON_ITEM) #define GET_PRIVATE(inst) (G_TYPE_INSTANCE_GET_PRIVATE (inst, BONOBO_TYPE_UI_TOOLBAR_POPUP_ITEM, BonoboUIToolbarPopupItemPrivate)) struct _BonoboUIToolbarPopupItemPrivate { GtkWidget *arrow; }; /* Utility functions. */ static void set_arrow_orientation (BonoboUIToolbarPopupItem *popup_item) { BonoboUIToolbarPopupItemPrivate *priv = GET_PRIVATE (popup_item); GtkOrientation orientation; orientation = bonobo_ui_toolbar_item_get_orientation (BONOBO_UI_TOOLBAR_ITEM (popup_item)); if (orientation == GTK_ORIENTATION_HORIZONTAL) gtk_arrow_set (GTK_ARROW (priv->arrow), GTK_ARROW_RIGHT, GTK_SHADOW_NONE); else gtk_arrow_set (GTK_ARROW (priv->arrow), GTK_ARROW_DOWN, GTK_SHADOW_NONE); } static void impl_set_orientation (BonoboUIToolbarItem *item, GtkOrientation orientation) { BonoboUIToolbarPopupItem *popup_item; BONOBO_UI_TOOLBAR_ITEM_CLASS(bonobo_ui_toolbar_popup_item_parent_class)->set_orientation (item, orientation); popup_item = BONOBO_UI_TOOLBAR_POPUP_ITEM (item); set_arrow_orientation (popup_item); } static void bonobo_ui_toolbar_popup_item_finalize (GObject *object) { BonoboUIToolbarPopupItemPrivate *priv = GET_PRIVATE (object); g_object_unref (priv->arrow); G_OBJECT_CLASS (bonobo_ui_toolbar_popup_item_parent_class)->finalize (object); } static void bonobo_ui_toolbar_popup_item_class_init ( BonoboUIToolbarPopupItemClass *popup_item_class) { GObjectClass *gobject_class; BonoboUIToolbarItemClass *toolbar_item_class; gobject_class = G_OBJECT_CLASS (popup_item_class); toolbar_item_class = BONOBO_UI_TOOLBAR_ITEM_CLASS (popup_item_class); gobject_class->finalize = bonobo_ui_toolbar_popup_item_finalize; toolbar_item_class->set_orientation = impl_set_orientation; g_type_class_add_private (gobject_class, sizeof (BonoboUIToolbarPopupItemPrivate)); } static void bonobo_ui_toolbar_popup_item_init ( BonoboUIToolbarPopupItem *toolbar_popup_item) { BonoboUIToolbarPopupItemPrivate *priv = GET_PRIVATE (toolbar_popup_item); priv->arrow = gtk_arrow_new (GTK_ARROW_RIGHT, GTK_SHADOW_NONE); g_object_ref_sink (priv->arrow); } void bonobo_ui_toolbar_popup_item_construct (BonoboUIToolbarPopupItem *popup_item) { BonoboUIToolbarPopupItemPrivate *priv; g_return_if_fail (BONOBO_IS_UI_TOOLBAR_POPUP_ITEM (popup_item)); priv = GET_PRIVATE (popup_item); set_arrow_orientation (popup_item); /* Note! Despite bonobo_ui_toolbar_toggle_button_item_construct taking a |GdkPixbuf*| as 2nd argument, * it is just passed unchecked to bonobo_ui_toolbar_button_item_construct which also takes a |GdkPixbuf*|, * which is passed unchecked through to bonobo-ui-toolbar-button-item.c:set_image which supports arbitrary * |GtkWidget*|'s. So we can just add a C cast (NOT a GObject cast) to silence the compiler warning. */ bonobo_ui_toolbar_toggle_button_item_construct (BONOBO_UI_TOOLBAR_TOGGLE_BUTTON_ITEM (popup_item), (GdkPixbuf*) priv->arrow, NULL); } GtkWidget * bonobo_ui_toolbar_popup_item_new (void) { BonoboUIToolbarPopupItem *popup_item; popup_item = g_object_new ( bonobo_ui_toolbar_popup_item_get_type (), NULL); bonobo_ui_toolbar_popup_item_construct (popup_item); return GTK_WIDGET (popup_item); } libbonoboui-2.24.5/bonobo/bonobo-control.c0000644000076400007640000011562211200301552015412 00000000000000/* -*- mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ /* * Bonobo control object * * Authors: * Michael Meeks (michael@ximian.com) * Nat Friedman (nat@ximian.com) * Miguel de Icaza (miguel@ximian.com) * Maciej Stachowiak (mjs@eazel.com) * * Copyright 1999, 2001 Ximian, Inc. * 2000 Eazel, Inc. */ #undef GTK_DISABLE_DEPRECATED #include #include #include #include #include #include #if defined (GDK_WINDOWING_X11) #include #elif defined (GDK_WINDOWING_WIN32) #define interface _win32_interface #include #undef interface #elif defined (GDK_WINDOWING_QUARTZ) #else #error Port to this GDK backend #endif #include #include #include #include #include #include #include enum { PLUG_CREATED, DISCONNECTED, SET_FRAME, ACTIVATE, LAST_SIGNAL }; static guint control_signals [LAST_SIGNAL]; static GObjectClass *bonobo_control_parent_class = NULL; struct _BonoboControlPrivate { Bonobo_ControlFrame frame; BonoboControlFrame *inproc_frame; BonoboUIComponent *ui_component; Bonobo_PropertyBag propbag; BonoboUIContainer *popup_ui_container; BonoboUIComponent *popup_ui_component; BonoboUIEngine *popup_ui_engine; BonoboUISync *popup_ui_sync; GtkWidget *plug; GtkWidget *widget; guint no_frame_timeout_id; guint active : 1; guint automerge : 1; guint sent_disconnect : 1; }; static void bonobo_control_disconnected (BonoboControl *control) { g_return_if_fail (control != NULL); g_return_if_fail (control->priv != NULL); if (!control->priv->sent_disconnect) { control->priv->sent_disconnect = TRUE; g_signal_emit (control, control_signals [DISCONNECTED], 0); } } static void control_frame_connection_died_cb (gpointer connection, gpointer user_data) { BonoboControl *control = BONOBO_CONTROL (user_data); g_return_if_fail (control != NULL); bonobo_control_disconnected (control); dbgprintf ("The remote control frame died unexpectedly"); bonobo_object_unref (BONOBO_OBJECT (control)); } void bonobo_control_add_listener (CORBA_Object object, GCallback fn, gpointer user_data, CORBA_Environment *ev) { ORBitConnectionStatus status; if (object == CORBA_OBJECT_NIL) return; status = ORBit_small_listen_for_broken ( object, fn, user_data); switch (status) { case ORBIT_CONNECTION_CONNECTED: break; default: dbgprintf ("premature CORBA_Object death"); bonobo_exception_general_error_set ( ev, NULL, "Control died prematurely"); break; } } /** * bonobo_control_window_id_from_x11: * @x11_id: the x11 window id or Windows HWND. * * Return value: the window id or handle as a string; free after use. **/ Bonobo_Gdk_WindowId bonobo_control_window_id_from_x11 (guint32 x11_id) { gchar str[32]; snprintf (str, 31, "%u", x11_id); str[31] = '\0'; /* printf ("Mangled %d to '%s'\n", x11_id, str);*/ return CORBA_string_dup (str); } /** * bonobo_control_x11_from_window_id: * @id: CORBA_char * * * De-mangle a window id string, * fields are separated by ':' character, * currently only the first field is used. * * Return value: the native window id. **/ guint32 bonobo_control_x11_from_window_id (const CORBA_char *id) { guint32 x11_id; char **elements; /* printf ("ID string '%s'\n", id);*/ elements = g_strsplit (id, ":", -1); if (elements && elements [0]) x11_id = strtol (elements [0], NULL, 10); else { #if defined (GDK_WINDOWING_X11) g_warning ("Serious X id mangling error"); #elif defined (GDK_WINDOWING_WIN32) g_warning ("Serious window handle mangling error"); #endif x11_id = 0; } g_strfreev (elements); /* printf ("x11 : %d\n", x11_id);*/ return x11_id; } static void bonobo_control_auto_merge (BonoboControl *control) { Bonobo_UIContainer remote_container; if (control->priv->ui_component == NULL) return; /* * this makes a CORBA call, so re-entrancy can occur here */ remote_container = bonobo_control_get_remote_ui_container (control, NULL); if (remote_container == CORBA_OBJECT_NIL) return; /* * we could have been re-entereted in the previous call, so * make sure we are still active */ if (control->priv->active) bonobo_ui_component_set_container ( control->priv->ui_component, remote_container, NULL); bonobo_object_release_unref (remote_container, NULL); } static void bonobo_control_auto_unmerge (BonoboControl *control) { if (control->priv->ui_component == NULL) return; bonobo_ui_component_unset_container (control->priv->ui_component, NULL); } static void impl_Bonobo_Control_activate (PortableServer_Servant servant, CORBA_boolean activated, CORBA_Environment *ev) { BonoboControl *control = BONOBO_CONTROL (bonobo_object_from_servant (servant)); gboolean old_activated; if (activated == control->priv->active) return; /* * store the old activated value as we can be re-entered * during (un)merge */ old_activated = control->priv->active; control->priv->active = activated; if (control->priv->automerge) { if (activated) bonobo_control_auto_merge (control); else bonobo_control_auto_unmerge (control); } /* * if our active state is not what we are changing it to, then * don't emit the signal */ if (control->priv->active == old_activated) return; g_signal_emit (control, control_signals [ACTIVATE], 0, control->priv->active); bonobo_control_activate_notify (control, control->priv->active, ev); } static void bonobo_control_unset_control_frame (BonoboControl *control, CORBA_Environment *opt_ev) { CORBA_Environment *ev, tmp_ev; if (!opt_ev) { CORBA_exception_init (&tmp_ev); ev = &tmp_ev; } else ev = opt_ev; if (control->priv->no_frame_timeout_id != 0) { g_source_remove (control->priv->no_frame_timeout_id); control->priv->no_frame_timeout_id = 0; } if (control->priv->frame != CORBA_OBJECT_NIL) { Bonobo_ControlFrame frame = control->priv->frame; control->priv->frame = CORBA_OBJECT_NIL; ORBit_small_unlisten_for_broken ( frame, G_CALLBACK (control_frame_connection_died_cb)); if (control->priv->active) Bonobo_ControlFrame_notifyActivated ( frame, FALSE, ev); CORBA_Object_release (frame, ev); } if (!opt_ev) CORBA_exception_free (&tmp_ev); } static void create_plug (BonoboControl *control) { GtkWidget *plug; plug = bonobo_plug_new (0); g_object_ref_sink (plug); bonobo_control_set_plug (control, BONOBO_PLUG (plug)); if (control->priv->widget) gtk_container_add (GTK_CONTAINER (plug), control->priv->widget); g_signal_emit (control, control_signals [PLUG_CREATED], 0); g_object_unref (plug); } static int parse_cookie (const CORBA_char *cookie) { GString *ident = NULL; GString *value = NULL; const char *p; char *screen = NULL; int retval = -1; for (p = cookie; *p && !screen; p++) { switch (*p) { case ',': if (!ident || !value) goto parse_failed; if (strcmp (ident->str, "screen")) { g_string_free (ident, TRUE); ident = NULL; g_string_free (value, TRUE); value = NULL; break; } screen = value->str; break; case '=': if (!ident || value) goto parse_failed; value = g_string_new (NULL); break; default: if (!ident) ident = g_string_new (NULL); if (value) g_string_append_c (value, *p); else g_string_append_c (ident, *p); break; } } if (ident && value && !strcmp (ident->str, "screen")) screen = value->str; if (screen) retval = atoi (screen); parse_failed: if (ident) g_string_free (ident, TRUE); if (value) g_string_free (value, TRUE); return retval; } static CORBA_char * impl_Bonobo_Control_getWindowId (PortableServer_Servant servant, const CORBA_char *cookie, CORBA_Environment *ev) { guint32 x11_id; BonoboControl *control = BONOBO_CONTROL ( bonobo_object_from_servant (servant)); GdkScreen *gdkscreen; int screen_num; if (!control->priv->plug) create_plug (control); g_assert (control->priv->plug != NULL); screen_num = parse_cookie (cookie); if (screen_num != -1) gdkscreen = gdk_display_get_screen ( gdk_display_get_default (), screen_num); else gdkscreen = gdk_screen_get_default (); gtk_window_set_screen (GTK_WINDOW (control->priv->plug), gdkscreen); gtk_widget_show (control->priv->plug); x11_id = gtk_plug_get_id (GTK_PLUG (control->priv->plug)); dbgprintf ("plug id %u\n", x11_id); return bonobo_control_window_id_from_x11 (x11_id); } static Bonobo_UIContainer impl_Bonobo_Control_getPopupContainer (PortableServer_Servant servant, CORBA_Environment *ev) { BonoboUIContainer *container; container = bonobo_control_get_popup_ui_container ( BONOBO_CONTROL (bonobo_object_from_servant (servant))); return bonobo_object_dup_ref (BONOBO_OBJREF (container), ev); } static void impl_Bonobo_Control_setFrame (PortableServer_Servant servant, Bonobo_ControlFrame frame, CORBA_Environment *ev) { BonoboControl *control = BONOBO_CONTROL ( bonobo_object_from_servant (servant)); g_object_ref (control); if (control->priv->frame != frame) { bonobo_control_unset_control_frame (control, ev); if (frame == CORBA_OBJECT_NIL) control->priv->frame = CORBA_OBJECT_NIL; else { control->priv->frame = CORBA_Object_duplicate ( frame, NULL); } control->priv->inproc_frame = (BonoboControlFrame *) bonobo_object (ORBit_small_get_servant (frame)); if (!control->priv->inproc_frame) bonobo_control_add_listener ( frame, G_CALLBACK (control_frame_connection_died_cb), control, ev); g_signal_emit (control, control_signals [SET_FRAME], 0); } g_object_unref (control); } static void impl_Bonobo_Control_setSize (PortableServer_Servant servant, const CORBA_short width, const CORBA_short height, CORBA_Environment *ev) { GtkAllocation size; BonoboControl *control = BONOBO_CONTROL ( bonobo_object_from_servant (servant)); size.x = size.y = 0; size.width = width; size.height = height; /* * In the Gnome implementation of Bonobo, all size assignment * is handled by GtkPlug/GtkSocket for us. */ g_warning ("setSize untested"); gtk_widget_size_allocate (GTK_WIDGET (control->priv->plug), &size); } static Bonobo_Gtk_Requisition impl_Bonobo_Control_getDesiredSize (PortableServer_Servant servant, CORBA_Environment *ev) { BonoboControl *control; GtkRequisition requisition; Bonobo_Gtk_Requisition req; control = BONOBO_CONTROL (bonobo_object (servant)); gtk_widget_size_request (control->priv->widget, &requisition); req.width = requisition.width; req.height = requisition.height; return req; } static GtkStateType bonobo_control_gtk_state_from_corba (const Bonobo_Gtk_State state) { switch (state) { case Bonobo_Gtk_StateNormal: return GTK_STATE_NORMAL; case Bonobo_Gtk_StateActive: return GTK_STATE_ACTIVE; case Bonobo_Gtk_StatePrelight: return GTK_STATE_PRELIGHT; case Bonobo_Gtk_StateSelected: return GTK_STATE_SELECTED; case Bonobo_Gtk_StateInsensitive: return GTK_STATE_INSENSITIVE; default: g_warning ("bonobo_control_gtk_state_from_corba: Unknown state: %d", (gint) state); return GTK_STATE_NORMAL; } } static void impl_Bonobo_Control_setState (PortableServer_Servant servant, const Bonobo_Gtk_State state, CORBA_Environment *ev) { BonoboControl *control = BONOBO_CONTROL (bonobo_object_from_servant (servant)); GtkStateType gtk_state = bonobo_control_gtk_state_from_corba (state); g_return_if_fail (control->priv->widget != NULL); if (gtk_state == GTK_STATE_INSENSITIVE) gtk_widget_set_sensitive (control->priv->widget, FALSE); else { if (! GTK_WIDGET_SENSITIVE (control->priv->widget)) gtk_widget_set_sensitive (control->priv->widget, TRUE); gtk_widget_set_state (control->priv->widget, gtk_state); } } static Bonobo_PropertyBag impl_Bonobo_Control_getProperties (PortableServer_Servant servant, CORBA_Environment *ev) { BonoboControl *control = BONOBO_CONTROL (bonobo_object_from_servant (servant)); if (control->priv->propbag == CORBA_OBJECT_NIL) return CORBA_OBJECT_NIL; return bonobo_object_dup_ref (control->priv->propbag, ev); } static CORBA_boolean impl_Bonobo_Control_focus (PortableServer_Servant servant, Bonobo_Gtk_Direction corba_direction, CORBA_Environment *ev) { BonoboControl *control; GtkDirectionType direction; BonoboControlPrivate *priv; control = BONOBO_CONTROL (bonobo_object (servant)); priv = control->priv; /* FIXME: this will not work for local controls. */ if (!priv->plug) return FALSE; switch (corba_direction) { case Bonobo_Gtk_DirectionTabForward: direction = GTK_DIR_TAB_FORWARD; break; case Bonobo_Gtk_DirectionTabBackward: direction = GTK_DIR_TAB_BACKWARD; break; case Bonobo_Gtk_DirectionUp: direction = GTK_DIR_UP; break; case Bonobo_Gtk_DirectionDown: direction = GTK_DIR_DOWN; break; case Bonobo_Gtk_DirectionLeft: direction = GTK_DIR_LEFT; break; case Bonobo_Gtk_DirectionRight: direction = GTK_DIR_RIGHT; break; default: /* Hmmm, we should throw an exception. */ return FALSE; } return gtk_widget_child_focus (GTK_WIDGET (priv->plug), direction); } #define DEFAULT_CONTROL_PURGE_DELAY_MS 60 * 1000 /* 60 seconds */ static int control_purge_delay = DEFAULT_CONTROL_PURGE_DELAY_MS; /** * bonobo_control_life_set_purge: * @ms: time to wait in milliseconds. * * Set time we're prepared to wait without a ControlFrame * before terminating the Control. This can happen if the * panel activates us but crashes before the set_frame. **/ void bonobo_control_life_set_purge (long ms) { control_purge_delay = ms; } static gboolean never_got_frame_timeout (gpointer user_data) { g_warning ("Never got frame, control died - abnormal exit condition"); bonobo_control_disconnected (user_data); return FALSE; } BonoboControl * bonobo_control_construct (BonoboControl *control, GtkWidget *widget) { g_return_val_if_fail (GTK_IS_WIDGET (widget), NULL); g_return_val_if_fail (BONOBO_IS_CONTROL (control), NULL); #ifdef GDK_WINDOWING_X11 /* * This sets up the X handler for Bonobo objects. We basically will * ignore X errors if our container dies (because X will kill the * windows of the container and our container without telling us). */ bonobo_setup_x_error_handler (); #endif /* * Start the clock ticking until we emit 'disconnected' * since, we never got a valid frame. */ control->priv->no_frame_timeout_id = g_timeout_add ( control_purge_delay, (GSourceFunc) never_got_frame_timeout, control); control->priv->widget = g_object_ref_sink (widget); gtk_container_add (GTK_CONTAINER (control->priv->plug), control->priv->widget); control->priv->ui_component = NULL; control->priv->propbag = CORBA_OBJECT_NIL; return control; } /** * bonobo_control_new: * @widget: a GTK widget that contains the control and will be passed to the * container process. * * This function creates a new BonoboControl object for @widget. * * Returns: a BonoboControl object that implements the Bonobo::Control CORBA * service that will transfer the @widget to the container process. */ BonoboControl * bonobo_control_new (GtkWidget *widget) { BonoboControl *control; g_return_val_if_fail (GTK_IS_WIDGET (widget), NULL); control = g_object_new (bonobo_control_get_type (), NULL); return bonobo_control_construct (control, widget); } /** * bonobo_control_get_widget: * @control: a BonoboControl * * Returns the GtkWidget associated with a BonoboControl. * * Return value: the BonoboControl's widget **/ GtkWidget * bonobo_control_get_widget (BonoboControl *control) { g_return_val_if_fail (BONOBO_IS_CONTROL (control), NULL); return control->priv->widget; } /** * bonobo_control_set_automerge: * @control: A #BonoboControl. * @automerge: Whether or not menus and toolbars should be * automatically merged when the control is activated. * * Sets whether or not the control handles menu/toolbar merging * automatically. If automerge is on, the control will automatically * register its BonoboUIComponent with the remote BonoboUIContainer * when it is activated. */ void bonobo_control_set_automerge (BonoboControl *control, gboolean automerge) { g_return_if_fail (BONOBO_IS_CONTROL (control)); control->priv->automerge = automerge; if (automerge && !control->priv->ui_component) control->priv->ui_component = bonobo_ui_component_new_default (); } /** * bonobo_control_get_automerge: * @control: A #BonoboControl. * * Returns: Whether or not the control is set to automerge its * menus/toolbars. See bonobo_control_set_automerge(). */ gboolean bonobo_control_get_automerge (BonoboControl *control) { g_return_val_if_fail (BONOBO_IS_CONTROL (control), FALSE); return control->priv->automerge; } static void bonobo_control_destroy (BonoboObject *object) { BonoboControl *control = (BonoboControl *) object; dbgprintf ("bonobo_control_destroy %p\n", object); if (control->priv->plug) bonobo_control_set_plug (control, NULL); bonobo_control_unset_control_frame (control, NULL); bonobo_control_set_properties (control, CORBA_OBJECT_NIL, NULL); bonobo_control_set_ui_component (control, NULL); bonobo_control_disconnected (control); if (control->priv->widget) { gtk_widget_destroy (GTK_WIDGET (control->priv->widget)); g_object_unref (control->priv->widget); } control->priv->widget = NULL; control->priv->popup_ui_container = bonobo_object_unref ( (BonoboObject *) control->priv->popup_ui_container); if (control->priv->popup_ui_engine) g_object_unref (control->priv->popup_ui_engine); control->priv->popup_ui_engine = NULL; control->priv->popup_ui_component = bonobo_object_unref ( (BonoboObject *) control->priv->popup_ui_component); control->priv->popup_ui_sync = NULL; control->priv->inproc_frame = NULL; BONOBO_OBJECT_CLASS (bonobo_control_parent_class)->destroy (object); } static void bonobo_control_finalize (GObject *object) { BonoboControl *control = BONOBO_CONTROL (object); dbgprintf ("bonobo_control_finalize %p\n", object); g_free (control->priv); bonobo_control_parent_class->finalize (object); } /** * bonobo_control_get_control_frame: * @control: A BonoboControl object whose Bonobo_ControlFrame CORBA interface is * being retrieved. * @opt_ev: an optional exception environment * * Returns: The Bonobo_ControlFrame CORBA object associated with @control, this is * a CORBA_Object_duplicated object. You need to CORBA_Object_release it when you are * done with it. */ Bonobo_ControlFrame bonobo_control_get_control_frame (BonoboControl *control, CORBA_Environment *opt_ev) { Bonobo_ControlFrame frame; CORBA_Environment *ev, tmp_ev; g_return_val_if_fail (BONOBO_IS_CONTROL (control), CORBA_OBJECT_NIL); if (!opt_ev) { CORBA_exception_init (&tmp_ev); ev = &tmp_ev; } else ev = opt_ev; frame = CORBA_Object_duplicate (control->priv->frame, ev); if (!opt_ev) CORBA_exception_free (&tmp_ev); return frame; } /** * bonobo_control_get_ui_component: * @control: The control * * Return value: the associated UI component **/ BonoboUIComponent * bonobo_control_get_ui_component (BonoboControl *control) { g_return_val_if_fail (BONOBO_IS_CONTROL (control), NULL); if (!control->priv->ui_component) control->priv->ui_component = bonobo_ui_component_new_default (); return control->priv->ui_component; } void bonobo_control_set_ui_component (BonoboControl *control, BonoboUIComponent *component) { g_return_if_fail (BONOBO_IS_CONTROL (control)); g_return_if_fail (component == NULL || BONOBO_IS_UI_COMPONENT (component)); if (component == control->priv->ui_component) return; if (control->priv->ui_component) { bonobo_ui_component_unset_container (control->priv->ui_component, NULL); bonobo_object_unref (BONOBO_OBJECT (control->priv->ui_component)); } control->priv->ui_component = bonobo_object_ref ((BonoboObject *) component); } /** * bonobo_control_set_properties: * @control: A #BonoboControl object. * @pb: A #Bonobo_PropertyBag. * @opt_ev: An optional exception environment * * Binds @pb to @control. When a remote object queries @control * for its property bag, @pb will be used in the responses. */ void bonobo_control_set_properties (BonoboControl *control, Bonobo_PropertyBag pb, CORBA_Environment *opt_ev) { Bonobo_PropertyBag old_bag; g_return_if_fail (BONOBO_IS_CONTROL (control)); if (pb == control->priv->propbag) return; old_bag = control->priv->propbag; control->priv->propbag = bonobo_object_dup_ref (pb, opt_ev); bonobo_object_release_unref (old_bag, opt_ev); } /** * bonobo_control_get_properties: * @control: A #BonoboControl whose PropertyBag has already been set. * * Returns: The #Bonobo_PropertyBag bound to @control. */ Bonobo_PropertyBag bonobo_control_get_properties (BonoboControl *control) { g_return_val_if_fail (BONOBO_IS_CONTROL (control), NULL); return control->priv->propbag; } /** * bonobo_control_get_ambient_properties: * @control: A #BonoboControl which is bound to a remote * #BonoboControlFrame. * @opt_ev: an optional exception environment * * Returns: A #Bonobo_PropertyBag bound to the bag of ambient * properties associated with this #Control's #ControlFrame. */ Bonobo_PropertyBag bonobo_control_get_ambient_properties (BonoboControl *control, CORBA_Environment *opt_ev) { Bonobo_ControlFrame frame; Bonobo_PropertyBag pbag; CORBA_Environment *ev = NULL, tmp_ev; g_return_val_if_fail (BONOBO_IS_CONTROL (control), NULL); frame = control->priv->frame; if (frame == CORBA_OBJECT_NIL) return NULL; if (opt_ev) ev = opt_ev; else { CORBA_exception_init (&tmp_ev); ev = &tmp_ev; } pbag = Bonobo_ControlFrame_getAmbientProperties ( frame, ev); if (BONOBO_EX (ev)) { if (!opt_ev) CORBA_exception_free (&tmp_ev); pbag = CORBA_OBJECT_NIL; } return pbag; } /** * bonobo_control_get_remote_ui_container: * @control: A BonoboControl object which is associated with a remote * ControlFrame. * @opt_ev: an optional exception environment * * Returns: The Bonobo_UIContainer CORBA server for the remote BonoboControlFrame. */ Bonobo_UIContainer bonobo_control_get_remote_ui_container (BonoboControl *control, CORBA_Environment *opt_ev) { CORBA_Environment tmp_ev, *ev; Bonobo_UIContainer ui_container; g_return_val_if_fail (BONOBO_IS_CONTROL (control), CORBA_OBJECT_NIL); g_return_val_if_fail (control->priv->frame != CORBA_OBJECT_NIL, CORBA_OBJECT_NIL); if (!opt_ev) { CORBA_exception_init (&tmp_ev); ev = &tmp_ev; } else ev = opt_ev; ui_container = Bonobo_ControlFrame_getUIContainer (control->priv->frame, ev); bonobo_object_check_env (BONOBO_OBJECT (control), control->priv->frame, ev); if (BONOBO_EX (ev)) ui_container = CORBA_OBJECT_NIL; if (!opt_ev) CORBA_exception_free (&tmp_ev); return ui_container; } /** * bonobo_control_activate_notify: * @control: A #BonoboControl object which is bound * to a remote ControlFrame. * @activated: Whether or not @control has been activated. * @opt_ev: An optional exception environment * * Notifies the remote ControlFrame which is associated with * @control that @control has been activated/deactivated. */ void bonobo_control_activate_notify (BonoboControl *control, gboolean activated, CORBA_Environment *opt_ev) { CORBA_Environment *ev, tmp_ev; g_return_if_fail (BONOBO_IS_CONTROL (control)); g_return_if_fail (control->priv->frame != CORBA_OBJECT_NIL); if (!opt_ev) { CORBA_exception_init (&tmp_ev); ev = &tmp_ev; } else ev = opt_ev; Bonobo_ControlFrame_notifyActivated (control->priv->frame, activated, ev); bonobo_object_check_env (BONOBO_OBJECT (control), control->priv->frame, ev); if (!opt_ev) CORBA_exception_free (&tmp_ev); } static void bonobo_control_class_init (BonoboControlClass *klass) { GObjectClass *object_class = (GObjectClass *)klass; BonoboObjectClass *bonobo_object_class = (BonoboObjectClass *)klass; POA_Bonobo_Control__epv *epv; bonobo_control_parent_class = g_type_class_peek_parent (klass); control_signals [PLUG_CREATED] = g_signal_new ("plug_created", G_TYPE_FROM_CLASS (object_class), G_SIGNAL_RUN_LAST, G_STRUCT_OFFSET (BonoboControlClass, plug_created), NULL, NULL, g_cclosure_marshal_VOID__VOID, G_TYPE_NONE, 0); control_signals [DISCONNECTED] = g_signal_new ("disconnected", G_TYPE_FROM_CLASS (object_class), G_SIGNAL_RUN_LAST, G_STRUCT_OFFSET (BonoboControlClass, disconnected), NULL, NULL, g_cclosure_marshal_VOID__VOID, G_TYPE_NONE, 0); control_signals [SET_FRAME] = g_signal_new ("set_frame", G_TYPE_FROM_CLASS (object_class), G_SIGNAL_RUN_LAST, G_STRUCT_OFFSET (BonoboControlClass, set_frame), NULL, NULL, g_cclosure_marshal_VOID__VOID, G_TYPE_NONE, 0); control_signals [ACTIVATE] = g_signal_new ("activate", G_TYPE_FROM_CLASS (object_class), G_SIGNAL_RUN_LAST, G_STRUCT_OFFSET (BonoboControlClass, activate), NULL, NULL, g_cclosure_marshal_VOID__BOOLEAN, G_TYPE_NONE, 1, G_TYPE_BOOLEAN); object_class->finalize = bonobo_control_finalize; bonobo_object_class->destroy = bonobo_control_destroy; epv = &klass->epv; epv->getProperties = impl_Bonobo_Control_getProperties; epv->getDesiredSize = impl_Bonobo_Control_getDesiredSize; epv->getAccessible = NULL; epv->getWindowId = impl_Bonobo_Control_getWindowId; epv->getPopupContainer = impl_Bonobo_Control_getPopupContainer; epv->setFrame = impl_Bonobo_Control_setFrame; epv->setSize = impl_Bonobo_Control_setSize; epv->setState = impl_Bonobo_Control_setState; epv->activate = impl_Bonobo_Control_activate; epv->focus = impl_Bonobo_Control_focus; } static void bonobo_control_init (BonoboControl *control) { control->priv = g_new0 (BonoboControlPrivate, 1); control->priv->frame = CORBA_OBJECT_NIL; create_plug (control); } BONOBO_TYPE_FUNC_FULL (BonoboControl, Bonobo_Control, BONOBO_OBJECT_TYPE, bonobo_control) /* * Varrarg Property get/set simplification wrappers. */ /** * bonobo_control_set_property: * @control: the control with associated property bag * @opt_ev: optional corba exception environment * @first_prop: the first property's name * * This method takes a NULL terminated list of name, type, value * triplicates, and sets the corresponding values on the control's * associated property bag. **/ void bonobo_control_set_property (BonoboControl *control, CORBA_Environment *opt_ev, const char *first_prop, ...) { Bonobo_PropertyBag bag; char *err; CORBA_Environment *ev, tmp_ev; va_list args; g_return_if_fail (first_prop != NULL); g_return_if_fail (BONOBO_IS_CONTROL (control)); va_start (args, first_prop); if (!opt_ev) { CORBA_exception_init (&tmp_ev); ev = &tmp_ev; } else ev = opt_ev; bag = control->priv->propbag; if ((err = bonobo_property_bag_client_setv (bag, ev, first_prop, args))) g_warning ("Error '%s'", err); if (!opt_ev) CORBA_exception_free (&tmp_ev); va_end (args); } /** * bonobo_control_get_property: * @control: the control with associated property bag * @opt_ev: optional corba exception environment * @first_prop: the first property's name * * This method takes a NULL terminated list of name, type, value * triplicates, and fetches the corresponding values on the control's * associated property bag. **/ void bonobo_control_get_property (BonoboControl *control, CORBA_Environment *opt_ev, const char *first_prop, ...) { Bonobo_PropertyBag bag; char *err; CORBA_Environment *ev, tmp_ev; va_list args; g_return_if_fail (first_prop != NULL); g_return_if_fail (BONOBO_IS_CONTROL (control)); va_start (args, first_prop); if (!opt_ev) { CORBA_exception_init (&tmp_ev); ev = &tmp_ev; } else ev = opt_ev; bag = control->priv->propbag; if ((err = bonobo_property_bag_client_getv (bag, ev, first_prop, args))) g_warning ("Error '%s'", err); if (!opt_ev) CORBA_exception_free (&tmp_ev); va_end (args); } /* * Transient / Modality handling logic */ #undef TRANSIENT_DEBUG static void window_transient_realize_gdk_cb (GtkWidget *widget) { GdkWindow *win; win = g_object_get_data (G_OBJECT (widget), "transient"); g_return_if_fail (win != NULL); #ifdef TRANSIENT_DEBUG g_warning ("Set transient"); #endif gdk_window_set_transient_for ( GTK_WIDGET (widget)->window, win); } static void window_transient_unrealize_gdk_cb (GtkWidget *widget) { GdkWindow *win; win = g_object_get_data (G_OBJECT (widget), "transient"); g_return_if_fail (win != NULL); gdk_property_delete ( win, gdk_atom_intern ("WM_TRANSIENT_FOR", FALSE)); } static void window_transient_destroy_gdk_cb (GtkWidget *widget) { GdkWindow *win; if ((win = g_object_get_data (G_OBJECT (widget), "transient"))) g_object_unref (win); } static void window_set_transient_for_gdk (GtkWindow *window, GdkWindow *parent) { g_return_if_fail (window != NULL); g_return_if_fail (g_object_get_data ( G_OBJECT (window), "transient") == NULL); g_object_ref (parent); g_object_set_data (G_OBJECT (window), "transient", parent); if (GTK_WIDGET_REALIZED (window)) { #ifdef TRANSIENT_DEBUG g_warning ("Set transient"); #endif gdk_window_set_transient_for ( GTK_WIDGET (window)->window, parent); } /* * FIXME: we need to be able to get the screen from * the remote toplevel window for multi-head to work * could use an ambient property on the ControlFrame */ g_signal_connect ( window, "realize", G_CALLBACK (window_transient_realize_gdk_cb), NULL); g_signal_connect ( window, "unrealize", G_CALLBACK (window_transient_unrealize_gdk_cb), NULL); g_signal_connect ( window, "destroy", G_CALLBACK (window_transient_destroy_gdk_cb), NULL); } /** * bonobo_control_set_transient_for: * @control: a control with associated control frame * @window: a window upon which to set the transient window. * * Attempts to make the @window transient for the toplevel * of any associated controlframe the BonoboControl may have. **/ void bonobo_control_set_transient_for (BonoboControl *control, GtkWindow *window, CORBA_Environment *opt_ev) { CORBA_char *id; GdkDisplay *display; GdkWindow *win; GdkNativeWindow window_id; CORBA_Environment *ev = NULL, tmp_ev; Bonobo_ControlFrame frame; gpointer local_win; g_return_if_fail (GTK_IS_WINDOW (window)); g_return_if_fail (BONOBO_IS_CONTROL (control)); /* FIXME: special case the local case ! * we can only do this if set_transient is virtualized * and thus we can catch it in BonoboSocket and chain up * again if we are embedded inside an embedded thing. */ frame = control->priv->frame; if (frame == CORBA_OBJECT_NIL) return; if (opt_ev) ev = opt_ev; else { CORBA_exception_init (&tmp_ev); ev = &tmp_ev; } id = Bonobo_ControlFrame_getToplevelId (frame, ev); g_return_if_fail (!BONOBO_EX (ev) && id != NULL); window_id = bonobo_control_x11_from_window_id (id); #ifdef TRANSIENT_DEBUG g_warning ("Got id '%s' -> %d", id, window_id); #endif CORBA_free (id); display = gtk_widget_get_display (GTK_WIDGET (window)); #if defined (GDK_WINDOWING_X11) local_win = gdk_xid_table_lookup_for_display (display, window_id); #elif defined (GDK_WINDOWING_WIN32) local_win = gdk_win32_handle_table_lookup (window_id); #endif if (local_win == NULL) win = gdk_window_foreign_new_for_display (display, window_id); else { win = GDK_WINDOW (local_win); g_object_ref (win); } g_return_if_fail (win != NULL); window_set_transient_for_gdk (window, win); if (!opt_ev) CORBA_exception_free (&tmp_ev); } /** * bonobo_control_unset_transient_for: * @control: a control with associated control frame * @window: a window upon which to unset the transient window. * **/ void bonobo_control_unset_transient_for (BonoboControl *control, GtkWindow *window, CORBA_Environment *opt_ev) { g_return_if_fail (GTK_IS_WINDOW (window)); g_signal_handlers_disconnect_by_func ( window, G_CALLBACK (window_transient_realize_gdk_cb), NULL); g_signal_handlers_disconnect_by_func ( window, G_CALLBACK (window_transient_unrealize_gdk_cb), NULL); g_signal_handlers_disconnect_by_func ( window, G_CALLBACK (window_transient_destroy_gdk_cb), NULL); window_transient_unrealize_gdk_cb (GTK_WIDGET (window)); } void bonobo_control_set_plug (BonoboControl *control, BonoboPlug *plug) { BonoboPlug *old_plug; g_return_if_fail (BONOBO_IS_CONTROL (control)); if ((BonoboPlug *) control->priv->plug == plug) return; dbgprintf ("bonobo_control_set_plug (%p, %p) [%p]\n", control, plug, control->priv->plug); old_plug = (BonoboPlug *) control->priv->plug; if (plug) control->priv->plug = g_object_ref (plug); else control->priv->plug = NULL; if (old_plug) { bonobo_plug_set_control (old_plug, NULL); gtk_widget_destroy (GTK_WIDGET (old_plug)); g_object_unref (old_plug); } if (plug) bonobo_plug_set_control (plug, control); } /** * bonobo_control_get_plug: * @control: the control.a * * This methods returns the current plug associated with * the control. If the remote container re-parents the * control - the plug will die, and a new plug has to be * created. Thus this should really only be called from * a 'plug_created' signal handler. * * Return value: the _current_ plug. **/ BonoboPlug * bonobo_control_get_plug (BonoboControl *control) { g_return_val_if_fail (BONOBO_IS_CONTROL (control), NULL); return (BonoboPlug *) control->priv->plug; } void bonobo_control_set_popup_ui_container (BonoboControl *control, BonoboUIContainer *ui_container) { g_return_if_fail (BONOBO_IS_CONTROL (control)); g_return_if_fail (BONOBO_IS_UI_CONTAINER (ui_container)); g_assert (control->priv->popup_ui_container == NULL); control->priv->popup_ui_container = bonobo_object_ref ( BONOBO_OBJECT (ui_container)); } BonoboUIContainer * bonobo_control_get_popup_ui_container (BonoboControl *control) { g_return_val_if_fail (BONOBO_IS_CONTROL (control), NULL); if (!control->priv->popup_ui_container) { BonoboUIEngine *ui_engine; BonoboUISync *ui_sync; ui_engine = bonobo_ui_engine_new (G_OBJECT (control)); ui_sync = bonobo_ui_sync_menu_new (ui_engine, NULL, NULL, NULL); bonobo_ui_engine_add_sync (ui_engine, ui_sync); /* re-entrancy guard */ if (control->priv->popup_ui_container) { g_object_unref (ui_engine); return control->priv->popup_ui_container; } control->priv->popup_ui_engine = ui_engine; control->priv->popup_ui_sync = ui_sync; control->priv->popup_ui_container = bonobo_ui_container_new (); bonobo_ui_container_set_engine ( control->priv->popup_ui_container, control->priv->popup_ui_engine); } return control->priv->popup_ui_container; } BonoboUIComponent * bonobo_control_get_popup_ui_component (BonoboControl *control) { BonoboUIContainer *ui_container; g_return_val_if_fail (BONOBO_IS_CONTROL (control), NULL); if (!control->priv->popup_ui_component) { ui_container = bonobo_control_get_popup_ui_container (control); control->priv->popup_ui_component = bonobo_ui_component_new_default (); bonobo_ui_component_set_container ( control->priv->popup_ui_component, BONOBO_OBJREF (ui_container), NULL); } return control->priv->popup_ui_component; } gboolean bonobo_control_do_popup_path (BonoboControl *control, GtkWidget *parent_menu_shell, GtkWidget *parent_menu_item, GtkMenuPositionFunc func, gpointer data, guint button, const char *popup_path, guint32 activate_time) { GtkWidget *menu; g_return_val_if_fail (BONOBO_IS_CONTROL (control), FALSE); if (!control->priv->popup_ui_container) return FALSE; menu = gtk_menu_new (); bonobo_ui_sync_menu_add_popup ( BONOBO_UI_SYNC_MENU (control->priv->popup_ui_sync), GTK_MENU (menu), popup_path); gtk_menu_set_screen ( GTK_MENU (menu), gtk_window_get_screen (GTK_WINDOW (control->priv->plug))); gtk_widget_show (menu); gtk_menu_popup (GTK_MENU (menu), parent_menu_shell, parent_menu_item, func, data, button, activate_time); return TRUE; } gboolean bonobo_control_do_popup_full (BonoboControl *control, GtkWidget *parent_menu_shell, GtkWidget *parent_menu_item, GtkMenuPositionFunc func, gpointer data, guint button, guint32 activate_time) { char *path; gboolean retval; path = g_strdup_printf ("/popups/button%u", button); retval = bonobo_control_do_popup_path (control, parent_menu_shell, parent_menu_item, func, data, button, path, activate_time); g_free (path); return retval; } gboolean bonobo_control_do_popup (BonoboControl *control, guint button, guint32 activate_time) { return bonobo_control_do_popup_full ( control, NULL, NULL, NULL, NULL, button, activate_time); } /* Track the living controls */ static GSList *live_controls = NULL; static BonoboControlLifeCallback life_callback = (BonoboControlLifeCallback) bonobo_main_quit; /** * bonobo_control_life_set_callback: * @all_dead_callback: method to call at idle when no controls remain * * See #bonobo_control_life_instrument **/ void bonobo_control_life_set_callback (BonoboControlLifeCallback all_dead_callback) { life_callback = all_dead_callback; } static gboolean control_life_idle_cb (gpointer data) { if (!live_controls && life_callback) life_callback (); return FALSE; } static void control_life_disconnected (BonoboControl *control) { live_controls = g_slist_remove (live_controls, control); if (!live_controls) g_idle_add (control_life_idle_cb, NULL); } /** * bonobo_control_life_instrument: * @control: control to manage. * * Request that @control is lifecycle managed by this code; * when it (and all other registerees are dead, the * all_dead_callback set by #bonobo_control_life_set_callback * will be called at idle. **/ void bonobo_control_life_instrument (BonoboControl *control) { g_return_if_fail (BONOBO_IS_CONTROL (control)); g_signal_connect (control, "disconnected", G_CALLBACK (control_life_disconnected), NULL); live_controls = g_slist_prepend (live_controls, control); } /** * bonobo_control_life_get_count: * @void: * * calculates the number of live controls under management. * * Return value: the number of live controls. **/ int bonobo_control_life_get_count (void) { return g_slist_length (live_controls); } libbonoboui-2.24.5/bonobo/bonobo-ui-toolbar-control-item.h0000644000076400007640000000513111173072741020435 00000000000000/* -*- Mode: C; indent-tabs-mode: t; c-basic-offset: 8; tab-width: 8 -*- */ /** * bonobo-ui-toolbar-control-item.c: A special toolbar item for controls. * * Author: * Jon K Hellan (hellan@acm.org) * * Copyright 2000 Jon K Hellan. */ #ifndef _BONOBO_UI_TOOLBAR_CONTROL_ITEM_H_ #define _BONOBO_UI_TOOLBAR_CONTROL_ITEM_H_ #include #include "bonobo-ui-toolbar-button-item.h" #include "bonobo-widget.h" /* All private / non-installed header */ G_BEGIN_DECLS #define BONOBO_TYPE_UI_TOOLBAR_CONTROL_ITEM (bonobo_ui_toolbar_control_item_get_type ()) #define BONOBO_UI_TOOLBAR_CONTROL_ITEM(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BONOBO_TYPE_UI_TOOLBAR_CONTROL_ITEM, BonoboUIToolbarControlItem)) #define BONOBO_UI_TOOLBAR_CONTROL_ITEM_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), BONOBO_TYPE_UI_TOOLBAR_CONTROL_ITEM, BonoboUIToolbarControlItemClass)) #define BONOBO_IS_UI_TOOLBAR_CONTROL_ITEM(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BONOBO_TYPE_UI_TOOLBAR_CONTROL_ITEM)) #define BONOBO_IS_UI_TOOLBAR_CONTROL_ITEM_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), BONOBO_TYPE_UI_TOOLBAR_CONTROL_ITEM)) typedef enum { BONOBO_UI_TOOLBAR_CONTROL_DISPLAY_CONTROL, BONOBO_UI_TOOLBAR_CONTROL_DISPLAY_BUTTON, BONOBO_UI_TOOLBAR_CONTROL_DISPLAY_NONE } BonoboUIToolbarControlDisplay; typedef struct _BonoboUIToolbarControlItemPrivate BonoboUIToolbarControlItemPrivate; typedef struct { GtkToolButton parent; GtkWidget *widget; /* The widget (of a control, or custom */ BonoboWidget *control; /* The wrapped control - if a control, or NULL */ GtkWidget *box; /* Box to pack innards inside to avoid reparenting */ GtkWidget *button; /* GtkToolItem's internal button */ BonoboUIToolbarControlDisplay hdisplay; BonoboUIToolbarControlDisplay vdisplay; } BonoboUIToolbarControlItem; typedef struct { GtkToolButtonClass parent_class; } BonoboUIToolbarControlItemClass; GType bonobo_ui_toolbar_control_item_get_type (void) G_GNUC_CONST; GtkWidget *bonobo_ui_toolbar_control_item_new (Bonobo_Control control_ref); GtkWidget *bonobo_ui_toolbar_control_item_new_widget (GtkWidget *custom_in_proc_widget); GtkWidget *bonobo_ui_toolbar_control_item_construct (BonoboUIToolbarControlItem *control_item, GtkWidget *widget, Bonobo_Control control_ref); void bonobo_ui_toolbar_control_item_set_display (BonoboUIToolbarControlItem *item, BonoboUIToolbarControlDisplay hdisplay, BonoboUIToolbarControlDisplay vdisplay); G_END_DECLS #endif /* _BONOBO_UI_TOOLBAR_CONTROL_ITEM_H_ */ libbonoboui-2.24.5/bonobo/bonobo-dock.h0000644000076400007640000001071211173072741014667 00000000000000/* bonobo-dock.h Copyright (C) 1998 Free Software Foundation All rights reserved. The Gnome Library is free software; you can redistribute it and/or modify it under the terms of the GNU Library General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. The Gnome Library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Library General Public License for more details. You should have received a copy of the GNU Library General Public License along with the Gnome Library; see the file COPYING.LIB. If not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. Author: Ettore Perazzoli */ /* @NOTATION@ */ #ifndef _BONOBO_DOCK_H #define _BONOBO_DOCK_H #include G_BEGIN_DECLS #define BONOBO_TYPE_DOCK (bonobo_dock_get_type ()) #define BONOBO_DOCK(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BONOBO_TYPE_DOCK, BonoboDock)) #define BONOBO_DOCK_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), BONOBO_TYPE_DOCK, BonoboDockClass)) #define BONOBO_IS_DOCK(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BONOBO_TYPE_DOCK)) #define BONOBO_IS_DOCK_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), BONOBO_TYPE_DOCK)) #define BONOBO_DOCK_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), BONOBO_TYPE_DOCK, BonoboDockClass)) typedef enum { BONOBO_DOCK_TOP, BONOBO_DOCK_RIGHT, BONOBO_DOCK_BOTTOM, BONOBO_DOCK_LEFT, BONOBO_DOCK_FLOATING } BonoboDockPlacement; typedef struct _BonoboDock BonoboDock; typedef struct _BonoboDockPrivate BonoboDockPrivate; typedef struct _BonoboDockClass BonoboDockClass; #include #include struct _BonoboDock { GtkContainer container; GtkWidget *client_area; /* BonoboDockBands associated with this dock. */ GList *top_bands; GList *bottom_bands; GList *right_bands; GList *left_bands; /* Children that are currently not docked. */ GList *floating_children; /* GtkWidget */ /* Client rectangle before drag. */ GtkAllocation client_rect; guint floating_items_allowed : 1; /*< private >*/ BonoboDockPrivate *_priv; }; struct _BonoboDockClass { GtkContainerClass parent_class; void (* layout_changed) (BonoboDock *dock); gpointer dummy[4]; }; GtkWidget *bonobo_dock_new (void); GType bonobo_dock_get_type (void) G_GNUC_CONST; void bonobo_dock_allow_floating_items (BonoboDock *dock, gboolean enable); void bonobo_dock_add_item (BonoboDock *dock, BonoboDockItem *item, BonoboDockPlacement placement, guint band_num, gint position, guint offset, gboolean in_new_band); void bonobo_dock_add_floating_item (BonoboDock *dock, BonoboDockItem *widget, gint x, gint y, GtkOrientation orientation); void bonobo_dock_set_client_area (BonoboDock *dock, GtkWidget *widget); GtkWidget *bonobo_dock_get_client_area (BonoboDock *dock); BonoboDockItem *bonobo_dock_get_item_by_name (BonoboDock *dock, const gchar *name, BonoboDockPlacement *placement_return, guint *num_band_return, guint *band_position_return, guint *offset_return); BonoboDockLayout *bonobo_dock_get_layout (BonoboDock *dock); gboolean bonobo_dock_add_from_layout (BonoboDock *dock, BonoboDockLayout *layout); /* protected */ #ifdef BONOBO_UI_INTERNAL gint _bonobo_dock_handle_key_nav (BonoboDock *dock, BonoboDockBand *band, BonoboDockItem *item, GdkEventKey *event); #endif /* BONOBO_UI_INTERNAL */ G_END_DECLS #endif libbonoboui-2.24.5/bonobo/bonobo-ui-toolbar-button-item.h0000644000076400007640000000527611173072741020302 00000000000000/* -*- Mode: C; indent-tabs-mode: t; c-basic-offset: 8; tab-width: 8 -*- */ /** * bonobo-ui-toolbar-button-item.h: a toolbar button * * Author: Ettore Perazzoli * * Copyright (C) 2000 Helix Code, Inc. */ #ifndef _BONOBO_UI_TOOLBAR_BUTTON_ITEM_H_ #define _BONOBO_UI_TOOLBAR_BUTTON_ITEM_H_ #include #include #include "bonobo-ui-toolbar-item.h" #ifndef BONOBO_UI_DISABLE_DEPRECATED G_BEGIN_DECLS #define BONOBO_TYPE_UI_TOOLBAR_BUTTON_ITEM (bonobo_ui_toolbar_button_item_get_type ()) #define BONOBO_UI_TOOLBAR_BUTTON_ITEM(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BONOBO_TYPE_UI_TOOLBAR_BUTTON_ITEM, BonoboUIToolbarButtonItem)) #define BONOBO_UI_TOOLBAR_BUTTON_ITEM_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), BONOBO_TYPE_UI_TOOLBAR_BUTTON_ITEM, BonoboUIToolbarButtonItemClass)) #define BONOBO_IS_UI_TOOLBAR_BUTTON_ITEM(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BONOBO_TYPE_UI_TOOLBAR_BUTTON_ITEM)) #define BONOBO_IS_UI_TOOLBAR_BUTTON_ITEM_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), BONOBO_TYPE_UI_TOOLBAR_BUTTON_ITEM)) typedef struct _BonoboUIToolbarButtonItemPrivate BonoboUIToolbarButtonItemPrivate; typedef struct { BonoboUIToolbarItem parent; BonoboUIToolbarButtonItemPrivate *priv; } BonoboUIToolbarButtonItem; typedef struct { BonoboUIToolbarItemClass parent_class; /* Virtual methods */ void (* set_icon) (BonoboUIToolbarButtonItem *button_item, gpointer image); void (* set_label) (BonoboUIToolbarButtonItem *button_item, const char *label); /* Signals. */ void (* clicked) (BonoboUIToolbarButtonItem *toolbar_button_item); void (* set_want_label) (BonoboUIToolbarButtonItem *toolbar_button_item); gpointer dummy[2]; } BonoboUIToolbarButtonItemClass; GType bonobo_ui_toolbar_button_item_get_type (void) G_GNUC_CONST; void bonobo_ui_toolbar_button_item_construct (BonoboUIToolbarButtonItem *item, GtkButton *button_widget, GdkPixbuf *icon, const char *label); GtkWidget *bonobo_ui_toolbar_button_item_new (GdkPixbuf *icon, const char *label); void bonobo_ui_toolbar_button_item_set_image (BonoboUIToolbarButtonItem *button_item, gpointer image); void bonobo_ui_toolbar_button_item_set_label (BonoboUIToolbarButtonItem *button_item, const char *label); GtkButton *bonobo_ui_toolbar_button_item_get_button_widget (BonoboUIToolbarButtonItem *button_item); G_END_DECLS #endif /* BONOBO_UI_DISABLE_DEPRECATED */ #endif /* _BONOBO_UI_TOOLBAR_BUTTON_ITEM_H_ */ libbonoboui-2.24.5/bonobo/bonobo-ui-config-widget.h0000644000076400007640000000317311173072741017113 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ /** * bonobo-ui-config-widget.h: Bonobo Component UIConfig * * Author: * Michael Meeks (michael@helixcode.com) * * Copyright 2000 Helix Code, Inc. */ #ifndef BONOBO_UI_CONFIG_WIDGET_H #define BONOBO_UI_CONFIG_WIDGET_H /* Should be purely internal */ #ifndef BONOBO_UI_DISABLE_DEPRECATED #include #include G_BEGIN_DECLS #define BONOBO_TYPE_UI_CONFIG_WIDGET (bonobo_ui_config_widget_get_type ()) #define BONOBO_UI_CONFIG_WIDGET(obj) G_TYPE_CHECK_INSTANCE_CAST(obj, bonobo_ui_config_widget_get_type (), BonoboUIConfigWidget) #define BONOBO_UI_CONFIG_WIDGET_CLASS(klass) G_TYPE_CHECK_CLASS_CAST (klass, bonobo_ui_config_widget_get_type (), BonoboUIConfigWidgetClass) #define BONOBO_IS_UI_CONFIG_WIDGET(obj) G_TYPE_CHECK_INSTANCE_TYPE (obj, bonobo_ui_config_widget_get_type ()) typedef struct _BonoboUIConfigWidgetPrivate BonoboUIConfigWidgetPrivate; typedef struct { GtkVBox parent; BonoboUIEngine *engine; BonoboUIConfigWidgetPrivate *priv; } BonoboUIConfigWidget; typedef struct { GtkVBoxClass parent_class; gpointer dummy[2]; } BonoboUIConfigWidgetClass; GType bonobo_ui_config_widget_get_type (void) G_GNUC_CONST; GtkWidget *bonobo_ui_config_widget_construct (BonoboUIConfigWidget *config, BonoboUIEngine *engine, GtkAccelGroup *accel_group); GtkWidget *bonobo_ui_config_widget_new (BonoboUIEngine *engine, GtkAccelGroup *accel_group); G_END_DECLS #endif /* BONOBO_UI_DISABLE_DEPRECATED */ #endif /* BONOBO_UI_CONFIG_WIDGET_H */ libbonoboui-2.24.5/bonobo/bonobo-control.h0000644000076400007640000001513011173072741015426 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ /** * Bonobo control object * * Author: * Nat Friedman (nat@helixcode.com) * Miguel de Icaza (miguel@helixcode.com) * * Copyright 1999, 2000 Helix Code, Inc. */ #ifndef _BONOBO_CONTROL_H_ #define _BONOBO_CONTROL_H_ #include #include typedef struct _BonoboControl BonoboControl; #include #include #include #include G_BEGIN_DECLS #define BONOBO_TYPE_CONTROL (bonobo_control_get_type ()) #define BONOBO_CONTROL(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), BONOBO_TYPE_CONTROL, BonoboControl)) #define BONOBO_CONTROL_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), BONOBO_TYPE_CONTROL, BonoboControlClass)) #define BONOBO_IS_CONTROL(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), BONOBO_TYPE_CONTROL)) #define BONOBO_IS_CONTROL_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), BONOBO_TYPE_CONTROL)) typedef struct _BonoboControlPrivate BonoboControlPrivate; struct _BonoboControl { BonoboObject base; BonoboControlPrivate *priv; }; typedef struct { BonoboObjectClass parent_class; POA_Bonobo_Control__epv epv; gpointer dummy[2]; /* Signals. */ void (*plug_created) (BonoboControl *control); void (*disconnected) (BonoboControl *control); void (*set_frame) (BonoboControl *control); void (*activate) (BonoboControl *control, gboolean state); } BonoboControlClass; /* The main API */ BonoboControl *bonobo_control_new (GtkWidget *widget); GtkWidget *bonobo_control_get_widget (BonoboControl *control); void bonobo_control_set_automerge (BonoboControl *control, gboolean automerge); gboolean bonobo_control_get_automerge (BonoboControl *control); void bonobo_control_set_property (BonoboControl *control, CORBA_Environment *opt_ev, const char *first_prop, ...) G_GNUC_NULL_TERMINATED; void bonobo_control_get_property (BonoboControl *control, CORBA_Environment *opt_ev, const char *first_prop, ...) G_GNUC_NULL_TERMINATED; void bonobo_control_set_transient_for (BonoboControl *control, GtkWindow *window, CORBA_Environment *opt_ev); void bonobo_control_unset_transient_for (BonoboControl *control, GtkWindow *window, CORBA_Environment *opt_ev); /* "Internal" stuff */ GType bonobo_control_get_type (void) G_GNUC_CONST; BonoboControl *bonobo_control_construct (BonoboControl *control, GtkWidget *widget); BonoboPlug *bonobo_control_get_plug (BonoboControl *control); BonoboUIComponent *bonobo_control_get_ui_component (BonoboControl *control); void bonobo_control_set_ui_component (BonoboControl *control, BonoboUIComponent *component); Bonobo_UIContainer bonobo_control_get_remote_ui_container (BonoboControl *control, CORBA_Environment *opt_ev); void bonobo_control_set_control_frame (BonoboControl *control, Bonobo_ControlFrame control_frame, CORBA_Environment *opt_ev); Bonobo_ControlFrame bonobo_control_get_control_frame (BonoboControl *control, CORBA_Environment *opt_ev); void bonobo_control_set_properties (BonoboControl *control, Bonobo_PropertyBag pb, CORBA_Environment *opt_ev); Bonobo_PropertyBag bonobo_control_get_properties (BonoboControl *control); Bonobo_PropertyBag bonobo_control_get_ambient_properties (BonoboControl *control, CORBA_Environment *opt_ev); void bonobo_control_activate_notify (BonoboControl *control, gboolean activated, CORBA_Environment *opt_ev); Bonobo_Gdk_WindowId bonobo_control_window_id_from_x11 (guint32 x11_id); guint32 bonobo_control_x11_from_window_id (const CORBA_char *id); #define bonobo_control_windowid_from_x11(a) \ bonobo_control_window_id_from_x11(a) /* Popup API */ #define BONOBO_CONTROL_POPUP_BUTTON1 "/popups/button1" #define BONOBO_CONTROL_POPUP_BUTTON2 "/popups/button2" #define BONOBO_CONTROL_POPUP_BUTTON3 "/popups/button3" BonoboUIContainer *bonobo_control_get_popup_ui_container (BonoboControl *control); BonoboUIComponent *bonobo_control_get_popup_ui_component (BonoboControl *control); void bonobo_control_set_popup_ui_container (BonoboControl *control, BonoboUIContainer *ui_container); gboolean bonobo_control_do_popup (BonoboControl *control, guint button, guint32 activate_time); gboolean bonobo_control_do_popup_full (BonoboControl *control, GtkWidget *parent_menu_shell, GtkWidget *parent_menu_item, GtkMenuPositionFunc func, gpointer data, guint button, guint32 activate_time); gboolean bonobo_control_do_popup_path (BonoboControl *control, GtkWidget *parent_menu_shell, GtkWidget *parent_menu_item, GtkMenuPositionFunc func, gpointer data, guint button, const char *popup_path, guint32 activate_time); /* Simple lifecycle helpers - using the 'disconnected' signal */ typedef void (*BonoboControlLifeCallback) (void); void bonobo_control_life_set_purge (long ms); void bonobo_control_life_set_callback (BonoboControlLifeCallback all_dead_callback); void bonobo_control_life_instrument (BonoboControl *control); int bonobo_control_life_get_count (void); G_END_DECLS #endif /* _BONOBO_CONTROL_H_ */ libbonoboui-2.24.5/bonobo/bonobo-dock-band.c0000644000076400007640000015027611173072741015576 00000000000000/* bonobo-dock-band.c Copyright (C) 1998 Free Software Foundation The Gnome Library is free software; you can redistribute it and/or modify it under the terms of the GNU Library General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. The Gnome Library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Library General Public License for more details. You should have received a copy of the GNU Library General Public License along with the Gnome Library; see the file COPYING.LIB. If not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. Author: Ettore Perazzoli */ #include #include #include #include #include "bonobo-dock.h" #include "bonobo-dock-band.h" #include "bonobo-dock-item.h" G_DEFINE_TYPE (BonoboDockBand, bonobo_dock_band, GTK_TYPE_CONTAINER) #define noBONOBO_DOCK_BAND_DEBUG /* FIXME: To be removed. */ #if defined BONOBO_DOCK_BAND_DEBUG && defined __GNUC__ #define DEBUG(x) \ do \ { \ printf ("%s.%d: ", __FUNCTION__, __LINE__); \ printf x; \ putchar ('\n'); \ } \ while (0) #else #define DEBUG(x) #endif static void bonobo_dock_band_size_request (GtkWidget *widget, GtkRequisition *requisition); static void bonobo_dock_band_size_allocate (GtkWidget *widget, GtkAllocation *allocation); static void bonobo_dock_band_map (GtkWidget *widget); static void bonobo_dock_band_unmap (GtkWidget *widget); static void bonobo_dock_band_add (GtkContainer *container, GtkWidget *child); static void bonobo_dock_band_remove (GtkContainer *container, GtkWidget *widget); static void bonobo_dock_band_forall (GtkContainer *container, gboolean include_internals, GtkCallback callback, gpointer callback_data); static void bonobo_dock_band_finalize (GObject *object); static void size_allocate_child (BonoboDockBand *band, BonoboDockBandChild *child, guint space, GtkAllocation *child_allocation); static void size_allocate_small (BonoboDockBand *band, GtkAllocation *allocation, guint space, guint requested_space); static gboolean docking_allowed (BonoboDockBand *band, BonoboDockItem *item); static GList *find_child (BonoboDockBand *band, GtkWidget *child); static GList *prev_if_floating (BonoboDockBand *band, GList *c); static GList *next_if_floating (BonoboDockBand *band, GList *c); static GList *prev_not_floating (BonoboDockBand *band, GList *c); static GList *next_not_floating (BonoboDockBand *band, GList *c); static void calc_prev_and_foll_space (BonoboDockBand *band); static guint attempt_move_backward (BonoboDockBand *band, GList *child, guint amount); static guint attempt_move_forward (BonoboDockBand *band, GList *child, guint amount); static gboolean dock_nonempty (BonoboDockBand *band, BonoboDockItem *item, GList *where, gint x, gint y); static gboolean dock_empty (BonoboDockBand *band, BonoboDockItem *item, GList *where, gint x, gint y); static gboolean dock_empty_right (BonoboDockBand *band, BonoboDockItem *item, GList *where, gint x, gint y); static gboolean check_guint_arg (GObject *object, const gchar *name, guint *value_return); static void bonobo_dock_band_class_init (BonoboDockBandClass *klass) { GObjectClass *gobject_class; GtkWidgetClass *widget_class; GtkContainerClass *container_class; gobject_class = (GObjectClass *) klass; widget_class = (GtkWidgetClass *) klass; container_class = (GtkContainerClass *) klass; gobject_class->finalize = bonobo_dock_band_finalize; widget_class->map = bonobo_dock_band_map; widget_class->unmap = bonobo_dock_band_unmap; widget_class->size_request = bonobo_dock_band_size_request; widget_class->size_allocate = bonobo_dock_band_size_allocate; container_class->add = bonobo_dock_band_add; container_class->remove = bonobo_dock_band_remove; container_class->forall = bonobo_dock_band_forall; } static void bonobo_dock_band_init (BonoboDockBand *band) { GtkWidget *widget = GTK_WIDGET (band); GTK_WIDGET_SET_FLAGS (band, GTK_NO_WINDOW); band->_priv = NULL; band->orientation = GTK_ORIENTATION_HORIZONTAL; band->children = NULL; band->num_children = 0; band->floating_child = NULL; band->doing_drag = FALSE; band->max_space_requisition = 0; band->tot_offsets = 0; band->drag_allocation.x = band->drag_allocation.y = -1; band->drag_allocation.width = band->drag_allocation.height = 0; band->new_for_drag = FALSE; if (GTK_WIDGET_VISIBLE (widget)) gtk_widget_queue_resize (widget); } static void bonobo_dock_band_size_request (GtkWidget *widget, GtkRequisition *requisition) { BonoboDockBand *band; GList *lp; DEBUG (("entering function")); band = BONOBO_DOCK_BAND (widget); band->max_space_requisition = 0; band->tot_offsets = 0; requisition->width = 0; requisition->height = 0; for (lp = band->children; lp != NULL; lp = lp->next) { BonoboDockBandChild *c = lp->data; if (GTK_WIDGET_VISIBLE (c->widget)) { GtkRequisition req; req.width = req.height = 0; if (BONOBO_IS_DOCK_ITEM (c->widget)) bonobo_dock_item_handle_size_request(BONOBO_DOCK_ITEM (c->widget), &req); else gtk_widget_size_request (c->widget, &req); if (band->orientation == GTK_ORIENTATION_HORIZONTAL) { gboolean has_preferred_width; guint preferred_width; has_preferred_width = check_guint_arg (G_OBJECT (c->widget), "preferred_width", &preferred_width); if (has_preferred_width) c->max_space_requisition = MAX ((int)preferred_width, req.width); else c->max_space_requisition = req.width; } else { gboolean has_preferred_height; guint preferred_height; has_preferred_height = check_guint_arg (G_OBJECT (c->widget), "preferred_height", &preferred_height); if (has_preferred_height) c->max_space_requisition = MAX ((int)preferred_height, req.height); else c->max_space_requisition = req.height; } band->max_space_requisition += c->max_space_requisition; if (band->orientation == GTK_ORIENTATION_HORIZONTAL) { requisition->height = MAX (requisition->height, req.height); requisition->width += req.width; } else { requisition->width = MAX (requisition->width, req.width); requisition->height += req.height; } c->widget->requisition = req; band->tot_offsets += c->offset; } } widget->requisition = *requisition; } static void size_allocate_child (BonoboDockBand *band, BonoboDockBandChild *child, guint space, GtkAllocation *child_allocation) { GtkWidget *band_widget; band_widget = GTK_WIDGET (band); if (band->orientation == GTK_ORIENTATION_HORIZONTAL) { child_allocation->x += child->real_offset; child_allocation->width = space; child_allocation->height = band_widget->allocation.height; DEBUG (("horizontal %d %d %d %d real_offset %d", child_allocation->x, child_allocation->y, child_allocation->width, child_allocation->height, child->real_offset)); gtk_widget_size_allocate (child->widget, child_allocation); child_allocation->x += child_allocation->width; } else { child_allocation->y += child->real_offset; child_allocation->width = band_widget->allocation.width; child_allocation->height = space; DEBUG (("vertical %d %d %d %d real_offset %d", child_allocation->x, child_allocation->y, child_allocation->width, child_allocation->height, child->real_offset)); gtk_widget_size_allocate (child->widget, child_allocation); child_allocation->y += child_allocation->height; } } /* The allocated space is smaller than the space needed to show all the items completely. */ static void size_allocate_small (BonoboDockBand *band, GtkAllocation *allocation, guint space, guint requested_space) { GtkAllocation child_allocation; GList *lp; guint max_space_requisition; DEBUG (("entering function")); child_allocation.x = allocation->x; child_allocation.y = allocation->y; max_space_requisition = band->max_space_requisition; for (lp = band->children; lp != NULL; lp = lp->next) { BonoboDockBandChild *child; child = lp->data; if (GTK_WIDGET_VISIBLE (child->widget)) { guint child_requested_space; child->real_offset = 0; if (band->orientation == GTK_ORIENTATION_HORIZONTAL) child_requested_space = child->widget->requisition.width; else child_requested_space = child->widget->requisition.height; if (space < child->max_space_requisition || (space - child->max_space_requisition < requested_space - child_requested_space)) break; space -= child->max_space_requisition; requested_space -= child_requested_space; max_space_requisition -= child->max_space_requisition; size_allocate_child (band, child, child->max_space_requisition, &child_allocation); } } if (lp != NULL) { BonoboDockBandChild *child; guint child_space, child_requested_space; child = lp->data; if (GTK_WIDGET_VISIBLE (child->widget)) { child->real_offset = 0; if (band->orientation == GTK_ORIENTATION_HORIZONTAL) child_requested_space = child->widget->requisition.width; else child_requested_space = child->widget->requisition.height; requested_space -= child_requested_space; child_space = space - requested_space; space -= child_space; size_allocate_child (band, child, child_space, &child_allocation); } lp = lp->next; } for (; lp != NULL; lp = lp->next) { BonoboDockBandChild *child; child = lp->data; if (GTK_WIDGET_VISIBLE (child->widget)) { child->real_offset = 0; child->real_offset = 0; if (band->orientation == GTK_ORIENTATION_HORIZONTAL) size_allocate_child (band, child, child->widget->requisition.width, &child_allocation); else size_allocate_child (band, child, child->widget->requisition.height, &child_allocation); } } } /* The allocation is enough to show all the items completely, but not to satisfy all the requested offsets. */ static void size_allocate_medium (BonoboDockBand *band, GtkAllocation *allocation, guint space, guint requested_space) { GtkAllocation child_allocation; GList *lp; gfloat factor; DEBUG (("entering function")); child_allocation.x = allocation->x; child_allocation.y = allocation->y; factor = (1.0 - ((float) (band->max_space_requisition + band->tot_offsets - space) / (float) band->tot_offsets)); /* Shrink the offsets proportionally. */ for (lp = band->children; lp != NULL; lp = lp->next) { BonoboDockBandChild *child; child = lp->data; if (GTK_WIDGET_VISIBLE (child->widget)) { child->real_offset = (guint) ((float) child->offset * factor + .5); size_allocate_child (band, child, child->max_space_requisition, &child_allocation); } } } /* The allocation is enough to show all the items completely, with the requested offsets. */ static void size_allocate_large (BonoboDockBand *band, GtkAllocation *allocation, guint space, guint requested_space) { GtkAllocation child_allocation; GList *lp; DEBUG (("entering function")); child_allocation.x = allocation->x; child_allocation.y = allocation->y; for (lp = band->children; lp != NULL; lp = lp->next) { BonoboDockBandChild *child; child = lp->data; if (GTK_WIDGET_VISIBLE (child->widget)) { child->real_offset = child->offset; size_allocate_child (band, child, child->max_space_requisition, &child_allocation); } } } static void bonobo_dock_band_size_allocate (GtkWidget *widget, GtkAllocation *allocation) { BonoboDockBand *band; guint space, requested_space; band = BONOBO_DOCK_BAND (widget); widget->allocation = *allocation; /* Check if we have a single exclusive item. If so, allocate the whole space to it. */ if (band->num_children == 1) { BonoboDockBandChild *c; c = (BonoboDockBandChild *) band->children->data; if (BONOBO_IS_DOCK_ITEM (c->widget) && GTK_WIDGET_VISIBLE (c->widget)) { BonoboDockItemBehavior behavior; BonoboDockItem *item; item = BONOBO_DOCK_ITEM (c->widget); behavior = bonobo_dock_item_get_behavior (item); if (behavior & BONOBO_DOCK_ITEM_BEH_EXCLUSIVE) { gtk_widget_size_allocate (c->widget, allocation); return; } } } if (band->orientation == GTK_ORIENTATION_HORIZONTAL) { space = allocation->width; requested_space = widget->requisition.width; } else { space = allocation->height; requested_space = widget->requisition.height; } if (space <= band->max_space_requisition) size_allocate_small (band, allocation, space, requested_space); else if (space < band->max_space_requisition + band->tot_offsets) size_allocate_medium (band, allocation, space, requested_space); else size_allocate_large (band, allocation, space, requested_space); calc_prev_and_foll_space (band); } static void bonobo_dock_band_map (GtkWidget *widget) { BonoboDockBand *band = BONOBO_DOCK_BAND (widget); GList *lp; g_return_if_fail(widget != NULL); g_return_if_fail(BONOBO_IS_DOCK_BAND(widget)); GTK_WIDGET_CLASS (bonobo_dock_band_parent_class)->map (widget); for (lp = band->children; lp != NULL; lp = lp->next) { BonoboDockBandChild *c; c = lp->data; if (GTK_WIDGET_VISIBLE (c->widget) && ! GTK_WIDGET_MAPPED (c->widget)) gtk_widget_map (c->widget); } } static void bonobo_dock_band_unmap (GtkWidget *widget) { BonoboDockBand *band = BONOBO_DOCK_BAND (widget); GList *lp; g_return_if_fail(widget != NULL); g_return_if_fail(BONOBO_IS_DOCK_BAND(widget)); GTK_WIDGET_CLASS (bonobo_dock_band_parent_class)->unmap (widget); for (lp = band->children; lp != NULL; lp = lp->next) { BonoboDockBandChild *c; c = lp->data; if (GTK_WIDGET_VISIBLE (c->widget) && GTK_WIDGET_MAPPED (c->widget)) gtk_widget_unmap (c->widget); } } /* GtkContainer methods. */ static void bonobo_dock_band_add (GtkContainer *container, GtkWidget *child) { BonoboDockBand *band = BONOBO_DOCK_BAND (container); g_return_if_fail (bonobo_dock_band_prepend (band, child, 0)); } static void bonobo_dock_band_remove (GtkContainer *container, GtkWidget *widget) { BonoboDockBand *band; GList *child; band = BONOBO_DOCK_BAND (container); if (band->num_children == 0) return; child = find_child (band, widget); if (child != NULL) { if (child == band->floating_child) band->floating_child = NULL; gtk_widget_unparent (widget); band->children = g_list_remove_link (band->children, child); g_free (child->data); g_list_free (child); if (band->doing_drag) { GList *p; for (p = band->children; p != NULL; p = p->next) { BonoboDockBandChild *c; c = (BonoboDockBandChild *) p->data; c->offset = c->real_offset = c->drag_offset; } } gtk_widget_queue_resize (GTK_WIDGET (band)); band->num_children--; DEBUG (("now num_children = %d", band->num_children)); } } static void bonobo_dock_band_forall (GtkContainer *container, gboolean include_internals, GtkCallback callback, gpointer callback_data) { BonoboDockBand *band; BonoboDockBandChild *child; GList *children; band = BONOBO_DOCK_BAND (container); children = band->children; while (children) { child = children->data; children = children->next; (* callback) (child->widget, callback_data); } } static void bonobo_dock_band_finalize (GObject *object) { BonoboDockBand *self = BONOBO_DOCK_BAND (object); g_free (self->_priv); self->_priv = NULL; G_OBJECT_CLASS (bonobo_dock_band_parent_class)->finalize (object); } /* Utility functions. */ static gboolean docking_allowed (BonoboDockBand *band, BonoboDockItem *item) { BonoboDockItemBehavior behavior; BonoboDockBandChild *c; if (band->num_children == 0) return TRUE; behavior = bonobo_dock_item_get_behavior (item); if (behavior & BONOBO_DOCK_ITEM_BEH_EXCLUSIVE) return FALSE; c = (BonoboDockBandChild *) band->children->data; if (BONOBO_IS_DOCK_ITEM (c->widget)) { behavior = bonobo_dock_item_get_behavior (BONOBO_DOCK_ITEM (c->widget)); if (behavior & BONOBO_DOCK_ITEM_BEH_EXCLUSIVE) return c->widget == GTK_WIDGET (item); } return TRUE; } static GList * find_child (BonoboDockBand *band, GtkWidget *child) { GList *children; children = band->children; while (children != NULL) { BonoboDockBandChild *c; c = (BonoboDockBandChild *) children->data; if (c->widget == child) return children; children = children->next; } return NULL; } static GList * next_if_floating (BonoboDockBand *band, GList *c) { if (c != NULL && c == band->floating_child) return c->next; else return c; } static GList * prev_if_floating (BonoboDockBand *band, GList *c) { if (c != NULL && c == band->floating_child) return c->prev; else return c; } static GList * next_not_floating (BonoboDockBand *band, GList *c) { if (c == NULL) return NULL; else return next_if_floating (band, c->next); } static GList * prev_not_floating (BonoboDockBand *band, GList *c) { if (c == NULL) return NULL; else return prev_if_floating (band, c->prev); } static GList * find_where (BonoboDockBand *band, gint offset, gboolean *is_empty) { guint count; /* FIXME: used for debugging only */ gint offs; GList *lp; if (offset < 0) offset = 0; offs = 0; count = 0; /* FIXME */ for (lp = band->children; lp != NULL; lp = lp->next) { BonoboDockBandChild *child; child = lp->data; if (lp == band->floating_child) { if (lp->next == NULL) { DEBUG (("empty last %d", count)); *is_empty = TRUE; return lp == band->floating_child ? lp->prev : lp; } DEBUG (("%d: is floating or dragged.", count++)); continue; } DEBUG (("%d: Checking for x %d, width %d, offs %d (%d)", count, child->drag_allocation.x, child->drag_allocation.width, offs, offset)); if (band->orientation == GTK_ORIENTATION_HORIZONTAL) { if (offset >= offs && offset <= child->drag_allocation.x) { *is_empty = TRUE; DEBUG (("empty %d (allocation.x %d)", count, child->drag_allocation.x)); return prev_if_floating (band, lp->prev); } offs = child->drag_allocation.x + child->drag_allocation.width; if (offset > child->drag_allocation.x && offset < offs) { *is_empty = FALSE; DEBUG (("%d", count)); return lp->prev; } } else { if (offset >= offs && offset <= child->drag_allocation.y) { *is_empty = TRUE; DEBUG (("empty %d (allocation.y %d)", count, child->drag_allocation.y)); return prev_if_floating (band, lp->prev); } offs = child->drag_allocation.y + child->drag_allocation.height; if (offset > child->drag_allocation.y && offset < offs) { *is_empty = FALSE; DEBUG (("%d", count)); return lp->prev; } } if (lp->next == NULL) { DEBUG (("empty last %d", count)); *is_empty = TRUE; return lp; } count++; /* FIXME */ } DEBUG (("nothing done.")); /* Make compiler happy. */ *is_empty = TRUE; return lp; } static void calc_prev_and_foll_space (BonoboDockBand *band) { GtkWidget *widget; GList *lp; if (band->children == NULL) return; widget = GTK_WIDGET (band); lp = next_if_floating (band, band->children); if (lp != NULL) { BonoboDockBandChild *c; guint prev_space, foll_space; prev_space = 0; while (1) { GList *next; c = lp->data; prev_space += c->real_offset; c->prev_space = prev_space; if (band->orientation == GTK_ORIENTATION_HORIZONTAL) prev_space += (c->widget->allocation.width - c->widget->requisition.width); else prev_space += (c->widget->allocation.height - c->widget->requisition.height); next = next_not_floating (band, lp); if (next == NULL) break; lp = next; } if (band->orientation == GTK_ORIENTATION_HORIZONTAL) foll_space = (widget->allocation.x + widget->allocation.width - (c->widget->allocation.x + c->widget->requisition.width)); else foll_space = (widget->allocation.y + widget->allocation.height - (c->widget->allocation.y + c->widget->requisition.height)); DEBUG(("foll_space %d", foll_space)); for (; lp != NULL; lp = prev_not_floating (band, lp)) { c = lp->data; if (band->orientation == GTK_ORIENTATION_HORIZONTAL) foll_space += (c->widget->allocation.width - c->widget->requisition.width); else foll_space += (c->widget->allocation.height - c->widget->requisition.height); c->foll_space = foll_space; foll_space += c->real_offset; } } } static guint attempt_move_backward (BonoboDockBand *band, GList *child, guint amount) { GList *lp; guint effective_amount; effective_amount = 0; for (lp = prev_if_floating (band, child); lp != NULL && amount > 0; lp = prev_not_floating (band, lp)) { BonoboDockBandChild *c; c = lp->data; if (c->drag_offset > amount) { c->real_offset = c->drag_offset - amount; effective_amount += amount; amount = 0; } else { c->real_offset = 0; effective_amount += c->drag_offset; amount -= c->drag_offset; } c->offset = c->real_offset; } return effective_amount; } static guint attempt_move_forward (BonoboDockBand *band, GList *child, guint requirement) { GList *lp; guint effective_amount; effective_amount = 0; for (lp = next_if_floating (band, child); lp != NULL && requirement > 0; lp = next_not_floating (band, lp)) { BonoboDockBandChild *c; c = lp->data; DEBUG (("requirement = %d", requirement)); if (c->drag_offset > requirement) { c->real_offset = c->drag_offset - requirement; effective_amount += requirement; requirement = 0; } else { c->real_offset = 0; effective_amount += c->drag_offset; requirement -= c->drag_offset; } c->offset = c->real_offset; } return effective_amount; } static void reparent_if_needed (BonoboDockBand *band, BonoboDockItem *item, gint x, gint y) { if (GTK_WIDGET (item)->parent != GTK_WIDGET (band)) { bonobo_dock_item_attach (item, GTK_WIDGET (band), x, y); /* Reparenting causes the new floating child to be the first item on the child list (see the `remove' method). */ band->floating_child = band->children; /* Reparenting will remove the grab, so we need to redo it. */ bonobo_dock_item_grab_pointer (item); } } static gboolean dock_nonempty (BonoboDockBand *band, BonoboDockItem *item, GList *where, gint x, gint y) { BonoboDockBandChild *c, *floating_child; GtkOrientation orig_item_orientation; GtkRequisition item_requisition; GList *lp, *next; gint amount, requirement; DEBUG (("entering function")); if (! docking_allowed (band, item)) return FALSE; if (where == NULL) lp = band->children; else lp = next_not_floating (band, where); c = lp->data; orig_item_orientation = bonobo_dock_item_get_orientation (item); if (orig_item_orientation != band->orientation && ! bonobo_dock_item_set_orientation (item, band->orientation)) return FALSE; bonobo_dock_item_handle_size_request (item, &item_requisition); if (band->orientation == GTK_ORIENTATION_HORIZONTAL) requirement = item_requisition.width; else requirement = item_requisition.height; if ((c->drag_prev_space + c->drag_foll_space) < requirement) { DEBUG (("not enough space %d %d", c->drag_prev_space + c->drag_foll_space, requirement)); /* Restore original orientation. */ if (orig_item_orientation != band->orientation) bonobo_dock_item_set_orientation (item, orig_item_orientation); return FALSE; } gtk_widget_size_request (GTK_WIDGET (item), &item_requisition); if (band->orientation == GTK_ORIENTATION_HORIZONTAL) requirement = item_requisition.width; else requirement = item_requisition.height; if (band->orientation == GTK_ORIENTATION_HORIZONTAL) amount = c->drag_allocation.x + c->drag_allocation.width - x; else amount = c->drag_allocation.y + c->drag_allocation.height - y; DEBUG (("amount %d requirement %d", amount, requirement)); amount = attempt_move_backward (band, lp, amount); if (requirement < amount) requirement = 0; else { requirement -= amount; next = next_not_floating (band, lp); if (next != NULL) attempt_move_forward (band, next, requirement); } if (band->orientation == GTK_ORIENTATION_HORIZONTAL) reparent_if_needed (band, item, x, GTK_WIDGET (band)->allocation.y); else reparent_if_needed (band, item, GTK_WIDGET (band)->allocation.x, y); floating_child = band->floating_child->data; floating_child->offset = floating_child->real_offset = 0; if (band->floating_child->prev != lp) { DEBUG (("moving")); band->children = g_list_remove_link (band->children, band->floating_child); band->floating_child->next = lp->next; if (band->floating_child->next != NULL) band->floating_child->next->prev = band->floating_child; band->floating_child->prev = lp; lp->next = band->floating_child; } gtk_widget_queue_resize (floating_child->widget); return TRUE; } static gboolean dock_empty (BonoboDockBand *band, BonoboDockItem *item, GList *where, gint x, gint y) { BonoboDockBandChild *floating_child; BonoboDockBandChild *c1, *c2; GtkOrientation orig_item_orientation; GtkRequisition item_requisition; GList *lp; guint new_offset; GtkWidget *item_widget; DEBUG (("entering function")); if (! docking_allowed (band, item)) return FALSE; if (where != NULL) { lp = next_not_floating (band, where); if (lp == NULL) /* Extreme right is a special case. */ return dock_empty_right (band, item, where, x, y); c1 = where->data; } else { c1 = NULL; lp = next_if_floating (band, band->children); if (lp == NULL) { /* Only one floating element. Easy. */ BonoboDockBandChild *c; if (! bonobo_dock_item_set_orientation (item, band->orientation)) return FALSE; if (band->orientation == GTK_ORIENTATION_HORIZONTAL) reparent_if_needed (band, item, x, GTK_WIDGET (band)->allocation.y); else reparent_if_needed (band, item, GTK_WIDGET (band)->allocation.x, y); c = band->floating_child->data; if (band->orientation == GTK_ORIENTATION_HORIZONTAL) c->real_offset = x - GTK_WIDGET (band)->allocation.x; else c->real_offset = y - GTK_WIDGET (band)->allocation.y; c->offset = c->real_offset; DEBUG (("simple case offset %d", c->offset)); gtk_widget_queue_resize (c->widget); return TRUE; } } c2 = lp->data; item_widget = GTK_WIDGET (item); orig_item_orientation = bonobo_dock_item_get_orientation (item); if (! bonobo_dock_item_set_orientation (item, band->orientation)) return FALSE; /* Check whether there is enough space for the widget. */ { gint space; if (c1 != NULL) space = c1->drag_foll_space; else { space = c2->real_offset + c2->drag_foll_space; if (band->orientation == GTK_ORIENTATION_HORIZONTAL) space += c2->widget->allocation.width - c2->widget->requisition.width; else space += c2->widget->allocation.height - c2->widget->requisition.height; } bonobo_dock_item_handle_size_request (item, &item_requisition); if (space < (band->orientation == GTK_ORIENTATION_HORIZONTAL ? item_requisition.width : item_requisition.height)) { DEBUG (("not enough space %d", space)); /* Restore original orientation. */ if (orig_item_orientation != band->orientation) bonobo_dock_item_set_orientation (item, orig_item_orientation); return FALSE; } } gtk_widget_size_request (item_widget, &item_requisition); if (c1 == NULL) { if (band->orientation == GTK_ORIENTATION_HORIZONTAL) new_offset = x - GTK_WIDGET (band)->allocation.x; else new_offset = y - GTK_WIDGET (band)->allocation.y; } else { if (band->orientation == GTK_ORIENTATION_HORIZONTAL) new_offset = x - (c1->drag_allocation.x + c1->drag_allocation.width); else new_offset = y - (c1->drag_allocation.y + c1->drag_allocation.height); } DEBUG (("new_offset %d", new_offset)); if (c2->drag_offset >= (new_offset + (band->orientation == GTK_ORIENTATION_HORIZONTAL ? item_requisition.width : item_requisition.height))) { c2->real_offset = (c2->drag_offset - (new_offset + (band->orientation == GTK_ORIENTATION_HORIZONTAL ? item_requisition.width : item_requisition.height))); c2->offset = c2->real_offset; } else { guint requisition; GList *lp1; requisition = new_offset + (band->orientation == GTK_ORIENTATION_HORIZONTAL ? item_requisition.width : item_requisition.height); DEBUG (("Moving forward %d!", requisition)); for (lp1 = lp; lp1 != NULL && requisition > 0; ) { BonoboDockBandChild *tmp = lp1->data; GList *lp1next; if (tmp->drag_offset > requisition) { tmp->real_offset = tmp->drag_offset - requisition; requisition = 0; } else { requisition -= tmp->drag_offset; tmp->real_offset = 0; } tmp->offset = tmp->real_offset; DEBUG (("Offset %d (drag %d)", tmp->real_offset, tmp->drag_offset)); lp1next = next_not_floating (band, lp1); if (lp1next == NULL) { if (tmp->drag_foll_space > requisition) requisition = 0; else requisition -= tmp->drag_foll_space; } lp1 = lp1next; } if (requisition > 0) new_offset -= requisition; } if (band->orientation == GTK_ORIENTATION_HORIZONTAL) reparent_if_needed (band, item, x, GTK_WIDGET (band)->allocation.y); else reparent_if_needed (band, item, GTK_WIDGET (band)->allocation.x, y); floating_child = (BonoboDockBandChild *) band->floating_child->data; floating_child->real_offset = floating_child->offset = new_offset; band->children = g_list_remove_link (band->children, band->floating_child); if (where == NULL) { band->floating_child->next = band->children; band->children->prev = band->floating_child; band->children = band->floating_child; } else { band->floating_child->next = where->next; band->floating_child->prev = where; if (where->next != NULL) where->next->prev = band->floating_child; where->next = band->floating_child; } gtk_widget_queue_resize (((BonoboDockBandChild *) band->floating_child->data)->widget); return TRUE; } static gboolean dock_empty_right (BonoboDockBand *band, BonoboDockItem *item, GList *where, gint x, gint y) { BonoboDockBandChild *c, *floating_child; GtkOrientation orig_item_orientation; GtkRequisition item_requisition; GtkWidget *item_widget; gint new_offset; g_return_val_if_fail (next_not_floating (band, where) == NULL, FALSE); g_return_val_if_fail (band->floating_child != where, FALSE); DEBUG (("entering function")); if (! docking_allowed (band, item)) return FALSE; item_widget = GTK_WIDGET (item); c = where->data; orig_item_orientation = bonobo_dock_item_get_orientation (item); if (orig_item_orientation != band->orientation && ! bonobo_dock_item_set_orientation (item, band->orientation)) return FALSE; bonobo_dock_item_handle_size_request (item, &item_requisition); if ((c->drag_prev_space + c->drag_foll_space) < (band->orientation == GTK_ORIENTATION_HORIZONTAL ? item_requisition.width : item_requisition.height)) { DEBUG (("not enough space %d ", c->drag_prev_space+ c->drag_foll_space)); /* Restore original orientation. */ if (orig_item_orientation != band->orientation) bonobo_dock_item_set_orientation (item, orig_item_orientation); return FALSE; } gtk_widget_size_request (item_widget, &item_requisition); if (band->orientation == GTK_ORIENTATION_HORIZONTAL) new_offset = x - (c->widget->allocation.x + c->widget->allocation.width); else new_offset = y - (c->widget->allocation.y + c->widget->allocation.height); DEBUG (("x %d y %d new_offset %d width %d foll_space %d", x, y, new_offset, item_widget->allocation.width, c->drag_foll_space)); if ((guint) (new_offset + (band->orientation == GTK_ORIENTATION_HORIZONTAL ? item_requisition.width : item_requisition.height)) > c->drag_foll_space) { gint excess = (new_offset + (band->orientation == GTK_ORIENTATION_HORIZONTAL ? item_requisition.width : item_requisition.height) - c->drag_foll_space); DEBUG (("excess %d new_offset %d", excess, new_offset)); if (excess < new_offset) new_offset -= excess; else { attempt_move_backward (band, where, excess - new_offset); new_offset = 0; } } if (band->orientation == GTK_ORIENTATION_HORIZONTAL) reparent_if_needed (band, item, x, GTK_WIDGET (band)->allocation.y); else reparent_if_needed (band, item, GTK_WIDGET (band)->allocation.x, y); floating_child = band->floating_child->data; floating_child->offset = floating_child->real_offset = new_offset; band->children = g_list_remove_link (band->children, band->floating_child); where->next = band->floating_child; band->floating_child->prev = where; gtk_widget_queue_resize (floating_child->widget); return TRUE; } /* Helper function. */ static gboolean check_guint_arg (GObject *object, const gchar *name, guint *value_return) { GParamSpec *pspec; g_return_val_if_fail (object != NULL, FALSE); pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (object), name); if (pspec != NULL) { GValue value = { 0, }; g_value_init (&value, G_TYPE_UINT); g_object_get_property (G_OBJECT (object), name, &value); *value_return = g_value_get_uint (&value); g_value_unset (&value); return TRUE; } else return FALSE; } /* Exported interface. */ /** * bonobo_dock_band_new: * * Description: Create a new BonoboDockBand widget. * * Returns: The new BonoboDockBand widget. **/ GtkWidget * bonobo_dock_band_new (void) { BonoboDockBand *band; band = g_object_new (bonobo_dock_band_get_type (), NULL); return GTK_WIDGET (band); } /** * bonobo_dock_band_set_orientation: * @band: A BonoboDockBand widget * @orientation: New orientation for @band * * Description: Set the orientation for @band. **/ void bonobo_dock_band_set_orientation (BonoboDockBand *band, GtkOrientation orientation) { g_return_if_fail (orientation == GTK_ORIENTATION_HORIZONTAL || orientation == GTK_ORIENTATION_VERTICAL); band->orientation = orientation; } /** * bonobo_dock_band_get_orientation: * @band: A BonoboDockBand widget * * Description: Retrieve the orientation of the specified @band. * * Returns: The orientation of @band. **/ GtkOrientation bonobo_dock_band_get_orientation (BonoboDockBand *band) { return band->orientation; } /** * bonobo_dock_band_insert: * @band: A BonoboDockBand widget * @child: The widget to be added to @band * @offset: Offset from the previous item * @position: Position within the @band * * Description: Add @child to @band at the specified @position, with * the specified @offset from the previous item (or from the beginning * of the band, if this is the first item). * * Returns: %TRUE if successful, %FALSE if the operation fails. **/ gboolean bonobo_dock_band_insert (BonoboDockBand *band, GtkWidget *child, guint offset, gint position) { BonoboDockBandChild *band_child; DEBUG (("%08x", (unsigned int) band)); if (BONOBO_IS_DOCK_ITEM (child) && !docking_allowed (band, BONOBO_DOCK_ITEM (child))) return FALSE; if (BONOBO_IS_DOCK_ITEM (child) && !bonobo_dock_item_set_orientation (BONOBO_DOCK_ITEM (child), band->orientation)) return FALSE; if (position < 0 || position > (gint) band->num_children) position = band->num_children; band_child = g_new (BonoboDockBandChild, 1); band_child->widget = child; band_child->offset = offset; band_child->real_offset = 0; if (position == 0) band->children = g_list_prepend (band->children, band_child); else if ((guint) position == band->num_children) band->children = g_list_append (band->children, band_child); else { GList *p; p = g_list_nth (band->children, position); p = g_list_prepend (p, band_child); } gtk_widget_set_parent (child, GTK_WIDGET (band)); if (GTK_WIDGET_REALIZED (child->parent)) gtk_widget_realize (child); if (GTK_WIDGET_VISIBLE (child->parent) && GTK_WIDGET_VISIBLE (child)) { if (GTK_WIDGET_MAPPED (child->parent)) gtk_widget_map (child); gtk_widget_queue_resize (child); } band->num_children++; DEBUG (("now num_children = %d", band->num_children)); return TRUE; } void bonobo_dock_band_move_child (BonoboDockBand *band, GList *old_child, guint new_num) { GList *children; GList *lp; children = band->children; lp = old_child; children = g_list_remove_link (children, lp); children = g_list_insert (children, lp->data, new_num); g_list_free (lp); band->children = children; /* FIXME */ gtk_widget_queue_resize (GTK_WIDGET (band)); } /** * bonobo_dock_band_prepend: * @band: A BonoboDockBand widget * @child: A widget to be added to @band * @offset: Offset (in pixels) from the beginning of the band * * Description: Add @child to @band with the specified @offset as the * first element. * * Returns: %TRUE if successful, %FALSE if the operation fails. **/ gboolean bonobo_dock_band_prepend (BonoboDockBand *band, GtkWidget *child, guint offset) { return bonobo_dock_band_insert (band, child, offset, 0); } /** * bonobo_dock_band_append: * @band: A BonoboDockBand widget * @child: A widget to be added to @band * @offset: Offset (in pixels) from the last item of the band * * Description: Add @child to @band with the specified @offset as the * last element. * * Returns: %TRUE if successful, %FALSE if the operation fails. **/ gboolean bonobo_dock_band_append (BonoboDockBand *band, GtkWidget *child, guint offset) { return bonobo_dock_band_insert (band, child, offset, -1); } /** * bonobo_dock_band_set_child_offset: * @band: A BonoboDockBand widget * @child: Child of @band whose offset must be changed * @offset: New offset value for @child * * Description: Set the offset for the specified @child of @band. **/ void bonobo_dock_band_set_child_offset (BonoboDockBand *band, GtkWidget *child, guint offset) { GList *p; p = find_child (band, child); if (p != NULL) { BonoboDockBandChild *c; c = (BonoboDockBandChild *) p->data; c->offset = offset; gtk_widget_queue_resize (c->widget); } } /** * bonobo_dock_band_get_child_offset: * @band: A BonoboDockBand widget * @child: Child of @band whose offset must be retrieved * * Description: Retrieve the offset of @child in @band. * * Returns: The offset of @child. **/ guint bonobo_dock_band_get_child_offset (BonoboDockBand *band, GtkWidget *child) { GList *p; p = find_child (band, child); if (p != NULL) { BonoboDockBandChild *c; c = (BonoboDockBandChild *) p->data; return c->offset; } return 0; } /** * bonobo_dock_band_get_num_children: * @band: A BonoboDockBand widget * * Description: Retrieve the number of children in @band. * * Returns: The number of children in @band. **/ guint bonobo_dock_band_get_num_children (BonoboDockBand *band) { return band->num_children; } /* Private interface. */ void bonobo_dock_band_drag_begin (BonoboDockBand *band, BonoboDockItem *item) { GList *lp; GtkWidget *floating_widget; GtkWidget *item_widget; guint extra_offset = 0; DEBUG (("entering function")); item_widget = GTK_WIDGET (item); floating_widget = NULL; for (lp = band->children; lp != NULL;) { BonoboDockBandChild *c; c = lp->data; c->drag_allocation = c->widget->allocation; c->drag_offset = c->real_offset + extra_offset; c->drag_prev_space = c->prev_space; c->drag_foll_space = c->foll_space; c->offset = c->real_offset; if (c->widget == item_widget) { band->floating_child = lp; floating_widget = item_widget; if (band->orientation == GTK_ORIENTATION_HORIZONTAL) extra_offset = c->widget->allocation.width + c->real_offset; else extra_offset = c->widget->allocation.height + c->real_offset; } else extra_offset = 0; if (lp->next == NULL) break; lp = lp->next; } if (floating_widget != NULL) { for (lp = band->floating_child->prev; lp != NULL; lp = lp->prev) { BonoboDockBandChild *c; c = lp->data; if (band->orientation == GTK_ORIENTATION_HORIZONTAL) c->drag_foll_space += item_widget->requisition.width; else c->drag_foll_space += item_widget->requisition.height; } for (lp = band->floating_child->next; lp != NULL; lp = lp->next) { BonoboDockBandChild *c; c = lp->data; if (band->orientation == GTK_ORIENTATION_HORIZONTAL) c->drag_prev_space += item_widget->requisition.width; else c->drag_prev_space += item_widget->requisition.height; } } band->doing_drag = TRUE; band->drag_allocation = GTK_WIDGET (band)->allocation; } gboolean bonobo_dock_band_drag_to (BonoboDockBand *band, BonoboDockItem *item, gint x, gint y) { GtkAllocation *allocation; GList *where; gboolean is_empty; g_return_val_if_fail (band->doing_drag, FALSE); DEBUG (("%d %d", x, y)); allocation = & GTK_WIDGET (band)->allocation; if (band->orientation == GTK_ORIENTATION_HORIZONTAL) { if (x < allocation->x) x = allocation->x; if (x >= allocation->x + allocation->width) x = allocation->x + allocation->width - 1; where = find_where (band, x, &is_empty); } else { if (y < allocation->y) y = allocation->y; if (y >= allocation->y + allocation->height) y = allocation->y + allocation->height - 1; where = find_where (band, y, &is_empty); } { GList *p; for (p = next_if_floating (band, band->children); p != NULL; p = next_not_floating (band, p)) { BonoboDockBandChild *c = p->data; c->real_offset = c->offset = c->drag_offset; } } if (is_empty) return dock_empty (band, item, where, x, y); else return dock_nonempty (band, item, where, x, y); } void bonobo_dock_band_drag_end (BonoboDockBand *band, BonoboDockItem *item) { g_return_if_fail (band->doing_drag); DEBUG (("entering function")); if (band->floating_child != NULL) { BonoboDockBandChild *f; /* Minimal sanity check. */ f = (BonoboDockBandChild *) band->floating_child->data; g_return_if_fail (f->widget == GTK_WIDGET (item)); gtk_widget_queue_resize (f->widget); band->floating_child = NULL; } band->doing_drag = FALSE; band->new_for_drag = FALSE; } /** * bonobo_dock_band_get_item_by_name: * @band: A BonoboDockBand widget * @name: Name of the child to be retrieved * @position_return: Pointer to a variable holding the position of * the named child * @offset_return: Pointer to a variable holding the offset of the * named child * * Description: Retrieve a named item from @band, and return its * position and offset in *@position_return and @offset_return. * * Return value: The child whose name is @name, or %NULL if no child * of @band has such name. **/ BonoboDockItem * bonobo_dock_band_get_item_by_name (BonoboDockBand *band, const char *name, guint *position_return, guint *offset_return) { guint pos; GList *lp; for (lp = band->children, pos = 0; lp != NULL; lp = lp->next, pos++) { BonoboDockBandChild *c; c = lp->data; if (BONOBO_IS_DOCK_ITEM (c->widget)) { BonoboDockItem *item; item = BONOBO_DOCK_ITEM (c->widget); if (strcmp (item->name, name) == 0) { if (position_return != NULL) *position_return = pos; if (offset_return != NULL) *offset_return = c->offset; return item; } } } return NULL; } void bonobo_dock_band_layout_add (BonoboDockBand *band, BonoboDockLayout *layout, BonoboDockPlacement placement, guint band_num) { guint child_num; GList *lp; for (lp = band->children, child_num = 0; lp != NULL; lp = lp->next, child_num++) { BonoboDockBandChild *child; GtkWidget *item; child = lp->data; item = child->widget; if (BONOBO_IS_DOCK_ITEM (item)) bonobo_dock_layout_add_item (layout, BONOBO_DOCK_ITEM (item), placement, band_num, child_num, child->offset); } } static BonoboDock * get_dock (GtkWidget *widget) { while (widget && !BONOBO_IS_DOCK (widget)) widget = widget->parent; return (BonoboDock *) widget; } gint _bonobo_dock_band_handle_key_nav (BonoboDockBand *band, BonoboDockItem *item, GdkEventKey *event) { gboolean handled = FALSE; g_return_val_if_fail (BONOBO_IS_DOCK_BAND (band), FALSE); g_return_val_if_fail (BONOBO_IS_DOCK_ITEM (item), FALSE); if (event->state & GDK_CONTROL_MASK) { GList *l; int cur_idx = 0; int dest_idx; int num_children = g_list_length (band->children); for (l = band->children; l; l = l->next) { BonoboDockBandChild *child = l->data; if (child->widget == (GtkWidget *)item) break; cur_idx++; } g_return_val_if_fail (l != NULL, FALSE); dest_idx = cur_idx; if (band->orientation == GTK_ORIENTATION_HORIZONTAL) { if (event->keyval == GDK_Left) dest_idx--; if (event->keyval == GDK_Right) dest_idx++; } else { if (event->keyval == GDK_Up) dest_idx--; if (event->keyval == GDK_Down) dest_idx++; } if (dest_idx >= num_children) dest_idx = num_children - 1; if (dest_idx < 0) dest_idx = 0; if (dest_idx != cur_idx) { handled = TRUE; bonobo_dock_band_move_child (band, l, dest_idx); } } if (!handled) { BonoboDock *dock = get_dock (GTK_WIDGET (band)); if (dock) handled = _bonobo_dock_handle_key_nav (dock, band, item, event); } return handled; } libbonoboui-2.24.5/bonobo/bonobo-dock-item.h0000644000076400007640000001426211173072741015627 00000000000000/* WARNING ____ IMMATURE API ____ liable to change */ /* bonobo-dock-item.h * * Copyright (C) 1998 Ettore Perazzoli * Copyright (C) 1998 Elliot Lee * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald * All rights reserved. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Library General Public * License as published by the Free Software Foundation; either * version 2 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Library General Public License for more details. * * You should have received a copy of the GNU Library General Public * License along with this library; if not, write to the * Free Software Foundation, Inc., 59 Temple Place - Suite 330, * Boston, MA 02111-1307, USA. */ /* @NOTATION@ */ #ifndef _BONOBO_DOCK_ITEM_H #define _BONOBO_DOCK_ITEM_H #include G_BEGIN_DECLS #define BONOBO_TYPE_DOCK_ITEM (bonobo_dock_item_get_type()) #define BONOBO_DOCK_ITEM(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BONOBO_TYPE_DOCK_ITEM, BonoboDockItem)) #define BONOBO_DOCK_ITEM_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), BONOBO_TYPE_DOCK_ITEM, BonoboDockItemClass)) #define BONOBO_IS_DOCK_ITEM(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BONOBO_TYPE_DOCK_ITEM)) #define BONOBO_IS_DOCK_ITEM_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), BONOBO_TYPE_DOCK_ITEM)) #define BONOBO_DOCK_ITEM_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), BONOBO_TYPE_DOCK_ITEM, BonoboDockItemClass)) typedef enum { BONOBO_DOCK_ITEM_BEH_NORMAL = 0, BONOBO_DOCK_ITEM_BEH_EXCLUSIVE = 1 << 0, BONOBO_DOCK_ITEM_BEH_NEVER_FLOATING = 1 << 1, BONOBO_DOCK_ITEM_BEH_NEVER_VERTICAL = 1 << 2, BONOBO_DOCK_ITEM_BEH_NEVER_HORIZONTAL = 1 << 3, BONOBO_DOCK_ITEM_BEH_LOCKED = 1 << 4 /* MAINT: Update the size of the bit field in the BonoboDockItem structure if you add items to this */ } BonoboDockItemBehavior; /* obsolete, for compatibility; don't use */ #define BONOBO_DOCK_ITEM_BEH_NEVER_DETACH BONOBO_DOCK_ITEM_BEH_NEVER_FLOATING #define BONOBO_DOCK_ITEM_NOT_LOCKED(x) (! (BONOBO_DOCK_ITEM(x)->behavior \ & BONOBO_DOCK_ITEM_BEH_LOCKED)) typedef struct _BonoboDockItem BonoboDockItem; typedef struct _BonoboDockItemPrivate BonoboDockItemPrivate; typedef struct _BonoboDockItemClass BonoboDockItemClass; struct _BonoboDockItem { GtkBin bin; gchar *name; /* */ GdkWindow *bin_window; /* parent window for children */ GdkWindow *float_window; /* always NULL */ GtkShadowType shadow_type; /* Start drag position (wrt widget->window). */ gint16 dragoff_x, dragoff_y; /* Position of the floating window. */ gint16 float_x, float_y; guint behavior : 5; guint orientation : 1; guint float_window_mapped : 1; guint is_floating : 1; guint in_drag : 1; /* If TRUE, the pointer must be grabbed on "map_event". */ guint grab_on_map_event : 1; /*< private >*/ BonoboDockItemPrivate *_priv; }; struct _BonoboDockItemClass { GtkBinClass parent_class; void (* dock_drag_begin) (BonoboDockItem *item); void (* dock_drag_motion) (BonoboDockItem *item, gint x, gint y); void (* dock_drag_end) (BonoboDockItem *item); void (* dock_detach) (BonoboDockItem *item); void (* orientation_changed) (BonoboDockItem *item, GtkOrientation new_orientation); gpointer dummy[4]; }; /* Public methods. */ GType bonobo_dock_item_get_type (void) G_GNUC_CONST; GtkWidget *bonobo_dock_item_new (const gchar *name, BonoboDockItemBehavior behavior); void bonobo_dock_item_construct (BonoboDockItem *new_dock_item, const gchar *name, BonoboDockItemBehavior behavior); GtkWidget *bonobo_dock_item_get_child (BonoboDockItem *dock_item); char *bonobo_dock_item_get_name (BonoboDockItem *dock_item); void bonobo_dock_item_set_shadow_type (BonoboDockItem *dock_item, GtkShadowType type); GtkShadowType bonobo_dock_item_get_shadow_type (BonoboDockItem *dock_item); gboolean bonobo_dock_item_set_orientation (BonoboDockItem *dock_item, GtkOrientation orientation); GtkOrientation bonobo_dock_item_get_orientation (BonoboDockItem *dock_item); BonoboDockItemBehavior bonobo_dock_item_get_behavior (BonoboDockItem *dock_item); void bonobo_dock_item_set_behavior (BonoboDockItem *dock_item, BonoboDockItemBehavior behavior); /* Private methods. */ #ifdef BONOBO_UI_INTERNAL void bonobo_dock_item_set_locked (BonoboDockItem *dock_item, gboolean locked); gboolean bonobo_dock_item_detach (BonoboDockItem *item, gint x, gint y); void bonobo_dock_item_attach (BonoboDockItem *item, GtkWidget *parent, gint x, gint y); void bonobo_dock_item_unfloat (BonoboDockItem *item); void bonobo_dock_item_grab_pointer (BonoboDockItem *item); void bonobo_dock_item_drag_floating (BonoboDockItem *item, gint x, gint y); void bonobo_dock_item_handle_size_request (BonoboDockItem *item, GtkRequisition *requisition); void bonobo_dock_item_get_floating_position (BonoboDockItem *item, gint *x, gint *y); GtkWidget *bonobo_dock_item_get_grip (BonoboDockItem *item); #endif /* BONOBO_UI_INTERNAL */ G_END_DECLS #endif /* _BONOBO_DOCK_ITEM_H */ libbonoboui-2.24.5/bonobo/libbonoboui-2.0.pc.in0000644000076400007640000000047711173072741016062 00000000000000prefix=@prefix@ exec_prefix=@exec_prefix@ libdir=@libdir@ includedir=@includedir@ Name: libbonobui Description: libbonoboui Requires: glib-2.0 libbonobo-2.0 libgnomecanvas-2.0 libgnome-2.0 Requires.private: ORBit-2.0 libxml-2.0 Version: @VERSION@ Libs: -L${libdir} -lbonoboui-2 Cflags: -I${includedir}/libbonoboui-2.0 libbonoboui-2.24.5/bonobo/bonobo-ui-main.c0000644000076400007640000001472311173072741015307 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ /** * bonobo-main.c: Bonobo Main * * Author: * Miguel de Icaza (miguel@gnu.org) * Nat Friedman (nat@nat.org) * Peter Wainwright (prw@wainpr.demo.co.uk) * * Copyright 1999, 2001 Ximian, Inc. */ #undef GTK_DISABLE_DEPRECATED #include #include #include #include #include #include #include #include #include #ifdef G_OS_WIN32 #include #include #include #include #endif #ifdef GDK_WINDOWING_X11 #include #include static int (*gdk_x_error_func) (Display *, XErrorEvent *); static int bonobo_x_error_handler (Display *display, XErrorEvent *error) { if (!error->error_code) return 0; /* * If we got a BadDrawable or a BadWindow, we ignore it for * now. FIXME: We need to somehow distinguish real errors * from X-server-induced errors. Keeping a list of windows * for which we will ignore BadDrawables would be a good idea. */ if (error->error_code == BadDrawable || error->error_code == BadWindow) return 0; /* * Otherwise, let gdk deal. */ return gdk_x_error_func (display, error); } /** * bonobo_setup_x_error_handler: * * To do graphical embedding in the X window system, Bonobo * uses the classic foreign-window-reparenting trick. The * GtkPlug/GtkSocket widgets are used for this purpose. However, * serious robustness problems arise if the GtkSocket end of the * connection unexpectedly dies. The X server sends out DestroyNotify * events for the descendants of the GtkPlug (i.e., your embedded * component's windows) in effectively random order. Furthermore, if * you happened to be drawing on any of those windows when the * GtkSocket was destroyed (a common state of affairs), an X error * will kill your application. * * To solve this latter problem, Bonobo sets up its own X error * handler which ignores certain X errors that might have been * caused by such a scenario. Other X errors get passed to gdk_x_error * normally. */ void bonobo_setup_x_error_handler (void) { static gboolean error_handler_setup = FALSE; if (error_handler_setup) return; error_handler_setup = TRUE; gdk_x_error_func = XSetErrorHandler (bonobo_x_error_handler); } #endif static gboolean bonobo_ui_inited = FALSE; gboolean bonobo_ui_is_initialized (void) { return bonobo_ui_inited; } #ifdef G_OS_WIN32 static void * utf8_file_open_real (const char *filename) { const char *path = NULL; FILE *fd; if (filename == NULL) return (NULL); if (!strcmp (filename, "-")) { fd = stdin; return ((void *) fd); } if (!xmlStrncasecmp (filename, "file://localhost/", 17)) path = &filename[17]; else if (!xmlStrncasecmp (filename, "file:///", 8)) { path = &filename[8]; } else path = filename; if (path == NULL) return (NULL); if (!g_file_test (path, G_FILE_TEST_IS_REGULAR)) return (NULL); fd = g_fopen (path, "rb"); if (fd == NULL) return (NULL); return ((void *) fd); } static void * utf8_file_open (const char *filename) { char *unescaped; void *retval; unescaped = xmlURIUnescapeString (filename, 0, NULL); if (unescaped != NULL) { retval = utf8_file_open_real (unescaped); xmlFree (unescaped); } else { retval = utf8_file_open_real (filename); } return retval; } #endif static void do_low_level_init (void) { #ifdef GDK_WINDOWING_X11 CORBA_Context context; CORBA_Environment ev; GdkDisplay *display; Display *xdisplay; #endif if (bonobo_ui_inited) return; bonobo_ui_inited = TRUE; gtk_set_locale (); bindtextdomain (GETTEXT_PACKAGE, BONOBO_LOCALEDIR); bind_textdomain_codeset (GETTEXT_PACKAGE, "UTF-8"); #ifdef G_OS_WIN32 /* This is a suitable place to register our own libxml2 file * open callback that takes UTF-8 filenames. */ xmlRegisterInputCallbacks (xmlFileMatch, utf8_file_open, xmlFileRead, xmlFileClose); #endif #ifdef GDK_WINDOWING_X11 bonobo_setup_x_error_handler (); display = gdk_display_get_default (); xdisplay = gdk_x11_display_get_xdisplay (display); CORBA_exception_init (&ev); /* FIXME: nasty contractual bonobo-activation issues here */ context = bonobo_activation_context_get (); CORBA_Context_set_one_value ( context, "display", DisplayString (xdisplay), &ev); CORBA_exception_free (&ev); #endif } /* compat */ gboolean bonobo_ui_init (const gchar *app_name, const gchar *app_version, int *argc, char **argv) { return bonobo_ui_init_full (app_name, app_version, argc, argv, NULL, NULL, NULL, TRUE); } /* compat */ gboolean bonobo_ui_init_full (const gchar *app_name, const gchar *app_version, int *argc, char **argv, CORBA_ORB orb, PortableServer_POA poa, PortableServer_POAManager manager, gboolean full_init) { if (bonobo_ui_inited) return TRUE; else bonobo_ui_inited = TRUE; if (!bonobo_init (argc, argv)) return FALSE; g_set_prgname (app_name); if (full_init) { /* Initialize all our dependencies. */ gtk_set_locale (); bindtextdomain (GETTEXT_PACKAGE, BONOBO_LOCALEDIR); bind_textdomain_codeset (GETTEXT_PACKAGE, "UTF-8"); gnome_program_init ( app_name, app_version, libgnome_module_info_get (), *argc, argv, NULL); } gtk_init (argc, &argv); do_low_level_init (); return TRUE; } void bonobo_ui_main (void) { bonobo_activate (); gtk_main (); } int bonobo_ui_debug_shutdown (void) { if (bonobo_ui_preferences_shutdown ()) return 1; return bonobo_debug_shutdown (); } static void libbonoboui_post_args_parse (GnomeProgram *program, GnomeModuleInfo *mod_info) { do_low_level_init (); } const GnomeModuleInfo * libbonobo_ui_module_info_get (void) { static GnomeModuleInfo module_info = { "libbonoboui", VERSION, N_("Bonobo GUI support"), NULL, NULL, NULL, libbonoboui_post_args_parse, NULL, NULL, NULL, NULL }; if (module_info.requirements == NULL) { static GnomeModuleRequirement req[6]; req[0].required_version = "1.3.7"; req[0].module_info = bonobo_ui_gtk_module_info_get (); req[1].required_version = "1.102.0"; req[1].module_info = LIBGNOME_MODULE; req[2].required_version = "1.101.2"; req[2].module_info = GNOME_BONOBO_MODULE; req[5].required_version = NULL; req[5].module_info = NULL; module_info.requirements = req; } return &module_info; } libbonoboui-2.24.5/bonobo/bonobo-plug.h0000644000076400007640000000455511173072741014726 00000000000000/* GTK - The GIMP Toolkit * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Library General Public * License as published by the Free Software Foundation; either * version 2 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Library General Public License for more details. * * You should have received a copy of the GNU Library General Public * License along with this library; if not, write to the Free * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ /* * Modified by the GTK+ Team and others 1997-1999. See the AUTHORS * file for a list of people on the GTK+ Team. See the ChangeLog * files for a list of changes. These files are distributed with * GTK+ at ftp://ftp.gtk.org/pub/gtk/. */ #ifndef __BONOBO_PLUG_H__ #define __BONOBO_PLUG_H__ #include #include #include typedef struct _BonoboPlug BonoboPlug; #include G_BEGIN_DECLS #define BONOBO_TYPE_PLUG (bonobo_plug_get_type ()) #define BONOBO_PLUG(obj) G_TYPE_CHECK_INSTANCE_CAST (obj, bonobo_plug_get_type (), BonoboPlug) #define BONOBO_PLUG_CLASS(klass) G_TYPE_CHECK_CLASS_CAST (klass, bonobo_plug_get_type (), BonoboPlugClass) #define BONOBO_IS_PLUG(obj) G_TYPE_CHECK_INSTANCE_TYPE (obj, bonobo_plug_get_type ()) typedef struct _BonoboPlugPrivate BonoboPlugPrivate; struct _BonoboPlug { GtkPlug plug; BonoboControl *control; BonoboPlugPrivate *priv; }; typedef struct { GtkPlugClass parent_class; gpointer dummy[4]; } BonoboPlugClass; GType bonobo_plug_get_type (void) G_GNUC_CONST; void bonobo_plug_construct (BonoboPlug *plug, guint32 socket_id); void bonobo_plug_construct_full (BonoboPlug *plug, GdkDisplay *display, guint32 socket_id); GtkWidget *bonobo_plug_new (guint32 socket_id); GtkWidget *bonobo_plug_new_for_display (GdkDisplay *display, guint32 socket_id); G_END_DECLS #endif /* __BONOBO_PLUG_H__ */ libbonoboui-2.24.5/bonobo/bonobo-ui-container.c0000644000076400007640000002335111200301552016324 00000000000000/* * bonobo-ui-container.c: The server side CORBA impl. for BonoboWindow. * * Author: * Michael Meeks (michael@ximian.com) * * Copyright 2000,2001 Ximian, Inc. */ #include "config.h" #include #include #include #include #include #define PARENT_TYPE BONOBO_TYPE_OBJECT static BonoboObjectClass *bonobo_ui_container_parent_class; struct _BonoboUIContainerPrivate { BonoboUIEngine *engine; int flags; }; static BonoboUIEngine * get_engine (PortableServer_Servant servant) { BonoboUIContainer *container; container = BONOBO_UI_CONTAINER (bonobo_object_from_servant (servant)); g_return_val_if_fail (container != NULL, NULL); if (!container->priv->engine) g_warning ("Trying to invoke CORBA method " "on unbound UIContainer"); return container->priv->engine; } static void impl_Bonobo_UIContainer_registerComponent (PortableServer_Servant servant, const CORBA_char *component_name, const Bonobo_Unknown object, CORBA_Environment *ev) { BonoboUIEngine *engine = get_engine (servant); bonobo_ui_engine_register_component (engine, component_name, object); } static void impl_Bonobo_UIContainer_deregisterComponent (PortableServer_Servant servant, const CORBA_char *component_name, CORBA_Environment *ev) { BonoboUIEngine *engine = get_engine (servant); if (!engine) return; bonobo_ui_engine_deregister_component (engine, component_name); } static void impl_Bonobo_UIContainer_setNode (PortableServer_Servant servant, const CORBA_char *path, const CORBA_char *xml, const CORBA_char *component_name, CORBA_Environment *ev) { BonoboUIEngine *engine = get_engine (servant); BonoboUIError err; BonoboUINode *node; /* fprintf (stderr, "Merging :\n%s\n", xml);*/ if (!xml) err = BONOBO_UI_ERROR_BAD_PARAM; else { if (xml [0] == '\0') err = BONOBO_UI_ERROR_OK; else { if (!(node = bonobo_ui_node_from_string (xml))) err = BONOBO_UI_ERROR_INVALID_XML; else err = bonobo_ui_engine_xml_merge_tree ( engine, path, node, component_name); } } if (err) { if (err == BONOBO_UI_ERROR_INVALID_PATH) CORBA_exception_set ( ev, CORBA_USER_EXCEPTION, ex_Bonobo_UIContainer_InvalidPath, NULL); else CORBA_exception_set ( ev, CORBA_USER_EXCEPTION, ex_Bonobo_UIContainer_MalformedXML, NULL); } } static CORBA_char * impl_Bonobo_UIContainer_getNode (PortableServer_Servant servant, const CORBA_char *path, const CORBA_boolean nodeOnly, CORBA_Environment *ev) { BonoboUIEngine *engine = get_engine (servant); CORBA_char *xml; xml = bonobo_ui_engine_xml_get (engine, path, nodeOnly); if (!xml) { CORBA_exception_set (ev, CORBA_USER_EXCEPTION, ex_Bonobo_UIContainer_InvalidPath, NULL); return NULL; } return xml; } static void impl_Bonobo_UIContainer_setAttr (PortableServer_Servant servant, const CORBA_char *path, const CORBA_char *attr, const CORBA_char *value, const CORBA_char *component, CORBA_Environment *ev) { BonoboUIEngine *engine = get_engine (servant); /* Ignore the error for speed */ bonobo_ui_engine_xml_set_prop ( engine, path, attr, value, component); } static CORBA_char * impl_Bonobo_UIContainer_getAttr (PortableServer_Servant servant, const CORBA_char *path, const CORBA_char *attr, CORBA_Environment *ev) { CORBA_char *xml; BonoboUIEngine *engine = get_engine (servant); gboolean invalid_path = FALSE; xml = bonobo_ui_engine_xml_get_prop ( engine, path, attr, &invalid_path); if (!xml) { if (invalid_path) CORBA_exception_set ( ev, CORBA_USER_EXCEPTION, ex_Bonobo_UIContainer_InvalidPath, NULL); else CORBA_exception_set ( ev, CORBA_USER_EXCEPTION, ex_Bonobo_UIContainer_NonExistentAttr, NULL); return NULL; } return xml; } static void impl_Bonobo_UIContainer_removeNode (PortableServer_Servant servant, const CORBA_char *path, const CORBA_char *component_name, CORBA_Environment *ev) { BonoboUIEngine *engine = get_engine (servant); BonoboUIError err; if (!engine) return; /* g_warning ("Node remove '%s' for '%s'", path, component_name); */ err = bonobo_ui_engine_xml_rm (engine, path, component_name); if (err) CORBA_exception_set (ev, CORBA_USER_EXCEPTION, ex_Bonobo_UIContainer_InvalidPath, NULL); } static CORBA_boolean impl_Bonobo_UIContainer_exists (PortableServer_Servant servant, const CORBA_char *path, CORBA_Environment *ev) { BonoboUIEngine *engine = get_engine (servant); return bonobo_ui_engine_xml_node_exists (engine, path); } static void impl_Bonobo_UIContainer_execVerb (PortableServer_Servant servant, const CORBA_char *cname, CORBA_Environment *ev) { BonoboUIEngine *engine = get_engine (servant); bonobo_ui_engine_exec_verb (engine, cname, ev); } static void impl_Bonobo_UIContainer_uiEvent (PortableServer_Servant servant, const CORBA_char *id, const Bonobo_UIComponent_EventType type, const CORBA_char *state, CORBA_Environment *ev) { BonoboUIEngine *engine = get_engine (servant); bonobo_ui_engine_ui_event (engine, id, type, state, ev); } static void impl_Bonobo_UIContainer_setObject (PortableServer_Servant servant, const CORBA_char *path, const Bonobo_Unknown control, CORBA_Environment *ev) { BonoboUIEngine *engine = get_engine (servant); BonoboUIError err; err = bonobo_ui_engine_object_set (engine, path, control, ev); if (err) CORBA_exception_set (ev, CORBA_USER_EXCEPTION, ex_Bonobo_UIContainer_InvalidPath, NULL); } static Bonobo_Unknown impl_Bonobo_UIContainer_getObject (PortableServer_Servant servant, const CORBA_char *path, CORBA_Environment *ev) { BonoboUIEngine *engine = get_engine (servant); BonoboUIError err; Bonobo_Unknown object; err = bonobo_ui_engine_object_get (engine, path, &object, ev); if (err) CORBA_exception_set (ev, CORBA_USER_EXCEPTION, ex_Bonobo_UIContainer_InvalidPath, NULL); return object; } static void impl_Bonobo_UIContainer_freeze (PortableServer_Servant servant, CORBA_Environment *ev) { BonoboUIEngine *engine = get_engine (servant); bonobo_ui_engine_freeze (engine); } static void impl_Bonobo_UIContainer_thaw (PortableServer_Servant servant, CORBA_Environment *ev) { BonoboUIEngine *engine = get_engine (servant); bonobo_ui_engine_thaw (engine); } static void bonobo_ui_container_dispose (GObject *object) { BonoboUIContainer *container = (BonoboUIContainer *) object; bonobo_ui_container_set_engine (container, NULL); G_OBJECT_CLASS (bonobo_ui_container_parent_class)->dispose (object); } static void bonobo_ui_container_finalize (GObject *object) { BonoboUIContainer *container = (BonoboUIContainer *) object; g_free (container->priv); container->priv = NULL; G_OBJECT_CLASS (bonobo_ui_container_parent_class)->finalize (object); } static void bonobo_ui_container_init (GObject *object) { BonoboUIContainer *container = (BonoboUIContainer *) object; container->priv = g_new0 (BonoboUIContainerPrivate, 1); } static void bonobo_ui_container_class_init (BonoboUIContainerClass *klass) { GObjectClass *g_class = (GObjectClass *) klass; POA_Bonobo_UIContainer__epv *epv = &klass->epv; bonobo_ui_container_parent_class = g_type_class_peek_parent (klass); g_class->dispose = bonobo_ui_container_dispose; g_class->finalize = bonobo_ui_container_finalize; epv->registerComponent = impl_Bonobo_UIContainer_registerComponent; epv->deregisterComponent = impl_Bonobo_UIContainer_deregisterComponent; epv->setAttr = impl_Bonobo_UIContainer_setAttr; epv->getAttr = impl_Bonobo_UIContainer_getAttr; epv->setNode = impl_Bonobo_UIContainer_setNode; epv->getNode = impl_Bonobo_UIContainer_getNode; epv->removeNode = impl_Bonobo_UIContainer_removeNode; epv->exists = impl_Bonobo_UIContainer_exists; epv->execVerb = impl_Bonobo_UIContainer_execVerb; epv->uiEvent = impl_Bonobo_UIContainer_uiEvent; epv->setObject = impl_Bonobo_UIContainer_setObject; epv->getObject = impl_Bonobo_UIContainer_getObject; epv->freeze = impl_Bonobo_UIContainer_freeze; epv->thaw = impl_Bonobo_UIContainer_thaw; } BONOBO_TYPE_FUNC_FULL (BonoboUIContainer, Bonobo_UIContainer, PARENT_TYPE, bonobo_ui_container) /** * bonobo_ui_container_new: * @void: * * Return value: a newly created BonoboUIContainer **/ BonoboUIContainer * bonobo_ui_container_new (void) { return g_object_new (BONOBO_TYPE_UI_CONTAINER, NULL); } /** * bonobo_ui_container_set_engine: * @container: the container * @engine: the engine * * Associates the BonoboUIContainer with a #BonoboUIEngine * that it will use to handle all the UI merging requests. **/ void bonobo_ui_container_set_engine (BonoboUIContainer *container, BonoboUIEngine *engine) { BonoboUIEngine *old_engine; g_return_if_fail (BONOBO_IS_UI_CONTAINER (container)); if (container->priv->engine == engine) return; old_engine = container->priv->engine; container->priv->engine = engine; if (old_engine) bonobo_ui_engine_set_ui_container (old_engine, NULL); if (engine) bonobo_ui_engine_set_ui_container (engine, container); } /** * bonobo_ui_container_get_engine: * @container: the UI container * * Get the associated #BonoboUIEngine * * Return value: the engine **/ BonoboUIEngine * bonobo_ui_container_get_engine (BonoboUIContainer *container) { g_return_val_if_fail (BONOBO_IS_UI_CONTAINER (container), NULL); return container->priv->engine; } libbonoboui-2.24.5/bonobo/bonobo-zoomable-frame.h0000644000076400007640000000560211173072741016651 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- * * Bonobo::ZoomableFrame - container side part of Bonobo::Zoomable. * * Authors: Maciej Stachowiak * Martin Baulig * * Copyright (C) 2000 Eazel, Inc. * 2000 SuSE GmbH. */ #ifndef _BONOBO_ZOOMABLE_FRAME_H_ #define _BONOBO_ZOOMABLE_FRAME_H_ #include G_BEGIN_DECLS #define BONOBO_TYPE_ZOOMABLE_FRAME (bonobo_zoomable_frame_get_type ()) #define BONOBO_ZOOMABLE_FRAME(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), BONOBO_TYPE_ZOOMABLE_FRAME, BonoboZoomableFrame)) #define BONOBO_ZOOMABLE_FRAME_CLASS(k) (G_TYPE_CHECK_CLASS_CAST((k), BONOBO_TYPE_ZOOMABLE_FRAME, BonoboZoomableFrameClass)) #define BONOBO_IS_ZOOMABLE_FRAME(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), BONOBO_TYPE_ZOOMABLE_FRAME)) #define BONOBO_IS_ZOOMABLE_FRAME_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), BONOBO_TYPE_ZOOMABLE_FRAME)) typedef struct _BonoboZoomableFramePrivate BonoboZoomableFramePrivate; typedef struct { BonoboObject object; BonoboZoomableFramePrivate *priv; } BonoboZoomableFrame; typedef struct { BonoboObjectClass parent; POA_Bonobo_ZoomableFrame__epv epv; void (*zoom_level_changed) (BonoboZoomableFrame *zframe, float zoom_level); void (*zoom_parameters_changed) (BonoboZoomableFrame *zframe); gpointer dummy[2]; } BonoboZoomableFrameClass; GType bonobo_zoomable_frame_get_type (void) G_GNUC_CONST; BonoboZoomableFrame *bonobo_zoomable_frame_new (void); Bonobo_Zoomable bonobo_zoomable_frame_get_zoomable (BonoboZoomableFrame *zframe); float bonobo_zoomable_frame_get_zoom_level (BonoboZoomableFrame *zframe); float bonobo_zoomable_frame_get_min_zoom_level (BonoboZoomableFrame *zframe); float bonobo_zoomable_frame_get_max_zoom_level (BonoboZoomableFrame *zframe); gboolean bonobo_zoomable_frame_has_min_zoom_level (BonoboZoomableFrame *zframe); gboolean bonobo_zoomable_frame_has_max_zoom_level (BonoboZoomableFrame *zframe); gboolean bonobo_zoomable_frame_is_continuous (BonoboZoomableFrame *zframe); GList *bonobo_zoomable_frame_get_preferred_zoom_levels (BonoboZoomableFrame *zframe); GList *bonobo_zoomable_frame_get_preferred_zoom_level_names (BonoboZoomableFrame *zframe); void bonobo_zoomable_frame_set_zoom_level (BonoboZoomableFrame *zframe, float zoom_level); void bonobo_zoomable_frame_zoom_in (BonoboZoomableFrame *zframe); void bonobo_zoomable_frame_zoom_out (BonoboZoomableFrame *zframe); void bonobo_zoomable_frame_zoom_to_fit (BonoboZoomableFrame *zframe); void bonobo_zoomable_frame_zoom_to_default (BonoboZoomableFrame *zframe); void bonobo_zoomable_frame_bind_to_zoomable (BonoboZoomableFrame *zframe, Bonobo_Zoomable zoomable, CORBA_Environment *opt_ev); G_END_DECLS #endif /* _BONOBO_ZOOMABLE_FRAME_H_ */ libbonoboui-2.24.5/bonobo/bonobo-widget.h0000644000076400007640000000622211173072741015233 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ /** * bonobo-widget.h: Bonobo Widget object. * * Authors: * Nat Friedman (nat@nat.org) * Michael Meeks (michael@ximian.com) * * Copyright 1999-2001 Ximian, Inc. */ #ifndef _BONOBO_WIDGET_H_ #define _BONOBO_WIDGET_H_ #include #include #include #include G_BEGIN_DECLS #define BONOBO_TYPE_WIDGET (bonobo_widget_get_type ()) #define BONOBO_WIDGET(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), BONOBO_TYPE_WIDGET, BonoboWidget)) #define BONOBO_WIDGET_CLASS(k) (G_TYPE_CHECK_CLASS_CAST((k), BONOBO_TYPE_WIDGET, BonoboWidgetClass)) #define BONOBO_IS_WIDGET(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), BONOBO_TYPE_WIDGET)) #define BONOBO_IS_WIDGET_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), BONOBO_TYPE_WIDGET)) struct _BonoboWidget; typedef struct _BonoboWidget BonoboWidget; #include struct _BonoboWidgetPrivate; typedef struct _BonoboWidgetPrivate BonoboWidgetPrivate; struct _BonoboWidget { GtkBin bin; BonoboWidgetPrivate *priv; }; typedef struct { GtkBinClass bin_class; gpointer dummy[4]; } BonoboWidgetClass; GType bonobo_widget_get_type (void) G_GNUC_CONST; Bonobo_Unknown bonobo_widget_get_objref (BonoboWidget *bw); /* * BonoboWidget for Controls. */ GtkWidget *bonobo_widget_new_control (const char *moniker, Bonobo_UIContainer uic); GtkWidget *bonobo_widget_new_control_from_objref (Bonobo_Control control, Bonobo_UIContainer uic); BonoboControlFrame *bonobo_widget_get_control_frame (BonoboWidget *bw); Bonobo_UIContainer bonobo_widget_get_ui_container (BonoboWidget *bw); typedef void (*BonoboWidgetAsyncFn) (BonoboWidget *widget, CORBA_Environment *ev, gpointer user_data); GtkWidget *bonobo_widget_new_control_async (const char *moniker, Bonobo_UIContainer uic, BonoboWidgetAsyncFn fn, gpointer user_data); /* * Constructors (for derivation and wrapping only) */ BonoboWidget *bonobo_widget_construct_control_from_objref (BonoboWidget *bw, Bonobo_Control control, Bonobo_UIContainer uic, CORBA_Environment *ev); BonoboWidget *bonobo_widget_construct_control (BonoboWidget *bw, const char *moniker, Bonobo_UIContainer uic, CORBA_Environment *ev); /* * Setting properties on a Control's Property Bag, * These take Name, TypeCode, Value triplets. */ void bonobo_widget_set_property (BonoboWidget *control, const char *first_prop, ...) G_GNUC_NULL_TERMINATED; void bonobo_widget_get_property (BonoboWidget *control, const char *first_prop, ...) G_GNUC_NULL_TERMINATED; /* Compat */ #define bonobo_widget_get_uih(w) bonobo_widget_get_ui_container (w) G_END_DECLS #endif libbonoboui-2.24.5/bonobo/bonobo-ui-engine.h0000644000076400007640000002136211173072741015632 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ /* * bonobo-ui-engine.h: The Bonobo UI/XML Sync engine. * * Author: * Michael Meeks (michael@helixcode.com) * * Copyright 2000 Helix Code, Inc. */ #ifndef _BONOBO_UI_ENGINE_H_ #define _BONOBO_UI_ENGINE_H_ #include #include G_BEGIN_DECLS typedef struct _BonoboUIEngine BonoboUIEngine; #include /* Various useful bits */ void bonobo_ui_engine_deregister_dead_components (BonoboUIEngine *engine); void bonobo_ui_engine_deregister_component_by_ref (BonoboUIEngine *engine, Bonobo_Unknown ref); void bonobo_ui_engine_deregister_component (BonoboUIEngine *engine, const char *name); void bonobo_ui_engine_register_component (BonoboUIEngine *engine, const char *name, Bonobo_Unknown component); GList *bonobo_ui_engine_get_component_names (BonoboUIEngine *engine); Bonobo_Unknown bonobo_ui_engine_get_component (BonoboUIEngine *engine, const char *name); /* Configuration stuff */ void bonobo_ui_engine_config_set_path (BonoboUIEngine *engine, const char *path); const char *bonobo_ui_engine_config_get_path (BonoboUIEngine *engine); /* Misc. */ void bonobo_ui_engine_set_ui_container (BonoboUIEngine *engine, BonoboUIContainer *ui_container); BonoboUIContainer *bonobo_ui_engine_get_ui_container (BonoboUIEngine *engine); /* Used in Nautilus */ #ifndef BONOBO_UI_DISABLE_DEPRECATED void bonobo_ui_engine_freeze (BonoboUIEngine *engine); void bonobo_ui_engine_thaw (BonoboUIEngine *engine); void bonobo_ui_engine_update (BonoboUIEngine *engine); #endif #define BONOBO_TYPE_UI_ENGINE (bonobo_ui_engine_get_type ()) #define BONOBO_UI_ENGINE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BONOBO_TYPE_UI_ENGINE, BonoboUIEngine)) #define BONOBO_UI_ENGINE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), BONOBO_TYPE_UI_ENGINE, BonoboUIEngineClass)) #define BONOBO_IS_UI_ENGINE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BONOBO_TYPE_UI_ENGINE)) #define BONOBO_IS_UI_ENGINE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), BONOBO_TYPE_UI_ENGINE)) GType bonobo_ui_engine_get_type (void) G_GNUC_CONST; /* Private - implementation details */ #ifdef BONOBO_UI_INTERNAL typedef enum { BONOBO_UI_ERROR_OK = 0, BONOBO_UI_ERROR_BAD_PARAM, BONOBO_UI_ERROR_INVALID_PATH, BONOBO_UI_ERROR_INVALID_XML } BonoboUIError; #include typedef struct _BonoboUIEnginePrivate BonoboUIEnginePrivate; struct _BonoboUIEngine { GObject parent; BonoboUIEnginePrivate *priv; }; typedef struct { GObjectClass parent_class; /* Signals */ void (*add_hint) (BonoboUIEngine *engine, const char *str); void (*remove_hint) (BonoboUIEngine *engine); void (*emit_verb_on) (BonoboUIEngine *engine, BonoboUINode *node); void (*emit_event_on) (BonoboUIEngine *engine, BonoboUINode *node, const char *state); void (*destroy) (BonoboUIEngine *engine); } BonoboUIEngineClass; BonoboUIEngine *bonobo_ui_engine_construct (BonoboUIEngine *engine, GObject *view); BonoboUIEngine *bonobo_ui_engine_new (GObject *view); GObject *bonobo_ui_engine_get_view (BonoboUIEngine *engine); void bonobo_ui_engine_add_sync (BonoboUIEngine *engine, BonoboUISync *sync); void bonobo_ui_engine_remove_sync (BonoboUIEngine *engine, BonoboUISync *sync); GSList *bonobo_ui_engine_get_syncs (BonoboUIEngine *engine); void bonobo_ui_engine_update_node (BonoboUIEngine *engine, BonoboUISync *sync, BonoboUINode *node); void bonobo_ui_engine_queue_update (BonoboUIEngine *engine, GtkWidget *widget, BonoboUINode *node, BonoboUINode *cmd_node); GtkWidget *bonobo_ui_engine_build_control (BonoboUIEngine *engine, BonoboUINode *node); BonoboUINode *bonobo_ui_engine_widget_get_node (GtkWidget *widget); void bonobo_ui_engine_widget_set_node (BonoboUIEngine *engine, GtkWidget *widget, BonoboUINode *node); BonoboUIError bonobo_ui_engine_xml_set_prop (BonoboUIEngine *engine, const char *path, const char *property, const char *value, const char *component); CORBA_char *bonobo_ui_engine_xml_get_prop (BonoboUIEngine *engine, const char *path, const char *prop, gboolean *invalid_path); void bonobo_ui_engine_prune_widget_info (BonoboUIEngine *engine, BonoboUINode *node, gboolean save_custom); BonoboUINode *bonobo_ui_engine_get_path (BonoboUIEngine *engine, const char *path); void bonobo_ui_engine_dirty_tree (BonoboUIEngine *engine, BonoboUINode *node); void bonobo_ui_engine_clean_tree (BonoboUIEngine *engine, BonoboUINode *node); void bonobo_ui_engine_dump (BonoboUIEngine *engine, FILE *out, const char *msg); /* Extra Node data accessors */ CORBA_Object bonobo_ui_engine_node_get_object (BonoboUIEngine *engine, BonoboUINode *node); gboolean bonobo_ui_engine_node_is_dirty (BonoboUIEngine *engine, BonoboUINode *node); GtkWidget *bonobo_ui_engine_node_get_widget (BonoboUIEngine *engine, BonoboUINode *node); const char *bonobo_ui_engine_node_get_id (BonoboUIEngine *engine, BonoboUINode *node); BonoboUINode *bonobo_ui_engine_get_cmd_node (BonoboUIEngine *engine, BonoboUINode *from_node); void bonobo_ui_engine_node_set_dirty (BonoboUIEngine *engine, BonoboUINode *node, gboolean dirty); void bonobo_ui_engine_stamp_custom (BonoboUIEngine *engine, BonoboUINode *node); void bonobo_ui_engine_widget_set (BonoboUIEngine *engine, const char *path, GtkWidget *widget); void bonobo_ui_engine_stamp_root (BonoboUIEngine *engine, BonoboUINode *node, GtkWidget *widget); /* Signal firers */ void bonobo_ui_engine_add_hint (BonoboUIEngine *engine, const char *str); void bonobo_ui_engine_remove_hint (BonoboUIEngine *engine); void bonobo_ui_engine_emit_verb_on (BonoboUIEngine *engine, BonoboUINode *node); void bonobo_ui_engine_emit_event_on (BonoboUIEngine *engine, BonoboUINode *node, const char *state); void bonobo_ui_engine_emit_verb_on_w (BonoboUIEngine *engine, GtkWidget *widget); void bonobo_ui_engine_emit_event_on_w (BonoboUIEngine *engine, GtkWidget *widget, const char *state); /* Helpers */ char *bonobo_ui_engine_get_attr (BonoboUINode *node, BonoboUINode *cmd_node, const char *attr); void bonobo_ui_engine_widget_attach_node (GtkWidget *widget, BonoboUINode *node); /* Interface used by UIContainer maps to BonoboUIXml */ CORBA_char *bonobo_ui_engine_xml_get (BonoboUIEngine *engine, const char *path, gboolean node_only); gboolean bonobo_ui_engine_xml_node_exists (BonoboUIEngine *engine, const char *path); BonoboUIError bonobo_ui_engine_xml_merge_tree (BonoboUIEngine *engine, const char *path, BonoboUINode *tree, const char *component); BonoboUIError bonobo_ui_engine_xml_rm (BonoboUIEngine *engine, const char *path, const char *by_component); BonoboUIError bonobo_ui_engine_object_set (BonoboUIEngine *engine, const char *path, Bonobo_Unknown object, CORBA_Environment *ev); BonoboUIError bonobo_ui_engine_object_get (BonoboUIEngine *engine, const char *path, Bonobo_Unknown *object, CORBA_Environment *ev); void bonobo_ui_engine_exec_verb (BonoboUIEngine *engine, const CORBA_char *cname, CORBA_Environment *ev); void bonobo_ui_engine_ui_event (BonoboUIEngine *engine, const CORBA_char *id, const Bonobo_UIComponent_EventType type, const CORBA_char *state, CORBA_Environment *ev); #endif /* BONOBO_UI_INTERNAL */ G_END_DECLS #endif /* _BONOBO_UI_ENGINE_H_ */ libbonoboui-2.24.5/bonobo/bonobo-ui-marshal-main.c0000644000076400007640000000015411173072741016725 00000000000000#include #include "config.h" #include "bonobo-ui-marshal.h" #include "bonobo-ui-marshal.c" libbonoboui-2.24.5/bonobo/bonobo-ui-util.h0000644000076400007640000000471411173072741015344 00000000000000/* * bonobo-ui-util.h: Bonobo UI utility functions * * Author: * Michael Meeks (michael@helixcode.com) * * Copyright 2000, 2001 Ximian, Inc. */ #ifndef _BONOBO_UI_XML_UTIL_H_ #define _BONOBO_UI_XML_UTIL_H_ #include #include #include G_BEGIN_DECLS char *bonobo_ui_util_pixbuf_to_xml (GdkPixbuf *pixbuf); GdkPixbuf *bonobo_ui_util_xml_to_pixbuf (const char *xml); GtkWidget *bonobo_ui_util_xml_get_icon_widget (BonoboUINode *node, GtkIconSize icon_size); void bonobo_ui_util_xml_set_pixbuf (BonoboUINode *node, GdkPixbuf *pixbuf); void bonobo_ui_util_build_help_menu (BonoboUIComponent *listener, const char *app_prefix, const char *app_name, BonoboUINode *parent); char *bonobo_ui_util_get_ui_fname (const char *component_prefix, const char *file_name); void bonobo_ui_util_translate_ui (BonoboUINode *node); void bonobo_ui_util_fixup_help (BonoboUIComponent *component, BonoboUINode *node, const char *app_prefix, const char *app_name); void bonobo_ui_util_fixup_icons (BonoboUINode *node); /* * Does all the translation & other grunt. */ BonoboUINode *bonobo_ui_util_new_ui (BonoboUIComponent *component, const char *fname, const char *app_prefix, const char *app_name); void bonobo_ui_util_set_ui (BonoboUIComponent *component, const char *app_prefix, const char *file_name, const char *app_name, CORBA_Environment *opt_ev); void bonobo_ui_util_set_pixbuf (BonoboUIComponent *component, const char *path, GdkPixbuf *pixbuf, CORBA_Environment *opt_ev); gchar *bonobo_ui_util_accel_name (guint accelerator_key, GdkModifierType accelerator_mods); void bonobo_ui_util_accel_parse (const char *name, guint *accelerator_key, GdkModifierType *accelerator_mods); #define bonobo_ui_util_decode_str(s,e) g_strdup (s) #define bonobo_ui_util_encode_str(s) g_strdup (s) G_END_DECLS #endif /* _BONOBO_UI_XML_UTIL_H_ */ libbonoboui-2.24.5/bonobo/bonobo-dock-layout.c0000644000076400007640000003603211173072741016200 00000000000000/* bonobo-dock-layout.c Copyright (C) 1998 Free Software Foundation All rights reserved. The Gnome Library is free software; you can redistribute it and/or modify it under the terms of the GNU Library General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. The Gnome Library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Library General Public License for more details. You should have received a copy of the GNU Library General Public License along with the Gnome Library; see the file COPYING.LIB. If not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. Author: Ettore Perazzoli */ /* @NOTATION@ */ #include #include #include #include #include "bonobo-dock-layout.h" /* TODO: handle incorrect BONOBO_DOCK_ITEM_BEH_EXCLUSIVE situations. */ struct _BonoboDockLayoutPrivate { int dummy; /* Nothing right now, needs to get filled with the private things */ /* XXX: When stuff is added, uncomment the allocation in the * bonobo_dock_layout_init function! */ }; static GObjectClass *parent_class = NULL; static void bonobo_dock_layout_class_init (BonoboDockLayoutClass *class); static void bonobo_dock_layout_instance_init(BonoboDockLayout *layout); static void bonobo_dock_layout_finalize (GObject *object); static gint item_compare_func (gconstpointer a, gconstpointer b); static gint compare_item_by_name (gconstpointer a, gconstpointer b); static gint compare_item_by_pointer (gconstpointer a, gconstpointer b); static GList *find (BonoboDockLayout *layout, gconstpointer a, GCompareFunc func); static void remove_item (BonoboDockLayout *layout, GList *list); static void bonobo_dock_layout_class_init (BonoboDockLayoutClass *class) { GObjectClass *gobject_class = G_OBJECT_CLASS (class); gobject_class->finalize = bonobo_dock_layout_finalize; parent_class = g_type_class_ref (G_TYPE_OBJECT); } static void bonobo_dock_layout_instance_init (BonoboDockLayout *layout) { layout->_priv = NULL; /* XXX: when there is some private stuff enable this layout->_priv = g_new0(BonoboDockLayoutPrivate, 1); */ layout->items = NULL; } static void bonobo_dock_layout_finalize (GObject *object) { BonoboDockLayout *layout; layout = BONOBO_DOCK_LAYOUT (object); while (layout->items) remove_item (layout, layout->items); /* Free the private structure */ g_free (layout->_priv); layout->_priv = NULL; if (G_OBJECT_CLASS (parent_class)->finalize) (* G_OBJECT_CLASS (parent_class)->finalize) (object); } static gint item_compare_func (gconstpointer a, gconstpointer b) { const BonoboDockLayoutItem *item_a, *item_b; item_a = a; item_b = b; if (item_a->placement != item_b->placement) return item_b->placement - item_a->placement; if (item_a->placement == BONOBO_DOCK_FLOATING) return 0; /* Floating items don't need to be ordered. */ else { if (item_a->position.docked.band_num != item_b->position.docked.band_num) return (item_b->position.docked.band_num - item_a->position.docked.band_num); return (item_b->position.docked.band_position - item_a->position.docked.band_position); } } static gint compare_item_by_name (gconstpointer a, gconstpointer b) { const BonoboDockItem *item; const gchar *name; item = b; name = a; return strcmp (name, item->name); } static gint compare_item_by_pointer (gconstpointer a, gconstpointer b) { return a != b; } static GList * find (BonoboDockLayout *layout, gconstpointer data, GCompareFunc func) { GList *p; for (p = layout->items; p != NULL; p = p->next) { BonoboDockLayoutItem *item; item = p->data; if (! (* func) (data, item->item)) return p; } return NULL; } static void remove_item (BonoboDockLayout *layout, GList *list) { BonoboDockItem *item; item = ((BonoboDockLayoutItem *) list->data)->item; g_object_unref (GTK_WIDGET (item)); layout->items = g_list_remove_link (layout->items, list); g_free (list->data); g_list_free (list); } GType bonobo_dock_layout_get_type (void) { static GType layout_type = 0; if (layout_type == 0) { GTypeInfo layout_info = { sizeof (BonoboDockLayoutClass), NULL, NULL, (GClassInitFunc)bonobo_dock_layout_class_init, NULL, NULL, sizeof (BonoboDockLayout), 0, (GInstanceInitFunc)bonobo_dock_layout_instance_init }; layout_type = g_type_register_static (G_TYPE_OBJECT, "BonoboDockLayout", &layout_info, 0); } return layout_type; } /** * bonobo_dock_layout_new: * * Description: Create a new #BonoboDockLayout widget. * * Returns: The new #BonoboDockLayout widget. **/ BonoboDockLayout * bonobo_dock_layout_new (void) { return BONOBO_DOCK_LAYOUT (g_object_new (BONOBO_TYPE_DOCK_LAYOUT, NULL)); } /** * bonobo_dock_layout_add_item: * @layout: A #BonoboDockLayout widget * @item: The dock item to be added to @layout * @placement: Placement of @item in @layout * @band_num: Band number * @band_position: Position within the band * @offset: Distance from the previous element in the band * * Description: Add @item to @layout with the specified parameters. * * Returns: %TRUE if the operation succeeds, %FALSE if it fails. **/ gboolean bonobo_dock_layout_add_item (BonoboDockLayout *layout, BonoboDockItem *item, BonoboDockPlacement placement, gint band_num, gint band_position, gint offset) { BonoboDockLayoutItem *new; new = g_new (BonoboDockLayoutItem, 1); new->item = item; new->placement = placement; new->position.docked.band_num = band_num; new->position.docked.band_position = band_position; new->position.docked.offset = offset; layout->items = g_list_prepend (layout->items, new); g_object_ref (item); return TRUE; } /** * bonobo_dock_layout_add_floating_item: * @layout: A #BonoboDockLayout widget * @item: The dock item to be added to @layout * @x: X-coordinate for the floating item * @y: Y-coordinate for the floating item * @orientation: Orientation for the floating item * * Description: Add @item to @layout as a floating item with the * specified (@x, @y) position and @orientation. * * Returns: %TRUE if the operation succeeds, %FALSE if it fails. **/ gboolean bonobo_dock_layout_add_floating_item (BonoboDockLayout *layout, BonoboDockItem *item, gint x, gint y, GtkOrientation orientation) { BonoboDockLayoutItem *new; new = g_new (BonoboDockLayoutItem, 1); new->item = item; new->placement = BONOBO_DOCK_FLOATING; new->position.floating.x = x; new->position.floating.y = y; new->position.floating.orientation = orientation; layout->items = g_list_prepend (layout->items, new); g_object_ref (item); return TRUE; } /** * bonobo_dock_layout_get_item: * @layout: A #BonoboDockLayout widget * @item: The #BonoboDockItem to be retrieved * * Description: Retrieve a layout item. * * Returns: The retrieved #BonoboDockLayoutItem widget. **/ BonoboDockLayoutItem * bonobo_dock_layout_get_item (BonoboDockLayout *layout, BonoboDockItem *item) { GList *list; list = find (layout, item, compare_item_by_pointer); if (list == NULL) return NULL; else return list->data; } /** * bonobo_dock_layout_get_item_by_name: * @layout: A #BonoboDockLayout widget * @name: Name of the item to be retrieved * * Description: Retrieve the dock item named @name. * * Returns: The named #BonoboDockLayoutItem widget. **/ BonoboDockLayoutItem * bonobo_dock_layout_get_item_by_name (BonoboDockLayout *layout, const gchar *name) { GList *list; list = find (layout, name, compare_item_by_name); if (list == NULL) return NULL; else return list->data; } /** * bonobo_dock_layout_remove_item: * @layout: A #BonoboDockLayout widget * @item: The #BonoboDockItem to be removed * * Description: Remove the specified @item from @layout. * * Returns: %TRUE if the operation succeeds, %FALSE if it fails. **/ gboolean bonobo_dock_layout_remove_item (BonoboDockLayout *layout, BonoboDockItem *item) { GList *list; list = find (layout, item, compare_item_by_pointer); if (list == NULL) return FALSE; remove_item (layout, list); return TRUE; } /** * bonobo_dock_layout_remove_item_by_name: * @layout: A #BonoboDockLayout widget * @name: Name of the #BonoboDockItem to be removed * * Description: Remove the item named @name from @layout. * * Returns: %TRUE if the operation succeeds, %FALSE if it fails. **/ gboolean bonobo_dock_layout_remove_item_by_name (BonoboDockLayout *layout, const gchar *name) { GList *list; list = find (layout, name, compare_item_by_name); if (list == NULL) return FALSE; remove_item (layout, list); return TRUE; } /** * bonobo_dock_layout_add_to_dock: * @layout: A #BonoboDockLayout widget * @dock: The #BonoboDock widget the layout items must be added to * * Description: Add all the items in @layout to the specified @dock. * * Returns: %TRUE if the operation succeeds, %FALSE if it fails. **/ gboolean bonobo_dock_layout_add_to_dock (BonoboDockLayout *layout, BonoboDock *dock) { BonoboDockLayoutItem *item; GList *lp; BonoboDockPlacement last_placement; gint last_band_num; if (layout->items == NULL) return FALSE; layout->items = g_list_sort (layout->items, item_compare_func); item = layout->items->data; last_placement = BONOBO_DOCK_FLOATING; last_band_num = 0; for (lp = layout->items; lp != NULL; lp = lp->next) { item = lp->data; if (item->placement == BONOBO_DOCK_FLOATING) { bonobo_dock_add_floating_item (dock, item->item, item->position.floating.x, item->position.floating.y, item->position.floating.orientation); } else { gboolean need_new; if (last_placement != item->placement || last_band_num != item->position.docked.band_num) need_new = TRUE; else need_new = FALSE; bonobo_dock_add_item (dock, item->item, item->placement, 0, 0, item->position.docked.offset, need_new); last_band_num = item->position.docked.band_num; last_placement = item->placement; } gtk_widget_show (GTK_WIDGET (item->item)); } return TRUE; } /* Layout string functions. */ /** * bonobo_dock_layout_create_string: * @layout: A #BonoboDockLayout widget * * Description: Generate a string describing the layout in @layout. * * Returns: The (malloced) layout string for @layout. **/ gchar * bonobo_dock_layout_create_string (BonoboDockLayout *layout) { GList *lp; guint tmp_count, tmp_alloc; gchar **tmp; gchar *retval; if (layout->items == NULL) return NULL; tmp_alloc = 512; tmp = g_new (gchar *, tmp_alloc); tmp_count = 0; for (lp = layout->items; lp != NULL; lp = lp->next) { BonoboDockLayoutItem *i; i = lp->data; if (tmp_alloc - tmp_count <= 2) { tmp_alloc *= 2; tmp = g_renew (char *, tmp, tmp_alloc); } if (i->placement == BONOBO_DOCK_FLOATING) tmp[tmp_count] = g_strdup_printf ("%s\\%d,%d,%d,%d", i->item->name ? i->item->name : "", (gint) i->placement, i->position.floating.x, i->position.floating.y, i->position.floating.orientation); else tmp[tmp_count] = g_strdup_printf ("%s\\%d,%d,%d,%d", i->item->name ? i->item->name : "", (gint) i->placement, i->position.docked.band_num, i->position.docked.band_position, i->position.docked.offset); tmp_count++; } tmp[tmp_count] = NULL; retval = g_strjoinv ("\\", tmp); g_strfreev (tmp); return retval; } /** * bonobo_dock_layout_parse_string: * @layout: A #BonoboDockLayout widget * @string: A layout string to be parsed * * Description: Parse the layout string @string, and move around the * items in @layout accordingly. * * Returns: %TRUE if the operation succeeds, %FALSE if it fails. **/ gboolean bonobo_dock_layout_parse_string (BonoboDockLayout *layout, const gchar *string) { gchar **tmp, **p; if (string == NULL) return FALSE; tmp = g_strsplit (string, "\\", 0); if (tmp == NULL) return FALSE; p = tmp; while (*p != NULL) { GList *lp; if (*(p + 1) == NULL) { g_strfreev (tmp); return FALSE; } lp = find (layout, *p, compare_item_by_name); if (lp != NULL) { BonoboDockLayoutItem *i; gint p1, p2, p3, p4; if (sscanf (*(p + 1), "%d,%d,%d,%d", &p1, &p2, &p3, &p4) != 4) { g_strfreev (tmp); return FALSE; } if (p1 != (gint) BONOBO_DOCK_TOP && p1 != (gint) BONOBO_DOCK_BOTTOM && p1 != (gint) BONOBO_DOCK_LEFT && p1 != (gint) BONOBO_DOCK_RIGHT && p1 != (gint) BONOBO_DOCK_FLOATING) return FALSE; i = lp->data; i->placement = (BonoboDockPlacement) p1; if (i->placement == BONOBO_DOCK_FLOATING) { i->position.floating.x = p2; i->position.floating.y = p3; i->position.floating.orientation = p4; } else { i->position.docked.band_num = p2; i->position.docked.band_position = p3; i->position.docked.offset = p4; } } p += 2; } g_strfreev (tmp); return TRUE; } libbonoboui-2.24.5/bonobo/bonobo-ui-private.h0000644000076400007640000000364311173072741016041 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ /** * Bonobo UI internal prototypes / helpers * * Author: * Michael Meeks (michael@ximian.com) * * Copyright 2001 Ximian, Inc. */ #ifndef _BONOBO_UI_PRIVATE_H_ #define _BONOBO_UI_PRIVATE_H_ #include #include #include #include #include #include G_BEGIN_DECLS /* To dump lots of sequence information */ #define noDEBUG_UI /* To debug render issues in plug/socket/control */ #define noDEBUG_CONTROL void bonobo_socket_add_id (BonoboSocket *socket, GdkNativeWindow xid); int bonobo_ui_preferences_shutdown (void); void bonobo_ui_image_set_pixbuf (GtkImage *image, GdkPixbuf *pixbuf); void bonobo_ui_util_xml_set_image (GtkImage *image, BonoboUINode *node, BonoboUINode *cmd_node, GtkIconSize icon_size); void bonobo_ui_engine_dispose (BonoboUIEngine *engine); GtkWidget *bonobo_ui_toolbar_button_item_get_image (BonoboUIToolbarButtonItem *item); GtkWidget *bonobo_ui_internal_toolbar_new (void); GList *bonobo_ui_internal_toolbar_get_children (GtkWidget *toolbar); #ifdef G_OS_WIN32 const char *_bonobo_ui_get_localedir (void); const char *_bonobo_ui_get_datadir (void); const char *_bonobo_ui_get_uidir (void); #undef BONOBO_LOCALEDIR #define BONOBO_LOCALEDIR _bonobo_ui_get_localedir() #undef BONOBO_DATADIR #define BONOBO_DATADIR _bonobo_ui_get_datadir() #undef BONOBO_UIDIR #define BONOBO_UIDIR _bonobo_ui_get_uidir() #endif #ifndef DEBUG_UI static inline void dbgprintf (const char *format, ...) { } #else /* DEBUG_UI */ #include #define dbgprintf(format...) fprintf(stderr, format) #endif /* DEBUG_UI */ G_END_DECLS #endif /* _BONOBO_UI_PRIVATE_H_ */ libbonoboui-2.24.5/bonobo/bonobo-ui-toolbar-popup-item.h0000644000076400007640000000302511173072741020120 00000000000000/* -*- Mode: C; indent-tabs-mode: t; c-basic-offset: 8; tab-width: 8 -*- */ /** * bonobo-ui-toolbar-popup-item.h * * Author: * Ettore Perazzoli * * Copyright (C) 2000 Helix Code, Inc. */ #ifndef _BONOBO_UI_TOOLBAR_POPUP_ITEM_H_ #define _BONOBO_UI_TOOLBAR_POPUP_ITEM_H_ #include #include "bonobo-ui-toolbar-toggle-button-item.h" G_BEGIN_DECLS #define BONOBO_TYPE_UI_TOOLBAR_POPUP_ITEM (bonobo_ui_toolbar_popup_item_get_type ()) #define BONOBO_UI_TOOLBAR_POPUP_ITEM(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BONOBO_TYPE_UI_TOOLBAR_POPUP_ITEM, BonoboUIToolbarPopupItem)) #define BONOBO_UI_TOOLBAR_POPUP_ITEM_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), BONOBO_TYPE_UI_TOOLBAR_POPUP_ITEM, BonoboUIToolbarPopupItemClass)) #define BONOBO_IS_UI_TOOLBAR_POPUP_ITEM(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BONOBO_TYPE_UI_TOOLBAR_POPUP_ITEM)) #define BONOBO_IS_UI_TOOLBAR_POPUP_ITEM_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), BONOBO_TYPE_UI_TOOLBAR_POPUP_ITEM)) typedef struct _BonoboUIToolbarPopupItemPrivate BonoboUIToolbarPopupItemPrivate; typedef struct { BonoboUIToolbarToggleButtonItem parent; } BonoboUIToolbarPopupItem; typedef struct { BonoboUIToolbarToggleButtonItemClass parent_class; } BonoboUIToolbarPopupItemClass; GType bonobo_ui_toolbar_popup_item_get_type (void) G_GNUC_CONST; GtkWidget *bonobo_ui_toolbar_popup_item_new (void); void bonobo_ui_toolbar_popup_item_construct (BonoboUIToolbarPopupItem *); G_END_DECLS #endif /* _BONOBO_UI_TOOLBAR_POPUP_ITEM_H_ */ libbonoboui-2.24.5/bonobo/libbonoboui-2.0-uninstalled.pc.in0000644000076400007640000000053511173072741020375 00000000000000prefix=@prefix@ exec_prefix=@exec_prefix@ libdir=@libdir@ includedir=@includedir@ Name: libbonoboui Description: libbonoboui Requires: glib-2.0 libbonobo-2.0 libgnomecanvas-2.0 libgnome-2.0 Requires.private: ORBit-2.0 libxml-2.0 Version: @VERSION@ Libs: ${pc_top_builddir}/${pcfiledir}/libbonoboui-2.la Cflags: -I${pc_top_builddir}/${pcfiledir}/.. libbonoboui-2.24.5/bonobo/bonobo-ui-node.h0000644000076400007640000000565611173072741015322 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ /** * bonobo-ui-node.h: Code to manipulate BonoboUINode objects * * Author: * Havoc Pennington * * Copyright 2000 Red Hat, Inc. */ #ifndef _BONOBO_UI_NODE_H_ #define _BONOBO_UI_NODE_H_ #include G_BEGIN_DECLS typedef struct _BonoboUINode BonoboUINode; BonoboUINode *bonobo_ui_node_new (const char *name); BonoboUINode *bonobo_ui_node_new_child (BonoboUINode *parent, const char *name); BonoboUINode *bonobo_ui_node_copy (BonoboUINode *node, gboolean recursive); void bonobo_ui_node_free (BonoboUINode *node); void bonobo_ui_node_set_data (BonoboUINode *node, gpointer data); gpointer bonobo_ui_node_get_data (BonoboUINode *node); void bonobo_ui_node_set_attr (BonoboUINode *node, const char *name, const char *value); char * bonobo_ui_node_get_attr (BonoboUINode *node, const char *name); gboolean bonobo_ui_node_has_attr (BonoboUINode *node, const char *name); void bonobo_ui_node_remove_attr (BonoboUINode *node, const char *name); void bonobo_ui_node_add_child (BonoboUINode *parent, BonoboUINode *child); void bonobo_ui_node_insert_before (BonoboUINode *after, BonoboUINode *new_before); void bonobo_ui_node_unlink (BonoboUINode *node); void bonobo_ui_node_replace (BonoboUINode *old_node, BonoboUINode *new_node); void bonobo_ui_node_set_content (BonoboUINode *node, const char *content); char *bonobo_ui_node_get_content (BonoboUINode *node); BonoboUINode *bonobo_ui_node_next (BonoboUINode *node); BonoboUINode *bonobo_ui_node_prev (BonoboUINode *node); BonoboUINode *bonobo_ui_node_children (BonoboUINode *node); BonoboUINode *bonobo_ui_node_parent (BonoboUINode *node); const char *bonobo_ui_node_get_name (BonoboUINode *node); gboolean bonobo_ui_node_has_name (BonoboUINode *node, const char *name); gboolean bonobo_ui_node_transparent (BonoboUINode *node); void bonobo_ui_node_copy_attrs (const BonoboUINode *src, BonoboUINode *dest); void bonobo_ui_node_free_string (char *str); void bonobo_ui_node_strip (BonoboUINode **node); char * bonobo_ui_node_to_string (BonoboUINode *node, gboolean recurse); BonoboUINode* bonobo_ui_node_from_string (const char *str); BonoboUINode* bonobo_ui_node_from_file (const char *filename); G_END_DECLS #endif /* _BONOBO_UI_NODE_H_ */ libbonoboui-2.24.5/bonobo/bonobo-ui-win32.c0000644000076400007640000000646711173072741015333 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ /** * bonobo-ui-win32.c: Win32-specific code for libbonoboui * * Author: * Tor Lillqvist (tml@novell.com) * * Copyright 2005 Novell, Inc. */ #include #include #ifdef G_OS_WIN32 #ifndef PIC #error Must build as a DLL #endif #include #include #include /* Silence gcc with a prototype */ BOOL WINAPI DllMain (HINSTANCE hinstDLL, DWORD fdwReason, LPVOID lpvReserved); /* Ditto. We can't include bonobo-ui-private.h where the prototypes * are in this file. */ const char *_bonobo_ui_get_localedir (void); const char *_bonobo_ui_get_datadir (void); const char *_bonobo_ui_get_uidir (void); static HMODULE hmodule; G_LOCK_DEFINE_STATIC (mutex); /* Using short filenames, in system codepage */ static char *_bonobo_localedir = NULL; /* Using long filenames, in UTF-8 */ static char *_bonobo_datadir; static char *_bonobo_uidir; /* DllMain used to tuck away the DLL's HMODULE */ BOOL WINAPI DllMain (HINSTANCE hinstDLL, DWORD fdwReason, LPVOID lpvReserved) { switch (fdwReason) { case DLL_PROCESS_ATTACH: hmodule = hinstDLL; break; } return TRUE; } static char * replace_prefix (const char *runtime_prefix, const char *configure_time_path) { if (strncmp (configure_time_path, PREFIX "/", strlen (PREFIX) + 1) == 0) { return g_strconcat (runtime_prefix, configure_time_path + strlen (PREFIX), NULL); } else return g_strdup (configure_time_path); } static void setup (void) { char *full_prefix = NULL; char *short_prefix = NULL; char *p; G_LOCK (mutex); if (_bonobo_localedir != NULL) { G_UNLOCK (mutex); return; } if (GetVersion () < 0x80000000) { wchar_t wcbfr[1000]; if (GetModuleFileNameW (hmodule, wcbfr, G_N_ELEMENTS (wcbfr))) { full_prefix = g_utf16_to_utf8 (wcbfr, -1, NULL, NULL, NULL); if (GetShortPathNameW (wcbfr, wcbfr, G_N_ELEMENTS (wcbfr))) short_prefix = g_utf16_to_utf8 (wcbfr, -1, NULL, NULL, NULL); } } else { char cpbfr[1000]; if (GetModuleFileNameA (hmodule, cpbfr, G_N_ELEMENTS (cpbfr))) full_prefix = short_prefix = g_locale_to_utf8 (cpbfr, -1, NULL, NULL, NULL); } if (full_prefix != NULL) { p = strrchr (full_prefix, '\\'); if (p != NULL) *p = '\0'; p = strrchr (full_prefix, '\\'); if (p && (g_ascii_strcasecmp (p + 1, "bin") == 0)) *p = '\0'; } else { full_prefix = ""; } if (short_prefix != NULL) { p = strrchr (short_prefix, '\\'); if (p != NULL) *p = '\0'; p = strrchr (short_prefix, '\\'); if (p && (g_ascii_strcasecmp (p + 1, "bin") == 0)) *p = '\0'; } else { short_prefix = ""; } _bonobo_localedir = replace_prefix (short_prefix, BONOBO_LOCALEDIR); p = _bonobo_localedir; _bonobo_localedir = g_locale_from_utf8 (_bonobo_localedir, -1, NULL, NULL, NULL); g_free (p); _bonobo_datadir = replace_prefix (full_prefix, BONOBO_DATADIR); _bonobo_uidir = replace_prefix (full_prefix, BONOBO_UIDIR); G_UNLOCK (mutex); } const char * _bonobo_ui_get_localedir (void) { setup (); return _bonobo_localedir; } const char * _bonobo_ui_get_datadir (void) { setup (); return _bonobo_datadir; } const char * _bonobo_ui_get_uidir (void) { setup (); return _bonobo_uidir; } #endif /* G_OS_WIN32 */ libbonoboui-2.24.5/bonobo/bonobo-plug.c0000644000076400007640000002445611173072741014723 00000000000000/* -*- mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ /* * bonobo-plug.c: a Gtk plug wrapper. * * Author: * Martin Baulig (martin@home-of-linux.org) * Michael Meeks (michael@ximian.com) * * Copyright 2001, Ximian, Inc. * Martin Baulig. */ #undef GTK_DISABLE_DEPRECATED #include "config.h" #include #include #include #include #include #if defined (GDK_WINDOWING_X11) #include #elif defined (GDK_WINDOWING_WIN32) #include #elif defined (GDK_WINDOWING_QUARTZ) #else #error Port to this GDK backend #endif struct _BonoboPlugPrivate { gboolean forward_events; }; enum { PROP_0, PROP_FORWARD_EVENTS }; G_DEFINE_TYPE (BonoboPlug, bonobo_plug, GTK_TYPE_PLUG) /** * bonobo_plug_construct: * @plug: The #BonoboPlug. * @socket_id: the XID of the socket's window. * * Finish the creation of a #BonoboPlug widget. This function * will generally only be used by classes deriving * from #BonoboPlug. */ void bonobo_plug_construct (BonoboPlug *plug, guint32 socket_id) { bonobo_plug_construct_full (plug, gdk_display_get_default (), socket_id); } /** * bonobo_plug_construct_full: * @plug: The #BonoboPlug. * @socket_id: the XID of the socket's window. * * Finish the creation of a #BonoboPlug widget. This function * will generally only be used by classes deriving * from #BonoboPlug. */ void bonobo_plug_construct_full (BonoboPlug *plug, GdkDisplay *display, guint32 socket_id) { gtk_plug_construct_for_display (GTK_PLUG (plug), display, socket_id); } /** * bonobo_plug_new_for_display: * @display: the associated display * @socket_id: the XID of the socket's window. * * Create a new plug widget inside the #GtkSocket identified * by @socket_id. * * Returns: the new #BonoboPlug widget. */ GtkWidget* bonobo_plug_new_for_display (GdkDisplay *display, guint32 socket_id) { BonoboPlug *plug; plug = BONOBO_PLUG (g_object_new (bonobo_plug_get_type (), NULL)); bonobo_plug_construct_full (plug, display, socket_id); dbgprintf ("bonobo_plug_new => %p\n", plug); return GTK_WIDGET (plug); } /** * bonobo_plug_new: * @socket_id: the XID of the socket's window. * * Create a new plug widget inside the #GtkSocket identified * by @socket_id. * * Returns: the new #BonoboPlug widget. */ GtkWidget* bonobo_plug_new (guint32 socket_id) { return bonobo_plug_new_for_display (gdk_display_get_default (), socket_id); } BonoboControl * bonobo_plug_get_control (BonoboPlug *plug) { g_return_val_if_fail (BONOBO_IS_PLUG (plug), NULL); return plug->control; } void bonobo_plug_set_control (BonoboPlug *plug, BonoboControl *control) { BonoboControl *old_control; g_return_if_fail (BONOBO_IS_PLUG (plug)); if (plug->control == control) return; dbgprintf ("bonobo_plug_set_control (%p, %p) [%p]\n", plug, control, plug->control); old_control = plug->control; if (control) plug->control = g_object_ref (control); else plug->control = NULL; if (old_control) { bonobo_control_set_plug (old_control, NULL); g_object_unref (old_control); } if (control) bonobo_control_set_plug (control, plug); } static gboolean bonobo_plug_delete_event (GtkWidget *widget, GdkEventAny *event) { dbgprintf ("bonobo_plug_delete_event %p\n", widget); return FALSE; } static void bonobo_plug_realize (GtkWidget *widget) { BonoboPlug *plug = (BonoboPlug *) widget; dbgprintf ("bonobo_plug_realize %p\n", plug); GTK_WIDGET_CLASS (bonobo_plug_parent_class)->realize (widget); } static void bonobo_plug_unrealize (GtkWidget *widget) { BonoboPlug *plug = (BonoboPlug *) widget; dbgprintf ("bonobo_plug_unrealize %p\n", plug); GTK_WIDGET_CLASS (bonobo_plug_parent_class)->unrealize (widget); } static void bonobo_plug_map (GtkWidget *widget) { dbgprintf ("bonobo_plug_map %p at size %d, %d\n", widget, widget->allocation.width, widget->allocation.height); GTK_WIDGET_CLASS (bonobo_plug_parent_class)->map (widget); } static void bonobo_plug_dispose (GObject *object) { BonoboPlug *plug = (BonoboPlug *) object; GtkBin *bin_plug = (GtkBin *) object; dbgprintf ("bonobo_plug_dispose %p\n", object); if (bin_plug->child) { gtk_container_remove ( &bin_plug->container, bin_plug->child); dbgprintf ("Removing child ..."); } if (plug->control) bonobo_plug_set_control (plug, NULL); G_OBJECT_CLASS (bonobo_plug_parent_class)->dispose (object); } static void bonobo_plug_finalize (GObject *object) { BonoboPlug *plug = (BonoboPlug *) object; g_free (plug->priv); G_OBJECT_CLASS (bonobo_plug_parent_class)->finalize (object); } static void bonobo_plug_set_property (GObject *object, guint param_id, const GValue *value, GParamSpec *pspec) { BonoboPlug *plug; g_return_if_fail (BONOBO_IS_PLUG (object)); plug = BONOBO_PLUG (object); switch (param_id) { case PROP_FORWARD_EVENTS: plug->priv->forward_events = g_value_get_boolean (value); break; default: G_OBJECT_WARN_INVALID_PROPERTY_ID (object, param_id, pspec); break; } } static void bonobo_plug_get_property (GObject *object, guint param_id, GValue *value, GParamSpec *pspec) { BonoboPlug *plug; g_return_if_fail (BONOBO_IS_PLUG (object)); plug = BONOBO_PLUG (object); switch (param_id) { case PROP_FORWARD_EVENTS: g_value_set_boolean (value, plug->priv->forward_events); break; default: G_OBJECT_WARN_INVALID_PROPERTY_ID (object, param_id, pspec); break; } } static void bonobo_plug_size_allocate (GtkWidget *widget, GtkAllocation *allocation) { dbgprintf ("bonobo_plug_size_allocate %p: (%d, %d), (%d, %d) %d! %s\n", widget, allocation->x, allocation->y, allocation->width, allocation->height, GTK_WIDGET_TOPLEVEL (widget), GTK_BIN (widget)->child ? g_type_name_from_instance ((gpointer)GTK_BIN (widget)->child): "No child!"); GTK_WIDGET_CLASS (bonobo_plug_parent_class)->size_allocate (widget, allocation); } static void bonobo_plug_size_request (GtkWidget *widget, GtkRequisition *requisition) { GTK_WIDGET_CLASS (bonobo_plug_parent_class)->size_request (widget, requisition); dbgprintf ("bonobo_plug_size_request %p: %d, %d\n", widget, requisition->width, requisition->height); } static gboolean bonobo_plug_expose_event (GtkWidget *widget, GdkEventExpose *event) { gboolean retval; retval = GTK_WIDGET_CLASS (bonobo_plug_parent_class)->expose_event (widget, event); dbgprintf ("bonobo_plug_expose_event %p (%d, %d), (%d, %d)" "%s (%d && %d == %d)\n", widget, event->area.x, event->area.y, event->area.width, event->area.height, GTK_WIDGET_TOPLEVEL (widget) ? "toplevel" : "bin class", GTK_WIDGET_VISIBLE (widget), GTK_WIDGET_MAPPED (widget), GTK_WIDGET_DRAWABLE (widget)); #ifdef DEBUG_CONTROL gdk_draw_line (widget->window, widget->style->black_gc, event->area.x + event->area.width, event->area.y, event->area.x, event->area.y + event->area.height); gdk_draw_line (widget->window, widget->style->black_gc, widget->allocation.x, widget->allocation.y, widget->allocation.x + widget->allocation.width, widget->allocation.y + widget->allocation.height); #endif return retval; } static gboolean bonobo_plug_button_event (GtkWidget *widget, GdkEventButton *event) { #if defined (GDK_WINDOWING_X11) XEvent xevent; #endif g_return_val_if_fail (BONOBO_IS_PLUG (widget), FALSE); if (!BONOBO_PLUG (widget)->priv->forward_events || !GTK_WIDGET_TOPLEVEL (widget)) return FALSE; #if defined (GDK_WINDOWING_X11) if (event->type == GDK_BUTTON_PRESS) { xevent.xbutton.type = ButtonPress; /* X does an automatic pointer grab on button press * if we have both button press and release events * selected. * We don't want to hog the pointer on our parent. */ gdk_display_pointer_ungrab (gtk_widget_get_display (widget), GDK_CURRENT_TIME); } else xevent.xbutton.type = ButtonRelease; xevent.xbutton.display = GDK_WINDOW_XDISPLAY (widget->window); xevent.xbutton.window = GDK_WINDOW_XWINDOW (GTK_PLUG (widget)->socket_window); xevent.xbutton.root = GDK_WINDOW_XWINDOW (gdk_screen_get_root_window (gdk_drawable_get_screen (widget->window))); /* * FIXME: the following might cause * big problems for non-GTK apps */ xevent.xbutton.x = 0; xevent.xbutton.y = 0; xevent.xbutton.x_root = 0; xevent.xbutton.y_root = 0; xevent.xbutton.state = event->state; xevent.xbutton.button = event->button; xevent.xbutton.same_screen = TRUE; /* FIXME ? */ gdk_error_trap_push (); XSendEvent (GDK_WINDOW_XDISPLAY (widget->window), GDK_WINDOW_XWINDOW (GTK_PLUG (widget)->socket_window), False, NoEventMask, &xevent); gdk_flush (); gdk_error_trap_pop (); #elif defined (GDK_WINDOWING_WIN32) /* FIXME: Need to do something? */ #endif return TRUE; } static void bonobo_plug_init (BonoboPlug *plug) { BonoboPlugPrivate *priv; priv = g_new0 (BonoboPlugPrivate, 1); plug->priv = priv; priv->forward_events = TRUE; } static void bonobo_plug_class_init (BonoboPlugClass *klass) { GObjectClass *gobject_class = (GObjectClass *) klass; GtkWidgetClass *widget_class = (GtkWidgetClass *) klass; gobject_class->dispose = bonobo_plug_dispose; gobject_class->finalize = bonobo_plug_finalize; gobject_class->set_property = bonobo_plug_set_property; gobject_class->get_property = bonobo_plug_get_property; widget_class->realize = bonobo_plug_realize; widget_class->unrealize = bonobo_plug_unrealize; widget_class->delete_event = bonobo_plug_delete_event; widget_class->size_request = bonobo_plug_size_request; widget_class->size_allocate = bonobo_plug_size_allocate; widget_class->expose_event = bonobo_plug_expose_event; widget_class->button_press_event = bonobo_plug_button_event; widget_class->button_release_event = bonobo_plug_button_event; widget_class->map = bonobo_plug_map; g_object_class_install_property ( gobject_class, PROP_FORWARD_EVENTS, g_param_spec_boolean ("event_forwarding", _("Event Forwarding"), _("Whether X events should be forwarded"), TRUE, G_PARAM_READABLE | G_PARAM_WRITABLE)); } libbonoboui-2.24.5/bonobo/bonobo-ui-toolbar-item.h0000644000076400007640000001014411173072741016757 00000000000000/* -*- Mode: C; indent-tabs-mode: t; c-basic-offset: 8; tab-width: 8 -*- */ /** * bonobo-ui-toolbar-item.h * * Author: Ettore Perazzoli * * Copyright (C) 2000 Helix Code, Inc. */ #ifndef _BONOBO_UI_TOOLBAR_ITEM_H_ #define _BONOBO_UI_TOOLBAR_ITEM_H_ #include #include #undef GTK_DISABLE_DEPRECATED #ifndef BONOBO_UI_DISABLE_DEPRECATED G_BEGIN_DECLS #define BONOBO_TYPE_UI_TOOLBAR_ITEM (bonobo_ui_toolbar_item_get_type ()) #define BONOBO_UI_TOOLBAR_ITEM(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BONOBO_TYPE_UI_TOOLBAR_ITEM, BonoboUIToolbarItem)) #define BONOBO_UI_TOOLBAR_ITEM_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), BONOBO_TYPE_UI_TOOLBAR_ITEM, BonoboUIToolbarItemClass)) #define BONOBO_IS_UI_TOOLBAR_ITEM(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BONOBO_TYPE_UI_TOOLBAR_ITEM)) #define BONOBO_IS_UI_TOOLBAR_ITEM_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), BONOBO_TYPE_UI_TOOLBAR_ITEM)) typedef enum { BONOBO_UI_TOOLBAR_ITEM_STYLE_ICON_AND_TEXT_VERTICAL, BONOBO_UI_TOOLBAR_ITEM_STYLE_ICON_AND_TEXT_HORIZONTAL, BONOBO_UI_TOOLBAR_ITEM_STYLE_ICON_ONLY, BONOBO_UI_TOOLBAR_ITEM_STYLE_TEXT_ONLY } BonoboUIToolbarItemStyle; typedef struct _BonoboUIToolbarItemPrivate BonoboUIToolbarItemPrivate; typedef struct { GtkBin parent; BonoboUIToolbarItemPrivate *priv; } BonoboUIToolbarItem; typedef struct { GtkBinClass parent_class; /* Virtual method */ void (* set_state) (BonoboUIToolbarItem *item, const char *new_state); void (* set_tooltip) (BonoboUIToolbarItem *item, GtkTooltips *tooltips, const char *tooltip); /* Signals */ void (* set_orientation) (BonoboUIToolbarItem *item, GtkOrientation orientation); void (* set_style) (BonoboUIToolbarItem *item, BonoboUIToolbarItemStyle style); void (* set_want_label) (BonoboUIToolbarItem *item, gboolean want_label); void (* activate) (BonoboUIToolbarItem *item); gpointer dummy[4]; } BonoboUIToolbarItemClass; GType bonobo_ui_toolbar_item_get_type (void) G_GNUC_CONST; GtkWidget *bonobo_ui_toolbar_item_new (void); void bonobo_ui_toolbar_item_set_tooltip (BonoboUIToolbarItem *item, GtkTooltips *tooltips, const char *tooltip); void bonobo_ui_toolbar_item_set_state (BonoboUIToolbarItem *item, const char *new_state); void bonobo_ui_toolbar_item_set_orientation (BonoboUIToolbarItem *item, GtkOrientation orientation); GtkOrientation bonobo_ui_toolbar_item_get_orientation (BonoboUIToolbarItem *item); void bonobo_ui_toolbar_item_set_style (BonoboUIToolbarItem *item, BonoboUIToolbarItemStyle style); BonoboUIToolbarItemStyle bonobo_ui_toolbar_item_get_style (BonoboUIToolbarItem *item); void bonobo_ui_toolbar_item_set_minimum_width(BonoboUIToolbarItem *item, int minimum_width); /* FIXME ugly names. */ void bonobo_ui_toolbar_item_set_want_label (BonoboUIToolbarItem *button_item, gboolean prefer_text); gboolean bonobo_ui_toolbar_item_get_want_label (BonoboUIToolbarItem *button_item); void bonobo_ui_toolbar_item_set_expandable (BonoboUIToolbarItem *button_item, gboolean expandable); gboolean bonobo_ui_toolbar_item_get_expandable (BonoboUIToolbarItem *button_item); void bonobo_ui_toolbar_item_set_pack_end (BonoboUIToolbarItem *button_item, gboolean expandable); gboolean bonobo_ui_toolbar_item_get_pack_end (BonoboUIToolbarItem *button_item); void bonobo_ui_toolbar_item_activate (BonoboUIToolbarItem *item); G_END_DECLS #endif /* BONOBO_UI_DISABLE_DEPRECATED */ #endif /* __BONOBO_UI_TOOLBAR_ITEM_H__ */ libbonoboui-2.24.5/bonobo/bonobo-ui-container.h0000644000076400007640000000324511173072741016347 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ /* * bonobo-ui-container.h: The server side CORBA impl. for BonoboWindow. * * Author: * Michael Meeks (michael@helixcode.com) * * Copyright 2000 Helix Code, Inc. */ #ifndef _BONOBO_UI_CONTAINER_H_ #define _BONOBO_UI_CONTAINER_H_ #include G_BEGIN_DECLS typedef struct _BonoboUIContainer BonoboUIContainer; #include #define BONOBO_TYPE_UI_CONTAINER (bonobo_ui_container_get_type ()) #define BONOBO_UI_CONTAINER(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), BONOBO_TYPE_UI_CONTAINER, BonoboUIContainer)) #define BONOBO_UI_CONTAINER_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), BONOBO_TYPE_UI_CONTAINER, BonoboUIContainerClass)) #define BONOBO_IS_UI_CONTAINER(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), BONOBO_TYPE_UI_CONTAINER)) #define BONOBO_IS_UI_CONTAINER_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), BONOBO_TYPE_UI_CONTAINER)) typedef struct _BonoboUIContainerPrivate BonoboUIContainerPrivate; struct _BonoboUIContainer { BonoboObject base; BonoboUIContainerPrivate *priv; }; typedef struct { BonoboObjectClass parent; POA_Bonobo_UIContainer__epv epv; gpointer dummy[2]; } BonoboUIContainerClass; GType bonobo_ui_container_get_type (void) G_GNUC_CONST; BonoboUIContainer *bonobo_ui_container_new (void); void bonobo_ui_container_set_engine (BonoboUIContainer *container, BonoboUIEngine *engine); BonoboUIEngine *bonobo_ui_container_get_engine (BonoboUIContainer *container); G_END_DECLS #endif /* _BONOBO_UI_CONTAINER_H_ */ libbonoboui-2.24.5/bonobo/bonobo-ui-xml.h0000644000076400007640000001061711173072741015166 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ /* * bonobo-ui-xml.h: A module for merging, overlaying and de-merging XML * * Author: * Michael Meeks (michael@helixcode.com) * * Copyright 2000 Helix Code, Inc. */ #ifndef _BONOBO_UI_XML_H_ #define _BONOBO_UI_XML_H_ #include #include #include G_BEGIN_DECLS /* Internal API only */ #ifdef BONOBO_UI_INTERNAL #define BONOBO_TYPE_UI_XML (bonobo_ui_xml_get_type ()) #define BONOBO_UI_XML(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), BONOBO_TYPE_UI_XML, BonoboUIXml)) #define BONOBO_UI_XML_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), BONOBO_TYPE_UI_XML, BonoboUIXmlClass)) #define BONOBO_IS_UI_XML(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), BONOBO_TYPE_UI_XML)) #define BONOBO_IS_UI_XML_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), BONOBO_TYPE_UI_XML)) typedef struct _BonoboUIXml BonoboUIXml; typedef struct { gpointer id; gboolean dirty; GSList *overridden; } BonoboUIXmlData; typedef gboolean (*BonoboUIXmlCompareFn) (gpointer id_a, gpointer id_b); typedef BonoboUIXmlData *(*BonoboUIXmlDataNewFn) (void); typedef void (*BonoboUIXmlDataFreeFn) (BonoboUIXmlData *data); typedef void (*BonoboUIXmlDumpFn) (BonoboUIXml *tree, BonoboUINode *node); typedef void (*BonoboUIXmlAddNode) (BonoboUINode *parent, BonoboUINode *child, gpointer user_data); typedef void (*BonoboUIXmlWatchFn) (BonoboUIXml *xml, const char *path, BonoboUINode *opt_node, gpointer user_data); struct _BonoboUIXml { GObject object; BonoboUIXmlCompareFn compare; BonoboUIXmlDataNewFn data_new; BonoboUIXmlDataFreeFn data_free; BonoboUIXmlDumpFn dump; BonoboUIXmlAddNode add_node; BonoboUIXmlWatchFn watch; gpointer user_data; BonoboUINode *root; GSList *watches; }; typedef struct { GObjectClass object_klass; void (*override) (BonoboUINode *new_node, BonoboUINode *old_node); void (*replace_override) (BonoboUINode *new_node, BonoboUINode *old_node); void (*reinstate) (BonoboUINode *node); void (*rename) (BonoboUINode *node); void (*remove) (BonoboUINode *node); gpointer dummy; } BonoboUIXmlClass; GType bonobo_ui_xml_get_type (void) G_GNUC_CONST; BonoboUIXml *bonobo_ui_xml_new (BonoboUIXmlCompareFn compare, BonoboUIXmlDataNewFn data_new, BonoboUIXmlDataFreeFn data_free, BonoboUIXmlDumpFn dump, BonoboUIXmlAddNode add_node, gpointer user_data); /* Nominaly BonoboUIXmlData * */ gpointer bonobo_ui_xml_get_data (BonoboUIXml *tree, BonoboUINode *node); void bonobo_ui_xml_set_dirty (BonoboUIXml *tree, BonoboUINode *node); void bonobo_ui_xml_clean (BonoboUIXml *tree, BonoboUINode *node); BonoboUINode *bonobo_ui_xml_get_path (BonoboUIXml *tree, const char *path); BonoboUINode *bonobo_ui_xml_get_path_wildcard (BonoboUIXml *tree, const char *path, gboolean *wildcard); char *bonobo_ui_xml_make_path (BonoboUINode *node); char *bonobo_ui_xml_get_parent_path (const char *path); BonoboUIError bonobo_ui_xml_merge (BonoboUIXml *tree, const char *path, BonoboUINode *nodes, gpointer id); BonoboUIError bonobo_ui_xml_rm (BonoboUIXml *tree, const char *path, gpointer id); void bonobo_ui_xml_dump (BonoboUIXml *tree, BonoboUINode *node, const char *msg); void bonobo_ui_xml_set_watch_fn (BonoboUIXml *tree, BonoboUIXmlWatchFn watch); void bonobo_ui_xml_add_watch (BonoboUIXml *tree, const char *path, gpointer user_data); void bonobo_ui_xml_remove_watch_by_data (BonoboUIXml *tree, gpointer user_data); #endif /* BONOBO_UI_INTERNAL */ G_END_DECLS #endif /* _BONOBO_UI_XML_H_ */ libbonoboui-2.24.5/bonobo/bonobo-socket.c0000644000076400007640000003053211173072741015234 00000000000000/* -*- mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ /* * bonobo-socket.c: a Gtk+ socket wrapper * * Authors: * Martin Baulig (martin@home-of-linux.org) * Michael Meeks (michael@ximian.com) * * Copyright 2001, Ximian, Inc. * Martin Baulig. */ #undef GTK_DISABLE_DEPRECATED #include "config.h" #include #include #include #include #include #include #if defined (GDK_WINDOWING_X11) #include #endif /* Used to turn on any socket sizing * bits layered over gtk we have */ #undef DEBUG_RAW_GTK /* Private part of the BonoboSocket structure */ typedef struct { /* Signal handler ID for the toplevel's GtkWindow::set_focus() */ gulong set_focus_id; /* Whether a descendant of us has the focus. If this is the case, it * means that we are out-of-process. */ guint descendant_has_focus : 1; } BonoboSocketPrivate; G_DEFINE_TYPE (BonoboSocket, bonobo_socket, GTK_TYPE_SOCKET) static void bonobo_socket_finalize (GObject *object) { BonoboSocket *socket; BonoboSocketPrivate *priv; dbgprintf ("bonobo_socket_finalize %p\n", object); socket = BONOBO_SOCKET (object); priv = socket->priv; priv->descendant_has_focus = FALSE; g_free (priv); socket->priv = NULL; G_OBJECT_CLASS (bonobo_socket_parent_class)->finalize (object); } gboolean bonobo_socket_disposed (BonoboSocket *socket) { return (socket->frame == NULL); } static void bonobo_socket_dispose (GObject *object) { BonoboSocket *socket = (BonoboSocket *) object; BonoboSocketPrivate *priv; dbgprintf ("bonobo_socket_dispose %p\n", object); priv = socket->priv; if (socket->frame) { bonobo_socket_set_control_frame (socket, NULL); g_assert (socket->frame == NULL); } if (priv->set_focus_id) { g_assert (socket->socket.toplevel != NULL); g_signal_handler_disconnect (socket->socket.toplevel, priv->set_focus_id); priv->set_focus_id = 0; } G_OBJECT_CLASS (bonobo_socket_parent_class)->dispose (object); } static void bonobo_socket_realize (GtkWidget *widget) { BonoboSocket *socket; g_return_if_fail (widget != NULL); g_return_if_fail (BONOBO_IS_SOCKET (widget)); socket = BONOBO_SOCKET (widget); dbgprintf ("bonobo_socket_realize %p\n", widget); GTK_WIDGET_CLASS (bonobo_socket_parent_class)->realize (widget); if (socket->frame) { g_object_ref (socket->frame); bonobo_control_frame_get_remote_window (socket->frame, NULL); g_object_unref (socket->frame); } g_assert (GTK_WIDGET_REALIZED (widget)); } static void bonobo_socket_unrealize (GtkWidget *widget) { dbgprintf ("unrealize %p\n", widget); g_assert (GTK_WIDGET_REALIZED (widget)); g_assert (GTK_WIDGET (widget)->window); /* To stop evilness inside Gtk+ */ GTK_WIDGET_UNSET_FLAGS (widget, GTK_REALIZED); GTK_WIDGET_CLASS (bonobo_socket_parent_class)->unrealize (widget); } static gboolean bonobo_socket_expose_event (GtkWidget *widget, GdkEventExpose *event) { gboolean retval; retval = GTK_WIDGET_CLASS (bonobo_socket_parent_class)->expose_event (widget, event); dbgprintf ("bonobo_socket_expose_event %p (%d, %d), (%d, %d)\n", widget, event->area.x, event->area.y, event->area.width, event->area.height); #ifdef DEBUG_CONTROL gdk_draw_line (widget->window, widget->style->black_gc, event->area.x, event->area.y, event->area.x + event->area.width, event->area.y + event->area.height); #endif return retval; } static void bonobo_socket_state_changed (GtkWidget *widget, GtkStateType previous_state) { BonoboSocket *socket = BONOBO_SOCKET (widget); if (!socket->frame) return; if (!bonobo_control_frame_get_autostate (socket->frame)) return; bonobo_control_frame_control_set_state ( socket->frame, GTK_WIDGET_STATE (widget)); } /* Callback for GtkWindow::set_focus(). We watch the focused widget in this way. */ static void toplevel_set_focus_cb (GtkWindow *window, GtkWidget *focus, gpointer data) { BonoboSocket *socket; BonoboSocketPrivate *priv; GtkWidget *socket_widget; gboolean descendant_had_focus; gboolean should_autoactivate; socket = BONOBO_SOCKET (data); priv = socket->priv; g_assert (socket->socket.toplevel == GTK_WIDGET (window)); socket_widget = GTK_WIDGET (socket); descendant_had_focus = priv->descendant_has_focus; should_autoactivate = (socket->socket.plug_widget /* Only in the in-process case */ && socket->frame /* We need an auto-activatable frame */ && bonobo_control_frame_get_autoactivate (socket->frame)); /* If a descendant of ours is focused then possibly activate its * control, unless there are intermediate sockets between us --- they * should take care of that themselves. */ if (focus && gtk_widget_get_ancestor (focus, GTK_TYPE_SOCKET) == socket_widget) { priv->descendant_has_focus = TRUE; if (!descendant_had_focus && should_autoactivate) bonobo_control_frame_control_activate (socket->frame); } else { priv->descendant_has_focus = FALSE; if (descendant_had_focus && should_autoactivate) bonobo_control_frame_control_deactivate (socket->frame); } } /* GtkWidget::hierarchy_changed() handler. We have to monitor our toplevel so * that we can connect to its GtkWindow::set_focus() signal, so that we can keep * track of the currently focused widget. */ static void bonobo_socket_hierarchy_changed (GtkWidget *widget, GtkWidget *previous_toplevel) { BonoboSocket *socket; BonoboSocketPrivate *priv; socket = BONOBO_SOCKET (widget); priv = socket->priv; if (priv->set_focus_id) { g_assert (socket->socket.toplevel != NULL); g_signal_handler_disconnect (socket->socket.toplevel, priv->set_focus_id); priv->set_focus_id = 0; } (* GTK_WIDGET_CLASS (bonobo_socket_parent_class)->hierarchy_changed) (widget, previous_toplevel); if (socket->socket.toplevel && GTK_IS_WINDOW (socket->socket.toplevel)) priv->set_focus_id = g_signal_connect_after (socket->socket.toplevel, "set_focus", G_CALLBACK (toplevel_set_focus_cb), socket); } /* NOTE: This will only get called in the out-of-process case. GTK+ only sends * focus-in/out events to leaf widgets, not their ancestors. */ static gint bonobo_socket_focus_in (GtkWidget *widget, GdkEventFocus *focus) { BonoboSocket *socket = BONOBO_SOCKET (widget); if (socket->frame && bonobo_control_frame_get_autoactivate (socket->frame)) bonobo_control_frame_control_activate (socket->frame); else dbgprintf ("No activate on focus in"); return GTK_WIDGET_CLASS (bonobo_socket_parent_class)->focus_in_event (widget, focus); } /* NOTE: This will only get called in the out-of-process case. GTK+ only sends * focus-in/out events to leaf widgets, not their ancestors. */ static gint bonobo_socket_focus_out (GtkWidget *widget, GdkEventFocus *focus) { BonoboSocket *socket = BONOBO_SOCKET (widget); if (socket->frame && bonobo_control_frame_get_autoactivate (socket->frame)) bonobo_control_frame_control_deactivate (socket->frame); else dbgprintf ("No de-activate on focus out"); return GTK_WIDGET_CLASS (bonobo_socket_parent_class)->focus_out_event (widget, focus); } static void bonobo_socket_size_allocate (GtkWidget *widget, GtkAllocation *allocation) { GtkSocket *socket = (GtkSocket *) widget; dbgprintf ("bonobo_socket_size_allocate %p: (%d, %d), (%d, %d), %p, %p\n", widget, allocation->x, allocation->y, allocation->width, allocation->height, socket->plug_widget, socket->plug_window); GTK_WIDGET_CLASS (bonobo_socket_parent_class)->size_allocate (widget, allocation); } static void bonobo_socket_size_request (GtkWidget *widget, GtkRequisition *requisition) { BonoboSocket *socket = (BonoboSocket *) widget; GtkSocket *gtk_socket = (GtkSocket *) widget; dbgprintf ("pre bonobo_socket_size_request %p: realized %d, %s frame, %d %d\n", widget, GTK_WIDGET_REALIZED (widget) ? 1:0, socket->frame ? "has" : "no", gtk_socket->is_mapped, gtk_socket->have_size); #ifndef DEBUG_RAW_GTK if (GTK_WIDGET_REALIZED (widget) || !socket->frame || (gtk_socket->is_mapped && gtk_socket->have_size)) #endif GTK_WIDGET_CLASS (bonobo_socket_parent_class)->size_request (widget, requisition); #ifndef DEBUG_RAW_GTK else if (gtk_socket->have_size && GTK_WIDGET_VISIBLE (gtk_socket)) { requisition->width = gtk_socket->request_width; requisition->height = gtk_socket->request_height; } else { CORBA_Environment tmp_ev, *ev; CORBA_exception_init ((ev = &tmp_ev)); bonobo_control_frame_size_request ( socket->frame, requisition, ev); if (!BONOBO_EX (ev)) { gtk_socket->have_size = TRUE; gtk_socket->request_width = requisition->width; gtk_socket->request_height = requisition->height; } CORBA_exception_free (ev); } #endif dbgprintf ("bonobo_socket_size_request %p: %d, %d\n", widget, requisition->width, requisition->height); } static void bonobo_socket_show (GtkWidget *widget) { dbgprintf ("bonobo_socket_show %p\n", widget); /* We do a check_resize here, since if we're in-proc we * want to force a size_allocate on the contained GtkPlug, * before we go and map it (waiting for the idle resize), * since idle can be held off for a good while, and cause * extreme ugliness and flicker */ gtk_container_check_resize (GTK_CONTAINER (widget)); GTK_WIDGET_CLASS (bonobo_socket_parent_class)->show (widget); } static void bonobo_socket_show_all (GtkWidget *widget) { /* Do nothing - we don't want this to * propagate to an in-proc plug */ } static gboolean bonobo_socket_plug_removed (GtkSocket *socket) { dbgprintf ("bonobo_socket_plug_removed %p\n", socket); return TRUE; } static void bonobo_socket_class_init (BonoboSocketClass *klass) { GObjectClass *gobject_class; GtkWidgetClass *widget_class; GtkSocketClass *socket_class; gobject_class = (GObjectClass *) klass; widget_class = (GtkWidgetClass *) klass; socket_class = (GtkSocketClass *) klass; gobject_class->finalize = bonobo_socket_finalize; gobject_class->dispose = bonobo_socket_dispose; widget_class->realize = bonobo_socket_realize; widget_class->unrealize = bonobo_socket_unrealize; widget_class->state_changed = bonobo_socket_state_changed; widget_class->hierarchy_changed = bonobo_socket_hierarchy_changed; widget_class->focus_in_event = bonobo_socket_focus_in; widget_class->focus_out_event = bonobo_socket_focus_out; widget_class->size_request = bonobo_socket_size_request; widget_class->size_allocate = bonobo_socket_size_allocate; widget_class->expose_event = bonobo_socket_expose_event; widget_class->show = bonobo_socket_show; widget_class->show_all = bonobo_socket_show_all; socket_class->plug_removed = bonobo_socket_plug_removed; } static void bonobo_socket_init (BonoboSocket *socket) { BonoboSocketPrivate *priv; priv = g_new0 (BonoboSocketPrivate, 1); socket->priv = priv; } /** * bonobo_socket_new: * * Create a new empty #BonoboSocket. * * Returns: A new #BonoboSocket. */ GtkWidget* bonobo_socket_new (void) { return g_object_new (bonobo_socket_get_type (), NULL); } BonoboControlFrame * bonobo_socket_get_control_frame (BonoboSocket *socket) { g_return_val_if_fail (BONOBO_IS_SOCKET (socket), NULL); return socket->frame; } void bonobo_socket_set_control_frame (BonoboSocket *socket, BonoboControlFrame *frame) { BonoboControlFrame *old_frame; g_return_if_fail (BONOBO_IS_SOCKET (socket)); if (socket->frame == frame) return; old_frame = socket->frame; if (frame) socket->frame = BONOBO_CONTROL_FRAME ( bonobo_object_ref (BONOBO_OBJECT (frame))); else socket->frame = NULL; if (old_frame) { bonobo_control_frame_set_socket (old_frame, NULL); bonobo_object_unref (BONOBO_OBJECT (old_frame)); } if (frame) bonobo_control_frame_set_socket (frame, socket); } void bonobo_socket_add_id (BonoboSocket *socket, GdkNativeWindow xid) { GtkSocket *gtk_socket = (GtkSocket *) socket; gtk_socket_add_id (gtk_socket, xid); /* The allocate didn't get through even to the in-proc case, * so do it again */ if (gtk_socket->plug_widget) { GtkAllocation child_allocation; child_allocation.x = 0; child_allocation.y = 0; child_allocation.width = GTK_WIDGET (gtk_socket)->allocation.width; child_allocation.height = GTK_WIDGET (gtk_socket)->allocation.height; gtk_widget_size_allocate (gtk_socket->plug_widget, &child_allocation); } } libbonoboui-2.24.5/bonobo/bonobo-ui-sync-toolbar.h0000644000076400007640000000305111173072741016774 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ /* * bonobo-ui-sync-toolbar.h: The Bonobo UI/XML sync engine for toolbars * * Author: * Michael Meeks (michael@helixcode.com) * * Copyright 2000 Helix Code, Inc. */ #ifndef _BONOBO_UI_SYNC_TOOLBAR_H_ #define _BONOBO_UI_SYNC_TOOLBAR_H_ #include #include #include G_BEGIN_DECLS #define BONOBO_TYPE_UI_SYNC_TOOLBAR (bonobo_ui_sync_toolbar_get_type ()) #define BONOBO_UI_SYNC_TOOLBAR(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BONOBO_TYPE_UI_SYNC_TOOLBAR, BonoboUISyncToolbar)) #define BONOBO_UI_SYNC_TOOLBAR_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), BONOBO_TYPE_UI_SYNC_TOOLBAR, BonoboUISyncToolbarClass)) #define BONOBO_IS_UI_SYNC_TOOLBAR(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BONOBO_TYPE_UI_SYNC_TOOLBAR)) #define BONOBO_IS_UI_SYNC_TOOLBAR_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), BONOBO_TYPE_UI_SYNC_TOOLBAR)) typedef struct _BonoboUISyncToolbarPrivate BonoboUISyncToolbarPrivate; typedef struct { BonoboUISync parent; BonoboDock *dock; BonoboUISyncToolbarPrivate *priv; } BonoboUISyncToolbar; typedef struct { BonoboUISyncClass parent_class; } BonoboUISyncToolbarClass; BonoboUISync *bonobo_ui_sync_toolbar_new (BonoboUIEngine *engine, BonoboDock *dock); GtkToolbarStyle bonobo_ui_sync_toolbar_get_look (BonoboUIEngine *engine, BonoboUINode *node); G_END_DECLS #endif /* _BONOBO_UI_SYNC_TOOLBAR_H_ */ libbonoboui-2.24.5/bonobo/bonobo-ui-node-private.h0000644000076400007640000000334411173072741016762 00000000000000#ifndef _BONOBO_UI_NODE_PRIVATE_H_ #define _BONOBO_UI_NODE_PRIVATE_H_ /* All this for xmlChar, xmlStrdup !? */ #include #include #include #include G_BEGIN_DECLS struct _BonoboUINode { /* Tree management */ BonoboUINode *parent; BonoboUINode *children; BonoboUINode *prev; BonoboUINode *next; /* The useful bits */ GQuark name_id; int ref_count; xmlChar *content; GArray *attrs; gpointer user_data; }; typedef struct { GQuark id; xmlChar *value; } BonoboUIAttr; gboolean bonobo_ui_node_try_set_attr (BonoboUINode *node, GQuark prop, const char *value); void bonobo_ui_node_set_attr_by_id (BonoboUINode *node, GQuark id, const char *value); const char *bonobo_ui_node_get_attr_by_id (BonoboUINode *node, GQuark id); const char *bonobo_ui_node_peek_attr (BonoboUINode *node, const char *name); const char *bonobo_ui_node_peek_content (BonoboUINode *node); gboolean bonobo_ui_node_has_name_by_id (BonoboUINode *node, GQuark id); void bonobo_ui_node_add_after (BonoboUINode *before, BonoboUINode *new_after); void bonobo_ui_node_move_children (BonoboUINode *from, BonoboUINode *to); #define bonobo_ui_node_same_name(a,b) ((a)->name_id == (b)->name_id) BonoboUINode *bonobo_ui_node_get_path_child (BonoboUINode *node, const char *name); BonoboUINode *bonobo_ui_node_ref (BonoboUINode *node); void bonobo_ui_node_unref (BonoboUINode *node); G_END_DECLS #endif /* _BONOBO_UI_NODE_PRIVATE_H_ */ libbonoboui-2.24.5/bonobo/bonobo-canvas-item.c0000644000076400007640000005156211173072741016161 00000000000000/* * bonobo-canvas-item.c: GnomeCanvasItem implementation to serve as a client- * proxy for embedding remote canvas-items. * * Author: * Miguel de Icaza (miguel@kernel.org) * * (C) 1999, 2000 Ximian, Inc. */ /* FIXME: this needs re-writing to use BonoboObject ! */ #include #include #include #include #include #include #include #include #include #include #include #include #if defined (GDK_WINDOWING_X11) #include #elif defined (GDK_WINDOWING_WIN32) #include #elif defined (GDK_WINDOWING_QUARTZ) #else #error Port to this GDK backend #endif #include G_DEFINE_TYPE (BonoboCanvasItem, bonobo_canvas_item, GNOME_TYPE_CANVAS_ITEM) typedef struct { POA_Bonobo_Canvas_ComponentProxy proxy_servant; GnomeCanvasItem *item_bound; PortableServer_ObjectId *oid; Bonobo_UIContainer ui_container; } ComponentProxyServant; struct _BonoboCanvasItemPrivate { Bonobo_Canvas_Component object; ComponentProxyServant *proxy; int realize_pending; }; enum { PROP_0, PROP_CORBA_FACTORY, PROP_CORBA_UI_CONTAINER }; /* * Horizontal space saver */ #define GBI(x) BONOBO_CANVAS_ITEM(x) typedef BonoboCanvasItem Gbi; /* * Creates a Bonobo_Canvas_SVPSegment structure representing the ArtSVPSeg * structure, suitable for sending over the network */ static gboolean art_svp_segment_to_CORBA_SVP_Segment (ArtSVPSeg *seg, Bonobo_Canvas_SVPSegment *segment) { int i; segment->points._buffer = CORBA_sequence_Bonobo_Canvas_Point_allocbuf (seg->n_points); if (segment->points._buffer == NULL) return FALSE; segment->points._maximum = seg->n_points; segment->points._length = seg->n_points; if (seg->dir == 0) segment->up = CORBA_TRUE; else segment->up = CORBA_FALSE; segment->bbox.x0 = seg->bbox.x0; segment->bbox.x1 = seg->bbox.x1; segment->bbox.y0 = seg->bbox.y0; segment->bbox.y1 = seg->bbox.y1; for (i = 0; i < seg->n_points; i++){ segment->points._buffer [i].x = seg->points [i].x; segment->points._buffer [i].y = seg->points [i].y; } return TRUE; } /* * Creates a Bonobo_Canvas_SVP CORBA structure from the art_svp, suitable * for sending over the wire */ static Bonobo_Canvas_SVP * art_svp_to_CORBA_SVP (ArtSVP *art_svp) { Bonobo_Canvas_SVP *svp; int i; svp = Bonobo_Canvas_SVP__alloc (); if (!svp) return NULL; if (art_svp){ svp->_buffer = CORBA_sequence_Bonobo_Canvas_SVPSegment_allocbuf (art_svp->n_segs); if (svp->_buffer == NULL){ svp->_length = 0; svp->_maximum = 0; return svp; } svp->_maximum = art_svp->n_segs; svp->_length = art_svp->n_segs; for (i = 0; i < art_svp->n_segs; i++){ gboolean ok; ok = art_svp_segment_to_CORBA_SVP_Segment ( &art_svp->segs [i], &svp->_buffer [i]); if (!ok){ int j; for (j = 0; j < i; j++) CORBA_free (&svp->_buffer [j]); CORBA_free (svp); return NULL; } } } else { svp->_maximum = 0; svp->_length = 0; } return svp; } static ArtUta * uta_from_cuta (Bonobo_Canvas_ArtUTA *cuta) { ArtUta *uta; uta = art_uta_new (cuta->x0, cuta->y0, cuta->x0 + cuta->width, cuta->y0 + cuta->height); memcpy (uta->utiles, cuta->utiles._buffer, cuta->width * cuta->height * sizeof (ArtUtaBbox)); return uta; } static void prepare_state (GnomeCanvasItem *item, Bonobo_Canvas_State *target) { double item_affine [6]; GnomeCanvas *canvas = item->canvas; int i; gnome_canvas_item_i2w_affine (item, item_affine); for (i = 0; i < 6; i++) target->item_aff [i] = item_affine [i]; target->pixels_per_unit = canvas->pixels_per_unit; target->canvas_scroll_x1 = canvas->scroll_x1; target->canvas_scroll_y1 = canvas->scroll_y1; target->zoom_xofs = canvas->zoom_xofs; target->zoom_yofs = canvas->zoom_yofs; } static void gbi_update (GnomeCanvasItem *item, double *item_affine, ArtSVP *item_clip_path, int item_flags) { Gbi *gbi = GBI (item); Bonobo_Canvas_affine affine; Bonobo_Canvas_State state; Bonobo_Canvas_SVP *clip_path = NULL; CORBA_Environment ev; CORBA_double x1, y1, x2, y2; Bonobo_Canvas_ArtUTA *cuta; int i; if (getenv ("DEBUG_BI")) g_message ("gbi_update"); GNOME_CANVAS_ITEM_CLASS (bonobo_canvas_item_parent_class)->update (item, item_affine, item_clip_path, item_flags); for (i = 0; i < 6; i++) affine [i] = item_affine [i]; clip_path = art_svp_to_CORBA_SVP (item_clip_path); if (!clip_path) return; CORBA_exception_init (&ev); prepare_state (item, &state); cuta = Bonobo_Canvas_Component_update ( gbi->priv->object, &state, affine, clip_path, item_flags, &x1, &y1, &x2, &y2, &ev); if (!BONOBO_EX (&ev)){ if (cuta->width > 0 && cuta->height > 0){ ArtUta *uta; uta = uta_from_cuta (cuta); gnome_canvas_request_redraw_uta (item->canvas, uta); } item->x1 = x1; item->y1 = y1; item->x2 = x2; item->y2 = y2; if (getenv ("DEBUG_BI")) g_message ("Bbox: %g %g %g %g", x1, y1, x2, y2); CORBA_free (cuta); } CORBA_exception_free (&ev); CORBA_free (clip_path); } static void proxy_size_allocate (GnomeCanvas *canvas, GtkAllocation *allocation, BonoboCanvasItem *bonobo_item) { CORBA_Environment ev; CORBA_exception_init (&ev); Bonobo_Canvas_Component_setCanvasSize ( bonobo_item->priv->object, allocation->x, allocation->y, allocation->width, allocation->height, &ev); CORBA_exception_free (&ev); } static void gbi_realize (GnomeCanvasItem *item) { Gbi *gbi = GBI (item); Bonobo_Gdk_WindowId id; CORBA_Environment ev; if (getenv ("DEBUG_BI")) g_message ("gbi_realize"); GNOME_CANVAS_ITEM_CLASS (bonobo_canvas_item_parent_class)->realize (item); if (gbi->priv->object == CORBA_OBJECT_NIL) { gbi->priv->realize_pending = 1; return; } proxy_size_allocate ( item->canvas, &(GTK_WIDGET (item->canvas)->allocation), BONOBO_CANVAS_ITEM(item)); g_signal_connect (item->canvas, "size_allocate", G_CALLBACK (proxy_size_allocate), item); CORBA_exception_init (&ev); gdk_flush (); #if defined (GDK_WINDOWING_X11) id = bonobo_control_window_id_from_x11 (GDK_WINDOW_XWINDOW (item->canvas->layout.bin_window)); #elif defined (GDK_WINDOWING_WIN32) id = bonobo_control_window_id_from_x11 ((guint32) GDK_WINDOW_HWND (item->canvas->layout.bin_window)); #endif Bonobo_Canvas_Component_realize (gbi->priv->object, id, &ev); CORBA_free (id); CORBA_exception_free (&ev); } static void gbi_unrealize (GnomeCanvasItem *item) { Gbi *gbi = GBI (item); CORBA_Environment ev; if (getenv ("DEBUG_BI")) g_message ("gbi_unrealize"); if (gbi->priv->object != CORBA_OBJECT_NIL){ CORBA_exception_init (&ev); Bonobo_Canvas_Component_unrealize (gbi->priv->object, &ev); CORBA_exception_free (&ev); } GNOME_CANVAS_ITEM_CLASS (bonobo_canvas_item_parent_class)->unrealize (item); } static void gbi_draw (GnomeCanvasItem *item, GdkDrawable *drawable, int x, int y, int width, int height) { Gbi *gbi = GBI (item); CORBA_Environment ev; Bonobo_Canvas_State state; Bonobo_Gdk_WindowId id; if (getenv ("DEBUG_BI")) g_message ("draw: %d %d %d %d", x, y, width, height); /* * This call ensures the drawable XID is allocated on the X server */ gdk_flush (); CORBA_exception_init (&ev); prepare_state (item, &state); #if defined (GDK_WINDOWING_X11) id = bonobo_control_window_id_from_x11 (GDK_WINDOW_XWINDOW (drawable)); #elif defined (GDK_WINDOWING_WIN32) id = bonobo_control_window_id_from_x11 ((guint32) GDK_WINDOW_HWND (drawable)); #endif Bonobo_Canvas_Component_draw ( gbi->priv->object, &state, id, x, y, width, height, &ev); CORBA_free (id); CORBA_exception_free (&ev); } static double gbi_point (GnomeCanvasItem *item, double x, double y, int cx, int cy, GnomeCanvasItem **actual) { Gbi *gbi = GBI (item); CORBA_Environment ev; if (getenv ("DEBUG_BI")) g_message ("gbi_point %g %g", x, y); CORBA_exception_init (&ev); if (Bonobo_Canvas_Component_contains (gbi->priv->object, x, y, &ev)){ CORBA_exception_free (&ev); *actual = item; if (getenv ("DEBUG_BI")) g_message ("event inside"); return 0.0; } CORBA_exception_free (&ev); if (getenv ("DEBUG_BI")) g_message ("event outside"); *actual = NULL; return 1000.0; } static void gbi_bounds (GnomeCanvasItem *item, double *x1, double *y1, double *x2, double *y2) { Gbi *gbi = GBI (item); CORBA_Environment ev; Bonobo_Canvas_State state; if (getenv ("DEBUG_BI")) g_message ("gbi_bounds"); CORBA_exception_init (&ev); prepare_state (item, &state); Bonobo_Canvas_Component_bounds (gbi->priv->object, &state, x1, y1, x2, y2, &ev); CORBA_exception_free (&ev); if (getenv ("DEBUG_BI")) g_message ("gbi_bounds %g %g %g %g", *x1, *y1, *x2, *y2); } static void gbi_render (GnomeCanvasItem *item, GnomeCanvasBuf *buf) { Gbi *gbi = GBI (item); Bonobo_Canvas_Buf *cbuf; CORBA_Environment ev; if (getenv ("DEBUG_BI")) g_message ("gbi_render (%d %d)-(%d %d)", buf->rect.x0, buf->rect.y0, buf->rect.x1, buf->rect.y1); cbuf = Bonobo_Canvas_Buf__alloc (); if (!cbuf) return; cbuf->rgb_buf._buffer = buf->buf; #if 0 /* * Inneficient! */ if (!buf->is_buf) gnome_canvas_buf_ensure_buf (buf); #endif if (buf->is_buf){ cbuf->rgb_buf._maximum = buf->buf_rowstride * (buf->rect.y1 - buf->rect.y0); cbuf->rgb_buf._length = buf->buf_rowstride * (buf->rect.y1 - buf->rect.y0); cbuf->rgb_buf._buffer = buf->buf; CORBA_sequence_set_release (&cbuf->rgb_buf, FALSE); } else { cbuf->rgb_buf._maximum = 0; cbuf->rgb_buf._length = 0; cbuf->rgb_buf._buffer = NULL; } cbuf->row_stride = buf->buf_rowstride; cbuf->rect.x0 = buf->rect.x0; cbuf->rect.x1 = buf->rect.x1; cbuf->rect.y0 = buf->rect.y0; cbuf->rect.y1 = buf->rect.y1; cbuf->bg_color = buf->bg_color; cbuf->flags = (buf->is_bg ? Bonobo_Canvas_IS_BG : 0) | (buf->is_buf ? Bonobo_Canvas_IS_BUF : 0); CORBA_exception_init (&ev); Bonobo_Canvas_Component_render (gbi->priv->object, cbuf, &ev); if (BONOBO_EX (&ev)){ CORBA_exception_free (&ev); return; } CORBA_exception_free (&ev); memcpy (buf->buf, cbuf->rgb_buf._buffer, cbuf->rgb_buf._length); buf->is_bg = (cbuf->flags & Bonobo_Canvas_IS_BG) != 0; buf->is_buf = (cbuf->flags & Bonobo_Canvas_IS_BUF) != 0; CORBA_free (cbuf); } static Bonobo_Gdk_Event * gdk_event_to_bonobo_event (GdkEvent *event) { Bonobo_Gdk_Event *e = Bonobo_Gdk_Event__alloc (); if (e == NULL) return NULL; switch (event->type){ case GDK_FOCUS_CHANGE: e->_d = Bonobo_Gdk_FOCUS; e->_u.focus.inside = event->focus_change.in; return e; case GDK_KEY_PRESS: case GDK_KEY_RELEASE: e->_d = Bonobo_Gdk_KEY; if (event->type == GDK_KEY_PRESS) e->_u.key.type = Bonobo_Gdk_KEY_PRESS; else e->_u.key.type = Bonobo_Gdk_KEY_RELEASE; e->_u.key.time = event->key.time; e->_u.key.state = event->key.state; e->_u.key.keyval = event->key.keyval; e->_u.key.length = event->key.length; e->_u.key.str = CORBA_string_dup (event->key.string); return e; case GDK_MOTION_NOTIFY: e->_d = Bonobo_Gdk_MOTION; e->_u.motion.time = event->motion.time; e->_u.motion.x = event->motion.x; e->_u.motion.y = event->motion.y; e->_u.motion.x_root = event->motion.x_root; e->_u.motion.y_root = event->motion.y_root; #ifdef FIXME e->_u.motion.xtilt = event->motion.xtilt; e->_u.motion.ytilt = event->motion.ytilt; #endif e->_u.motion.state = event->motion.state; e->_u.motion.is_hint = event->motion.is_hint != 0; return e; case GDK_BUTTON_PRESS: case GDK_2BUTTON_PRESS: case GDK_3BUTTON_PRESS: case GDK_BUTTON_RELEASE: e->_d = Bonobo_Gdk_BUTTON; if (event->type == GDK_BUTTON_PRESS) e->_u.button.type = Bonobo_Gdk_BUTTON_PRESS; else if (event->type == GDK_BUTTON_RELEASE) e->_u.button.type = Bonobo_Gdk_BUTTON_RELEASE; else if (event->type == GDK_2BUTTON_PRESS) e->_u.button.type = Bonobo_Gdk_BUTTON_2_PRESS; else if (event->type == GDK_3BUTTON_PRESS) e->_u.button.type = Bonobo_Gdk_BUTTON_3_PRESS; e->_u.button.time = event->button.time; e->_u.button.x = event->button.x; e->_u.button.y = event->button.y; e->_u.button.x_root = event->button.x_root; e->_u.button.y_root = event->button.y_root; e->_u.button.button = event->button.button; return e; case GDK_ENTER_NOTIFY: case GDK_LEAVE_NOTIFY: e->_d = Bonobo_Gdk_CROSSING; if (event->type == GDK_ENTER_NOTIFY) e->_u.crossing.type = Bonobo_Gdk_ENTER; else e->_u.crossing.type = Bonobo_Gdk_LEAVE; e->_u.crossing.time = event->crossing.time; e->_u.crossing.x = event->crossing.x; e->_u.crossing.y = event->crossing.y; e->_u.crossing.x_root = event->crossing.x_root; e->_u.crossing.y_root = event->crossing.y_root; e->_u.crossing.state = event->crossing.state; switch (event->crossing.mode){ case GDK_CROSSING_NORMAL: e->_u.crossing.mode = Bonobo_Gdk_NORMAL; break; case GDK_CROSSING_GRAB: e->_u.crossing.mode = Bonobo_Gdk_GRAB; break; case GDK_CROSSING_UNGRAB: e->_u.crossing.mode = Bonobo_Gdk_UNGRAB; break; } return e; default: g_warning ("Unsupported event received"); } return NULL; } static gint gbi_event (GnomeCanvasItem *item, GdkEvent *event) { Gbi *gbi = GBI (item); CORBA_Environment ev; Bonobo_Gdk_Event *corba_event; Bonobo_Canvas_State state; CORBA_boolean ret; if (getenv ("DEBUG_BI")) g_message ("gbi_event"); corba_event = gdk_event_to_bonobo_event (event); if (corba_event == NULL) return FALSE; CORBA_exception_init (&ev); prepare_state (item, &state); ret = Bonobo_Canvas_Component_event (gbi->priv->object, &state, corba_event, &ev); CORBA_exception_free (&ev); CORBA_free (corba_event); return (gint) ret; } static void gbi_set_property (GObject *object, guint property_id, const GValue *value, GParamSpec *pspec) { Gbi *gbi = GBI (object); Bonobo_Canvas_ComponentProxy proxy_ref; Bonobo_CanvasComponentFactory factory; CORBA_Environment ev; switch (property_id) { case PROP_CORBA_FACTORY: CORBA_exception_init (&ev); gbi->priv->object = bonobo_object_release_unref (gbi->priv->object, &ev); /* FIXME: I can't make it work as corba_object. Using bonobo_unknown for now. */ /* factory = bonobo_value_get_corba_object (value); */ factory = bonobo_value_get_unknown (value); g_return_if_fail (factory != CORBA_OBJECT_NIL); proxy_ref = PortableServer_POA_servant_to_reference ( bonobo_poa (), (void *) gbi->priv->proxy, &ev); gbi->priv->object = Bonobo_CanvasComponentFactory_createCanvasComponent ( factory, GNOME_CANVAS_ITEM (gbi)->canvas->aa, proxy_ref, &ev); if (ev._major != CORBA_NO_EXCEPTION) gbi->priv->object = CORBA_OBJECT_NIL; CORBA_Object_release (factory, &ev); CORBA_exception_free (&ev); if (gbi->priv->object == CORBA_OBJECT_NIL) { g_object_unref (gbi); return; } if (gbi->priv->realize_pending){ gbi->priv->realize_pending = 0; gbi_realize (GNOME_CANVAS_ITEM (gbi)); } break; case PROP_CORBA_UI_CONTAINER: gbi->priv->proxy->ui_container = bonobo_value_get_unknown (value); g_return_if_fail (gbi->priv->proxy->ui_container != CORBA_OBJECT_NIL); break; default: g_warning ("Unexpected arg_id %u", property_id); break; } } static void gbi_finalize (GObject *object) { Gbi *gbi = GBI (object); CORBA_Environment ev; if (getenv ("DEBUG_BI")) g_message ("gbi_finalize"); CORBA_exception_init (&ev); bonobo_object_release_unref (gbi->priv->object, &ev); if (gbi->priv->proxy){ ComponentProxyServant *proxy = gbi->priv->proxy; PortableServer_POA_deactivate_object (bonobo_poa (), proxy->oid, &ev); POA_Bonobo_Unknown__fini ((void *) proxy, &ev); CORBA_free (proxy->oid); g_free (proxy); } g_free (gbi->priv); CORBA_exception_free (&ev); G_OBJECT_CLASS (bonobo_canvas_item_parent_class)->finalize (object); } static void bonobo_canvas_item_class_init (BonoboCanvasItemClass *object_class) { GObjectClass *gobject_class = (GObjectClass *) object_class; GnomeCanvasItemClass *item_class = (GnomeCanvasItemClass *) object_class; gobject_class->set_property = gbi_set_property; g_object_class_install_property ( gobject_class, PROP_CORBA_FACTORY, g_param_spec_boxed ( "corba_factory", _("corba factory"), _("The factory pointer"), BONOBO_TYPE_STATIC_UNKNOWN, G_PARAM_WRITABLE)); g_object_class_install_property ( gobject_class, PROP_CORBA_UI_CONTAINER, g_param_spec_boxed ( "corba_ui_factory", _("corba UI container"), _("The User interface container"), BONOBO_TYPE_STATIC_UNKNOWN, G_PARAM_WRITABLE)); gobject_class->finalize = gbi_finalize; item_class->update = gbi_update; item_class->realize = gbi_realize; item_class->unrealize = gbi_unrealize; item_class->draw = gbi_draw; item_class->point = gbi_point; item_class->bounds = gbi_bounds; item_class->render = gbi_render; item_class->event = gbi_event; } static gboolean gbi_idle_handler (GnomeCanvasItem *item) { gnome_canvas_item_request_update (item); return FALSE; } static void impl_Bonobo_Canvas_ComponentProxy_requestUpdate (PortableServer_Servant servant, CORBA_Environment *ev) { ComponentProxyServant *item_proxy = (ComponentProxyServant *) servant; if (item_proxy->item_bound->canvas->idle_id == 0) { gnome_canvas_item_request_update (item_proxy->item_bound); } else { /* Problem: It is possible to get here at a time when the canvas * is in the middle of a do_update. This happens because * this proxy call might be waiting in the queue when * the this object calls Bonobo_Canvas_Component_update. * * Solution: * The canvas is either in its do_update routine or it is * waiting to do an update. If it is waiting this idle_handler * will get called just before the canvas's handler. If it is * in the middle of a do_update, then this will queue for the * next one. */ g_idle_add_full(GDK_PRIORITY_REDRAW-6, (GSourceFunc)gbi_idle_handler, item_proxy->item_bound, NULL); } } static void impl_Bonobo_Canvas_ComponentProxy_grabFocus (PortableServer_Servant servant, guint32 mask, gint32 cursor_type, guint32 time, CORBA_Environment *ev) { ComponentProxyServant *item_proxy = (ComponentProxyServant *) servant; GdkCursor *cursor; cursor = gdk_cursor_new_for_display (gtk_widget_get_display (GTK_WIDGET (item_proxy->item_bound->canvas)), (GdkCursorType) cursor_type); gnome_canvas_item_grab (item_proxy->item_bound, mask, cursor, time); } static void impl_Bonobo_Canvas_ComponentProxy_ungrabFocus (PortableServer_Servant servant, guint32 time, CORBA_Environment *ev) { ComponentProxyServant *item_proxy = (ComponentProxyServant *) servant; gnome_canvas_item_ungrab (item_proxy->item_bound, time); } static Bonobo_UIContainer impl_Bonobo_Canvas_ComponentProxy_getUIContainer (PortableServer_Servant servant, CORBA_Environment *ev) { ComponentProxyServant *item_proxy = (ComponentProxyServant *) servant; g_return_val_if_fail (item_proxy->ui_container != CORBA_OBJECT_NIL, CORBA_OBJECT_NIL); return bonobo_object_dup_ref (item_proxy->ui_container, NULL); } static PortableServer_ServantBase__epv item_proxy_base_epv; static POA_Bonobo_Canvas_ComponentProxy__epv item_proxy_epv; static POA_Bonobo_Canvas_ComponentProxy__vepv item_proxy_vepv = { &item_proxy_base_epv, &item_proxy_epv }; /* * Creates a CORBA server to handle the ComponentProxy requests, it is not * activated by default */ static ComponentProxyServant * create_proxy (GnomeCanvasItem *item) { ComponentProxyServant *item_proxy = g_new0 (ComponentProxyServant, 1); CORBA_Environment ev; item_proxy->proxy_servant.vepv = &item_proxy_vepv; CORBA_exception_init (&ev); POA_Bonobo_Canvas_ComponentProxy__init ((PortableServer_Servant) item_proxy, &ev); item_proxy_epv.requestUpdate = impl_Bonobo_Canvas_ComponentProxy_requestUpdate; item_proxy_epv.grabFocus = impl_Bonobo_Canvas_ComponentProxy_grabFocus; item_proxy_epv.ungrabFocus = impl_Bonobo_Canvas_ComponentProxy_ungrabFocus; item_proxy_epv.getUIContainer = impl_Bonobo_Canvas_ComponentProxy_getUIContainer; item_proxy->item_bound = item; item_proxy->oid = PortableServer_POA_activate_object ( bonobo_poa (), (void *) item_proxy, &ev); CORBA_exception_free (&ev); return item_proxy; } static void bonobo_canvas_item_init (BonoboCanvasItem *gbi) { gbi->priv = g_new0 (BonoboCanvasItemPrivate, 1); gbi->priv->proxy = create_proxy (GNOME_CANVAS_ITEM (gbi)); } void bonobo_canvas_item_set_bounds (BonoboCanvasItem *item, double x1, double y1, double x2, double y2) { g_warning ("Unimplemented"); } libbonoboui-2.24.5/bonobo/bonobo-dock-layout.h0000644000076400007640000001125711173072741016207 00000000000000/* bonobo-dock-layout.c Copyright (C) 1998 Free Software Foundation All rights reserved. The Gnome Library is free software; you can redistribute it and/or modify it under the terms of the GNU Library General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. The Gnome Library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Library General Public License for more details. You should have received a copy of the GNU Library General Public License along with the Gnome Library; see the file COPYING.LIB. If not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. Author: Ettore Perazzoli */ /* @NOTATION@ */ #ifndef _BONOBO_DOCK_LAYOUT_H #define _BONOBO_DOCK_LAYOUT_H G_BEGIN_DECLS #define BONOBO_TYPE_DOCK_LAYOUT (bonobo_dock_layout_get_type ()) #define BONOBO_DOCK_LAYOUT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BONOBO_TYPE_DOCK_LAYOUT, BonoboDockLayout)) #define BONOBO_DOCK_LAYOUT_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), BONOBO_TYPE_DOCK_LAYOUT, BonoboDockLayoutClass)) #define BONOBO_IS_DOCK_LAYOUT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BONOBO_TYPE_DOCK_LAYOUT)) #define BONOBO_IS_DOCK_LAYOUT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), BONOBO_TYPE_DOCK_LAYOUT)) #define BONOBO_DOCK_LAYOUT_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), BONOBO_TYPE_DOCK_LAYOUT, BonoboDockLayoutClass)) typedef struct _BonoboDockLayoutItem BonoboDockLayoutItem; typedef struct _BonoboDockLayoutClass BonoboDockLayoutClass; typedef struct _BonoboDockLayout BonoboDockLayout; typedef struct _BonoboDockLayoutPrivate BonoboDockLayoutPrivate; #include #include struct _BonoboDockLayoutItem { BonoboDockItem *item; BonoboDockPlacement placement; union { struct { gint x; gint y; GtkOrientation orientation; } floating; struct { gint band_num; gint band_position; gint offset; } docked; } position; }; struct _BonoboDockLayout { GObject object; GList *items; /* BonoboDockLayoutItem */ /*< private >*/ BonoboDockLayoutPrivate *_priv; }; struct _BonoboDockLayoutClass { GObjectClass parent_class; gpointer dummy[4]; }; BonoboDockLayout *bonobo_dock_layout_new (void); GType bonobo_dock_layout_get_type (void) G_GNUC_CONST; gboolean bonobo_dock_layout_add_item (BonoboDockLayout *layout, BonoboDockItem *item, BonoboDockPlacement placement, gint band_num, gint band_position, gint offset); gboolean bonobo_dock_layout_add_floating_item (BonoboDockLayout *layout, BonoboDockItem *item, gint x, gint y, GtkOrientation orientation); BonoboDockLayoutItem *bonobo_dock_layout_get_item (BonoboDockLayout *layout, BonoboDockItem *item); BonoboDockLayoutItem *bonobo_dock_layout_get_item_by_name (BonoboDockLayout *layout, const gchar *name); gboolean bonobo_dock_layout_remove_item (BonoboDockLayout *layout, BonoboDockItem *item); gboolean bonobo_dock_layout_remove_item_by_name (BonoboDockLayout *layout, const gchar *name); gchar *bonobo_dock_layout_create_string (BonoboDockLayout *layout); gboolean bonobo_dock_layout_parse_string (BonoboDockLayout *layout, const gchar *string); gboolean bonobo_dock_layout_add_to_dock (BonoboDockLayout *layout, BonoboDock *dock); G_END_DECLS #endif libbonoboui-2.24.5/bonobo/bonobo-ui-util.c0000664000076400007640000010432711433016366015342 00000000000000/* * bonobo-ui-util.c: Bonobo UI utility functions * * Author: * Michael Meeks (michael@ximian.com) * * Copyright 2000, 2001 Ximian, Inc. */ #undef GTK_DISABLE_DEPRECATED #include #include #include #include #include #include #include #include #include #include static gchar *find_pixmap_in_path (const gchar *filename); static const char write_lut[16] = { '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'a', 'b', 'c', 'd', 'e', 'f' }; static const gint8 read_lut[128] = { -1, -1, -1, -1, -1, -1, -1, -1, /* 0x00 -> 0x07 */ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, /* 0x10 -> 0x17 */ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, /* 0x20 -> 0x27 */ -1, -1, -1, -1, -1, -1, -1, -1, 0, 1, 2, 3, 4, 5, 6, 7, /* 0x30 -> 0x37 */ 8, 9, -1, -1, -1, -1, -1, -1, -1, 10, 11, 12, 13, 14, 15, -1, /* 0x40 -> 0x47 */ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, /* 0x50 -> 0x57 */ -1, -1, -1, -1, -1, -1, -1, -1, -1, 10, 11, 12, 13, 14, 15, -1, /* 0x60 -> 0x67 */ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, /* 0x70 -> 0x77 */ -1, -1, -1, -1, -1, -1, -1, -1 }; static inline void write_byte (char *start, guint8 byte) { start[0] = write_lut[byte >> 4]; start[1] = write_lut[byte & 15]; } static inline void write_four_bytes (char *pos, int value) { write_byte (pos + 0, value >> 24); write_byte (pos + 2, value >> 16); write_byte (pos + 4, value >> 8); write_byte (pos + 6, value); } static void read_warning (const char *start) { g_warning ("Format error in stream '%c', '%c'", start[0], start[1]); } static inline guint8 read_byte (const char *start) { guint8 byte1, byte2; gint8 nibble1, nibble2; byte1 = start[0]; byte2 = start[1]; if (byte1 >= 128 || byte2 >= 128) read_warning (start); nibble1 = read_lut[byte1]; nibble2 = read_lut[byte2]; if (nibble1 < 0 || nibble2 < 0) read_warning (start); return (nibble1 << 4) + nibble2; } static inline guint32 read_four_bytes (const char *pos) { return ((read_byte (pos) << 24) | (read_byte (pos + 2) << 16) | (read_byte (pos + 4) << 8) | (read_byte (pos + 6))); } /** * bonobo_ui_util_pixbuf_to_xml: * @pixbuf: a GdkPixbuf * * Convert a @pixbuf to a string representation suitable * for passing as a "pixname" attribute with a pixtype * attribute = "pixbuf". * * Return value: the stringified pixbuf. **/ char * bonobo_ui_util_pixbuf_to_xml (GdkPixbuf *pixbuf) { char *xml, *dst, *src; int size, width, height, row, row_stride, col, byte_width; gboolean has_alpha; g_return_val_if_fail (pixbuf != NULL, NULL); width = gdk_pixbuf_get_width (pixbuf); height = gdk_pixbuf_get_height (pixbuf); has_alpha = gdk_pixbuf_get_has_alpha (pixbuf); byte_width = width * (3 + (has_alpha ? 1 : 0)); size = 4 * 2 * 2 + /* width, height */ 1 + 1 + /* alpha, terminator */ height * byte_width * 2; xml = g_malloc (size); xml [size - 1] = '\0'; dst = xml; write_four_bytes (dst, gdk_pixbuf_get_width (pixbuf)); dst+= 4 * 2; write_four_bytes (dst, gdk_pixbuf_get_height (pixbuf)); dst+= 4 * 2; if (has_alpha) *dst = 'A'; else *dst = 'N'; dst++; /* Copy over bitmap information */ src = gdk_pixbuf_get_pixels (pixbuf); row_stride = gdk_pixbuf_get_rowstride (pixbuf); for (row = 0; row < height; row++) { for (col = 0; col < byte_width; col++) { write_byte (dst, src [col]); dst+= 2; } src += row_stride; } return xml; } /** * bonobo_ui_util_xml_to_pixbuf: * @xml: a string * * This converts a stringified pixbuf in @xml into a GdkPixbuf * * Return value: a handed reference to the created GdkPixbuf. **/ GdkPixbuf * bonobo_ui_util_xml_to_pixbuf (const char *xml) { GdkPixbuf *pixbuf; int width, height, byte_width; int length, row_stride, col, row; gboolean has_alpha; guint8 *dst; g_return_val_if_fail (xml != NULL, NULL); while (*xml && g_ascii_isspace (*xml)) xml++; length = strlen (xml); g_return_val_if_fail (length > 4 * 2 * 2 + 1, NULL); width = read_four_bytes (xml); xml += 4 * 2; height = read_four_bytes (xml); xml += 4 * 2; if (*xml == 'A') has_alpha = TRUE; else if (*xml == 'N') has_alpha = FALSE; else { g_warning ("Unknown type '%c'", *xml); return NULL; } xml++; byte_width = width * (3 + (has_alpha ? 1 : 0)); g_return_val_if_fail (length >= (byte_width * height * 2 + 4 * 2 * 2 + 1), NULL); pixbuf = gdk_pixbuf_new (GDK_COLORSPACE_RGB, has_alpha, 8, width, height); dst = gdk_pixbuf_get_pixels (pixbuf); row_stride = gdk_pixbuf_get_rowstride (pixbuf); for (row = 0; row < height; row++) { for (col = 0; col < byte_width; col++) { dst [col] = read_byte (xml); xml += 2; } dst += row_stride; } return pixbuf; } static gchar * find_pixmap_in_path (const gchar *filename) { gchar *file; if (g_path_is_absolute (filename)) return g_strdup (filename); file = gnome_program_locate_file (gnome_program_get (), GNOME_FILE_DOMAIN_PIXMAP, filename, TRUE, NULL); return file; } /* FIXME: could cut down allocation here a bit */ static char * lookup_stock_compat (const char *id) { char *lower, *new_id; static GHashTable *compat_hash = NULL; if (!compat_hash) { static const char *mapping[][2] = { { "Up", "gtk-go-up" }, { "Down", "gtk-go-down" }, { "Back", "gtk-go-back" }, { "Forward", "gtk-go-forward" }, { "Save As", "gtk-save-as" }, { "Trash", "gtk-delete" }, { "Revert", "gtk-revert-to-saved" }, { "Exit", "gtk-quit" }, { "Search", "gtk-find" }, { "Search/Replace", "gtk-find-and-replace" }, { "Timer Stopped", "gnome-stock-timer-stop" }, { "Scores", "gnome-stock-scores" }, { "About", "gnome-stock-about" }, { NULL, NULL } }; int i; compat_hash = g_hash_table_new (g_str_hash, g_str_equal); for (i = 0; mapping [i][0]; i++) g_hash_table_insert (compat_hash, (gpointer) mapping [i] [0], (gpointer) mapping [i] [1]); } if ((new_id = g_hash_table_lookup (compat_hash, id))) return g_strdup (new_id); lower = g_ascii_strdown (id, -1); new_id = g_strconcat ("gtk-", lower, NULL); if (gtk_icon_factory_lookup_default (new_id)) { g_free (lower); return new_id; } g_free (new_id); new_id = g_strconcat ("gnome-stock-", lower, NULL); if (gtk_icon_factory_lookup_default (new_id)) { g_free (lower); return new_id; } g_free (lower); g_free (new_id); /* FIXME: does this catch them all ? */ return NULL; } void bonobo_ui_image_set_pixbuf (GtkImage *image, GdkPixbuf *pixbuf) { if (gtk_image_get_pixbuf (image) != pixbuf) gtk_image_set_from_pixbuf (image, pixbuf); else if (pixbuf) g_object_unref (pixbuf); } static void bonobo_ui_image_set_stock (GtkImage *image, const char *name, GtkIconSize icon_size) { g_return_if_fail (name != NULL); if (image->storage_type != GTK_IMAGE_STOCK || image->icon_size != icon_size || !image->data.stock.stock_id || strcmp (image->data.stock.stock_id, name)) gtk_image_set_from_stock (image, name, icon_size); } static GtkIconSize bonobo_ui_util_xml_get_icon_size (BonoboUINode *node, GtkIconSize default_size) { GtkIconSize retval; const char *size_name; retval = default_size; if ((size_name = bonobo_ui_node_peek_attr (node, "icon_size"))) retval = gtk_icon_size_from_name (size_name); return retval; } void bonobo_ui_util_xml_set_image (GtkImage *image, BonoboUINode *node, BonoboUINode *cmd_node, GtkIconSize icon_size) { char *key; const char *type, *text; GdkPixbuf *pixbuf = NULL; static GHashTable *pixbuf_cache = NULL; g_return_if_fail (node != NULL); if ((type = bonobo_ui_node_peek_attr (node, "pixtype"))) { text = bonobo_ui_node_peek_attr (node, "pixname"); icon_size = bonobo_ui_util_xml_get_icon_size (node, icon_size); } else if (cmd_node && (type = bonobo_ui_node_peek_attr (cmd_node, "pixtype"))) { text = bonobo_ui_node_peek_attr (cmd_node, "pixname"); icon_size = bonobo_ui_util_xml_get_icon_size (cmd_node, icon_size); } else return; if (!text) { if (g_getenv ("BONOBO_DEBUG")) g_warning ("Missing pixname on '%s'", bonobo_ui_xml_make_path (node)); return; } if (!strcmp (type, "stock")) { if (gtk_icon_factory_lookup_default (text)) bonobo_ui_image_set_stock (image, text, icon_size); else { char *mapped; if ((mapped = lookup_stock_compat (text))) { bonobo_ui_image_set_stock (image, mapped, icon_size); g_free (mapped); } } return; } key = g_strdup_printf ("%s:%u", text, icon_size); if (!pixbuf_cache) pixbuf_cache = g_hash_table_new_full ( g_str_hash, g_str_equal, (GDestroyNotify) g_free, (GDestroyNotify) g_object_unref); else if ((pixbuf = g_hash_table_lookup (pixbuf_cache, key))) { g_free (key); g_object_ref (pixbuf); bonobo_ui_image_set_pixbuf (image, pixbuf); return; } if (!strcmp (type, "filename")) { char *name = find_pixmap_in_path (text); if ((name == NULL) || !g_file_test (name, G_FILE_TEST_EXISTS)) g_warning ("Could not find GNOME pixmap file %s", text); else { int w, h; GtkSettings *settings = gtk_widget_get_settings (GTK_WIDGET (image)); if (gtk_icon_size_lookup_for_settings (settings, icon_size, &w, &h)) pixbuf = gdk_pixbuf_new_from_file_at_size (name, w, h, NULL); else pixbuf = gdk_pixbuf_new_from_file (name, NULL); } g_free (name); } else if (!strcmp (type, "pixbuf")) pixbuf = bonobo_ui_util_xml_to_pixbuf (text); else g_warning ("Unknown icon_pixbuf type '%s'", type); if (pixbuf) { g_object_ref (pixbuf); g_hash_table_insert (pixbuf_cache, key, pixbuf); } else g_free (key); bonobo_ui_image_set_pixbuf (image, pixbuf); } /** * bonobo_ui_util_xml_get_icon_widget: * @node: the node * @icon_size: the desired size of the icon * * This function extracts a pixbuf from the node and returns a GtkWidget * containing a display of the pixbuf. * * Unused internally. * * Return value: the widget. **/ GtkWidget * bonobo_ui_util_xml_get_icon_widget (BonoboUINode *node, GtkIconSize icon_size) { const char *type, *text; GtkWidget *image = NULL; g_return_val_if_fail (node != NULL, NULL); if (!(type = bonobo_ui_node_peek_attr (node, "pixtype"))) return NULL; if (!(text = bonobo_ui_node_peek_attr (node, "pixname"))) return NULL; if (!text) return NULL; if (!strcmp (type, "stock")) { if (gtk_icon_factory_lookup_default (text)) image = gtk_image_new_from_stock (text, icon_size); else { char *mapped; if ((mapped = lookup_stock_compat (text))) { image = gtk_image_new_from_stock (mapped, icon_size); g_free (mapped); } else g_warning ("Unknown stock icon '%s', stock names all changed in Gtk+ 2.0", text); } } else if (!strcmp (type, "filename")) { char *name = find_pixmap_in_path (text); if ((name == NULL) || !g_file_test (name, G_FILE_TEST_EXISTS)) g_warning ("Could not find GNOME pixmap file %s", text); else image = gtk_image_new_from_file (name); g_free (name); } else if (!strcmp (type, "pixbuf")) { GdkPixbuf *icon_pixbuf; /* Get pointer to GdkPixbuf */ icon_pixbuf = bonobo_ui_util_xml_to_pixbuf (text); if (icon_pixbuf) { image = gtk_image_new_from_pixbuf (icon_pixbuf); g_object_unref (icon_pixbuf); } } else g_warning ("Unknown icon_pixbuf type '%s'", type); if (image) gtk_widget_show (image); return image; } /** * bonobo_ui_util_xml_set_pixbuf: * @node: the node * @pixbuf: the pixbuf * * Associate @pixbuf with this @node by stringifying it and setting * the requisite attributes. **/ void bonobo_ui_util_xml_set_pixbuf (BonoboUINode *node, GdkPixbuf *pixbuf) { char *data; g_return_if_fail (node != NULL); g_return_if_fail (pixbuf != NULL); bonobo_ui_node_set_attr (node, "pixtype", "pixbuf"); data = bonobo_ui_util_pixbuf_to_xml (pixbuf); bonobo_ui_node_set_attr (node, "pixname", data); g_free (data); } typedef struct { char *app_prefix; char *app_name; GnomeProgram *program; } HelpDisplayClosure; static void help_display_closure_free (gpointer user_data, GClosure *closure) { HelpDisplayClosure *cl = user_data; g_free (cl->app_prefix); g_free (cl->app_name); if (cl->program) g_object_unref (cl->program); g_free (cl); } static void bonobo_help_display_cb (BonoboUIComponent *component, gpointer user_data, const char *cname) { GError *error = NULL; const char *doc_id; HelpDisplayClosure *cl = user_data; if (cl->app_name) doc_id = cl->app_name; else doc_id = gnome_program_get_app_id (gnome_program_get ()); if (!cl->program) { int argc = 1; char *argv[2]; char *prefix; char *datadir; argv [0] = (char *) (doc_id ? doc_id : "unknown-lib"); argv [1] = NULL; if (cl->app_prefix) prefix = g_strdup (cl->app_prefix); else prefix = NULL; if (prefix) datadir = g_strdup_printf ("%s/share", prefix); else { datadir = NULL; g_object_get (G_OBJECT (gnome_program_get ()), GNOME_PARAM_APP_DATADIR, &datadir, NULL); } if (!datadir) /* desparate fallback */ datadir = g_strdup (BONOBO_DATADIR); cl->program = gnome_program_init ( doc_id, "2.1", LIBGNOME_MODULE, argc, argv, GNOME_PARAM_APP_PREFIX, prefix, GNOME_PARAM_APP_DATADIR, datadir, NULL); g_free (datadir); g_free (prefix); } gnome_help_display_with_doc_id ( cl->program, doc_id, doc_id, NULL, &error); if (error) { GtkWidget *dialog; dialog = gtk_message_dialog_new (NULL, 0, GTK_MESSAGE_ERROR, GTK_BUTTONS_OK, _("Could not display help for this application")); gtk_message_dialog_format_secondary_text (GTK_MESSAGE_DIALOG (dialog), "%s", error->message); g_signal_connect_swapped (dialog, "response", G_CALLBACK (gtk_widget_destroy), dialog); gtk_window_present (GTK_WINDOW (dialog)); g_error_free (error); } } /** * bonobo_ui_util_build_help_menu: * @listener: associated component * @app_prefix: application prefix * @app_name: application name * @parent: toplevel node * * This routine inserts all the help menu items appropriate for this * application as children of the @parent node. **/ void bonobo_ui_util_build_help_menu (BonoboUIComponent *listener, const char *app_prefix, const char *app_name, BonoboUINode *parent) { static int unique = 0; char *id; BonoboUINode *node; HelpDisplayClosure *cl; node = bonobo_ui_node_new ("menuitem"); id = g_strdup_printf ("Help%s%d", app_name ? app_name : "main", unique++); bonobo_ui_node_set_attr (node, "name", id); bonobo_ui_node_set_attr (node, "verb", ""); bonobo_ui_node_set_attr (node, "label", _("_Contents")); bonobo_ui_node_set_attr (node, "tip", _("View help for this application")); bonobo_ui_node_set_attr (node, "pixtype", "stock"); bonobo_ui_node_set_attr (node, "pixname", "gtk-help"); bonobo_ui_node_set_attr (node, "accel", "F1"); cl = g_new0 (HelpDisplayClosure, 1); cl->app_name = g_strdup (app_name); cl->app_prefix = g_strdup (app_prefix); bonobo_ui_component_add_verb_full ( listener, id, g_cclosure_new ( G_CALLBACK (bonobo_help_display_cb), cl, help_display_closure_free)); bonobo_ui_node_add_child (parent, node); g_free (id); } /** * bonobo_ui_util_get_ui_fname: * @component_datadir: the datadir for the component, e.g. /usr/share * @file_name: the file name of the xml file. * * Builds a path to the xml file that stores the GUI. * * Return value: the path to the file that describes the * UI or NULL if it is not found. **/ char * bonobo_ui_util_get_ui_fname (const char *component_datadir, const char *file_name) { char *fname, *name; if ((g_path_is_absolute (file_name) || file_name [0] == '.') && g_file_test (file_name, G_FILE_TEST_EXISTS)) return g_strdup (file_name); if (component_datadir) { fname = g_build_filename (component_datadir, "gnome-2.0", "ui", file_name, NULL); if (g_file_test (fname, G_FILE_TEST_EXISTS)) return fname; g_free (fname); } name = g_build_filename (BONOBO_UIDIR, file_name, NULL); if (g_file_test (name, G_FILE_TEST_EXISTS)) return name; g_free (name); if (component_datadir) { name = g_build_filename (component_datadir, file_name, NULL); if (g_file_test (name, G_FILE_TEST_EXISTS)) return name; g_free (name); } return NULL; } /** * bonobo_ui_util_translate_ui: * @node: the node to start at. * * Quest through a tree looking for translatable properties * ( those prefixed with an '_' ). Translates the value of the * property and removes the leading '_'. **/ void bonobo_ui_util_translate_ui (BonoboUINode *node) { BonoboUINode *l; int i; if (!node) return; for (i = 0; i < node->attrs->len; i++) { BonoboUIAttr *a; const char *str; a = &g_array_index (node->attrs, BonoboUIAttr, i); if (!a->id) continue; str = g_quark_to_string (a->id); if (str [0] == '_') { char *old; a->id = g_quark_from_static_string (str + 1); old = a->value; #ifdef ENABLE_NLS a->value = xmlStrdup (gettext(a->value)); #else a->value = xmlStrdup (a->value); #endif xmlFree (old); } } for (l = node->children; l; l = l->next) bonobo_ui_util_translate_ui (l); } /** * bonobo_ui_util_fixup_help: * @component: the UI component * @node: the node to search under * @app_prefix: the application prefix * @app_name: the application name * * This searches for 'BuiltMenuItems' placeholders, and then * fills them with the application's menu items. **/ void bonobo_ui_util_fixup_help (BonoboUIComponent *component, BonoboUINode *node, const char *app_prefix, const char *app_name) { BonoboUINode *l; gboolean build_here = FALSE; if (!node) return; if (bonobo_ui_node_has_name (node, "placeholder")) { const char *txt; if ((txt = bonobo_ui_node_peek_attr (node, "name"))) build_here = !strcmp (txt, "BuiltMenuItems"); } if (build_here) { bonobo_ui_util_build_help_menu ( component, app_prefix, app_name, node); } for (l = bonobo_ui_node_children (node); l; l = bonobo_ui_node_next (l)) bonobo_ui_util_fixup_help (component, l, app_prefix, app_name); } /** * bonobo_ui_util_fixup_icons: * @node: the node * * This function is used to ensure filename pixbuf attributes are * converted to in-line pixbufs on the server side, so that we don't * sent a ( possibly invalid ) filename across the wire. **/ void bonobo_ui_util_fixup_icons (BonoboUINode *node) { BonoboUINode *l; gboolean fixup_here = FALSE; const char *txt; if (!node) return; if ((txt = bonobo_ui_node_peek_attr (node, "pixtype"))) fixup_here = !strcmp (txt, "filename"); if (fixup_here && ((txt = bonobo_ui_node_peek_attr (node, "pixname")))) { GdkPixbuf *pixbuf = NULL; if (g_path_is_absolute (txt)) pixbuf = gdk_pixbuf_new_from_file (txt, NULL); else { gchar *name = find_pixmap_in_path (txt); if (name) { pixbuf = gdk_pixbuf_new_from_file (name, NULL); g_free (name); } } if (pixbuf) { gchar *xml = bonobo_ui_util_pixbuf_to_xml (pixbuf); bonobo_ui_node_set_attr (node, "pixtype", "pixbuf"); bonobo_ui_node_set_attr (node, "pixname", xml); g_free (xml); g_object_unref (pixbuf); } } for (l = bonobo_ui_node_children (node); l; l = bonobo_ui_node_next (l)) bonobo_ui_util_fixup_icons (l); } /** * bonobo_ui_util_new_ui: * @component: The component help callback should be on * @file_name: Filename of the UI file * @app_name: Application name ( for finding help ) * * Loads an xml tree from a file, cleans the * doc cruft from its nodes; and translates the nodes. * * Return value: The translated tree ready to be merged. **/ BonoboUINode * bonobo_ui_util_new_ui (BonoboUIComponent *component, const char *file_name, const char *app_prefix, const char *app_name) { BonoboUINode *node; g_return_val_if_fail (app_name != NULL, NULL); g_return_val_if_fail (file_name != NULL, NULL); node = bonobo_ui_node_from_file (file_name); bonobo_ui_util_translate_ui (node); bonobo_ui_util_fixup_help (component, node, app_prefix, app_name); bonobo_ui_util_fixup_icons (node); return node; } typedef struct { char *file_name; char *app_name; char *tree; } BonoboUINodeCacheEntry; static guint node_hash (gconstpointer key) { BonoboUINodeCacheEntry *entry = (BonoboUINodeCacheEntry *)key; return g_str_hash (entry->file_name) ^ g_str_hash (entry->app_name); } static gint node_equal (gconstpointer a, gconstpointer b) { BonoboUINodeCacheEntry *entry_a = (BonoboUINodeCacheEntry *)a; BonoboUINodeCacheEntry *entry_b = (BonoboUINodeCacheEntry *)b; return !strcmp (entry_a->file_name, entry_b->file_name) && !strcmp (entry_a->app_name, entry_b->app_name); } static GHashTable *loaded_node_cache = NULL; static void free_node_cache_entry (BonoboUINodeCacheEntry *entry) { g_free (entry->file_name); g_free (entry->app_name); g_free (entry->tree); g_free (entry); } static void free_loaded_node_cache (void) { if (loaded_node_cache) { g_hash_table_foreach (loaded_node_cache, (GHFunc) free_node_cache_entry, NULL); g_hash_table_destroy (loaded_node_cache); } } /** * bonobo_ui_util_set_ui: * @component: the component * @app_datadir: the application datadir eg. /opt/gnome/share * @file_name: the filename of the file to merge relative to the prefix. * @app_name: the application name - for help merging * * This function loads the UI from the associated file, translates it, * fixes up all the menus, ensures pixbuf filenames are resolved to xml * and then merges the XML to the remote container - this is the best * and most simple entry point for the new UI code. **/ void bonobo_ui_util_set_ui (BonoboUIComponent *component, const char *app_datadir, const char *file_name, const char *app_name, CORBA_Environment *opt_ev) { char *fname, *ui; BonoboUINodeCacheEntry entry, *cached; if (!loaded_node_cache) { loaded_node_cache = g_hash_table_new (node_hash, node_equal); g_atexit (free_loaded_node_cache); } if (bonobo_ui_component_get_container (component) == CORBA_OBJECT_NIL) { g_warning ("Component must be associated with a container first " "see bonobo_component_set_container"); return; } fname = bonobo_ui_util_get_ui_fname (app_datadir, file_name); if (!fname) { g_warning ("Can't find '%s' to load ui from", file_name); return; } entry.file_name = (char *) fname; entry.app_name = (char *) app_name; cached = g_hash_table_lookup (loaded_node_cache, &entry); if (cached) ui = cached->tree; else { BonoboUINode *node; node = bonobo_ui_util_new_ui ( component, fname, app_datadir, app_name); ui = bonobo_ui_node_to_string (node, TRUE); if (!ui) return; bonobo_ui_node_free (node); cached = g_new (BonoboUINodeCacheEntry, 1); cached->file_name = g_strdup (fname); cached->app_name = g_strdup (app_name); cached->tree = ui; g_hash_table_insert (loaded_node_cache, cached, cached); } if (ui) bonobo_ui_component_set (component, "/", ui, opt_ev); g_free (fname); } /* * Evil code, cut and pasted from gtkaccelgroup.c * needs de-Soptimizing :-) */ #define DELIM_PRE '*' #define DELIM_PRE_S "*" #define DELIM_POST '*' #define DELIM_POST_S "*" static inline gboolean is_alt (const gchar *string) { return ((string[0] == DELIM_PRE) && (string[1] == 'a' || string[1] == 'A') && (string[2] == 'l' || string[2] == 'L') && (string[3] == 't' || string[3] == 'T') && (string[4] == DELIM_POST)); } static inline gboolean is_ctl (const gchar *string) { return ((string[0] == DELIM_PRE) && (string[1] == 'c' || string[1] == 'C') && (string[2] == 't' || string[2] == 'T') && (string[3] == 'l' || string[3] == 'L') && (string[4] == DELIM_POST)); } static inline gboolean is_modx (const gchar *string) { return ((string[0] == DELIM_PRE) && (string[1] == 'm' || string[1] == 'M') && (string[2] == 'o' || string[2] == 'O') && (string[3] == 'd' || string[3] == 'D') && (string[4] >= '1' && string[4] <= '5') && (string[5] == DELIM_POST)); } static inline gboolean is_ctrl (const gchar *string) { return ((string[0] == DELIM_PRE) && (string[1] == 'c' || string[1] == 'C') && (string[2] == 't' || string[2] == 'T') && (string[3] == 'r' || string[3] == 'R') && (string[4] == 'l' || string[4] == 'L') && (string[5] == DELIM_POST)); } static inline gboolean is_shft (const gchar *string) { return ((string[0] == DELIM_PRE) && (string[1] == 's' || string[1] == 'S') && (string[2] == 'h' || string[2] == 'H') && (string[3] == 'f' || string[3] == 'F') && (string[4] == 't' || string[4] == 'T') && (string[5] == DELIM_POST)); } static inline gboolean is_shift (const gchar *string) { return ((string[0] == DELIM_PRE) && (string[1] == 's' || string[1] == 'S') && (string[2] == 'h' || string[2] == 'H') && (string[3] == 'i' || string[3] == 'I') && (string[4] == 'f' || string[4] == 'F') && (string[5] == 't' || string[5] == 'T') && (string[6] == DELIM_POST)); } static inline gboolean is_control (const gchar *string) { return ((string[0] == DELIM_PRE) && (string[1] == 'c' || string[1] == 'C') && (string[2] == 'o' || string[2] == 'O') && (string[3] == 'n' || string[3] == 'N') && (string[4] == 't' || string[4] == 'T') && (string[5] == 'r' || string[5] == 'R') && (string[6] == 'o' || string[6] == 'O') && (string[7] == 'l' || string[7] == 'L') && (string[8] == DELIM_POST)); } static inline gboolean is_release (const gchar *string) { return ((string[0] == DELIM_PRE) && (string[1] == 'r' || string[1] == 'R') && (string[2] == 'e' || string[2] == 'E') && (string[3] == 'l' || string[3] == 'L') && (string[4] == 'e' || string[4] == 'E') && (string[5] == 'a' || string[5] == 'A') && (string[6] == 's' || string[6] == 'S') && (string[7] == 'e' || string[7] == 'E') && (string[8] == DELIM_POST)); } static inline gboolean is_super (const gchar *string) { return ((string[0] == DELIM_PRE) && (string[1] == 's' || string[1] == 'S') && (string[2] == 'u' || string[2] == 'U') && (string[3] == 'p' || string[3] == 'P') && (string[4] == 'e' || string[4] == 'E') && (string[5] == 'r' || string[5] == 'R') && (string[6] == DELIM_POST)); } static inline gboolean is_hyper (const gchar *string) { return ((string[0] == DELIM_PRE) && (string[1] == 'h' || string[1] == 'H') && (string[2] == 'y' || string[2] == 'Y') && (string[3] == 'p' || string[3] == 'P') && (string[4] == 'e' || string[4] == 'E') && (string[5] == 'r' || string[5] == 'R') && (string[6] == DELIM_POST)); } static inline gboolean is_meta (const gchar *string) { return ((string[0] == DELIM_PRE) && (string[1] == 'm' || string[1] == 'M') && (string[2] == 'e' || string[2] == 'E') && (string[3] == 't' || string[3] == 'T') && (string[4] == 'a' || string[4] == 'A') && (string[5] == DELIM_POST)); } /** * bonobo_ui_util_accel_parse: * @accelerator: the accelerator name * @accelerator_key: output of the key * @accelerator_mods: output of the mods * * This parses the accelerator string and returns the key and mods * associated with it - using a similar format to Gtk+ but one which * doesn't involve inefficient XML entities and avoids other misc. * problems. **/ void bonobo_ui_util_accel_parse (const char *accelerator, guint *accelerator_key, GdkModifierType *accelerator_mods) { guint keyval; GdkModifierType mods; gint len; g_return_if_fail (accelerator_key != NULL); *accelerator_key = 0; g_return_if_fail (accelerator_mods != NULL); *accelerator_mods = 0; g_return_if_fail (accelerator != NULL); if (accelerator_key) *accelerator_key = 0; if (accelerator_mods) *accelerator_mods = 0; keyval = 0; mods = 0; len = strlen (accelerator); while (len) { if (*accelerator == DELIM_PRE) { if (len >= 9 && is_release (accelerator)) { accelerator += 9; len -= 9; mods |= GDK_RELEASE_MASK; } else if (len >= 9 && is_control (accelerator)) { accelerator += 9; len -= 9; mods |= GDK_CONTROL_MASK; } else if (len >= 7 && is_shift (accelerator)) { accelerator += 7; len -= 7; mods |= GDK_SHIFT_MASK; } else if (len >= 6 && is_shft (accelerator)) { accelerator += 6; len -= 6; mods |= GDK_SHIFT_MASK; } else if (len >= 6 && is_ctrl (accelerator)) { accelerator += 6; len -= 6; mods |= GDK_CONTROL_MASK; } else if (len >= 6 && is_modx (accelerator)) { static const guint mod_vals[] = { GDK_MOD1_MASK, GDK_MOD2_MASK, GDK_MOD3_MASK, GDK_MOD4_MASK, GDK_MOD5_MASK }; len -= 6; accelerator += 4; mods |= mod_vals[*accelerator - '1']; accelerator += 2; } else if (len >= 5 && is_ctl (accelerator)) { accelerator += 5; len -= 5; mods |= GDK_CONTROL_MASK; } else if (len >= 5 && is_alt (accelerator)) { accelerator += 5; len -= 5; mods |= GDK_MOD1_MASK; } else if (len >= 7 && is_super (accelerator)) { accelerator += 7; len -= 7; mods |= GDK_SUPER_MASK; } else if (len >= 7 && is_hyper (accelerator)) { accelerator += 7; len -= 7; mods |= GDK_HYPER_MASK; } else if (len >= 6 && is_meta (accelerator)) { accelerator += 6; len -= 6; mods |= GDK_META_MASK; } else { gchar last_ch; last_ch = *accelerator; if (!last_ch || last_ch == DELIM_POST) { g_warning ("Unknown accelerator - '%s'", accelerator); return; } while (last_ch && last_ch != DELIM_POST) { last_ch = *accelerator; accelerator += 1; len -= 1; } } } else { keyval = gdk_keyval_from_name (accelerator); accelerator += len; len -= len; } } if (accelerator_key) *accelerator_key = gdk_keyval_to_lower (keyval); if (accelerator_mods) *accelerator_mods = mods; } /** * bonobo_ui_util_accel_name: * @accelerator_key: the key * @accelerator_mods: the modifiers * * This stringifies an @accelerator_key and some @accelerator_mods * it is the converse of bonobo_ui_util_accel_parse * * Return value: the stringified representation **/ gchar * bonobo_ui_util_accel_name (guint accelerator_key, GdkModifierType accelerator_mods) { static const gchar text_release[] = DELIM_PRE_S "Release" DELIM_POST_S; static const gchar text_shift[] = DELIM_PRE_S "Shift" DELIM_POST_S; static const gchar text_control[] = DELIM_PRE_S "Control" DELIM_POST_S; static const gchar text_mod1[] = DELIM_PRE_S "Alt" DELIM_POST_S; static const gchar text_mod2[] = DELIM_PRE_S "Mod2" DELIM_POST_S; static const gchar text_mod3[] = DELIM_PRE_S "Mod3" DELIM_POST_S; static const gchar text_mod4[] = DELIM_PRE_S "Mod4" DELIM_POST_S; static const gchar text_mod5[] = DELIM_PRE_S "Mod5" DELIM_POST_S; static const gchar text_super[] = DELIM_PRE_S "Super" DELIM_POST_S; static const gchar text_hyper[] = DELIM_PRE_S "Hyper" DELIM_POST_S; static const gchar text_meta[] = DELIM_PRE_S "Meta" DELIM_POST_S; guint l; gchar *keyval_name; gchar *accelerator; accelerator_mods &= GDK_MODIFIER_MASK; keyval_name = gdk_keyval_name (gdk_keyval_to_lower (accelerator_key)); if (!keyval_name) keyval_name = ""; l = 0; if (accelerator_mods & GDK_RELEASE_MASK) l += sizeof (text_release) - 1; if (accelerator_mods & GDK_SHIFT_MASK) l += sizeof (text_shift) - 1; if (accelerator_mods & GDK_CONTROL_MASK) l += sizeof (text_control) - 1; if (accelerator_mods & GDK_MOD1_MASK) l += sizeof (text_mod1) - 1; if (accelerator_mods & GDK_MOD2_MASK) l += sizeof (text_mod2) - 1; if (accelerator_mods & GDK_MOD3_MASK) l += sizeof (text_mod3) - 1; if (accelerator_mods & GDK_MOD4_MASK) l += sizeof (text_mod4) - 1; if (accelerator_mods & GDK_MOD5_MASK) l += sizeof (text_mod5) - 1; if (accelerator_mods & GDK_SUPER_MASK) l += sizeof (text_super) - 1; if (accelerator_mods & GDK_HYPER_MASK) l += sizeof (text_hyper) - 1; if (accelerator_mods & GDK_META_MASK) l += sizeof (text_meta) - 1; l += strlen (keyval_name); accelerator = g_new (gchar, l + 1); l = 0; accelerator[l] = 0; if (accelerator_mods & GDK_RELEASE_MASK) { strcpy (accelerator + l, text_release); l += sizeof (text_release) - 1; } if (accelerator_mods & GDK_SHIFT_MASK) { strcpy (accelerator + l, text_shift); l += sizeof (text_shift) - 1; } if (accelerator_mods & GDK_CONTROL_MASK) { strcpy (accelerator + l, text_control); l += sizeof (text_control) - 1; } if (accelerator_mods & GDK_MOD1_MASK) { strcpy (accelerator + l, text_mod1); l += sizeof (text_mod1) - 1; } if (accelerator_mods & GDK_MOD2_MASK) { strcpy (accelerator + l, text_mod2); l += sizeof (text_mod2) - 1; } if (accelerator_mods & GDK_MOD3_MASK) { strcpy (accelerator + l, text_mod3); l += sizeof (text_mod3) - 1; } if (accelerator_mods & GDK_MOD4_MASK) { strcpy (accelerator + l, text_mod4); l += sizeof (text_mod4) - 1; } if (accelerator_mods & GDK_MOD5_MASK) { strcpy (accelerator + l, text_mod5); l += sizeof (text_mod5) - 1; } if (accelerator_mods & GDK_SUPER_MASK) { strcpy (accelerator + l, text_super); l += sizeof (text_super) - 1; } if (accelerator_mods & GDK_HYPER_MASK) { strcpy (accelerator + l, text_hyper); l += sizeof (text_hyper) - 1; } if (accelerator_mods & GDK_META_MASK) { strcpy (accelerator + l, text_meta); l += sizeof (text_meta) - 1; } strcpy (accelerator + l, keyval_name); return accelerator; } /** * bonobo_ui_util_set_pixbuf: * @component: the component * @path: the path into the xml tree * @pixbuf: the pixbuf * * This helper function sets a pixbuf at a certain path into an * xml tree. **/ void bonobo_ui_util_set_pixbuf (BonoboUIComponent *component, const char *path, GdkPixbuf *pixbuf, CORBA_Environment *opt_ev) { char *parent_path; BonoboUINode *node; node = bonobo_ui_component_get_tree (component, path, FALSE, opt_ev); g_return_if_fail (node != NULL); bonobo_ui_util_xml_set_pixbuf (node, pixbuf); parent_path = bonobo_ui_xml_get_parent_path (path); bonobo_ui_component_set_tree (component, parent_path, node, opt_ev); bonobo_ui_node_free (node); g_free (parent_path); } libbonoboui-2.24.5/bonobo/bonobo-ui-sync-status.h0000644000076400007640000000260711173072741016663 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ /* * bonobo-ui-sync-status.h: The Bonobo UI/XML sync engine for statuss * * Author: * Michael Meeks (michael@helixcode.com) * * Copyright 2000 Helix Code, Inc. */ #ifndef _BONOBO_UI_SYNC_STATUS_H_ #define _BONOBO_UI_SYNC_STATUS_H_ #include #include G_BEGIN_DECLS #define BONOBO_TYPE_UI_SYNC_STATUS (bonobo_ui_sync_status_get_type ()) #define BONOBO_UI_SYNC_STATUS(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BONOBO_TYPE_UI_SYNC_STATUS, BonoboUISyncStatus)) #define BONOBO_UI_SYNC_STATUS_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), BONOBO_TYPE_UI_SYNC_STATUS, BonoboUISyncStatusClass)) #define BONOBO_IS_UI_SYNC_STATUS(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BONOBO_TYPE_UI_SYNC_STATUS)) #define BONOBO_IS_UI_SYNC_STATUS_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), BONOBO_TYPE_UI_SYNC_STATUS)) typedef struct _BonoboUISyncStatusPrivate BonoboUISyncStatusPrivate; typedef struct { BonoboUISync parent; GtkBox *status; GtkStatusbar *main_status; BonoboUISyncStatusPrivate *priv; } BonoboUISyncStatus; typedef struct { BonoboUISyncClass parent_class; } BonoboUISyncStatusClass; BonoboUISync *bonobo_ui_sync_status_new (BonoboUIEngine *engine, GtkBox *status); G_END_DECLS #endif /* _BONOBO_UI_SYNC_STATUS_H_ */ libbonoboui-2.24.5/bonobo/bonobo-dock-band.h0000644000076400007640000001375211173072741015600 00000000000000/* bonobo-dock-band.h Copyright (C) 1998 Free Software Foundation All rights reserved. The Gnome Library is free software; you can redistribute it and/or modify it under the terms of the GNU Library General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. The Gnome Library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Library General Public License for more details. You should have received a copy of the GNU Library General Public License along with the Gnome Library; see the file COPYING.LIB. If not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. Author: Ettore Perazzoli */ /* @NOTATION@ */ #ifndef _BONOBO_DOCK_BAND_H #define _BONOBO_DOCK_BAND_H #include G_BEGIN_DECLS #define BONOBO_TYPE_DOCK_BAND (bonobo_dock_band_get_type ()) #define BONOBO_DOCK_BAND(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BONOBO_TYPE_DOCK_BAND, BonoboDockBand)) #define BONOBO_DOCK_BAND_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), BONOBO_TYPE_DOCK_BAND, BonoboDockBandClass)) #define BONOBO_IS_DOCK_BAND(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BONOBO_TYPE_DOCK_BAND)) #define BONOBO_IS_DOCK_BAND_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), BONOBO_TYPE_DOCK_BAND)) #define BONOBO_DOCK_BAND_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), BONOBO_TYPE_DOCK_BAND, BonoboDockBandClass)) typedef struct _BonoboDockBand BonoboDockBand; typedef struct _BonoboDockBandPrivate BonoboDockBandPrivate; typedef struct _BonoboDockBandClass BonoboDockBandClass; typedef struct _BonoboDockBandChild BonoboDockBandChild; #include #include #include struct _BonoboDockBand { GtkContainer container; GList *children; /* BonoboDockBandChild */ GList *floating_child; /* BonoboDockBandChild */ /* This used to remember the allocation before the drag begin: it is necessary to do so because we actually decide what docking action happens depending on it, instead of using the current allocation (which might be constantly changing while the user drags things around). */ GtkAllocation drag_allocation; guint tot_offsets; guint max_space_requisition : 16; guint num_children : 8; guint new_for_drag : 1; guint doing_drag : 1; guint orientation : 1; /*< private >*/ BonoboDockBandPrivate *_priv; }; struct _BonoboDockBandClass { GtkContainerClass parent_class; gpointer dummy[2]; }; struct _BonoboDockBandChild { GtkWidget *widget; GtkAllocation drag_allocation; /* Maximum (requested) offset from the previous child. */ guint16 offset; /* Actual offset. */ guint16 real_offset; guint16 drag_offset; guint16 prev_space, foll_space; guint16 drag_prev_space, drag_foll_space; guint16 max_space_requisition; }; GtkWidget *bonobo_dock_band_new (void); GType bonobo_dock_band_get_type (void) G_GNUC_CONST; void bonobo_dock_band_set_orientation (BonoboDockBand *band, GtkOrientation orientation); GtkOrientation bonobo_dock_band_get_orientation (BonoboDockBand *band); gboolean bonobo_dock_band_insert (BonoboDockBand *band, GtkWidget *child, guint offset, gint position); gboolean bonobo_dock_band_prepend (BonoboDockBand *band, GtkWidget *child, guint offset); gboolean bonobo_dock_band_append (BonoboDockBand *band, GtkWidget *child, guint offset); void bonobo_dock_band_set_child_offset (BonoboDockBand *band, GtkWidget *child, guint offset); guint bonobo_dock_band_get_child_offset (BonoboDockBand *band, GtkWidget *child); void bonobo_dock_band_move_child (BonoboDockBand *band, GList *old_child, guint new_num); guint bonobo_dock_band_get_num_children (BonoboDockBand *band); void bonobo_dock_band_drag_begin (BonoboDockBand *band, BonoboDockItem *item); gboolean bonobo_dock_band_drag_to (BonoboDockBand *band, BonoboDockItem *item, gint x, gint y); void bonobo_dock_band_drag_end (BonoboDockBand *band, BonoboDockItem *item); BonoboDockItem *bonobo_dock_band_get_item_by_name (BonoboDockBand *band, const char *name, guint *position_return, guint *offset_return); void bonobo_dock_band_layout_add (BonoboDockBand *band, BonoboDockLayout *layout, BonoboDockPlacement placement, guint band_num); #ifdef BONOBO_UI_INTERNAL gint _bonobo_dock_band_handle_key_nav (BonoboDockBand *band, BonoboDockItem *item, GdkEventKey *event); #endif /* BONOBO_UI_INTERNAL */ G_END_DECLS #endif libbonoboui-2.24.5/bonobo/bonobo-ui-internal-toolbar.c0000644000076400007640000001351211173072741017632 00000000000000#undef GTK_DISABLE_DEPRECATED #include #include #include typedef struct { GtkToolbar parent; gboolean got_size; GtkRequisition full_size; } InternalToolbar; typedef struct { GtkToolbarClass parent_class; } InternalToolbarClass; GType internal_toolbar_get_type (void) G_GNUC_CONST; G_DEFINE_TYPE(InternalToolbar, internal_toolbar, GTK_TYPE_TOOLBAR) enum { PROP_0, PROP_IS_FLOATING, PROP_ORIENTATION, PROP_PREFERRED_WIDTH, PROP_PREFERRED_HEIGHT }; static void get_full_size (InternalToolbar *toolbar) { if (!toolbar->got_size) { gboolean show_arrow; toolbar->got_size = TRUE; show_arrow = gtk_toolbar_get_show_arrow (GTK_TOOLBAR (toolbar)); if (show_arrow) /* Not an elegant approach, sigh. */ g_object_set (toolbar, "show_arrow", FALSE, NULL); gtk_widget_size_request (GTK_WIDGET (toolbar), &toolbar->full_size); if (show_arrow) g_object_set (toolbar, "show_arrow", TRUE, NULL); } } static void invalidate_size (InternalToolbar *toolbar) { toolbar->got_size = FALSE; } GList * bonobo_ui_internal_toolbar_get_children (GtkWidget *toolbar) { int i, n_items = 0; GList *ret = NULL; n_items = gtk_toolbar_get_n_items (GTK_TOOLBAR (toolbar)); for (i = 0; i < n_items; i++) { GtkWidget *child; GtkToolItem *item = gtk_toolbar_get_nth_item (GTK_TOOLBAR (toolbar), i); if ((child = GTK_BIN (item)->child) && BONOBO_IS_UI_TOOLBAR_ITEM (child)) ret = g_list_prepend (ret, child); else ret = g_list_prepend (ret, item); } return g_list_reverse (ret); } static void set_attributes_on_child (BonoboUIToolbarItem *item, GtkOrientation orientation, GtkToolbarStyle style) { bonobo_ui_toolbar_item_set_orientation (item, orientation); switch (style) { case GTK_TOOLBAR_BOTH_HORIZ: if (! bonobo_ui_toolbar_item_get_want_label (item)) bonobo_ui_toolbar_item_set_style (item, BONOBO_UI_TOOLBAR_ITEM_STYLE_ICON_ONLY); else if (orientation == GTK_ORIENTATION_HORIZONTAL) bonobo_ui_toolbar_item_set_style (item, BONOBO_UI_TOOLBAR_ITEM_STYLE_ICON_AND_TEXT_HORIZONTAL); else bonobo_ui_toolbar_item_set_style (item, BONOBO_UI_TOOLBAR_ITEM_STYLE_ICON_AND_TEXT_VERTICAL); break; case GTK_TOOLBAR_BOTH: if (orientation == GTK_ORIENTATION_VERTICAL) bonobo_ui_toolbar_item_set_style (item, BONOBO_UI_TOOLBAR_ITEM_STYLE_ICON_AND_TEXT_HORIZONTAL); else bonobo_ui_toolbar_item_set_style (item, BONOBO_UI_TOOLBAR_ITEM_STYLE_ICON_AND_TEXT_VERTICAL); break; case GTK_TOOLBAR_ICONS: bonobo_ui_toolbar_item_set_style (item, BONOBO_UI_TOOLBAR_ITEM_STYLE_ICON_ONLY); break; case GTK_TOOLBAR_TEXT: bonobo_ui_toolbar_item_set_style (item, BONOBO_UI_TOOLBAR_ITEM_STYLE_TEXT_ONLY); break; default: g_assert_not_reached (); } } static void impl_get_property (GObject *object, guint property_id, GValue *value, GParamSpec *pspec) { InternalToolbar *toolbar = (InternalToolbar *) object; get_full_size (toolbar); switch (property_id) { case PROP_PREFERRED_WIDTH: g_value_set_uint (value, toolbar->full_size.width); break; case PROP_PREFERRED_HEIGHT: g_value_set_uint (value, toolbar->full_size.height); break; default: break; }; } static void impl_set_property (GObject *object, guint property_id, const GValue *value, GParamSpec *pspec) { GtkToolbar *toolbar = GTK_TOOLBAR (object); invalidate_size ((InternalToolbar *) toolbar); switch (property_id) { case PROP_ORIENTATION: gtk_toolbar_set_orientation (toolbar, g_value_get_enum (value)); break; case PROP_IS_FLOATING: gtk_toolbar_set_show_arrow (toolbar, !g_value_get_boolean (value)); break; default: break; }; } static void impl_orientation_changed (GtkToolbar *widget, GtkOrientation orientation) { InternalToolbar *toolbar = (InternalToolbar *) widget; toolbar->got_size = FALSE; GTK_TOOLBAR_CLASS (internal_toolbar_parent_class)->orientation_changed (widget, orientation); } static void impl_style_changed (GtkToolbar *toolbar, GtkToolbarStyle style) { GList *items, *l; GtkOrientation orientation; invalidate_size ((InternalToolbar *) toolbar); items = bonobo_ui_internal_toolbar_get_children (GTK_WIDGET (toolbar)); orientation = gtk_toolbar_get_orientation (GTK_TOOLBAR (toolbar)); for (l = items; l != NULL; l = l->next) { if (BONOBO_IS_UI_TOOLBAR_ITEM (l->data)) set_attributes_on_child (l->data, orientation, style); } gtk_widget_queue_resize (GTK_WIDGET (toolbar)); GTK_TOOLBAR_CLASS (internal_toolbar_parent_class)->style_changed (toolbar, style); g_list_free (items); } static void internal_toolbar_class_init (InternalToolbarClass *klass) { GObjectClass *gobject_class = (GObjectClass *) klass; GtkToolbarClass *toolbar_class = (GtkToolbarClass *) klass; gobject_class->get_property = impl_get_property; gobject_class->set_property = impl_set_property; toolbar_class->orientation_changed = impl_orientation_changed; toolbar_class->style_changed = impl_style_changed; g_object_class_install_property ( gobject_class, PROP_PREFERRED_WIDTH, g_param_spec_uint ("preferred_width", NULL, NULL, 0, G_MAXINT, 0, G_PARAM_READABLE)); g_object_class_install_property ( gobject_class, PROP_PREFERRED_HEIGHT, g_param_spec_uint ("preferred_height", NULL, NULL, 0, G_MAXINT, 0, G_PARAM_READABLE)); g_object_class_install_property ( gobject_class, PROP_IS_FLOATING, g_param_spec_boolean ("is_floating", NULL, NULL, FALSE, G_PARAM_WRITABLE)); } static void internal_toolbar_init (InternalToolbar *toolbar) { g_signal_connect (toolbar, "add", G_CALLBACK (invalidate_size), NULL); g_signal_connect (toolbar, "remove", G_CALLBACK (invalidate_size), NULL); } GtkWidget * bonobo_ui_internal_toolbar_new (void) { return g_object_new (internal_toolbar_get_type(), NULL); } libbonoboui-2.24.5/bonobo/bonobo-window.c0000644000076400007640000002652311173072741015260 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ /* * bonobo-win.c: The Bonobo Window implementation. * * Author: * Michael Meeks (michael@ximian.com) * * Copyright 2000 Ximian, Inc. */ #undef GTK_DISABLE_DEPRECATED #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include G_DEFINE_TYPE (BonoboWindow, bonobo_window, GTK_TYPE_WINDOW) struct _BonoboWindowPrivate { BonoboUIEngine *engine; BonoboUISync *sync_menu; BonoboUISync *sync_keys; BonoboUISync *sync_status; BonoboUISync *sync_toolbar; BonoboDock *dock; BonoboDockItem *menu_item; GtkMenuBar *menu; GtkAccelGroup *accel_group; char *name; /* Win name */ char *prefix; /* Win prefix */ GtkBox *status; }; enum { PROP_0, PROP_WIN_NAME }; /** * bonobo_window_remove_popup: * @win: the window * @path: the path * * Remove the popup at @path **/ void bonobo_window_remove_popup (BonoboWindow *win, const char *path) { g_return_if_fail (path != NULL); g_return_if_fail (BONOBO_IS_WINDOW (win)); bonobo_ui_sync_menu_remove_popup ( BONOBO_UI_SYNC_MENU (win->priv->sync_menu), path); } /** * bonobo_window_add_popup: * @win: the window * @menu: the menu widget * @path: the path * * Add a popup @menu at @path **/ void bonobo_window_add_popup (BonoboWindow *win, GtkMenu *menu, const char *path) { g_return_if_fail (path != NULL); g_return_if_fail (BONOBO_IS_WINDOW (win)); bonobo_ui_sync_menu_add_popup ( BONOBO_UI_SYNC_MENU (win->priv->sync_menu), menu, path); } /** * bonobo_window_set_contents: * @win: the bonobo window * @contents: the new widget for it to contain. * * Insert a widget into the main window contents. **/ void bonobo_window_set_contents (BonoboWindow *win, GtkWidget *contents) { g_return_if_fail (win != NULL); g_return_if_fail (win->priv != NULL); bonobo_dock_set_client_area (win->priv->dock, contents); } /** * bonobo_window_get_contents: * @win: the bonobo window * * Return value: the contained widget **/ GtkWidget * bonobo_window_get_contents (BonoboWindow *win) { g_return_val_if_fail (win != NULL, NULL); g_return_val_if_fail (win->priv != NULL, NULL); g_return_val_if_fail (win->priv->dock != NULL, NULL); return bonobo_dock_get_client_area (win->priv->dock); } static void bonobo_window_dispose (GObject *object) { BonoboWindow *win = (BonoboWindow *)object; if (win->priv->engine) { bonobo_ui_engine_dispose (win->priv->engine); g_object_unref (win->priv->engine); win->priv->engine = NULL; } G_OBJECT_CLASS (bonobo_window_parent_class)->dispose (object); } static void bonobo_window_finalize (GObject *object) { BonoboWindow *win = (BonoboWindow *)object; g_free (win->priv->name); g_free (win->priv->prefix); g_free (win->priv); win->priv = NULL; G_OBJECT_CLASS (bonobo_window_parent_class)->finalize (object); } /** * bonobo_window_get_accel_group: * @win: the bonobo window * * Return value: the associated accelerator group for this window **/ GtkAccelGroup * bonobo_window_get_accel_group (BonoboWindow *win) { g_return_val_if_fail (BONOBO_IS_WINDOW (win), NULL); return win->priv->accel_group; } static BonoboWindowPrivate * construct_priv (BonoboWindow *win) { GtkWidget *main_vbox; BonoboWindowPrivate *priv; BonoboDockItemBehavior behavior; priv = g_new0 (BonoboWindowPrivate, 1); priv->engine = bonobo_ui_engine_new (G_OBJECT (win)); main_vbox = gtk_vbox_new (FALSE, 0); gtk_container_add (GTK_CONTAINER (win), main_vbox); priv->dock = BONOBO_DOCK (bonobo_dock_new ()); gtk_box_pack_start (GTK_BOX (main_vbox), GTK_WIDGET (priv->dock), TRUE, TRUE, 0); behavior = (BONOBO_DOCK_ITEM_BEH_EXCLUSIVE | BONOBO_DOCK_ITEM_BEH_NEVER_VERTICAL); if (!bonobo_ui_preferences_get_menubar_detachable ()) behavior |= BONOBO_DOCK_ITEM_BEH_LOCKED; priv->menu_item = BONOBO_DOCK_ITEM (bonobo_dock_item_new ( "menu", behavior)); priv->menu = GTK_MENU_BAR (gtk_menu_bar_new ()); gtk_container_add (GTK_CONTAINER (priv->menu_item), GTK_WIDGET (priv->menu)); bonobo_dock_add_item (priv->dock, priv->menu_item, BONOBO_DOCK_TOP, 0, 0, 0, TRUE); priv->status = GTK_BOX (gtk_hbox_new (FALSE, 0)); gtk_box_pack_end (GTK_BOX (main_vbox), GTK_WIDGET (priv->status), FALSE, FALSE, 0); priv->accel_group = gtk_accel_group_new (); gtk_window_add_accel_group (GTK_WINDOW (win), priv->accel_group); gtk_widget_show_all (GTK_WIDGET (main_vbox)); gtk_widget_hide (GTK_WIDGET (priv->status)); priv->sync_menu = bonobo_ui_sync_menu_new ( priv->engine, priv->menu, GTK_WIDGET (priv->menu_item), priv->accel_group); bonobo_ui_engine_add_sync (priv->engine, priv->sync_menu); priv->sync_toolbar = bonobo_ui_sync_toolbar_new ( priv->engine, BONOBO_DOCK (priv->dock)); bonobo_ui_engine_add_sync (priv->engine, priv->sync_toolbar); /* Keybindings; the gtk_binding stuff is just too evil */ priv->sync_keys = bonobo_ui_sync_keys_new (priv->engine); bonobo_ui_engine_add_sync (priv->engine, priv->sync_keys); priv->sync_status = bonobo_ui_sync_status_new ( priv->engine, priv->status); bonobo_ui_engine_add_sync (priv->engine, priv->sync_status); return priv; } /* * To kill bug reports of hiding not working * we want to stop show_all showing hidden menus etc. */ static void bonobo_window_show_all (GtkWidget *widget) { GtkWidget *client; BonoboWindow *win = BONOBO_WINDOW (widget); if (win->priv->dock && (client = bonobo_dock_get_client_area (win->priv->dock))) gtk_widget_show_all (client); gtk_widget_show (widget); } static gboolean bonobo_window_key_press_event (GtkWidget *widget, GdkEventKey *event) { gboolean handled; BonoboUISyncKeys *sync; BonoboWindow *window = (BonoboWindow *) widget; handled = GTK_WIDGET_CLASS (bonobo_window_parent_class)->key_press_event (widget, event); if (handled) return TRUE; sync = BONOBO_UI_SYNC_KEYS (window->priv->sync_keys); if (sync) return bonobo_ui_sync_keys_binding_handle (widget, event, sync); return FALSE; } static gboolean bonobo_window_key_release_event (GtkWidget *widget, GdkEventKey *event) { return GTK_WIDGET_CLASS (bonobo_window_parent_class)->key_release_event (widget, event); } static void bonobo_window_set_property (GObject *object, guint prop_id, const GValue *value, GParamSpec *pspec) { BonoboWindow *window; window = BONOBO_WINDOW (object); switch (prop_id) { case PROP_WIN_NAME: bonobo_window_set_name (window, g_value_get_string (value)); break; default: G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec); break; } } static void bonobo_window_get_property (GObject *object, guint prop_id, GValue *value, GParamSpec *pspec) { BonoboWindow *window; window = BONOBO_WINDOW (object); switch (prop_id) { case PROP_WIN_NAME: g_value_set_string (value, window->priv->name); break; default: G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec); break; } } static void bonobo_window_class_init (BonoboWindowClass *klass) { GObjectClass *gobject_class = (GObjectClass *) klass; GtkWidgetClass *widget_class = (GtkWidgetClass *) klass; gobject_class->dispose = bonobo_window_dispose; gobject_class->finalize = bonobo_window_finalize; gobject_class->set_property = bonobo_window_set_property; gobject_class->get_property = bonobo_window_get_property; widget_class->show_all = bonobo_window_show_all; widget_class->key_press_event = bonobo_window_key_press_event; widget_class->key_release_event = bonobo_window_key_release_event; /* Properties: */ g_object_class_install_property (gobject_class, PROP_WIN_NAME, g_param_spec_string ("win_name", _("Name"), _("Name of the window - used for configuration serialization."), NULL, G_PARAM_READWRITE | G_PARAM_CONSTRUCT)); } static void bonobo_window_init (BonoboWindow *win) { BonoboUIContainer *ui_container = NULL; win->priv = construct_priv (win); /* Create UIContainer: */ ui_container = bonobo_ui_container_new (); bonobo_ui_container_set_engine (ui_container, win->priv->engine); bonobo_object_unref (BONOBO_OBJECT (ui_container)); } /** * bonobo_window_set_name: * @win: the bonobo window * @win_name: the window name * * Set the name of the window - used for configuration * serialization. **/ void bonobo_window_set_name (BonoboWindow *win, const char *win_name) { BonoboWindowPrivate *priv; g_return_if_fail (BONOBO_IS_WINDOW (win)); priv = win->priv; g_free (priv->name); g_free (priv->prefix); if (win_name) { priv->name = g_strdup (win_name); priv->prefix = g_strconcat ("/", win_name, "/", NULL); } else { priv->name = NULL; priv->prefix = g_strdup ("/"); } } /** * bonobo_window_get_name: * @win: the bonobo window * * Return value: the name of the window **/ char * bonobo_window_get_name (BonoboWindow *win) { g_return_val_if_fail (BONOBO_IS_WINDOW (win), NULL); g_return_val_if_fail (win->priv != NULL, NULL); if (win->priv->name) return g_strdup (win->priv->name); else return NULL; } /** * bonobo_window_get_ui_engine: * @win: the bonobo window * * Return value: the #BonoboUIEngine **/ BonoboUIEngine * bonobo_window_get_ui_engine (BonoboWindow *win) { g_return_val_if_fail (BONOBO_IS_WINDOW (win), NULL); g_return_val_if_fail (win->priv != NULL, NULL); return win->priv->engine; } /** * bonobo_window_get_ui_container: * @win: the bonobo window * * Return value: the #BonoboUIContainer **/ BonoboUIContainer * bonobo_window_get_ui_container (BonoboWindow *win) { g_return_val_if_fail (BONOBO_IS_WINDOW (win), NULL); g_return_val_if_fail (win->priv != NULL, NULL); return bonobo_ui_engine_get_ui_container (win->priv->engine); } /** * bonobo_window_construct: * @win: the window to construct * @iu_container: the UI container * @win_name: the window name * @title: the window's title for the title bar * * Don't use this ever - use construct time properties instead. * TODO: Remove this when we are allowed API changes. * * Return value: a constructed window **/ GtkWidget * bonobo_window_construct (BonoboWindow *win, BonoboUIContainer *ui_container, const char *win_name, const char *title) { g_return_val_if_fail (BONOBO_IS_WINDOW (win), NULL); g_return_val_if_fail (BONOBO_IS_UI_CONTAINER (ui_container), NULL); bonobo_window_set_name (win, win_name); bonobo_ui_container_set_engine (ui_container, win->priv->engine); bonobo_object_unref (BONOBO_OBJECT (ui_container)); if (title) gtk_window_set_title (GTK_WINDOW (win), title); return GTK_WIDGET (win); } /** * bonobo_window_new: * @win_name: the window name * @title: the window's title for the title bar * * Return value: a new BonoboWindow **/ GtkWidget * bonobo_window_new (const char *win_name, const char *title) { BonoboWindow *win = g_object_new (BONOBO_TYPE_WINDOW, "win_name", win_name, "title", title, NULL); return GTK_WIDGET (win); } libbonoboui-2.24.5/bonobo/bonobo-ui-sync-keys.c0000644000076400007640000001225011173072741016301 00000000000000/* -*- Mode: C; indent-tabs-mode: t; c-basic-offset: 8; tab-width: 8 -*- */ /* * bonobo-ui-sync-keys.h: The Bonobo UI/XML sync engine for keys bits. * * Author: * Michael Meeks (michael@ximian.com) * * Copyright 2000 Ximian, Inc. */ #undef GTK_DISABLE_DEPRECATED #include #include #include #include #include #include #include #include static GQuark accel_id = 0; static GQuark keybindings_id = 0; static BonoboUISyncClass *parent_class = NULL; #define PARENT_TYPE bonobo_ui_sync_get_type () #define BINDING_MOD_MASK() \ (gtk_accelerator_get_default_mod_mask () | GDK_RELEASE_MASK) typedef struct { guint key; GdkModifierType mods; BonoboUINode *node; } Binding; static gboolean keybindings_free (gpointer key, gpointer value, gpointer user_data) { g_free (key); return TRUE; } /* Shamelessly stolen from gtkbindings.c */ static guint keybinding_hash_fn (gconstpointer key) { register const Binding *e = key; register guint h; h = e->key; h ^= e->mods; return h; } static gint keybinding_compare_fn (gconstpointer a, gconstpointer b) { register const Binding *ba = a; register const Binding *bb = b; return (ba->key == bb->key && ba->mods == bb->mods); } gint bonobo_ui_sync_keys_binding_handle (GtkWidget *widget, GdkEventKey *event, BonoboUISyncKeys *msync) { Binding lookup, *binding; lookup.key = gdk_keyval_to_lower (event->keyval); lookup.mods = event->state & BINDING_MOD_MASK (); if (!(binding = g_hash_table_lookup ( msync->keybindings, &lookup))) return FALSE; else { bonobo_ui_engine_emit_verb_on ( msync->parent.engine, binding->node); return TRUE; } } static void impl_finalize (GObject *object) { BonoboUISyncKeys *sync; sync = BONOBO_UI_SYNC_KEYS (object); g_hash_table_foreach_remove (sync->keybindings, keybindings_free, NULL); g_hash_table_destroy (sync->keybindings); sync->keybindings = NULL; G_OBJECT_CLASS (parent_class)->finalize (object); } static void update_keybindings (BonoboUISyncKeys *msync, BonoboUINode *node) { BonoboUINode *l; BonoboUIXmlData *data; if (!bonobo_ui_engine_node_is_dirty (msync->parent.engine, node)) return; data = bonobo_ui_xml_get_data (NULL, node); g_return_if_fail (data != NULL); if (!data->dirty) return; g_hash_table_foreach_remove ( msync->keybindings, keybindings_free, NULL); for (l = bonobo_ui_node_children (node); l; l = bonobo_ui_node_next (l)) { guint key; GdkModifierType mods; const char *name; Binding *binding; name = bonobo_ui_node_peek_attr (l, "name"); if (!name) continue; bonobo_ui_util_accel_parse (name, &key, &mods); binding = g_new0 (Binding, 1); binding->mods = mods & BINDING_MOD_MASK (); binding->key = gdk_keyval_to_lower (key); binding->node = l; g_hash_table_insert (msync->keybindings, binding, binding); } } static void impl_bonobo_ui_sync_keys_update_root (BonoboUISync *sync, BonoboUINode *root) { if (bonobo_ui_node_has_name (root, "keybindings")) update_keybindings (BONOBO_UI_SYNC_KEYS (sync), root); } static void impl_bonobo_ui_sync_keys_stamp_root (BonoboUISync *sync) { BonoboUINode *node; node = bonobo_ui_engine_get_path (sync->engine, "/keybindings"); if (node) bonobo_ui_engine_node_set_dirty (sync->engine, node, TRUE); } static gboolean impl_bonobo_ui_sync_keys_can_handle (BonoboUISync *sync, BonoboUINode *node) { if (!accel_id) { accel_id = g_quark_from_static_string ("accel"); keybindings_id = g_quark_from_static_string ("keybindings"); } return (node->name_id == accel_id || node->name_id == keybindings_id); } /* We need to map the shell to the item */ static void class_init (BonoboUISyncClass *sync_class) { GObjectClass *object_class; parent_class = g_type_class_peek_parent (sync_class); object_class = G_OBJECT_CLASS (sync_class); object_class->finalize = impl_finalize; sync_class->update_root = impl_bonobo_ui_sync_keys_update_root; sync_class->can_handle = impl_bonobo_ui_sync_keys_can_handle; sync_class->stamp_root = impl_bonobo_ui_sync_keys_stamp_root; } static void init (BonoboUISyncKeys *msync) { msync->keybindings = g_hash_table_new ( keybinding_hash_fn, keybinding_compare_fn); } GType bonobo_ui_sync_keys_get_type (void) { static GType type = 0; if (type == 0) { GTypeInfo info = { sizeof (BonoboUISyncKeysClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) class_init, NULL, /* class_finalize */ NULL, /* class_data */ sizeof (BonoboUISyncKeys), 0, /* n_preallocs */ (GInstanceInitFunc) init }; type = g_type_register_static (PARENT_TYPE, "BonoboUISyncKeys", &info, 0); } return type; } BonoboUISync * bonobo_ui_sync_keys_new (BonoboUIEngine *engine) { BonoboUISyncKeys *sync; g_return_val_if_fail (BONOBO_IS_UI_ENGINE (engine), NULL); sync = g_object_new (BONOBO_TYPE_UI_SYNC_KEYS, NULL); return bonobo_ui_sync_construct ( BONOBO_UI_SYNC (sync), engine, FALSE, FALSE); } libbonoboui-2.24.5/bonobo/bonobo-ui-engine-config.c0000644000076400007640000003047111173072741017071 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ /* * bonobo-ui-engine-config.c: The Bonobo UI/XML Sync engine user config code * * Author: * Michael Meeks (michael@ximian.com) * * Copyright 2001 Ximian, Inc. */ #undef GTK_DISABLE_DEPRECATED #include "config.h" #include #include #include #include #include #include #include #include #include #include #include #include #define PARENT_TYPE G_TYPE_OBJECT static GObjectClass *parent_class = NULL; struct _BonoboUIEngineConfigPrivate { char *path; GtkWindow *opt_parent; BonoboUIEngine *engine; BonoboUIXml *tree; GSList *clobbers; GtkWidget *dialog; }; typedef struct { char *path; char *attr; char *value; } clobber_t; static void clobber_destroy (BonoboUIXml *tree, clobber_t *cl) { if (cl) { bonobo_ui_xml_remove_watch_by_data (tree, cl); g_free (cl->path); cl->path = NULL; g_free (cl->attr); cl->attr = NULL; g_free (cl->value); cl->value = NULL; g_free (cl); } } static void clobbers_free (BonoboUIEngineConfig *config) { GSList *l; for (l = config->priv->clobbers; l; l = l->next) clobber_destroy (config->priv->tree, l->data); g_slist_free (config->priv->clobbers); config->priv->clobbers = NULL; } void bonobo_ui_engine_config_serialize (BonoboUIEngineConfig *config) { GSList *l; GSList *values = NULL; GConfClient *client; g_return_if_fail (config->priv->path != NULL); for (l = config->priv->clobbers; l; l = l->next) { clobber_t *cl = l->data; char *str; /* This sucks, but so does gconf */ str = g_strconcat (cl->path, ":", cl->attr, ":", cl->value, NULL); values = g_slist_prepend (values, str); } client = gconf_client_get_default (); gconf_client_set_list ( client, config->priv->path, GCONF_VALUE_STRING, values, NULL); g_slist_foreach (values, (GFunc) g_free, NULL); g_slist_free (values); gconf_client_suggest_sync (client, NULL); g_object_unref (client); } static void clobber_add (BonoboUIEngineConfig *config, const char *path, const char *attr, const char *value) { clobber_t *cl = g_new0 (clobber_t, 1); cl->path = g_strdup (path); cl->attr = g_strdup (attr); cl->value = g_strdup (value); config->priv->clobbers = g_slist_prepend ( config->priv->clobbers, cl); bonobo_ui_xml_add_watch (config->priv->tree, path, cl); } void bonobo_ui_engine_config_add (BonoboUIEngineConfig *config, const char *path, const char *attr, const char *value) { BonoboUINode *node; bonobo_ui_engine_config_remove (config, path, attr); clobber_add (config, path, attr, value); if ((node = bonobo_ui_xml_get_path (config->priv->tree, path))) { const char *existing; gboolean set = TRUE; if ((existing = bonobo_ui_node_peek_attr (node, attr))) { if (!strcmp (existing, value)) set = FALSE; } if (set) { bonobo_ui_node_set_attr (node, attr, value); bonobo_ui_xml_set_dirty (config->priv->tree, node); bonobo_ui_engine_update (config->priv->engine); } } } void bonobo_ui_engine_config_remove (BonoboUIEngineConfig *config, const char *path, const char *attr) { GSList *l, *next; BonoboUINode *node; for (l = config->priv->clobbers; l; l = next) { clobber_t *cl = l->data; next = l->next; if (!strcmp (cl->path, path) && !strcmp (cl->attr, attr)) { config->priv->clobbers = g_slist_remove ( config->priv->clobbers, cl); clobber_destroy (config->priv->tree, cl); } } if ((node = bonobo_ui_xml_get_path (config->priv->tree, path))) { if (bonobo_ui_node_has_attr (node, attr)) { bonobo_ui_node_remove_attr (node, attr); bonobo_ui_xml_set_dirty (config->priv->tree, node); bonobo_ui_engine_update (config->priv->engine); } } } void bonobo_ui_engine_config_hydrate (BonoboUIEngineConfig *config) { GSList *l, *values; GConfClient *client; g_return_if_fail (config->priv->path != NULL); bonobo_ui_engine_freeze (config->priv->engine); clobbers_free (config); client = gconf_client_get_default (); values = gconf_client_get_list ( client, config->priv->path, GCONF_VALUE_STRING, NULL); for (l = values; l; l = l->next) { char **strs = g_strsplit (l->data, ":", -1); if (!strs || !strs [0] || !strs [1] || !strs [2] || strs [3]) g_warning ("Syntax error in '%s'", (char *) l->data); else bonobo_ui_engine_config_add ( config, strs [0], strs [1], strs [2]); g_strfreev (strs); g_free (l->data); } g_slist_free (values); bonobo_ui_engine_thaw (config->priv->engine); g_object_unref (client); } typedef struct { BonoboUIEngine *engine; char *path; BonoboUIEngineConfigFn config_fn; BonoboUIEngineConfigVerbFn verb_fn; } closure_t; static void closure_destroy (closure_t *c) { g_free (c->path); g_free (c); } static void emit_verb_on_cb (BonoboUIEngine *engine, BonoboUINode *popup_node, closure_t *c) { if (c->verb_fn) c->verb_fn (bonobo_ui_engine_get_config (c->engine), c->path, NULL, engine, popup_node); } static void emit_event_on_cb (BonoboUIEngine *engine, BonoboUINode *popup_node, const char *state, closure_t *c) { if (c->verb_fn) c->verb_fn (bonobo_ui_engine_get_config (c->engine), c->path, state, engine, popup_node); } static BonoboUIEngine * create_popup_engine (closure_t *c, GtkMenu *menu) { BonoboUIEngine *engine; BonoboUISync *smenu; BonoboUINode *node; char *str; engine = bonobo_ui_engine_new (NULL); smenu = bonobo_ui_sync_menu_new (engine, NULL, NULL, NULL); bonobo_ui_engine_add_sync (engine, smenu); node = bonobo_ui_engine_get_path (c->engine, c->path); if (c->config_fn) str = c->config_fn ( bonobo_ui_engine_get_config (c->engine), node, engine); else str = NULL; g_return_val_if_fail (str != NULL, NULL); node = bonobo_ui_node_from_string (str); bonobo_ui_util_translate_ui (node); bonobo_ui_engine_xml_merge_tree ( engine, "/", node, "popup"); bonobo_ui_sync_menu_add_popup ( BONOBO_UI_SYNC_MENU (smenu), menu, "/popups/popup"); g_signal_connect (G_OBJECT (engine), "emit_verb_on", (GCallback) emit_verb_on_cb, c); g_signal_connect (G_OBJECT (engine), "emit_event_on", (GCallback) emit_event_on_cb, c); bonobo_ui_engine_update (engine); return engine; } static int config_button_pressed (GtkWidget *widget, GdkEventButton *event, closure_t *c) { if (event->button == 3) { GtkWidget *menu; menu = gtk_menu_new (); create_popup_engine (c, GTK_MENU (menu)); gtk_widget_show (GTK_WIDGET (menu)); gtk_menu_popup (GTK_MENU (menu), NULL, NULL, NULL, NULL, 3, 0); return TRUE; } else return FALSE; } void bonobo_ui_engine_config_connect (GtkWidget *widget, BonoboUIEngine *engine, const char *path, BonoboUIEngineConfigFn config_fn, BonoboUIEngineConfigVerbFn verb_fn) { BonoboUIEngineConfig *config; closure_t *c; config = bonobo_ui_engine_get_config (engine); if (!config || !config->priv->path) return; c = g_new0 (closure_t, 1); c->engine = engine; c->path = g_strdup (path); c->config_fn = config_fn; c->verb_fn = verb_fn; g_signal_connect_data ( widget, "button_press_event", G_CALLBACK (config_button_pressed), c, (GClosureNotify) closure_destroy, 0); } static void bonobo_ui_engine_config_watch (BonoboUIXml *xml, const char *path, BonoboUINode *opt_node, gpointer user_data) { clobber_t *cl = user_data; if (opt_node) { /* g_warning ("Setting attr '%s' to '%s' on '%s", cl->attr, cl->value, path);*/ bonobo_ui_node_set_attr (opt_node, cl->attr, cl->value); } else g_warning ("Stamp new config data onto NULL @ '%s'", path); } static void impl_finalize (GObject *object) { BonoboUIEngineConfig *config; BonoboUIEngineConfigPrivate *priv; config = BONOBO_UI_ENGINE_CONFIG (object); priv = config->priv; if (priv->dialog) gtk_widget_destroy (priv->dialog); g_free (priv->path); clobbers_free (config); g_free (priv); G_OBJECT_CLASS (parent_class)->finalize (object); } static void class_init (BonoboUIEngineClass *engine_class) { GObjectClass *object_class; parent_class = g_type_class_peek_parent (engine_class); object_class = G_OBJECT_CLASS (engine_class); object_class->finalize = impl_finalize; } static void init (BonoboUIEngineConfig *config) { BonoboUIEngineConfigPrivate *priv; priv = g_new0 (BonoboUIEngineConfigPrivate, 1); config->priv = priv; } GType bonobo_ui_engine_config_get_type (void) { static GType type = 0; if (!type) { GTypeInfo info = { sizeof (BonoboUIEngineConfigClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) class_init, NULL, /* class_finalize */ NULL, /* class_data */ sizeof (BonoboUIEngineConfig), 0, /* n_preallocs */ (GInstanceInitFunc) init }; type = g_type_register_static (PARENT_TYPE, "BonoboUIEngineConfig", &info, 0); } return type; } BonoboUIEngineConfig * bonobo_ui_engine_config_construct (BonoboUIEngineConfig *config, BonoboUIEngine *engine, GtkWindow *opt_parent) { config->priv->engine = engine; config->priv->tree = bonobo_ui_engine_get_xml (engine); config->priv->opt_parent = opt_parent; bonobo_ui_xml_set_watch_fn ( bonobo_ui_engine_get_xml (engine), bonobo_ui_engine_config_watch); return config; } BonoboUIEngineConfig * bonobo_ui_engine_config_new (BonoboUIEngine *engine, GtkWindow *opt_parent) { BonoboUIEngineConfig *config; g_return_val_if_fail (BONOBO_IS_UI_ENGINE (engine), NULL); config = g_object_new (bonobo_ui_engine_config_get_type (), NULL); return bonobo_ui_engine_config_construct (config, engine, opt_parent); } void bonobo_ui_engine_config_set_path (BonoboUIEngine *engine, const char *path) { BonoboUIEngineConfig *config; g_return_if_fail (BONOBO_IS_UI_ENGINE (engine)); config = bonobo_ui_engine_get_config (engine); g_free (config->priv->path); config->priv->path = g_strdup (path); bonobo_ui_engine_config_hydrate (config); } const char * bonobo_ui_engine_config_get_path (BonoboUIEngine *engine) { BonoboUIEngineConfig *config; g_return_val_if_fail (BONOBO_IS_UI_ENGINE (engine), NULL); config = bonobo_ui_engine_get_config (engine); return config->priv->path; } static void response_fn (GtkDialog *dialog, gint response_id, BonoboUIEngineConfig *config) { bonobo_ui_engine_config_serialize (config); gtk_widget_destroy (GTK_WIDGET (dialog)); } static GtkWidget * dialog_new (BonoboUIEngineConfig *config) { GtkAccelGroup *accel_group; GtkWidget *window, *cwidget; accel_group = gtk_accel_group_new (); window = gtk_dialog_new_with_buttons (_("Configure UI"), config->priv->opt_parent, 0, GTK_STOCK_OK, GTK_RESPONSE_OK, NULL); gtk_dialog_set_default_response (GTK_DIALOG (window), GTK_RESPONSE_OK); g_signal_connect (window, "response", G_CALLBACK (response_fn), config); cwidget = bonobo_ui_config_widget_new (config->priv->engine, accel_group); gtk_widget_show (cwidget); gtk_container_add (GTK_CONTAINER (GTK_DIALOG (window)->vbox), cwidget); gtk_window_add_accel_group (GTK_WINDOW (window), accel_group); return window; } static void null_dialog (GtkObject *object, BonoboUIEngineConfig *config) { config->priv->dialog = NULL; } void bonobo_ui_engine_config_configure (BonoboUIEngineConfig *config) { if (!config->priv->path) return; /* Fire up a single non-modal dialog */ if (config->priv->dialog) { gtk_window_activate_focus ( GTK_WINDOW (config->priv->dialog)); return; } config->priv->dialog = dialog_new (config); gtk_window_set_default_size ( GTK_WINDOW (config->priv->dialog), 300, 300); gtk_widget_show (config->priv->dialog); g_signal_connect (config->priv->dialog, "destroy", G_CALLBACK (null_dialog), config); } BonoboUIEngine * bonobo_ui_engine_config_get_engine (BonoboUIEngineConfig *config) { g_return_val_if_fail (BONOBO_IS_UI_ENGINE_CONFIG (config), NULL); return config->priv->engine; } libbonoboui-2.24.5/bonobo/bonobo-insert-component.xpm0000644000076400007640000002521511173072741017634 00000000000000/* XPM */ static const char * bonobo_insert_component_xpm[] = { "48 48 376 2", " c None", ". c #000000", "+ c #404040", "@ c #808080", "# c #6C6C6C", "$ c #585858", "% c #6B6B6B", "& c #7E7E7E", "* c #6E6E6E", "= c #5D5D5D", "- c #797979", "; c #727272", "> c #393939", ", c #FFFFFF", "' c #D8D8D8", ") c #B1B1B1", "! c #D6D6D6", "~ c #FBFBFB", "{ c #FDFDFD", "] c #DCDCDC", "^ c #BABABA", "/ c #F2F2F2", "( c #E4E4E4", "_ c #EAEAEA", ": c #F0F0F0", "< c #F3F3F3", "[ c #F6F6F6", "} c #D4D4D4", "| c #B4B4B4", "1 c #E2E2E2", "2 c #CECECE", "3 c #676767", "4 c #E1E1E1", "5 c #E6E6E6", "6 c #ECECEC", "7 c #CCCCCC", "8 c #ADADAD", "9 c #D2D2D2", "0 c #B9B9B9", "a c #5C5C5C", "b c #3A3A36", "c c #74746B", "d c #75756C", "e c #76766D", "f c #74746A", "g c #737367", "h c #717163", "i c #717162", "j c #707062", "k c #6F6F5E", "l c #6D6D5A", "m c #64644F", "n c #5A5A44", "o c #2D2D22", "p c #5A5A5A", "q c #C4C4C4", "r c #DEDEDE", "s c #EBEBEB", "t c #ACACAC", "u c #B8B8B8", "v c #E9E9D6", "w c #EAEAD8", "x c #ECECDA", "y c #E9E9D5", "z c #E6E6CE", "A c #E2E2C6", "B c #E2E2C5", "C c #E1E1C4", "D c #DEDEBC", "E c #DADAB5", "F c #C7C79E", "G c #B4B487", "H c #4D4D4D", "I c #9A9A9A", "J c #B0B0B0", "K c #C6C6C6", "L c #E7E7E7", "M c #ABABAB", "N c #75756D", "O c #EAEADA", "P c #E8E8D1", "Q c #E4E4CA", "R c #E2E2C8", "S c #E0E0C2", "T c #DFDFC0", "U c #DBDBB8", "V c #D8D8B0", "W c #C2C298", "X c #ACAC80", "Y c #565640", "Z c #383838", "` c #717171", " . c #6A6A6A", ".. c #636363", "+. c #747474", "@. c #868686", "#. c #989898", "$. c #969696", "%. c #959595", "&. c #CACACA", "*. c #CBCBCB", "=. c #949494", "-. c #4A4A4A", ";. c #76766E", ">. c #ECECDD", ",. c #E8E8D2", "'. c #E3E3C8", "). c #E0E0C3", "!. c #DEDEC0", "~. c #DDDDBD", "{. c #D9D9B4", "]. c #D5D5AB", "^. c #BCBC92", "/. c #A3A37A", "(. c #52523D", "_. c #242424", ":. c #484848", "<. c #222222", "[. c #434343", "}. c #616161", "|. c #7F7F7F", "1. c #A8A8A8", "2. c #AAAAAA", "3. c #8E8E8E", "4. c #707070", "5. c #24241A", "6. c #363628", "7. c #555549", "8. c #707061", "9. c #6C6C58", "0. c #48483A", "a. c #0C0C09", "b. c #12120E", "c. c #7F7F76", "d. c #ECECDE", "e. c #E8E8D4", "f. c #E4E4CB", "g. c #E4E4CC", "h. c #E3E3CA", "i. c #DEDEBF", "j. c #D5D5AC", "k. c #D0D0A2", "l. c #C4C496", "m. c #B8B88A", "n. c #65654C", "o. c #1B1B19", "p. c #4B4B45", "q. c #727266", "r. c #727265", "s. c #717164", "t. c #646456", "u. c #575749", "v. c #55554E", "w. c #535353", "x. c #8B8B8B", "y. c #C3C3C3", "z. c #C7C7C7", "A. c #4B4B4B", "B. c #6B6B4F", "C. c #AAAA92", "D. c #D7D7AF", "E. c #24241B", "F. c #88887D", "G. c #EDEDDF", "H. c #E8E8D6", "I. c #E7E7D2", "J. c #EAEAD7", "K. c #E6E6D0", "L. c #DEDEBE", "M. c #D6D6AD", "N. c #D1D1A3", "O. c #CCCC99", "P. c #78785A", "Q. c #E5E5CC", "R. c #E2E2C7", "S. c #A6A68B", "T. c #49493B", "U. c #272727", "V. c #828282", "W. c #E5E5E5", "X. c #BCBCBC", "Y. c #5E5E5E", "Z. c #505043", "`. c #A1A186", " + c #C2C2A8", ".+ c #E4E4C9", "++ c #DADAB7", "@+ c #A4A48A", "#+ c #6E6E5E", "$+ c #787864", "%+ c #80806B", "&+ c #B7B7A4", "*+ c #EEEEDE", "=+ c #E6E6CF", "-+ c #E1E1C5", ";+ c #D4D4AA", ">+ c #D2D2A6", ",+ c #AAAA8A", "'+ c #80806A", ")+ c #777764", "!+ c #6E6E5C", "~+ c #A8A892", "{+ c #DDDDBB", "]+ c #D7D7B0", "^+ c #AEAE89", "/+ c #858562", "(+ c #535342", "_+ c #D0D0D0", ":+ c #DDDDDD", "<+ c #6C6C5F", "[+ c #D7D7BE", "}+ c #DADABE", "|+ c #DEDEBD", "1+ c #E6E6CC", "2+ c #EEEEDD", "3+ c #EBEBD7", "4+ c #DFDFC1", "5+ c #D3D3A8", "6+ c #D8D8B2", "7+ c #DCDCBA", "8+ c #DBDBB9", "9+ c #E0E0C1", "0+ c #B6B688", "a+ c #9F9F76", "b+ c #5E5E49", "c+ c #1C1C1C", "d+ c #D5D5D5", "e+ c #A0A086", "f+ c #B7B796", "g+ c #CECEA6", "h+ c #C8C8A2", "i+ c #C3C39E", "j+ c #99997E", "k+ c #737362", "l+ c #777766", "m+ c #B2B2A0", "n+ c #ECECDB", "o+ c #E0E0C0", "p+ c #DDDDBC", "q+ c #D0D0A0", "r+ c #D0D0A1", "s+ c #C9C99F", "t+ c #C2C29C", "u+ c #98987C", "v+ c #6E6E5D", "w+ c #A2A285", "x+ c #CBCB9E", "y+ c #C0C090", "z+ c #7E7E5D", "A+ c #4C4C3C", "B+ c #1A1A1A", "C+ c #D1D1D1", "D+ c #E9E9E9", "E+ c #353527", "F+ c #6A6A4E", "G+ c #94946E", "H+ c #BEBE8E", "I+ c #B3B386", "J+ c #A8A87E", "K+ c #54543F", "L+ c #080808", "M+ c #111111", "N+ c #7E7E75", "O+ c #EBEBD9", "P+ c #BABA8B", "Q+ c #A7A77D", "R+ c #54543E", "S+ c #66664C", "T+ c #888866", "U+ c #5D5D44", "V+ c #3B3B2E", "W+ c #191919", "X+ c #B5B5B5", "Y+ c #CDCDCD", "Z+ c #E8E8E8", "`+ c #23231A", " @ c #4A4A37", ".@ c #5F5F47", "+@ c #5A5A43", "@@ c #38382A", "#@ c #060606", "$@ c #76766A", "%@ c #DADAB6", "&@ c #CECE9E", "*@ c #444437", "=@ c #606048", "-@ c #494938", ";@ c #38382C", ">@ c #35352E", ",@ c #313131", "'@ c #686868", ")@ c #A0A0A0", "!@ c #B2B2B2", "~@ c #C5C5C5", "{@ c #C8C8C8", "]@ c #4C4C4C", "^@ c #0A0A0A", "/@ c #141414", "(@ c #2E2E2E", "_@ c #494949", ":@ c #A5A5A5", "<@ c #8F8F8F", "[@ c #737373", "}@ c #3A3A3A", "|@ c #686856", "1@ c #D1D1AC", "2@ c #C5C59C", "3@ c #AEAE83", "4@ c #A4A47A", "5@ c #292929", "6@ c #525252", "7@ c #414141", "8@ c #444444", "9@ c #474747", "0@ c #505050", "a@ c #646464", "b@ c #8A8A8A", "c@ c #62624E", "d@ c #C4C49C", "e@ c #B6B68C", "f@ c #A0A078", "g@ c #50503C", "h@ c #303030", "i@ c #888888", "j@ c #8C8C8C", "k@ c #858585", "l@ c #E0E0E0", "m@ c #313127", "n@ c #5B5B46", "o@ c #28281E", "p@ c #626262", "q@ c #7A7A7A", "r@ c #929292", "s@ c #9E9E9E", "t@ c #9D9D9D", "u@ c #B7B7B7", "v@ c #DFDFDF", "w@ c #D3D3D3", "x@ c #A2A2A2", "y@ c #454545", "z@ c #3E3E3E", "A@ c #3F3F3F", "B@ c #373737", "C@ c #787878", "D@ c #C0C0C0", "E@ c #DADADA", "F@ c #BFBFBF", "G@ c #A4A4A4", "H@ c #7B7B7B", "I@ c #7C7C7C", "J@ c #8D8D8D", "K@ c #909090", "L@ c #838383", "M@ c #848484", "N@ c #878787", "O@ c #A6A6A6", "P@ c #B3B3B3", "Q@ c #C1C1C1", "R@ c #999999", "S@ c #939393", "T@ c #9B9B9B", "U@ c #A3A3A3", "V@ c #656565", "W@ c #BDBDBD", "X@ c #BEBEBE", "Y@ c #C2C2C2", "Z@ c #B6B6B6", "`@ c #C9C9C9", " # c #E3E3E3", ".# c #A9A9A9", "+# c #F4F4F4", "@# c #757575", "## c #BBBBBB", "$# c #AFAFAF", "%# c #606060", "&# c #4E4E4E", " ", " ", " ", " ", " ", " ", " ", " ", " . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", " . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", " . . + @ @ @ @ @ @ @ # $ % & & & & @ @ @ @ @ * = * @ @ @ @ @ - ; > . ", " . . @ , , , , , , , ' ) ! ~ ~ ~ { , , , , , ] ^ ] , , , , , / ( ; . ", " . . . . . + @ @ @ @ @ @ @ # $ % & ) ( _ : < [ [ [ } | } [ [ [ [ [ 1 2 3 . ", " . . . . . . . . . . . . . . . . . . 3 2 ' 4 5 6 6 6 7 8 7 6 6 6 6 6 9 0 a . ", " . . b c d e d f g h i j k l m n o . p | q } r _ s 6 7 t 7 6 6 6 6 6 9 u a . ", " . . c v w x w y z A B C D E F G n . H I J K ! L _ 6 7 M 7 6 6 6 6 6 9 u a . ", " . . . . . . . N O y P z Q R C S T U V W X Y . Z ` ...% +.@.#.$.%.J &.*.7 7 7 J =.-.. ", " . . . . . . . . . ;.>.,.'.C T S ).!.~.{.].^./.(.. _.:._.. . . <.[.}.|.=.1.2.M M M 3.4.Z . ", ". . 5.6.7.f 8.9.0.. a.b.c.d.e.Q f.g.Q h.i.E j.k.l.m.n.b.o._.p.q.r.s.t.u.v.w.x.y.z.7 7 7 ) $.A.. ", ". . 6.B.C.y S D.9.. b.E.F.G.H.g.I.J.e.K.L.M.N.O.O.O.P.E.b.. q.Q.Q R.S.B.T.U.V.r W.6 6 6 } X.Y.. ", ". . Z.`. +.+T ++@+#+$+%+&+*+w ,.=+g.-+L.{.;+>+k.>+;+,+'+)+!+~+A {+]+^+/+(+<.- _+:+_ s 6 } X.Y.. ", ". . <+[+}+|+L.i.|+{+{+{+1+2+x 3+Q.4+++M.;+5+;+].6+7+7+7+7+8+|+9+M.O.0+a+b+c+4.y.d+L _ 6 } X.Y.. ", ". . Z.e+f+g+h+i+j+#+k+l+m+n+z o+p+++M.N.k.q+r+k.s+t+u+v+v+!+w+M.x+y+a+z+A+B+% X.C+5 D+6 } X.Y.. ", ". . E+F+G+H+I+J+K+. L+M+N+O+S ;+j.M.N.O.O.O.O.O.P+Q+R+. . . S+O.y+G T+U+V+W+3 X+Y+W.Z+6 } X.Y.. ", ". . `+E+ @.@+@K+@@. #@L+$@f.%@k.k.N.&@O.O.O.O.O.P+Q+R+. M+<.*@S+=@n -@;@>@,@'@)@!@~@{@7 !@#.]@. ", " . . . . . . . . . k |+].O.O.O.O.O.O.O.O.O.P+Q+R+. <.[.<.. . . ^@/@(@_@ .x.#.:@1.M <@[@}@. ", " . . . . . . . |@1@2@P+P+P+P+P+P+P+P+P+3@4@(.. 5@6@-.7@8@9@A.0@p a@b@J X.{@&.7 !@#.]@. ", " . . c@d@e@Q+Q+Q+Q+Q+Q+Q+Q+Q+4@f@g@. h@}.; V.i@3.j@x.k@|.2.} l@s 6 6 } X.Y.. ", " . . m@c@n@R+R+R+R+R+R+R+R+R+(.g@o@. ,@p@q@r@s@2.2.t t@3.u@v@W.6 6 6 w@^ = . ", " . . . . . . . . . . . . . . . . . . ,@p@V.x@| ~@{@7 X+s@q _ s 6 6 6 9 u a . ", " . . . . . <.y@7@z@z@z@z@A@B@(@B@+ a C@r@8 D@9 ! E@F@G@{@s 6 6 6 6 w@^ = . ", " . . y@b@V.H@H@H@I@& * = * @ @.J@x@u 7 v@( D+&.2.*.6 6 6 6 6 } X.Y.. ", " . . :.K@b@L@M@@.i@j@I@# q@N@i@b@#.O@P@Q@q {@J #.) &.*.7 7 7 !@#.]@. ", " . . A.$.K@x.3.K@=.R@b@H@M@3.b@@.j@S@T@U@G@O@$.k@$.1.2.M M M K@+.}@. ", " . . V@&.y.X.W@X@D@Y@M S@O@^ Z@!@X+0 F@~@z.`@J #.) &.*.7 7 7 ) $.A.. ", " . . @ , [ 6 6 6 6 6 7 M {@W.4 :+r v@ #L _ 6 7 M 7 6 6 6 6 6 9 u a . ", " . . @ , [ 6 6 6 6 6 *.2.`@Z+5 ( ( W.L _ s 6 *.2.*.6 6 6 6 6 w@^ = . ", " . . @ , [ 6 6 6 6 6 &.1.&.6 6 s s s 6 6 6 6 &..#&.6 6 6 6 6 } X.Y.. ", " . . q@+#5 ' ' ' ! ! !@3.) } } } } } } } } } | =.P@9 w@} } } Y@J $ . ", " . . +.D+! y.y.y.Q@F@I @##.X.X.X.X.X.X.X.X.X.t@& T@u ^ X.X.##$#U@6@. ", " . . }@+.% p@p@p@%#%#H }@]@Y.Y.Y.Y.Y.Y.Y.Y.Y.&#A@&#a = Y.Y.Y.$ 6@5@. ", " . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", " . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", " ", " ", " ", " ", " "}; libbonoboui-2.24.5/bonobo/bonobo-ui-init-gtk.c0000644000076400007640000001244211173072741016105 00000000000000#include #include #include #include /* We need the undeprecated form of GnomeModuleInfo and also the popt.h include */ #undef GNOME_DISABLE_DEPRECATED #include #include typedef struct { GPtrArray *gtk_args; } bonobo_ui_gtk_init_info_t; static void bonobo_ui_gtk_pre_args_parse (GnomeProgram *program, GnomeModuleInfo *mod_info) { GOptionContext *context; bonobo_ui_gtk_init_info_t *init_info; /* Only do this for popt option parsing */ g_object_get (G_OBJECT (program), GNOME_PARAM_GOPTION_CONTEXT, &context, NULL); if (context) return; init_info = g_new0 (bonobo_ui_gtk_init_info_t, 1); init_info->gtk_args = g_ptr_array_new (); g_object_set_data (G_OBJECT (program), "Libbonoboui-Gtk-Module-init-info", init_info); } static void bonobo_ui_gtk_post_args_parse (GnomeProgram *program, GnomeModuleInfo *mod_info) { GOptionContext *context; bonobo_ui_gtk_init_info_t *init_info; int final_argc; char **final_argv; int i; /* Only do this for popt option parsing */ g_object_get (G_OBJECT (program), GNOME_PARAM_GOPTION_CONTEXT, &context, NULL); if (context) return; init_info = g_object_get_data (G_OBJECT (program), "Libbonoboui-Gtk-Module-init-info"); g_ptr_array_add (init_info->gtk_args, NULL); final_argc = init_info->gtk_args->len - 1; final_argv = g_memdup (init_info->gtk_args->pdata, sizeof (char *) * init_info->gtk_args->len); gtk_init (&final_argc, &final_argv); g_free (final_argv); for (i = 0; g_ptr_array_index (init_info->gtk_args, i) != NULL; i++) { g_free (g_ptr_array_index (init_info->gtk_args, i)); g_ptr_array_index (init_info->gtk_args, i) = NULL; } g_ptr_array_free (init_info->gtk_args, TRUE); init_info->gtk_args = NULL; g_free (init_info); g_object_set_data (G_OBJECT (program), "Libbonoboui-Gtk-Module-init-info", NULL); } static void add_gtk_arg_callback (poptContext con, enum poptCallbackReason reason, const struct poptOption * opt, const char * arg, void * data) { GnomeProgram *program; bonobo_ui_gtk_init_info_t *init_info; char *newstr; program = g_dataset_get_data (con, "GnomeProgram"); g_assert (program != NULL); init_info = g_object_get_data (G_OBJECT (program), "Libbonoboui-Gtk-Module-init-info"); g_assert (init_info != NULL); switch (reason) { case POPT_CALLBACK_REASON_PRE: /* Note that the value of argv[0] passed to main() may be * different from the value that this passes to gtk */ g_ptr_array_add (init_info->gtk_args, (char *) g_strdup (poptGetInvocationName (con))); break; case POPT_CALLBACK_REASON_OPTION: switch (opt->argInfo) { case POPT_ARG_STRING: case POPT_ARG_INT: case POPT_ARG_LONG: newstr = g_strconcat ("--", opt->longName, "=", arg, NULL); break; default: newstr = g_strconcat ("--", opt->longName, NULL); break; } g_ptr_array_add (init_info->gtk_args, newstr); /* XXX bonobo-client tie-in */ break; default: break; } } static struct poptOption bonobo_ui_gtk_options [] = { { NULL, '\0', POPT_ARG_CALLBACK|POPT_CBFLAG_PRE, &add_gtk_arg_callback, 0, NULL, NULL }, { NULL, '\0', POPT_ARG_INTL_DOMAIN, GETTEXT_PACKAGE, 0, NULL, NULL }, { "gdk-debug", '\0', POPT_ARG_STRING, NULL, 0, N_("Gdk debugging flags to set"), N_("FLAGS")}, { "gdk-no-debug", '\0', POPT_ARG_STRING, NULL, 0, N_("Gdk debugging flags to unset"), N_("FLAGS")}, /* X11 only */ { "display", '\0', POPT_ARG_STRING, NULL, 0, N_("X display to use"), N_("DISPLAY")}, /* X11 & multi-head only */ { "screen", '\0', POPT_ARG_INT, NULL, 0, N_("X screen to use"), N_("SCREEN")}, /* X11 only */ { "sync", '\0', POPT_ARG_NONE, NULL, 0, N_("Make X calls synchronous"), NULL}, /* FIXME: this doesn't seem to exist */ #if 0 /* X11 only */ { "no-xshm", '\0', POPT_ARG_NONE, NULL, 0, N_("Don't use X shared memory extension"), NULL}, #endif { "name", '\0', POPT_ARG_STRING, NULL, 0, N_("Program name as used by the window manager"), N_("NAME")}, { "class", '\0', POPT_ARG_STRING, NULL, 0, N_("Program class as used by the window manager"), N_("CLASS")}, { "gtk-debug", '\0', POPT_ARG_STRING, NULL, 0, N_("Gtk+ debugging flags to set"), N_("FLAGS")}, { "gtk-no-debug", '\0', POPT_ARG_STRING, NULL, 0, N_("Gtk+ debugging flags to unset"), N_("FLAGS")}, { "g-fatal-warnings", '\0', POPT_ARG_NONE, NULL, 0, N_("Make all warnings fatal"), NULL}, { "gtk-module", '\0', POPT_ARG_STRING, NULL, 0, N_("Load an additional Gtk module"), N_("MODULE")}, { NULL, '\0', 0, NULL, 0} }; static GOptionGroup * bonobo_ui_gtk_module_get_goption_group (void) { /* FIXME: TRUE or FALSE (open default display)? */ return gtk_get_option_group (TRUE); } const GnomeModuleInfo * bonobo_ui_gtk_module_info_get (void) { static GnomeModuleInfo module_info = { "gtk", NULL, N_("GTK+"), NULL, NULL, bonobo_ui_gtk_pre_args_parse, bonobo_ui_gtk_post_args_parse, bonobo_ui_gtk_options, NULL, NULL, NULL, NULL }; module_info.get_goption_group_func = bonobo_ui_gtk_module_get_goption_group; if (module_info.version == NULL) { module_info.version = g_strdup_printf ("%d.%d.%d", GTK_MAJOR_VERSION, GTK_MINOR_VERSION, GTK_MICRO_VERSION); } return &module_info; } libbonoboui-2.24.5/bonobo/bonobo-zoomable.c0000644000076400007640000004367411173072741015567 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- * * Bonobo::Zoomable - zoomable interface for Controls. * * Authors: Maciej Stachowiak * Martin Baulig * * Copyright (C) 2000 Eazel, Inc. * 2000 SuSE GmbH. */ #include #include #include #include #include #include #undef ZOOMABLE_DEBUG static GObjectClass *bonobo_zoomable_parent_class = NULL; struct _BonoboZoomablePrivate { CORBA_float zoom_level; CORBA_float min_zoom_level; CORBA_float max_zoom_level; CORBA_boolean has_min_zoom_level; CORBA_boolean has_max_zoom_level; CORBA_boolean is_continuous; GArray *pref_levels; GPtrArray *pref_names; Bonobo_ZoomableFrame zoomable_frame; }; enum { SET_FRAME, SET_ZOOM_LEVEL, ZOOM_IN, ZOOM_OUT, ZOOM_TO_FIT, ZOOM_TO_DEFAULT, LAST_SIGNAL }; enum { PARAM_0, PARAM_ZOOM_LEVEL, PARAM_MIN_ZOOM_LEVEL, PARAM_MAX_ZOOM_LEVEL, PARAM_HAS_MIN_ZOOM_LEVEL, PARAM_HAS_MAX_ZOOM_LEVEL, PARAM_IS_CONTINUOUS }; static guint signals [LAST_SIGNAL]; #define CLASS(o) BONOBO_ZOOMABLE_GET_CLASS(o) static inline BonoboZoomable * bonobo_zoomable_from_servant (PortableServer_Servant servant) { return BONOBO_ZOOMABLE (bonobo_object_from_servant (servant)); } static CORBA_float impl_Bonobo_Zoomable__get_level (PortableServer_Servant servant, CORBA_Environment *ev) { BonoboZoomable *zoomable = bonobo_zoomable_from_servant (servant); return zoomable->priv->zoom_level; } static CORBA_float impl_Bonobo_Zoomable__get_minLevel (PortableServer_Servant servant, CORBA_Environment *ev) { BonoboZoomable *zoomable = bonobo_zoomable_from_servant (servant); return zoomable->priv->min_zoom_level; } static CORBA_float impl_Bonobo_Zoomable__get_maxLevel (PortableServer_Servant servant, CORBA_Environment *ev) { BonoboZoomable *zoomable = bonobo_zoomable_from_servant (servant); return zoomable->priv->max_zoom_level; } static CORBA_boolean impl_Bonobo_Zoomable__get_hasMinLevel (PortableServer_Servant servant, CORBA_Environment *ev) { BonoboZoomable *zoomable = bonobo_zoomable_from_servant (servant); return zoomable->priv->has_min_zoom_level; } static CORBA_boolean impl_Bonobo_Zoomable__get_hasMaxLevel (PortableServer_Servant servant, CORBA_Environment *ev) { BonoboZoomable *zoomable = bonobo_zoomable_from_servant (servant); return zoomable->priv->has_max_zoom_level; } static CORBA_boolean impl_Bonobo_Zoomable__get_isContinuous (PortableServer_Servant servant, CORBA_Environment *ev) { BonoboZoomable *zoomable = bonobo_zoomable_from_servant (servant); return zoomable->priv->is_continuous; } static Bonobo_ZoomLevelList * impl_Bonobo_Zoomable__get_preferredLevels (PortableServer_Servant servant, CORBA_Environment *ev) { int levels; BonoboZoomable *zoomable; Bonobo_ZoomLevelList *list; zoomable = bonobo_zoomable_from_servant (servant); levels = zoomable->priv->pref_levels->len; list = Bonobo_ZoomLevelList__alloc (); list->_length = levels; list->_buffer = CORBA_sequence_Bonobo_ZoomLevel_allocbuf (levels); memcpy (list->_buffer, zoomable->priv->pref_levels->data, sizeof (CORBA_float) * levels); CORBA_sequence_set_release (list, CORBA_TRUE); return list; } static Bonobo_ZoomLevelNameList * impl_Bonobo_Zoomable__get_preferredLevelNames (PortableServer_Servant servant, CORBA_Environment *ev) { int levels,i; gchar **names; BonoboZoomable *zoomable; Bonobo_ZoomLevelNameList *list; zoomable = bonobo_zoomable_from_servant (servant); levels = zoomable->priv->pref_names->len; names = (gchar **) zoomable->priv->pref_names->pdata; list = Bonobo_ZoomLevelNameList__alloc (); list->_length = levels; list->_buffer = CORBA_sequence_Bonobo_ZoomLevelName_allocbuf (levels); for (i = 0; i < levels; ++i) list->_buffer [i] = CORBA_string_dup (names [i]); CORBA_sequence_set_release (list, CORBA_TRUE); return list; } static void impl_Bonobo_Zoomable_setLevel (PortableServer_Servant servant, const CORBA_float zoom_level, CORBA_Environment *ev) { BonoboZoomable *zoomable = bonobo_zoomable_from_servant (servant); g_signal_emit (G_OBJECT (zoomable), signals [SET_ZOOM_LEVEL], 0, zoom_level); } static void impl_Bonobo_Zoomable_zoomIn (PortableServer_Servant servant, CORBA_Environment *ev) { BonoboZoomable *zoomable = bonobo_zoomable_from_servant (servant); g_signal_emit (G_OBJECT (zoomable), signals [ZOOM_IN], 0); } static void impl_Bonobo_Zoomable_zoomOut (PortableServer_Servant servant, CORBA_Environment *ev) { BonoboZoomable *zoomable = bonobo_zoomable_from_servant (servant); g_signal_emit (G_OBJECT (zoomable), signals [ZOOM_OUT], 0); } static void impl_Bonobo_Zoomable_zoomFit (PortableServer_Servant servant, CORBA_Environment *ev) { BonoboZoomable *zoomable = bonobo_zoomable_from_servant (servant); g_signal_emit (G_OBJECT (zoomable), signals [ZOOM_TO_FIT], 0); } static void impl_Bonobo_Zoomable_zoomDefault (PortableServer_Servant servant, CORBA_Environment *ev) { BonoboZoomable *zoomable = bonobo_zoomable_from_servant (servant); g_signal_emit (G_OBJECT (zoomable), signals [ZOOM_TO_DEFAULT], 0); } static void impl_Bonobo_Zoomable_setFrame (PortableServer_Servant servant, Bonobo_ZoomableFrame zoomable_frame, CORBA_Environment *ev) { BonoboZoomable *zoomable = bonobo_zoomable_from_servant (servant); g_assert (zoomable->priv->zoomable_frame == CORBA_OBJECT_NIL); zoomable->priv->zoomable_frame = CORBA_Object_duplicate (zoomable_frame, ev); g_signal_emit (G_OBJECT (zoomable), signals [SET_FRAME], 0); } static void bonobo_zoomable_get_property (GObject *object, guint property_id, GValue *value, GParamSpec *pspec) { BonoboZoomable *zoomable = BONOBO_ZOOMABLE (object); BonoboZoomablePrivate *priv = zoomable->priv; switch (property_id) { case PARAM_ZOOM_LEVEL: g_value_set_float (value, priv->zoom_level); break; case PARAM_MIN_ZOOM_LEVEL: g_value_set_float (value, priv->min_zoom_level); break; case PARAM_MAX_ZOOM_LEVEL: g_value_set_float (value, priv->max_zoom_level); break; case PARAM_HAS_MIN_ZOOM_LEVEL: g_value_set_boolean (value, priv->has_min_zoom_level);; break; case PARAM_HAS_MAX_ZOOM_LEVEL: g_value_set_boolean (value, priv->has_max_zoom_level);; break; case PARAM_IS_CONTINUOUS: g_value_set_boolean (value, priv->is_continuous); break; default: g_message ("Unknown property_id `%d'", property_id); break; }; } static void bonobo_zoomable_free_preferred_zoom_level_arrays (BonoboZoomable *zoomable) { if (zoomable->priv->pref_names) { int i; GPtrArray *array; array = zoomable->priv->pref_names; for (i = 0; i < array->len; i++) g_free (g_ptr_array_index (array, i)); g_ptr_array_free (array, TRUE); zoomable->priv->pref_names = NULL; } if (zoomable->priv->pref_levels) { g_array_free (zoomable->priv->pref_levels, TRUE); zoomable->priv->pref_levels = NULL; } } static void bonobo_zoomable_dispose (GObject *object) { BonoboZoomable *zoomable = (BonoboZoomable *) object; bonobo_zoomable_free_preferred_zoom_level_arrays (zoomable); bonobo_zoomable_parent_class->dispose (object); } static void bonobo_zoomable_finalize (GObject *object) { BonoboZoomable *zoomable = (BonoboZoomable *) object; g_free (zoomable->priv); bonobo_zoomable_parent_class->finalize (object); } static void bonobo_zoomable_class_init (BonoboZoomableClass *klass) { POA_Bonobo_Zoomable__epv *epv = &klass->epv; GObjectClass *object_class; object_class = (GObjectClass *) klass; bonobo_zoomable_parent_class = g_type_class_peek_parent (klass); object_class->get_property = bonobo_zoomable_get_property; object_class->dispose = bonobo_zoomable_dispose; object_class->finalize = bonobo_zoomable_finalize; g_object_class_install_property ( object_class, PARAM_ZOOM_LEVEL, g_param_spec_float ("zoom_level", _("Zoom level"), _("The degree of enlargment"), 0, G_MAXFLOAT, 1.0, G_PARAM_READABLE)); g_object_class_install_property ( object_class, PARAM_MIN_ZOOM_LEVEL, g_param_spec_float ("min_zoom_level", _("Minimum Zoom level"), _("The minimum degree of enlargment"), 0, G_MAXFLOAT, 0.0, G_PARAM_READABLE)); g_object_class_install_property ( object_class, PARAM_MAX_ZOOM_LEVEL, g_param_spec_float ("max_zoom_level", _("Maximum Zoom level"), _("The maximum degree of enlargment"), 0, G_MAXFLOAT, 0.0, G_PARAM_READABLE)); g_object_class_install_property ( object_class, PARAM_HAS_MIN_ZOOM_LEVEL, g_param_spec_boolean ("has_min_zoom_level", _("Has a minimum Zoom level"), _("Whether we have a valid minimum zoom level"), FALSE, G_PARAM_READABLE)); g_object_class_install_property ( object_class, PARAM_HAS_MAX_ZOOM_LEVEL, g_param_spec_boolean ("has_max_zoom_level", _("Has a maximum Zoom level"), _("Whether we have a valid maximum zoom level"), FALSE, G_PARAM_READABLE)); g_object_class_install_property ( object_class, PARAM_IS_CONTINUOUS, g_param_spec_boolean ("is_continuous", _("Is continuous"), _("Whether we zoom continuously (as opposed to jumps)"), FALSE, G_PARAM_READABLE)); signals [SET_FRAME] = g_signal_new ("set_frame", G_TYPE_FROM_CLASS (klass), G_SIGNAL_RUN_LAST, G_STRUCT_OFFSET (BonoboZoomableClass, set_frame), NULL, NULL, g_cclosure_marshal_VOID__VOID, G_TYPE_NONE, 0); signals [SET_ZOOM_LEVEL] = g_signal_new ("set_zoom_level", G_TYPE_FROM_CLASS (klass), G_SIGNAL_RUN_LAST, G_STRUCT_OFFSET (BonoboZoomableClass, set_zoom_level), NULL, NULL, g_cclosure_marshal_VOID__FLOAT, G_TYPE_NONE, 1, G_TYPE_FLOAT); signals [ZOOM_IN] = g_signal_new ("zoom_in", G_TYPE_FROM_CLASS (klass), G_SIGNAL_RUN_LAST, G_STRUCT_OFFSET (BonoboZoomableClass, zoom_in), NULL, NULL, g_cclosure_marshal_VOID__VOID, G_TYPE_NONE, 0); signals [ZOOM_OUT] = g_signal_new ("zoom_out", G_TYPE_FROM_CLASS (klass), G_SIGNAL_RUN_LAST, G_STRUCT_OFFSET (BonoboZoomableClass, zoom_out), NULL, NULL, g_cclosure_marshal_VOID__VOID, G_TYPE_NONE, 0); signals [ZOOM_TO_FIT] = g_signal_new ("zoom_to_fit", G_TYPE_FROM_CLASS (klass), G_SIGNAL_RUN_LAST, G_STRUCT_OFFSET (BonoboZoomableClass, zoom_to_fit), NULL, NULL, g_cclosure_marshal_VOID__VOID, G_TYPE_NONE, 0); signals [ZOOM_TO_DEFAULT] = g_signal_new ("zoom_to_default", G_TYPE_FROM_CLASS (klass), G_SIGNAL_RUN_LAST, G_STRUCT_OFFSET (BonoboZoomableClass, zoom_to_default), NULL, NULL, g_cclosure_marshal_VOID__VOID, G_TYPE_NONE, 0); epv->_get_level = impl_Bonobo_Zoomable__get_level; epv->_get_minLevel = impl_Bonobo_Zoomable__get_minLevel; epv->_get_maxLevel = impl_Bonobo_Zoomable__get_maxLevel; epv->_get_hasMinLevel = impl_Bonobo_Zoomable__get_hasMinLevel; epv->_get_hasMaxLevel = impl_Bonobo_Zoomable__get_hasMaxLevel; epv->_get_isContinuous = impl_Bonobo_Zoomable__get_isContinuous; epv->_get_preferredLevels = impl_Bonobo_Zoomable__get_preferredLevels; epv->_get_preferredLevelNames = impl_Bonobo_Zoomable__get_preferredLevelNames; epv->zoomIn = impl_Bonobo_Zoomable_zoomIn; epv->zoomOut = impl_Bonobo_Zoomable_zoomOut; epv->zoomFit = impl_Bonobo_Zoomable_zoomFit; epv->zoomDefault = impl_Bonobo_Zoomable_zoomDefault; epv->setLevel = impl_Bonobo_Zoomable_setLevel; epv->setFrame = impl_Bonobo_Zoomable_setFrame; } static void bonobo_zoomable_init (BonoboZoomable *zoomable) { zoomable->priv = g_new0 (BonoboZoomablePrivate, 1); zoomable->priv->zoom_level = 0.0; zoomable->priv->min_zoom_level = 0.0; zoomable->priv->max_zoom_level = 0.0; zoomable->priv->has_min_zoom_level = FALSE; zoomable->priv->has_max_zoom_level = FALSE; zoomable->priv->is_continuous = TRUE; zoomable->priv->pref_levels = g_array_new (FALSE, TRUE, sizeof (CORBA_float)); zoomable->priv->pref_names = g_ptr_array_new (); } BONOBO_TYPE_FUNC_FULL (BonoboZoomable, Bonobo_Zoomable, BONOBO_TYPE_OBJECT, bonobo_zoomable) /** * bonobo_zoomable_set_parameters_full: * * This is used by the component to set new zooming parameters (and to set the * initial zooming parameters including the initial zoom level after creating * the BonoboZoomable) - for instance after loading a new file. * * If any of the zoom parameters such as the minimum or maximum zoom level has * changed, it is likely that the zoom level has become invalid as well - at * least, the container must query it in any case, so we set it here. * * Return value: **/ void bonobo_zoomable_set_parameters_full (BonoboZoomable *zoomable, float zoom_level, float min_zoom_level, float max_zoom_level, gboolean has_min_zoom_level, gboolean has_max_zoom_level, gboolean is_continuous, float *pref_levels, const gchar **pref_names, gint num_pref_levels) { BonoboZoomablePrivate *priv; g_return_if_fail (BONOBO_IS_ZOOMABLE (zoomable)); priv = zoomable->priv; priv->zoom_level = zoom_level; priv->min_zoom_level = min_zoom_level; priv->max_zoom_level = max_zoom_level; priv->has_min_zoom_level = has_min_zoom_level; priv->has_max_zoom_level = has_max_zoom_level; priv->is_continuous = is_continuous; bonobo_zoomable_free_preferred_zoom_level_arrays (zoomable); priv->pref_levels = g_array_new (FALSE, TRUE, sizeof (CORBA_float)); if (pref_levels) g_array_append_vals (priv->pref_levels, pref_levels, num_pref_levels); priv->pref_names = g_ptr_array_new (); if (pref_names) { int i; gchar **p; g_ptr_array_set_size (priv->pref_names, num_pref_levels); p = (gchar **) priv->pref_names->pdata; for (i = 0; i < num_pref_levels; i++) p [i] = g_strdup (pref_names [i]); } } /** * bonobo_zoomable_set_parameters: * * This is a simple version of @bonobo_zoomable_set_parameters_full() * for components which support continuous zooming. It does not * override any of the parameters which can only be set by the _full * version. **/ void bonobo_zoomable_set_parameters (BonoboZoomable *zoomable, float zoom_level, float min_zoom_level, float max_zoom_level, gboolean has_min_zoom_level, gboolean has_max_zoom_level) { BonoboZoomablePrivate *priv; g_return_if_fail (BONOBO_IS_ZOOMABLE (zoomable)); priv = zoomable->priv; priv->zoom_level = zoom_level; priv->min_zoom_level = min_zoom_level; priv->max_zoom_level = max_zoom_level; priv->has_min_zoom_level = has_min_zoom_level; priv->has_max_zoom_level = has_max_zoom_level; } /** * bonobo_zoomable_add_preferred_zoom_level: * @zoomable: the zoomable * @zoom_level: the new level * @zoom_level_name: the new level's name * * This appends a new zoom level's name and value to the * internal list of these. **/ void bonobo_zoomable_add_preferred_zoom_level (BonoboZoomable *zoomable, CORBA_float zoom_level, const gchar *zoom_level_name) { gchar *name; g_array_append_val (zoomable->priv->pref_levels, zoom_level); name = g_strdup (zoom_level_name); g_ptr_array_add (zoomable->priv->pref_names, name); } /** * bonobo_zoomable_new: * * Create a new bonobo-zoomable implementing BonoboObject * interface. * * Return value: **/ BonoboZoomable * bonobo_zoomable_new (void) { return g_object_new (bonobo_zoomable_get_type (), NULL); } /** * bonobo_zoomable_report_zoom_level_changed: * * @new_zoom_level: The new zoom level. * * Reports the BonoboZoomableFrame that the zoom level has changed (but the * other zoom parameters are still the same). * * This is called after the component has successfully completed a zooming * operation - the @new_zoom_level may have been modified from what the * container requested to match what the component actually displays at the * moment. **/ void bonobo_zoomable_report_zoom_level_changed (BonoboZoomable *zoomable, float new_zoom_level, CORBA_Environment *opt_ev) { CORBA_Environment *ev, temp_ev; g_return_if_fail (BONOBO_IS_ZOOMABLE (zoomable)); zoomable->priv->zoom_level = new_zoom_level; if (zoomable->priv->zoomable_frame == CORBA_OBJECT_NIL) return; if (!opt_ev) { CORBA_exception_init (&temp_ev); ev = &temp_ev; } else ev = opt_ev; Bonobo_ZoomableFrame_onLevelChanged ( zoomable->priv->zoomable_frame, zoomable->priv->zoom_level, ev); if (!opt_ev) CORBA_exception_free (&temp_ev); } /** * bonobo_zoomable_report_zoom_parameters_changed: * * Reports the BonoboZoomableFrame that the zoom parameters have changed; * this also includes the zoom level. * * On the container side (the BonoboZoomableFrame) this implies that the * zoom level has changed as well, so you need to query the BonoboZoomable * for the new zoom level as well. **/ void bonobo_zoomable_report_zoom_parameters_changed (BonoboZoomable *zoomable, CORBA_Environment *opt_ev) { CORBA_Environment *ev, temp_ev; g_return_if_fail (BONOBO_IS_ZOOMABLE (zoomable)); if (zoomable->priv->zoomable_frame == CORBA_OBJECT_NIL) return; if (!opt_ev) { CORBA_exception_init (&temp_ev); ev = &temp_ev; } else ev = opt_ev; Bonobo_ZoomableFrame_onParametersChanged ( zoomable->priv->zoomable_frame, ev); if (!opt_ev) CORBA_exception_free (&temp_ev); } libbonoboui-2.24.5/bonobo/bonobo-ui-toolbar-button-item.c0000644000076400007640000002426111173072741020270 00000000000000/* -*- Mode: C; indent-tabs-mode: t; c-basic-offset: 8; tab-width: 8 -*- */ /** * bonobo-ui-toolbar-button-item.h: a toolbar button * * Author: Ettore Perazzoli (ettore@ximian.com) * * Copyright (C) 2000 Ximian, Inc. */ #undef GTK_DISABLE_DEPRECATED #include #include #include #include #include G_DEFINE_TYPE (BonoboUIToolbarButtonItem, bonobo_ui_toolbar_button_item, BONOBO_TYPE_UI_TOOLBAR_ITEM) /* Spacing between the icon and the label. */ #define SPACING 2 struct _BonoboUIToolbarButtonItemPrivate { /* The icon for the button. */ GtkWidget *icon; /* The label for the button. */ GtkWidget *label; /* The box that packs the icon and the label. It can either be an hbox or a vbox, depending on the style. */ GtkWidget *box; /* The widget containing the button */ GtkButton *button_widget; }; enum { CLICKED, LAST_SIGNAL }; static guint signals [LAST_SIGNAL] = { 0 }; /* Utility functions. */ static void set_image (BonoboUIToolbarButtonItem *button_item, gpointer image) { gboolean is_pixbuf; gboolean is_gtk_image; BonoboUIToolbarButtonItemPrivate *priv; priv = button_item->priv; is_pixbuf = image && GDK_IS_PIXBUF (image); is_gtk_image = priv->icon && GTK_IS_IMAGE (priv->icon); if (is_pixbuf && is_gtk_image) bonobo_ui_image_set_pixbuf ((GtkImage *) priv->icon, image); else { if (priv->icon) gtk_widget_destroy (priv->icon); if (is_pixbuf) priv->icon = gtk_image_new_from_pixbuf (image); else { g_return_if_fail (!image || GTK_IS_WIDGET (image)); priv->icon = image; } } } static void set_label (BonoboUIToolbarButtonItem *button_item, const char *label) { GtkLabel *l_widget; BonoboUIToolbarButtonItemPrivate *priv; priv = button_item->priv; if (!priv->label) { if (!label) return; else priv->label = gtk_label_new (label); } if (!label) { gtk_widget_destroy (priv->label); priv->label = NULL; return; } l_widget = GTK_LABEL (priv->label); if (label && l_widget->label && !strcmp (label, l_widget->label)) return; else gtk_label_set_text (l_widget, label); } /* Layout. */ static void unparent_items (BonoboUIToolbarButtonItem *button_item) { BonoboUIToolbarButtonItemPrivate *priv; priv = button_item->priv; if (priv->icon != NULL) { if (priv->icon->parent != NULL) { g_object_ref (priv->icon); gtk_container_remove (GTK_CONTAINER (priv->icon->parent), priv->icon); } } if (priv->label != NULL) { if (priv->label->parent != NULL) { g_object_ref (priv->label); gtk_container_remove (GTK_CONTAINER (priv->label->parent), priv->label); } } } static void layout_pixmap_and_label (BonoboUIToolbarButtonItem *button_item, BonoboUIToolbarItemStyle style) { BonoboUIToolbarButtonItemPrivate *priv; GtkWidget *button; gboolean rebuild; priv = button_item->priv; button = GTK_BIN (button_item)->child; /* Ensure we have the right type of box */ rebuild = FALSE; if (style == BONOBO_UI_TOOLBAR_ITEM_STYLE_ICON_AND_TEXT_VERTICAL) { if (!priv->box || !g_type_is_a ( G_TYPE_FROM_INSTANCE (priv->box), GTK_TYPE_VBOX)) { unparent_items (button_item); if (priv->box) gtk_widget_destroy (priv->box); priv->box = gtk_vbox_new (FALSE, SPACING); rebuild = TRUE; } } else { if (!priv->box || !g_type_is_a (G_TYPE_FROM_INSTANCE (priv->box), GTK_TYPE_HBOX)) { unparent_items (button_item); if (priv->box) gtk_widget_destroy (priv->box); priv->box = gtk_hbox_new (FALSE, SPACING); rebuild = TRUE; } } if (rebuild) { gtk_container_add (GTK_CONTAINER (button), priv->box); gtk_widget_show (priv->box); } if (priv->icon && !priv->icon->parent) gtk_box_pack_start ( GTK_BOX (priv->box), priv->icon, TRUE, TRUE, 0); if (priv->label && !priv->label->parent) gtk_box_pack_end ( GTK_BOX (priv->box), priv->label, FALSE, TRUE, 0); if (priv->icon) { if (style == BONOBO_UI_TOOLBAR_ITEM_STYLE_TEXT_ONLY) gtk_widget_hide (priv->icon); else gtk_widget_show (priv->icon); } if (priv->label) { if (style == BONOBO_UI_TOOLBAR_ITEM_STYLE_ICON_ONLY) gtk_widget_hide (priv->label); else gtk_widget_show (priv->label); } } /* Callback for the GtkButton. */ static void button_widget_clicked_cb (GtkButton *button, void *data) { BonoboUIToolbarButtonItem *button_item; button_item = BONOBO_UI_TOOLBAR_BUTTON_ITEM (data); g_signal_emit (button_item, signals[CLICKED], 0); bonobo_ui_toolbar_item_activate (BONOBO_UI_TOOLBAR_ITEM (button_item)); } /* GObject methods. */ static void impl_finalize (GObject *object) { BonoboUIToolbarButtonItem *button_item; button_item = BONOBO_UI_TOOLBAR_BUTTON_ITEM (object); g_free (button_item->priv); button_item->priv = NULL; G_OBJECT_CLASS (bonobo_ui_toolbar_button_item_parent_class)->finalize (object); } /* BonoboUIToolbarItem signals. */ static void impl_set_style (BonoboUIToolbarItem *item, BonoboUIToolbarItemStyle style) { BonoboUIToolbarButtonItem *button_item; button_item = BONOBO_UI_TOOLBAR_BUTTON_ITEM (item); layout_pixmap_and_label (button_item, style); BONOBO_UI_TOOLBAR_ITEM_CLASS (bonobo_ui_toolbar_button_item_parent_class)->set_style (item, style); } static void impl_set_tooltip (BonoboUIToolbarItem *item, GtkTooltips *tooltips, const char *tooltip) { GtkButton *button; BonoboUIToolbarButtonItem *button_item; button_item = BONOBO_UI_TOOLBAR_BUTTON_ITEM (item); if (tooltip && (button = button_item->priv->button_widget)) gtk_tooltips_set_tip ( tooltips, GTK_WIDGET (button), tooltip, NULL); } /* BonoboUIToolbarButtonItem virtual methods. */ static void impl_set_icon (BonoboUIToolbarButtonItem *button_item, gpointer image) { set_image (button_item, image); layout_pixmap_and_label ( button_item, bonobo_ui_toolbar_item_get_style ( BONOBO_UI_TOOLBAR_ITEM (button_item))); } static void impl_set_label (BonoboUIToolbarButtonItem *button_item, const char *label) { set_label (button_item, label); layout_pixmap_and_label ( button_item, bonobo_ui_toolbar_item_get_style ( BONOBO_UI_TOOLBAR_ITEM (button_item))); } /* GTK+ object initialization. */ static void bonobo_ui_toolbar_button_item_class_init (BonoboUIToolbarButtonItemClass *button_item_class) { GObjectClass *object_class; BonoboUIToolbarItemClass *item_class; object_class = (GObjectClass *) button_item_class; object_class->finalize = impl_finalize; item_class = BONOBO_UI_TOOLBAR_ITEM_CLASS (button_item_class); item_class->set_style = impl_set_style; item_class->set_tooltip = impl_set_tooltip; button_item_class->set_icon = impl_set_icon; button_item_class->set_label = impl_set_label; signals[CLICKED] = g_signal_new ("clicked", G_TYPE_FROM_CLASS (object_class), G_SIGNAL_RUN_FIRST, G_STRUCT_OFFSET (BonoboUIToolbarButtonItemClass, clicked), NULL, NULL, g_cclosure_marshal_VOID__VOID, G_TYPE_NONE, 0); } static void bonobo_ui_toolbar_button_item_init ( BonoboUIToolbarButtonItem *toolbar_button_item) { BonoboUIToolbarButtonItemPrivate *priv; priv = g_new (BonoboUIToolbarButtonItemPrivate, 1); priv->icon = NULL; priv->label = NULL; priv->box = NULL; toolbar_button_item->priv = priv; } void bonobo_ui_toolbar_button_item_construct (BonoboUIToolbarButtonItem *button_item, GtkButton *button_widget, GdkPixbuf *pixbuf, const char *label) { BonoboUIToolbarButtonItemPrivate *priv; g_return_if_fail (button_item != NULL); g_return_if_fail (BONOBO_IS_UI_TOOLBAR_BUTTON_ITEM (button_item)); g_return_if_fail (button_widget != NULL); g_return_if_fail (GTK_IS_BUTTON (button_widget)); g_return_if_fail (GTK_BIN (button_item)->child == NULL); priv = button_item->priv; g_assert (priv->icon == NULL); g_assert (priv->label == NULL); priv->button_widget = button_widget; gtk_widget_show (GTK_WIDGET (button_widget)); g_signal_connect_object (button_widget, "clicked", G_CALLBACK (button_widget_clicked_cb), button_item, 0); gtk_button_set_relief (button_widget, GTK_RELIEF_NONE); gtk_container_add (GTK_CONTAINER (button_item), GTK_WIDGET (button_widget)); set_image (button_item, pixbuf); set_label (button_item, label); layout_pixmap_and_label ( button_item, bonobo_ui_toolbar_item_get_style ( BONOBO_UI_TOOLBAR_ITEM (button_item))); } /** * bonobo_ui_toolbar_button_item_new: * @pixmap: * @label: * * Create a new toolbar button item. * * Return value: A pointer to the newly created widget. **/ GtkWidget * bonobo_ui_toolbar_button_item_new (GdkPixbuf *icon, const char *label) { BonoboUIToolbarButtonItem *button_item; GtkWidget *button_widget; button_item = g_object_new ( bonobo_ui_toolbar_button_item_get_type (), NULL); button_widget = gtk_button_new (); bonobo_ui_toolbar_button_item_construct ( button_item, GTK_BUTTON (button_widget), icon, label); return GTK_WIDGET (button_item); } void bonobo_ui_toolbar_button_item_set_image (BonoboUIToolbarButtonItem *button_item, gpointer image) { BonoboUIToolbarButtonItemClass *klass; g_return_if_fail (BONOBO_IS_UI_TOOLBAR_BUTTON_ITEM (button_item)); klass = BONOBO_UI_TOOLBAR_BUTTON_ITEM_CLASS ( (GTK_OBJECT_GET_CLASS (button_item))); if (klass->set_icon) klass->set_icon (button_item, image); } void bonobo_ui_toolbar_button_item_set_label (BonoboUIToolbarButtonItem *button_item, const char *label) { BonoboUIToolbarButtonItemClass *klass; g_return_if_fail (BONOBO_IS_UI_TOOLBAR_BUTTON_ITEM (button_item)); klass = BONOBO_UI_TOOLBAR_BUTTON_ITEM_CLASS ( (GTK_OBJECT_GET_CLASS (button_item))); if (klass->set_label) klass->set_label (button_item, label); } GtkButton * bonobo_ui_toolbar_button_item_get_button_widget (BonoboUIToolbarButtonItem *button_item) { g_return_val_if_fail (BONOBO_IS_UI_TOOLBAR_BUTTON_ITEM (button_item), NULL); return GTK_BUTTON (GTK_BIN (button_item)->child); } GtkWidget * bonobo_ui_toolbar_button_item_get_image (BonoboUIToolbarButtonItem *button_item) { g_return_val_if_fail (BONOBO_IS_UI_TOOLBAR_BUTTON_ITEM (button_item), NULL); return button_item->priv->icon; } libbonoboui-2.24.5/bonobo/bonobo-canvas-component.h0000644000076400007640000000626211173072741017227 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ /** * bonobo-canvas-component.h: implements the CORBA interface for * the Bonobo::Canvas:Item interface used in Bonobo::Views. * * Author: * Miguel de Icaza (miguel@kernel.org) * * (C) 1999 Helix Code, Inc. */ #ifndef _BONOBO_CANVAS_COMPONENT_H_ #define _BONOBO_CANVAS_COMPONENT_H_ #include #include #include #include #ifndef BONOBO_UI_DISABLE_DEPRECATED G_BEGIN_DECLS #define BONOBO_TYPE_CANVAS_COMPONENT (bonobo_canvas_component_get_type ()) #define BONOBO_CANVAS_COMPONENT(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), BONOBO_TYPE_CANVAS_COMPONENT, BonoboCanvasComponent)) #define BONOBO_CANVAS_COMPONENT_CLASS(k) (G_TYPE_CHECK_CLASS_CAST((k), BONOBO_TYPE_CANVAS_COMPONENT_, BonoboCanvasComponentClass)) #define BONOBO_IS_CANVAS_COMPONENT(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), BONOBO_TYPE_CANVAS_COMPONENT)) #define BONOBO_IS_CANVAS_COMPONENT_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), BONOBO_TYPE_CANVAS_COMPONENT)) typedef struct _BonoboCanvasComponentPrivate BonoboCanvasComponentPrivate; typedef struct { BonoboObject base; BonoboCanvasComponentPrivate *priv; } BonoboCanvasComponent; typedef struct { BonoboObjectClass parent_class; POA_Bonobo_Canvas_Component__epv epv; /* Signals */ void (*set_bounds) (BonoboCanvasComponent *component, Bonobo_Canvas_DRect *bbox, CORBA_Environment *ev); gboolean (*event) (BonoboCanvasComponent *component, GdkEvent *event); } BonoboCanvasComponentClass; GType bonobo_canvas_component_get_type (void) G_GNUC_CONST; BonoboCanvasComponent *bonobo_canvas_component_construct (BonoboCanvasComponent *comp, GnomeCanvasItem *item); BonoboCanvasComponent *bonobo_canvas_component_new (GnomeCanvasItem *item); GnomeCanvasItem *bonobo_canvas_component_get_item (BonoboCanvasComponent *comp); void bonobo_canvas_component_grab (BonoboCanvasComponent *comp, guint mask, GdkCursor *cursor, guint32 time, CORBA_Environment *opt_ev); void bonobo_canvas_component_ungrab (BonoboCanvasComponent *comp, guint32 time, CORBA_Environment *opt_ev); Bonobo_UIContainer bonobo_canvas_component_get_ui_container (BonoboCanvasComponent *comp, CORBA_Environment *opt_ev); /* This is a helper function for creating a canvas with the root item replaced * by a proxy to the client side proxy. */ GnomeCanvas *bonobo_canvas_new (gboolean is_aa, Bonobo_Canvas_ComponentProxy proxy); /* Sets up a callback to be invoked when the container activates the object. * Creating the component factory will do nothing until the container connects. */ typedef BonoboCanvasComponent *(*GnomeItemCreator) (GnomeCanvas *canvas, void *user_data); BonoboObject *bonobo_canvas_component_factory_new(GnomeItemCreator item_factory, void *data); G_END_DECLS #endif /* BONOBO_UI_DISABLE_DEPRECATED */ #endif /* */ libbonoboui-2.24.5/bonobo/bonobo-ui-toolbar-toggle-button-item.h0000644000076400007640000000445111173072741021553 00000000000000/* -*- Mode: C; indent-tabs-mode: t; c-basic-offset: 8; tab-width: 8 -*- */ /** * bonobo-ui-toolbar-toggle-button-item.h * * Author: * Ettore Perazzoli * * Copyright (C) 2000 Helix Code, Inc. */ #ifndef _BONOBO_UI_TOOLBAR_TOGGLE_BUTTON_ITEM_H_ #define _BONOBO_UI_TOOLBAR_TOGGLE_BUTTON_ITEM_H_ #include #include "bonobo-ui-toolbar-button-item.h" #ifndef BONOBO_UI_DISABLE_DEPRECATED G_BEGIN_DECLS #define BONOBO_TYPE_UI_TOOLBAR_TOGGLE_BUTTON_ITEM (bonobo_ui_toolbar_toggle_button_item_get_type ()) #define BONOBO_UI_TOOLBAR_TOGGLE_BUTTON_ITEM(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BONOBO_TYPE_UI_TOOLBAR_TOGGLE_BUTTON_ITEM, BonoboUIToolbarToggleButtonItem)) #define BONOBO_UI_TOOLBAR_TOGGLE_BUTTON_ITEM_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), BONOBO_TYPE_UI_TOOLBAR_TOGGLE_BUTTON_ITEM, BonoboUIToolbarToggleButtonItemClass)) #define BONOBO_IS_UI_TOOLBAR_TOGGLE_BUTTON_ITEM(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BONOBO_TYPE_UI_TOOLBAR_TOGGLE_BUTTON_ITEM)) #define BONOBO_IS_UI_TOOLBAR_TOGGLE_BUTTON_ITEM_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), BONOBO_TYPE_UI_TOOLBAR_TOGGLE_BUTTON_ITEM)) typedef struct _BonoboUIToolbarToggleButtonItemPrivate BonoboUIToolbarToggleButtonItemPrivate; typedef struct { BonoboUIToolbarButtonItem parent; } BonoboUIToolbarToggleButtonItem; typedef struct { BonoboUIToolbarButtonItemClass parent_class; void (* toggled) (BonoboUIToolbarToggleButtonItem *toggle_button_item); gpointer dummy[2]; } BonoboUIToolbarToggleButtonItemClass; GType bonobo_ui_toolbar_toggle_button_item_get_type (void) G_GNUC_CONST; void bonobo_ui_toolbar_toggle_button_item_construct (BonoboUIToolbarToggleButtonItem *toggle_button_item, GdkPixbuf *icon, const char *label); GtkWidget *bonobo_ui_toolbar_toggle_button_item_new (GdkPixbuf *icon, const char *label); void bonobo_ui_toolbar_toggle_button_item_set_active (BonoboUIToolbarToggleButtonItem *item, gboolean active); gboolean bonobo_ui_toolbar_toggle_button_item_get_active (BonoboUIToolbarToggleButtonItem *item); G_END_DECLS #endif /* BONOBO_UI_DISABLE_DEPRECATED */ #endif /* _BONOBO_UI_TOOLBAR_TOGGLE_BUTTON_ITEM_H_ */ libbonoboui-2.24.5/bonobo/bonobo-file-selector-util.h0000644000076400007640000000164011173072741017457 00000000000000/* * bonobo-file-selector-util.h - functions for getting files from a * selector * * Authors: * Jacob Berkman * * Copyright 2001 Ximian, Inc. * */ #ifndef _BONOBO_FILE_SELECTOR_UTIL_H_ #define _BONOBO_FILE_SELECTOR_UTIL_H_ #include #include G_BEGIN_DECLS char *bonobo_file_selector_open (GtkWindow *parent, gboolean enable_vfs, const char *title, const char *mime_types, const char *default_path); char **bonobo_file_selector_open_multi (GtkWindow *parent, gboolean enable_vfs, const char *title, const char *mime_types, const char *default_path); char *bonobo_file_selector_save (GtkWindow *parent, gboolean enable_vfs, const char *title, const char *mime_types, const char *default_path, const char *default_filename); G_END_DECLS #endif /* _BONOBO_FILE_SELECTOR_UTIL_H_ */ libbonoboui-2.24.5/bonobo/bonobo-ui-xml.c0000644000076400007640000005702211173072741015162 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ /* * bonobo-ui-xml.c: A module for merging, overlaying and de-merging XML * * Author: * Michael Meeks (michael@ximian.com) * * Copyright 2000 Ximian, Inc. */ #include "config.h" #include #include #include #include #include #undef UI_XML_DEBUG #undef BONOBO_UI_XML_DUMP #ifdef BONOBO_UI_XML_DUMP # define DUMP_XML(a,b,c) (bonobo_ui_xml_dump ((a), (b), (c))) #else # define DUMP_XML(a,b,c) #endif static GQuark pos_id = 0; static GQuark name_id = 0; static GQuark placeholder_id = 0; static void watch_update (BonoboUIXml *tree, BonoboUINode *node); static void watch_destroy (gpointer data); static GObjectClass *parent_class = NULL; enum { OVERRIDE, REPLACE_OVERRIDE, REINSTATE, RENAME, REMOVE, LAST_SIGNAL }; static guint signals[LAST_SIGNAL] = { 0 }; inline static gboolean identical (BonoboUIXml *tree, gpointer a, gpointer b) { gboolean val; if (tree->compare) val = tree->compare (a, b); else val = (a == b); /* fprintf (stderr, "Identical ? '%p' '%p' : %d\n", a, b, val);*/ return val; } /** * bonobo_ui_xml_get_data: * @tree: the tree * @node: the node * * This function gets the data pointer associated with @node * and if there is no data pointer, constructs it using a user supplied * callback. * * Return value: a valid Data pointer - never NULL. **/ gpointer bonobo_ui_xml_get_data (BonoboUIXml *tree, BonoboUINode *node) { if (!bonobo_ui_node_get_data (node)) { if (tree && tree->data_new) bonobo_ui_node_set_data (node, tree->data_new ()); else { g_warning ("Error: No tree, and no data on node; leaking"); bonobo_ui_node_set_data (node, g_new0 (BonoboUIXmlData, 1)); } } return bonobo_ui_node_get_data (node); } /** * bonobo_ui_xml_clean: * @tree: the tree * @node: the node * * This function marks the entire @tree from @node down * ( all its child nodes ) as being clean. **/ void bonobo_ui_xml_clean (BonoboUIXml *tree, BonoboUINode *node) { BonoboUIXmlData *data; BonoboUINode *l; data = bonobo_ui_xml_get_data (tree, node); data->dirty = FALSE; for (l = bonobo_ui_node_children (node); l; l = bonobo_ui_node_next (l)) bonobo_ui_xml_clean (tree, l); } static void set_children_dirty (BonoboUIXml *tree, BonoboUINode *node) { BonoboUINode *l; if (!node) return; for (l = bonobo_ui_node_children (node); l; l = bonobo_ui_node_next (l)) { BonoboUIXmlData *data; data = bonobo_ui_xml_get_data (tree, l); data->dirty = TRUE; set_children_dirty (tree, l); } } /** * bonobo_ui_xml_set_dirty: * @tree: the tree * @node: the node * * This function sets a node as being dirty, along with all * its children. However more than this, it also sets its parent * dirty, and bubbles this up while the parent is a placeholder, * so as to allow a re-generate to be forced for its real visible * parent. **/ void bonobo_ui_xml_set_dirty (BonoboUIXml *tree, BonoboUINode *node) { int i; BonoboUINode *l; l = node; for (i = 0; (i < 2) && l; i++) { BonoboUIXmlData *data; /* * FIXME: the placeholder functionality is broken and should * live in bonobo-window.c for cleanliness and never in this * more generic code. */ if (l->name_id == placeholder_id) i--; data = bonobo_ui_xml_get_data (tree, l); data->dirty = TRUE; l = bonobo_ui_node_parent (l); } /* Too conservative in some cases.*/ set_children_dirty (tree, node); } /** * bonobo_ui_xml_get_parent_path: * @path: the path * * This function lops one level off a path, much * like appending '..' to a Unix directory path. * * Return value: the parent's path, use g_free to release it **/ char * bonobo_ui_xml_get_parent_path (const char *path) { const char *p; char *ret; if ((p = strrchr (path, '/'))) ret = g_strndup (path, p - path); else ret = g_strdup (path); return ret; } static void node_free (BonoboUIXml *tree, BonoboUINode *node); static void free_nodedata (BonoboUIXml *tree, BonoboUIXmlData *data, gboolean do_overrides) { if (data) { if (data->overridden) { if (do_overrides) { GSList *l; for (l = data->overridden; l; l = l->next) node_free (tree, l->data); g_slist_free (data->overridden); } else /* * This indicates a serious error in the * overriding logic. */ g_warning ("Leaking overridden nodes"); } if (tree->data_free) tree->data_free (data); else g_free (data); } } static void free_nodedata_tree (BonoboUIXml *tree, BonoboUINode *node, gboolean do_overrides) { BonoboUINode *l; if (node == NULL) return; free_nodedata (tree, bonobo_ui_node_get_data (node), do_overrides); bonobo_ui_node_set_data (node, NULL); for (l = bonobo_ui_node_children (node); l; l = bonobo_ui_node_next (l)) free_nodedata_tree (tree, l, do_overrides); } static void node_free (BonoboUIXml *tree, BonoboUINode *node) { free_nodedata_tree (tree, node, TRUE); bonobo_ui_node_unlink (node); bonobo_ui_node_unref (node); } static void do_set_id (BonoboUIXml *tree, BonoboUINode *node, gpointer id) { BonoboUIXmlData *data; data = bonobo_ui_xml_get_data (tree, node); data->id = id; #ifdef UI_XML_DEBUG /* Do some basic validation here ? */ { const char *p, *name; if ((name = bonobo_ui_node_get_attr_by_id (node, name_id))) { for (p = name; *p; p++) g_assert (*p != '/' && *p != '#'); } } #endif for (node = node->children; node; node = node->next) do_set_id (tree, node, id); } static void set_id (BonoboUIXml *tree, BonoboUINode *node, gpointer id) { for (; node; node = node->next) do_set_id (tree, node, id); } static void dump_internals (BonoboUIXml *tree, BonoboUINode *node) { int i; BonoboUINode *l; const char *txt; static int indent = -4; BonoboUIXmlData *data = bonobo_ui_xml_get_data (tree, node); indent += 2; for (i = 0; i < indent; i++) fprintf (stderr, " "); fprintf (stderr, "%16s name=\"%10s\" ", bonobo_ui_node_get_name (node), (txt = bonobo_ui_node_peek_attr (node, "name")) ? txt : "NULL"); fprintf (stderr, "%d len %u", data->dirty, g_slist_length (data->overridden)); if (tree->dump) tree->dump (tree, node); else fprintf (stderr, "\n"); if (data->overridden) { GSList *list; int old_indent; old_indent = indent; for (list = data->overridden; list; list = list->next) { for (i = 0; i < indent; i++) fprintf (stderr, " "); fprintf (stderr, "`--->"); dump_internals (tree, list->data); indent += 4; } indent = old_indent; } for (l = bonobo_ui_node_children (node); l; l = bonobo_ui_node_next (l)) dump_internals (tree, l); indent -= 2; } /** * bonobo_ui_xml_dump: * @tree: the tree node * @bnode: the base node to start dumping from * @descr: a description string to print. * * This debug function dumps the contents of a BonoboUIXml tree * to stderr, it is used by BonoboUIEngine to provide some of the * builtin BonoboUIDump verb functionality. **/ void bonobo_ui_xml_dump (BonoboUIXml *tree, BonoboUINode *node, const char *descr) { gchar *str; str = bonobo_ui_node_to_string (node, TRUE); fprintf (stderr, "Dump '%s':\n%s\n", descr, str); g_free (str); fprintf (stderr, "--- Internals ---\n"); dump_internals (tree, node); fprintf (stderr, "---\n"); } static void prune_overrides_by_id (BonoboUIXml *tree, BonoboUIXmlData *data, gpointer id) { GSList *l, *next; for (l = data->overridden; l; l = next) { BonoboUIXmlData *o_data; next = l->next; o_data = bonobo_ui_xml_get_data (tree, l->data); if (identical (tree, o_data->id, id)) { node_free (tree, l->data); data->overridden = g_slist_remove_link (data->overridden, l); g_slist_free_1 (l); } } } static void merge (BonoboUIXml *tree, BonoboUINode *current, BonoboUINode **new); static void override_node_with (BonoboUIXml *tree, BonoboUINode *old, BonoboUINode *new) { BonoboUIXmlData *data = bonobo_ui_xml_get_data (tree, new); BonoboUIXmlData *old_data = bonobo_ui_xml_get_data (tree, old); gboolean same, transparent, override; /* Is it just a path / grouping simplifying entry with no content ? */ transparent = bonobo_ui_node_transparent (new); same = identical (tree, data->id, old_data->id); g_assert (data->id); override = !same && !transparent; if (override) { g_signal_emit (tree, signals [OVERRIDE], 0, new, old); data->overridden = g_slist_prepend (old_data->overridden, old); prune_overrides_by_id (tree, data, data->id); } else { if (transparent) data->id = old_data->id; data->overridden = old_data->overridden; g_signal_emit (tree, signals [REPLACE_OVERRIDE], 0, new, old); /* fprintf (stderr, "Replace override of '%s' '%s' with '%s' '%s'", old->name, bonobo_ui_node_peek_attr (old, "name"), new->name, bonobo_ui_node_peek_attr (new, "name"));*/ } old_data->overridden = NULL; if (bonobo_ui_node_children (new)) merge (tree, old, &new->children); bonobo_ui_node_move_children (old, new); bonobo_ui_node_replace (old, new); g_assert (bonobo_ui_node_children (old) == NULL); if (transparent) bonobo_ui_node_copy_attrs (old, new); bonobo_ui_xml_set_dirty (tree, new); if (!override) node_free (tree, old); watch_update (tree, new); } static void reinstate_old_node (BonoboUIXml *tree, BonoboUINode *node) { BonoboUIXmlData *data = bonobo_ui_xml_get_data (tree, node); BonoboUINode *old; g_return_if_fail (data != NULL); if (data->overridden) { /* Something to re-instate */ BonoboUIXmlData *old_data; g_return_if_fail (data->overridden->data != NULL); /* Get Old node from overridden list */ old = data->overridden->data; old_data = bonobo_ui_xml_get_data (tree, old); /* fprintf (stderr, "Reinstating override '%s' '%s' with '%s' '%s'", node->name, xmlGetProp (node, "name"), old->name, xmlGetProp (old, "name"));*/ /* Update Overridden list */ old_data->overridden = g_slist_next (data->overridden); g_slist_free_1 (data->overridden); data->overridden = NULL; /* Fire remove while still in tree */ g_signal_emit (tree, signals [REMOVE], 0, node); /* Move children across */ bonobo_ui_node_move_children (node, old); /* Switch node back into tree */ bonobo_ui_node_replace (node, old); /* Mark dirty */ bonobo_ui_xml_set_dirty (tree, old); g_signal_emit (tree, signals [REINSTATE], 0, old); watch_update (tree, old); } else if (bonobo_ui_node_children (node)) { /* We need to leave the node here */ /* Re-tag the node */ BonoboUIXmlData *child_data = bonobo_ui_xml_get_data (tree, bonobo_ui_node_children (node)); data->id = child_data->id; /* Mark dirty */ bonobo_ui_xml_set_dirty (tree, node); g_signal_emit (tree, signals [RENAME], 0, node); return; } else { /* Mark parent & up dirty */ bonobo_ui_xml_set_dirty (tree, node); g_signal_emit (tree, signals [REMOVE], 0, node); } /* fprintf (stderr, "destroying node '%s' '%s'\n", node->name, bonobo_ui_node_peek_attr (node, "name"));*/ bonobo_ui_node_unlink (node); if (node == tree->root) /* Ugly special case */ tree->root = NULL; /* Destroy the old node */ node_free (tree, node); } static BonoboUINode * xml_get_path (BonoboUIXml *tree, const char *path, gboolean allow_wild, gboolean *wildcard) { BonoboUINode *ret; char **names, *copy; int i, j, slashes; g_return_val_if_fail (tree != NULL, NULL); g_return_val_if_fail (!allow_wild || wildcard != NULL, NULL); #ifdef UI_XML_DEBUG fprintf (stderr, "Find path '%s'\n", path); #endif /* DUMP_XML (tree, tree->root, "Before find path"); */ if (allow_wild) *wildcard = FALSE; if (!path || path [0] == '\0') return tree->root; if (path [0] != '/') g_warning ("non-absolute path brokenness '%s'", path); for (i = slashes = 0; path [i]; i++) if (path [i] == '/') slashes++; names = g_newa (char *, slashes + 2); names [0] = copy = g_alloca (i + 1); for (i = j = 0; path [i]; i++) { if (path [i] == '/') { copy [i] = '\0'; names [++j] = © [i + 1]; } else copy [i] = path [i]; } copy [i] = '\0'; names [++j] = NULL; /* names = bonobo_ui_xml_path_split (path); */ ret = tree->root; for (i = 0; names && names [i]; i++) { if (names [i] [0] == '\0') continue; /* g_warning ("Path element '%s'", names [i]); */ if (allow_wild && names [i] [0] == '*' && names [i] [1] == '\0') *wildcard = TRUE; else if (!(ret = bonobo_ui_node_get_path_child (ret, names [i]))) { /* bonobo_ui_xml_path_freev (names); */ return NULL; } } /* bonobo_ui_xml_path_freev (names); */ /* DUMP_XML (tree, tree->root, "After clean find path"); */ return ret; } /** * bonobo_ui_xml_get_path: * @tree: the tree * @path: the path * * This function returns the node at path @path inside the * internal XML tree. * * Return value: a pointer to the node at @path **/ BonoboUINode * bonobo_ui_xml_get_path (BonoboUIXml *tree, const char *path) { return xml_get_path (tree, path, FALSE, NULL); } /** * bonobo_ui_xml_get_path_wildcard: * @tree: the tree * @path: the path * @wildcard: whether to allow '*' as a wildcard * * This does a wildcard path match, the only * wildcard character is '*'. This is only really * used by the _rm command and the _exists functionality. * * Return value: TRUE if the path matches. **/ BonoboUINode * bonobo_ui_xml_get_path_wildcard (BonoboUIXml *tree, const char *path, gboolean *wildcard) { return xml_get_path (tree, path, TRUE, wildcard); } /** * bonobo_ui_xml_make_path: * @node: the node. * * This generates a path name for a node in a tree. * * Return value: the path name, use g_free to release. **/ char * bonobo_ui_xml_make_path (BonoboUINode *node) { GString *path; char *ret; g_return_val_if_fail (node != NULL, NULL); path = g_string_new (NULL); while (node && node->parent) { const char *tmp; if ((tmp = bonobo_ui_node_get_attr_by_id (node, name_id))) { g_string_prepend (path, tmp); g_string_prepend (path, "/"); } else { g_string_prepend (path, bonobo_ui_node_get_name (node)); g_string_prepend (path, "/"); } node = node->parent; } ret = path->str; g_string_free (path, FALSE); /* fprintf (stderr, "Make path: '%s'\n", tmp);*/ return ret; } static void reinstate_node (BonoboUIXml *tree, BonoboUINode *node, gpointer id, gboolean nail_me) { BonoboUINode *l, *next; for (l = bonobo_ui_node_children (node); l; l = next) { next = bonobo_ui_node_next (l); reinstate_node (tree, l, id, TRUE); } if (nail_me) { BonoboUIXmlData *data; data = bonobo_ui_xml_get_data (tree, node); if (identical (tree, data->id, id)) reinstate_old_node (tree, node); else prune_overrides_by_id (tree, data, id); } } static void do_insert (BonoboUINode *parent, BonoboUINode *child, BonoboUINode *insert) { const char *pos; gboolean added = FALSE; if ((pos = bonobo_ui_node_get_attr_by_id (child, pos_id))) { if (pos [0] == 't') { bonobo_ui_node_insert_before ( bonobo_ui_node_children (parent), child); added = TRUE; } } if (!added) { if (insert) bonobo_ui_node_insert_before ( insert, child); else bonobo_ui_node_add_child (parent, child); } } static void merge (BonoboUIXml *tree, BonoboUINode *current, BonoboUINode **new) { BonoboUINode *a, *b, *nexta, *nextb, *insert = NULL; for (a = current->children; a; a = nexta) { BonoboUINode *result; const xmlChar *a_name; const xmlChar *b_name = NULL; nexta = a->next; nextb = NULL; a_name = bonobo_ui_node_get_attr_by_id (a, name_id); for (b = *new; b; b = nextb) { nextb = b->next; b_name = NULL; /* printf ("'%s' '%s' with '%s' '%s'\n", a->name, bonobo_ui_node_peek_attr (a, "name"), b->name, bonobo_ui_node_peek_attr (b, "name"));*/ b_name = bonobo_ui_node_get_attr_by_id (b, name_id); if (!a_name && !b_name && a->name_id == b->name_id) break; if (!a_name || !b_name) continue; if (!strcmp (a_name, b_name)) break; } if (b == *new) *new = nextb; if (b) /* Merger candidate */ override_node_with (tree, a, b); result = b ? b : a; if (!insert && !a_name && result->name_id == placeholder_id) insert = result; } for (b = *new; b; b = nextb) { BonoboUIXmlData *data; nextb = b->next; /* fprintf (stderr, "Transfering '%s' '%s' into '%s' '%s'\n", b->name, bonobo_ui_node_peek_attr (b, "name"), current->name, bonobo_ui_node_peek_attr (current, "name"));*/ bonobo_ui_node_unlink (b); do_insert (current, b, insert); if (tree->add_node) tree->add_node (current, b, tree->user_data); bonobo_ui_xml_set_dirty (tree, b); /* FIXME: this looks redundant */ data = bonobo_ui_xml_get_data (tree, current); data->dirty = TRUE; watch_update (tree, b); /* DUMP_XML (tree, current, "After transfer");*/ } *new = NULL; /* DUMP_XML (tree, current, "After all"); */ } /** * bonobo_ui_xml_merge: * @tree: the tree * @path: the path to merge into * @nodes: the nodes * @id: the id to merge with. * * Merges new xml nodes into the internal tree, overriding * where appropriate. Merging is by id, ie. overriding only * occurs where there is an id mismatch. * * Return value: an error flag. **/ BonoboUIError bonobo_ui_xml_merge (BonoboUIXml *tree, const char *path, BonoboUINode *nodes, gpointer id) { BonoboUINode *current; g_return_val_if_fail (BONOBO_IS_UI_XML (tree), BONOBO_UI_ERROR_BAD_PARAM); if (nodes == NULL) return BONOBO_UI_ERROR_OK; current = bonobo_ui_xml_get_path (tree, path); if (!current) { BonoboUINode *l, *next; for (l = nodes; l; l = next) { next = l->next; node_free (tree, l); } return BONOBO_UI_ERROR_INVALID_PATH; } set_id (tree, nodes, id); #ifdef UI_XML_DEBUG fprintf (stderr, "\n\n\nPATH: '%s' '%s\n", g_quark_to_string (current->name_id), bonobo_ui_node_peek_attr (current, "name")); #endif DUMP_XML (tree, tree->root, "Merging in"); DUMP_XML (tree, nodes, "this load"); merge (tree, current, &nodes); #ifdef UI_XML_DEBUG bonobo_ui_xml_dump (tree, tree->root, "Merged to"); #endif return BONOBO_UI_ERROR_OK; } BonoboUIError bonobo_ui_xml_rm (BonoboUIXml *tree, const char *path, gpointer id) { BonoboUINode *current; gboolean wildcard; current = bonobo_ui_xml_get_path_wildcard ( tree, path, &wildcard); /* fprintf (stderr, "remove stuff from '%s' (%d) -> '%p'\n", path, wildcard, current); */ if (current) reinstate_node (tree, current, id, !wildcard); else return BONOBO_UI_ERROR_INVALID_PATH; DUMP_XML (tree, tree->root, "After remove"); return BONOBO_UI_ERROR_OK; } static void bonobo_ui_xml_dispose (GObject *object) { GSList *l; BonoboUIXml *tree = (BonoboUIXml *) object; for (l = tree->watches; l; l = l->next) watch_destroy (l->data); g_slist_free (tree->watches); tree->watches = NULL; parent_class->dispose (object); } static void bonobo_ui_xml_finalize (GObject *object) { BonoboUIXml *tree = (BonoboUIXml *) object; if (tree->root) { free_nodedata_tree (tree, tree->root, TRUE); bonobo_ui_node_unref (tree->root); tree->root = NULL; } parent_class->finalize (object); } static void bonobo_ui_xml_class_init (BonoboUIXmlClass *klass) { GObjectClass *object_class = (GObjectClass *) klass; parent_class = g_type_class_peek_parent (klass); pos_id = g_quark_from_static_string ("pos"); name_id = g_quark_from_static_string ("name"); placeholder_id = g_quark_from_static_string ("placeholder"); object_class->dispose = bonobo_ui_xml_dispose; object_class->finalize = bonobo_ui_xml_finalize; signals [OVERRIDE] = g_signal_new ("override", G_TYPE_FROM_CLASS (object_class), G_SIGNAL_RUN_FIRST, G_STRUCT_OFFSET (BonoboUIXmlClass, override), NULL, NULL, bonobo_ui_marshal_VOID__POINTER_POINTER, G_TYPE_NONE, 2, G_TYPE_POINTER, G_TYPE_POINTER); signals [REPLACE_OVERRIDE] = g_signal_new ("replace_override", G_TYPE_FROM_CLASS (object_class), G_SIGNAL_RUN_FIRST, G_STRUCT_OFFSET (BonoboUIXmlClass, replace_override), NULL, NULL, bonobo_ui_marshal_VOID__POINTER_POINTER, G_TYPE_NONE, 2, G_TYPE_POINTER, G_TYPE_POINTER); signals [REINSTATE] = g_signal_new ("reinstate", G_TYPE_FROM_CLASS (object_class), G_SIGNAL_RUN_FIRST, G_STRUCT_OFFSET (BonoboUIXmlClass, reinstate), NULL, NULL, g_cclosure_marshal_VOID__POINTER, G_TYPE_NONE, 1, G_TYPE_POINTER); signals [RENAME] = g_signal_new ("rename", G_TYPE_FROM_CLASS (object_class), G_SIGNAL_RUN_FIRST, G_STRUCT_OFFSET (BonoboUIXmlClass, rename), NULL, NULL, g_cclosure_marshal_VOID__POINTER, G_TYPE_NONE, 1, G_TYPE_POINTER); signals [REMOVE] = g_signal_new ("remove", G_TYPE_FROM_CLASS (object_class), G_SIGNAL_RUN_FIRST, G_STRUCT_OFFSET (BonoboUIXmlClass, remove), NULL, NULL, g_cclosure_marshal_VOID__POINTER, G_TYPE_NONE, 1, G_TYPE_POINTER); } /** * bonobo_cmd_model_get_type: * * Returns the GType for the BonoboCmdModel class. */ GType bonobo_ui_xml_get_type (void) { static GType type = 0; if (!type) { GTypeInfo info = { sizeof (BonoboUIXmlClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) bonobo_ui_xml_class_init, NULL, /* class_finalize */ NULL, /* class_data */ sizeof (BonoboUIXml), 0, /* n_preallocs */ (GInstanceInitFunc) NULL }; type = g_type_register_static (G_TYPE_OBJECT, "BonoboUIXml", &info, 0); } return type; } BonoboUIXml * bonobo_ui_xml_new (BonoboUIXmlCompareFn compare, BonoboUIXmlDataNewFn data_new, BonoboUIXmlDataFreeFn data_free, BonoboUIXmlDumpFn dump, BonoboUIXmlAddNode add_node, gpointer user_data) { BonoboUIXml *tree; tree = g_object_new (BONOBO_TYPE_UI_XML, NULL); tree->compare = compare; tree->data_new = data_new; tree->data_free = data_free; tree->dump = dump; tree->add_node = add_node; tree->user_data = user_data; tree->root = bonobo_ui_node_new ("Root"); tree->watches = NULL; return tree; } typedef struct { char *path; gpointer user_data; } Watch; static void watch_update (BonoboUIXml *tree, BonoboUINode *node) { GSList *l; char *path; if (!tree->watch) return; /* FIXME: for speed we only check root nodes for now */ if (bonobo_ui_node_parent (node) != tree->root) return; path = bonobo_ui_xml_make_path (node); for (l = tree->watches; l; l = l->next) { Watch *w = l->data; if (!strcmp (w->path, path)) { /* fprintf (stderr, "Found watch on '%s'", path);*/ tree->watch (tree, path, node, w->user_data); } } g_free (path); } void bonobo_ui_xml_add_watch (BonoboUIXml *tree, const char *path, gpointer user_data) { Watch *w = g_new0 (Watch, 1); g_return_if_fail (BONOBO_IS_UI_XML (tree)); w->path = g_strdup (path); w->user_data = user_data; tree->watches = g_slist_append ( tree->watches, w); } void bonobo_ui_xml_remove_watch_by_data (BonoboUIXml *tree, gpointer user_data) { GSList *l; GSList *next; g_return_if_fail (BONOBO_IS_UI_XML (tree)); for (l = tree->watches; l; l = next) { Watch *w = l->data; next = l->next; if (w->user_data == user_data) { tree->watches = g_slist_remove ( tree->watches, w); watch_destroy (w); } } } static void watch_destroy (gpointer data) { Watch *w = data; if (w) { g_free (w->path); g_free (w); } } void bonobo_ui_xml_set_watch_fn (BonoboUIXml *tree, BonoboUIXmlWatchFn watch) { g_return_if_fail (BONOBO_IS_UI_XML (tree)); tree->watch = watch; } libbonoboui-2.24.5/bonobo/bonobo-dock-item-grip.c0000664000076400007640000002023411546334570016564 00000000000000/* -*- Mode: C; indent-tabs-mode: t; c-basic-offset: 8; tab-width: 8 -*- */ /** * bonobo-dock-item-grip.c * * Author: * Michael Meeks * * Copyright (C) 2002 Sun Microsystems, Inc. */ #include "config.h" #include "bonobo-a11y.h" #include "bonobo-dock-band.h" #include "bonobo-dock-item-grip.h" #include #include #include #include #include #include #define DRAG_HANDLE_SIZE 10 enum { ACTIVATE, LAST_SIGNAL }; static guint signals [LAST_SIGNAL]; static AtkObjectClass *a11y_parent_class = NULL; G_DEFINE_TYPE (BonoboDockItemGrip, bonobo_dock_item_grip, GTK_TYPE_WIDGET) static gint bonobo_dock_item_grip_expose (GtkWidget *widget, GdkEventExpose *event) { GdkRectangle *clip = &event->area; GdkRectangle *rect = &widget->allocation; BonoboDockItemGrip *grip = (BonoboDockItemGrip *) widget; GtkShadowType shadow = GTK_SHADOW_OUT; gtk_paint_handle (widget->style, widget->window, GTK_WIDGET_STATE (widget), shadow, clip, widget, "dockitem", rect->x, rect->y, rect->width, rect->height, (grip->item->orientation == GTK_ORIENTATION_HORIZONTAL) ? GTK_ORIENTATION_VERTICAL : GTK_ORIENTATION_HORIZONTAL); if (GTK_WIDGET_HAS_FOCUS (widget)) { gint focus_width; gint focus_pad; GdkRectangle focus; gtk_widget_style_get (GTK_WIDGET (widget), "focus-line-width", &focus_width, "focus-padding", &focus_pad, NULL); focus = *rect; focus.x += widget->style->xthickness + focus_pad; focus.y += widget->style->ythickness + focus_pad; focus.width -= 2 * (widget->style->xthickness + focus_pad); focus.height -= 2 * (widget->style->xthickness + focus_pad); gtk_paint_focus (widget->style, widget->window, GTK_WIDGET_STATE (widget), clip, widget, "dockitem", focus.x, focus.y, focus.width, focus.height); } return FALSE; } static void grip_item_a11y_initialize (AtkObject *accessible, gpointer widget) { accessible->role = ATK_ROLE_SEPARATOR; atk_object_set_name (accessible, "grip"); a11y_parent_class->initialize (accessible, widget); } static AtkStateSet* grip_item_a11y_ref_state_set (AtkObject *accessible) { AtkStateSet *state_set; BonoboDockItemGrip *grip; GtkWidget *widget; state_set = a11y_parent_class->ref_state_set (accessible); widget = GTK_ACCESSIBLE (accessible)->widget; if (widget == NULL) return state_set; grip = BONOBO_DOCK_ITEM_GRIP (widget); if (grip == NULL) return state_set; if (grip->item->orientation == GTK_ORIENTATION_VERTICAL) { atk_state_set_add_state (state_set, ATK_STATE_VERTICAL); atk_state_set_remove_state (state_set, ATK_STATE_HORIZONTAL); } else { atk_state_set_add_state (state_set, ATK_STATE_HORIZONTAL); atk_state_set_remove_state (state_set, ATK_STATE_VERTICAL); } return state_set; } static BonoboDock * get_dock (GtkWidget *widget) { while (widget && !BONOBO_IS_DOCK (widget)) widget = widget->parent; return (BonoboDock *) widget; } static void bonobo_dock_item_grip_dock (BonoboDockItemGrip *grip) { BonoboDock *dock; int placement; g_return_if_fail (BONOBO_IS_DOCK_ITEM_GRIP (grip)); if (!grip->item->is_floating) return; dock = get_dock (GTK_WIDGET (grip->item)); g_return_if_fail (dock != NULL); bonobo_dock_item_unfloat (grip->item); g_object_ref (G_OBJECT (grip->item)); gtk_container_remove ( GTK_CONTAINER ( GTK_WIDGET (grip->item)->parent), GTK_WIDGET (grip->item)); if (grip->item->orientation == GTK_ORIENTATION_HORIZONTAL) placement = BONOBO_DOCK_TOP; else placement = BONOBO_DOCK_LEFT; bonobo_dock_add_item ( dock, grip->item, placement, 2, 0, 0, TRUE); g_object_unref (grip->item); } static void bonobo_dock_item_grip_undock (BonoboDockItemGrip *grip) { int x, y; g_return_if_fail (BONOBO_IS_DOCK_ITEM_GRIP (grip)); if (grip->item->is_floating) return; gdk_window_get_position ( GTK_WIDGET (grip)->window, &x, &y); bonobo_dock_item_detach (grip->item, x, y); } enum { ACTION_DOCK, ACTION_UNDOCK, ACTION_LAST }; static gboolean bonobo_dock_item_grip_do_action (AtkAction *action, gint i) { BonoboDockItemGrip *grip; GtkWidget *widget; widget = GTK_ACCESSIBLE (action)->widget; if (widget == NULL) return FALSE; grip = BONOBO_DOCK_ITEM_GRIP (widget); if (grip->item->behavior & BONOBO_DOCK_ITEM_BEH_LOCKED) return FALSE; switch (i) { case ACTION_DOCK: bonobo_dock_item_grip_dock (grip); break; case ACTION_UNDOCK: bonobo_dock_item_grip_undock (grip); break; default: break; } return FALSE; } static gint bonobo_dock_item_grip_get_n_actions (AtkAction *action) { BonoboDockItemGrip *grip; GtkWidget *widget; widget = GTK_ACCESSIBLE (action)->widget; if (widget == NULL) return 0; grip = BONOBO_DOCK_ITEM_GRIP (widget); if (grip->item->behavior & BONOBO_DOCK_ITEM_BEH_LOCKED) return 0; else return ACTION_LAST; } static void grip_item_a11y_class_init (AtkObjectClass *klass) { a11y_parent_class = g_type_class_peek_parent (klass); klass->initialize = grip_item_a11y_initialize; klass->ref_state_set = grip_item_a11y_ref_state_set; } static AtkObject * bonobo_dock_item_grip_get_accessible (GtkWidget *widget) { AtkObject *accessible; static GType a11y_type = 0; if (!a11y_type) { AtkActionIface action_if; a11y_type = bonobo_a11y_get_derived_type_for ( BONOBO_TYPE_DOCK_ITEM_GRIP, NULL, grip_item_a11y_class_init); memset (&action_if, 0, sizeof (AtkActionIface)); action_if.do_action = bonobo_dock_item_grip_do_action; action_if.get_n_actions = bonobo_dock_item_grip_get_n_actions; bonobo_a11y_add_actions_interface ( a11y_type, &action_if, ACTION_DOCK, "dock", _("Dock the toolbar"), "", ACTION_UNDOCK, "undock", _("Undock the toolbar"), "", -1); } if ((accessible = bonobo_a11y_get_atk_object (widget))) return accessible; return bonobo_a11y_set_atk_object_ret ( widget, g_object_new (a11y_type, NULL)); } static void bonobo_dock_item_grip_activate (BonoboDockItemGrip *grip) { if (grip->item->is_floating) bonobo_dock_item_grip_dock (grip); else bonobo_dock_item_grip_undock (grip); } static void bonobo_dock_item_grip_init (BonoboDockItemGrip *grip) { GTK_WIDGET_SET_FLAGS (grip, GTK_CAN_FOCUS); GTK_WIDGET_SET_FLAGS (grip, GTK_NO_WINDOW); } static BonoboDockBand * get_dock_band (GtkWidget *widget) { while (widget && !BONOBO_IS_DOCK_BAND (widget)) widget = widget->parent; return (BonoboDockBand *) widget; } static gint bonobo_dock_item_grip_key_press_event (GtkWidget *widget, GdkEventKey *event) { gboolean had_focus = GTK_WIDGET_HAS_FOCUS (widget); BonoboDockBand *band = get_dock_band (widget); BonoboDockItemGrip *grip = (BonoboDockItemGrip *) widget; if (!grip->item->is_floating && band && _bonobo_dock_band_handle_key_nav (band, grip->item, event)) { if (had_focus && !GTK_WIDGET_HAS_FOCUS (widget)) gtk_widget_grab_focus (widget); return TRUE; } return GTK_WIDGET_CLASS (bonobo_dock_item_grip_parent_class)->key_press_event (widget, event); } static void bonobo_dock_item_grip_class_init (BonoboDockItemGripClass *klass) { GtkBindingSet *binding_set; GtkWidgetClass *widget_class = (GtkWidgetClass *) klass; widget_class->expose_event = bonobo_dock_item_grip_expose; widget_class->get_accessible = bonobo_dock_item_grip_get_accessible; widget_class->key_press_event = bonobo_dock_item_grip_key_press_event; klass->activate = bonobo_dock_item_grip_activate; binding_set = gtk_binding_set_by_class (klass); signals[ACTIVATE] = g_signal_new ("activate", G_TYPE_FROM_CLASS (klass), G_SIGNAL_RUN_LAST | G_SIGNAL_ACTION, G_STRUCT_OFFSET ( BonoboDockItemGripClass, activate), NULL, NULL, g_cclosure_marshal_VOID__VOID, G_TYPE_NONE, 0); widget_class->activate_signal = signals[ACTIVATE]; gtk_binding_entry_add_signal (binding_set, GDK_Return, 0, "activate", 0); gtk_binding_entry_add_signal (binding_set, GDK_KP_Enter, 0, "activate", 0); } GtkWidget * bonobo_dock_item_grip_new (BonoboDockItem *item) { BonoboDockItemGrip *grip = g_object_new ( BONOBO_TYPE_DOCK_ITEM_GRIP, NULL); grip->item = item; return GTK_WIDGET (grip); } libbonoboui-2.24.5/bonobo/bonobo-ui-engine-config.h0000644000076400007640000000575711173072741017107 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ /* * bonobo-ui-engine-config.h: The Bonobo UI/XML Sync engine user config code * * Author: * Michael Meeks (michael@helixcode.com) * * Copyright 2001 Helix Code, Inc. */ #ifndef _BONOBO_UI_ENGINE_CONFIG_H_ #define _BONOBO_UI_ENGINE_CONFIG_H_ G_BEGIN_DECLS #include #include #define BONOBO_TYPE_UI_ENGINE_CONFIG (bonobo_ui_engine_config_get_type ()) #define BONOBO_UI_ENGINE_CONFIG(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BONOBO_TYPE_UI_ENGINE_CONFIG, BonoboUIEngineConfig)) #define BONOBO_UI_ENGINE_CONFIG_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), BONOBO_TYPE_UI_ENGINE_CONFIG, BonoboUIEngineConfigClass)) #define BONOBO_IS_UI_ENGINE_CONFIG(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BONOBO_TYPE_UI_ENGINE_CONFIG)) #define BONOBO_IS_UI_ENGINE_CONFIG_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), BONOBO_TYPE_UI_ENGINE_CONFIG)) typedef struct _BonoboUIEngineConfigPrivate BonoboUIEngineConfigPrivate; typedef struct { GObject parent; BonoboUIEngineConfigPrivate *priv; } BonoboUIEngineConfig; typedef struct { GObjectClass parent_class; gpointer dummy; } BonoboUIEngineConfigClass; GType bonobo_ui_engine_config_get_type (void) G_GNUC_CONST; BonoboUIEngineConfig * bonobo_ui_engine_config_construct (BonoboUIEngineConfig *config, BonoboUIEngine *engine, GtkWindow *opt_parent); BonoboUIEngineConfig * bonobo_ui_engine_config_new (BonoboUIEngine *engine, GtkWindow *opt_parent); typedef char*(*BonoboUIEngineConfigFn) (BonoboUIEngineConfig *config, BonoboUINode *config_node, BonoboUIEngine *popup_engine); typedef void (*BonoboUIEngineConfigVerbFn)(BonoboUIEngineConfig *config, const char *path, const char *opt_state, BonoboUIEngine *popup_engine, BonoboUINode *popup_node); void bonobo_ui_engine_config_connect (GtkWidget *widget, BonoboUIEngine *engine, const char *path, BonoboUIEngineConfigFn config_fn, BonoboUIEngineConfigVerbFn verb_fn); void bonobo_ui_engine_config_serialize (BonoboUIEngineConfig *config); void bonobo_ui_engine_config_hydrate (BonoboUIEngineConfig *config); void bonobo_ui_engine_config_add (BonoboUIEngineConfig *config, const char *path, const char *attr, const char *value); void bonobo_ui_engine_config_remove (BonoboUIEngineConfig *config, const char *path, const char *attr); void bonobo_ui_engine_config_configure (BonoboUIEngineConfig *config); BonoboUIEngine *bonobo_ui_engine_config_get_engine (BonoboUIEngineConfig *config); G_END_DECLS #endif /* _BONOBO_UI_ENGINE_CONFIG_H_ */ libbonoboui-2.24.5/bonobo/bonobo-ui-sync-menu.c0000644000076400007640000005701011173072741016275 00000000000000/* -*- Mode: C; indent-tabs-mode: t; c-basic-offset: 8; tab-width: 8 -*- */ /* * bonobo-ui-sync-menu.h: The Bonobo UI/XML sync engine for menus * * Author: * Michael Meeks (michael@ximian.com) * * Copyright 2000 Ximian, Inc. */ #undef GTK_DISABLE_DEPRECATED #include #include #include #include #include #include #include #include #include #include #include #include #include #include #undef WIDGET_SYNC_DEBUG static GObjectClass *parent_class = NULL; #define PARENT_TYPE bonobo_ui_sync_get_type () /* Doesn't the GtkRadioMenuItem API suck badly ! */ #define MAGIC_RADIO_GROUP_KEY "Bonobo::RadioGroupName" #define UI_SYNC_MENU_KEY "Bonobo::UISyncMenu" static GQuark menu_id = 0; static GQuark popups_id = 0; static GQuark submenu_id = 0; static GQuark menuitem_id = 0; typedef struct { GtkMenu *menu; char *path; } Popup; static void popup_remove (BonoboUISyncMenu *smenu, Popup *popup) { BonoboUINode *node; g_return_if_fail (smenu != NULL); g_return_if_fail (popup != NULL); g_signal_handlers_disconnect_matched ( popup->menu, G_SIGNAL_MATCH_DATA, 0, 0, NULL, NULL, popup); node = bonobo_ui_engine_get_path ( smenu->parent.engine, popup->path); if (node) bonobo_ui_engine_prune_widget_info ( smenu->parent.engine, node, TRUE); smenu->popups = g_slist_remove ( smenu->popups, popup); g_free (popup->path); g_free (popup); } void bonobo_ui_sync_menu_remove_popup (BonoboUISyncMenu *sync, const char *path) { GSList *l, *next; g_return_if_fail (path != NULL); g_return_if_fail (BONOBO_IS_UI_SYNC_MENU (sync)); for (l = sync->popups; l; l = next) { Popup *popup = l->data; next = l->next; if (!strcmp (popup->path, path)) popup_remove (sync, popup); } } static void popup_destroy (GtkObject *menu, Popup *popup) { BonoboUISyncMenu *smenu = g_object_get_data ( G_OBJECT (menu), UI_SYNC_MENU_KEY); g_return_if_fail (smenu != NULL); popup_remove (smenu, popup); } static gboolean node_is_popup (BonoboUINode *node) { if (!node) return FALSE; if (bonobo_ui_node_has_name (node, "popup")) return TRUE; else if (bonobo_ui_node_has_name (node, "menu")) return FALSE; else return node_is_popup (bonobo_ui_node_parent (node)); } static void add_tearoff (BonoboUINode *node, GtkMenu *menu, gboolean popup_init) { GtkWidget *tearoff; gboolean has_tearoff; has_tearoff = bonobo_ui_preferences_get_menus_have_tearoff (); if (node) { const char *txt; txt = bonobo_ui_node_peek_attr (node, "tearoff"); if (txt) has_tearoff = atoi (txt); else if (node_is_popup (node)) has_tearoff = FALSE; } else if (popup_init) has_tearoff = FALSE; /* * Create the tearoff item at the beginning of the menu shell, * if appropriate. */ if (has_tearoff) { tearoff = gtk_tearoff_menu_item_new (); gtk_widget_show (tearoff); gtk_menu_shell_prepend (GTK_MENU_SHELL (menu), tearoff); } } void bonobo_ui_sync_menu_add_popup (BonoboUISyncMenu *smenu, GtkMenu *menu, const char *path) { Popup *popup; BonoboUINode *node; GList *children; g_return_if_fail (path != NULL); g_return_if_fail (GTK_IS_MENU (menu)); g_return_if_fail (BONOBO_IS_UI_SYNC_MENU (smenu)); bonobo_ui_sync_menu_remove_popup (smenu, path); popup = g_new (Popup, 1); popup->menu = menu; popup->path = g_strdup (path); if ((children = gtk_container_get_children (GTK_CONTAINER (menu)))) { g_warning ("Extraneous items in blank popup"); g_list_free (children); } add_tearoff (bonobo_ui_engine_get_path ( smenu->parent.engine, path), menu, TRUE); smenu->popups = g_slist_prepend (smenu->popups, popup); g_object_set_data (G_OBJECT (menu), UI_SYNC_MENU_KEY, smenu); g_signal_connect (G_OBJECT (menu), "destroy", G_CALLBACK (popup_destroy), popup); node = bonobo_ui_engine_get_path (smenu->parent.engine, path); bonobo_ui_engine_dirty_tree (smenu->parent.engine, node); } static void radio_group_remove (GtkRadioMenuItem *menuitem, char *group_name) { GtkRadioMenuItem *master, *insert; BonoboUISyncMenu *menu_sync; GSList *l; menu_sync = g_object_get_data ( G_OBJECT (menuitem), MAGIC_RADIO_GROUP_KEY); master = g_hash_table_lookup (menu_sync->radio_groups, group_name); g_return_if_fail (master != NULL); l = master->group; while (l && l->data == menuitem) l = l->next; if (l) insert = g_object_ref (l->data); else insert = NULL; g_hash_table_remove (menu_sync->radio_groups, group_name); if (insert)/* Entries left in group */ g_hash_table_insert ( menu_sync->radio_groups, g_strdup (group_name), insert); g_object_unref (menu_sync); } static void radio_group_add (BonoboUISyncMenu *menu_sync, GtkRadioMenuItem *menuitem, const char *group_name) { GtkRadioMenuItem *master; g_return_if_fail (menuitem != NULL); g_return_if_fail (menu_sync != NULL); g_return_if_fail (group_name != NULL); if (!(master = g_hash_table_lookup (menu_sync->radio_groups, group_name))) g_hash_table_insert (menu_sync->radio_groups, g_strdup (group_name), g_object_ref (menuitem)); else { gtk_radio_menu_item_set_group ( menuitem, gtk_radio_menu_item_get_group (master)); /* * Since we created this item without a group, it's * active, but now we are adding it to a group so it * should not be active. */ GTK_CHECK_MENU_ITEM (menuitem)->active = FALSE; } g_object_set_data (G_OBJECT (menuitem), MAGIC_RADIO_GROUP_KEY, g_object_ref (menu_sync)); g_signal_connect_data (G_OBJECT (menuitem), "destroy", G_CALLBACK (radio_group_remove), g_strdup (group_name), (GClosureNotify) g_free, 0); } static GtkWidget * get_item_widget (GtkWidget *widget) { if (!widget) return NULL; if (GTK_IS_MENU (widget)) return gtk_menu_get_attach_widget ( GTK_MENU (widget)); return NULL; } static gboolean label_same (GtkBin *menu_widget, const char *txt) { GtkWidget *label; return menu_widget && (label = menu_widget->child) && GTK_IS_LABEL (label) && ((GtkLabel *)label)->label && !strcmp (((GtkLabel *)label)->label, txt); } static gboolean widget_has_accel (GtkWidget *widget, GtkAccelGroup *accel_group, guint key, GdkModifierType mods) { int i; guint n_entries; GList *l_tmp, *l_closures = gtk_widget_list_accel_closures (widget); GtkAccelGroupEntry *entry = gtk_accel_group_query (accel_group, key, mods, &n_entries); if (n_entries) for (l_tmp = l_closures; l_tmp; l_tmp = l_tmp->next) for (i=0; idata) { g_list_free (l_closures); return TRUE; } g_list_free (l_closures); return FALSE; } static void impl_bonobo_ui_sync_menu_state (BonoboUISync *sync, BonoboUINode *node, BonoboUINode *cmd_node, GtkWidget *widget, GtkWidget *parent) { GtkWidget *menu_widget; BonoboUISyncMenu *sync_menu = BONOBO_UI_SYNC_MENU (sync); BonoboUIEngine *engine = sync->engine; char *type, *txt, *label_attr; g_return_if_fail (parent != NULL); if (bonobo_ui_node_has_name (node, "placeholder") || bonobo_ui_node_has_name (node, "separator")) { bonobo_ui_engine_queue_update ( engine, widget, node, cmd_node); return; } if (bonobo_ui_node_has_name (node, "submenu")) { menu_widget = get_item_widget (widget); if (!menu_widget) menu_widget = widget; /* Recurse here just once, don't duplicate in the build. */ bonobo_ui_engine_update_node (engine, sync, node); } else if (bonobo_ui_node_has_name (node, "menuitem")) menu_widget = widget; else return; if ((type = bonobo_ui_engine_get_attr (node, cmd_node, "type"))) bonobo_ui_node_free_string (type); else { GtkImageMenuItem *image_menu_item; image_menu_item = (GtkImageMenuItem *) menu_widget; if (!bonobo_ui_preferences_get_menus_have_icons ()) gtk_image_menu_item_set_image (image_menu_item, NULL); else if (bonobo_ui_node_peek_attr (node, "pixtype") || bonobo_ui_node_peek_attr (cmd_node, "pixtype")) { GtkWidget *image; image = gtk_image_menu_item_get_image (image_menu_item); if (!image) { image = gtk_image_new (); g_object_set (G_OBJECT (image_menu_item), "image", image, NULL); } bonobo_ui_util_xml_set_image ( GTK_IMAGE (image), node, cmd_node, GTK_ICON_SIZE_MENU); gtk_widget_show (image); } } if ((label_attr = bonobo_ui_engine_get_attr (node, cmd_node, "label"))) { GtkWidget *label; if (!label_same (GTK_BIN (menu_widget), label_attr)) { if (!GTK_BIN (menu_widget)->child) { label = gtk_accel_label_new (label_attr); g_object_freeze_notify (G_OBJECT (label)); /* this widget has a mnemonic */ gtk_label_set_use_underline (GTK_LABEL (label), TRUE); /* Setup the widget. */ gtk_misc_set_alignment (GTK_MISC (label), 0.0, 0.5); gtk_widget_show (label); gtk_container_add (GTK_CONTAINER (menu_widget), label); } else { label = GTK_BIN (menu_widget)->child; g_object_freeze_notify (G_OBJECT (label)); gtk_label_set_text_with_mnemonic (GTK_LABEL (label), label_attr); } gtk_accel_label_set_accel_widget ( GTK_ACCEL_LABEL (label), menu_widget); g_object_thaw_notify (G_OBJECT (label)); } /* else g_warning ("No change in label '%s'", label_attr); */ bonobo_ui_node_free_string (label_attr); } if ((txt = bonobo_ui_engine_get_attr (node, cmd_node, "accel"))) { guint key; GdkModifierType mods; /* fprintf (stderr, "Accel name is afterwards '%s'\n", text); */ bonobo_ui_util_accel_parse (txt, &key, &mods); bonobo_ui_node_free_string (txt); if (!key) /* FIXME: this looks strange */ return; if (! widget_has_accel (menu_widget, sync_menu->accel_group, key, mods)) gtk_widget_add_accelerator (menu_widget, "activate", sync_menu->accel_group, key, mods, GTK_ACCEL_VISIBLE); } bonobo_ui_engine_queue_update ( engine, menu_widget, node, cmd_node); } static void put_hint_in_statusbar (GtkWidget *menuitem, BonoboUIEngine *engine) { BonoboUINode *node; BonoboUINode *cmd_node; char *hint; g_return_if_fail (engine != NULL); node = bonobo_ui_engine_widget_get_node (menuitem); g_return_if_fail (node != NULL); cmd_node = bonobo_ui_engine_get_cmd_node (engine, node); hint = bonobo_ui_engine_get_attr (node, cmd_node, "tip"); /* g_warning ("Getting tooltip on '%s', '%s' : '%s'", bonobo_ui_xml_make_path (node), cmd_node ? bonobo_ui_xml_make_path (cmd_node) : "no cmd", hint);*/ if (!hint) return; bonobo_ui_engine_add_hint (engine, hint); bonobo_ui_node_free_string (hint); } static void remove_hint_from_statusbar (GtkWidget *menuitem, BonoboUIEngine *engine) { bonobo_ui_engine_remove_hint (engine); } static gint exec_verb_cb (GtkWidget *item, BonoboUIEngine *engine) { bonobo_ui_engine_emit_verb_on_w (engine, GTK_WIDGET (item)); return FALSE; } static gint menu_toggle_emit_ui_event (GtkCheckMenuItem *item, BonoboUIEngine *engine) { const char *state; if (item->active) state = "1"; else state = "0"; bonobo_ui_engine_emit_event_on_w ( engine, GTK_WIDGET (item), state); return FALSE; } static gint sucking_gtk_keybindings_cb (GtkWidget *widget, GdkEventKey *event, gpointer dummy) { static GtkWidgetClass *klass = NULL; static guint id = 0; gboolean ret; if (!klass) klass = gtk_type_class (GTK_TYPE_MENU_SHELL); if (!id) id = g_signal_lookup ("key_press_event", GTK_TYPE_WIDGET); if (klass->key_press_event (widget, event)) ret = TRUE; else ret = FALSE; g_signal_stop_emission (widget, id, 0); return ret; } static GtkWidget * impl_bonobo_ui_sync_menu_build (BonoboUISync *sync, BonoboUINode *node, BonoboUINode *cmd_node, int *pos, GtkWidget *parent) { BonoboUIEngine *engine = sync->engine; BonoboUISyncMenu *menu_sync = BONOBO_UI_SYNC_MENU (sync); GtkWidget *menu_widget = NULL; GtkWidget *ret_widget; char *type, *stock_id; if (!parent) /* A popup without a GtkMenu inserted as yet. */ return NULL; if (bonobo_ui_node_has_name (node, "separator")) { menu_widget = gtk_separator_menu_item_new (); } else if (bonobo_ui_node_has_name (node, "control")) { GtkWidget *control = bonobo_ui_engine_build_control ( engine, node); if (!control) return NULL; else if (!GTK_IS_MENU_ITEM (control)) { menu_widget = gtk_menu_item_new (); gtk_container_add (GTK_CONTAINER (menu_widget), control); } else menu_widget = control; } else if (bonobo_ui_node_has_name (node, "menuitem") || bonobo_ui_node_has_name (node, "submenu")) { if ((stock_id = bonobo_ui_engine_get_attr (node, cmd_node, "stockid"))) { GtkStockItem stock_item; GtkIconSet *icon_set; if (!gtk_stock_lookup (stock_id, &stock_item)) g_warning ("Unknown stock id '%s' on %s", stock_id, bonobo_ui_xml_make_path (node)); else { gchar *label, *accel; if (!bonobo_ui_node_has_attr (node, "label") && !bonobo_ui_node_has_attr (cmd_node, "label")) { label = dgettext (stock_item.translation_domain, stock_item.label); bonobo_ui_node_set_attr (node, "label", label); } if (!bonobo_ui_node_has_attr (node, "accel") && !bonobo_ui_node_has_attr (cmd_node, "accel")) { accel = bonobo_ui_util_accel_name (stock_item.keyval, stock_item.modifier); bonobo_ui_node_set_attr (node, "accel", accel); g_free (accel); } } icon_set = gtk_icon_factory_lookup_default (stock_id); if (icon_set) { if (!bonobo_ui_node_has_attr (node, "pixtype") && !bonobo_ui_node_has_attr (cmd_node, "pixtype")) bonobo_ui_node_set_attr (node, "pixtype", "stock"); if (!bonobo_ui_node_has_attr (node, "pixname") && !bonobo_ui_node_has_attr (cmd_node, "pixname")) bonobo_ui_node_set_attr (node, "pixname", stock_id); } g_free (stock_id); } /* Create menu item */ if ((type = bonobo_ui_engine_get_attr (node, cmd_node, "type"))) { if (!strcmp (type, "radio")) { char *group = bonobo_ui_engine_get_attr (node, cmd_node, "group"); menu_widget = gtk_radio_menu_item_new (NULL); if (group) radio_group_add ( BONOBO_UI_SYNC_MENU (sync), GTK_RADIO_MENU_ITEM (menu_widget), group); bonobo_ui_node_free_string (group); } else if (!strcmp (type, "toggle")) menu_widget = gtk_check_menu_item_new (); else menu_widget = NULL; g_signal_connect (menu_widget, "toggled", G_CALLBACK (menu_toggle_emit_ui_event), engine); bonobo_ui_node_free_string (type); } else { /* We always use an image menu item, it doesn't hurt. */ menu_widget = gtk_image_menu_item_new (); } if (!menu_widget) return NULL; g_signal_connect (G_OBJECT (menu_widget), "select", G_CALLBACK (put_hint_in_statusbar), engine); g_signal_connect (G_OBJECT (menu_widget), "deselect", G_CALLBACK (remove_hint_from_statusbar), engine); } if (!menu_widget) return NULL; if (bonobo_ui_node_has_name (node, "submenu")) { GtkMenuShell *shell; GtkMenu *menu; shell = GTK_MENU_SHELL (parent); g_signal_connect (G_OBJECT (shell), "key_press_event", G_CALLBACK (sucking_gtk_keybindings_cb), NULL); /* Create the menu shell. */ menu = GTK_MENU (gtk_menu_new ()); g_signal_connect (G_OBJECT (menu), "key_press_event", G_CALLBACK (sucking_gtk_keybindings_cb), NULL); gtk_menu_set_accel_group (menu, menu_sync->accel_group); add_tearoff (node, GTK_MENU (menu), FALSE); /* * Associate this menu shell with the menu item for * this submenu. */ gtk_menu_item_set_submenu (GTK_MENU_ITEM (menu_widget), GTK_WIDGET (menu)); /* We don't recurse here, it is done once in the state set */ gtk_widget_show (GTK_WIDGET (menu)); gtk_widget_show (GTK_WIDGET (shell)); ret_widget = GTK_WIDGET (menu); } else ret_widget = menu_widget; if (!GTK_IS_CHECK_MENU_ITEM (menu_widget)) g_signal_connect (G_OBJECT (menu_widget), "activate", G_CALLBACK (exec_verb_cb), engine); g_signal_connect (G_OBJECT (menu_widget), "key_press_event", G_CALLBACK (sucking_gtk_keybindings_cb), NULL); gtk_widget_show (menu_widget); gtk_menu_shell_insert (GTK_MENU_SHELL (parent), menu_widget, (*pos)++); return ret_widget; } static GtkWidget * impl_bonobo_ui_sync_menu_build_placeholder (BonoboUISync *sync, BonoboUINode *node, BonoboUINode *cmd_node, int *pos, GtkWidget *parent) { GtkWidget *widget; if (!parent) /* A popup without a GtkMenu inserted as yet. */ return NULL; widget = gtk_separator_menu_item_new (); gtk_menu_shell_insert (GTK_MENU_SHELL (parent), GTK_WIDGET (widget), (*pos)++); return widget; } static GList * impl_bonobo_ui_sync_menu_get_widgets (BonoboUISync *sync, BonoboUINode *node) { GtkWidget *widget; widget = bonobo_ui_engine_node_get_widget (sync->engine, node); if (widget) return gtk_container_get_children (GTK_CONTAINER (widget)); else return NULL; /* A popup child with no GtkMenu yet */ } static void impl_bonobo_ui_sync_menu_state_update (BonoboUISync *sync, GtkWidget *widget, const char *new_state) { if (GTK_IS_CHECK_MENU_ITEM (widget)) { #ifdef STATE_SYNC_DEBUG g_warning ("Setting check menu item '%p' to '%s'", widget, state); #endif gtk_check_menu_item_set_active ( GTK_CHECK_MENU_ITEM (widget), atoi (new_state)); } else g_warning ("TESTME: strange, setting " "state '%s' on weird object '%s'", new_state, g_type_name_from_instance ( (GTypeInstance *) widget)); } static void impl_dispose (GObject *object) { BonoboUISyncMenu *sync = (BonoboUISyncMenu *) object; if (sync->menu) { gtk_widget_destroy (GTK_WIDGET (sync->menu)); g_object_unref (sync->menu); sync->menu = NULL; } if (sync->menu_dock_item) { g_object_unref (sync->menu_dock_item); sync->menu_dock_item = NULL; } if (sync->accel_group) { g_object_unref (sync->accel_group); sync->accel_group = NULL; } if (sync->radio_groups) { GHashTable *dest = sync->radio_groups; sync->radio_groups = NULL; g_hash_table_destroy (dest); } parent_class->dispose (object); } static gboolean impl_bonobo_ui_sync_menu_ignore_widget (BonoboUISync *sync, GtkWidget *widget) { return GTK_IS_TEAROFF_MENU_ITEM (widget); } static void impl_bonobo_ui_sync_menu_update_root (BonoboUISync *sync, BonoboUINode *root) { BonoboUISyncMenu *smenu = BONOBO_UI_SYNC_MENU (sync); const char *txt; gboolean detachable; if (bonobo_ui_node_has_name (root, "menu") && smenu->menu_dock_item) bonobo_ui_sync_do_show_hide ( sync, root, NULL, smenu->menu_dock_item); if ((txt = bonobo_ui_node_peek_attr (root, "behavior")) && strstr (txt, "detachable")) detachable = TRUE; else detachable = bonobo_ui_preferences_get_menubar_detachable (); bonobo_dock_item_set_locked (BONOBO_DOCK_ITEM (smenu->menu_dock_item), !detachable); } static void impl_bonobo_ui_sync_menu_stamp_root (BonoboUISync *sync) { BonoboUISyncMenu *smenu = BONOBO_UI_SYNC_MENU (sync); BonoboUINode *node; GSList *l; #ifdef WIDGET_SYNC_DEBUG fprintf (stderr, "Stamping menu sync's roots\n"); #endif node = bonobo_ui_engine_get_path (sync->engine, "/menu"); if (smenu->menu) { GtkWidget *widget = GTK_WIDGET (smenu->menu); bonobo_ui_engine_stamp_root (sync->engine, node, widget); bonobo_ui_sync_do_show_hide (sync, node, NULL, widget); } for (l = smenu->popups; l; l = l->next) { Popup *popup = l->data; if ((node = bonobo_ui_engine_get_path (sync->engine, popup->path))) { #ifdef WIDGET_SYNC_DEBUG fprintf (stderr, "Stamping popup root '%s(%p)' with '%p'\n", popup->path, node, popup->menu); #endif bonobo_ui_engine_stamp_root (sync->engine, node, GTK_WIDGET (popup->menu)); } else g_warning ("Can't find path '%s' for popup widget", popup->path); } if ((node = bonobo_ui_engine_get_path (sync->engine, "/popups"))) bonobo_ui_engine_node_set_dirty (sync->engine, node, FALSE); } static gboolean impl_bonobo_ui_sync_menu_can_handle (BonoboUISync *sync, BonoboUINode *node) { if (!menu_id) { menu_id = g_quark_from_static_string ("menu"); popups_id = g_quark_from_static_string ("popups"); submenu_id = g_quark_from_static_string ("submenu"); menuitem_id = g_quark_from_static_string ("menuitem"); } return (node->name_id == menu_id || node->name_id == popups_id || node->name_id == submenu_id || node->name_id == menuitem_id); } /* We need to map the shell to the item */ static GtkWidget * impl_bonobo_ui_sync_menu_get_attached (BonoboUISync *sync, GtkWidget *widget, BonoboUINode *node) { return get_item_widget (widget); } static GtkWidget * impl_bonobo_ui_sync_menu_wrap_widget (BonoboUISync *sync, GtkWidget *custom_widget) { if (!GTK_IS_MENU_ITEM (custom_widget)) { GtkWidget *widget; widget = gtk_menu_item_new (); gtk_container_add (GTK_CONTAINER (widget), custom_widget); return widget; } else return custom_widget; } static void class_init (BonoboUISyncClass *sync_class) { GObjectClass *object_class; parent_class = g_type_class_peek_parent (sync_class); object_class = G_OBJECT_CLASS (sync_class); object_class->dispose = impl_dispose; sync_class->sync_state = impl_bonobo_ui_sync_menu_state; sync_class->build = impl_bonobo_ui_sync_menu_build; sync_class->build_placeholder = impl_bonobo_ui_sync_menu_build_placeholder; sync_class->get_widgets = impl_bonobo_ui_sync_menu_get_widgets; sync_class->ignore_widget = impl_bonobo_ui_sync_menu_ignore_widget; sync_class->update_root = impl_bonobo_ui_sync_menu_update_root; sync_class->state_update = impl_bonobo_ui_sync_menu_state_update; sync_class->stamp_root = impl_bonobo_ui_sync_menu_stamp_root; sync_class->can_handle = impl_bonobo_ui_sync_menu_can_handle; sync_class->get_attached = impl_bonobo_ui_sync_menu_get_attached; sync_class->wrap_widget = impl_bonobo_ui_sync_menu_wrap_widget; } static void init (BonoboUISyncMenu *sync) { sync->radio_groups = g_hash_table_new_full ( g_str_hash, g_str_equal, (GDestroyNotify) g_free, (GDestroyNotify) g_object_unref); } GType bonobo_ui_sync_menu_get_type (void) { static GType type = 0; if (type == 0) { GTypeInfo info = { sizeof (BonoboUISyncMenuClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) class_init, NULL, /* class_finalize */ NULL, /* class_data */ sizeof (BonoboUISyncMenu), 0, /* n_preallocs */ (GInstanceInitFunc) init }; type = g_type_register_static (PARENT_TYPE, "BonoboUISyncMenu", &info, 0); } return type; } BonoboUISync * bonobo_ui_sync_menu_new (BonoboUIEngine *engine, GtkMenuBar *menu, GtkWidget *menu_dock_item, GtkAccelGroup *group) { BonoboUISyncMenu *sync; g_return_val_if_fail (BONOBO_IS_UI_ENGINE (engine), NULL); sync = g_object_new (BONOBO_TYPE_UI_SYNC_MENU, NULL); sync->menu = menu ? g_object_ref (menu) : NULL; sync->menu_dock_item = menu_dock_item ? g_object_ref (menu_dock_item) : menu_dock_item; sync->accel_group = group ? g_object_ref (group) : gtk_accel_group_new (); return bonobo_ui_sync_construct ( BONOBO_UI_SYNC (sync), engine, TRUE, TRUE); } libbonoboui-2.24.5/bonobo/bonobo-file-selector-util.c0000644000076400007640000002443211173072741017456 00000000000000/* * bonobo-file-selector-util.c - functions for getting files from a * selector * * Authors: * Jacob Berkman * Paolo Maggi * * Copyright 2001-2002 Ximian, Inc. * */ #include #include "bonobo-file-selector-util.h" #include #include #include #include #include #include #include #define GET_MODE(w) (GPOINTER_TO_INT (g_object_get_data (G_OBJECT (w), "GnomeFileSelectorMode"))) #define SET_MODE(w, m) (g_object_set_data (G_OBJECT (w), "GnomeFileSelectorMode", GINT_TO_POINTER (m))) typedef enum { FILESEL_OPEN, FILESEL_OPEN_MULTI, FILESEL_SAVE } FileselMode; static GQuark user_data_id = 0; static gint delete_file_selector (GtkWidget *d, GdkEventAny *e, gpointer data) { gtk_widget_hide (d); gtk_main_quit (); return TRUE; } static void listener_cb (BonoboListener *listener, const gchar *event_name, const CORBA_any *any, CORBA_Environment *ev, gpointer data) { GtkWidget *dialog; CORBA_sequence_CORBA_string *seq; char *subtype; dialog = data; gtk_widget_hide (dialog); subtype = bonobo_event_subtype (event_name); if (!strcmp (subtype, "Cancel")) goto cancel_clicked; seq = any->_value; if (seq->_length < 1) goto cancel_clicked; if (GET_MODE (dialog) == FILESEL_OPEN_MULTI) { char **strv; int i; if (seq->_length == 0) goto cancel_clicked; strv = g_new (char *, seq->_length + 1); for (i = 0; i < seq->_length; i++) strv[i] = g_strdup (seq->_buffer[i]); strv[i] = NULL; g_object_set_qdata (G_OBJECT (dialog), user_data_id, strv); } else g_object_set_qdata (G_OBJECT (dialog), user_data_id, g_strdup (seq->_buffer[0])); cancel_clicked: g_free (subtype); gtk_main_quit (); } static BonoboWidget * create_control (gboolean enable_vfs, FileselMode mode) { CORBA_Environment ev; BonoboWidget *bw; char *moniker; moniker = g_strdup_printf ( "OAFIID:GNOME_FileSelector_Control!" "Application=%s;" "EnableVFS=%d;" "MultipleSelection=%d;" "SaveMode=%d", g_get_prgname (), enable_vfs, mode == FILESEL_OPEN_MULTI, mode == FILESEL_SAVE); bw = g_object_new (BONOBO_TYPE_WIDGET, NULL); CORBA_exception_init (&ev); bw = bonobo_widget_construct_control ( bw, moniker, CORBA_OBJECT_NIL, &ev); CORBA_exception_free (&ev); g_free (moniker); return bw; } static GtkWindow * create_bonobo_selector (gboolean enable_vfs, FileselMode mode, const char *mime_types, const char *default_path, const char *default_filename) { GtkWidget *dialog; BonoboWidget *control; control = create_control (enable_vfs, mode); if (!control) return NULL; dialog = gtk_window_new (GTK_WINDOW_TOPLEVEL); gtk_container_add (GTK_CONTAINER (dialog), GTK_WIDGET (control)); gtk_window_set_default_size (GTK_WINDOW (dialog), 560, 450); bonobo_event_source_client_add_listener ( bonobo_widget_get_objref (control), listener_cb, "GNOME/FileSelector/Control:ButtonClicked", NULL, dialog); if (mime_types) bonobo_widget_set_property ( control, "MimeTypes", TC_CORBA_string, mime_types, NULL); if (default_path) bonobo_widget_set_property ( control, "DefaultLocation", TC_CORBA_string, default_path, NULL); if (default_filename) bonobo_widget_set_property ( control, "DefaultFileName", TC_CORBA_string, default_filename, NULL); return GTK_WINDOW (dialog); } static void response_cb (GtkFileChooser *chooser, gint response, gpointer data) { gchar *file_name; if (response != GTK_RESPONSE_OK) { gtk_widget_hide (GTK_WIDGET (chooser)); gtk_main_quit (); g_object_set_qdata (G_OBJECT (chooser), user_data_id, NULL); return; } file_name = gtk_file_chooser_get_filename (chooser); if (file_name == NULL || !strlen (file_name)) { g_free (file_name); return; } if (GET_MODE (chooser) == FILESEL_OPEN_MULTI) { gchar **strv; GSList *files = gtk_file_chooser_get_filenames (chooser); GSList *iter; int i; strv = g_new (gchar *, (g_slist_length (files) + 1)); for (iter = files, i = 0; iter != NULL; iter = iter->next, i++) strv[i] = iter->data; strv[i] = NULL; g_slist_free (files); g_object_set_qdata (G_OBJECT (chooser), user_data_id, strv); } else g_object_set_qdata (G_OBJECT (chooser), user_data_id, g_strdup (file_name)); gtk_widget_hide (GTK_WIDGET (chooser)); gtk_main_quit (); g_free (file_name); } static GtkWindow * create_gtk_selector (FileselMode mode, const char *default_path, const char *default_filename) { GtkWidget *chooser; chooser = gtk_file_chooser_dialog_new (NULL, NULL, mode == FILESEL_SAVE ? GTK_FILE_CHOOSER_ACTION_SAVE : GTK_FILE_CHOOSER_ACTION_OPEN, GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL, mode == FILESEL_SAVE ? GTK_STOCK_SAVE : GTK_STOCK_OPEN, GTK_RESPONSE_OK, NULL); gtk_window_set_default_size (GTK_WINDOW (chooser), 600, 400); gtk_dialog_set_default_response (GTK_DIALOG (chooser), GTK_RESPONSE_OK); g_signal_connect (G_OBJECT (chooser), "response", G_CALLBACK (response_cb), NULL); if (default_path) gtk_file_chooser_set_current_folder (GTK_FILE_CHOOSER (chooser), default_path); if (default_filename) gtk_file_chooser_set_current_name (GTK_FILE_CHOOSER (chooser), default_filename); if (mode == FILESEL_OPEN_MULTI) gtk_file_chooser_set_select_multiple (GTK_FILE_CHOOSER (chooser), TRUE); return GTK_WINDOW (chooser); } static gpointer run_file_selector (GtkWindow *parent, gboolean enable_vfs, FileselMode mode, const char *title, const char *mime_types, const char *default_path, const char *default_filename) { GtkWindow *dialog = NULL; gpointer retval; gpointer data; gboolean using_bonobo_filesel=FALSE; if (!user_data_id) user_data_id = g_quark_from_static_string ("UserData"); if (!g_getenv ("GNOME_FILESEL_DISABLE_BONOBO")) { using_bonobo_filesel = TRUE; dialog = create_bonobo_selector (enable_vfs, mode, mime_types, default_path, default_filename); } if (!dialog) { dialog = create_gtk_selector (mode, default_path, default_filename); using_bonobo_filesel = FALSE; } SET_MODE (dialog, mode); gtk_window_set_title (dialog, title); gtk_window_set_modal (dialog, TRUE); if (parent) gtk_window_set_transient_for (dialog, parent); g_signal_connect (GTK_OBJECT (dialog), "delete_event", G_CALLBACK (delete_file_selector), dialog); gtk_widget_show_all (GTK_WIDGET (dialog)); gtk_main (); data = g_object_get_qdata (G_OBJECT (dialog), user_data_id); if (data) { #ifndef G_OS_WIN32 if (enable_vfs && !using_bonobo_filesel && (mode != FILESEL_OPEN_MULTI)) { retval = g_filename_to_uri (data, NULL, NULL); g_free (data); } else if (enable_vfs && !using_bonobo_filesel && (mode == FILESEL_OPEN_MULTI)) { gint i; gchar **files = data; for (i = 0; files[i]; ++i) { gchar *tmp = files[i]; files[i] = g_filename_to_uri (tmp, NULL, NULL); g_free (tmp); } retval = files; } else retval = data; #else retval = data; #endif } else retval = NULL; gtk_widget_destroy (GTK_WIDGET (dialog)); return retval; } /** * bonobo_file_selector_open: * @parent: optional window the dialog should be a transient for. * @enable_vfs: if FALSE, restrict files to local paths. * @title: optional window title to use * @mime_types: optional list of mime types to provide filters for. * These are of the form: "HTML Files:text/html|Text Files:text/html,text/plain" * @default_path: optional directory to start in * * Creates and shows a modal open file dialog, waiting for the user to * select a file or cancel before returning. * * Return value: the URI (or plain file path if @enable_vfs is FALSE) * of the file selected, or NULL if cancel was pressed. **/ char * bonobo_file_selector_open (GtkWindow *parent, gboolean enable_vfs, const char *title, const char *mime_types, const char *default_path) { return run_file_selector (parent, enable_vfs, FILESEL_OPEN, title ? title : _("Select a file to open"), mime_types, default_path, NULL); } /** * bonobo_file_selector_open_multi: * @parent: optional window the dialog should be a transient for * @enable_vfs: if FALSE, restrict files to local paths. * @title: optional window title to use * @mime_types: optional list of mime types to provide filters for. * These are of the form: "HTML Files:text/html|Text Files:text/html,text/plain" * @default_path: optional directory to start in * * Creates and shows a modal open file dialog, waiting for the user to * select a file or cancel before returning. * * Return value: a NULL terminated string array of the selected URIs * (or local file paths if @enable_vfs is FALSE), or NULL if cancel * was pressed. **/ char ** bonobo_file_selector_open_multi (GtkWindow *parent, gboolean enable_vfs, const char *title, const char *mime_types, const char *default_path) { return run_file_selector (parent, enable_vfs, FILESEL_OPEN_MULTI, title ? title : _("Select files to open"), mime_types, default_path, NULL); } /** * bonobo_file_selector_save: * @parent: optional window the dialog should be a transient for * @enable_vfs: if FALSE, restrict files to local paths. * @title: optional window title to use * @mime_types: optional list of mime types to provide filters for. * These are of the form: "HTML Files:text/html|Text Files:text/html,text/plain" * @default_path: optional directory to start in * @default_filename: optional file name to default to * * Creates and shows a modal save file dialog, waiting for the user to * select a file or cancel before returning. * * Return value: the URI (or plain file path if @enable_vfs is FALSE) * of the file selected, or NULL if cancel was pressed. **/ char * bonobo_file_selector_save (GtkWindow *parent, gboolean enable_vfs, const char *title, const char *mime_types, const char *default_path, const char *default_filename) { return run_file_selector (parent, enable_vfs, FILESEL_SAVE, title ? title : _("Select a filename to save"), mime_types, default_path, default_filename); } libbonoboui-2.24.5/bonobo/bonobo-property-control.c0000644000076400007640000002124211173072741017304 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ /** * bonobo-property-control.c: Bonobo PropertyControl implementation * * Author: * Iain Holmes * * Copyright 2000, 2001 Ximian, Inc. */ #include #include #include #include #include #include #include #include struct _BonoboPropertyControlPrivate { BonoboPropertyControlGetControlFn get_fn; BonoboEventSource *event_source; void *closure; int page_count; }; enum { ACTION, LAST_SIGNAL }; #define PARENT_TYPE BONOBO_TYPE_OBJECT static GObjectClass *parent_class; static guint32 signals[LAST_SIGNAL] = { 0 }; static CORBA_long impl_Bonobo_PropertyControl__get_pageCount (PortableServer_Servant servant, CORBA_Environment *ev) { BonoboObject *bonobo_object; BonoboPropertyControl *property_control; BonoboPropertyControlPrivate *priv; bonobo_object = bonobo_object_from_servant (servant); property_control = BONOBO_PROPERTY_CONTROL (bonobo_object); priv = property_control->priv; return priv->page_count; } static Bonobo_Control impl_Bonobo_PropertyControl_getControl (PortableServer_Servant servant, CORBA_long pagenumber, CORBA_Environment *ev) { BonoboObject *bonobo_object; BonoboPropertyControl *property_control; BonoboPropertyControlPrivate *priv; BonoboControl *control; bonobo_object = bonobo_object_from_servant (servant); property_control = BONOBO_PROPERTY_CONTROL (bonobo_object); priv = property_control->priv; if (pagenumber < 0 || pagenumber >= priv->page_count) { CORBA_exception_set (ev, CORBA_USER_EXCEPTION, ex_Bonobo_PropertyControl_NoPage, NULL); return CORBA_OBJECT_NIL; } control = priv->get_fn (property_control, pagenumber, priv->closure); if (control == NULL) return CORBA_OBJECT_NIL; return (Bonobo_Control) CORBA_Object_duplicate (BONOBO_OBJREF (control), ev); } static void impl_Bonobo_PropertyControl_notifyAction (PortableServer_Servant servant, CORBA_long pagenumber, Bonobo_PropertyControl_Action action, CORBA_Environment *ev) { BonoboObject *bonobo_object; BonoboPropertyControl *property_control; BonoboPropertyControlPrivate *priv; bonobo_object = bonobo_object_from_servant (servant); property_control = BONOBO_PROPERTY_CONTROL (bonobo_object); priv = property_control->priv; if (pagenumber < 0 || pagenumber >= priv->page_count) { CORBA_exception_set (ev, CORBA_USER_EXCEPTION, ex_Bonobo_PropertyControl_NoPage, NULL); return; } g_signal_emit (bonobo_object, signals [ACTION], 0, pagenumber, action); } static void bonobo_property_control_destroy (BonoboObject *object) { BonoboPropertyControl *property_control; property_control = BONOBO_PROPERTY_CONTROL (object); if (property_control->priv == NULL) return; g_free (property_control->priv); property_control->priv = NULL; BONOBO_OBJECT_CLASS (parent_class)->destroy (object); } static void bonobo_property_control_class_init (BonoboPropertyControlClass *klass) { BonoboObjectClass *object_class; POA_Bonobo_PropertyControl__epv *epv = &klass->epv; object_class = BONOBO_OBJECT_CLASS (klass); object_class->destroy = bonobo_property_control_destroy; signals [ACTION] = g_signal_new ("action", G_TYPE_FROM_CLASS (object_class), G_SIGNAL_RUN_FIRST, G_STRUCT_OFFSET (BonoboPropertyControlClass, action), NULL, NULL, bonobo_ui_marshal_VOID__INT_INT, G_TYPE_NONE, 2, G_TYPE_INT, G_TYPE_INT); parent_class = g_type_class_peek_parent (klass); epv->_get_pageCount = impl_Bonobo_PropertyControl__get_pageCount; epv->getControl = impl_Bonobo_PropertyControl_getControl; epv->notifyAction = impl_Bonobo_PropertyControl_notifyAction; } static void bonobo_property_control_init (BonoboPropertyControl *property_control) { BonoboPropertyControlPrivate *priv; priv = g_new (BonoboPropertyControlPrivate, 1); priv->get_fn = NULL; priv->closure = NULL; priv->page_count = 0; property_control->priv = priv; } BONOBO_TYPE_FUNC_FULL (BonoboPropertyControl, Bonobo_PropertyControl, PARENT_TYPE, bonobo_property_control) /** * bonobo_property_control_construct: * @property_control: A BonoboPropertyControl object. * @event_source: A BonoboEventSource object that will be aggregated onto the * property control. * @get_fn: Creation routine. * @closure: Data passed to closure routine. * * Initialises the BonoboPropertyControl object. * * Returns: The newly constructed BonoboPropertyControl. */ BonoboPropertyControl * bonobo_property_control_construct (BonoboPropertyControl *property_control, BonoboEventSource *event_source, BonoboPropertyControlGetControlFn get_fn, int num_pages, void *closure) { BonoboPropertyControlPrivate *priv; g_return_val_if_fail (BONOBO_IS_EVENT_SOURCE (event_source), NULL); g_return_val_if_fail (BONOBO_IS_PROPERTY_CONTROL (property_control), NULL); priv = property_control->priv; priv->get_fn = get_fn; priv->page_count = num_pages; priv->closure = closure; priv->event_source = event_source; bonobo_object_add_interface (BONOBO_OBJECT (property_control), BONOBO_OBJECT (priv->event_source)); return property_control; } /** * bonobo_property_control_new_full: * @get_fn: The function to be called when the getControl method is called. * @num_pages: The number of pages this property control has. * @event_source: The event source to use to emit events on. * @closure: The data to be passed into the @get_fn routine. * * Creates a BonoboPropertyControl object. * * Returns: A pointer to a newly created BonoboPropertyControl object. */ BonoboPropertyControl * bonobo_property_control_new_full (BonoboPropertyControlGetControlFn get_fn, int num_pages, BonoboEventSource *event_source, void *closure) { BonoboPropertyControl *property_control; g_return_val_if_fail (num_pages > 0, NULL); g_return_val_if_fail (BONOBO_IS_EVENT_SOURCE (event_source), NULL); property_control = g_object_new (bonobo_property_control_get_type (), NULL); return bonobo_property_control_construct ( property_control, event_source, get_fn, num_pages, closure); } /** * bonobo_property_control_new: * @get_fn: The function to be called when the getControl method is called. * @num_pages: The number of pages this property control has. * @closure: The data to be passed into the @get_fn routine * * Creates a BonoboPropertyControl object. * * Returns: A pointer to a newly created BonoboPropertyControl object. */ BonoboPropertyControl * bonobo_property_control_new (BonoboPropertyControlGetControlFn get_fn, int num_pages, void *closure) { BonoboEventSource *event_source; g_return_val_if_fail (num_pages > 0, NULL); event_source = bonobo_event_source_new (); return bonobo_property_control_new_full ( get_fn, num_pages, event_source, closure); } /** * bonobo_property_control_changed: * @property_control: The BonoboPropertyControl that has changed. * @opt_ev: An optional CORBA_Environment for exception handling. * * Tells the server that a value in the property control has been changed, * and that it should indicate this somehow. */ void bonobo_property_control_changed (BonoboPropertyControl *property_control, CORBA_Environment *opt_ev) { BonoboPropertyControlPrivate *priv; CORBA_Environment ev; CORBA_any any; CORBA_short s; g_return_if_fail (property_control != NULL); g_return_if_fail (BONOBO_IS_PROPERTY_CONTROL (property_control)); priv = property_control->priv; if (opt_ev == NULL) CORBA_exception_init (&ev); else ev = *opt_ev; s = 0; any._type = (CORBA_TypeCode) TC_CORBA_short; any._value = &s; bonobo_event_source_notify_listeners (priv->event_source, BONOBO_PROPERTY_CONTROL_CHANGED, &any, &ev); if (opt_ev == NULL && BONOBO_EX (&ev)) { g_warning ("ERROR: %s", CORBA_exception_id (&ev)); } if (opt_ev == NULL) CORBA_exception_free (&ev); } /** * bonobo_property_control_get_event_source: * @property_control: The BonoboPropertyControl. * * Returns the BonoboEventSource that @property_control uses. * Returns: A BonoboEventSource. */ BonoboEventSource * bonobo_property_control_get_event_source (BonoboPropertyControl *property_control) { g_return_val_if_fail (property_control != NULL, NULL); g_return_val_if_fail (BONOBO_IS_PROPERTY_CONTROL (property_control), NULL); return property_control->priv->event_source; } libbonoboui-2.24.5/bonobo/bonobo-ui-toolbar.c0000644000076400007640000011003011173072741016011 00000000000000/* -*- Mode: C; indent-tabs-mode: t; c-basic-offset: 8; tab-width: 8 -*- */ /** * bonobo-ui-toolbar.h * * Author: * Ettore Perazzoli (ettore@ximian.com) * * Copyright (C) 2000 Ximian, Inc. */ #undef GTK_DISABLE_DEPRECATED #include #include #include #include #include #include G_DEFINE_TYPE (BonoboUIToolbar, bonobo_ui_toolbar, GTK_TYPE_CONTAINER) enum { PROP_0, PROP_ORIENTATION, PROP_IS_FLOATING, PROP_PREFERRED_WIDTH, PROP_PREFERRED_HEIGHT }; struct _BonoboUIToolbarPrivate { /* The orientation of this toolbar. */ GtkOrientation orientation; /* Is the toolbar currently floating */ gboolean is_floating; /* The style of this toolbar. */ BonoboUIToolbarStyle style; /* Styles to use in different orientations */ BonoboUIToolbarStyle hstyle; BonoboUIToolbarStyle vstyle; /* Sizes of the toolbar. This is actually the height for horizontal toolbars and the width for vertical toolbars. */ int max_width, max_height; int total_width, total_height; /* position of left edge of left-most pack-end item */ int end_position; /* List of all the items in the toolbar. Both the ones that have been unparented because they don't fit, and the ones that are visible. The BonoboUIToolbarPopupItem is not here though. */ GList *items; /* Pointer to the first element in the `items' list that doesn't fit in the available space. This is updated at size_allocate. */ GList *first_not_fitting_item; /* The pop-up button. When clicked, it pops up a window with all the items that don't fit. */ BonoboUIToolbarItem *popup_item; /* The window we pop-up when the pop-up item is clicked. */ GtkWidget *popup_window; /* The vbox within the pop-up window. */ GtkWidget *popup_window_vbox; /* Whether we have moved items to the pop-up window. This is to prevent the size_allocation code to incorrectly hide the pop-up button in that case. */ gboolean items_moved_to_popup_window; GtkTooltips *tooltips; }; enum { SET_ORIENTATION, STYLE_CHANGED, LAST_SIGNAL }; static guint signals[LAST_SIGNAL] = { 0 }; /* Width of the pop-up window. */ #define POPUP_WINDOW_WIDTH 200 /* Utility functions. */ static void parentize_widget (BonoboUIToolbar *toolbar, GtkWidget *widget) { g_assert (widget->parent == NULL); /* The following is done according to the Bible, widget_system.txt, IV, 1. */ gtk_widget_set_parent (widget, GTK_WIDGET (toolbar)); } static void set_attributes_on_child (BonoboUIToolbarItem *item, GtkOrientation orientation, BonoboUIToolbarStyle style) { bonobo_ui_toolbar_item_set_orientation (item, orientation); switch (style) { case BONOBO_UI_TOOLBAR_STYLE_PRIORITY_TEXT: if (! bonobo_ui_toolbar_item_get_want_label (item)) bonobo_ui_toolbar_item_set_style (item, BONOBO_UI_TOOLBAR_ITEM_STYLE_ICON_ONLY); else if (orientation == GTK_ORIENTATION_HORIZONTAL) bonobo_ui_toolbar_item_set_style (item, BONOBO_UI_TOOLBAR_ITEM_STYLE_ICON_AND_TEXT_HORIZONTAL); else bonobo_ui_toolbar_item_set_style (item, BONOBO_UI_TOOLBAR_ITEM_STYLE_ICON_AND_TEXT_VERTICAL); break; case BONOBO_UI_TOOLBAR_STYLE_ICONS_AND_TEXT: if (orientation == GTK_ORIENTATION_VERTICAL) bonobo_ui_toolbar_item_set_style (item, BONOBO_UI_TOOLBAR_ITEM_STYLE_ICON_AND_TEXT_HORIZONTAL); else bonobo_ui_toolbar_item_set_style (item, BONOBO_UI_TOOLBAR_ITEM_STYLE_ICON_AND_TEXT_VERTICAL); break; case BONOBO_UI_TOOLBAR_STYLE_ICONS_ONLY: bonobo_ui_toolbar_item_set_style (item, BONOBO_UI_TOOLBAR_ITEM_STYLE_ICON_ONLY); break; case BONOBO_UI_TOOLBAR_STYLE_TEXT_ONLY: bonobo_ui_toolbar_item_set_style (item, BONOBO_UI_TOOLBAR_ITEM_STYLE_TEXT_ONLY); break; default: g_assert_not_reached (); } } /* Callbacks to do widget housekeeping. */ static void item_destroy_cb (GtkObject *object, void *data) { BonoboUIToolbar *toolbar; BonoboUIToolbarPrivate *priv; toolbar = BONOBO_UI_TOOLBAR (data); priv = toolbar->priv; priv->items = g_list_remove (priv->items, object); g_object_unref (object); } static void item_activate_cb (BonoboUIToolbarItem *item, void *data) { BonoboUIToolbar *toolbar; BonoboUIToolbarPrivate *priv; toolbar = BONOBO_UI_TOOLBAR (data); priv = toolbar->priv; bonobo_ui_toolbar_toggle_button_item_set_active ( BONOBO_UI_TOOLBAR_TOGGLE_BUTTON_ITEM (priv->popup_item), FALSE); } static void item_set_want_label_cb (BonoboUIToolbarItem *item, gboolean want_label, void *data) { BonoboUIToolbar *toolbar; BonoboUIToolbarPrivate *priv; toolbar = BONOBO_UI_TOOLBAR (data); priv = toolbar->priv; set_attributes_on_child (item, priv->orientation, priv->style); gtk_widget_queue_resize (GTK_WIDGET (toolbar)); } /* The pop-up window foo. */ /* Return TRUE if there are actually any items in the pop-up menu. */ static void create_popup_window (BonoboUIToolbar *toolbar) { BonoboUIToolbarPrivate *priv; GtkWidget *hbox; GList *p; int row_width; priv = toolbar->priv; row_width = 0; hbox = NULL; for (p = priv->first_not_fitting_item; p != NULL; p = p->next) { GtkRequisition item_requisition; GtkWidget *item_widget; item_widget = GTK_WIDGET (p->data); if (! GTK_WIDGET_VISIBLE (item_widget) || bonobo_ui_toolbar_item_get_pack_end (BONOBO_UI_TOOLBAR_ITEM (item_widget))) continue; if (item_widget->parent != NULL) gtk_container_remove (GTK_CONTAINER (item_widget->parent), item_widget); gtk_widget_get_child_requisition (item_widget, &item_requisition); set_attributes_on_child (BONOBO_UI_TOOLBAR_ITEM (item_widget), GTK_ORIENTATION_HORIZONTAL, priv->style); if (hbox == NULL || (row_width > 0 && item_requisition.width + row_width > POPUP_WINDOW_WIDTH)) { hbox = gtk_hbox_new (FALSE, 0); gtk_box_pack_start (GTK_BOX (priv->popup_window_vbox), hbox, FALSE, TRUE, 0); gtk_widget_show (hbox); row_width = 0; } gtk_box_pack_start (GTK_BOX (hbox), item_widget, FALSE, TRUE, 0); row_width += item_requisition.width; } } static void hide_popup_window (BonoboUIToolbar *toolbar) { BonoboUIToolbarPrivate *priv; GList *p; priv = toolbar->priv; gdk_display_pointer_ungrab (gtk_widget_get_display (priv->popup_window), GDK_CURRENT_TIME); gtk_grab_remove (priv->popup_window); gtk_widget_hide (priv->popup_window); priv->items_moved_to_popup_window = FALSE; /* Reset the attributes on all the widgets that were moved to the window and move them back to the toolbar. */ for (p = priv->items; p != NULL; p = p->next) { GtkWidget *item_widget; item_widget = GTK_WIDGET (p->data); if (item_widget->parent != GTK_WIDGET (toolbar)) { set_attributes_on_child (BONOBO_UI_TOOLBAR_ITEM (item_widget), priv->orientation, priv->style); gtk_container_remove (GTK_CONTAINER (item_widget->parent), item_widget); parentize_widget (toolbar, item_widget); } } gtk_widget_queue_resize (GTK_WIDGET (toolbar)); } static void popup_window_button_release_cb (GtkWidget *widget, GdkEventButton *event, void *data) { BonoboUIToolbar *toolbar; BonoboUIToolbarPrivate *priv; toolbar = BONOBO_UI_TOOLBAR (data); priv = toolbar->priv; bonobo_ui_toolbar_toggle_button_item_set_active (BONOBO_UI_TOOLBAR_TOGGLE_BUTTON_ITEM (priv->popup_item), FALSE); } static void popup_window_map_cb (GtkWidget *widget, void *data) { if (gdk_pointer_grab (widget->window, TRUE, (GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK | GDK_ENTER_NOTIFY_MASK | GDK_LEAVE_NOTIFY_MASK | GDK_POINTER_MOTION_MASK), NULL, NULL, GDK_CURRENT_TIME) != 0) { g_warning ("Toolbar pop-up pointer grab failed."); return; } gtk_grab_add (widget); } static void show_popup_window (BonoboUIToolbar *toolbar) { BonoboUIToolbarPrivate *priv; const GtkAllocation *toolbar_allocation; gint x, y; GdkScreen *screen; gint screen_width, screen_height; gint window_width, window_height; priv = toolbar->priv; priv->items_moved_to_popup_window = TRUE; create_popup_window (toolbar); gdk_window_get_origin (GTK_WIDGET (toolbar)->window, &x, &y); toolbar_allocation = & GTK_WIDGET (toolbar)->allocation; if (priv->orientation == GTK_ORIENTATION_HORIZONTAL) x += toolbar_allocation->x + toolbar_allocation->width; else y += toolbar_allocation->y + toolbar_allocation->height; gtk_window_get_size (GTK_WINDOW (priv->popup_window), &window_width, &window_height); screen = gtk_widget_get_screen (GTK_WIDGET (toolbar)); screen_width = gdk_screen_get_width (screen); screen_height = gdk_screen_get_height (screen); if ((x + window_width) > screen_width) x -= window_width; if ((y + window_height) > screen_height) x += toolbar_allocation->width; gtk_window_move (GTK_WINDOW (priv->popup_window), x, y); g_signal_connect (priv->popup_window, "map", G_CALLBACK (popup_window_map_cb), toolbar); gtk_widget_show (priv->popup_window); } static void popup_item_toggled_cb (BonoboUIToolbarToggleButtonItem *toggle_button_item, void *data) { BonoboUIToolbar *toolbar; gboolean active; toolbar = BONOBO_UI_TOOLBAR (data); active = bonobo_ui_toolbar_toggle_button_item_get_active (toggle_button_item); if (active) show_popup_window (toolbar); else hide_popup_window (toolbar); } /* Layout handling. */ static int get_popup_item_size (BonoboUIToolbar *toolbar) { BonoboUIToolbarPrivate *priv; GtkRequisition requisition; priv = toolbar->priv; gtk_widget_get_child_requisition ( GTK_WIDGET (priv->popup_item), &requisition); if (priv->orientation == GTK_ORIENTATION_HORIZONTAL) return requisition.width; else return requisition.height; } /* Update the various sizes. This is performed during ::size_request. */ static void accumulate_item_size (BonoboUIToolbarPrivate *priv, GtkWidget *item_widget) { GtkRequisition item_requisition; gtk_widget_size_request (item_widget, &item_requisition); priv->max_width = MAX (priv->max_width, item_requisition.width); priv->total_width += item_requisition.width; priv->max_height = MAX (priv->max_height, item_requisition.height); priv->total_height += item_requisition.height; } static void update_sizes (BonoboUIToolbar *toolbar) { GList *p; BonoboUIToolbarPrivate *priv; priv = toolbar->priv; priv->max_width = priv->total_width = 0; priv->max_height = priv->total_height = 0; for (p = priv->items; p != NULL; p = p->next) { GtkWidget *item_widget; item_widget = GTK_WIDGET (p->data); if (! GTK_WIDGET_VISIBLE (item_widget) || item_widget->parent != GTK_WIDGET (toolbar)) continue; accumulate_item_size (priv, item_widget); } if (priv->items_moved_to_popup_window) accumulate_item_size (priv, GTK_WIDGET (priv->popup_item)); } static void allocate_popup_item (BonoboUIToolbar *toolbar) { BonoboUIToolbarPrivate *priv; GtkRequisition popup_item_requisition; GtkAllocation popup_item_allocation; GtkAllocation *toolbar_allocation; int border_width; priv = toolbar->priv; /* FIXME what if there is not enough space? */ toolbar_allocation = & GTK_WIDGET (toolbar)->allocation; border_width = GTK_CONTAINER (toolbar)->border_width; gtk_widget_get_child_requisition ( GTK_WIDGET (priv->popup_item), &popup_item_requisition); popup_item_allocation.x = toolbar_allocation->x; popup_item_allocation.y = toolbar_allocation->y; if (priv->orientation == GTK_ORIENTATION_HORIZONTAL) { popup_item_allocation.x = priv->end_position - popup_item_requisition.width - border_width; popup_item_allocation.y += border_width; popup_item_allocation.width = popup_item_requisition.width; popup_item_allocation.height = toolbar_allocation->height - 2 * border_width; } else { popup_item_allocation.x += border_width; popup_item_allocation.y = priv->end_position - popup_item_requisition.height - border_width; popup_item_allocation.width = toolbar_allocation->width - 2 * border_width; popup_item_allocation.height = popup_item_requisition.height; } gtk_widget_size_allocate (GTK_WIDGET (priv->popup_item), &popup_item_allocation); } static void setup_popup_item (BonoboUIToolbar *toolbar) { BonoboUIToolbarPrivate *priv; GList *p; priv = toolbar->priv; if (priv->items_moved_to_popup_window) { gtk_widget_show (GTK_WIDGET (priv->popup_item)); allocate_popup_item (toolbar); return; } for (p = priv->first_not_fitting_item; p != NULL; p = p->next) { GtkWidget *item_widget; item_widget = GTK_WIDGET (p->data); if (GTK_WIDGET_VISIBLE (item_widget)) { gtk_widget_show (GTK_WIDGET (priv->popup_item)); allocate_popup_item (toolbar); return; } } gtk_widget_hide (GTK_WIDGET (priv->popup_item)); } /* * This is a dirty hack. We cannot hide the items with gtk_widget_hide () * because we want to let the user be in control of the physical hidden/shown * state, so we just move the widget to a non-visible area. */ static void hide_not_fitting_items (BonoboUIToolbar *toolbar) { BonoboUIToolbarPrivate *priv; GtkAllocation child_allocation; GList *p; priv = toolbar->priv; child_allocation.x = 40000; child_allocation.y = 40000; child_allocation.width = 1; child_allocation.height = 1; for (p = priv->first_not_fitting_item; p != NULL; p = p->next) { if (bonobo_ui_toolbar_item_get_pack_end (BONOBO_UI_TOOLBAR_ITEM (p->data))) continue; gtk_widget_size_allocate (GTK_WIDGET (p->data), &child_allocation); } } static void size_allocate_helper (BonoboUIToolbar *toolbar, const GtkAllocation *allocation) { BonoboUIToolbarPrivate *priv; GtkAllocation child_allocation; BonoboUIToolbarItem *item; GtkRequisition child_requisition; int border_width; int space_required; int available_space; int extra_space; int num_expandable_items; int popup_item_size; int item_size_left_to_place; int acc_space; gboolean first_expandable; GList *p; GTK_WIDGET (toolbar)->allocation = *allocation; priv = toolbar->priv; border_width = GTK_CONTAINER (toolbar)->border_width; popup_item_size = get_popup_item_size (toolbar); if (priv->orientation == GTK_ORIENTATION_HORIZONTAL) available_space = MAX ((int) allocation->width - 2 * border_width, popup_item_size); else available_space = MAX ((int) allocation->height - 2 * border_width, popup_item_size); child_allocation.x = allocation->x + border_width; child_allocation.y = allocation->y + border_width; /* * if there is exactly one toolbar item, handle it specially, by giving it all of the available space, * even if it doesn't fit, since we never want everything in the pop-up. */ if (priv->items != NULL && priv->items->next == NULL) { item = BONOBO_UI_TOOLBAR_ITEM (priv->items->data); gtk_widget_get_child_requisition (GTK_WIDGET (item), &child_requisition); child_allocation.width = child_requisition.width; child_allocation.height = child_requisition.height; if (bonobo_ui_toolbar_item_get_expandable (item)) { if (priv->orientation == GTK_ORIENTATION_HORIZONTAL) child_allocation.width = available_space; else child_allocation.height = available_space; } gtk_widget_size_allocate (GTK_WIDGET (item), &child_allocation); return; } /* first, make a pass through the items to layout the ones that are packed on the right */ priv->end_position = allocation->x + available_space; acc_space = 0; for (p = g_list_last (priv->items); p != NULL; p = p->prev) { item = BONOBO_UI_TOOLBAR_ITEM (p->data); if (! bonobo_ui_toolbar_item_get_pack_end (item)) continue; gtk_widget_get_child_requisition (GTK_WIDGET (item), &child_requisition); if (priv->orientation == GTK_ORIENTATION_HORIZONTAL) { acc_space += child_requisition.width; item_size_left_to_place -= child_requisition.width; priv->end_position -= child_requisition.width; child_allocation.x = priv->end_position; child_allocation.width = child_requisition.width; child_allocation.height = priv->max_height; } else { acc_space += child_requisition.height; priv->end_position -= child_requisition.height; child_allocation.y = priv->end_position; child_allocation.height = child_requisition.height; child_allocation.width = priv->max_width; } gtk_widget_size_allocate (GTK_WIDGET (item), &child_allocation); } available_space -= acc_space; if (priv->orientation == GTK_ORIENTATION_HORIZONTAL) item_size_left_to_place = priv->total_width - acc_space; else item_size_left_to_place = priv->total_height - acc_space; /* make a pass through the items to determine how many fit */ space_required = 0; num_expandable_items = 0; child_allocation.x = allocation->x + border_width; child_allocation.y = allocation->y + border_width; for (p = priv->items; p != NULL; p = p->next) { int item_size; item = BONOBO_UI_TOOLBAR_ITEM (p->data); if (! GTK_WIDGET_VISIBLE (item) || GTK_WIDGET (item)->parent != GTK_WIDGET (toolbar) || bonobo_ui_toolbar_item_get_pack_end (item)) continue; gtk_widget_get_child_requisition (GTK_WIDGET (item), &child_requisition); if (priv->orientation == GTK_ORIENTATION_HORIZONTAL) item_size = child_requisition.width; else item_size = child_requisition.height; /* g_message ("Item size %4d, space_required %4d, available %4d left to place %4d", item_size, space_required, available_space, item_size_left_to_place); */ if (item_size_left_to_place > available_space - space_required && space_required + item_size > available_space - popup_item_size) break; space_required += item_size; item_size_left_to_place -= item_size; if (bonobo_ui_toolbar_item_get_expandable (item)) num_expandable_items ++; } priv->first_not_fitting_item = p; /* determine the amount of space available for expansion */ if (priv->first_not_fitting_item != NULL) { extra_space = 0; } else { extra_space = available_space - space_required; if (priv->first_not_fitting_item != NULL) extra_space -= popup_item_size; } first_expandable = FALSE; for (p = priv->items; p != priv->first_not_fitting_item; p = p->next) { int expansion_amount; item = BONOBO_UI_TOOLBAR_ITEM (p->data); if (! GTK_WIDGET_VISIBLE (item) || GTK_WIDGET (item)->parent != GTK_WIDGET (toolbar) || bonobo_ui_toolbar_item_get_pack_end (item)) continue; gtk_widget_get_child_requisition (GTK_WIDGET (item), &child_requisition); if (! bonobo_ui_toolbar_item_get_expandable (item)) { expansion_amount = 0; } else { g_assert (num_expandable_items != 0); expansion_amount = extra_space / num_expandable_items; if (first_expandable) { expansion_amount += extra_space % num_expandable_items; first_expandable = FALSE; } } if (priv->orientation == GTK_ORIENTATION_HORIZONTAL) { child_allocation.width = child_requisition.width + expansion_amount; child_allocation.height = priv->max_height; } else { child_allocation.width = priv->max_width; child_allocation.height = child_requisition.height + expansion_amount; } gtk_widget_size_allocate (GTK_WIDGET (item), &child_allocation); if (priv->orientation == GTK_ORIENTATION_HORIZONTAL) child_allocation.x += child_allocation.width; else child_allocation.y += child_allocation.height; } hide_not_fitting_items (toolbar); setup_popup_item (toolbar); } /* GObject methods. */ static void impl_dispose (GObject *object) { BonoboUIToolbar *toolbar; BonoboUIToolbarPrivate *priv; GList *items, *p, *next; toolbar = BONOBO_UI_TOOLBAR (object); priv = toolbar->priv; items = priv->items; for (p = items; p; p = next) { GtkWidget *item_widget; next = p->next; item_widget = GTK_WIDGET (p->data); if (item_widget->parent == NULL) { items = g_list_remove (items, item_widget); gtk_widget_destroy (item_widget); } } if (priv->popup_item && GTK_WIDGET (priv->popup_item)->parent == NULL) gtk_widget_destroy (GTK_WIDGET (priv->popup_item)); priv->popup_item = NULL; if (priv->popup_window != NULL) gtk_widget_destroy (priv->popup_window); priv->popup_window = NULL; if (priv->tooltips) g_object_ref_sink (GTK_OBJECT (priv->tooltips)); priv->tooltips = NULL; G_OBJECT_CLASS (bonobo_ui_toolbar_parent_class)->dispose (object); } static void impl_finalize (GObject *object) { BonoboUIToolbar *toolbar = (BonoboUIToolbar *) object; g_list_free (toolbar->priv->items); g_free (toolbar->priv); G_OBJECT_CLASS (bonobo_ui_toolbar_parent_class)->finalize (object); } /* GtkWidget methods. */ static void impl_size_request (GtkWidget *widget, GtkRequisition *requisition) { BonoboUIToolbar *toolbar; BonoboUIToolbarPrivate *priv; int border_width; toolbar = BONOBO_UI_TOOLBAR (widget); priv = toolbar->priv; g_assert (priv->popup_item != NULL); update_sizes (toolbar); border_width = GTK_CONTAINER (toolbar)->border_width; if (priv->is_floating) { if (priv->orientation == GTK_ORIENTATION_HORIZONTAL) { requisition->width = priv->total_width; requisition->height = priv->max_height; } else { requisition->width = priv->max_width; requisition->height = priv->total_height; } } else { GtkRequisition popup_item_requisition; gtk_widget_size_request (GTK_WIDGET (priv->popup_item), &popup_item_requisition); if (priv->orientation == GTK_ORIENTATION_HORIZONTAL) { requisition->width = popup_item_requisition.width; requisition->height = MAX (popup_item_requisition.height, priv->max_height); } else { requisition->width = MAX (popup_item_requisition.width, priv->max_width); requisition->height = popup_item_requisition.height; } } requisition->width += 2 * border_width; requisition->height += 2 * border_width; } static void impl_size_allocate (GtkWidget *widget, GtkAllocation *allocation) { BonoboUIToolbar *toolbar; toolbar = BONOBO_UI_TOOLBAR (widget); size_allocate_helper (toolbar, allocation); } static void impl_map (GtkWidget *widget) { BonoboUIToolbar *toolbar; BonoboUIToolbarPrivate *priv; GList *p; toolbar = BONOBO_UI_TOOLBAR (widget); priv = toolbar->priv; GTK_WIDGET_SET_FLAGS (toolbar, GTK_MAPPED); for (p = priv->items; p != NULL; p = p->next) { GtkWidget *item_widget; item_widget = GTK_WIDGET (p->data); if (item_widget->parent != GTK_WIDGET (toolbar)) continue; if (GTK_WIDGET_VISIBLE (item_widget) && ! GTK_WIDGET_MAPPED (item_widget)) gtk_widget_map (item_widget); } if (GTK_WIDGET_VISIBLE (priv->popup_item) && ! GTK_WIDGET_MAPPED (priv->popup_item)) gtk_widget_map (GTK_WIDGET (priv->popup_item)); } static void impl_unmap (GtkWidget *widget) { BonoboUIToolbar *toolbar; BonoboUIToolbarPrivate *priv; GList *p; toolbar = BONOBO_UI_TOOLBAR (widget); priv = toolbar->priv; for (p = priv->items; p != NULL; p = p->next) { GtkWidget *item_widget; item_widget = GTK_WIDGET (p->data); if (item_widget->parent != GTK_WIDGET (toolbar)) continue; if (GTK_WIDGET_VISIBLE (item_widget) && GTK_WIDGET_MAPPED (item_widget)) gtk_widget_unmap (item_widget); } if (GTK_WIDGET_VISIBLE (priv->popup_item) && GTK_WIDGET_MAPPED (priv->popup_item)) gtk_widget_unmap (GTK_WIDGET (priv->popup_item)); } static int impl_expose_event (GtkWidget *widget, GdkEventExpose *event) { BonoboUIToolbar *toolbar; BonoboUIToolbarPrivate *priv; GtkShadowType shadow_type; GList *p; if (! GTK_WIDGET_DRAWABLE (widget)) return TRUE; toolbar = BONOBO_UI_TOOLBAR (widget); priv = toolbar->priv; gtk_widget_style_get (widget, "shadow_type", &shadow_type, NULL); gtk_paint_box (widget->style, widget->window, GTK_WIDGET_STATE (widget), shadow_type, &event->area, widget, "toolbar", widget->allocation.x, widget->allocation.y, widget->allocation.width, widget->allocation.height); for (p = priv->items; p != NULL; p = p->next) { GtkWidget *item_widget; item_widget = GTK_WIDGET (p->data); if (item_widget->parent != GTK_WIDGET (toolbar)) continue; if (! GTK_WIDGET_NO_WINDOW (item_widget)) continue; gtk_container_propagate_expose ( GTK_CONTAINER (widget), item_widget, event); } gtk_container_propagate_expose ( GTK_CONTAINER (widget), GTK_WIDGET (priv->popup_item), event); return TRUE; } /* GtkContainer methods. */ static void impl_remove (GtkContainer *container, GtkWidget *child) { BonoboUIToolbar *toolbar; BonoboUIToolbarPrivate *priv; toolbar = BONOBO_UI_TOOLBAR (container); priv = toolbar->priv; if (child == (GtkWidget *) priv->popup_item) priv->popup_item = NULL; gtk_widget_unparent (child); gtk_widget_queue_resize (GTK_WIDGET (container)); } static void impl_forall (GtkContainer *container, gboolean include_internals, GtkCallback callback, void *callback_data) { BonoboUIToolbar *toolbar; BonoboUIToolbarPrivate *priv; GList *p; toolbar = BONOBO_UI_TOOLBAR (container); priv = toolbar->priv; p = priv->items; while (p != NULL) { GtkWidget *child; GList *pnext; pnext = p->next; child = GTK_WIDGET (p->data); if (child->parent == GTK_WIDGET (toolbar)) (* callback) (child, callback_data); p = pnext; } if (priv->popup_item) (* callback) (GTK_WIDGET (priv->popup_item), callback_data); } /* BonoboUIToolbar signals. */ static void impl_set_orientation (BonoboUIToolbar *toolbar, GtkOrientation orientation) { BonoboUIToolbarPrivate *priv; GList *p; priv = toolbar->priv; if (orientation == priv->orientation) return; priv->orientation = orientation; for (p = priv->items; p != NULL; p = p->next) { BonoboUIToolbarItem *item; item = BONOBO_UI_TOOLBAR_ITEM (p->data); set_attributes_on_child (item, orientation, priv->style); } bonobo_ui_toolbar_item_set_orientation ( BONOBO_UI_TOOLBAR_ITEM (priv->popup_item), orientation); gtk_widget_queue_resize (GTK_WIDGET (toolbar)); } static void impl_style_changed (BonoboUIToolbar *toolbar) { GList *p; BonoboUIToolbarStyle style; BonoboUIToolbarPrivate *priv; priv = toolbar->priv; style = (priv->orientation == GTK_ORIENTATION_HORIZONTAL) ? priv->hstyle : priv->vstyle; if (style == priv->style) return; priv->style = style; for (p = priv->items; p != NULL; p = p->next) { BonoboUIToolbarItem *item; item = BONOBO_UI_TOOLBAR_ITEM (p->data); set_attributes_on_child (item, priv->orientation, style); } gtk_widget_queue_resize (GTK_WIDGET (toolbar)); } static void impl_get_property (GObject *object, guint property_id, GValue *value, GParamSpec *pspec) { BonoboUIToolbar *toolbar = BONOBO_UI_TOOLBAR (object); BonoboUIToolbarPrivate *priv = toolbar->priv; gint border_width; border_width = GTK_CONTAINER (object)->border_width; switch (property_id) { case PROP_ORIENTATION: g_value_set_uint ( value, bonobo_ui_toolbar_get_orientation (toolbar)); break; case PROP_IS_FLOATING: g_value_set_boolean (value, priv->is_floating); break; case PROP_PREFERRED_WIDTH: update_sizes (toolbar); if (bonobo_ui_toolbar_get_orientation (toolbar) == GTK_ORIENTATION_HORIZONTAL) g_value_set_uint (value, priv->total_width + 2 * border_width); else g_value_set_uint (value, priv->max_width + 2 * border_width); break; case PROP_PREFERRED_HEIGHT: update_sizes (toolbar); if (bonobo_ui_toolbar_get_orientation (toolbar) == GTK_ORIENTATION_HORIZONTAL) g_value_set_uint (value, priv->max_height + 2 * border_width); else g_value_set_uint (value, priv->total_height + 2 * border_width); break; default: break; }; } static void impl_set_property (GObject *object, guint property_id, const GValue *value, GParamSpec *pspec) { BonoboUIToolbar *toolbar = BONOBO_UI_TOOLBAR (object); BonoboUIToolbarPrivate *priv = toolbar->priv; switch (property_id) { case PROP_ORIENTATION: bonobo_ui_toolbar_set_orientation ( toolbar, g_value_get_enum (value)); break; case PROP_IS_FLOATING: priv->is_floating = g_value_get_boolean (value); break; default: break; }; } static void bonobo_ui_toolbar_class_init (BonoboUIToolbarClass *toolbar_class) { GObjectClass *gobject_class; GtkWidgetClass *widget_class; GtkContainerClass *container_class; gobject_class = (GObjectClass *) toolbar_class; gobject_class->finalize = impl_finalize; gobject_class->dispose = impl_dispose; gobject_class->get_property = impl_get_property; gobject_class->set_property = impl_set_property; widget_class = GTK_WIDGET_CLASS (toolbar_class); widget_class->size_request = impl_size_request; widget_class->size_allocate = impl_size_allocate; widget_class->map = impl_map; widget_class->unmap = impl_unmap; widget_class->expose_event = impl_expose_event; container_class = GTK_CONTAINER_CLASS (toolbar_class); container_class->remove = impl_remove; container_class->forall = impl_forall; toolbar_class->set_orientation = impl_set_orientation; toolbar_class->style_changed = impl_style_changed; g_object_class_install_property ( gobject_class, PROP_ORIENTATION, g_param_spec_enum ("orientation", _("Orientation"), _("Orientation"), GTK_TYPE_ORIENTATION, GTK_ORIENTATION_HORIZONTAL, G_PARAM_READWRITE)); g_object_class_install_property ( gobject_class, PROP_IS_FLOATING, g_param_spec_boolean ("is_floating", _("is floating"), _("whether the toolbar is floating"), FALSE, G_PARAM_READWRITE)); g_object_class_install_property ( gobject_class, PROP_PREFERRED_WIDTH, g_param_spec_uint ("preferred_width", _("Preferred width"), _("Preferred width"), 0, G_MAXINT, 0, G_PARAM_READABLE)); g_object_class_install_property ( gobject_class, PROP_PREFERRED_HEIGHT, g_param_spec_uint ("preferred_height", _("Preferred height"), _("Preferred height"), 0, G_MAXINT, 0, G_PARAM_READABLE)); signals[SET_ORIENTATION] = g_signal_new ("set_orientation", G_TYPE_FROM_CLASS (gobject_class), G_SIGNAL_RUN_LAST, G_STRUCT_OFFSET (BonoboUIToolbarClass, set_orientation), NULL, NULL, g_cclosure_marshal_VOID__INT, G_TYPE_NONE, 1, G_TYPE_INT); signals[STYLE_CHANGED] = g_signal_new ("set_style", G_TYPE_FROM_CLASS (gobject_class), G_SIGNAL_RUN_LAST, G_STRUCT_OFFSET (BonoboUIToolbarClass, style_changed), NULL, NULL, g_cclosure_marshal_VOID__VOID, G_TYPE_NONE, 0); gtk_widget_class_install_style_property ( widget_class, g_param_spec_enum ("shadow_type", _("Shadow type"), _("Style of bevel around the toolbar"), GTK_TYPE_SHADOW_TYPE, GTK_SHADOW_OUT, G_PARAM_READABLE)); } static void bonobo_ui_toolbar_init (BonoboUIToolbar *toolbar) { AtkObject *ao; BonoboUIToolbarStyle style; BonoboUIToolbarPrivate *priv; GTK_WIDGET_SET_FLAGS (toolbar, GTK_NO_WINDOW); priv = g_new (BonoboUIToolbarPrivate, 1); style = BONOBO_UI_TOOLBAR_STYLE_ICONS_AND_TEXT; priv->orientation = GTK_ORIENTATION_HORIZONTAL; priv->is_floating = FALSE; priv->style = style; priv->hstyle = style; priv->vstyle = style; priv->max_width = 0; priv->total_width = 0; priv->max_height = 0; priv->total_height = 0; priv->popup_item = NULL; priv->items = NULL; priv->first_not_fitting_item = NULL; priv->popup_window = NULL; priv->popup_window_vbox = NULL; priv->items_moved_to_popup_window = FALSE; priv->tooltips = gtk_tooltips_new (); toolbar->priv = priv; ao = gtk_widget_get_accessible (GTK_WIDGET (toolbar)); if (ao) atk_object_set_role (ao, ATK_ROLE_TOOL_BAR); } void bonobo_ui_toolbar_construct (BonoboUIToolbar *toolbar) { BonoboUIToolbarPrivate *priv; GtkWidget *frame; g_return_if_fail (toolbar != NULL); g_return_if_fail (BONOBO_IS_UI_TOOLBAR (toolbar)); priv = toolbar->priv; priv->popup_item = BONOBO_UI_TOOLBAR_ITEM (bonobo_ui_toolbar_popup_item_new ()); bonobo_ui_toolbar_item_set_orientation (priv->popup_item, priv->orientation); parentize_widget (toolbar, GTK_WIDGET (priv->popup_item)); g_signal_connect (G_OBJECT (priv->popup_item), "toggled", G_CALLBACK (popup_item_toggled_cb), toolbar); priv->popup_window = gtk_window_new (GTK_WINDOW_POPUP); g_signal_connect (G_OBJECT (priv->popup_window), "button_release_event", G_CALLBACK (popup_window_button_release_cb), toolbar); frame = gtk_frame_new (NULL); gtk_widget_show (frame); gtk_container_add (GTK_CONTAINER (priv->popup_window), frame); priv->popup_window_vbox = gtk_vbox_new (FALSE, 0); gtk_widget_show (priv->popup_window_vbox); gtk_container_add (GTK_CONTAINER (frame), priv->popup_window_vbox); } GtkWidget * bonobo_ui_toolbar_new (void) { BonoboUIToolbar *toolbar; toolbar = g_object_new (bonobo_ui_toolbar_get_type (), NULL); bonobo_ui_toolbar_construct (toolbar); return GTK_WIDGET (toolbar); } void bonobo_ui_toolbar_set_orientation (BonoboUIToolbar *toolbar, GtkOrientation orientation) { g_return_if_fail (toolbar != NULL); g_return_if_fail (BONOBO_IS_UI_TOOLBAR (toolbar)); g_return_if_fail (orientation == GTK_ORIENTATION_HORIZONTAL || orientation == GTK_ORIENTATION_VERTICAL); g_signal_emit (toolbar, signals[SET_ORIENTATION], 0, orientation); g_signal_emit (toolbar, signals[STYLE_CHANGED], 0); } GtkOrientation bonobo_ui_toolbar_get_orientation (BonoboUIToolbar *toolbar) { BonoboUIToolbarPrivate *priv; g_return_val_if_fail (toolbar != NULL, GTK_ORIENTATION_HORIZONTAL); g_return_val_if_fail (BONOBO_IS_UI_TOOLBAR (toolbar), GTK_ORIENTATION_HORIZONTAL); priv = toolbar->priv; return priv->orientation; } BonoboUIToolbarStyle bonobo_ui_toolbar_get_style (BonoboUIToolbar *toolbar) { BonoboUIToolbarPrivate *priv; g_return_val_if_fail (toolbar != NULL, BONOBO_UI_TOOLBAR_STYLE_PRIORITY_TEXT); g_return_val_if_fail (BONOBO_IS_UI_TOOLBAR (toolbar), BONOBO_UI_TOOLBAR_STYLE_PRIORITY_TEXT); priv = toolbar->priv; return priv->style; } GtkTooltips * bonobo_ui_toolbar_get_tooltips (BonoboUIToolbar *toolbar) { BonoboUIToolbarPrivate *priv; g_return_val_if_fail (toolbar != NULL, NULL); g_return_val_if_fail (BONOBO_IS_UI_TOOLBAR (toolbar), NULL); priv = toolbar->priv; return priv->tooltips; } void bonobo_ui_toolbar_insert (BonoboUIToolbar *toolbar, BonoboUIToolbarItem *item, int position) { BonoboUIToolbarPrivate *priv; g_return_if_fail (BONOBO_IS_UI_TOOLBAR (toolbar)); g_return_if_fail (BONOBO_IS_UI_TOOLBAR_ITEM (item)); priv = toolbar->priv; /* * This ugly hack is here since we might have unparented * a widget and then re-added it to the toolbar at a later * date, and un-parenting doesn't work quite properly yet. * * Un-parenting is down to the widget possibly being a * child of either this widget, or the popup window. */ if (!g_list_find (priv->items, item)) { g_object_ref_sink (item); priv->items = g_list_insert (priv->items, item, position); } g_signal_connect_object ( item, "destroy", G_CALLBACK (item_destroy_cb), toolbar, 0); g_signal_connect_object ( item, "activate", G_CALLBACK (item_activate_cb), toolbar, 0); g_signal_connect_object ( item, "set_want_label", G_CALLBACK (item_set_want_label_cb), toolbar, 0); g_object_ref (toolbar); g_object_ref (item); set_attributes_on_child (item, priv->orientation, priv->style); parentize_widget (toolbar, GTK_WIDGET (item)); gtk_widget_queue_resize (GTK_WIDGET (toolbar)); g_object_unref (item); g_object_unref (toolbar); } GList * bonobo_ui_toolbar_get_children (BonoboUIToolbar *toolbar) { GList *ret = NULL, *l; g_return_val_if_fail (BONOBO_IS_UI_TOOLBAR (toolbar), NULL); for (l = toolbar->priv->items; l; l = l->next) { GtkWidget *item_widget; item_widget = GTK_WIDGET (l->data); if (item_widget->parent != NULL) /* Unparented but still here */ ret = g_list_prepend (ret, item_widget); } return g_list_reverse (ret); } void bonobo_ui_toolbar_set_hv_styles (BonoboUIToolbar *toolbar, BonoboUIToolbarStyle hstyle, BonoboUIToolbarStyle vstyle) { g_return_if_fail (BONOBO_IS_UI_TOOLBAR (toolbar)); toolbar->priv->hstyle = hstyle; toolbar->priv->vstyle = vstyle; g_signal_emit (toolbar, signals [STYLE_CHANGED], 0); } void bonobo_ui_toolbar_show_tooltips (BonoboUIToolbar *toolbar, gboolean show_tips) { g_return_if_fail (BONOBO_IS_UI_TOOLBAR (toolbar)); if (show_tips) gtk_tooltips_enable (toolbar->priv->tooltips); else gtk_tooltips_disable (toolbar->priv->tooltips); } libbonoboui-2.24.5/bonobo/Makefile.in0000664000076400007640000007677411546334700014415 00000000000000# Makefile.in generated by automake 1.11.1 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, # Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY, to the extent permitted by law; without # even the implied warranty of MERCHANTABILITY or FITNESS FOR A # PARTICULAR PURPOSE. @SET_MAKE@ VPATH = @srcdir@ pkgdatadir = $(datadir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ pkglibdir = $(libdir)/@PACKAGE@ pkglibexecdir = $(libexecdir)/@PACKAGE@ am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd install_sh_DATA = $(install_sh) -c -m 644 install_sh_PROGRAM = $(install_sh) -c install_sh_SCRIPT = $(install_sh) -c INSTALL_HEADER = $(INSTALL_DATA) transform = $(program_transform_name) NORMAL_INSTALL = : PRE_INSTALL = : POST_INSTALL = : NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : build_triplet = @build@ host_triplet = @host@ subdir = bonobo DIST_COMMON = $(libbonoboinclude_HEADERS) $(noinst_HEADERS) \ $(srcdir)/Makefile.am $(srcdir)/Makefile.in \ $(srcdir)/libbonoboui-2.0-uninstalled.pc.in \ $(srcdir)/libbonoboui-2.0.pc.in ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/configure.in am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs CONFIG_HEADER = $(top_builddir)/config.h CONFIG_CLEAN_FILES = libbonoboui-2.0.pc libbonoboui-2.0-uninstalled.pc CONFIG_CLEAN_VPATH_FILES = am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; am__vpath_adj = case $$p in \ $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \ *) f=$$p;; \ esac; am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`; am__install_max = 40 am__nobase_strip_setup = \ srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'` am__nobase_strip = \ for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||" am__nobase_list = $(am__nobase_strip_setup); \ for p in $$list; do echo "$$p $$p"; done | \ sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \ $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \ if (++n[$$2] == $(am__install_max)) \ { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \ END { for (dir in files) print dir, files[dir] }' am__base_list = \ sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \ sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g' am__installdirs = "$(DESTDIR)$(libdir)" "$(DESTDIR)$(pkgconfigdir)" \ "$(DESTDIR)$(libbonoboincludedir)" LTLIBRARIES = $(lib_LTLIBRARIES) am__DEPENDENCIES_1 = libbonoboui_2_la_DEPENDENCIES = $(am__DEPENDENCIES_1) \ $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ $(am__DEPENDENCIES_1) am_libbonoboui_2_la_OBJECTS = bonobo-a11y.lo bonobo-dock.lo \ bonobo-dock-item.lo bonobo-dock-item-grip.lo \ bonobo-dock-band.lo bonobo-dock-layout.lo \ bonobo-ui-init-gtk.lo bonobo-ui-main.lo \ bonobo-canvas-component.lo bonobo-canvas-item.lo \ bonobo-control-frame.lo bonobo-control.lo \ bonobo-file-selector-util.lo bonobo-plug.lo \ bonobo-property-control.lo bonobo-selector.lo \ bonobo-selector-widget.lo bonobo-socket.lo \ bonobo-ui-component.lo bonobo-ui-config-widget.lo \ bonobo-ui-container.lo bonobo-ui-engine.lo \ bonobo-ui-engine-config.lo bonobo-ui-node.lo \ bonobo-ui-preferences.lo bonobo-ui-sync.lo \ bonobo-ui-sync-menu.lo bonobo-ui-sync-keys.lo \ bonobo-ui-sync-status.lo bonobo-ui-sync-toolbar.lo \ bonobo-ui-toolbar-button-item.lo \ bonobo-ui-toolbar-control-item.lo bonobo-ui-toolbar-item.lo \ bonobo-ui-toolbar-popup-item.lo \ bonobo-ui-toolbar-toggle-button-item.lo bonobo-ui-toolbar.lo \ bonobo-ui-internal-toolbar.lo bonobo-ui-type-builtins.lo \ bonobo-ui-util.lo bonobo-ui-win32.lo bonobo-ui-xml.lo \ bonobo-widget.lo bonobo-window.lo bonobo-zoomable.lo \ bonobo-zoomable-frame.lo bonobo-ui-marshal-main.lo libbonoboui_2_la_OBJECTS = $(am_libbonoboui_2_la_OBJECTS) libbonoboui_2_la_LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) \ $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \ $(libbonoboui_2_la_LDFLAGS) $(LDFLAGS) -o $@ DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir) depcomp = $(SHELL) $(top_srcdir)/depcomp am__depfiles_maybe = depfiles am__mv = mv -f COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) LTCOMPILE = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \ --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) CCLD = $(CC) LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \ --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \ $(LDFLAGS) -o $@ SOURCES = $(libbonoboui_2_la_SOURCES) DIST_SOURCES = $(libbonoboui_2_la_SOURCES) DATA = $(pkgconfig_DATA) HEADERS = $(libbonoboinclude_HEADERS) $(noinst_HEADERS) ETAGS = etags CTAGS = ctags DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ACLOCAL_AMFLAGS = @ACLOCAL_AMFLAGS@ ALL_LINGUAS = @ALL_LINGUAS@ AMTAR = @AMTAR@ AR = @AR@ AS = @AS@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ AWK = @AWK@ BONOBOUI_CFLAGS = @BONOBOUI_CFLAGS@ BONOBOUI_GLADE_CFLAGS = @BONOBOUI_GLADE_CFLAGS@ BONOBOUI_GLADE_LIBS = @BONOBOUI_GLADE_LIBS@ BONOBOUI_LIBS = @BONOBOUI_LIBS@ BONOBOUI_SINGLE_INCLUDES = @BONOBOUI_SINGLE_INCLUDES@ CATALOGS = @CATALOGS@ CATOBJEXT = @CATOBJEXT@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ CYGPATH_W = @CYGPATH_W@ DATADIRNAME = @DATADIRNAME@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DUMPBIN = @DUMPBIN@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_MKENUMS = @GLIB_MKENUMS@ GMOFILES = @GMOFILES@ GMSGFMT = @GMSGFMT@ GREP = @GREP@ GTKDOC_CHECK = @GTKDOC_CHECK@ GTKDOC_MKPDF = @GTKDOC_MKPDF@ GTKDOC_REBASE = @GTKDOC_REBASE@ HTML_DIR = @HTML_DIR@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INSTOBJEXT = @INSTOBJEXT@ INTLLIBS = @INTLLIBS@ INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@ INTLTOOL_MERGE = @INTLTOOL_MERGE@ INTLTOOL_PERL = @INTLTOOL_PERL@ INTLTOOL_UPDATE = @INTLTOOL_UPDATE@ LD = @LD@ LDFLAGS = @LDFLAGS@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIPO = @LIPO@ LN_S = @LN_S@ LTLIBOBJS = @LTLIBOBJS@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MKDIR_P = @MKDIR_P@ MKINSTALLDIRS = @MKINSTALLDIRS@ MSGFMT = @MSGFMT@ MSGFMT_OPTS = @MSGFMT_OPTS@ MSGMERGE = @MSGMERGE@ NM = @NM@ NMEDIT = @NMEDIT@ OBJDUMP = @OBJDUMP@ OBJEXT = @OBJEXT@ OTOOL = @OTOOL@ OTOOL64 = @OTOOL64@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_URL = @PACKAGE_URL@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ PATH_TO_XRDB = @PATH_TO_XRDB@ PKG_CONFIG = @PKG_CONFIG@ POFILES = @POFILES@ POPT_LIBS = @POPT_LIBS@ POSUB = @POSUB@ PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@ PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@ RANLIB = @RANLIB@ SED = @SED@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ STRIP = @STRIP@ USE_NLS = @USE_NLS@ VERSION = @VERSION@ WARN_CFLAGS = @WARN_CFLAGS@ XGETTEXT = @XGETTEXT@ XMKMF = @XMKMF@ X_CFLAGS = @X_CFLAGS@ X_EXTRA_LIBS = @X_EXTRA_LIBS@ X_LIBS = @X_LIBS@ X_PRE_LIBS = @X_PRE_LIBS@ YACC = @YACC@ YFLAGS = @YFLAGS@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ abs_top_srcdir = @abs_top_srcdir@ ac_ct_CC = @ac_ct_CC@ ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ am__include = @am__include@ am__leading_dot = @am__leading_dot@ am__quote = @am__quote@ am__tar = @am__tar@ am__untar = @am__untar@ bindir = @bindir@ build = @build@ build_alias = @build_alias@ build_cpu = @build_cpu@ build_os = @build_os@ build_vendor = @build_vendor@ builddir = @builddir@ datadir = @datadir@ datarootdir = @datarootdir@ docdir = @docdir@ dvidir = @dvidir@ exec_prefix = @exec_prefix@ host = @host@ host_alias = @host_alias@ host_cpu = @host_cpu@ host_os = @host_os@ host_vendor = @host_vendor@ htmldir = @htmldir@ includedir = @includedir@ infodir = @infodir@ install_sh = @install_sh@ libdir = @libdir@ libexecdir = @libexecdir@ localedir = @localedir@ localstatedir = @localstatedir@ lt_ECHO = @lt_ECHO@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ sysconfdir = @sysconfdir@ target_alias = @target_alias@ top_build_prefix = @top_build_prefix@ top_builddir = @top_builddir@ top_srcdir = @top_srcdir@ INCLUDES = \ -I$(top_srcdir) \ -I$(top_builddir) \ $(WARN_CFLAGS) \ $(BONOBOUI_CFLAGS) \ -DPREFIX=\""$(prefix)"\" \ -DPLUGIN_DIR=\""$(PLUGIN_DIR)"\" \ -DBONOBO_UI_INTERNAL \ -DBONOBO_UIDIR=\""$(datadir)/gnome-2.0/ui/"\" \ -DBONOBO_LIBDIR=\""$(libdir)"\" \ -DBONOBO_DATADIR=\""$(datadir)"\" \ -DBONOBO_PIXMAPDIR=\""$(datadir)/pixmaps"\" \ -DBONOBO_BINDIR=\""$(bindir)"\" \ -DBONOBO_LOCALSTATEDIR=\""$(localstatedir)"\" \ -DBONOBO_LOCALEDIR="\"$(datadir)/locale\"" \ -DBONOBO_EXPLICIT_TRANSLATION_DOMAIN="GETTEXT_PACKAGE" \ -DG_LOG_DOMAIN=\"Bonobo\" \ -DVERSION=\"$(VERSION)\" \ $(DISABLE_DEPRECATED) \ $(BONOBOUI_SINGLE_INCLUDES) \ -UBONOBO_DISABLE_DEPRECATED \ -UBONOBO_UI_DISABLE_DEPRECATED lib_LTLIBRARIES = libbonoboui-2.la noinst_HEADERS = \ bonobo-control-internal.h \ bonobo-ui-engine-config.h \ bonobo-ui-engine-private.h \ bonobo-ui-marshal.h \ bonobo-ui-node-private.h \ bonobo-ui-preferences.h \ bonobo-ui-private.h \ bonobo-ui-sync-menu.h \ bonobo-ui-sync-keys.h \ bonobo-ui-sync-status.h \ bonobo-ui-sync-toolbar.h \ bonobo-ui-toolbar.h \ bonobo-ui-toolbar-control-item.h \ bonobo-ui-toolbar-popup-item.h \ bonobo-ui-xml.h libbonoboincludedir = $(includedir)/libbonoboui-2.0/bonobo libbonoboui_h_sources = \ bonobo-canvas-component.h \ bonobo-canvas-item.h \ bonobo-control-frame.h \ bonobo-control.h \ bonobo-dock-band.h \ bonobo-dock-item.h \ bonobo-dock-layout.h \ bonobo-dock.h \ bonobo-file-selector-util.h \ bonobo-plug.h \ bonobo-property-control.h \ bonobo-selector-widget.h \ bonobo-selector.h \ bonobo-socket.h \ bonobo-ui-component.h \ bonobo-ui-config-widget.h \ bonobo-ui-container.h \ bonobo-ui-engine.h \ bonobo-ui-main.h \ bonobo-ui-node.h \ bonobo-ui-sync.h \ bonobo-ui-toolbar-button-item.h \ bonobo-ui-toolbar-item.h \ bonobo-ui-toolbar-toggle-button-item.h \ bonobo-ui-toolbar.h \ bonobo-ui-util.h \ bonobo-widget.h \ bonobo-window.h \ bonobo-zoomable-frame.h \ bonobo-zoomable.h libbonoboui_2_la_LDFLAGS = \ -no-undefined libbonoboui_2_la_LIBADD = \ $(BONOBOUI_LIBS) ${X_LIBS} $(INTLLIBS) $(POPT_LIBS) libbonoboui_2_la_SOURCES = \ bonobo-a11y.c \ bonobo-a11y.h \ bonobo-dock.c \ bonobo-dock.h \ bonobo-dock-item.c \ bonobo-dock-item.h \ bonobo-dock-item-grip.c \ bonobo-dock-item-grip.h \ bonobo-dock-band.c \ bonobo-dock-band.h \ bonobo-dock-layout.c \ bonobo-dock-layout.h \ bonobo-ui-init-gtk.c \ bonobo-ui-main.h \ bonobo-ui-main.c \ bonobo-canvas-component.c \ bonobo-canvas-item.c \ bonobo-control-frame.c \ bonobo-control.c \ bonobo-file-selector-util.c \ bonobo-plug.c \ bonobo-property-control.c \ bonobo-selector.c \ bonobo-selector-widget.c \ bonobo-socket.c \ bonobo-ui-component.c \ bonobo-ui-config-widget.c \ bonobo-ui-container.c \ bonobo-ui-engine.c \ bonobo-ui-engine-config.c \ bonobo-ui-node.c \ bonobo-ui-preferences.c \ bonobo-ui-sync.c \ bonobo-ui-sync-menu.c \ bonobo-ui-sync-keys.c \ bonobo-ui-sync-status.c \ bonobo-ui-sync-toolbar.c \ bonobo-ui-toolbar-button-item.c \ bonobo-ui-toolbar-control-item.c \ bonobo-ui-toolbar-item.c \ bonobo-ui-toolbar-popup-item.c \ bonobo-ui-toolbar-toggle-button-item.c \ bonobo-ui-toolbar.c \ bonobo-ui-internal-toolbar.c \ bonobo-ui-type-builtins.c \ bonobo-ui-util.c \ bonobo-ui-win32.c \ bonobo-ui-xml.c \ bonobo-widget.c \ bonobo-window.c \ bonobo-zoomable.c \ bonobo-zoomable-frame.c \ bonobo-ui-marshal-main.c libbonoboui_built_public_sources = \ bonobo-ui-type-builtins.h libbonoboui_built_private_sources = \ bonobo-ui-type-builtins.c \ bonobo-ui-marshal.c \ bonobo-ui-marshal.h \ libbonoboui.defs libbonoboui_built_sources = \ $(libbonoboui_built_public_sources) \ $(libbonoboui_built_private_sources) libbonoboinclude_HEADERS = \ $(libbonoboui_h_sources) \ $(libbonoboui_built_public_sources) pkgconfigdir = $(libdir)/pkgconfig pkgconfig_DATA = libbonoboui-2.0.pc EXTRA_DIST = bonobo-insert-component.xpm libbonoboui-2.0.pc.in \ libbonoboui-2.0-uninstalled.pc.in bonobo-ui-marshal.list CLEANFILES = $(libbonoboui_built_sources) BUILT_SOURCE = $(libbonoboui_built_sources) DONT_DIST_SOURCE = $(libbonoboui_built_sources) all: all-am .SUFFIXES: .SUFFIXES: .c .lo .o .obj $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps) @for dep in $?; do \ case '$(am__configure_deps)' in \ *$$dep*) \ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ && { if test -f $@; then exit 0; else break; fi; }; \ exit 1;; \ esac; \ done; \ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign bonobo/Makefile'; \ $(am__cd) $(top_srcdir) && \ $(AUTOMAKE) --foreign bonobo/Makefile .PRECIOUS: Makefile Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status @case '$?' in \ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(am__aclocal_m4_deps): libbonoboui-2.0.pc: $(top_builddir)/config.status $(srcdir)/libbonoboui-2.0.pc.in cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ libbonoboui-2.0-uninstalled.pc: $(top_builddir)/config.status $(srcdir)/libbonoboui-2.0-uninstalled.pc.in cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ install-libLTLIBRARIES: $(lib_LTLIBRARIES) @$(NORMAL_INSTALL) test -z "$(libdir)" || $(MKDIR_P) "$(DESTDIR)$(libdir)" @list='$(lib_LTLIBRARIES)'; test -n "$(libdir)" || list=; \ list2=; for p in $$list; do \ if test -f $$p; then \ list2="$$list2 $$p"; \ else :; fi; \ done; \ test -z "$$list2" || { \ echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 '$(DESTDIR)$(libdir)'"; \ $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 "$(DESTDIR)$(libdir)"; \ } uninstall-libLTLIBRARIES: @$(NORMAL_UNINSTALL) @list='$(lib_LTLIBRARIES)'; test -n "$(libdir)" || list=; \ for p in $$list; do \ $(am__strip_dir) \ echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f '$(DESTDIR)$(libdir)/$$f'"; \ $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f "$(DESTDIR)$(libdir)/$$f"; \ done clean-libLTLIBRARIES: -test -z "$(lib_LTLIBRARIES)" || rm -f $(lib_LTLIBRARIES) @list='$(lib_LTLIBRARIES)'; for p in $$list; do \ dir="`echo $$p | sed -e 's|/[^/]*$$||'`"; \ test "$$dir" != "$$p" || dir=.; \ echo "rm -f \"$${dir}/so_locations\""; \ rm -f "$${dir}/so_locations"; \ done libbonoboui-2.la: $(libbonoboui_2_la_OBJECTS) $(libbonoboui_2_la_DEPENDENCIES) $(libbonoboui_2_la_LINK) -rpath $(libdir) $(libbonoboui_2_la_OBJECTS) $(libbonoboui_2_la_LIBADD) $(LIBS) mostlyclean-compile: -rm -f *.$(OBJEXT) distclean-compile: -rm -f *.tab.c @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bonobo-a11y.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bonobo-canvas-component.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bonobo-canvas-item.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bonobo-control-frame.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bonobo-control.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bonobo-dock-band.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bonobo-dock-item-grip.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bonobo-dock-item.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bonobo-dock-layout.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bonobo-dock.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bonobo-file-selector-util.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bonobo-plug.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bonobo-property-control.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bonobo-selector-widget.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bonobo-selector.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bonobo-socket.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bonobo-ui-component.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bonobo-ui-config-widget.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bonobo-ui-container.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bonobo-ui-engine-config.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bonobo-ui-engine.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bonobo-ui-init-gtk.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bonobo-ui-internal-toolbar.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bonobo-ui-main.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bonobo-ui-marshal-main.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bonobo-ui-node.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bonobo-ui-preferences.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bonobo-ui-sync-keys.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bonobo-ui-sync-menu.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bonobo-ui-sync-status.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bonobo-ui-sync-toolbar.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bonobo-ui-sync.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bonobo-ui-toolbar-button-item.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bonobo-ui-toolbar-control-item.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bonobo-ui-toolbar-item.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bonobo-ui-toolbar-popup-item.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bonobo-ui-toolbar-toggle-button-item.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bonobo-ui-toolbar.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bonobo-ui-type-builtins.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bonobo-ui-util.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bonobo-ui-win32.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bonobo-ui-xml.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bonobo-widget.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bonobo-window.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bonobo-zoomable-frame.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bonobo-zoomable.Plo@am__quote@ .c.o: @am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< @am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(COMPILE) -c $< .c.obj: @am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'` @am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(COMPILE) -c `$(CYGPATH_W) '$<'` .c.lo: @am__fastdepCC_TRUE@ $(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< @am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(LTCOMPILE) -c -o $@ $< mostlyclean-libtool: -rm -f *.lo clean-libtool: -rm -rf .libs _libs install-pkgconfigDATA: $(pkgconfig_DATA) @$(NORMAL_INSTALL) test -z "$(pkgconfigdir)" || $(MKDIR_P) "$(DESTDIR)$(pkgconfigdir)" @list='$(pkgconfig_DATA)'; test -n "$(pkgconfigdir)" || list=; \ for p in $$list; do \ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ echo "$$d$$p"; \ done | $(am__base_list) | \ while read files; do \ echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(pkgconfigdir)'"; \ $(INSTALL_DATA) $$files "$(DESTDIR)$(pkgconfigdir)" || exit $$?; \ done uninstall-pkgconfigDATA: @$(NORMAL_UNINSTALL) @list='$(pkgconfig_DATA)'; test -n "$(pkgconfigdir)" || list=; \ files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ test -n "$$files" || exit 0; \ echo " ( cd '$(DESTDIR)$(pkgconfigdir)' && rm -f" $$files ")"; \ cd "$(DESTDIR)$(pkgconfigdir)" && rm -f $$files install-libbonoboincludeHEADERS: $(libbonoboinclude_HEADERS) @$(NORMAL_INSTALL) test -z "$(libbonoboincludedir)" || $(MKDIR_P) "$(DESTDIR)$(libbonoboincludedir)" @list='$(libbonoboinclude_HEADERS)'; test -n "$(libbonoboincludedir)" || list=; \ for p in $$list; do \ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ echo "$$d$$p"; \ done | $(am__base_list) | \ while read files; do \ echo " $(INSTALL_HEADER) $$files '$(DESTDIR)$(libbonoboincludedir)'"; \ $(INSTALL_HEADER) $$files "$(DESTDIR)$(libbonoboincludedir)" || exit $$?; \ done uninstall-libbonoboincludeHEADERS: @$(NORMAL_UNINSTALL) @list='$(libbonoboinclude_HEADERS)'; test -n "$(libbonoboincludedir)" || list=; \ files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ test -n "$$files" || exit 0; \ echo " ( cd '$(DESTDIR)$(libbonoboincludedir)' && rm -f" $$files ")"; \ cd "$(DESTDIR)$(libbonoboincludedir)" && rm -f $$files ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ END { if (nonempty) { for (i in files) print i; }; }'`; \ mkid -fID $$unique tags: TAGS TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) set x; \ here=`pwd`; \ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ END { if (nonempty) { for (i in files) print i; }; }'`; \ shift; \ if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ test -n "$$unique" || unique=$$empty_fix; \ if test $$# -gt 0; then \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ "$$@" $$unique; \ else \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ $$unique; \ fi; \ fi ctags: CTAGS CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ END { if (nonempty) { for (i in files) print i; }; }'`; \ test -z "$(CTAGS_ARGS)$$unique" \ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ $$unique GTAGS: here=`$(am__cd) $(top_builddir) && pwd` \ && $(am__cd) $(top_srcdir) \ && gtags -i $(GTAGS_ARGS) "$$here" distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ dist_files=`for file in $$list; do echo $$file; done | \ sed -e "s|^$$srcdirstrip/||;t" \ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ case $$dist_files in \ */*) $(MKDIR_P) `echo "$$dist_files" | \ sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ sort -u` ;; \ esac; \ for file in $$dist_files; do \ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ if test -d $$d/$$file; then \ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ if test -d "$(distdir)/$$file"; then \ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ else \ test -f "$(distdir)/$$file" \ || cp -p $$d/$$file "$(distdir)/$$file" \ || exit 1; \ fi; \ done $(MAKE) $(AM_MAKEFLAGS) \ top_distdir="$(top_distdir)" distdir="$(distdir)" \ dist-hook check-am: all-am check: check-am all-am: Makefile $(LTLIBRARIES) $(DATA) $(HEADERS) installdirs: for dir in "$(DESTDIR)$(libdir)" "$(DESTDIR)$(pkgconfigdir)" "$(DESTDIR)$(libbonoboincludedir)"; do \ test -z "$$dir" || $(MKDIR_P) "$$dir"; \ done install: install-am install-exec: install-exec-am install-data: install-data-am uninstall: uninstall-am install-am: all-am @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am installcheck: installcheck-am install-strip: $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ `test -z '$(STRIP)' || \ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install mostlyclean-generic: clean-generic: -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES) distclean-generic: -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) maintainer-clean-generic: @echo "This command is intended for maintainers to use" @echo "it deletes files that may require special tools to rebuild." clean: clean-am clean-am: clean-generic clean-libLTLIBRARIES clean-libtool \ mostlyclean-am distclean: distclean-am -rm -rf ./$(DEPDIR) -rm -f Makefile distclean-am: clean-am distclean-compile distclean-generic \ distclean-tags dvi: dvi-am dvi-am: html: html-am html-am: info: info-am info-am: install-data-am: install-libbonoboincludeHEADERS install-pkgconfigDATA install-dvi: install-dvi-am install-dvi-am: install-exec-am: install-libLTLIBRARIES install-html: install-html-am install-html-am: install-info: install-info-am install-info-am: install-man: install-pdf: install-pdf-am install-pdf-am: install-ps: install-ps-am install-ps-am: installcheck-am: maintainer-clean: maintainer-clean-am -rm -rf ./$(DEPDIR) -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic mostlyclean: mostlyclean-am mostlyclean-am: mostlyclean-compile mostlyclean-generic \ mostlyclean-libtool pdf: pdf-am pdf-am: ps: ps-am ps-am: uninstall-am: uninstall-libLTLIBRARIES \ uninstall-libbonoboincludeHEADERS uninstall-pkgconfigDATA .MAKE: install-am install-strip .PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \ clean-libLTLIBRARIES clean-libtool ctags dist-hook distclean \ distclean-compile distclean-generic distclean-libtool \ distclean-tags distdir dvi dvi-am html html-am info info-am \ install install-am install-data install-data-am install-dvi \ install-dvi-am install-exec install-exec-am install-html \ install-html-am install-info install-info-am \ install-libLTLIBRARIES install-libbonoboincludeHEADERS \ install-man install-pdf install-pdf-am install-pkgconfigDATA \ install-ps install-ps-am install-strip installcheck \ installcheck-am installdirs maintainer-clean \ maintainer-clean-generic mostlyclean mostlyclean-compile \ mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \ tags uninstall uninstall-am uninstall-libLTLIBRARIES \ uninstall-libbonoboincludeHEADERS uninstall-pkgconfigDATA $(libbonoboui_2_la_OBJECTS): $(libbonoboui_built_sources) bonobo-ui-marshal.h: bonobo-ui-marshal.list $(GLIB_GENMARSHAL) $(GLIB_GENMARSHAL) $< --header --prefix=bonobo_ui_marshal > $@ bonobo-ui-marshal.c: bonobo-ui-marshal.list $(GLIB_GENMARSHAL) $(GLIB_GENMARSHAL) $< --body --prefix=bonobo_ui_marshal > $@ bonobo-ui-type-builtins.c: Makefile $(libbonoboui_h_sources) $(GLIB_MKENUMS) --fhead "#undef GTK_DISABLE_DEPRECATED\n\n" \ --fhead "#include \"config.h\"\n\n" \ --fhead "#include \"libbonoboui.h\"\n\n" \ --fhead "#include \"bonobo-ui-type-builtins.h\"\n\n" \ --fprod "\n/* enumerations from \"@filename@\" */" \ --vhead "static const G@Type@Value _@enum_name@_values[] = {" \ --vprod " { @VALUENAME@, \"@VALUENAME@\", \"@valuenick@\" }," \ --vtail " { 0, NULL, NULL }\n};\n\n" \ --vtail "GType\n@enum_name@_get_type (void)\n{\n" \ --vtail " static GType type = 0;\n\n" \ --vtail " if (!type)\n" \ --vtail " type = g_@type@_register_static (\"@EnumName@\", _@enum_name@_values);\n\n" \ --vtail " return type;\n}\n\n" \ $(filter-out $<,$^) > xgen-gtbec \ && cp xgen-gtbec $(@F) \ && rm -f xgen-gtbec bonobo-ui-type-builtins.h: Makefile $(libbonoboui_h_sources) $(GLIB_MKENUMS) --fhead "#ifndef __BONOBO_UI_TYPE_BUILTINS_H__\n" \ --fhead "#define __BONOBO_UI_TYPE_BUILTINS_H__ 1\n\n" \ --fhead "#include \n\n" \ --fhead "G_BEGIN_DECLS\n\n" \ --ftail "G_END_DECLS\n\n" \ --ftail "#endif /* __BONOBO_UI_TYPE_BUILTINS_H__ */\n" \ --fprod "\n/* --- @filename@ --- */" \ --eprod "#define BONOBO_TYPE_@ENUMSHORT@ @enum_name@_get_type()\n" \ --eprod "GType @enum_name@_get_type (void);\n" \ $(filter-out $<,$^) > xgen-gth \ && cp xgen-gth $(@F) \ && rm -f xgen-gth libbonoboui.defs: Makefile $(libbonoboui_h_sources) $(GLIB_MKENUMS) --comments ";; @comment@" \ --fprod "; enumerations from \"@filename@\"\n " \ --vhead "(define-@type@ @EnumName@" \ --vprod " (@valuenick@ @VALUENAME@)" \ --vtail ")" \ $(filter-out $<,$^) > xgen-gdef \ && (cmp -s xgen-gdef libbonoboui.defs || cp xgen-gdef libbonoboui.defs) \ && rm -f xgen-gdef dist-hook: for file in $(DONT_DIST_SOURCE) ; do \ rm -f $(distdir)/$$file ; \ done # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. .NOEXPORT: libbonoboui-2.24.5/bonobo/bonobo-canvas-item.h0000644000076400007640000000255511173072741016164 00000000000000/** * bonobo-canvas-item.h: Canvas item implementation for embedding remote * canvas-items * * Author: * Miguel de Icaza (miguel@kernel.org) * * (C) 1999, 2000 Helix Code, Inc. */ #ifndef _BONOBO_CANVAS_ITEM_H_ #define _BONOBO_CANVAS_ITEM_H_ #include #include #ifndef BONOBO_UI_DISABLE_DEPRECATED G_BEGIN_DECLS #define BONOBO_TYPE_CANVAS_ITEM (bonobo_canvas_item_get_type ()) #define BONOBO_CANVAS_ITEM(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), bonobo_canvas_item_get_type (), BonoboCanvasItem)) #define BONOBO_CANVAS_ITEM_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), bonobo_canvas_item_get_type (), BonoboCanvasItemClass)) #define BONOBO_IS_CANVAS_ITEM(o) (G_TYPE_CHECK_INSTANCE_TYPE((o), bonobo_canvas_item_get_type ())) typedef struct _BonoboCanvasItemPrivate BonoboCanvasItemPrivate; typedef struct _BonoboCanvasItem BonoboCanvasItem; struct _BonoboCanvasItem { GnomeCanvasItem canvas_item; BonoboCanvasItemPrivate *priv; }; typedef struct { GnomeCanvasItemClass parent_class; } BonoboCanvasItemClass; GType bonobo_canvas_item_get_type (void) G_GNUC_CONST; void bonobo_canvas_item_set_bounds (BonoboCanvasItem *item, double x1, double y1, double x2, double y2); G_END_DECLS #endif /* BONOBO_UI_DISABLE_DEPRECATED */ #endif /* _BONOBO_CANVAS_ITEM_H_ */ libbonoboui-2.24.5/bonobo/bonobo-ui-config-widget.c0000644000076400007640000002643211173072741017111 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ /** * bonobo-ui-config-widget.c: Bonobo Component UIConfig widget * * Authors: * Michael Meeks (michael@ximian.com) * * Copyright 2001 Ximian, Inc. */ #undef GTK_DISABLE_DEPRECATED #include "config.h" #include #include #include #include #include #include #include #include #include G_DEFINE_TYPE (BonoboUIConfigWidget, bonobo_ui_config_widget, GTK_TYPE_VBOX) struct _BonoboUIConfigWidgetPrivate { GtkTreeView *list_view; GtkListStore *list_store; GtkWidget *left_attrs; GtkWidget *right_attrs; GtkWidget *show; GtkWidget *hide; GtkWidget *tooltips; GtkWidget *icon; GtkWidget *text; GtkWidget *icon_and_text; GtkWidget *priority_text; char *cur_path; }; static void set_values (BonoboUIConfigWidget *config) { const char *txt; BonoboUINode *node; gboolean hidden = FALSE; gboolean tooltips = TRUE; GtkToolbarStyle style; g_return_if_fail (config->priv->cur_path != NULL); node = bonobo_ui_engine_get_path (config->engine, config->priv->cur_path); /* Set hidden flag */ if ((txt = bonobo_ui_node_peek_attr (node, "hidden"))) hidden = atoi (txt); if (hidden) gtk_toggle_button_set_active ( GTK_TOGGLE_BUTTON (config->priv->hide), TRUE); else gtk_toggle_button_set_active ( GTK_TOGGLE_BUTTON (config->priv->show), TRUE); /* Set the look */ style = bonobo_ui_sync_toolbar_get_look (config->engine, node); switch (style) { case GTK_TOOLBAR_ICONS: gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (config->priv->icon), TRUE); break; case GTK_TOOLBAR_BOTH: gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (config->priv->icon_and_text), TRUE); break; case GTK_TOOLBAR_TEXT: gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (config->priv->text), TRUE); break; case GTK_TOOLBAR_BOTH_HORIZ: /* priority text */ gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (config->priv->priority_text), TRUE); break; default: g_warning ("Bogus style %u", style); break; } /* Set the tooltips */ if ((txt = bonobo_ui_node_peek_attr (node, "tips"))) tooltips = atoi (txt); gtk_toggle_button_set_active ( GTK_TOGGLE_BUTTON (config->priv->tooltips), tooltips); } static void list_selection_changed (GtkTreeSelection *selection, BonoboUIConfigWidget *config) { GtkTreeIter iter; BonoboUINode *node; GtkTreeModel *model; if (!gtk_tree_selection_get_selected ( gtk_tree_view_get_selection (config->priv->list_view), &model, &iter)) return; g_free (config->priv->cur_path); gtk_tree_model_get (model, &iter, 1, &config->priv->cur_path, -1); node = bonobo_ui_engine_get_path ( config->engine, config->priv->cur_path); gtk_widget_set_sensitive (config->priv->left_attrs, node != NULL); gtk_widget_set_sensitive (config->priv->right_attrs, node != NULL); if (node) set_values (config); else g_warning ("Toolbar has been removed"); } static void populate_list (GtkTreeView *list_view, BonoboUIConfigWidget *config) { int idx = 0; BonoboUINode *l, *start; GtkListStore *list_store; list_store = GTK_LIST_STORE (gtk_tree_view_get_model (list_view)); start = bonobo_ui_node_children ( bonobo_ui_engine_get_xml (config->engine)->root); if (!start) g_warning ("No tree"); for (l = start; l; l = bonobo_ui_node_next (l)) { if (bonobo_ui_node_has_name (l, "dockitem")) { const char *name; if ((name = bonobo_ui_node_peek_attr (l, "tip")) || (name = bonobo_ui_node_peek_attr (l, "name"))) { char *path; GtkTreeIter iter; path = bonobo_ui_xml_make_path (l); gtk_list_store_append (list_store, &iter); gtk_list_store_set (list_store, &iter, 0, name, 1, path, -1); if (!idx++) { gtk_tree_selection_select_iter ( gtk_tree_view_get_selection (list_view), &iter); config->priv->cur_path = path; } else g_free (path); } } } } static void show_hide_cb (GtkWidget *button, BonoboUIConfigWidget *config) { g_return_if_fail (config->priv->cur_path != NULL); if (button == config->priv->show) bonobo_ui_engine_config_remove ( bonobo_ui_engine_get_config (config->engine), config->priv->cur_path, "hidden"); else bonobo_ui_engine_config_add ( bonobo_ui_engine_get_config (config->engine), config->priv->cur_path, "hidden", "1"); } static void tooltips_cb (GtkWidget *button, BonoboUIConfigWidget *config) { g_return_if_fail (config->priv->cur_path != NULL); if (gtk_toggle_button_get_active ( GTK_TOGGLE_BUTTON (button))) bonobo_ui_engine_config_remove ( bonobo_ui_engine_get_config (config->engine), config->priv->cur_path, "tips"); else bonobo_ui_engine_config_add ( bonobo_ui_engine_get_config (config->engine), config->priv->cur_path, "tips", "0"); } static void look_cb (GtkWidget *button, BonoboUIConfigWidget *config) { const char *value = NULL; g_return_if_fail (config->priv->cur_path != NULL); if (button == config->priv->icon) value = "icon"; else if (button == config->priv->icon_and_text) value = "both"; else if (button == config->priv->text) value = "text"; else if (button == config->priv->priority_text) value = "both_horiz"; else g_warning ("Unknown look selection"); bonobo_ui_engine_config_add ( bonobo_ui_engine_get_config (config->engine), config->priv->cur_path, "look", value); } static void widgets_init (BonoboUIConfigWidget *config, GtkAccelGroup *accel_group) { BonoboUIConfigWidgetPrivate *priv; GtkWidget *table2; GtkWidget *vbox6; GtkWidget *frame6; GtkWidget *vbox7; GSList *visible_group = NULL; GtkWidget *frame7; GtkWidget *toolbar_list; GtkWidget *frame5; GtkWidget *vbox5; GSList *look_group = NULL; priv = config->priv; table2 = gtk_table_new (2, 2, FALSE); gtk_box_pack_start (GTK_BOX (config), table2, TRUE, TRUE, 0); priv->left_attrs = vbox6 = gtk_vbox_new (FALSE, 0); gtk_table_attach (GTK_TABLE (table2), vbox6, 0, 1, 1, 2, (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), (GtkAttachOptions) (GTK_FILL), 0, 0); frame6 = gtk_frame_new (_("Visible")); gtk_box_pack_start (GTK_BOX (vbox6), frame6, FALSE, FALSE, 0); vbox7 = gtk_vbox_new (FALSE, 0); gtk_container_add (GTK_CONTAINER (frame6), vbox7); priv->show = gtk_radio_button_new_with_mnemonic (visible_group, _("_Show")); g_signal_connect (priv->show, "clicked", G_CALLBACK (show_hide_cb), config); visible_group = gtk_radio_button_get_group (GTK_RADIO_BUTTON (priv->show)); gtk_box_pack_start (GTK_BOX (vbox7), priv->show, FALSE, FALSE, 0); priv->hide = gtk_radio_button_new_with_mnemonic (visible_group, _("_Hide")); g_signal_connect (priv->hide, "clicked", G_CALLBACK (show_hide_cb), config); visible_group = gtk_radio_button_get_group (GTK_RADIO_BUTTON (priv->hide)); gtk_box_pack_start (GTK_BOX (vbox7), priv->hide, FALSE, FALSE, 0); priv->tooltips = gtk_check_button_new_with_mnemonic (_("_View tooltips")); gtk_box_pack_start (GTK_BOX (vbox6), priv->tooltips, FALSE, FALSE, 0); g_signal_connect (priv->tooltips, "clicked", G_CALLBACK (tooltips_cb), config); frame7 = gtk_frame_new (_("Toolbars")); gtk_table_attach (GTK_TABLE (table2), frame7, 0, 2, 0, 1, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), 0, 0); priv->list_store = gtk_list_store_new (2, G_TYPE_STRING, G_TYPE_STRING); toolbar_list = gtk_tree_view_new_with_model ( GTK_TREE_MODEL (priv->list_store)); priv->list_view = GTK_TREE_VIEW (toolbar_list); gtk_tree_view_insert_column_with_attributes ( priv->list_view, 0, _("toolbars"), gtk_cell_renderer_text_new (), "text", 0, NULL); gtk_tree_view_set_headers_visible (priv->list_view, FALSE); gtk_tree_selection_set_mode ( gtk_tree_view_get_selection (priv->list_view), GTK_SELECTION_BROWSE); gtk_container_add (GTK_CONTAINER (frame7), toolbar_list); GTK_WIDGET_SET_FLAGS (toolbar_list, GTK_CAN_DEFAULT); frame5 = gtk_frame_new (_("Look")); gtk_table_attach (GTK_TABLE (table2), frame5, 1, 2, 1, 2, (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), (GtkAttachOptions) (GTK_FILL), 0, 0); priv->right_attrs = vbox5 = gtk_vbox_new (FALSE, 0); gtk_container_add (GTK_CONTAINER (frame5), vbox5); priv->icon = gtk_radio_button_new_with_mnemonic (look_group, _("_Icon")); g_signal_connect (priv->icon, "clicked", G_CALLBACK (look_cb), config); look_group = gtk_radio_button_get_group (GTK_RADIO_BUTTON (priv->icon)); gtk_box_pack_start (GTK_BOX (vbox5), priv->icon, FALSE, FALSE, 0); priv->icon_and_text = gtk_radio_button_new_with_mnemonic (look_group, _("_Text and Icon")); g_signal_connect (priv->icon_and_text, "clicked", G_CALLBACK (look_cb), config); look_group = gtk_radio_button_get_group (GTK_RADIO_BUTTON (priv->icon_and_text)); gtk_box_pack_start (GTK_BOX (vbox5), priv->icon_and_text, FALSE, FALSE, 0); priv->text = gtk_radio_button_new_with_mnemonic (look_group, _("Text only")); g_signal_connect (priv->text, "clicked", G_CALLBACK (look_cb), config); look_group = gtk_radio_button_get_group (GTK_RADIO_BUTTON (priv->text)); gtk_box_pack_start (GTK_BOX (vbox5), priv->text, FALSE, FALSE, 0); priv->priority_text = gtk_radio_button_new_with_mnemonic (look_group, _("_Priority text only")); g_signal_connect (priv->priority_text, "clicked", G_CALLBACK (look_cb), config); look_group = gtk_radio_button_get_group (GTK_RADIO_BUTTON (priv->priority_text)); gtk_box_pack_start (GTK_BOX (vbox5), priv->priority_text, FALSE, FALSE, 0); populate_list (priv->list_view, config); g_signal_connect ( gtk_tree_view_get_selection (priv->list_view), "changed", G_CALLBACK (list_selection_changed), config); set_values (config); gtk_widget_show_all (GTK_WIDGET (config)); gtk_widget_hide (GTK_WIDGET (config)); } static void bonobo_ui_config_widget_init (BonoboUIConfigWidget *config) { config->priv = g_new0 (BonoboUIConfigWidgetPrivate, 1); } static void bonobo_ui_config_widget_finalize (GObject *object) { BonoboUIConfigWidget *config = BONOBO_UI_CONFIG_WIDGET (object); g_free (config->priv); G_OBJECT_CLASS (bonobo_ui_config_widget_parent_class)->finalize (object); } GtkWidget * bonobo_ui_config_widget_construct (BonoboUIConfigWidget *config, BonoboUIEngine *engine, GtkAccelGroup *accel_group) { config->engine = engine; widgets_init (config, accel_group); return GTK_WIDGET (config); } /** * bonobo_ui_config_widget_new: * * Creates a new BonoboUIConfigWidget widget, this contains * a List of toolbars and allows configuration of the widgets. * * Returns: A pointer to the newly-created BonoboUIConfigWidget widget. */ GtkWidget * bonobo_ui_config_widget_new (BonoboUIEngine *engine, GtkAccelGroup *accel_group) { BonoboUIConfigWidget *config = g_object_new ( bonobo_ui_config_widget_get_type (), NULL); return bonobo_ui_config_widget_construct ( config, engine, accel_group); } static void bonobo_ui_config_widget_class_init (BonoboUIConfigWidgetClass *klass) { GObjectClass *gobject_class; g_return_if_fail (klass != NULL); gobject_class = (GObjectClass *) klass; gobject_class->finalize = bonobo_ui_config_widget_finalize; } libbonoboui-2.24.5/bonobo/bonobo-property-control.h0000644000076400007640000000527411173072741017320 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ /** * bonobo-property-control.h: Property control implementation. * * Author: * Iain Holmes * * Copyright 2000, Helix Code, Inc. */ #ifndef _BONOBO_PROPERTY_CONTROL_H_ #define _BONOBO_PROPERTY_CONTROL_H_ #include #include G_BEGIN_DECLS typedef struct _BonoboPropertyControl BonoboPropertyControl; typedef struct _BonoboPropertyControlPrivate BonoboPropertyControlPrivate; #define BONOBO_PROPERTY_CONTROL_CHANGED "Bonobo::PropertyControl_changed" #define BONOBO_TYPE_PROPERTY_CONTROL (bonobo_property_control_get_type ()) #define BONOBO_PROPERTY_CONTROL(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), BONOBO_TYPE_PROPERTY_CONTROL, BonoboPropertyControl)) #define BONOBO_PROPERTY_CONTROL_CLASS(k) (G_TYPE_CHECK_CLASS_CAST((k), BONOBO_TYPE_PROPERTY_CONTROL, BonoboPropertyControlClass)) #define BONOBO_IS_PROPERTY_CONTROL(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), BONOBO_TYPE_PROPERTY_CONTROL)) #define BONOBO_IS_PROPERTY_CONTROL_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), BONOBO_TYPE_PROPERTY_CONTROL)) typedef BonoboControl *(* BonoboPropertyControlGetControlFn) (BonoboPropertyControl *control, int page_number, void *closure); struct _BonoboPropertyControl { BonoboObject object; BonoboPropertyControlPrivate *priv; }; typedef struct { BonoboObjectClass parent_class; POA_Bonobo_PropertyControl__epv epv; gpointer dummy[4]; void (* action) (BonoboPropertyControl *property_control, Bonobo_PropertyControl_Action action); } BonoboPropertyControlClass; GType bonobo_property_control_get_type (void) G_GNUC_CONST; BonoboPropertyControl *bonobo_property_control_construct (BonoboPropertyControl *property_control, BonoboEventSource *event_source, BonoboPropertyControlGetControlFn get_fn, int num_pages, void *closure); BonoboPropertyControl *bonobo_property_control_new_full (BonoboPropertyControlGetControlFn get_fn, int num_pages, BonoboEventSource *event_source, void *closure); BonoboPropertyControl *bonobo_property_control_new (BonoboPropertyControlGetControlFn get_fn, int num_pages, void *closure); void bonobo_property_control_changed (BonoboPropertyControl *property_control, CORBA_Environment *opt_ev); BonoboEventSource *bonobo_property_control_get_event_source (BonoboPropertyControl *property_control); G_END_DECLS #endif /* _BONOBO_PROPERTY_CONTROL_H_ */ libbonoboui-2.24.5/bonobo/bonobo-ui-engine-private.h0000644000076400007640000000164211173072741017301 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ /* * bonobo-ui-engine-private.h: Private Bonobo UI/XML Sync engine bits * * Author: * Michael Meeks (michael@helixcode.com) * * Copyright 2001 Helix Code, Inc. */ #ifndef _BONOBO_UI_ENGINE_PRIVATE_H_ #define _BONOBO_UI_ENGINE_PRIVATE_H_ G_BEGIN_DECLS #include #include #include struct _BonoboUIEnginePrivate { GObject *view; BonoboUIXml *tree; int frozen; GSList *syncs; GSList *state_updates; GSList *components; BonoboUIContainer *container; BonoboUIEngineConfig *config; GHashTable *cmd_to_node; }; BonoboUIXml *bonobo_ui_engine_get_xml (BonoboUIEngine *engine); BonoboUIEngineConfig *bonobo_ui_engine_get_config (BonoboUIEngine *engine); G_END_DECLS #endif /* _BONOBO_UI_ENGINE_H_ */ libbonoboui-2.24.5/bonobo/bonobo-ui-toolbar-toggle-button-item.c0000644000076400007640000000761211173072741021550 00000000000000/* -*- Mode: C; indent-tabs-mode: t; c-basic-offset: 8; tab-width: 8 -*- */ /** * bonobo-ui-toolbar-toggle-button-item.h * * Author: * Ettore Perazzoli (ettore@ximian.com) * * Copyright (C) 2000 Ximian, Inc. */ #undef GTK_DISABLE_DEPRECATED #include #include #include G_DEFINE_TYPE (BonoboUIToolbarToggleButtonItem, bonobo_ui_toolbar_toggle_button_item, BONOBO_TYPE_UI_TOOLBAR_BUTTON_ITEM) enum { TOGGLED, LAST_SIGNAL }; static guint signals[LAST_SIGNAL] = { 0 }; /* GtkToggleButton callback. */ static void button_widget_toggled_cb (GtkToggleButton *toggle_button, gpointer user_data) { g_signal_emit (user_data, signals[TOGGLED], 0); } static void impl_set_state (BonoboUIToolbarItem *item, const char *state) { GtkButton *button; gboolean active = atoi (state); button = bonobo_ui_toolbar_button_item_get_button_widget ( BONOBO_UI_TOOLBAR_BUTTON_ITEM (item)); if (GTK_WIDGET_STATE (GTK_WIDGET (button)) != active) gtk_toggle_button_set_active ( GTK_TOGGLE_BUTTON (button), active); } /* GObject initialization. */ static void bonobo_ui_toolbar_toggle_button_item_class_init ( BonoboUIToolbarToggleButtonItemClass *klass) { BonoboUIToolbarItemClass *item_class = (BonoboUIToolbarItemClass *) klass; item_class->set_state = impl_set_state; signals[TOGGLED] = g_signal_new ( "toggled", G_TYPE_FROM_CLASS (klass), G_SIGNAL_RUN_FIRST, G_STRUCT_OFFSET (BonoboUIToolbarToggleButtonItemClass, toggled), NULL, NULL, g_cclosure_marshal_VOID__VOID, G_TYPE_NONE, 0); } static void bonobo_ui_toolbar_toggle_button_item_init ( BonoboUIToolbarToggleButtonItem *toolbar_toggle_button_item) { /* Nothing to do here. */ } static void proxy_toggle_click_cb (GtkWidget *button, GtkObject *item) { gboolean active; char *new_state; active = gtk_toggle_button_get_active ( GTK_TOGGLE_BUTTON (button)); new_state = g_strdup_printf ("%d", active); g_signal_emit_by_name (item, "state_altered", new_state); g_free (new_state); } void bonobo_ui_toolbar_toggle_button_item_construct (BonoboUIToolbarToggleButtonItem *toggle_button_item, GdkPixbuf *icon, const char *label) { GtkWidget *button_widget; button_widget = gtk_toggle_button_new (); g_signal_connect_object ( button_widget, "toggled", G_CALLBACK (button_widget_toggled_cb), toggle_button_item, 0); g_signal_connect_object ( button_widget, "clicked", G_CALLBACK (proxy_toggle_click_cb), toggle_button_item, 0); bonobo_ui_toolbar_button_item_construct ( BONOBO_UI_TOOLBAR_BUTTON_ITEM (toggle_button_item), GTK_BUTTON (button_widget), icon, label); } GtkWidget * bonobo_ui_toolbar_toggle_button_item_new (GdkPixbuf *icon, const char *label) { BonoboUIToolbarToggleButtonItem *toggle_button_item; toggle_button_item = g_object_new ( bonobo_ui_toolbar_toggle_button_item_get_type (), NULL); bonobo_ui_toolbar_toggle_button_item_construct (toggle_button_item, icon, label); return GTK_WIDGET (toggle_button_item); } void bonobo_ui_toolbar_toggle_button_item_set_active (BonoboUIToolbarToggleButtonItem *item, gboolean active) { GtkButton *button_widget; g_return_if_fail (item != NULL); g_return_if_fail (BONOBO_IS_UI_TOOLBAR_TOGGLE_BUTTON_ITEM (item)); button_widget = bonobo_ui_toolbar_button_item_get_button_widget (BONOBO_UI_TOOLBAR_BUTTON_ITEM (item)); gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (button_widget), active); } gboolean bonobo_ui_toolbar_toggle_button_item_get_active (BonoboUIToolbarToggleButtonItem *item) { GtkButton *button_widget; g_return_val_if_fail (item != NULL, FALSE); g_return_val_if_fail (BONOBO_IS_UI_TOOLBAR_TOGGLE_BUTTON_ITEM (item), FALSE); button_widget = bonobo_ui_toolbar_button_item_get_button_widget (BONOBO_UI_TOOLBAR_BUTTON_ITEM (item)); return gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (button_widget)); } libbonoboui-2.24.5/bonobo/bonobo-dock.c0000644000076400007640000014260111173072741014665 00000000000000/* bonobo-dock.c Copyright (C) 1998 Free Software Foundation The Gnome Library is free software; you can redistribute it and/or modify it under the terms of the GNU Library General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. The Gnome Library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Library General Public License for more details. You should have received a copy of the GNU Library General Public License along with the Gnome Library; see the file COPYING.LIB. If not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. Author: Ettore Perazzoli */ /* @NOTATION@ */ #include "config.h" #include #include #include #include "bonobo-dock.h" #include "bonobo-dock-band.h" #include "bonobo-dock-item.h" G_DEFINE_TYPE (BonoboDock, bonobo_dock, GTK_TYPE_CONTAINER) #define noBONOBO_DOCK_DEBUG /* FIXME: To be removed. */ #if defined BONOBO_DOCK_DEBUG && defined __GNUC__ #define DEBUG(x) \ do \ { \ printf ("%s.%d: ", __FUNCTION__, __LINE__); \ printf x; \ putchar ('\n'); \ } \ while (0) #else #define DEBUG(x) #endif struct _BonoboDockPrivate { GdkDragContext *current_drag; }; enum { LAYOUT_CHANGED, LAST_SIGNAL }; static void bonobo_dock_size_request (GtkWidget *widget, GtkRequisition *requisition); static void bonobo_dock_size_allocate (GtkWidget *widget, GtkAllocation *allocation); static void bonobo_dock_map (GtkWidget *widget); static void bonobo_dock_unmap (GtkWidget *widget); static void bonobo_dock_add (GtkContainer *container, GtkWidget *child); static void bonobo_dock_remove (GtkContainer *container, GtkWidget *widget); static void bonobo_dock_forall (GtkContainer *container, gboolean include_internals, GtkCallback callback, gpointer callback_data); static void bonobo_dock_finalize (GObject *object); static void size_request_v (GList *list, GtkRequisition *requisition); static void size_request_h (GList *list, GtkRequisition *requisition); static gint size_allocate_v (GList *list, gint start_x, gint start_y, guint width, gint direction); static gint size_allocate_h (GList *list, gint start_x, gint start_y, guint width, gint direction); static void map_widget (GtkWidget *w); static void map_widget_foreach (gpointer data, gpointer user_data); static void map_band_list (GList *list); static void unmap_widget (GtkWidget *w); static void unmap_widget_foreach (gpointer data, gpointer user_data); static void unmap_band_list (GList *list); static gboolean remove_from_band_list (GList **list, BonoboDockBand *child); static void forall_helper (GList *list, GtkCallback callback, gpointer callback_data); static void drag_begin (GtkWidget *widget, gpointer data); static void drag_end_bands (GList **list, BonoboDockItem *item); static void drag_end (GtkWidget *widget, gpointer data); static gboolean drag_new (BonoboDock *dock, BonoboDockItem *item, GList **area, GList *where, gint x, gint y, gboolean is_vertical); static gboolean drag_to (BonoboDock *dock, BonoboDockItem *item, GList *where, gint x, gint y, gboolean is_vertical); static gboolean drag_floating (BonoboDock *dock, BonoboDockItem *item, gint x, gint y, gint rel_x, gint rel_y); static gboolean drag_check (BonoboDock *dock, BonoboDockItem *item, GList **area, gint x, gint y, gboolean is_vertical); static void drag_snap (BonoboDock *dock, GtkWidget *widget, gint x, gint y); static void drag_motion (GtkWidget *widget, gint x, gint y, gpointer data); static BonoboDockItem *get_docked_item_by_name (BonoboDock *dock, const gchar *name, BonoboDockPlacement *placement_return, guint *num_band_return, guint *band_position_return, guint *offset_return); static BonoboDockItem *get_floating_item_by_name (BonoboDock *dock, const gchar *name); static void connect_drag_signals (BonoboDock *dock, GtkWidget *item); static guint dock_signals[LAST_SIGNAL] = { 0 }; static void bonobo_dock_class_init (BonoboDockClass *class) { GtkObjectClass *object_class; GObjectClass *gobject_class; GtkWidgetClass *widget_class; GtkContainerClass *container_class; object_class = (GtkObjectClass *) class; gobject_class = (GObjectClass *) class; widget_class = (GtkWidgetClass *) class; container_class = (GtkContainerClass *) class; gobject_class->finalize = bonobo_dock_finalize; widget_class->size_request = bonobo_dock_size_request; widget_class->size_allocate = bonobo_dock_size_allocate; widget_class->map = bonobo_dock_map; widget_class->unmap = bonobo_dock_unmap; container_class->add = bonobo_dock_add; container_class->remove = bonobo_dock_remove; container_class->forall = bonobo_dock_forall; dock_signals[LAYOUT_CHANGED] = g_signal_new ("layout_changed", G_TYPE_FROM_CLASS (object_class), G_SIGNAL_RUN_LAST, G_STRUCT_OFFSET (BonoboDockClass, layout_changed), NULL, NULL, g_cclosure_marshal_VOID__VOID, G_TYPE_NONE, 0); } static void bonobo_dock_init (BonoboDock *dock) { GTK_WIDGET_SET_FLAGS (GTK_WIDGET (dock), GTK_NO_WINDOW); dock->_priv = NULL; /* XXX: when there is some private stuff enable this dock->_priv = g_new0(BonoboDockPrivate, 1); */ dock->client_area = NULL; dock->top_bands = NULL; dock->bottom_bands = NULL; dock->right_bands = NULL; dock->left_bands = NULL; dock->floating_children = NULL; dock->floating_items_allowed = TRUE; } static void size_request_v (GList *list, GtkRequisition *requisition) { for (; list != NULL; list = list->next) { GtkWidget *w; GtkRequisition req; w = GTK_WIDGET (list->data); gtk_widget_size_request (w, &req); requisition->width += req.width; requisition->height = MAX (requisition->height, req.height); } } static void size_request_h (GList *list, GtkRequisition *requisition) { for (list = list; list != NULL; list = list->next) { GtkWidget *w; GtkRequisition req; w = GTK_WIDGET (list->data); gtk_widget_size_request (w, &req); requisition->height += req.height; requisition->width = MAX (requisition->width, req.width); } } static void bonobo_dock_size_request (GtkWidget *widget, GtkRequisition *requisition) { BonoboDock *dock; GList *lp; dock = BONOBO_DOCK (widget); if (dock->client_area != NULL && GTK_WIDGET_VISIBLE (dock->client_area)) gtk_widget_size_request (dock->client_area, requisition); else { requisition->width = 0; requisition->height = 0; } size_request_v (dock->left_bands, requisition); size_request_v (dock->right_bands, requisition); size_request_h (dock->top_bands, requisition); size_request_h (dock->bottom_bands, requisition); lp = dock->floating_children; while (lp != NULL) { GtkWidget *w; GtkRequisition float_item_requisition; w = lp->data; lp = lp->next; gtk_widget_size_request (w, &float_item_requisition); } } static gint size_allocate_h (GList *list, gint start_x, gint start_y, guint width, gint direction) { GtkAllocation allocation; allocation.x = start_x; allocation.y = start_y; allocation.width = width; if (direction < 0) list = g_list_last (list); while (list != NULL) { GtkWidget *w; w = GTK_WIDGET (list->data); allocation.height = w->requisition.height; if (direction > 0) { gtk_widget_size_allocate (w, &allocation); allocation.y += allocation.height; list = list->next; } else { allocation.y -= allocation.height; gtk_widget_size_allocate (w, &allocation); list = list->prev; } } return allocation.y; } static gint size_allocate_v (GList *list, gint start_x, gint start_y, guint height, gint direction) { GtkAllocation allocation; allocation.x = start_x; allocation.y = start_y; allocation.height = height; if (direction < 0) list = g_list_last (list); while (list != NULL) { GtkWidget *w; w = GTK_WIDGET (list->data); allocation.width = w->requisition.width; if (direction > 0) { gtk_widget_size_allocate (w, &allocation); allocation.x += allocation.width; list = list->next; } else { allocation.x -= allocation.width; gtk_widget_size_allocate (w, &allocation); list = list->prev; } } return allocation.x; } static void bonobo_dock_size_allocate (GtkWidget *widget, GtkAllocation *allocation) { BonoboDock *dock; gint top_bands_y, bottom_bands_y; gint left_bands_x, right_bands_x; GtkAllocation child_allocation; GList *lp; dock = BONOBO_DOCK (widget); widget->allocation = *allocation; top_bands_y = size_allocate_h (dock->top_bands, allocation->x, allocation->y, allocation->width, +1); bottom_bands_y = size_allocate_h (dock->bottom_bands, allocation->x, allocation->y + allocation->height, allocation->width, -1); child_allocation.height = MAX (bottom_bands_y - top_bands_y, 1); left_bands_x = size_allocate_v (dock->left_bands, allocation->x, top_bands_y, child_allocation.height, +1); right_bands_x = size_allocate_v (dock->right_bands, allocation->x + allocation->width, top_bands_y, child_allocation.height, -1); child_allocation.width = MAX (right_bands_x - left_bands_x, 1); child_allocation.x = left_bands_x; child_allocation.y = top_bands_y; dock->client_rect = child_allocation; if (dock->client_area != NULL && GTK_WIDGET_VISIBLE (dock->client_area)) gtk_widget_size_allocate (dock->client_area, &child_allocation); lp = dock->floating_children; while (lp != NULL) { GtkWidget *w; GtkAllocation float_item_allocation; w = lp->data; lp = lp->next; float_item_allocation.x = 0; float_item_allocation.y = 0; float_item_allocation.width = w->requisition.width; float_item_allocation.height = w->requisition.height; gtk_widget_size_allocate (w, &float_item_allocation); } } static void map_widget (GtkWidget *w) { if (w != NULL && GTK_WIDGET_VISIBLE (w) && ! GTK_WIDGET_MAPPED (w)) gtk_widget_map (w); } static void unmap_widget (GtkWidget *w) { if (w != NULL && GTK_WIDGET_VISIBLE (w) && GTK_WIDGET_MAPPED (w)) gtk_widget_unmap (w); } static void map_widget_foreach (gpointer data, gpointer user_data) { map_widget (GTK_WIDGET (data)); } static void unmap_widget_foreach (gpointer data, gpointer user_data) { unmap_widget (GTK_WIDGET (data)); } static void map_band_list (GList *list) { while (list != NULL) { GtkWidget *w; w = GTK_WIDGET (list->data); map_widget (w); list = list->next; } } static void unmap_band_list (GList *list) { while (list != NULL) { GtkWidget *w; w = GTK_WIDGET (list->data); unmap_widget (w); list = list->next; } } static void bonobo_dock_map (GtkWidget *widget) { BonoboDock *dock; g_return_if_fail (widget != NULL); g_return_if_fail (BONOBO_IS_DOCK(widget)); GTK_WIDGET_CLASS(bonobo_dock_parent_class)->map (widget); dock = BONOBO_DOCK (widget); map_widget (dock->client_area); map_band_list (dock->top_bands); map_band_list (dock->bottom_bands); map_band_list (dock->left_bands); map_band_list (dock->right_bands); g_list_foreach (dock->floating_children, map_widget_foreach, NULL); } static void bonobo_dock_unmap (GtkWidget *widget) { BonoboDock *dock; g_return_if_fail (widget != NULL); g_return_if_fail (BONOBO_IS_DOCK(widget)); dock = BONOBO_DOCK (widget); unmap_widget (dock->client_area); unmap_band_list (dock->top_bands); unmap_band_list (dock->bottom_bands); unmap_band_list (dock->left_bands); unmap_band_list (dock->right_bands); g_list_foreach (dock->floating_children, unmap_widget_foreach, NULL); GTK_WIDGET_CLASS (bonobo_dock_parent_class)->unmap (widget); } /* GtkContainer methods. */ static void bonobo_dock_add (GtkContainer *container, GtkWidget *child) { BonoboDock *dock; dock = BONOBO_DOCK (container); bonobo_dock_add_item (dock, BONOBO_DOCK_ITEM(child), BONOBO_DOCK_TOP, 0, 0, 0, TRUE); } static gboolean remove_from_band_list (GList **list, BonoboDockBand *child) { GList *lp; for (lp = *list; lp != NULL; lp = lp->next) { if (lp->data == child) { gtk_widget_unparent (GTK_WIDGET (child)); *list = g_list_remove_link (*list, lp); g_list_free (lp); return TRUE; } } return FALSE; } static void bonobo_dock_remove (GtkContainer *container, GtkWidget *widget) { BonoboDock *dock; dock = BONOBO_DOCK (container); if (dock->client_area == widget) { gtk_widget_unparent (widget); dock->client_area = NULL; gtk_widget_queue_resize (GTK_WIDGET (dock)); } else { /* Check if it's a floating child. */ { GList *lp; lp = dock->floating_children; while (lp != NULL) { GtkWidget *w; w = lp->data; if (w == widget) { gtk_widget_unparent (w); dock->floating_children = g_list_remove_link (dock->floating_children, lp); g_list_free (lp); return; } lp = lp->next; } } /* Then it must be one of the bands. */ { BonoboDockBand *band; g_return_if_fail (BONOBO_IS_DOCK_BAND (widget)); band = BONOBO_DOCK_BAND (widget); if (remove_from_band_list (&dock->top_bands, band) || remove_from_band_list (&dock->bottom_bands, band) || remove_from_band_list (&dock->left_bands, band) || remove_from_band_list (&dock->right_bands, band)) { gtk_widget_queue_resize (GTK_WIDGET (dock)); return; } } } } static void forall_helper (GList *list, GtkCallback callback, gpointer callback_data) { while (list != NULL) { GtkWidget *w; w = GTK_WIDGET(list->data); list = list->next; (* callback) (w, callback_data); } } static void bonobo_dock_forall (GtkContainer *container, gboolean include_internals, GtkCallback callback, gpointer callback_data) { BonoboDock *dock; GList *lp; g_return_if_fail (container != NULL); g_return_if_fail (BONOBO_IS_DOCK (container)); g_return_if_fail (callback != NULL); dock = BONOBO_DOCK (container); forall_helper (dock->top_bands, callback, callback_data); forall_helper (dock->bottom_bands, callback, callback_data); forall_helper (dock->left_bands, callback, callback_data); forall_helper (dock->right_bands, callback, callback_data); lp = dock->floating_children; while (lp != NULL) { GtkWidget *w; w = lp->data; lp = lp->next; (* callback) (w, callback_data); } if (dock->client_area != NULL) (* callback) (dock->client_area, callback_data); } static void bonobo_dock_finalize (GObject *object) { BonoboDock *self = BONOBO_DOCK (object); g_free (self->_priv); self->_priv = NULL; G_OBJECT_CLASS (bonobo_dock_parent_class)->finalize (object); } static void new_band_setup (BonoboDock *dock, GtkWidget *new_band, GtkOrientation orientation) { bonobo_dock_band_set_orientation ( BONOBO_DOCK_BAND (new_band), orientation); gtk_widget_set_parent (GTK_WIDGET (new_band), GTK_WIDGET (dock)); gtk_widget_queue_resize (GTK_WIDGET (new_band)); gtk_widget_show (GTK_WIDGET (new_band)); } /* When an item is being dragged, there can be 3 situations: (I) A new band is created and the item is docked to it. (II) The item is docked to an existing band. (III) The item must be floating, so it has to be detached if currently not floating, and moved around in its own window. */ /* Case (I): Dock `item' into a new band next to `where' in the docking area `area'. If `where' is NULL, the band becomes the first one in `area'. */ static gboolean drag_new (BonoboDock *dock, BonoboDockItem *item, GList **area, GList *where, gint x, gint y, gboolean is_vertical) { BonoboDockBand *new_band; GList *next; DEBUG (("entering function")); new_band = NULL; /* We need a new band next to `where', but we try to re-use the band next to it if either it contains no children, or it only contains `item'. */ next = NULL; if (where == NULL && area != NULL) next = *area; else next = where->next; if (next != NULL) { BonoboDockBand *band; guint num_children; band = BONOBO_DOCK_BAND (next->data); num_children = bonobo_dock_band_get_num_children (band); if (num_children == 0 || (num_children == 1 && GTK_WIDGET (band) == GTK_WIDGET (item)->parent)) new_band = BONOBO_DOCK_BAND (next->data); } /* Create the new band and make it our child if we cannot re-use an existing one. */ if (new_band == NULL) { new_band = BONOBO_DOCK_BAND (bonobo_dock_band_new ()); /* This is mostly to remember that `drag_allocation' for this child is bogus, as it was not previously allocated. */ new_band->new_for_drag = TRUE; if (where == NULL) *area = where = g_list_prepend (*area, new_band); else if (where->next == NULL) where = g_list_append (where, new_band); else where = g_list_prepend (where->next, new_band); new_band_setup (dock, GTK_WIDGET (new_band), is_vertical ? GTK_ORIENTATION_VERTICAL : GTK_ORIENTATION_HORIZONTAL); } /* Move the item to the new band. (This is a no-op if we are using `where->next' and it already contains `item'.) */ bonobo_dock_item_attach (item, GTK_WIDGET (new_band), x, y); /* Prepare the band for dragging of `item'. */ bonobo_dock_band_drag_begin (new_band, item); /* Set the offset of `item' in the band. */ if (is_vertical) bonobo_dock_band_set_child_offset (new_band, GTK_WIDGET (item), MAX (y - dock->client_rect.y, 0)); else bonobo_dock_band_set_child_offset (new_band, GTK_WIDGET (item), MAX (x - GTK_WIDGET (dock)->allocation.x, 0)); return TRUE; } /* Case (II): Drag into an existing band. */ static gboolean drag_to (BonoboDock *dock, BonoboDockItem *item, GList *where, gint x, gint y, gboolean is_vertical) { DEBUG (("x %d y %d", x, y)); return bonobo_dock_band_drag_to (BONOBO_DOCK_BAND (where->data), item, x, y); } /* Case (III): Move a floating (i.e. floating) item. */ static gboolean drag_floating (BonoboDock *dock, BonoboDockItem *item, gint x, gint y, gint rel_x, gint rel_y) { GtkWidget *item_widget, *dock_widget; item_widget = GTK_WIDGET (item); dock_widget = GTK_WIDGET (dock); if (!item->is_floating && item_widget->parent != dock_widget) { GtkAllocation *dock_allocation, *client_allocation; /* The item is currently not floating (so it is not our child). Make it so if we are outside the docking areas. */ dock_allocation = &dock_widget->allocation; if (dock->client_area) client_allocation = &dock->client_area->allocation; else client_allocation = NULL; if (rel_x < 0 || rel_x >= dock_allocation->width || rel_y < 0 || rel_y >= dock_allocation->height || (client_allocation != NULL && rel_x >= client_allocation->x && rel_x < client_allocation->x + client_allocation->width && rel_y >= client_allocation->y && rel_y < client_allocation->y + client_allocation->height)) { g_object_ref (item_widget); gtk_container_remove (GTK_CONTAINER (item_widget->parent), item_widget); gtk_widget_set_parent (item_widget, dock_widget); dock->floating_children = g_list_prepend (dock->floating_children, item); gtk_widget_realize (item_widget); gtk_widget_map (item_widget); gtk_widget_queue_resize (item_widget); bonobo_dock_item_detach (item, x, y); if (item->in_drag) bonobo_dock_item_grab_pointer (item); g_object_unref (item_widget); } } else { /* The item is already floating; all we have to do is move it to the current dragging position. */ bonobo_dock_item_drag_floating (item, x, y); } return TRUE; } /* Check if `item' can be docked to any of the DockBands of the dock area `area'. If so, dock it and return TRUE; otherwise, return FALSE. */ static gboolean drag_check (BonoboDock *dock, BonoboDockItem *item, GList **area, gint x, gint y, gboolean is_vertical) { GList *lp; GtkAllocation *alloc; for (lp = *area; lp != NULL; lp = lp->next) { BonoboDockBand *band; band = BONOBO_DOCK_BAND (lp->data); if (! band->new_for_drag) { alloc = &band->drag_allocation; if (x >= alloc->x - 10 && x < alloc->x + alloc->width && y >= alloc->y && y < alloc->y + alloc->height) { if (is_vertical) { if (x < alloc->x + alloc->width / 2 && drag_to (dock, item, lp, x, y, TRUE)) return TRUE; else return drag_new (dock, item, area, lp, x, y, TRUE); } else { if (y < alloc->y + alloc->height / 2 && drag_to (dock, item, lp, x, y, FALSE)) return TRUE; else return drag_new (dock, item, area, lp, x, y, FALSE); } } } } return FALSE; } /* Snap the BonoboDockItem `widget' to `dock' at the specified position. */ static void drag_snap (BonoboDock *dock, GtkWidget *widget, gint x, gint y) { #define SNAP 50 BonoboDockItem *item; BonoboDockItemBehavior item_behavior; gint win_x, win_y; gint rel_x, rel_y; gboolean item_allows_horizontal, item_allows_vertical; item = BONOBO_DOCK_ITEM (widget); item_behavior = bonobo_dock_item_get_behavior (item); item_allows_horizontal = ! (item_behavior & BONOBO_DOCK_ITEM_BEH_NEVER_HORIZONTAL); item_allows_vertical = ! (item_behavior & BONOBO_DOCK_ITEM_BEH_NEVER_VERTICAL); gdk_window_get_origin (GTK_WIDGET (dock)->window, &win_x, &win_y); rel_x = x - win_x; rel_y = y - win_y; DEBUG (("(%d,%d)", x, y)); DEBUG (("relative (%d,%d)", rel_x, rel_y)); if (item_allows_horizontal && rel_x >= 0 && rel_x < GTK_WIDGET (dock)->allocation.width) { /* Check prepending to top/bottom bands. */ if (rel_y < 0 && rel_y >= -SNAP && drag_new (dock, item, &dock->top_bands, NULL, rel_x, rel_y, FALSE)) return; else if (rel_y >= dock->client_rect.y + dock->client_rect.height - SNAP && rel_y < dock->client_rect.y + dock->client_rect.height && drag_new (dock, item, &dock->bottom_bands, NULL, rel_x, rel_y, FALSE)) return; } if (item_allows_vertical && rel_y >= dock->client_rect.y && rel_y < dock->client_rect.y + dock->client_rect.height) { /* Check prepending to left/right bands. */ if (rel_x < 0 && rel_x >= -SNAP && drag_new (dock, item, &dock->left_bands, NULL, rel_x, rel_y, TRUE)) return; else if (rel_x >= dock->client_rect.x + dock->client_rect.width - SNAP && rel_x < dock->client_rect.x + dock->client_rect.width && drag_new (dock, item, &dock->right_bands, NULL, rel_x, rel_y, TRUE)) return; } /* Check dragging into bands. */ if (item_allows_horizontal && drag_check (dock, item, &dock->top_bands, rel_x, rel_y, FALSE)) return; else if (item_allows_horizontal && drag_check (dock, item, &dock->bottom_bands, rel_x, rel_y, FALSE)) return; else if (item_allows_vertical && drag_check (dock, item, &dock->left_bands, rel_x, rel_y, TRUE)) return; else if (item_allows_vertical && drag_check (dock, item, &dock->right_bands, rel_x, rel_y, TRUE)) return; /* We are not in any "interesting" area: the item must be floating if allowed to. */ if (dock->floating_items_allowed && ! (item_behavior & BONOBO_DOCK_ITEM_BEH_NEVER_DETACH)) drag_floating (dock, item, x, y, rel_x, rel_y); /* If still not floating, fall back to moving the item in its own band. */ if (! item->is_floating) bonobo_dock_band_drag_to (BONOBO_DOCK_BAND (GTK_WIDGET (item)->parent), item, rel_x, rel_y); } /* "drag_begin" signal handling. */ static void drag_begin (GtkWidget *widget, gpointer data) { BonoboDock *dock; BonoboDockItem *item; DEBUG (("entering function")); dock = BONOBO_DOCK (data); item = BONOBO_DOCK_ITEM (widget); /* Communicate all the bands that `widget' is currently being dragged. */ g_list_foreach (dock->top_bands, (GFunc) bonobo_dock_band_drag_begin, item); g_list_foreach (dock->bottom_bands, (GFunc) bonobo_dock_band_drag_begin, item); g_list_foreach (dock->right_bands, (GFunc) bonobo_dock_band_drag_begin, item); g_list_foreach (dock->left_bands, (GFunc) bonobo_dock_band_drag_begin, item); } /* "drag_end" signal handling. */ static void drag_end_bands (GList **list, BonoboDockItem *item) { GList *lp; BonoboDockBand *band; lp = *list; while (lp != NULL) { band = BONOBO_DOCK_BAND(lp->data); bonobo_dock_band_drag_end (band, item); if (bonobo_dock_band_get_num_children (band) == 0) { GList *next; next = lp->next; /* This will remove this link, too. */ gtk_widget_destroy (GTK_WIDGET (band)); lp = next; } else lp = lp->next; } } static void drag_end (GtkWidget *widget, gpointer data) { BonoboDockItem *item; BonoboDock *dock; DEBUG (("entering function")); item = BONOBO_DOCK_ITEM (widget); dock = BONOBO_DOCK (data); /* Communicate to all the bands that `item' is no longer being dragged. */ drag_end_bands (&dock->top_bands, item); drag_end_bands (&dock->bottom_bands, item); drag_end_bands (&dock->left_bands, item); drag_end_bands (&dock->right_bands, item); g_signal_emit (data, dock_signals[LAYOUT_CHANGED], 0); } /* "drag_motion" signal handling. */ /* Handle a drag motion on the BonoboDockItem `widget'. This is connected to the "drag_motion" of all the children being added to the BonoboDock, and tries to dock the dragged item at the current (`x', `y') position of the pointer. */ static void drag_motion (GtkWidget *widget, gint x, gint y, gpointer data) { drag_snap (BONOBO_DOCK (data), widget, x, y); } static BonoboDockItem * get_docked_item_by_name (BonoboDock *dock, const gchar *name, BonoboDockPlacement *placement_return, guint *num_band_return, guint *band_position_return, guint *offset_return) { { struct { GList *band_list; BonoboDockPlacement placement; } areas[] = { { NULL, BONOBO_DOCK_TOP }, { NULL, BONOBO_DOCK_BOTTOM }, { NULL, BONOBO_DOCK_LEFT }, { NULL, BONOBO_DOCK_RIGHT }, { NULL, BONOBO_DOCK_FLOATING } }; GList *lp; guint i; areas[0].band_list = dock->top_bands; areas[1].band_list = dock->bottom_bands; areas[2].band_list = dock->left_bands; areas[3].band_list = dock->right_bands; for (i = 0; i < 4; i++) { guint num_band; for (lp = areas[i].band_list, num_band = 0; lp != NULL; lp = lp->next, num_band++) { BonoboDockBand *band; BonoboDockItem *item; band = BONOBO_DOCK_BAND(lp->data); item = bonobo_dock_band_get_item_by_name (band, name, band_position_return, offset_return); if (item != NULL) { if (num_band_return != NULL) *num_band_return = num_band; if (placement_return != NULL) *placement_return = areas[i].placement; return item; } } } } return NULL; } static BonoboDockItem * get_floating_item_by_name (BonoboDock *dock, const gchar *name) { GList *lp; BonoboDockItem *item; for (lp = dock->floating_children; lp != NULL; lp = lp->next) { item = lp->data; if (strcmp (item->name, name) == 0) return item; } return NULL; } static void connect_drag_signals (BonoboDock *dock, GtkWidget *item) { if (BONOBO_IS_DOCK_ITEM (item)) { DEBUG (("here")); g_signal_connect (item, "dock_drag_begin", G_CALLBACK (drag_begin), dock); g_signal_connect (item, "dock_drag_motion", G_CALLBACK (drag_motion), dock); g_signal_connect (item, "dock_drag_end", G_CALLBACK (drag_end), dock); } } /** * bonobo_dock_new: * * Description: Creates a new #BonoboDock widget. * * Return value: The new widget. **/ GtkWidget * bonobo_dock_new (void) { BonoboDock *dock; GtkWidget *widget; dock = g_object_new (bonobo_dock_get_type (), NULL); widget = GTK_WIDGET (dock); #if 0 /* FIXME: should I? */ if (GTK_WIDGET_VISIBLE (widget)) gtk_widget_queue_resize (widget); #endif return widget; } /** * bonobo_dock_allow_floating_items: * @dock: A pointer to a #BonoboDock widget * @enable: Specifies whether floating items are allowed in this dock * * Description: Enable or disable floating items on @dock, according * to @enable. **/ void bonobo_dock_allow_floating_items (BonoboDock *dock, gboolean enable) { dock->floating_items_allowed = enable; } static GList ** get_band_list (BonoboDock *dock, BonoboDockPlacement placement) { GList **band_ptr = NULL; switch (placement) { case BONOBO_DOCK_TOP: band_ptr = &dock->top_bands; break; case BONOBO_DOCK_BOTTOM: band_ptr = &dock->bottom_bands; break; case BONOBO_DOCK_LEFT: band_ptr = &dock->left_bands; break; case BONOBO_DOCK_RIGHT: band_ptr = &dock->right_bands; break; default: break; } return band_ptr; } /** * bonobo_dock_add_item: * @dock: A pointer to a #BonoboDock widget * @item: The item to add * @placement: Placement for the new item * @band_num: Number of the band the new item must be added to * @position: Position of the item in the specified band * @offset: Offset (in pixels) from the previous item in the same band * @in_new_band: Specifies whether a new band must be created for this item * * Description: Add @item to @dock. @placement can be either * %BONOBO_DOCK_TOP, %BONOBO_DOCK_RIGHT, %BONOBO_DOCK_BOTTOM or * %BONOBO_DOCK_LEFT, and specifies what area of the dock should * contain the item. If @in_new_band is %TRUE, a new dock band is * created at the position specified by @band_num; otherwise, the item * is added to the @band_num'th band. **/ void bonobo_dock_add_item (BonoboDock *dock, BonoboDockItem *item, BonoboDockPlacement placement, guint band_num, gint position, guint offset, gboolean in_new_band) { BonoboDockBand *band; GList **band_ptr; GList *p; DEBUG (("band_num %d offset %d position %d in_new_band %d", band_num, offset, position, in_new_band)); if (placement == BONOBO_DOCK_FLOATING) { g_warning ("Floating dock items not supported by `bonobo_dock_add_item'."); return; } band_ptr = get_band_list (dock, placement); g_return_if_fail (band_ptr != NULL); p = g_list_nth (*band_ptr, band_num); if (in_new_band || p == NULL) { GtkWidget *new_band; new_band = bonobo_dock_band_new (); /* FIXME: slow. */ if (in_new_band) { *band_ptr = g_list_insert (*band_ptr, new_band, band_num); p = g_list_nth (*band_ptr, band_num); if (p == NULL) p = g_list_last (*band_ptr); } else { *band_ptr = g_list_append (*band_ptr, new_band); p = g_list_last (*band_ptr); } if (placement == BONOBO_DOCK_TOP || placement == BONOBO_DOCK_BOTTOM) bonobo_dock_band_set_orientation (BONOBO_DOCK_BAND (new_band), GTK_ORIENTATION_HORIZONTAL); else bonobo_dock_band_set_orientation (BONOBO_DOCK_BAND (new_band), GTK_ORIENTATION_VERTICAL); gtk_widget_set_parent (new_band, GTK_WIDGET (dock)); gtk_widget_show (new_band); gtk_widget_queue_resize (GTK_WIDGET (dock)); } band = BONOBO_DOCK_BAND (p->data); bonobo_dock_band_insert (band, GTK_WIDGET(item), offset, position); connect_drag_signals (dock, GTK_WIDGET(item)); g_signal_emit (dock, dock_signals[LAYOUT_CHANGED], 0); } /** * bonobo_dock_add_floating_item: * @dock: A #BonoboDock widget * @item: The item to be added * @x: X-coordinate for the floating item * @y: Y-coordinate for the floating item * @orientation: Orientation for the new item. * * Description: Add @item to @dock and make it floating at the * specified (@x, @y) coordinates (relative to the root window of the * screen). **/ void bonobo_dock_add_floating_item (BonoboDock *dock, BonoboDockItem *item, gint x, gint y, GtkOrientation orientation) { GtkWidget *widget; g_return_if_fail (BONOBO_IS_DOCK_ITEM (item)); bonobo_dock_item_set_orientation (item, orientation); widget = GTK_WIDGET(item); g_object_ref (widget); #if 0 if (widget->parent != NULL) gtk_container_remove (GTK_CONTAINER (widget->parent), widget); #endif gtk_widget_set_parent (widget, GTK_WIDGET (dock)); if (GTK_WIDGET_REALIZED (widget->parent)) gtk_widget_realize (widget); if (GTK_WIDGET_VISIBLE (widget->parent) && GTK_WIDGET_VISIBLE (widget)) { if (GTK_WIDGET_MAPPED (widget->parent)) gtk_widget_map (widget); gtk_widget_queue_resize (widget); } bonobo_dock_item_detach (item, x, y); dock->floating_children = g_list_prepend (dock->floating_children, widget); connect_drag_signals (dock, widget); g_object_unref (widget); g_signal_emit (dock, dock_signals[LAYOUT_CHANGED], 0); } /** * bonobo_dock_set_client_area: * @dock: A #BonoboDock widget * @widget: The widget to be used for the client area. * * Description: Specify a widget for the dock's client area. **/ void bonobo_dock_set_client_area (BonoboDock *dock, GtkWidget *widget) { g_return_if_fail (dock != NULL); if (widget != NULL) g_object_ref (widget); if (dock->client_area != NULL) gtk_widget_unparent (dock->client_area); if (widget != NULL) { gtk_widget_set_parent (widget, GTK_WIDGET (dock)); dock->client_area = widget; if (GTK_WIDGET_REALIZED (widget->parent)) gtk_widget_realize (widget); if (GTK_WIDGET_VISIBLE (widget->parent) && GTK_WIDGET_VISIBLE (widget)) { if (GTK_WIDGET_MAPPED (widget->parent)) gtk_widget_map (widget); gtk_widget_queue_resize (widget); } } else { if (dock->client_area != NULL && GTK_WIDGET_VISIBLE (dock)) gtk_widget_queue_resize (GTK_WIDGET (dock)); dock->client_area = NULL; } if (widget != NULL) g_object_unref (widget); } /** * bonobo_dock_get_client_area: * @dock: A #BonoboDock widget. * * Description: Retrieve the widget being used as the client area in * @dock. * * Returns: The client area widget. **/ GtkWidget * bonobo_dock_get_client_area (BonoboDock *dock) { return dock->client_area; } /** * bonobo_dock_get_item_by_name: * @dock: A #BonoboDock widget. * @name: The name of the dock item to retrieve * @placement_return: A pointer to a variable holding the item's placement * @num_band_return: A pointer to a variable holding the band number * @band_position_return: A pointer to a variable holding the position * of the item within the band * @offset_return: A pointer to a variable holding the offset of the item * from the previous item in the same band * * Description: Retrieve the dock item named @name; information about * its position in the dock is returned via @placement_return, * @num_band_return, @band_position_return and @offset_return. If * the placement is %BONOBO_DOCK_FLOATING *@num_band_return, * *@band_position_return and *@offset_return are not set. * * Returns: The named #BonoboDockItem widget, or %NULL if no item with * such name exists. **/ BonoboDockItem * bonobo_dock_get_item_by_name (BonoboDock *dock, const gchar *name, BonoboDockPlacement *placement_return, guint *num_band_return, guint *band_position_return, guint *offset_return) { BonoboDockItem *item; item = get_docked_item_by_name (dock, name, placement_return, num_band_return, band_position_return, offset_return); if (item != NULL) return item; item = get_floating_item_by_name (dock, name); if (item != NULL) { if (placement_return != NULL) *placement_return = BONOBO_DOCK_FLOATING; return item; } return NULL; } /* Layout functions. */ static void layout_add_floating (BonoboDock *dock, BonoboDockLayout *layout) { GList *lp; for (lp = dock->floating_children; lp != NULL; lp = lp->next) { GtkOrientation orientation; gint x, y; BonoboDockItem *item; item = BONOBO_DOCK_ITEM (lp->data); orientation = bonobo_dock_item_get_orientation (item); bonobo_dock_item_get_floating_position (item, &x, &y); bonobo_dock_layout_add_floating_item (layout, item, x, y, orientation); } } static void layout_add_bands (BonoboDock *dock, BonoboDockLayout *layout, BonoboDockPlacement placement, GList *band_list) { guint band_num; GList *lp; for (lp = band_list, band_num = 0; lp != NULL; lp = lp->next, band_num++) { BonoboDockBand *band; band = BONOBO_DOCK_BAND(lp->data); bonobo_dock_band_layout_add (band, layout, placement, band_num); } } /** * bonobo_dock_get_layout: * @dock: A #BonoboDock widget * * Description: Retrieve the layout of @dock. * * Returns: @dock's layout as a #BonoboDockLayout object. **/ BonoboDockLayout * bonobo_dock_get_layout (BonoboDock *dock) { BonoboDockLayout *layout; layout = bonobo_dock_layout_new (); layout_add_bands (dock, layout, BONOBO_DOCK_TOP, dock->top_bands); layout_add_bands (dock, layout, BONOBO_DOCK_BOTTOM, dock->bottom_bands); layout_add_bands (dock, layout, BONOBO_DOCK_LEFT, dock->left_bands); layout_add_bands (dock, layout, BONOBO_DOCK_RIGHT, dock->right_bands); layout_add_floating (dock, layout); return layout; } /** * bonobo_dock_add_from_layout: * @dock: The #BonoboDock widget * @layout: A #BonoboDockLayout widget * * Description: Add all the items in @layout to the specified @dock. * * Returns: %TRUE if the operation succeeds, %FALSE if it fails. **/ gboolean bonobo_dock_add_from_layout (BonoboDock *dock, BonoboDockLayout *layout) { return bonobo_dock_layout_add_to_dock (layout, dock); } static GList ** find_band_list (BonoboDock *dock, BonoboDockBand *band, BonoboDockPlacement *placement) { GList **band_list = NULL; if (g_list_find (dock->top_bands, band)) { *placement = BONOBO_DOCK_TOP; band_list = &dock->top_bands; } if (g_list_find (dock->bottom_bands, band)) { *placement = BONOBO_DOCK_BOTTOM; band_list = &dock->bottom_bands; } if (g_list_find (dock->left_bands, band)) { *placement = BONOBO_DOCK_LEFT; band_list = &dock->left_bands; } if (g_list_find (dock->right_bands, band)) { *placement = BONOBO_DOCK_RIGHT; band_list = &dock->right_bands; } return band_list; } static gboolean insert_into_band_list (BonoboDock *dock, GList **band_list, GtkOrientation orientation, BonoboDockItem *item, gboolean prepend) { GtkWidget *new_band; new_band = bonobo_dock_band_new (); if (item->behavior & BONOBO_DOCK_ITEM_BEH_NEVER_VERTICAL) orientation = GTK_ORIENTATION_HORIZONTAL; if (item->behavior & BONOBO_DOCK_ITEM_BEH_NEVER_HORIZONTAL) orientation = GTK_ORIENTATION_VERTICAL; if (!bonobo_dock_band_append ( BONOBO_DOCK_BAND (new_band), GTK_WIDGET (item), 0)) return FALSE; if (prepend) *band_list = g_list_prepend (*band_list, new_band); else *band_list = g_list_append (*band_list, new_band); new_band_setup (dock, new_band, orientation); return TRUE; } gint _bonobo_dock_handle_key_nav (BonoboDock *dock, BonoboDockBand *band, BonoboDockItem *item, GdkEventKey *event) { GList *entry; GList **band_list; int cross_band_dir = 0; int switch_side_dir = 0; gboolean end_stop = FALSE; gboolean was_inserted = FALSE; GtkOrientation orientation; BonoboDockPlacement placement; if (!(event->state & GDK_CONTROL_MASK)) return FALSE; switch (event->keyval) { case GDK_Up: cross_band_dir = -1; break; case GDK_Down: cross_band_dir = +1; break; case GDK_Left: switch_side_dir = -1; break; case GDK_Right: switch_side_dir = +1; break; default: return FALSE; } band_list = find_band_list (dock, band, &placement); g_return_val_if_fail (band_list != NULL, FALSE); if (placement == BONOBO_DOCK_LEFT || placement == BONOBO_DOCK_RIGHT) { int tmp = switch_side_dir; switch_side_dir = cross_band_dir; cross_band_dir = tmp; orientation = GTK_ORIENTATION_VERTICAL; } else { orientation = GTK_ORIENTATION_HORIZONTAL; } g_object_ref (G_OBJECT (item)); gtk_container_remove (GTK_CONTAINER (band), GTK_WIDGET (item)); /* * Find somewhere new for it ... */ entry = g_list_find (*band_list, band); g_return_val_if_fail (entry != NULL, FALSE); if (cross_band_dir == -1) { for (entry = entry->prev; !was_inserted && entry; entry = entry->prev) was_inserted = bonobo_dock_band_append ( entry->data, GTK_WIDGET (item), 0); if (!was_inserted && ((*band_list)->data != band || bonobo_dock_band_get_num_children (band) > 0)) { was_inserted = insert_into_band_list ( dock, band_list, orientation, item, TRUE); } if (!was_inserted) { if (placement == BONOBO_DOCK_BOTTOM) { was_inserted = insert_into_band_list ( dock, &dock->top_bands, orientation, item, FALSE); } else if (placement == BONOBO_DOCK_RIGHT) { was_inserted = insert_into_band_list ( dock, &dock->left_bands, orientation, item, FALSE); } else end_stop = TRUE; } } if (cross_band_dir == +1) { for (entry = entry->next; !was_inserted && entry; entry = entry->next) was_inserted = bonobo_dock_band_append ( entry->data, GTK_WIDGET (item), 0); if (!was_inserted && (g_list_last (*band_list)->data != band || bonobo_dock_band_get_num_children (band) > 0)) { was_inserted = insert_into_band_list ( dock, band_list, orientation, item, FALSE); } if (!was_inserted) { if (placement == BONOBO_DOCK_TOP) { was_inserted = insert_into_band_list ( dock, &dock->bottom_bands, orientation, item, TRUE); } else if (placement == BONOBO_DOCK_LEFT) { was_inserted = insert_into_band_list ( dock, &dock->right_bands, orientation, item, TRUE); } else end_stop = TRUE; } } if (!end_stop && !was_inserted) { orientation = (orientation == GTK_ORIENTATION_HORIZONTAL) ? GTK_ORIENTATION_VERTICAL : GTK_ORIENTATION_HORIZONTAL; if (placement == BONOBO_DOCK_TOP || placement == BONOBO_DOCK_BOTTOM) { if (switch_side_dir == -1) was_inserted = insert_into_band_list ( dock, &dock->left_bands, orientation, item, FALSE); else was_inserted = insert_into_band_list ( dock, &dock->right_bands, orientation, item, TRUE); } else { if (switch_side_dir == -1) was_inserted = insert_into_band_list ( dock, &dock->top_bands, orientation, item, FALSE); else was_inserted = insert_into_band_list ( dock, &dock->bottom_bands, orientation, item, TRUE); } } if (!was_inserted) { /* geometry issue */ if (!bonobo_dock_band_append (band, GTK_WIDGET (item), 0)) g_error ("no space in fallback original band"); } if (bonobo_dock_band_get_num_children (band) == 0) gtk_widget_destroy (GTK_WIDGET (band)); g_object_unref (item); return TRUE; } libbonoboui-2.24.5/bonobo/bonobo-ui-sync-toolbar.c0000644000076400007640000005502111173072741016773 00000000000000/* -*- Mode: C; indent-tabs-mode: t; c-basic-offset: 8; tab-width: 8 -*- */ /* * bonobo-ui-sync-toolbar.h: The Bonobo UI/XML sync engine for toolbars * * Author: * Michael Meeks (michael@ximian.com) * * Copyright 2000 Ximian, Inc. */ #undef GTK_DISABLE_DEPRECATED #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include static GObjectClass *parent_class = NULL; static GQuark dockitem_id = 0; static GQuark toolitem_id = 0; #define PARENT_TYPE bonobo_ui_sync_get_type () static BonoboUIToolbarControlDisplay decode_control_disp (const char *txt) { if (!txt || !strcmp (txt, "control")) return BONOBO_UI_TOOLBAR_CONTROL_DISPLAY_CONTROL; else if (!strcmp (txt, "button")) return BONOBO_UI_TOOLBAR_CONTROL_DISPLAY_BUTTON; else if (!strcmp (txt, "none")) return BONOBO_UI_TOOLBAR_CONTROL_DISPLAY_NONE; else return BONOBO_UI_TOOLBAR_CONTROL_DISPLAY_CONTROL; } static gboolean string_array_contains (char **str_array, const char *match) { int i = 0; char *string; while ((string = str_array [i++])) if (strcmp (string, match) == 0) return TRUE; return FALSE; } static void impl_bonobo_ui_sync_toolbar_state (BonoboUISync *sync, BonoboUINode *node, BonoboUINode *cmd_node, GtkWidget *widget, GtkWidget *parent) { char *type, *label, *txt; char *behavior; char **behavior_array; gboolean priority; /* FIXME: to debug control problem */ gtk_widget_show (widget); if ((behavior = bonobo_ui_engine_get_attr (node, cmd_node, "behavior"))) { behavior_array = g_strsplit (behavior, ",", -1); bonobo_ui_node_free_string (behavior); if (GTK_IS_TOOL_ITEM (widget)) { gtk_tool_item_set_expand (GTK_TOOL_ITEM (widget), string_array_contains (behavior_array, "expandable")); /* The pack-end behavior is deprecated. You can use to achieve the same result */ } else { bonobo_ui_toolbar_item_set_expandable (BONOBO_UI_TOOLBAR_ITEM (widget), string_array_contains (behavior_array, "expandable")); bonobo_ui_toolbar_item_set_pack_end (BONOBO_UI_TOOLBAR_ITEM (widget), string_array_contains (behavior_array, "pack-end")); } g_strfreev (behavior_array); } if ((txt = bonobo_ui_engine_get_attr (node, cmd_node, "priority"))) { priority = atoi (txt); bonobo_ui_node_free_string (txt); } else priority = FALSE; if (GTK_IS_TOOL_ITEM (widget)) gtk_tool_item_set_is_important (GTK_TOOL_ITEM (widget), priority); type = bonobo_ui_engine_get_attr (node, cmd_node, "type"); label = bonobo_ui_engine_get_attr (node, cmd_node, "label"); if (GTK_IS_TOOL_BUTTON (widget)) { GtkToolButton *button_item = (GtkToolButton *) widget; if ((bonobo_ui_node_peek_attr (node, "pixtype") || bonobo_ui_node_peek_attr (cmd_node, "pixtype"))) { GtkWidget *image; if (!(image = gtk_tool_button_get_icon_widget (button_item))) { image = gtk_image_new (); gtk_tool_button_set_icon_widget (button_item, image); } bonobo_ui_util_xml_set_image ( GTK_IMAGE (image), node, cmd_node, GTK_ICON_SIZE_LARGE_TOOLBAR); gtk_widget_show (image); } else gtk_tool_button_set_icon_widget (button_item, NULL); if (label) { GtkLabel *label_widget; if (!(label_widget = GTK_LABEL (gtk_tool_button_get_label_widget (button_item)))) { label_widget = GTK_LABEL (gtk_label_new (NULL)); gtk_tool_button_set_label_widget (button_item, GTK_WIDGET (label_widget)); } if (!label_widget->label || /* optimise, we hit here a lot */ strcmp (label, label_widget->label)) gtk_label_set_text (label_widget, label); gtk_widget_show (GTK_WIDGET (label_widget)); } else gtk_tool_button_set_label_widget (button_item, NULL); } bonobo_ui_node_free_string (type); bonobo_ui_node_free_string (label); if (bonobo_ui_node_has_name (node, "control") && BONOBO_IS_UI_TOOLBAR_CONTROL_ITEM (widget)) { const char *text; BonoboUIToolbarControlDisplay hdisp, vdisp; text = bonobo_ui_node_peek_attr (node, "hdisplay"); hdisp = decode_control_disp (text); text = bonobo_ui_node_peek_attr (node, "vdisplay"); vdisp = decode_control_disp (text); bonobo_ui_toolbar_control_item_set_display ( BONOBO_UI_TOOLBAR_CONTROL_ITEM (widget), hdisp, vdisp); } if ((txt = bonobo_ui_engine_get_attr (node, cmd_node, "tip"))) { if (GTK_IS_TOOL_ITEM (widget)) gtk_tool_item_set_tooltip (GTK_TOOL_ITEM (widget), GTK_TOOLBAR (parent)->tooltips, txt, NULL); else bonobo_ui_toolbar_item_set_tooltip (BONOBO_UI_TOOLBAR_ITEM (widget), (GTK_TOOLBAR (parent)->tooltips), txt); bonobo_ui_node_free_string (txt); } bonobo_ui_engine_queue_update ( sync->engine, widget, node, cmd_node); } static gint exec_verb_cb (GtkWidget *item, BonoboUIEngine *engine) { bonobo_ui_engine_emit_verb_on_w (engine, item); return FALSE; } static gint win_item_emit_ui_event (GtkToggleToolButton *toggle, BonoboUIEngine *engine) { BonoboUINode *node; const char *state; node = bonobo_ui_engine_widget_get_node (GTK_WIDGET (toggle)); g_return_val_if_fail (node != NULL, FALSE); state = gtk_toggle_tool_button_get_active (toggle) ? "1": "0"; bonobo_ui_engine_emit_event_on (engine, node, state); return FALSE; } static GtkWidget * toolbar_build_control (BonoboUISync *sync, BonoboUINode *node, BonoboUINode *cmd_node, int *pos, GtkWidget *parent) { GtkWidget *bonobo_item = NULL; g_return_val_if_fail (sync != NULL, NULL); g_return_val_if_fail (node != NULL, NULL); if ((bonobo_item = bonobo_ui_engine_node_get_widget ( sync->engine, node))) { g_assert (bonobo_item->parent == NULL); if (!GTK_IS_TOOL_ITEM (bonobo_item)) g_warning ("Serious oddness not a toolbar item: '%s'", g_type_name_from_instance ((GTypeInstance *)bonobo_item)); } else { Bonobo_Control control; control = bonobo_ui_engine_node_get_object ( sync->engine, node); if (control != CORBA_OBJECT_NIL) { bonobo_item = bonobo_ui_toolbar_control_item_new (control); if (!bonobo_item) return NULL; bonobo_ui_engine_stamp_custom ( sync->engine, node); } else return NULL; } gtk_toolbar_insert (GTK_TOOLBAR (parent), GTK_TOOL_ITEM (bonobo_item), (*pos)++); gtk_widget_show (bonobo_item); return bonobo_item; } static GtkWidget * toolbar_build_widget (BonoboUISync *sync, BonoboUINode *node, BonoboUINode *cmd_node, int *pos, GtkWidget *parent) { char *type, *stock_id; GtkWidget *tool_item; g_return_val_if_fail (sync != NULL, NULL); g_return_val_if_fail (node != NULL, NULL); type = bonobo_ui_engine_get_attr (node, cmd_node, "type"); if ((stock_id = bonobo_ui_engine_get_attr (node, cmd_node, "stockid"))) { GtkStockItem stock_item; GtkIconSet *icon_set; if (!gtk_stock_lookup (stock_id, &stock_item)) g_warning ("Unknown stock id '%s' on %s", stock_id, bonobo_ui_xml_make_path (node)); else { gchar *label; int i, len; label = g_strdup (dgettext (stock_item.translation_domain, stock_item.label)); len = strlen (label); for (i = 0; i < len; i++) { if (label [i] == '_') { memmove (label+i, label+i+1, strlen (label+i+1) + 1); len--; } } bonobo_ui_node_set_attr (node, "label", label); g_free (label); } icon_set = gtk_icon_factory_lookup_default (stock_id); if (icon_set) { bonobo_ui_node_set_attr (node, "pixtype", "stock"); bonobo_ui_node_set_attr (node, "pixname", stock_id); } } if (bonobo_ui_node_has_name (node, "separator")) { tool_item = GTK_WIDGET (gtk_separator_tool_item_new ()); if (type && !strcmp (type, "space")) { gtk_separator_tool_item_set_draw (GTK_SEPARATOR_TOOL_ITEM (tool_item), FALSE); } } else if (!type) tool_item = GTK_WIDGET (gtk_tool_button_new (NULL, NULL)); else if (!strcmp (type, "toggle")) tool_item = GTK_WIDGET (gtk_toggle_tool_button_new ()); else { g_warning ("Invalid type '%s'", type); return NULL; } bonobo_ui_node_free_string (type); gtk_toolbar_insert (GTK_TOOLBAR (parent), GTK_TOOL_ITEM (tool_item), (*pos)++); gtk_widget_show (tool_item); return tool_item; } static GtkWidget * impl_bonobo_ui_sync_toolbar_build (BonoboUISync *sync, BonoboUINode *node, BonoboUINode *cmd_node, int *pos, GtkWidget *parent) { GtkWidget *widget; char *verb; if (bonobo_ui_node_has_name (node, "control")) widget = toolbar_build_control ( sync, node, cmd_node, pos, parent); else widget = toolbar_build_widget ( sync, node, cmd_node, pos, parent); if (widget) { if ((verb = bonobo_ui_engine_get_attr (node, NULL, "verb"))) { g_signal_connect (widget, "clicked", G_CALLBACK (exec_verb_cb), sync->engine); bonobo_ui_node_free_string (verb); } if (GTK_IS_TOGGLE_TOOL_BUTTON (widget)) g_signal_connect (widget, "toggled", G_CALLBACK (win_item_emit_ui_event), sync->engine); } return widget; } static GtkWidget * impl_bonobo_ui_sync_toolbar_build_placeholder (BonoboUISync *sync, BonoboUINode *node, BonoboUINode *cmd_node, int *pos, GtkWidget *parent) { GtkToolItem *item; item = gtk_separator_tool_item_new(); gtk_toolbar_insert (GTK_TOOLBAR (parent), item, (*pos)++); return GTK_WIDGET (item); } static BonoboDockItem * get_dock_item (BonoboUISyncToolbar *sync, const char *dockname) { guint dummy; BonoboDockPlacement *dummy_placement = NULL; g_return_val_if_fail (dockname != NULL, NULL); return bonobo_dock_get_item_by_name (sync->dock, dockname, dummy_placement, &dummy, &dummy, &dummy); } static GList * impl_bonobo_ui_sync_toolbar_get_widgets (BonoboUISync *sync, BonoboUINode *node) { const char *dockname; BonoboDockItem *item; dockname = bonobo_ui_node_peek_attr (node, "name"); item = get_dock_item (BONOBO_UI_SYNC_TOOLBAR (sync), dockname); if (!item) { g_warning ("Serious internal error building toolbar"); return NULL; } return bonobo_ui_internal_toolbar_get_children (bonobo_dock_item_get_child (item)); } static void impl_bonobo_ui_sync_toolbar_state_update (BonoboUISync *sync, GtkWidget *widget, const char *new_state) { g_return_if_fail (widget != NULL); if (new_state) { if (GTK_IS_TOGGLE_TOOL_BUTTON (widget)) { GtkToggleToolButton *button = (GtkToggleToolButton *) widget; g_signal_handlers_block_by_func (widget, G_CALLBACK (win_item_emit_ui_event), sync->engine); gtk_toggle_tool_button_set_active (button, atoi (new_state)); g_signal_handlers_unblock_by_func (widget, G_CALLBACK (win_item_emit_ui_event), sync->engine); } else g_warning ("Toolbar: strange, setting " "state '%s' on weird object '%s'", new_state, g_type_name_from_instance ( (GTypeInstance *) widget)); } } static void impl_dispose (GObject *object) { BonoboUISyncToolbar *sync = (BonoboUISyncToolbar *) object; if (sync->dock) { g_object_unref (sync->dock); sync->dock = NULL; } parent_class->dispose (object); } static gboolean impl_bonobo_ui_sync_toolbar_ignore_widget (BonoboUISync *sync, GtkWidget *widget) { return BONOBO_IS_UI_TOOLBAR_POPUP_ITEM (widget); } static GtkToolbarStyle parse_look (const char *look) { if (look) { if (!strcmp (look, "both")) return GTK_TOOLBAR_BOTH; if (!strcmp (look, "icon")) return GTK_TOOLBAR_ICONS; if (!strcmp (look, "text")) return GTK_TOOLBAR_TEXT; if (!strcmp (look, "both_horiz")) return GTK_TOOLBAR_BOTH_HORIZ; } return bonobo_ui_preferences_get_toolbar_style (); } GtkToolbarStyle bonobo_ui_sync_toolbar_get_look (BonoboUIEngine *engine, BonoboUINode *node) { const char *txt; BonoboUIToolbarStyle look; if ((txt = bonobo_ui_node_peek_attr (node, "look"))) look = parse_look (txt); else { GtkWidget *widget; widget = bonobo_ui_engine_node_get_widget (engine, node); if (!widget || !BONOBO_IS_UI_TOOLBAR (widget) || gtk_toolbar_get_orientation (GTK_TOOLBAR (widget)) == GTK_ORIENTATION_HORIZONTAL) { txt = bonobo_ui_node_peek_attr (node, "hlook"); look = parse_look (txt); } else { txt = bonobo_ui_node_peek_attr (node, "vlook"); look = parse_look (txt); } } return look; } static char * do_config_popup (BonoboUIEngineConfig *config, BonoboUINode *config_node, BonoboUIEngine *popup_engine) { char *ret; gboolean tip; const char *txt; BonoboUIToolbarStyle style; tip = TRUE; if ((txt = bonobo_ui_node_peek_attr (config_node, "tips"))) tip = atoi (txt); style = bonobo_ui_sync_toolbar_get_look (bonobo_ui_engine_config_get_engine (config), config_node); ret = g_strdup_printf ( "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "", style == BONOBO_UI_TOOLBAR_STYLE_ICONS_AND_TEXT, style == BONOBO_UI_TOOLBAR_STYLE_ICONS_ONLY, style == BONOBO_UI_TOOLBAR_STYLE_PRIORITY_TEXT, _("Look"), _("B_oth"), _("_Icon"), _("T_ext"), tip ? _("Hide t_ips") : _("Show t_ips"), !tip, _("_Hide toolbar"), _("Customi_ze"), _("Customize the toolbar")); return ret; } static void config_verb_fn (BonoboUIEngineConfig *config, const char *path, const char *opt_state, BonoboUIEngine *popup_engine, BonoboUINode *popup_node) { const char *verb; gboolean changed = TRUE; if ((verb = bonobo_ui_node_peek_attr (popup_node, "verb"))) { const char *set; set = bonobo_ui_node_peek_attr (popup_node, "set"); if (!strcmp (verb, "Hide")) bonobo_ui_engine_config_add ( config, path, "hidden", "1"); else if (!strcmp (verb, "Show")) bonobo_ui_engine_config_remove ( config, path, "hidden"); else if (!strcmp (verb, "Tip")) bonobo_ui_engine_config_add ( config, path, "tips", set); else if (!strncmp (verb, "Look", 4)) { if (opt_state && atoi (opt_state)) bonobo_ui_engine_config_add ( config, path, "look", set); else changed = FALSE; } else if (!strcmp (verb, "Customize")) { bonobo_ui_engine_config_configure (config); changed = FALSE; } else g_warning ("Unknown verb '%s'", verb); } if (changed) bonobo_ui_engine_config_serialize (config); } static BonoboDockItem * create_dockitem (BonoboUISyncToolbar *sync, BonoboUINode *node, const char *dockname) { BonoboDockItem *item; BonoboDockItemBehavior beh = 0; const char *prop; char **behavior_array; gboolean force_detachable = FALSE; BonoboDockPlacement placement = BONOBO_DOCK_TOP; gint band_num = 1; gint position = 0; guint offset = 0; gboolean in_new_band = TRUE; gboolean can_config = TRUE; GtkWidget *toolbar; if ((prop = bonobo_ui_node_peek_attr (node, "behavior"))) { behavior_array = g_strsplit (prop, ",", -1); if (string_array_contains (behavior_array, "detachable")) force_detachable = TRUE; if (string_array_contains (behavior_array, "exclusive")) beh |= BONOBO_DOCK_ITEM_BEH_EXCLUSIVE; if (string_array_contains (behavior_array, "never vertical")) beh |= BONOBO_DOCK_ITEM_BEH_NEVER_VERTICAL; if (string_array_contains (behavior_array, "never floating")) beh |= BONOBO_DOCK_ITEM_BEH_NEVER_FLOATING; if (string_array_contains (behavior_array, "never horizontal")) beh |= BONOBO_DOCK_ITEM_BEH_NEVER_HORIZONTAL; g_strfreev (behavior_array); } if (!force_detachable && !bonobo_ui_preferences_get_toolbar_detachable ()) beh |= BONOBO_DOCK_ITEM_BEH_LOCKED; item = BONOBO_DOCK_ITEM (bonobo_dock_item_new ( dockname, beh)); bonobo_dock_item_set_shadow_type (item, GTK_SHADOW_OUT); if ((prop = bonobo_ui_node_peek_attr (node, "placement"))) { if (!strcmp (prop, "top")) placement = BONOBO_DOCK_TOP; else if (!strcmp (prop, "right")) placement = BONOBO_DOCK_RIGHT; else if (!strcmp (prop, "bottom")) placement = BONOBO_DOCK_BOTTOM; else if (!strcmp (prop, "left")) placement = BONOBO_DOCK_LEFT; else if (!strcmp (prop, "floating")) placement = BONOBO_DOCK_FLOATING; } if ((prop = bonobo_ui_node_peek_attr (node, "band_num"))) band_num = atoi (prop); if ((prop = bonobo_ui_node_peek_attr (node, "position"))) position = atoi (prop); if ((prop = bonobo_ui_node_peek_attr (node, "offset"))) offset = atoi (prop); if ((prop = bonobo_ui_node_peek_attr (node, "in_new_band"))) in_new_band = atoi (prop); bonobo_dock_add_item (sync->dock, item, placement, band_num, position, offset, in_new_band); toolbar = bonobo_ui_internal_toolbar_new(); gtk_container_add (GTK_CONTAINER (item), toolbar); gtk_widget_show (toolbar); if ((prop = bonobo_ui_node_peek_attr (node, "config"))) can_config = atoi (prop); else can_config = TRUE; if (can_config) { char *path; path = bonobo_ui_xml_make_path (node); bonobo_ui_engine_config_connect ( GTK_WIDGET (item), sync->parent.engine, path, do_config_popup, config_verb_fn); bonobo_ui_engine_config_connect ( GTK_WIDGET (toolbar), sync->parent.engine, path, do_config_popup, config_verb_fn); g_free (path); } return item; } static void impl_bonobo_ui_sync_toolbar_remove_root (BonoboUISync *sync, BonoboUINode *node) { const char *name; if ((name = bonobo_ui_node_peek_attr (node, "name"))) { BonoboDockItem *item; item = get_dock_item (BONOBO_UI_SYNC_TOOLBAR (sync), name); if (item) gtk_widget_destroy (GTK_WIDGET (item)); } } static void impl_bonobo_ui_sync_toolbar_update_root (BonoboUISync *sync, BonoboUINode *node) { const char *txt; const char *dockname; gboolean tooltips; gboolean detachable; BonoboDockItem *item; GtkToolbar *toolbar; BonoboUIToolbarStyle look; dockname = bonobo_ui_node_peek_attr (node, "name"); g_return_if_fail (dockname != NULL); item = get_dock_item (BONOBO_UI_SYNC_TOOLBAR (sync), dockname); if (!item) item = create_dockitem (BONOBO_UI_SYNC_TOOLBAR (sync), node, dockname); if ((txt = bonobo_ui_node_peek_attr (node, "behavior")) && strstr (txt, "detachable")) detachable = TRUE; else detachable = bonobo_ui_preferences_get_toolbar_detachable (); bonobo_dock_item_set_locked (item, !detachable); toolbar = GTK_TOOLBAR (bonobo_dock_item_get_child (item)); bonobo_ui_engine_stamp_root (sync->engine, node, GTK_WIDGET (toolbar)); look = bonobo_ui_sync_toolbar_get_look (sync->engine, node); gtk_toolbar_set_style (GTK_TOOLBAR (toolbar), look); if ((txt = bonobo_ui_node_peek_attr (node, "tips"))) tooltips = atoi (txt); else tooltips = TRUE; gtk_toolbar_set_tooltips (GTK_TOOLBAR (toolbar), tooltips); /* * FIXME: It shouldn't be necessary to explicitly resize the * dock, since resizing a widget is supposed to resize it's parent, * but the dock is not resized correctly on dockitem show / hides. */ if (bonobo_ui_sync_do_show_hide (sync, node, NULL, GTK_WIDGET (item))) gtk_widget_queue_resize (GTK_WIDGET ( BONOBO_UI_SYNC_TOOLBAR (sync)->dock)); } static gboolean impl_bonobo_ui_sync_toolbar_can_handle (BonoboUISync *sync, BonoboUINode *node) { if (!dockitem_id) { dockitem_id = g_quark_from_static_string ("dockitem"); toolitem_id = g_quark_from_static_string ("toolitem"); } return (node->name_id == dockitem_id || node->name_id == toolitem_id); } static GtkWidget * impl_bonobo_ui_sync_toolbar_wrap_widget (BonoboUISync *sync, GtkWidget *custom_widget) { if (!GTK_IS_TOOL_ITEM (custom_widget)) return bonobo_ui_toolbar_control_item_new_widget (custom_widget); else return custom_widget; } static void bonobo_ui_sync_toolbar_class_init (BonoboUISyncClass *sync_class) { GObjectClass *object_class; parent_class = g_type_class_peek_parent (sync_class); object_class = G_OBJECT_CLASS (sync_class); object_class->dispose = impl_dispose; sync_class->sync_state = impl_bonobo_ui_sync_toolbar_state; sync_class->build = impl_bonobo_ui_sync_toolbar_build; sync_class->build_placeholder = impl_bonobo_ui_sync_toolbar_build_placeholder; sync_class->get_widgets = impl_bonobo_ui_sync_toolbar_get_widgets; sync_class->ignore_widget = impl_bonobo_ui_sync_toolbar_ignore_widget; sync_class->remove_root = impl_bonobo_ui_sync_toolbar_remove_root; sync_class->update_root = impl_bonobo_ui_sync_toolbar_update_root; sync_class->state_update = impl_bonobo_ui_sync_toolbar_state_update; sync_class->can_handle = impl_bonobo_ui_sync_toolbar_can_handle; sync_class->wrap_widget = impl_bonobo_ui_sync_toolbar_wrap_widget; } static void bonobo_ui_sync_toolbar_init (BonoboUISyncToolbar *sync) { } GType bonobo_ui_sync_toolbar_get_type (void) { static GType type = 0; if (type == 0) { GTypeInfo info = { sizeof (BonoboUISyncToolbarClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) bonobo_ui_sync_toolbar_class_init, NULL, /* class_finalize */ NULL, /* class_data */ sizeof (BonoboUISyncToolbar), 0, /* n_preallocs */ (GInstanceInitFunc) bonobo_ui_sync_toolbar_init }; type = g_type_register_static (PARENT_TYPE, "BonoboUISyncToolbar", &info, 0); } return type; } BonoboUISync * bonobo_ui_sync_toolbar_new (BonoboUIEngine *engine, BonoboDock *dock) { BonoboUISyncToolbar *sync; g_return_val_if_fail (BONOBO_IS_UI_ENGINE (engine), NULL); sync = g_object_new (BONOBO_TYPE_UI_SYNC_TOOLBAR, NULL); sync->dock = g_object_ref (dock); return bonobo_ui_sync_construct ( BONOBO_UI_SYNC (sync), engine, FALSE, TRUE); } libbonoboui-2.24.5/bonobo/bonobo-ui-sync-menu.h0000644000076400007640000000333511173072741016303 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ /* * bonobo-ui-sync-menu.h: The Bonobo UI/XML sync engine for menus * * Author: * Michael Meeks (michael@helixcode.com) * * Copyright 2000 Helix Code, Inc. */ #ifndef _BONOBO_UI_SYNC_MENU_H_ #define _BONOBO_UI_SYNC_MENU_H_ #include #include G_BEGIN_DECLS #define BONOBO_TYPE_UI_SYNC_MENU (bonobo_ui_sync_menu_get_type ()) #define BONOBO_UI_SYNC_MENU(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BONOBO_TYPE_UI_SYNC_MENU, BonoboUISyncMenu)) #define BONOBO_UI_SYNC_MENU_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), BONOBO_TYPE_UI_SYNC_MENU, BonoboUISyncMenuClass)) #define BONOBO_IS_UI_SYNC_MENU(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BONOBO_TYPE_UI_SYNC_MENU)) #define BONOBO_IS_UI_SYNC_MENU_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), BONOBO_TYPE_UI_SYNC_MENU)) typedef struct _BonoboUISyncMenuPrivate BonoboUISyncMenuPrivate; typedef struct { BonoboUISync parent; GtkMenuBar *menu; GtkWidget *menu_dock_item; GtkAccelGroup *accel_group; GHashTable *radio_groups; GSList *popups; BonoboUISyncMenuPrivate *priv; } BonoboUISyncMenu; typedef struct { BonoboUISyncClass parent_class; } BonoboUISyncMenuClass; BonoboUISync *bonobo_ui_sync_menu_new (BonoboUIEngine *engine, GtkMenuBar *menu, GtkWidget *menu_dock_item, GtkAccelGroup *group); void bonobo_ui_sync_menu_remove_popup (BonoboUISyncMenu *sync, const char *path); void bonobo_ui_sync_menu_add_popup (BonoboUISyncMenu *sync, GtkMenu *menu, const char *path); G_END_DECLS #endif /* _BONOBO_UI_SYNC_MENU_H_ */ libbonoboui-2.24.5/bonobo/bonobo-canvas-component.c0000644000076400007640000010713211173072741017220 00000000000000/* * bonobo-canvas-component.c: implements the CORBA interface for * the Bonobo::Canvas:Item interface used in Bonobo::Views. * * Author: * Miguel de Icaza (miguel@kernel.org) * * (C) 1999-2001 Ximian, Inc. */ #include #include #include #include #include #include #include #include #ifdef GDK_WINDOWING_X11 #include #endif #include #include #include #include #include #include #include #undef BONOBO_DISABLE_DEPRECATED #include enum { SET_BOUNDS, EVENT, LAST_SIGNAL }; static gint gcc_signals [LAST_SIGNAL] = { 0, 0, }; typedef BonoboCanvasComponent Gcc; #define GCC(x) BONOBO_CANVAS_COMPONENT(x) struct _BonoboCanvasComponentPrivate { GnomeCanvasItem *item; }; #define PARENT_TYPE BONOBO_TYPE_OBJECT /* Returns the GnomeCanvasItemClass of an object */ #define ICLASS(x) GNOME_CANVAS_ITEM_CLASS ((GTK_OBJECT_GET_CLASS (x))) static GObjectClass *gcc_parent_class; static gboolean do_update_flag = FALSE; typedef struct { gpointer *arg1; gpointer *arg2; } EmitLater; static gboolean CORBA_SVP_Segment_to_SVPSeg (Bonobo_Canvas_SVPSegment *seg, ArtSVPSeg *art_seg) { int i; art_seg->points = art_new (ArtPoint, seg->points._length); if (!art_seg->points) return FALSE; art_seg->dir = seg->up ? 0 : 1; art_seg->bbox.x0 = seg->bbox.x0; art_seg->bbox.x1 = seg->bbox.x1; art_seg->bbox.y0 = seg->bbox.y0; art_seg->bbox.y1 = seg->bbox.y1; art_seg->n_points = seg->points._length; for (i = 0; i < art_seg->n_points; i++){ art_seg->points [i].x = seg->points._buffer [i].x; art_seg->points [i].y = seg->points._buffer [i].y; } return TRUE; } static void free_seg (ArtSVPSeg *seg) { g_assert (seg != NULL); g_assert (seg->points != NULL); art_free (seg->points); } /* * Encodes an ArtUta */ static Bonobo_Canvas_ArtUTA * CORBA_UTA (ArtUta *uta) { Bonobo_Canvas_ArtUTA *cuta; cuta = Bonobo_Canvas_ArtUTA__alloc (); if (!cuta) return NULL; if (!uta) { cuta->width = 0; cuta->height = 0; cuta->utiles._length = 0; cuta->utiles._maximum = 0; return cuta; } cuta->utiles._buffer = CORBA_sequence_Bonobo_Canvas_int32_allocbuf (uta->width * uta->height); cuta->utiles._length = uta->width * uta->height; cuta->utiles._maximum = uta->width * uta->height; if (!cuta->utiles._buffer) { CORBA_free (cuta); return NULL; } cuta->x0 = uta->x0; cuta->y0 = uta->y0; cuta->width = uta->width; cuta->height = uta->height; memcpy (cuta->utiles._buffer, uta->utiles, uta->width * uta->height * sizeof (ArtUtaBbox)); return cuta; } static void restore_state (GnomeCanvasItem *item, const Bonobo_Canvas_State *state) { double affine [6]; int i; for (i = 0; i < 6; i++) affine [i] = state->item_aff [i]; gnome_canvas_item_affine_absolute (item->canvas->root, affine); item->canvas->pixels_per_unit = state->pixels_per_unit; item->canvas->scroll_x1 = state->canvas_scroll_x1; item->canvas->scroll_y1 = state->canvas_scroll_y1; item->canvas->zoom_xofs = state->zoom_xofs; item->canvas->zoom_yofs = state->zoom_yofs; } /* This is copied from gnome-canvas.c since it is declared static */ static void invoke_update (GnomeCanvasItem *item, double *affine, ArtSVP *clip_path, int flags) { int child_flags; double *child_affine; double i2w[6], w2c[6], i2c[6]; child_flags = flags; if (!(item->object.flags & GNOME_CANVAS_ITEM_VISIBLE)) child_flags &= ~GNOME_CANVAS_UPDATE_IS_VISIBLE; /* Apply the child item's transform */ gnome_canvas_item_i2w_affine (item, i2w); gnome_canvas_w2c_affine (item->canvas, w2c); art_affine_multiply (i2c, i2w, w2c); child_affine = i2c; /* apply object flags to child flags */ child_flags &= ~GNOME_CANVAS_UPDATE_REQUESTED; if (item->object.flags & GNOME_CANVAS_ITEM_NEED_UPDATE) child_flags |= GNOME_CANVAS_UPDATE_REQUESTED; if (item->object.flags & GNOME_CANVAS_ITEM_NEED_AFFINE) child_flags |= GNOME_CANVAS_UPDATE_AFFINE; if (item->object.flags & GNOME_CANVAS_ITEM_NEED_CLIP) child_flags |= GNOME_CANVAS_UPDATE_CLIP; if (item->object.flags & GNOME_CANVAS_ITEM_NEED_VIS) child_flags |= GNOME_CANVAS_UPDATE_VISIBILITY; if ((child_flags & (GNOME_CANVAS_UPDATE_REQUESTED | GNOME_CANVAS_UPDATE_AFFINE | GNOME_CANVAS_UPDATE_CLIP | GNOME_CANVAS_UPDATE_VISIBILITY)) && GNOME_CANVAS_ITEM_GET_CLASS (item)->update) (* GNOME_CANVAS_ITEM_GET_CLASS (item)->update) ( item, child_affine, clip_path, child_flags); } static Bonobo_Canvas_ArtUTA * impl_Bonobo_Canvas_Component_update (PortableServer_Servant servant, const Bonobo_Canvas_State *state, const Bonobo_Canvas_affine aff, const Bonobo_Canvas_SVP *clip_path, CORBA_long flags, CORBA_double *x1, CORBA_double *y1, CORBA_double *x2, CORBA_double *y2, CORBA_Environment *ev) { Gcc *gcc = GCC (bonobo_object_from_servant (servant)); GnomeCanvasItem *item = GNOME_CANVAS_ITEM (gcc->priv->item); double affine [6]; int i; ArtSVP *svp = NULL; Bonobo_Canvas_ArtUTA *cuta; GnomeCanvasItemClass *gci_class = g_type_class_ref ( gnome_canvas_item_get_type ()); restore_state (item, state); for (i = 0; i < 6; i++) affine [i] = aff [i]; if (clip_path->_length > 0) { svp = art_alloc (sizeof (ArtSVP) + (clip_path->_length * sizeof (ArtSVPSeg))); if (svp == NULL) goto fail; svp->n_segs = clip_path->_length; for (i = 0; svp->n_segs; i++) { gboolean ok; ok = CORBA_SVP_Segment_to_SVPSeg (&clip_path->_buffer [i], &svp->segs [i]); if (!ok) { int j; for (j = 0; j < i; j++) { free_seg (&svp->segs [j]); art_free (svp); goto fail; } } } } invoke_update (item, (double *)aff, svp, flags); if (svp){ for (i = 0; i < svp->n_segs; i++) free_seg (&svp->segs [i]); art_free (svp); } fail: if (getenv ("CC_DEBUG")) printf ("%g %g %g %g\n", item->x1, item->x2, item->y1, item->y2); *x1 = item->x1; *x2 = item->x2; *y1 = item->y1; *y2 = item->y2; cuta = CORBA_UTA (item->canvas->redraw_area); if (cuta == NULL) { CORBA_exception_set_system (ev, ex_CORBA_NO_MEMORY, CORBA_COMPLETED_NO); return NULL; } /* * Now, mark our canvas as fully up to date */ /* Clears flags for root item. */ (* gci_class->update) (item->canvas->root, affine, svp, flags); if (item->canvas->redraw_area) { art_uta_free (item->canvas->redraw_area); item->canvas->redraw_area = NULL; } item->canvas->need_redraw = FALSE; return cuta; } static void impl_Bonobo_Canvas_Component_realize (PortableServer_Servant servant, const CORBA_char *window, CORBA_Environment *ev) { Gcc *gcc = GCC (bonobo_object_from_servant (servant)); GnomeCanvasItem *item = GNOME_CANVAS_ITEM (gcc->priv->item); GdkWindow *gdk_window = gdk_window_foreign_new_for_display (gtk_widget_get_display (GTK_WIDGET (item->canvas)), bonobo_control_x11_from_window_id (window)); if (gdk_window == NULL) { g_warning ("Invalid window id passed='%s'", window); return; } item->canvas->layout.bin_window = gdk_window; ICLASS (item)->realize (item); } static void impl_Bonobo_Canvas_Component_unrealize (PortableServer_Servant servant, CORBA_Environment *ev) { Gcc *gcc = GCC (bonobo_object_from_servant (servant)); GnomeCanvasItem *item = GNOME_CANVAS_ITEM (gcc->priv->item); ICLASS (item)->unrealize (item); if (item->canvas->layout.bin_window) { g_object_unref (item->canvas->layout.bin_window); item->canvas->layout.bin_window = NULL; } } static void impl_Bonobo_Canvas_Component_map (PortableServer_Servant servant, CORBA_Environment *ev) { Gcc *gcc = GCC (bonobo_object_from_servant (servant)); GnomeCanvasItem *item = GNOME_CANVAS_ITEM (gcc->priv->item); ICLASS (item)->map (item); } static void impl_Bonobo_Canvas_Component_unmap (PortableServer_Servant servant, CORBA_Environment *ev) { Gcc *gcc = GCC (bonobo_object_from_servant (servant)); GnomeCanvasItem *item = GNOME_CANVAS_ITEM (gcc->priv->item); ICLASS (item)->unmap (item); } static void my_gdk_pixmap_foreign_release (GdkPixmap *pixmap) { GdkWindowObject *priv = (GdkWindowObject *) pixmap; if (G_OBJECT (priv)->ref_count != 1){ g_warning ("This item is keeping a refcount to a foreign pixmap"); return; } #ifdef FIXME gdk_xid_table_remove (priv->xwindow); g_dataset_destroy (priv); g_free (priv); #endif } static void impl_Bonobo_Canvas_Component_draw (PortableServer_Servant servant, const Bonobo_Canvas_State *state, const CORBA_char *drawable_id, CORBA_short x, CORBA_short y, CORBA_short width, CORBA_short height, CORBA_Environment *ev) { Gcc *gcc = GCC (bonobo_object_from_servant (servant)); GnomeCanvasItem *item = GNOME_CANVAS_ITEM (gcc->priv->item); GdkPixmap *pix; gdk_flush (); pix = gdk_pixmap_foreign_new_for_display (gtk_widget_get_display (GTK_WIDGET (item->canvas)), bonobo_control_x11_from_window_id (drawable_id)); if (pix == NULL){ g_warning ("Invalid window id passed='%s'", drawable_id); return; } restore_state (item, state); ICLASS (item)->draw (item, pix, x, y, width, height); my_gdk_pixmap_foreign_release (pix); gdk_flush (); } static void impl_Bonobo_Canvas_Component_render (PortableServer_Servant servant, Bonobo_Canvas_Buf *buf, CORBA_Environment *ev) { Gcc *gcc = GCC (bonobo_object_from_servant (servant)); GnomeCanvasItem *item = GNOME_CANVAS_ITEM (gcc->priv->item); GnomeCanvasBuf canvas_buf; if (!(buf->flags & Bonobo_Canvas_IS_BUF)) { buf->rgb_buf._length = buf->row_stride * (buf->rect.y1 - buf->rect.y0); buf->rgb_buf._maximum = buf->rgb_buf._length; buf->rgb_buf._buffer = CORBA_sequence_CORBA_octet_allocbuf ( buf->rgb_buf._length); CORBA_sequence_set_release (&buf->rgb_buf, TRUE); if (buf->rgb_buf._buffer == NULL) { CORBA_exception_set_system ( ev, ex_CORBA_NO_MEMORY, CORBA_COMPLETED_NO); return; } } canvas_buf.buf = buf->rgb_buf._buffer; canvas_buf.buf_rowstride = buf->row_stride; canvas_buf.rect.x0 = buf->rect.x0; canvas_buf.rect.x1 = buf->rect.x1; canvas_buf.rect.y0 = buf->rect.y0; canvas_buf.rect.y1 = buf->rect.y1; canvas_buf.bg_color = buf->bg_color; if (buf->flags & Bonobo_Canvas_IS_BG) canvas_buf.is_bg = 1; else canvas_buf.is_bg = 0; if (buf->flags & Bonobo_Canvas_IS_BUF) canvas_buf.is_buf = 1; else canvas_buf.is_buf = 0; ICLASS (item)->render (item, &canvas_buf); /* return */ buf->flags = (canvas_buf.is_bg ? Bonobo_Canvas_IS_BG : 0) | (canvas_buf.is_buf ? Bonobo_Canvas_IS_BUF : 0); } static CORBA_boolean impl_Bonobo_Canvas_Component_contains (PortableServer_Servant servant, CORBA_double x, CORBA_double y, CORBA_Environment *ev) { Gcc *gcc = GCC (bonobo_object_from_servant (servant)); GnomeCanvasItem *item = GNOME_CANVAS_ITEM (gcc->priv->item); GnomeCanvasItem *new_item; int cx, cy; CORBA_boolean ret; gnome_canvas_w2c (item->canvas, x, y, &cx, &cy); if (getenv ("CC_DEBUG")) printf ("Point %g %g: ", x, y); ret = ICLASS (item)->point (item, x, y, cx, cy, &new_item) == 0.0 && new_item != NULL; if (getenv ("CC_DEBUG")) printf ("=> %s\n", ret ? "yes" : "no"); return ret; } static void impl_Bonobo_Canvas_Component_bounds (PortableServer_Servant servant, const Bonobo_Canvas_State *state, CORBA_double *x1, CORBA_double *x2, CORBA_double *y1, CORBA_double *y2, CORBA_Environment *ev) { Gcc *gcc = GCC (bonobo_object_from_servant (servant)); GnomeCanvasItem *item = GNOME_CANVAS_ITEM (gcc->priv->item); restore_state (item, state); ICLASS (item)->bounds (item, x1, y1, x2, y2); } /* * Converts the event marshalled from the container into a GdkEvent */ static void Bonobo_Gdk_Event_to_GdkEvent (const Bonobo_Gdk_Event *gnome_event, GdkEvent *gdk_event) { switch (gnome_event->_d){ case Bonobo_Gdk_FOCUS: gdk_event->type = GDK_FOCUS_CHANGE; gdk_event->focus_change.in = gnome_event->_u.focus.inside; return; case Bonobo_Gdk_KEY: if (gnome_event->_u.key.type == Bonobo_Gdk_KEY_PRESS) gdk_event->type = GDK_KEY_PRESS; else gdk_event->type = GDK_KEY_RELEASE; gdk_event->key.time = gnome_event->_u.key.time; gdk_event->key.state = gnome_event->_u.key.state; gdk_event->key.keyval = gnome_event->_u.key.keyval; gdk_event->key.length = gnome_event->_u.key.length; gdk_event->key.string = g_strdup (gnome_event->_u.key.str); return; case Bonobo_Gdk_MOTION: gdk_event->type = GDK_MOTION_NOTIFY; gdk_event->motion.time = gnome_event->_u.motion.time; gdk_event->motion.x = gnome_event->_u.motion.x; gdk_event->motion.y = gnome_event->_u.motion.y; gdk_event->motion.x_root = gnome_event->_u.motion.x_root; gdk_event->motion.y_root = gnome_event->_u.motion.y_root; #ifdef FIXME gdk_event->motion.xtilt = gnome_event->_u.motion.xtilt; gdk_event->motion.ytilt = gnome_event->_u.motion.ytilt; #endif gdk_event->motion.state = gnome_event->_u.motion.state; gdk_event->motion.is_hint = gnome_event->_u.motion.is_hint; return; case Bonobo_Gdk_BUTTON: switch (gnome_event->_u.button.type){ case Bonobo_Gdk_BUTTON_PRESS: gdk_event->type = GDK_BUTTON_PRESS; break; case Bonobo_Gdk_BUTTON_RELEASE: gdk_event->type = GDK_BUTTON_RELEASE; break; case Bonobo_Gdk_BUTTON_2_PRESS: gdk_event->type = GDK_2BUTTON_PRESS; break; case Bonobo_Gdk_BUTTON_3_PRESS: gdk_event->type = GDK_3BUTTON_PRESS; break; } gdk_event->button.time = gnome_event->_u.button.time; gdk_event->button.x = gnome_event->_u.button.x; gdk_event->button.y = gnome_event->_u.button.y; gdk_event->button.x_root = gnome_event->_u.button.x_root; gdk_event->button.y_root = gnome_event->_u.button.y_root; gdk_event->button.button = gnome_event->_u.button.button; return; case Bonobo_Gdk_CROSSING: if (gnome_event->_u.crossing.type == Bonobo_Gdk_ENTER) gdk_event->type = GDK_ENTER_NOTIFY; else gdk_event->type = GDK_LEAVE_NOTIFY; gdk_event->crossing.time = gnome_event->_u.crossing.time; gdk_event->crossing.x = gnome_event->_u.crossing.x; gdk_event->crossing.y = gnome_event->_u.crossing.y; gdk_event->crossing.x_root = gnome_event->_u.crossing.x_root; gdk_event->crossing.y_root = gnome_event->_u.crossing.y_root; gdk_event->crossing.state = gnome_event->_u.crossing.state; switch (gnome_event->_u.crossing.mode){ case Bonobo_Gdk_NORMAL: gdk_event->crossing.mode = GDK_CROSSING_NORMAL; break; case Bonobo_Gdk_GRAB: gdk_event->crossing.mode = GDK_CROSSING_GRAB; break; case Bonobo_Gdk_UNGRAB: gdk_event->crossing.mode = GDK_CROSSING_UNGRAB; break; } return; } g_assert_not_reached (); } /** * handle_event: * @canvas: the pseudo-canvas that this component is part of. * @ev: The GdkEvent event as set up for the component. * * Returns: True if a canvas item handles the event and returns true. * * Passes the remote item's event back into the local pseudo-canvas so that * canvas items can see events the normal way as if they were not using bonobo. */ static gboolean handle_event(GtkWidget *canvas, GdkEvent *ev) { GtkWidgetClass *klass = GTK_WIDGET_GET_CLASS(canvas); gboolean retval = FALSE; switch (ev->type) { case GDK_ENTER_NOTIFY: gnome_canvas_world_to_window(GNOME_CANVAS(canvas), ev->crossing.x, ev->crossing.y, &ev->crossing.x, &ev->crossing.y); retval = (klass->enter_notify_event)(canvas, &ev->crossing); break; case GDK_LEAVE_NOTIFY: gnome_canvas_world_to_window(GNOME_CANVAS(canvas), ev->crossing.x, ev->crossing.y, &ev->crossing.x, &ev->crossing.y); retval = (klass->leave_notify_event)(canvas, &ev->crossing); break; case GDK_MOTION_NOTIFY: gnome_canvas_world_to_window(GNOME_CANVAS(canvas), ev->motion.x, ev->motion.y, &ev->motion.x, &ev->motion.y); retval = (klass->motion_notify_event)(canvas, &ev->motion); break; case GDK_BUTTON_PRESS: case GDK_2BUTTON_PRESS: case GDK_3BUTTON_PRESS: gnome_canvas_world_to_window(GNOME_CANVAS(canvas), ev->button.x, ev->button.y, &ev->button.x, &ev->button.y); retval = (klass->button_press_event)(canvas, &ev->button); break; case GDK_BUTTON_RELEASE: gnome_canvas_world_to_window(GNOME_CANVAS(canvas), ev->button.x, ev->button.y, &ev->button.x, &ev->button.y); retval = (klass->button_release_event)(canvas, &ev->button); break; case GDK_KEY_PRESS: retval = (klass->key_press_event)(canvas, &ev->key); break; case GDK_KEY_RELEASE: retval = (klass->key_release_event)(canvas, &ev->key); break; case GDK_FOCUS_CHANGE: if (&ev->focus_change.in) retval = (klass->focus_in_event)(canvas, &ev->focus_change); else retval = (klass->focus_out_event)(canvas, &ev->focus_change); break; default: g_warning("Canvas event not handled %d", ev->type); break; } return retval; } static gboolean handle_event_later (EmitLater *data) { GtkWidget *canvas = GTK_WIDGET(data->arg1); GdkEvent *event = (GdkEvent *)data->arg2; handle_event(canvas, event); gdk_event_free(event); g_free(data); return FALSE; } /* * Receives events from the container end, decodes it into a synthetic * GdkEvent and forwards this to the CanvasItem */ static CORBA_boolean impl_Bonobo_Canvas_Component_event (PortableServer_Servant servant, const Bonobo_Canvas_State *state, const Bonobo_Gdk_Event *gnome_event, CORBA_Environment *ev) { Gcc *gcc = GCC (bonobo_object_from_servant (servant)); GnomeCanvasItem *item = GNOME_CANVAS_ITEM (gcc->priv->item); GdkEvent *gdk_event = gdk_event_new(GDK_NOTHING); CORBA_boolean retval = FALSE; EmitLater *data; restore_state (item, state); gdk_event->any.window = item->canvas->layout.bin_window; g_object_ref(gdk_event->any.window); Bonobo_Gdk_Event_to_GdkEvent (gnome_event, gdk_event); /* * Problem: When dealing with multiple canvas component's within the * same process it is possible to get to this point when one of the * pseudo-canvas's is inside its idle loop. This is normally not a * problem unless an event from one component can trigger a request for * an update on another component. * * Solution: If any component is in do_update, set up an idle_handler * and send the event later. If the event is sent later, the client will * get a false return value. Normally this value is used to determine * whether or not to propagate the event up the canvas group tree. */ if (!do_update_flag) { retval = handle_event(GTK_WIDGET(item->canvas), gdk_event); gdk_event_free(gdk_event); } else { data = g_new0(EmitLater, 1); data->arg1 = (gpointer)item->canvas; data->arg2 = (gpointer)gdk_event; /* has a higher priority then do_update*/ g_idle_add_full(GDK_PRIORITY_REDRAW-10, (GSourceFunc)handle_event_later, data, NULL); } return retval; } static void impl_Bonobo_Canvas_Component_setCanvasSize (PortableServer_Servant servant, CORBA_short x, CORBA_short y, CORBA_short width, CORBA_short height, CORBA_Environment *ev) { Gcc *gcc = GCC (bonobo_object_from_servant (servant)); GnomeCanvasItem *item = GNOME_CANVAS_ITEM (gcc->priv->item); GtkAllocation alloc; alloc.x = x; alloc.y = y; alloc.width = width; alloc.height = height; gtk_widget_size_allocate (GTK_WIDGET (item->canvas), &alloc); } static void set_bounds_later(EmitLater *data) { CORBA_Environment ev; CORBA_exception_init (&ev); g_signal_emit(GCC(data->arg1), gcc_signals [SET_BOUNDS], 0, (const Bonobo_Canvas_DRect *) data->arg2, &ev); g_free(data); CORBA_exception_free(&ev); } static void impl_Bonobo_Canvas_Component_setBounds (PortableServer_Servant servant, const Bonobo_Canvas_DRect *bbox, CORBA_Environment *ev) { Gcc *gcc = GCC (bonobo_object_from_servant (servant)); EmitLater *data; if (!do_update_flag) { g_signal_emit (gcc, gcc_signals [SET_BOUNDS], 0, bbox, &ev); } else { data = g_new0(EmitLater, 1); data->arg1 = (gpointer)gcc; data->arg2 = (gpointer)bbox; g_idle_add_full(GDK_PRIORITY_REDRAW-10, (GSourceFunc)set_bounds_later, data, NULL); } } static void gcc_finalize (GObject *object) { Gcc *gcc = GCC (object); GnomeCanvasItem *item = BONOBO_CANVAS_COMPONENT (object)->priv->item; gtk_object_destroy (GTK_OBJECT (item->canvas)); g_free (gcc->priv); gcc_parent_class->finalize (object); } /* Ripped from gtk+/gtk/gtkmain.c */ static gboolean _bonobo_boolean_handled_accumulator (GSignalInvocationHint *ihint, GValue *return_accu, const GValue *handler_return, gpointer dummy) { gboolean continue_emission; gboolean signal_handled; signal_handled = g_value_get_boolean (handler_return); g_value_set_boolean (return_accu, signal_handled); continue_emission = !signal_handled; return continue_emission; } static void bonobo_canvas_component_class_init (BonoboCanvasComponentClass *klass) { GObjectClass *object_class = (GObjectClass *) klass; POA_Bonobo_Canvas_Component__epv *epv = &klass->epv; gcc_parent_class = g_type_class_peek_parent(klass); object_class->finalize = gcc_finalize; gcc_signals [SET_BOUNDS] = g_signal_new ("set_bounds", G_OBJECT_CLASS_TYPE (object_class), G_SIGNAL_RUN_LAST, G_STRUCT_OFFSET(BonoboCanvasComponentClass, set_bounds), NULL, NULL, bonobo_ui_marshal_VOID__POINTER_POINTER, G_TYPE_NONE, 2, G_TYPE_POINTER, G_TYPE_POINTER); gcc_signals [EVENT] = g_signal_new ("event", G_OBJECT_CLASS_TYPE (object_class), G_SIGNAL_RUN_LAST, G_STRUCT_OFFSET(BonoboCanvasComponentClass, event), _bonobo_boolean_handled_accumulator, NULL, bonobo_ui_marshal_BOOLEAN__POINTER, G_TYPE_BOOLEAN, 1, G_TYPE_POINTER); epv->update = impl_Bonobo_Canvas_Component_update; epv->realize = impl_Bonobo_Canvas_Component_realize; epv->unrealize = impl_Bonobo_Canvas_Component_unrealize; epv->map = impl_Bonobo_Canvas_Component_map; epv->unmap = impl_Bonobo_Canvas_Component_unmap; epv->draw = impl_Bonobo_Canvas_Component_draw; epv->render = impl_Bonobo_Canvas_Component_render; epv->bounds = impl_Bonobo_Canvas_Component_bounds; epv->event = impl_Bonobo_Canvas_Component_event; epv->contains = impl_Bonobo_Canvas_Component_contains; epv->setCanvasSize = impl_Bonobo_Canvas_Component_setCanvasSize; epv->setBounds = impl_Bonobo_Canvas_Component_setBounds; } static void bonobo_canvas_component_init (GObject *object) { Gcc *gcc = GCC (object); gcc->priv = g_new0 (BonoboCanvasComponentPrivate, 1); } BONOBO_TYPE_FUNC_FULL (BonoboCanvasComponent, Bonobo_Canvas_Component, PARENT_TYPE, bonobo_canvas_component) /** * bonobo_canvas_component_construct: * @comp: a #BonoboCanvasComponent to initialize * @item: A #GnomeCanvasItem that is being exported * * Creates a CORBA server for the interface Bonobo::Canvas::Item * wrapping @item. * * Returns: The BonoboCanvasComponent. */ BonoboCanvasComponent * bonobo_canvas_component_construct (BonoboCanvasComponent *comp, GnomeCanvasItem *item) { g_return_val_if_fail (GNOME_IS_CANVAS_ITEM (item), NULL); g_return_val_if_fail (BONOBO_IS_CANVAS_COMPONENT (comp), NULL); comp->priv->item = item; return comp; } /** * bonobo_canvas_component_new: * @item: A GnomeCanvasItem that is being exported * * Creates a CORBA server for the interface Bonobo::Canvas::Item * wrapping @item. * * Returns: The BonoboCanvasComponent. */ BonoboCanvasComponent * bonobo_canvas_component_new (GnomeCanvasItem *item) { BonoboCanvasComponent *comp; g_return_val_if_fail (GNOME_IS_CANVAS_ITEM (item), NULL); comp = g_object_new (BONOBO_TYPE_CANVAS_COMPONENT, NULL); return bonobo_canvas_component_construct (comp, item); } /** * bonobo_canvas_component_get_item: * @comp: A #BonoboCanvasComponent object * * Returns: The GnomeCanvasItem that this BonoboCanvasComponent proxies */ GnomeCanvasItem * bonobo_canvas_component_get_item (BonoboCanvasComponent *comp) { g_return_val_if_fail (comp != NULL, NULL); g_return_val_if_fail (BONOBO_IS_CANVAS_COMPONENT (comp), NULL); return comp->priv->item; } /* * Hack root item * * This is a hack since we can not modify the existing GNOME Canvas to handle * this case. * * Here is the problem we are solving: * * 1. Items usually queue a request to be updated/redrawn by calling * gnome_canvas_item_request_update(). This triggers in the container * canvas an idle handler to be queued to update the display on the * idle handler. * * 2. There is no way we can catch this on the Canvas. * * To catch this we do: * * 3. replace the regular Canvas' root field (of type GnomeCanvasGroup) * with a RootItemHack item. This item has an overriden ->update method * that will notify the container canvas on the container process about * our update requirement. */ static GnomeCanvasGroupClass *rih_parent_class; typedef struct { GnomeCanvasGroup group; Bonobo_Canvas_ComponentProxy proxy; GnomeCanvasItem *orig_root; } RootItemHack; typedef struct { GnomeCanvasGroupClass parent_class; } RootItemHackClass; static GType root_item_hack_get_type (void); #define ROOT_ITEM_HACK_TYPE (root_item_hack_get_type ()) #define ROOT_ITEM_HACK(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), ROOT_ITEM_HACK_TYPE, RootItemHack)) static void rih_dispose (GObject *obj) { RootItemHack *rih = ROOT_ITEM_HACK (obj); rih->proxy = bonobo_object_release_unref (rih->proxy, NULL); if (rih->orig_root) gtk_object_destroy (GTK_OBJECT (rih->orig_root)); rih->orig_root = NULL; G_OBJECT_CLASS (rih_parent_class)->dispose (obj); } /* * Invoked by our local canvas when an update is requested, * we forward this to the container canvas */ static void rih_update (GnomeCanvasItem *item, double affine [6], ArtSVP *svp, int flags) { RootItemHack *rih = (RootItemHack *) item; CORBA_Environment ev; CORBA_exception_init (&ev); /* If we get here then we know the GnomeCanvas must be inside * do_update. The flag tells ALL components not to send events that * might trigger another update request and thereby cause the canvas * NEED_UPDATE flags to become unsyncronized. */ do_update_flag = TRUE; Bonobo_Canvas_ComponentProxy_requestUpdate (rih->proxy, &ev); do_update_flag = FALSE; CORBA_exception_free (&ev); } static void rih_class_init (GObjectClass *klass) { GnomeCanvasItemClass *item_class = (GnomeCanvasItemClass *) klass; rih_parent_class = g_type_class_peek_parent (klass); klass->dispose = rih_dispose; item_class->update = rih_update; } static GType root_item_hack_get_type (void) { static GType type = 0; if (!type) { GTypeInfo info = { sizeof (RootItemHackClass), NULL, NULL, (GClassInitFunc) rih_class_init, NULL, NULL, sizeof (RootItemHack), 0, NULL, NULL }; type = g_type_register_static ( gnome_canvas_group_get_type (), "RootItemHack", &info, 0); } return type; } static RootItemHack * root_item_hack_new (GnomeCanvas *canvas, Bonobo_Canvas_ComponentProxy proxy) { RootItemHack *item_hack; item_hack = g_object_new (root_item_hack_get_type (), NULL); item_hack->proxy = proxy; item_hack->orig_root = canvas->root; GNOME_CANVAS_ITEM (item_hack)->canvas = canvas; return item_hack; } /** * bonobo_canvas_new: * @is_aa: Flag indicating is antialiased canvas is desired * @proxy: Remote proxy for the component this canvas will support * * Returns: A #GnomeCanvas with the root replaced by a forwarding item. */ GnomeCanvas * bonobo_canvas_new (gboolean is_aa, Bonobo_Canvas_ComponentProxy proxy) { GnomeCanvas *canvas; if (is_aa) canvas = GNOME_CANVAS (gnome_canvas_new_aa ()); else canvas = GNOME_CANVAS (gnome_canvas_new ()); canvas->root = GNOME_CANVAS_ITEM (root_item_hack_new (canvas, proxy)); /* A hack to prevent gtkwidget from issuing a warning about there not being a parent class. */ gtk_container_add(GTK_CONTAINER (gtk_window_new(GTK_WINDOW_TOPLEVEL)), GTK_WIDGET(canvas)); gtk_widget_realize (GTK_WIDGET (canvas)); /* Gross */ GTK_WIDGET_SET_FLAGS (canvas, GTK_VISIBLE | GTK_MAPPED); return canvas; } /** * bonobo_canvas_component_grab: * @comp: A #BonoboCanvasComponent object * @mask: Mask of events to grab * @cursor: #GdkCursor to display during grab * @time: Time of last event before grab * * Grabs the mouse focus via a call to the remote proxy. */ void bonobo_canvas_component_grab (BonoboCanvasComponent *comp, guint mask, GdkCursor *cursor, guint32 time, CORBA_Environment *opt_ev) { CORBA_Environment *ev, temp_ev; if (!opt_ev) { CORBA_exception_init (&temp_ev); ev = &temp_ev; } else ev = opt_ev; Bonobo_Canvas_ComponentProxy_grabFocus ( ROOT_ITEM_HACK (comp->priv->item->canvas->root)->proxy, mask, cursor->type, time, ev); if (!opt_ev) CORBA_exception_free (&temp_ev); } /** * bonobo_canvas_component_ungrab: * @comp: A #BonoboCanvasComponent object * @time: Time of last event before grab * * Grabs the mouse focus via a call to the remote proxy. */ void bonobo_canvas_component_ungrab (BonoboCanvasComponent *comp, guint32 time, CORBA_Environment *opt_ev) { CORBA_Environment *ev, temp_ev; if (!opt_ev) { CORBA_exception_init (&temp_ev); ev = &temp_ev; } else ev = opt_ev; Bonobo_Canvas_ComponentProxy_ungrabFocus ( ROOT_ITEM_HACK (comp->priv->item->canvas->root)->proxy, time, ev); if (!opt_ev) CORBA_exception_free (&temp_ev); } /** * bonobo_canvas_component_get_ui_container: * @comp: A #BonoboCanvasComponent object * * Returns: The UI container for the component's remote proxy. */ Bonobo_UIContainer bonobo_canvas_component_get_ui_container (BonoboCanvasComponent *comp, CORBA_Environment *opt_ev) { Bonobo_UIContainer corba_uic; CORBA_Environment *ev, temp_ev; if (!opt_ev) { CORBA_exception_init (&temp_ev); ev = &temp_ev; } else ev = opt_ev; corba_uic = Bonobo_Canvas_ComponentProxy_getUIContainer ( ROOT_ITEM_HACK (comp->priv->item->canvas->root)->proxy, ev); if (!opt_ev) CORBA_exception_free (&temp_ev); return corba_uic; } /* BonoboCanvasComponentFactory is used to replace the old BonoboEmbeddable * object. It sets up a canvas component factory to conform with the current * Bonobo IDL. */ #define BONOBO_CANVAS_COMPONENT_FACTORY_TYPE \ (bonobo_canvas_component_factory_get_type()) #define BONOBO_CANVAS_COMPONENT_FACTORY(o) \ (G_TYPE_CHECK_INSTANCE_CAST ((o),\ BONOBO_CANVAS_COMPONENT_FACTORY_TYPE, BonoboCanvasComponentFactory)) typedef struct _BonoboCanvasComponentFactoryPrivate \ BonoboCanvasComponentFactoryPrivate; typedef struct { BonoboObject base; BonoboCanvasComponentFactoryPrivate *priv; } BonoboCanvasComponentFactory; typedef struct { BonoboObjectClass parent_class; POA_Bonobo_CanvasComponentFactory__epv epv; } BonoboCanvasComponentFactoryClass; GType bonobo_canvas_component_factory_get_type(void) G_GNUC_CONST; struct _BonoboCanvasComponentFactoryPrivate { GnomeItemCreator item_creator; void *item_creator_data; }; static GObjectClass *gccf_parent_class; static Bonobo_Canvas_Component impl_Bonobo_canvas_component_factory_createCanvasItem ( PortableServer_Servant servant, CORBA_boolean aa, const Bonobo_Canvas_ComponentProxy _item_proxy, CORBA_Environment *ev) { BonoboCanvasComponentFactory *factory = BONOBO_CANVAS_COMPONENT_FACTORY( bonobo_object_from_servant (servant)); Bonobo_Canvas_ComponentProxy item_proxy; BonoboCanvasComponent *component; GnomeCanvas *pseudo_canvas; if (factory->priv->item_creator == NULL) return CORBA_OBJECT_NIL; item_proxy = CORBA_Object_duplicate (_item_proxy, ev); pseudo_canvas = bonobo_canvas_new (aa, item_proxy); component = (*factory->priv->item_creator)( /*factory,*/ pseudo_canvas, factory->priv->item_creator_data); return bonobo_object_dup_ref (BONOBO_OBJREF (component), ev); } static void bonobo_canvas_component_factory_class_init ( BonoboCanvasComponentFactoryClass *klass) { POA_Bonobo_CanvasComponentFactory__epv *epv = &klass->epv; gccf_parent_class = g_type_class_peek_parent(klass); epv->createCanvasComponent = impl_Bonobo_canvas_component_factory_createCanvasItem; } static void bonobo_canvas_component_factory_init (BonoboCanvasComponentFactory *factory) { factory->priv = g_new0 (BonoboCanvasComponentFactoryPrivate, 1); } BONOBO_TYPE_FUNC_FULL (BonoboCanvasComponentFactory, Bonobo_CanvasComponentFactory, BONOBO_TYPE_X_OBJECT, bonobo_canvas_component_factory) /** * bonobo_canvas_component_factory_new: * @item_factory: A callback invoke when the container activates the object. * @user_data: User data pointer. * * Returns: The object to be passed into bonobo_generic_factory_main. */ BonoboObject *bonobo_canvas_component_factory_new( GnomeItemCreator item_factory, void *user_data) { BonoboCanvasComponentFactory *factory; factory = g_object_new (BONOBO_CANVAS_COMPONENT_FACTORY_TYPE, NULL); factory->priv->item_creator = item_factory; factory->priv->item_creator_data = user_data; return BONOBO_OBJECT(factory); } libbonoboui-2.24.5/bonobo/bonobo-socket.h0000644000076400007640000000400011173072741015230 00000000000000/* * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald * Copytight (C) 2000 Helix Code, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Library General Public * License as published by the Free Software Foundation; either * version 2 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Library General Public License for more details. * * You should have received a copy of the GNU Library General Public * License along with this library; if not, write to the Free * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ /* * Modified by the GTK+ Team and others 1997-1999. See the AUTHORS * file for a list of people on the GTK+ Team. See the ChangeLog * files for a list of changes. These files are distributed with * GTK+ at ftp://ftp.gtk.org/pub/gtk/. */ #ifndef __BONOBO_SOCKET_H__ #define __BONOBO_SOCKET_H__ #include #include typedef struct _BonoboSocket BonoboSocket; #include G_BEGIN_DECLS #define BONOBO_TYPE_SOCKET (bonobo_socket_get_type ()) #define BONOBO_SOCKET(obj) G_TYPE_CHECK_INSTANCE_CAST (obj, bonobo_socket_get_type (), BonoboSocket) #define BONOBO_SOCKET_CLASS(klass) G_TYPE_CHECK_CLASS_CAST (klass, bonobo_socket_get_type (), BonoboSocketClass) #define BONOBO_IS_SOCKET(obj) G_TYPE_CHECK_INSTANCE_TYPE (obj, bonobo_socket_get_type ()) struct _BonoboSocket { GtkSocket socket; BonoboControlFrame *frame; gpointer priv; }; typedef struct { GtkSocketClass parent_class; gpointer dummy[4]; } BonoboSocketClass; GType bonobo_socket_get_type (void); GtkWidget* bonobo_socket_new (void); G_END_DECLS #endif /* __BONOBO_SOCKET_H__ */ libbonoboui-2.24.5/bonobo/bonobo-selector-widget.c0000644000076400007640000002467511173072741017060 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ /* * bonobo-selector-widget.c: Bonobo Component Selector widget * * Authors: * Michael Meeks (michael@ximian.com) * Richard Hestilow (hestgray@ionet.net) * Miguel de Icaza (miguel@kernel.org) * Martin Baulig (martin@ * Anders Carlsson (andersca@gnu.org) * Havoc Pennington (hp@redhat.com) * Dietmar Maurer (dietmar@maurer-it.com) * * Copyright 1999, 2001 Richard Hestilow, Ximian, Inc, * Martin Baulig, Anders Carlsson, * Havoc Pennigton, Dietmar Maurer */ #undef GTK_DISABLE_DEPRECATED #include #include /* strcmp */ #include #include #include #include #include #include #include #include "bonobo-insert-component.xpm" G_DEFINE_TYPE (BonoboSelectorWidget, bonobo_selector_widget, GTK_TYPE_VBOX) #define GET_CLASS(o) BONOBO_SELECTOR_WIDGET_CLASS (GTK_OBJECT_GET_CLASS (o)) enum { FINAL_SELECT, LAST_SIGNAL }; static guint signals [LAST_SIGNAL] = { 0 }; struct _BonoboSelectorWidgetPrivate { GtkTreeView *list_view; GtkListStore *list_store; GtkWidget *desc_label; }; static char * build_id_query_fragment (const char **required_ids) { const char **required_ids_iter; const char **query_components_iter; char **query_components; char *query; guint n_required = 0; /* We need to build a query up from the required_ids */ required_ids_iter = required_ids; while (required_ids && *required_ids_iter) { ++n_required; ++required_ids_iter; } query_components = g_new0 (gchar*, n_required + 1); query_components_iter = (const gchar **) query_components; required_ids_iter = required_ids; while (*required_ids_iter) { *query_components_iter = g_strconcat ("repo_ids.has('", *required_ids_iter, "')", NULL); ++query_components_iter; ++required_ids_iter; } query = g_strjoinv (" AND ", query_components); g_strfreev (query_components); return query; } static GSList * get_lang_list (void) { static GSList *ret = NULL; if (!ret) { const gchar * const *names; for (names = g_get_language_names (); *names; names++) ret = g_slist_prepend (ret, (gchar *) *names); ret = g_slist_reverse (ret); } return ret; } static void get_filtered_objects (BonoboSelectorWidgetPrivate *priv, const gchar **required_ids) { guint i; gchar *query; CORBA_Environment ev; Bonobo_ServerInfoList *servers; GSList *lang_list; g_return_if_fail (required_ids != NULL); g_return_if_fail (*required_ids != NULL); query = build_id_query_fragment (required_ids); /* FIXME: sorting ? can we get oaf to do it ? - would be nice. */ CORBA_exception_init (&ev); servers = bonobo_activation_query (query, NULL, &ev); g_free (query); CORBA_exception_free (&ev); if (!servers) return; lang_list = get_lang_list (); for (i = 0; i < servers->_length; i++) { Bonobo_ServerInfo *oafinfo = &servers->_buffer[i]; const gchar *name = NULL, *desc = NULL; GtkTreeIter iter; name = bonobo_server_info_prop_lookup (oafinfo, "name", lang_list); desc = bonobo_server_info_prop_lookup (oafinfo, "description", lang_list); if (!name && !desc) name = desc = oafinfo->iid; if (!name) name = desc; if (!desc) desc = name; gtk_list_store_append (priv->list_store, &iter); gtk_list_store_set (priv->list_store, &iter, 0, name, 1, desc, 2, oafinfo->iid, -1); } CORBA_free (servers); } static void bonobo_selector_widget_finalize (GObject *object) { g_free (BONOBO_SELECTOR_WIDGET (object)->priv); G_OBJECT_CLASS (bonobo_selector_widget_parent_class)->finalize (object); } static gchar * get_field (BonoboSelectorWidget *sel, int col) { gchar *text; GtkTreeIter iter; GtkTreeSelection *selection; BonoboSelectorWidgetPrivate *priv; g_return_val_if_fail (sel != NULL, NULL); priv = sel->priv; selection = gtk_tree_view_get_selection (priv->list_view); if (!gtk_tree_selection_get_selected (selection, NULL, &iter)) return NULL; gtk_tree_model_get (GTK_TREE_MODEL (priv->list_store), &iter, col, &text, -1); return text; } static gchar * impl_get_id (BonoboSelectorWidget *sel) { return get_field (sel, 2); } /** * bonobo_selector_widget_get_id: * @sel: A BonoboSelectorWidget widget. * * Returns: A newly-allocated string containing the ID of the * currently-selected CORBA server (i.e., the corba server whose name * is highlighted in the list). The user of this function is * responsible for freeing this. It will give an oaf iid back. */ gchar * bonobo_selector_widget_get_id (BonoboSelectorWidget *sel) { return GET_CLASS (sel)->get_id (sel); } static gchar * impl_get_name (BonoboSelectorWidget *sel) { return get_field (sel, 0); } /** * bonobo_selector_widget_get_name: * @sel: A BonoboSelectorWidget widget. * * Returns: A newly-allocated string containing the name of the * currently-selected CORBA server (i.e., the corba server whose name * is highlighted in the list). The user of this function is * responsible for freeing this. */ gchar * bonobo_selector_widget_get_name (BonoboSelectorWidget *sel) { return GET_CLASS (sel)->get_name (sel); } static gchar * impl_get_description (BonoboSelectorWidget *sel) { return get_field (sel, 1); } /** * bonobo_selector_widget_get_description: * @sel: A BonoboSelectorWidget widget. * * Returns: A newly-allocated string containing the description of the * currently-selected CORBA server (i.e., the corba server whose name * is highlighted in the list). The user of this function is * responsible for freeing this. */ gchar * bonobo_selector_widget_get_description (BonoboSelectorWidget *sel) { return GET_CLASS (sel)->get_description (sel); } static void row_activated (GtkTreeView *tree_view, GtkTreePath *path, GtkTreeViewColumn *column, BonoboSelectorWidget *sel) { /* FIXME: oddness here */ #if 0 if (event && event->type == GDK_2BUTTON_PRESS) { g_signal_emit (sel, signals [FINAL_SELECT], 0, NULL); } else #endif { gchar *text; text = get_field (sel, 1); gtk_label_set_text (GTK_LABEL (sel->priv->desc_label), text); g_free (text); } } static void bonobo_selector_widget_init (BonoboSelectorWidget *widget) { BonoboSelectorWidget *sel = BONOBO_SELECTOR_WIDGET (widget); GtkWidget *scrolled, *pixmap; GtkWidget *hbox; GtkWidget *frame; BonoboSelectorWidgetPrivate *priv; GdkPixbuf *pixbuf; g_return_if_fail (sel != NULL); priv = sel->priv = g_new0 (BonoboSelectorWidgetPrivate, 1); scrolled = gtk_scrolled_window_new (NULL, NULL); gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (scrolled), GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC); priv->list_store = gtk_list_store_new ( 3, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING); priv->list_view = GTK_TREE_VIEW (gtk_tree_view_new_with_model ( GTK_TREE_MODEL (priv->list_store))); gtk_tree_view_insert_column_with_attributes ( priv->list_view,0, _("Name"), gtk_cell_renderer_text_new (), "text", 0, NULL); /* gtk_tree_view_insert_column_with_attributes ( priv->list_view,0, _("Description"), gtk_cell_renderer_text_new (), "text", 1, NULL); */ gtk_tree_selection_set_mode ( gtk_tree_view_get_selection (priv->list_view), GTK_SELECTION_BROWSE); g_signal_connect (priv->list_view, "row_activated", G_CALLBACK (row_activated), sel); gtk_tree_view_set_headers_clickable (priv->list_view, FALSE); gtk_container_add (GTK_CONTAINER (scrolled), GTK_WIDGET (priv->list_view)); gtk_box_pack_start (GTK_BOX (sel), scrolled, TRUE, TRUE, 0); frame = gtk_frame_new (_("Description")); gtk_box_pack_start (GTK_BOX (sel), frame, FALSE, TRUE, 0); priv->desc_label = gtk_label_new (NULL); gtk_misc_set_alignment (GTK_MISC (priv->desc_label), 0.0, 0.5); gtk_label_set_line_wrap (GTK_LABEL (priv->desc_label), TRUE); gtk_label_set_justify (GTK_LABEL (priv->desc_label), GTK_JUSTIFY_LEFT); hbox = gtk_hbox_new (FALSE, 0); pixbuf = gdk_pixbuf_new_from_xpm_data (bonobo_insert_component_xpm); pixmap = gtk_image_new_from_pixbuf (pixbuf); g_object_unref (pixbuf); gtk_box_pack_start (GTK_BOX (hbox), pixmap, FALSE, TRUE, BONOBO_UI_PAD_SMALL); gtk_box_pack_start (GTK_BOX (hbox), priv->desc_label, TRUE, TRUE, BONOBO_UI_PAD_SMALL); gtk_container_add (GTK_CONTAINER (frame), hbox); gtk_widget_show_all (GTK_WIDGET (widget)); } static void impl_set_interfaces (BonoboSelectorWidget *widget, const char **required_interfaces) { BonoboSelectorWidgetPrivate *priv; g_return_if_fail (widget != NULL); priv = widget->priv; g_return_if_fail (priv->list_view != NULL); gtk_list_store_clear (priv->list_store); get_filtered_objects (priv, required_interfaces); } void bonobo_selector_widget_set_interfaces (BonoboSelectorWidget *widget, const char **required_interfaces) { GET_CLASS (widget)->set_interfaces (widget, required_interfaces); } /** * bonobo_selector_widget_new: * * Creates a new BonoboSelectorWidget widget, this contains * a list and a description pane for each component. * * Returns: A pointer to the newly-created BonoboSelectorWidget widget. */ GtkWidget * bonobo_selector_widget_new (void) { return g_object_new (bonobo_selector_widget_get_type (), NULL); } static void bonobo_selector_widget_class_init (BonoboSelectorWidgetClass *klass) { GObjectClass *object_class; g_return_if_fail (klass != NULL); object_class = (GObjectClass *) klass; klass->get_id = impl_get_id; klass->get_name = impl_get_name; klass->get_description = impl_get_description; klass->set_interfaces = impl_set_interfaces; signals [FINAL_SELECT] = g_signal_new ( "final_select", G_TYPE_FROM_CLASS (object_class), G_SIGNAL_RUN_FIRST, G_STRUCT_OFFSET (BonoboSelectorWidgetClass, final_select), NULL, NULL, g_cclosure_marshal_VOID__VOID, G_TYPE_NONE, 0); object_class->finalize = bonobo_selector_widget_finalize; } libbonoboui-2.24.5/bonobo/bonobo-ui-sync-status.c0000644000076400007640000002322611173072741016656 00000000000000/* -*- Mode: C; indent-tabs-mode: t; c-basic-offset: 8; tab-width: 8 -*- */ /* * bonobo-ui-sync-status.h: The Bonobo UI/XML sync engine for status bits. * * Author: * Michael Meeks (michael@ximian.com) * * Copyright 2000 Ximian, Inc. */ #undef GTK_DISABLE_DEPRECATED #include #include #include #include #include #include #include #include #include #include #include #include static GObjectClass *parent_class = NULL; #define PARENT_TYPE bonobo_ui_sync_get_type () #define HINT_KEY "BonoboWindow:hint" static void set_hint_cb (BonoboUIEngine *engine, const char *str, BonoboUISyncStatus *msync) { guint id; if (msync->main_status) { id = gtk_statusbar_get_context_id ( msync->main_status, HINT_KEY); gtk_statusbar_push (msync->main_status, id, str); } } static void remove_hint_cb (BonoboUIEngine *engine, BonoboUISyncStatus *msync) { if (msync->main_status) { guint id; id = gtk_statusbar_get_context_id ( msync->main_status, HINT_KEY); gtk_statusbar_pop (msync->main_status, id); } } /* Only works for non-end packed @widget */ static gboolean has_item_to_the_right (GtkBox *box, GtkWidget *widget) { GList *l; gboolean passed_us = FALSE; gboolean has_to_right = FALSE; g_return_val_if_fail (GTK_IS_BOX (box), FALSE); for (l = box->children; l; l=l->next) { GtkBoxChild *child = l->data; if (child->widget == widget) { passed_us = TRUE; } else if (GTK_WIDGET_VISIBLE (child->widget)) { if (child->pack == GTK_PACK_END || passed_us) { has_to_right = TRUE; break; } } } return has_to_right; } static void impl_bonobo_ui_sync_status_state (BonoboUISync *sync, BonoboUINode *node, BonoboUINode *cmd_node, GtkWidget *widget, GtkWidget *parent) { const char *name; BonoboUISyncStatus *msync = BONOBO_UI_SYNC_STATUS (sync); name = bonobo_ui_node_peek_attr (node, "name"); if (!name) return; if (!strcmp (name, "main")) { BonoboUINode *next; const char *id_str; const char *resize_grip; gboolean has_grip; resize_grip = bonobo_ui_node_peek_attr ( bonobo_ui_node_parent (node), "resize_grip"); has_grip = TRUE; if (resize_grip && atoi (resize_grip) == 0) has_grip = FALSE; next = node; while ((next = bonobo_ui_node_next (next))) { const char *hidden; /* The grip is useless if we have items to the right */ if (!(hidden = bonobo_ui_node_peek_attr (next, "hidden")) || !atoi (hidden)) has_grip = FALSE; } if (has_item_to_the_right (GTK_BOX (parent), widget)) has_grip = FALSE; gtk_statusbar_set_has_resize_grip (msync->main_status, has_grip); id_str = bonobo_ui_engine_node_get_id (sync->engine, node); msync->main_status = GTK_STATUSBAR (widget); if (id_str) { guint id; char *txt; id = gtk_statusbar_get_context_id ( msync->main_status, id_str); if ((txt = bonobo_ui_node_get_content (node))) gtk_statusbar_push (msync->main_status, id, txt); else gtk_statusbar_pop (msync->main_status, id); bonobo_ui_node_free_string (txt); } } } static void main_status_null (BonoboUISyncStatus *msync) { msync->main_status = NULL; } /* * This function is to ensure that the status bar * does not ask for any space, but fills the free * horizontal space in the hbox. */ static void clobber_request_cb (GtkWidget *widget, GtkRequisition *requisition, gpointer user_data) { requisition->width = 1; } static gboolean string_array_contains (char **str_array, const char *match) { int i = 0; char *string; while ((string = str_array [i++])) if (strcmp (string, match) == 0) return TRUE; return FALSE; } static GtkWidget * impl_bonobo_ui_sync_status_build (BonoboUISync *sync, BonoboUINode *node, BonoboUINode *cmd_node, int *pos, GtkWidget *parent) { const char *name; GtkWidget *widget = NULL; BonoboUISyncStatus *msync = BONOBO_UI_SYNC_STATUS (sync); name = bonobo_ui_node_peek_attr (node, "name"); if (!name) return NULL; if (!strcmp (name, "main")) { widget = gtk_statusbar_new (); g_signal_connect (GTK_OBJECT (widget), "size_request", G_CALLBACK (clobber_request_cb), NULL); msync->main_status = GTK_STATUSBAR (widget); g_signal_connect_object (widget, "destroy", G_CALLBACK (main_status_null), msync, G_CONNECT_SWAPPED); /* insert a little padding so text isn't jammed against frame */ gtk_misc_set_padding ( GTK_MISC (GTK_STATUSBAR (widget)->label), BONOBO_UI_PAD, 0); gtk_widget_show (GTK_WIDGET (widget)); gtk_box_pack_start (GTK_BOX (parent), widget, TRUE, TRUE, 0); } else if (bonobo_ui_node_has_name (node, "control")) { char *behavior; char **behavior_array; gboolean pack_start = FALSE; gboolean fill = FALSE; gboolean expand = FALSE; widget = bonobo_ui_engine_build_control (sync->engine, node); if (widget) { behavior_array = NULL; if ((behavior = bonobo_ui_engine_get_attr (node, cmd_node, "behavior"))) { behavior_array = g_strsplit (behavior, ",", -1); bonobo_ui_node_free_string (behavior); } if (behavior_array != NULL) { pack_start = string_array_contains (behavior_array, "pack-start"); fill = string_array_contains (behavior_array, "fill"); expand = string_array_contains (behavior_array, "expand"); } if (pack_start) gtk_box_pack_start (GTK_BOX (parent), widget, expand, fill, 0); else gtk_box_pack_end (GTK_BOX (parent), widget, expand, fill, 0); g_strfreev (behavior_array); } } if (widget) gtk_box_reorder_child (msync->status, widget, (*pos)++); return widget; } static GtkWidget * impl_bonobo_ui_sync_status_build_placeholder (BonoboUISync *sync, BonoboUINode *node, BonoboUINode *cmd_node, int *pos, GtkWidget *parent) { GtkWidget *widget; BonoboUISyncStatus *msync = BONOBO_UI_SYNC_STATUS (sync); widget = gtk_vseparator_new (); gtk_widget_set_sensitive (widget, FALSE); gtk_box_pack_end (GTK_BOX (parent), widget, FALSE, FALSE, 0); if (widget) gtk_box_reorder_child (msync->status, widget, (*pos)++); return widget; } static GList * box_get_children_in_order (GtkBox *box) { GList *ret = NULL; GList *l; g_return_val_if_fail (GTK_IS_BOX (box), NULL); for (l = box->children; l; l = l->next) { GtkBoxChild *child = l->data; ret = g_list_prepend (ret, child->widget); } return g_list_reverse (ret); } static void impl_bonobo_ui_sync_status_stamp_root (BonoboUISync *sync) { BonoboUISyncStatus *sstatus = BONOBO_UI_SYNC_STATUS (sync); BonoboUINode *node; GtkWidget *widget; node = bonobo_ui_engine_get_path (sync->engine, "/status"); if (node) { widget = GTK_WIDGET (sstatus->status); bonobo_ui_engine_stamp_root (sync->engine, node, widget); bonobo_ui_sync_do_show_hide (sync, node, NULL, widget); } } static GList * impl_bonobo_ui_sync_status_get_widgets (BonoboUISync *sync, BonoboUINode *node) { if (bonobo_ui_node_has_name (node, "status")) return box_get_children_in_order ( GTK_BOX (BONOBO_UI_SYNC_STATUS (sync)->status)); else return NULL; } static void impl_dispose (GObject *object) { BonoboUISyncStatus *sync = (BonoboUISyncStatus *) object; if (sync->status) { gtk_widget_destroy (GTK_WIDGET (sync->status)); g_object_unref (sync->status); sync->status = NULL; } parent_class->dispose (object); } static void impl_finalize (GObject *object) { parent_class->finalize (object); } static gboolean impl_bonobo_ui_sync_status_can_handle (BonoboUISync *sync, BonoboUINode *node) { return bonobo_ui_node_has_name (node, "status"); } /* We need to map the shell to the item */ static void class_init (BonoboUISyncClass *sync_class) { GObjectClass *object_class; parent_class = g_type_class_peek_parent (sync_class); object_class = G_OBJECT_CLASS (sync_class); object_class->dispose = impl_dispose; object_class->finalize = impl_finalize; sync_class->sync_state = impl_bonobo_ui_sync_status_state; sync_class->build = impl_bonobo_ui_sync_status_build; sync_class->build_placeholder = impl_bonobo_ui_sync_status_build_placeholder; sync_class->get_widgets = impl_bonobo_ui_sync_status_get_widgets; sync_class->stamp_root = impl_bonobo_ui_sync_status_stamp_root; sync_class->can_handle = impl_bonobo_ui_sync_status_can_handle; } static void init (BonoboUISyncStatus *msync) { } GType bonobo_ui_sync_status_get_type (void) { static GType type = 0; if (type == 0) { GTypeInfo info = { sizeof (BonoboUISyncStatusClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) class_init, NULL, /* class_finalize */ NULL, /* class_data */ sizeof (BonoboUISyncStatus), 0, /* n_preallocs */ (GInstanceInitFunc) init }; type = g_type_register_static (PARENT_TYPE, "BonoboUISyncStatus", &info, 0); } return type; } BonoboUISync * bonobo_ui_sync_status_new (BonoboUIEngine *engine, GtkBox *status) { BonoboUISyncStatus *sync; g_return_val_if_fail (BONOBO_IS_UI_ENGINE (engine), NULL); sync = g_object_new (BONOBO_TYPE_UI_SYNC_STATUS, NULL); sync->status = g_object_ref (status); g_signal_connect (engine, "add_hint", G_CALLBACK (set_hint_cb), sync); g_signal_connect (engine, "remove_hint", G_CALLBACK (remove_hint_cb), sync); return bonobo_ui_sync_construct ( BONOBO_UI_SYNC (sync), engine, FALSE, TRUE); } libbonoboui-2.24.5/bonobo/bonobo-control-frame.c0000644000076400007640000007206511173072741016523 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ /* * Bonobo control frame object. * * Authors: * Michael Meeks (michael@ximian.com) * Nat Friedman (nat@ximian.com) * Federico Mena (federico@ximian.com) * Miguel de Icaza (miguel@ximian.com) * George Lebel (jirka@5z.com) * Maciej Stachowiak (mjs@eazel.com) * * Copyright 1999, 2001 Ximian, Inc. * 2000 Eazel, Inc. */ #undef GTK_DISABLE_DEPRECATED #include #include #include #include #include #if defined (GDK_WINDOWING_X11) #include #elif defined (GDK_WINDOWING_WIN32) #include #elif defined (GDK_WINDOWING_QUARTZ) #else #error Port to this GDK backend #endif #include #include #include #include #include enum { ACTIVATED, ACTIVATE_URI, LAST_SIGNAL }; #define PARENT_TYPE BONOBO_TYPE_OBJECT static guint control_frame_signals [LAST_SIGNAL]; /* Parent object class in GTK hierarchy */ static GObjectClass *bonobo_control_frame_parent_class; struct _BonoboControlFramePrivate { BonoboControl *inproc_control; Bonobo_Control control; GtkWidget *socket; Bonobo_UIContainer ui_container; BonoboPropertyBag *propbag; gboolean autoactivate; gboolean autostate; gboolean activated; }; static void control_connection_died_cb (gpointer connection, gpointer user_data) { CORBA_Object cntl; CORBA_Environment ev; BonoboControlFrame *frame = BONOBO_CONTROL_FRAME (user_data); g_return_if_fail (frame != NULL); dbgprintf ("The remote control end died unexpectedly"); CORBA_exception_init (&ev); cntl = CORBA_Object_duplicate (frame->priv->control, &ev); bonobo_control_frame_bind_to_control ( frame, CORBA_OBJECT_NIL, NULL); CORBA_exception_set_system ( &ev, ex_CORBA_COMM_FAILURE, CORBA_COMPLETED_YES); bonobo_object_check_env (BONOBO_OBJECT (frame), cntl, &ev); CORBA_Object_release (cntl, &ev); CORBA_exception_free (&ev); } static Bonobo_Gdk_WindowId impl_Bonobo_ControlFrame_getToplevelId (PortableServer_Servant servant, CORBA_Environment *ev) { BonoboControlFrame *frame; GtkWidget *toplev; Bonobo_Gdk_WindowId id; frame = BONOBO_CONTROL_FRAME (bonobo_object (servant)); for (toplev = bonobo_control_frame_get_widget (frame); toplev && toplev->parent; toplev = toplev->parent) ; bonobo_return_val_if_fail (toplev != NULL, NULL, ev); if (BONOBO_IS_PLUG (toplev)) { BonoboControl *control; Bonobo_ControlFrame frame; control = bonobo_plug_get_control (BONOBO_PLUG (toplev)); if (!control) { g_warning ("No control bound to plug from which to " "get transient parent"); return CORBA_string_dup (""); } frame = bonobo_control_get_control_frame (control, ev); if (frame == CORBA_OBJECT_NIL) { g_warning ("No control frame associated with control from " "which to get transient parent"); return CORBA_string_dup (""); } id = Bonobo_ControlFrame_getToplevelId (frame, ev); } else #if defined (GDK_WINDOWING_X11) id = bonobo_control_window_id_from_x11 ( GDK_WINDOW_XWINDOW (toplev->window)); #elif defined (GDK_WINDOWING_WIN32) id = bonobo_control_window_id_from_x11 ( (guint32) GDK_WINDOW_HWND (toplev->window)); #endif return id; } static Bonobo_PropertyBag impl_Bonobo_ControlFrame_getAmbientProperties (PortableServer_Servant servant, CORBA_Environment *ev) { BonoboControlFrame *frame; frame = BONOBO_CONTROL_FRAME (bonobo_object (servant)); if (!frame->priv->propbag) return CORBA_OBJECT_NIL; return bonobo_object_dup_ref ( BONOBO_OBJREF (frame->priv->propbag), ev); } static Bonobo_UIContainer impl_Bonobo_ControlFrame_getUIContainer (PortableServer_Servant servant, CORBA_Environment *ev) { BonoboControlFrame *frame = BONOBO_CONTROL_FRAME ( bonobo_object_from_servant (servant)); if (frame->priv->ui_container == NULL) return CORBA_OBJECT_NIL; return bonobo_object_dup_ref (frame->priv->ui_container, ev); } /* --- Notifications --- */ static void impl_Bonobo_ControlFrame_notifyActivated (PortableServer_Servant servant, const CORBA_boolean state, CORBA_Environment *ev) { BonoboControlFrame *frame = BONOBO_CONTROL_FRAME ( bonobo_object_from_servant (servant)); g_signal_emit (frame, control_frame_signals [ACTIVATED], 0, state); } static void impl_Bonobo_ControlFrame_queueResize (PortableServer_Servant servant, CORBA_Environment *ev) { /* Supposedly Gtk+ handles size negotiation properly for us */ /* BonoboSocket *socket; BonoboControlFrame *frame; frame = BONOBO_CONTROL_FRAME (bonobo_object (servant)); if ((socket = frame->priv->socket)) { GTK_SOCKET (socket)->have_size = FALSE; gtk_widget_queue_resize (GTK_WIDGET (socket)); } */ } static void impl_Bonobo_ControlFrame_activateURI (PortableServer_Servant servant, const CORBA_char *uri, CORBA_boolean relative, CORBA_Environment *ev) { BonoboControlFrame *frame = BONOBO_CONTROL_FRAME (bonobo_object_from_servant (servant)); g_signal_emit (frame, control_frame_signals [ACTIVATE_URI], 0, (const char *) uri, (gboolean) relative); } #ifdef DEBUG_CONTROL static void dump_geom (GdkWindow *window) { gint x, y, width, height, depth; gdk_window_get_geometry (window, &x, &y, &width, &height, &depth); fprintf (stderr, "geom (%d, %d), (%d, %d), %d ", x, y, width, height, depth); } static void dump_gdk_tree (GdkWindow *window) { GList *l; GtkWidget *widget = NULL; gdk_window_get_user_data (window, (gpointer) &widget); fprintf (stderr, "Window %p (parent %p) ", window, gdk_window_get_parent (window)); dump_geom (window); if (widget) { fprintf (stderr, "has widget '%s' %s ", g_type_name_from_instance ((gpointer) widget), GTK_WIDGET_VISIBLE (widget) ? "visible" : "hidden"); } else fprintf (stderr, "No widget "); fprintf (stderr, "gdk: %s %s ", gdk_window_is_visible (window) ? "visible" : "invisible", gdk_window_is_viewable (window) ? "viewable" : "not viewable"); l = gdk_window_peek_children (window); fprintf (stderr, "%d children:\n", g_list_length (l)); for (; l; l = l->next) dump_gdk_tree (l->data); fprintf (stderr, "\n"); } #endif static CORBA_char * bonobo_control_frame_get_remote_window_id (BonoboControlFrame *frame, CORBA_Environment *ev) { CORBA_char *retval; char *cookie; int screen; screen = gdk_screen_get_number ( gtk_widget_get_screen (frame->priv->socket)); cookie = g_strdup_printf ("screen=%d", screen); retval = Bonobo_Control_getWindowId ( frame->priv->control, cookie, ev); g_free (cookie); return retval; } void bonobo_control_frame_get_remote_window (BonoboControlFrame *frame, CORBA_Environment *opt_ev) { CORBA_char *id; CORBA_Environment *ev, tmp_ev; g_return_if_fail (BONOBO_IS_CONTROL_FRAME (frame)); dbgprintf ("bonobo_control_frame_get_remote_window " "%p %p %d %p\n", frame->priv, frame->priv->socket, GTK_WIDGET_REALIZED (frame->priv->socket), frame->priv->control); if (!frame->priv || !frame->priv->socket || !GTK_WIDGET_REALIZED (frame->priv->socket) || frame->priv->control == CORBA_OBJECT_NIL) return; if (!opt_ev) { CORBA_exception_init (&tmp_ev); ev = &tmp_ev; } else ev = opt_ev; /* Introduce ourselves to the Control. */ id = bonobo_control_frame_get_remote_window_id (frame, ev); if (BONOBO_EX (ev)) { dbgprintf ("getWindowId exception\n"); bonobo_object_check_env (BONOBO_OBJECT (frame), frame->priv->control, ev); } else { GdkNativeWindow xid; BonoboPlug *plug = NULL; xid = bonobo_control_x11_from_window_id (id); dbgprintf ("setFrame id '%s' (=%u)\n", id, xid); CORBA_free (id); { GdkDisplay *display = gtk_widget_get_display (frame->priv->socket); gpointer user_data = NULL; if (gdk_window_lookup_for_display (display, xid)) { gdk_window_get_user_data (gdk_window_lookup_for_display (display, xid), &user_data); plug = user_data; } } /* FIXME: What happens if we have an in-proc CORBA proxy eg. * for a remote X window ? - we need to treat these differently. */ if (plug && !frame->priv->inproc_control) { g_warning ("ARGH - serious ORB screwup"); frame->priv->inproc_control = bonobo_plug_get_control (plug); } else if (!plug && frame->priv->inproc_control) g_warning ("ARGH - different serious ORB screwup"); bonobo_socket_add_id (BONOBO_SOCKET (frame->priv->socket), xid); } if (!opt_ev) CORBA_exception_free (ev); } /** * bonobo_control_frame_construct: * @control_frame: The #BonoboControlFrame object to be initialized. * @ui_container: A CORBA object for the UIContainer for the container application. * * Initializes @control_frame with the parameters. * * Returns: the initialized BonoboControlFrame object @control_frame that implements the * Bonobo::ControlFrame CORBA service. */ BonoboControlFrame * bonobo_control_frame_construct (BonoboControlFrame *frame, Bonobo_UIContainer ui_container, CORBA_Environment *ev) { g_return_val_if_fail (ev != NULL, NULL); g_return_val_if_fail (BONOBO_IS_CONTROL_FRAME (frame), NULL); bonobo_control_frame_set_ui_container (frame, ui_container, ev); return frame; } /** * bonobo_control_frame_new: * @ui_container: The #Bonobo_UIContainer for the container application. * * Returns: BonoboControlFrame object that implements the * Bonobo::ControlFrame CORBA service. */ BonoboControlFrame * bonobo_control_frame_new (Bonobo_UIContainer ui_container) { CORBA_Environment ev; BonoboControlFrame *frame; frame = g_object_new (BONOBO_TYPE_CONTROL_FRAME, NULL); CORBA_exception_init (&ev); frame = bonobo_control_frame_construct (frame, ui_container, &ev); CORBA_exception_free (&ev); return frame; } static void bonobo_control_frame_dispose (GObject *object) { BonoboControlFrame *frame = BONOBO_CONTROL_FRAME (object); dbgprintf ("bonobo_control_frame_dispose %p\n", object); if (frame->priv->socket) bonobo_control_frame_set_socket (frame, NULL); bonobo_control_frame_set_propbag (frame, NULL); bonobo_control_frame_bind_to_control ( frame, CORBA_OBJECT_NIL, NULL); bonobo_control_frame_set_ui_container ( frame, CORBA_OBJECT_NIL, NULL); bonobo_control_frame_parent_class->dispose (object); } static void bonobo_control_frame_finalize (GObject *object) { BonoboControlFrame *frame = BONOBO_CONTROL_FRAME (object); dbgprintf ("bonobo_control_frame_finalize %p\n", object); g_free (frame->priv); bonobo_control_frame_parent_class->finalize (object); } static void bonobo_control_frame_activated (BonoboControlFrame *frame, gboolean state) { g_return_if_fail (BONOBO_IS_CONTROL_FRAME (frame)); frame->priv->activated = state; } static void bonobo_control_frame_class_init (BonoboControlFrameClass *klass) { GObjectClass *object_class = (GObjectClass *) klass; POA_Bonobo_ControlFrame__epv *epv = &klass->epv; bonobo_control_frame_parent_class = g_type_class_peek_parent (klass); control_frame_signals [ACTIVATED] = g_signal_new ("activated", G_TYPE_FROM_CLASS (object_class), G_SIGNAL_RUN_LAST, G_STRUCT_OFFSET (BonoboControlFrameClass, activated), NULL, NULL, g_cclosure_marshal_VOID__BOOLEAN, G_TYPE_NONE, 1, G_TYPE_BOOLEAN); control_frame_signals [ACTIVATE_URI] = g_signal_new ("activate_uri", G_TYPE_FROM_CLASS (object_class), G_SIGNAL_RUN_LAST, G_STRUCT_OFFSET (BonoboControlFrameClass, activate_uri), NULL, NULL, bonobo_ui_marshal_VOID__STRING_BOOLEAN, G_TYPE_NONE, 2, G_TYPE_STRING, G_TYPE_BOOLEAN); klass->activated = bonobo_control_frame_activated; object_class->finalize = bonobo_control_frame_finalize; object_class->dispose = bonobo_control_frame_dispose; epv->getToplevelId = impl_Bonobo_ControlFrame_getToplevelId; epv->getAmbientProperties = impl_Bonobo_ControlFrame_getAmbientProperties; epv->getUIContainer = impl_Bonobo_ControlFrame_getUIContainer; epv->notifyActivated = impl_Bonobo_ControlFrame_notifyActivated; epv->queueResize = impl_Bonobo_ControlFrame_queueResize; epv->activateURI = impl_Bonobo_ControlFrame_activateURI; } static void bonobo_control_frame_init (BonoboObject *object) { BonoboControlFrame *frame = BONOBO_CONTROL_FRAME (object); BonoboSocket *socket; frame->priv = g_new0 (BonoboControlFramePrivate, 1); frame->priv->autoactivate = FALSE; frame->priv->autostate = TRUE; socket = BONOBO_SOCKET (bonobo_socket_new ()); gtk_widget_show (GTK_WIDGET (socket)); bonobo_control_frame_set_socket (frame, socket); } BONOBO_TYPE_FUNC_FULL (BonoboControlFrame, Bonobo_ControlFrame, PARENT_TYPE, bonobo_control_frame) /** * bonobo_control_frame_control_activate: * @control_frame: The BonoboControlFrame object whose control should be * activated. * * Activates the BonoboControl embedded in @control_frame by calling the * activate() #Bonobo_Control interface method on it. */ void bonobo_control_frame_control_activate (BonoboControlFrame *frame) { CORBA_Environment ev; g_return_if_fail (BONOBO_IS_CONTROL_FRAME (frame)); /* * Check that this ControLFrame actually has a Control associated * with it. */ g_return_if_fail (frame->priv->control != CORBA_OBJECT_NIL); CORBA_exception_init (&ev); Bonobo_Control_activate (frame->priv->control, TRUE, &ev); if (BONOBO_EX (&ev)) { bonobo_object_check_env ( BONOBO_OBJECT (frame), (CORBA_Object) frame->priv->control, &ev); } CORBA_exception_free (&ev); } /** * bonobo_control_frame_control_deactivate: * @control_frame: The BonoboControlFrame object whose control should be * deactivated. * * Deactivates the BonoboControl embedded in @frame by calling * the activate() CORBA method on it with the parameter %FALSE. */ void bonobo_control_frame_control_deactivate (BonoboControlFrame *frame) { CORBA_Environment ev; g_return_if_fail (BONOBO_IS_CONTROL_FRAME (frame)); /* * Check that this ControlFrame actually has a Control associated * with it. */ g_return_if_fail (frame->priv->control != CORBA_OBJECT_NIL); CORBA_exception_init (&ev); Bonobo_Control_activate (frame->priv->control, FALSE, &ev); if (BONOBO_EX (&ev)) { bonobo_object_check_env ( BONOBO_OBJECT (frame), (CORBA_Object) frame->priv->control, &ev); } CORBA_exception_free (&ev); } /** * bonobo_control_frame_set_autoactivate: * @frame: A BonoboControlFrame object. * @autoactivate: A flag which indicates whether or not the * ControlFrame should automatically perform activation on the Control * to which it is bound. * * Modifies the autoactivate behavior of @frame. If * @frame is set to autoactivate, then it will automatically * send an "activate" message to the Control to which it is bound when * it gets a focus-in event, and a "deactivate" message when it gets a * focus-out event. Autoactivation is off by default. */ void bonobo_control_frame_set_autoactivate (BonoboControlFrame *frame, gboolean autoactivate) { g_return_if_fail (BONOBO_IS_CONTROL_FRAME (frame)); frame->priv->autoactivate = autoactivate; } /** * bonobo_control_frame_get_autoactivate: * @frame: A #BonoboControlFrame object. * * Returns: A boolean which indicates whether or not @frame is * set to automatically activate its Control. See * bonobo_control_frame_set_autoactivate(). */ gboolean bonobo_control_frame_get_autoactivate (BonoboControlFrame *frame) { g_return_val_if_fail (BONOBO_IS_CONTROL_FRAME (frame), FALSE); return frame->priv->autoactivate; } static Bonobo_Gtk_State bonobo_control_frame_state_to_corba (const GtkStateType state) { switch (state) { case GTK_STATE_NORMAL: return Bonobo_Gtk_StateNormal; case GTK_STATE_ACTIVE: return Bonobo_Gtk_StateActive; case GTK_STATE_PRELIGHT: return Bonobo_Gtk_StatePrelight; case GTK_STATE_SELECTED: return Bonobo_Gtk_StateSelected; case GTK_STATE_INSENSITIVE: return Bonobo_Gtk_StateInsensitive; default: g_warning ("bonobo_control_frame_state_to_corba: Unknown state: %d", (gint) state); return Bonobo_Gtk_StateNormal; } } /** * bonobo_control_frame_control_set_state: * @frame: A #BonoboControlFrame object which is bound to a * remote #BonoboControl. * @state: A #GtkStateType value, specifying the widget state to apply * to the remote control. * * Proxies @state to the control bound to @frame. */ void bonobo_control_frame_control_set_state (BonoboControlFrame *frame, GtkStateType state) { Bonobo_Gtk_State corba_state; CORBA_Environment ev; g_return_if_fail (BONOBO_IS_CONTROL_FRAME (frame)); g_return_if_fail (frame->priv->control != CORBA_OBJECT_NIL); corba_state = bonobo_control_frame_state_to_corba (state); CORBA_exception_init (&ev); Bonobo_Control_setState (frame->priv->control, corba_state, &ev); if (BONOBO_EX (&ev)) { bonobo_object_check_env ( BONOBO_OBJECT (frame), frame->priv->control, &ev); } CORBA_exception_free (&ev); } /** * bonobo_control_frame_set_autostate: * @frame: A #BonoboControlFrame object. * @autostate: Whether or not GtkWidget state changes should be * automatically propagated down to the Control. * * Changes whether or not @frame automatically proxies * state changes to its associated control. The default mode * is for the control frame to autopropagate. */ void bonobo_control_frame_set_autostate (BonoboControlFrame *frame, gboolean autostate) { g_return_if_fail (BONOBO_IS_CONTROL_FRAME (frame)); frame->priv->autostate = autostate; } /** * bonobo_control_frame_get_autostate: * @frame: A #BonoboControlFrame object. * * Returns: Whether or not this control frame will automatically * proxy GtkState changes to its associated Control. */ gboolean bonobo_control_frame_get_autostate (BonoboControlFrame *frame) { g_return_val_if_fail (BONOBO_IS_CONTROL_FRAME (frame), FALSE); return frame->priv->autostate; } /** * bonobo_control_frame_get_ui_container: * @frame: A BonoboControlFrame object. * Returns: The Bonobo_UIContainer object reference associated with this * ControlFrame. This ui_container is specified when the ControlFrame is * created. See bonobo_control_frame_new(). */ Bonobo_UIContainer bonobo_control_frame_get_ui_container (BonoboControlFrame *frame) { g_return_val_if_fail (BONOBO_IS_CONTROL_FRAME (frame), CORBA_OBJECT_NIL); return frame->priv->ui_container; } /** * bonobo_control_frame_set_ui_container: * @frame: A BonoboControlFrame object. * @uic: A Bonobo_UIContainer object reference. * * Associates a new %Bonobo_UIContainer object with this ControlFrame. This * is only allowed while the Control is deactivated. */ void bonobo_control_frame_set_ui_container (BonoboControlFrame *frame, Bonobo_UIContainer ui_container, CORBA_Environment *opt_ev) { CORBA_Environment *ev, tmp_ev; Bonobo_UIContainer old_ui_container; g_return_if_fail (BONOBO_IS_CONTROL_FRAME (frame)); old_ui_container = frame->priv->ui_container; if (old_ui_container == ui_container) return; if (!opt_ev) { CORBA_exception_init (&tmp_ev); ev = &tmp_ev; } else ev = opt_ev; /* See ui-faq.txt if this dies on you. */ if (ui_container != CORBA_OBJECT_NIL) { if (frame->priv->activated) g_warning ("Trying to associate an new UI container with an activated control frame"); g_assert (CORBA_Object_is_a ( ui_container, "IDL:Bonobo/UIContainer:1.0", ev)); frame->priv->ui_container = bonobo_object_dup_ref ( ui_container, ev); } else frame->priv->ui_container = CORBA_OBJECT_NIL; if (old_ui_container) bonobo_object_release_unref (old_ui_container, ev); if (!opt_ev) CORBA_exception_free (&tmp_ev); } /** * bonobo_control_frame_bind_to_control: * @frame: A BonoboControlFrame object. * @control: The CORBA object for the BonoboControl embedded * in this BonoboControlFrame. * @opt_ev: Optional exception environment * * Associates @control with this @frame. */ void bonobo_control_frame_bind_to_control (BonoboControlFrame *frame, Bonobo_Control control, CORBA_Environment *opt_ev) { CORBA_Environment *ev, tmp_ev; g_return_if_fail (BONOBO_IS_CONTROL_FRAME (frame)); if (control == frame->priv->control) return; if (!opt_ev) { CORBA_exception_init (&tmp_ev); ev = &tmp_ev; } else ev = opt_ev; g_object_ref (frame); if (frame->priv->control != CORBA_OBJECT_NIL) { if (!frame->priv->inproc_control) ORBit_small_unlisten_for_broken ( frame->priv->control, G_CALLBACK (control_connection_died_cb)); /* Unset ourselves as the frame */ Bonobo_Control_setFrame (frame->priv->control, CORBA_OBJECT_NIL, ev); if (frame->priv->control != CORBA_OBJECT_NIL) bonobo_object_release_unref (frame->priv->control, ev); CORBA_exception_free (ev); } if (control == CORBA_OBJECT_NIL) { frame->priv->control = CORBA_OBJECT_NIL; frame->priv->inproc_control = NULL; } else { frame->priv->control = bonobo_object_dup_ref (control, ev); frame->priv->inproc_control = (BonoboControl *) bonobo_object (ORBit_small_get_servant (control)); if (!frame->priv->inproc_control) bonobo_control_add_listener ( frame->priv->control, G_CALLBACK (control_connection_died_cb), frame, ev); Bonobo_Control_setFrame ( frame->priv->control, BONOBO_OBJREF (frame), ev); bonobo_control_frame_get_remote_window (frame, ev); } g_object_unref (frame); if (!opt_ev) CORBA_exception_free (&tmp_ev); } /** * bonobo_control_frame_get_control: * @frame: A BonoboControlFrame which is bound to a remote * BonoboControl. * * Returns: The Bonobo_Control CORBA interface for the remote Control * which is bound to @frame. See also * bonobo_control_frame_bind_to_control(). */ Bonobo_Control bonobo_control_frame_get_control (BonoboControlFrame *frame) { g_return_val_if_fail (BONOBO_IS_CONTROL_FRAME (frame), CORBA_OBJECT_NIL); return frame->priv->control; } /** * bonobo_control_frame_get_widget: * @frame: The BonoboControlFrame whose widget is being requested.a * * Use this function when you want to embed a BonoboControl into your * container's widget hierarchy. Once you have bound the * BonoboControlFrame to a remote BonoboControl, place the widget * returned by bonobo_control_frame_get_widget() into your widget * hierarchy and the control will appear in your application. * * Returns: A GtkWidget which has the remote BonoboControl physically * inside it. */ GtkWidget * bonobo_control_frame_get_widget (BonoboControlFrame *frame) { g_return_val_if_fail (BONOBO_IS_CONTROL_FRAME (frame), NULL); return frame->priv->socket; } /** * bonobo_control_frame_set_propbag: * @frame: A BonoboControlFrame object. * @propbag: A BonoboPropertyBag which will hold @frame's * ambient properties. * * Makes @frame use @propbag for its ambient properties. When * @frame's Control requests the ambient properties, it will * get them from @propbag. */ void bonobo_control_frame_set_propbag (BonoboControlFrame *frame, BonoboPropertyBag *propbag) { BonoboPropertyBag *old_pb; g_return_if_fail (BONOBO_IS_CONTROL_FRAME (frame)); g_return_if_fail (propbag == NULL || BONOBO_IS_PROPERTY_BAG (propbag)); old_pb = frame->priv->propbag; if (old_pb == propbag) return; frame->priv->propbag = bonobo_object_ref ((BonoboObject *) propbag); bonobo_object_unref ((BonoboObject *) old_pb); } /** * bonobo_control_frame_get_propbag: * @frame: A BonoboControlFrame object whose PropertyBag has * been set. * * Returns: The BonoboPropertyBag object which has been associated with * @frame. */ BonoboPropertyBag * bonobo_control_frame_get_propbag (BonoboControlFrame *frame) { g_return_val_if_fail (BONOBO_IS_CONTROL_FRAME (frame), NULL); return frame->priv->propbag; } /** * bonobo_control_frame_get_control_property_bag: * @frame: the control frame * @ev: CORBA exception environment * * This retrives a Bonobo_PropertyBag reference from its * associated Bonobo Control * * Return value: CORBA property bag reference or CORBA_OBJECT_NIL **/ Bonobo_PropertyBag bonobo_control_frame_get_control_property_bag (BonoboControlFrame *frame, CORBA_Environment *opt_ev) { Bonobo_PropertyBag pbag; Bonobo_Control control; CORBA_Environment *real_ev, tmp_ev; g_return_val_if_fail (frame != NULL, NULL); g_return_val_if_fail (BONOBO_IS_CONTROL_FRAME (frame), NULL); if (opt_ev) real_ev = opt_ev; else { CORBA_exception_init (&tmp_ev); real_ev = &tmp_ev; } control = frame->priv->control; /* FIXME: we could cache this here - is it called a lot ? */ pbag = Bonobo_Control_getProperties (control, real_ev); if (BONOBO_EX (real_ev)) { if (!opt_ev) CORBA_exception_free (&tmp_ev); pbag = CORBA_OBJECT_NIL; } return pbag; } void bonobo_control_frame_size_request (BonoboControlFrame *frame, GtkRequisition *requisition, CORBA_Environment *opt_ev) { CORBA_Environment *ev, tmp_ev; Bonobo_Gtk_Requisition req; g_return_if_fail (requisition != NULL); g_return_if_fail (BONOBO_IS_CONTROL_FRAME (frame)); if (frame->priv->control == CORBA_OBJECT_NIL) { /* We haven't been bound to a control yet, so return "I don't * care about what I get assigned". */ requisition->width = requisition->height = 1; return; } if (!opt_ev) { CORBA_exception_init (&tmp_ev); ev = &tmp_ev; } else ev = opt_ev; req = Bonobo_Control_getDesiredSize (frame->priv->control, ev); if (BONOBO_EX (ev)) { bonobo_object_check_env ( BONOBO_OBJECT (frame), (CORBA_Object) frame->priv->control, ev); req.width = req.height = 1; } requisition->width = req.width; requisition->height = req.height; if (!opt_ev) CORBA_exception_free (&tmp_ev); } /** * bonobo_control_frame_focus: * @frame: A control frame. * @direction: Direction in which to change focus. * * Proxies a #GtkContainer::focus() request to the embedded control. This is an * internal function and it should only really be ever used by the #BonoboSocket * implementation. * * Return value: TRUE if the child kept the focus, FALSE if focus should be * passed on to the next widget. **/ gboolean bonobo_control_frame_focus (BonoboControlFrame *frame, GtkDirectionType direction) { BonoboControlFramePrivate *priv; CORBA_Environment ev; gboolean result; Bonobo_Gtk_Direction corba_direction; g_return_val_if_fail (frame != NULL, FALSE); g_return_val_if_fail (BONOBO_IS_CONTROL_FRAME (frame), FALSE); priv = frame->priv; if (priv->control == CORBA_OBJECT_NIL) return FALSE; switch (direction) { case GTK_DIR_TAB_FORWARD: corba_direction = Bonobo_Gtk_DirectionTabForward; break; case GTK_DIR_TAB_BACKWARD: corba_direction = Bonobo_Gtk_DirectionTabBackward; break; case GTK_DIR_UP: corba_direction = Bonobo_Gtk_DirectionUp; break; case GTK_DIR_DOWN: corba_direction = Bonobo_Gtk_DirectionDown; break; case GTK_DIR_LEFT: corba_direction = Bonobo_Gtk_DirectionLeft; break; case GTK_DIR_RIGHT: corba_direction = Bonobo_Gtk_DirectionRight; break; default: g_assert_not_reached (); return FALSE; } CORBA_exception_init (&ev); result = Bonobo_Control_focus (priv->control, corba_direction, &ev); if (BONOBO_EX (&ev)) { g_message ("bonobo_control_frame_focus(): Exception while issuing focus " "request: `%s'", bonobo_exception_get_text (&ev)); result = FALSE; } CORBA_exception_free (&ev); return result; } void bonobo_control_frame_set_socket (BonoboControlFrame *frame, BonoboSocket *socket) { BonoboSocket *old_socket; g_return_if_fail (BONOBO_IS_CONTROL_FRAME (frame)); if ((BonoboSocket *) frame->priv->socket == socket) return; old_socket = (BonoboSocket *) frame->priv->socket; if (socket) frame->priv->socket = g_object_ref (socket); else frame->priv->socket = NULL; if (old_socket) { bonobo_socket_set_control_frame ( BONOBO_SOCKET (old_socket), NULL); g_object_unref (old_socket); } if (socket) bonobo_socket_set_control_frame (socket, frame); } BonoboSocket * bonobo_control_frame_get_socket (BonoboControlFrame *frame) { g_return_val_if_fail (BONOBO_IS_CONTROL_FRAME (frame), NULL); return (BonoboSocket *) frame->priv->socket; } BonoboUIComponent * bonobo_control_frame_get_popup_component (BonoboControlFrame *control_frame, CORBA_Environment *opt_ev) { CORBA_Environment *ev, tmp_ev; BonoboUIComponent *ui_component; Bonobo_UIContainer popup_container; g_return_val_if_fail (BONOBO_IS_CONTROL_FRAME (control_frame), NULL); if (control_frame->priv->control == CORBA_OBJECT_NIL) return NULL; ui_component = bonobo_ui_component_new_default (); if (!opt_ev) { CORBA_exception_init (&tmp_ev); ev = &tmp_ev; } else ev = opt_ev; popup_container = Bonobo_Control_getPopupContainer ( control_frame->priv->control, ev); if (BONOBO_EX (ev)) return NULL; bonobo_ui_component_set_container (ui_component, popup_container, ev); Bonobo_Unknown_unref (popup_container, ev); if (ev->_major != CORBA_NO_EXCEPTION) { bonobo_object_unref (BONOBO_OBJECT (ui_component)); ui_component = NULL; } if (!opt_ev) { CORBA_exception_free (ev); } return ui_component; } libbonoboui-2.24.5/bonobo/bonobo-control-internal.h0000644000076400007640000000402511173072741017241 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ /** * Bonobo control internal prototypes / helpers * * Author: * Michael Meeks (michael@ximian.com) * * Copyright 2001 Ximian, Inc. */ #ifndef _BONOBO_CONTROL_INTERNAL_H_ #define _BONOBO_CONTROL_INTERNAL_H_ #include #include #include #include #include G_BEGIN_DECLS void bonobo_control_add_listener (CORBA_Object object, GCallback fn, gpointer user_data, CORBA_Environment *ev); void bonobo_control_frame_get_remote_window (BonoboControlFrame *frame, CORBA_Environment *opt_ev); gboolean bonobo_control_frame_focus (BonoboControlFrame *frame, GtkDirectionType direction); void bonobo_control_frame_size_request (BonoboControlFrame *frame, GtkRequisition *requisition, CORBA_Environment *opt_ev); void bonobo_control_frame_set_inproc_widget (BonoboControlFrame *frame, BonoboPlug *bonobo_plug, GtkWidget *control_widget); BonoboSocket *bonobo_control_frame_get_socket (BonoboControlFrame *frame); BonoboControlFrame *bonobo_socket_get_control_frame (BonoboSocket *socket); void bonobo_control_frame_set_socket (BonoboControlFrame *frame, BonoboSocket *socket); void bonobo_socket_set_control_frame (BonoboSocket *socket, BonoboControlFrame *frame); BonoboControl *bonobo_plug_get_control (BonoboPlug *plug); void bonobo_control_set_plug (BonoboControl *control, BonoboPlug *plug); void bonobo_plug_set_control (BonoboPlug *plug, BonoboControl *control); gboolean bonobo_socket_disposed (BonoboSocket *socket); G_END_DECLS #endif /* _BONOBO_CONTROL_INTERNAL_H_ */ libbonoboui-2.24.5/bonobo/bonobo-window.h0000644000076400007640000000533711173072741015265 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ /* * bonobo-win.c: The Bonobo Window implementation. * * Author: * Michael Meeks (michael@helixcode.com) * * Copyright 2000 Helix Code, Inc. */ #ifndef _BONOBO_WINDOW_H_ #define _BONOBO_WINDOW_H_ #include #include #include #include #include G_BEGIN_DECLS #define BONOBO_TYPE_WINDOW (bonobo_window_get_type ()) #define BONOBO_WINDOW(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), BONOBO_TYPE_WINDOW, BonoboWindow)) #define BONOBO_WINDOW_CLASS(k) (G_TYPE_CHECK_CLASS_CAST((k), BONOBO_TYPE_WINDOW, BonoboWindowClass)) #define BONOBO_IS_WINDOW(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), BONOBO_TYPE_WINDOW)) #define BONOBO_IS_WINDOW_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), BONOBO_TYPE_WINDOW)) typedef struct _BonoboWindowPrivate BonoboWindowPrivate; typedef struct _BonoboWindow BonoboWindow; struct _BonoboWindow { GtkWindow parent; BonoboWindowPrivate *priv; }; typedef struct { GtkWindowClass parent_class; gpointer dummy[4]; } BonoboWindowClass; GType bonobo_window_get_type (void) G_GNUC_CONST; GtkWidget *bonobo_window_construct (BonoboWindow *win, BonoboUIContainer *ui_container, const char *win_name, const char *title); GtkWidget *bonobo_window_new (const char *win_name, const char *title); void bonobo_window_set_contents (BonoboWindow *win, GtkWidget *contents); GtkWidget *bonobo_window_get_contents (BonoboWindow *win); BonoboUIEngine *bonobo_window_get_ui_engine (BonoboWindow *win); BonoboUIContainer *bonobo_window_get_ui_container (BonoboWindow *win); void bonobo_window_set_name (BonoboWindow *win, const char *win_name); char *bonobo_window_get_name (BonoboWindow *win); GtkAccelGroup *bonobo_window_get_accel_group (BonoboWindow *win); void bonobo_window_add_popup (BonoboWindow *win, GtkMenu *popup, const char *path); /* * NB. popups are automaticaly removed on destroy, you probably don't * want to use this. */ void bonobo_window_remove_popup (BonoboWindow *win, const char *path); G_END_DECLS #endif /* _BONOBO_WINDOW_H_ */ libbonoboui-2.24.5/bonobo/bonobo-zoomable-frame.c0000644000076400007640000003056511173072741016652 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- * * Bonobo::ZoomableFrame - container side part of Bonobo::Zoomable. * * Copyright (C) 2000 Eazel, Inc. * 2000 SuSE GmbH. * 2001 Ximian Inc. * * Authors: Maciej Stachowiak * Martin Baulig */ #include #include #include #undef ZOOMABLE_DEBUG static GObjectClass *parent_class = NULL; struct _BonoboZoomableFramePrivate { Bonobo_Zoomable zoomable; }; enum { ZOOM_LEVEL_CHANGED, ZOOM_PARAMETERS_CHANGED, LAST_SIGNAL }; static guint signals [LAST_SIGNAL]; static inline BonoboZoomableFrame * frame_from_servant (PortableServer_Servant servant) { return BONOBO_ZOOMABLE_FRAME (bonobo_object_from_servant (servant)); } static void impl_Bonobo_ZoomableFrame_onLevelChanged (PortableServer_Servant servant, const CORBA_float zoom_level, CORBA_Environment *ev) { BonoboZoomableFrame *frame = frame_from_servant (servant); g_signal_emit (G_OBJECT (frame), signals [ZOOM_LEVEL_CHANGED], 0, zoom_level); } static void impl_Bonobo_ZoomableFrame_onParametersChanged (PortableServer_Servant servant, CORBA_Environment *ev) { BonoboZoomableFrame *frame = frame_from_servant (servant); g_signal_emit (G_OBJECT (frame), signals [ZOOM_PARAMETERS_CHANGED], 0); } static void bonobo_zoomable_frame_dispose (GObject *object) { BonoboZoomableFrame *frame = (BonoboZoomableFrame *) object; CORBA_Object_release (frame->priv->zoomable, NULL); parent_class->dispose (object); } static void bonobo_zoomable_frame_finalize (GObject *object) { BonoboZoomableFrame *frame = (BonoboZoomableFrame *) object; g_free (frame->priv); parent_class->finalize (object); } static void bonobo_zoomable_frame_class_init (BonoboZoomableFrameClass *klass) { GObjectClass *object_class; POA_Bonobo_ZoomableFrame__epv *epv = &klass->epv; object_class = (GObjectClass *) klass; parent_class = g_type_class_peek_parent (klass); signals [ZOOM_LEVEL_CHANGED] = g_signal_new ("zoom_level_changed", G_TYPE_FROM_CLASS (klass), G_SIGNAL_RUN_LAST, G_STRUCT_OFFSET (BonoboZoomableFrameClass, zoom_level_changed), NULL, NULL, g_cclosure_marshal_VOID__FLOAT, G_TYPE_NONE, 1, G_TYPE_FLOAT); signals [ZOOM_PARAMETERS_CHANGED] = g_signal_new ("zoom_parameters_changed", G_TYPE_FROM_CLASS (klass), G_SIGNAL_RUN_LAST, G_STRUCT_OFFSET (BonoboZoomableFrameClass, zoom_parameters_changed), NULL, NULL, g_cclosure_marshal_VOID__VOID, G_TYPE_NONE, 0); object_class->dispose = bonobo_zoomable_frame_dispose; object_class->finalize = bonobo_zoomable_frame_finalize; epv->onLevelChanged = impl_Bonobo_ZoomableFrame_onLevelChanged; epv->onParametersChanged = impl_Bonobo_ZoomableFrame_onParametersChanged; } static void bonobo_zoomable_frame_init (BonoboZoomableFrame *zoomable) { zoomable->priv = g_new0 (BonoboZoomableFramePrivate, 1); } BONOBO_TYPE_FUNC_FULL (BonoboZoomableFrame, Bonobo_ZoomableFrame, BONOBO_TYPE_OBJECT, bonobo_zoomable_frame) /** * bonobo_zoomable_frame_new: * * Create a new bonobo-zoomable implementing BonoboObject * interface. * * Return value: the new frame. **/ BonoboZoomableFrame * bonobo_zoomable_frame_new (void) { return g_object_new (bonobo_zoomable_frame_get_type (), NULL); } /** * bonobo_zoomable_frame_bind_to_zoomable: * @zoomable_frame: A BonoboZoomableFrame object. * @zoomable: The CORBA object for the BonoboZoomable embedded * in this BonoboZoomableFrame. * * Associates @zoomable with this @zoomable_frame. */ void bonobo_zoomable_frame_bind_to_zoomable (BonoboZoomableFrame *zoomable_frame, Bonobo_Zoomable zoomable, CORBA_Environment *opt_ev) { CORBA_Environment *ev, temp_ev; g_return_if_fail (zoomable != CORBA_OBJECT_NIL); g_return_if_fail (BONOBO_IS_ZOOMABLE_FRAME (zoomable_frame)); if (zoomable_frame->priv->zoomable != CORBA_OBJECT_NIL) CORBA_Object_release (zoomable_frame->priv->zoomable, NULL); zoomable_frame->priv->zoomable = CORBA_Object_duplicate (zoomable, NULL); if (!opt_ev) { CORBA_exception_init (&temp_ev); ev = &temp_ev; } else ev = opt_ev; Bonobo_Zoomable_setFrame (zoomable, BONOBO_OBJREF (zoomable_frame), ev); if (BONOBO_EX (ev)) bonobo_object_check_env (BONOBO_OBJECT (zoomable_frame), zoomable, ev); if (!opt_ev) CORBA_exception_free (&temp_ev); } /** * bonobo_zoomable_frame_get_zoomable: * @zoomable_frame: A BonoboZoomableFrame which is bound to a remote * BonoboZoomable. * * Returns: The Bonobo_Zoomable CORBA interface for the remote Zoomable * which is bound to @frame. See also * bonobo_zoomable_frame_bind_to_zoomable(). */ Bonobo_Zoomable bonobo_zoomable_frame_get_zoomable (BonoboZoomableFrame *zoomable_frame) { g_return_val_if_fail (BONOBO_IS_ZOOMABLE_FRAME (zoomable_frame), CORBA_OBJECT_NIL); return zoomable_frame->priv->zoomable; } void bonobo_zoomable_frame_zoom_in (BonoboZoomableFrame *zoomable_frame) { CORBA_Environment ev; g_return_if_fail (zoomable_frame != NULL); g_return_if_fail (BONOBO_IS_ZOOMABLE_FRAME (zoomable_frame)); g_return_if_fail (zoomable_frame->priv->zoomable != CORBA_OBJECT_NIL); CORBA_exception_init (&ev); Bonobo_Zoomable_zoomIn (zoomable_frame->priv->zoomable, &ev); bonobo_object_check_env (BONOBO_OBJECT (zoomable_frame), zoomable_frame->priv->zoomable, &ev); CORBA_exception_free (&ev); } void bonobo_zoomable_frame_zoom_out (BonoboZoomableFrame *zoomable_frame) { CORBA_Environment ev; g_return_if_fail (BONOBO_IS_ZOOMABLE_FRAME (zoomable_frame)); g_return_if_fail (zoomable_frame->priv->zoomable != CORBA_OBJECT_NIL); CORBA_exception_init (&ev); Bonobo_Zoomable_zoomOut (zoomable_frame->priv->zoomable, &ev); bonobo_object_check_env (BONOBO_OBJECT (zoomable_frame), zoomable_frame->priv->zoomable, &ev); CORBA_exception_free (&ev); } void bonobo_zoomable_frame_zoom_to_fit (BonoboZoomableFrame *zoomable_frame) { CORBA_Environment ev; g_return_if_fail (BONOBO_IS_ZOOMABLE_FRAME (zoomable_frame)); g_return_if_fail (zoomable_frame->priv->zoomable != CORBA_OBJECT_NIL); CORBA_exception_init (&ev); Bonobo_Zoomable_zoomFit (zoomable_frame->priv->zoomable, &ev); bonobo_object_check_env (BONOBO_OBJECT (zoomable_frame), zoomable_frame->priv->zoomable, &ev); CORBA_exception_free (&ev); } void bonobo_zoomable_frame_zoom_to_default (BonoboZoomableFrame *zoomable_frame) { CORBA_Environment ev; g_return_if_fail (BONOBO_IS_ZOOMABLE_FRAME (zoomable_frame)); g_return_if_fail (zoomable_frame->priv->zoomable != CORBA_OBJECT_NIL); CORBA_exception_init (&ev); Bonobo_Zoomable_zoomDefault (zoomable_frame->priv->zoomable, &ev); bonobo_object_check_env (BONOBO_OBJECT (zoomable_frame), zoomable_frame->priv->zoomable, &ev); CORBA_exception_free (&ev); } float bonobo_zoomable_frame_get_zoom_level (BonoboZoomableFrame *zoomable_frame) { CORBA_Environment ev; float retval; g_return_val_if_fail (BONOBO_IS_ZOOMABLE_FRAME (zoomable_frame), 0.0); g_return_val_if_fail (zoomable_frame->priv->zoomable != CORBA_OBJECT_NIL, 0.0); CORBA_exception_init (&ev); retval = Bonobo_Zoomable__get_level (zoomable_frame->priv->zoomable, &ev); if (BONOBO_EX (&ev)) retval = 0.0; bonobo_object_check_env (BONOBO_OBJECT (zoomable_frame), zoomable_frame->priv->zoomable, &ev); CORBA_exception_free (&ev); return retval; } float bonobo_zoomable_frame_get_min_zoom_level (BonoboZoomableFrame *zoomable_frame) { CORBA_Environment ev; float retval; g_return_val_if_fail (BONOBO_IS_ZOOMABLE_FRAME (zoomable_frame), 0.0); g_return_val_if_fail (zoomable_frame->priv->zoomable != CORBA_OBJECT_NIL, 0.0); CORBA_exception_init (&ev); retval = Bonobo_Zoomable__get_minLevel (zoomable_frame->priv->zoomable, &ev); if (BONOBO_EX (&ev)) retval = 0.0; bonobo_object_check_env (BONOBO_OBJECT (zoomable_frame), zoomable_frame->priv->zoomable, &ev); CORBA_exception_free (&ev); return retval; } float bonobo_zoomable_frame_get_max_zoom_level (BonoboZoomableFrame *zoomable_frame) { CORBA_Environment ev; float retval; g_return_val_if_fail (BONOBO_IS_ZOOMABLE_FRAME (zoomable_frame), 0.0); g_return_val_if_fail (zoomable_frame->priv->zoomable != CORBA_OBJECT_NIL, 0.0); CORBA_exception_init (&ev); retval = Bonobo_Zoomable__get_maxLevel (zoomable_frame->priv->zoomable, &ev); if (BONOBO_EX (&ev)) retval = 0.0; bonobo_object_check_env (BONOBO_OBJECT (zoomable_frame), zoomable_frame->priv->zoomable, &ev); CORBA_exception_free (&ev); return retval; } gboolean bonobo_zoomable_frame_has_min_zoom_level (BonoboZoomableFrame *zoomable_frame) { CORBA_Environment ev; gboolean retval; g_return_val_if_fail (BONOBO_IS_ZOOMABLE_FRAME (zoomable_frame), FALSE); g_return_val_if_fail (zoomable_frame->priv->zoomable != CORBA_OBJECT_NIL, FALSE); CORBA_exception_init (&ev); retval = Bonobo_Zoomable__get_hasMinLevel (zoomable_frame->priv->zoomable, &ev); if (BONOBO_EX (&ev)) retval = FALSE; bonobo_object_check_env (BONOBO_OBJECT (zoomable_frame), zoomable_frame->priv->zoomable, &ev); CORBA_exception_free (&ev); return retval; } gboolean bonobo_zoomable_frame_has_max_zoom_level (BonoboZoomableFrame *zoomable_frame) { CORBA_Environment ev; gboolean retval; g_return_val_if_fail (BONOBO_IS_ZOOMABLE_FRAME (zoomable_frame), FALSE); g_return_val_if_fail (zoomable_frame->priv->zoomable != CORBA_OBJECT_NIL, FALSE); CORBA_exception_init (&ev); retval = Bonobo_Zoomable__get_hasMaxLevel (zoomable_frame->priv->zoomable, &ev); if (BONOBO_EX (&ev)) retval = FALSE; bonobo_object_check_env (BONOBO_OBJECT (zoomable_frame), zoomable_frame->priv->zoomable, &ev); CORBA_exception_free (&ev); return retval; } gboolean bonobo_zoomable_frame_is_continuous (BonoboZoomableFrame *zoomable_frame) { CORBA_Environment ev; gboolean retval; g_return_val_if_fail (BONOBO_IS_ZOOMABLE_FRAME (zoomable_frame), FALSE); g_return_val_if_fail (zoomable_frame->priv->zoomable != CORBA_OBJECT_NIL, FALSE); CORBA_exception_init (&ev); retval = Bonobo_Zoomable__get_isContinuous (zoomable_frame->priv->zoomable, &ev); if (BONOBO_EX (&ev)) retval = FALSE; bonobo_object_check_env (BONOBO_OBJECT (zoomable_frame), zoomable_frame->priv->zoomable, &ev); CORBA_exception_free (&ev); return retval; } GList * bonobo_zoomable_frame_get_preferred_zoom_levels (BonoboZoomableFrame *zoomable_frame) { CORBA_Environment ev; Bonobo_ZoomLevelList *zoom_levels; GList *list = NULL; int i; g_return_val_if_fail (BONOBO_IS_ZOOMABLE_FRAME (zoomable_frame), NULL); CORBA_exception_init (&ev); zoom_levels = Bonobo_Zoomable__get_preferredLevels ( zoomable_frame->priv->zoomable, &ev); if (BONOBO_EX (&ev)) { bonobo_object_check_env (BONOBO_OBJECT (zoomable_frame), zoomable_frame->priv->zoomable, &ev); CORBA_exception_free (&ev); return NULL; } CORBA_exception_free (&ev); if (zoom_levels == CORBA_OBJECT_NIL) return NULL; for (i = 0; i < zoom_levels->_length; i++) { float *this; this = g_new0 (float, 1); *this = zoom_levels->_buffer [i]; list = g_list_prepend (list, this); } CORBA_free (zoom_levels); return g_list_reverse (list); } GList * bonobo_zoomable_frame_get_preferred_zoom_level_names (BonoboZoomableFrame *zoomable_frame) { CORBA_Environment ev; Bonobo_ZoomLevelNameList *zoom_level_names; GList *list = NULL; int i; g_return_val_if_fail (BONOBO_IS_ZOOMABLE_FRAME (zoomable_frame), NULL); CORBA_exception_init (&ev); zoom_level_names = Bonobo_Zoomable__get_preferredLevelNames ( zoomable_frame->priv->zoomable, &ev); if (BONOBO_EX (&ev)) { bonobo_object_check_env (BONOBO_OBJECT (zoomable_frame), zoomable_frame->priv->zoomable, &ev); CORBA_exception_free (&ev); return NULL; } CORBA_exception_free (&ev); if (zoom_level_names == CORBA_OBJECT_NIL) return NULL; for (i = 0; i < zoom_level_names->_length; i++) list = g_list_prepend (list, g_strdup (zoom_level_names->_buffer [i])); CORBA_free (zoom_level_names); return g_list_reverse (list); } void bonobo_zoomable_frame_set_zoom_level (BonoboZoomableFrame *zoomable_frame, float zoom_level) { CORBA_Environment ev; g_return_if_fail (BONOBO_IS_ZOOMABLE_FRAME (zoomable_frame)); CORBA_exception_init (&ev); Bonobo_Zoomable_setLevel (zoomable_frame->priv->zoomable, zoom_level, &ev); bonobo_object_check_env (BONOBO_OBJECT (zoomable_frame), zoomable_frame->priv->zoomable, &ev); CORBA_exception_free (&ev); } libbonoboui-2.24.5/bonobo/bonobo-a11y.c0000664000076400007640000002126011546334570014524 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ /** * Bonobo accessibility helpers * * Author: * Michael Meeks (michael@ximian.com) * * Copyright 2002 Sun Microsystems, Inc. */ #include "config.h" #include #include #include #include #include GType bonobo_a11y_get_derived_type_for (GType widget_type, const char *gail_parent_class, BonoboA11YClassInitFn class_init) { GType type; GType parent_atk_type; GTypeInfo tinfo = { 0 }; GTypeQuery query; char *type_name; parent_atk_type = g_type_from_name ( gail_parent_class ? gail_parent_class : "GailWidget"); g_return_val_if_fail (parent_atk_type != G_TYPE_INVALID, G_TYPE_INVALID); /* * Figure out the size of the class and instance * we are deriving from */ g_type_query (parent_atk_type, &query); tinfo.class_init = (GClassInitFunc) class_init; tinfo.class_size = query.class_size; tinfo.instance_size = query.instance_size; /* Make up a name */ type_name = g_strconcat (g_type_name (widget_type), "Accessible", NULL); /* Register the type */ type = g_type_register_static ( parent_atk_type, type_name, &tinfo, 0); g_free (type_name); return type; } AtkObject * bonobo_a11y_create_accessible_for (GtkWidget *widget, const char *gail_parent_class, BonoboA11YClassInitFn class_init, GType first_interface_type, ...) { va_list args; AtkObject *accessible; GType type, widget_type; static GHashTable *type_hash = NULL; va_start (args, first_interface_type); accessible = bonobo_a11y_get_atk_object (widget); if (accessible) goto out; if (!type_hash) type_hash = g_hash_table_new (NULL, NULL); widget_type = G_TYPE_FROM_INSTANCE (widget); type = (GType) g_hash_table_lookup (type_hash, (gpointer) widget_type); if (!type) { GType it; type = bonobo_a11y_get_derived_type_for ( widget_type, gail_parent_class, class_init); g_return_val_if_fail (type != G_TYPE_INVALID, NULL); for (it = first_interface_type; it; it = va_arg (args, GType)) { const GInterfaceInfo *if_info = va_arg (args, gpointer); g_type_add_interface_static (type, it, if_info); } g_hash_table_insert (type_hash, (gpointer) widget_type, (gpointer) type); } g_return_val_if_fail (type != G_TYPE_INVALID, NULL); accessible = g_object_new (type, NULL); bonobo_a11y_set_atk_object_ret (widget, accessible); out: va_end (args); return accessible; } static GQuark get_quark_accessible (void) { static GQuark quark_accessible_object = 0; if (!quark_accessible_object) quark_accessible_object = g_quark_from_static_string ( "gtk-accessible-object"); return quark_accessible_object; } AtkObject * bonobo_a11y_get_atk_object (gpointer widget) { return g_object_get_qdata (widget, get_quark_accessible ()); } AtkObject * bonobo_a11y_set_atk_object_ret (GtkWidget *widget, AtkObject *object) { atk_object_initialize (object, widget); g_object_set_qdata ( G_OBJECT (widget), get_quark_accessible (), object); return object; } typedef struct { AtkActionIface chain; GArray *actions; } BonoboActionInterface; typedef struct { AtkActionIface chain; GArray *actions; } BonoboActionIfData; typedef struct { char *name; char *description; char *keybinding; } BonoboAction; #define BONOBO_TYPE_ACTION bonobo_a11y_action_get_type () static GType bonobo_a11y_action_get_type (void) { static GType type = 0; if (!type) { GTypeInfo tinfo = { sizeof (BonoboActionInterface), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, }; type = g_type_register_static ( G_TYPE_INTERFACE, "BonoboAction", &tinfo, 0); } return type; } static gboolean bonobo_a11y_action_do (AtkAction *action, gint i) { BonoboActionInterface *aif = G_TYPE_INSTANCE_GET_INTERFACE ( action, BONOBO_TYPE_ACTION, BonoboActionInterface); if (aif->chain.do_action) return aif->chain.do_action (action, i); else g_warning ("bonobo a11y action %d unimplemented on %p", i, action); return FALSE; } static gint bonobo_a11y_action_get_n (AtkAction *action) { int i, count; BonoboActionInterface *aif = G_TYPE_INSTANCE_GET_INTERFACE ( action, BONOBO_TYPE_ACTION, BonoboActionInterface); if (aif->chain.get_n_actions) return aif->chain.get_n_actions (action); for (i = count = 0; i < aif->actions->len; i++) { if (g_array_index (aif->actions, BonoboAction, i).name) count++; } return count; } static G_CONST_RETURN gchar * bonobo_a11y_action_get_description (AtkAction *action, gint i) { BonoboActionInterface *aif = G_TYPE_INSTANCE_GET_INTERFACE ( action, BONOBO_TYPE_ACTION, BonoboActionInterface); if (aif->chain.get_description) return aif->chain.get_description (action, i); /* I refuse to handle set_description it seems uber ugly */ if (i >= 0 && i < aif->actions->len && g_array_index (aif->actions, BonoboAction, i).description) return g_array_index (aif->actions, BonoboAction, i).description; else return NULL; } static G_CONST_RETURN gchar * bonobo_a11y_action_get_name (AtkAction *action, gint i) { BonoboActionInterface *aif = G_TYPE_INSTANCE_GET_INTERFACE ( action, BONOBO_TYPE_ACTION, BonoboActionInterface); if (aif->chain.get_name) return aif->chain.get_name (action, i); if (i >= 0 && i < aif->actions->len && g_array_index (aif->actions, BonoboAction, i).name) return g_array_index (aif->actions, BonoboAction, i).name; else return NULL; } static G_CONST_RETURN gchar * bonobo_a11y_action_get_keybinding (AtkAction *action, gint i) { BonoboActionInterface *aif = G_TYPE_INSTANCE_GET_INTERFACE ( action, BONOBO_TYPE_ACTION, BonoboActionInterface); if (aif->chain.get_keybinding) return aif->chain.get_keybinding (action, i); if (i >= 0 && i < aif->actions->len && g_array_index (aif->actions, BonoboAction, i).keybinding) return g_array_index (aif->actions, BonoboAction, i).keybinding; else return NULL; } static gboolean bonobo_a11y_action_set_description (AtkAction *action, gint i, const gchar *desc) { BonoboActionInterface *aif = G_TYPE_INSTANCE_GET_INTERFACE ( action, BONOBO_TYPE_ACTION, BonoboActionInterface); if (aif->chain.set_description) return aif->chain.set_description (action, i, desc); /* I refuse to handle set_description it seems uber ugly */ return FALSE; } static void bonobo_a11y_action_if_init (gpointer g_iface, gpointer iface_data) { BonoboActionIfData *aifd = iface_data; BonoboActionInterface *aif = g_iface; aif->chain = aifd->chain; aif->actions = aifd->actions; } static void bonobo_a11y_atk_action_if_init (gpointer g_iface, gpointer iface_data) { AtkActionIface *aif = g_iface; aif->do_action = bonobo_a11y_action_do; aif->get_n_actions = bonobo_a11y_action_get_n; aif->get_description = bonobo_a11y_action_get_description; aif->get_name = bonobo_a11y_action_get_name; aif->get_keybinding = bonobo_a11y_action_get_keybinding; aif->set_description = bonobo_a11y_action_set_description; } static void bonobo_a11y_action_if_finalize (gpointer g_iface, gpointer iface_data) { /* FIXME: should we free aifd->actions etc. here ? */ } void bonobo_a11y_add_actions_interface (GType a11y_object_type, AtkActionIface *chain, /* triplets of: */ int first_id, /* char * action name */ /* char * initial action description */ /* char * keybinding descr. */ ...) { va_list args; int id; GInterfaceInfo iinfo; BonoboActionIfData *aifd = g_new0 (BonoboActionIfData, 1); va_start (args, first_id); aifd->chain = *chain; aifd->actions = g_array_new (FALSE, TRUE, sizeof (BonoboAction)); for (id = first_id; id >= 0; id = va_arg (args, int)) { if (id >= aifd->actions->len) g_array_set_size (aifd->actions, id + 2); g_array_index (aifd->actions, BonoboAction, id).name = g_strdup (va_arg (args, char *)); g_array_index (aifd->actions, BonoboAction, id).description = g_strdup (va_arg (args, char *)); g_array_index (aifd->actions, BonoboAction, id).keybinding = g_strdup (va_arg (args, char *)); } iinfo.interface_init = bonobo_a11y_action_if_init; iinfo.interface_finalize = bonobo_a11y_action_if_finalize; iinfo.interface_data = aifd; g_type_add_interface_static ( a11y_object_type, bonobo_a11y_action_get_type (), &iinfo); iinfo.interface_init = bonobo_a11y_atk_action_if_init; iinfo.interface_finalize = NULL; iinfo.interface_data = NULL; g_type_add_interface_static ( a11y_object_type, ATK_TYPE_ACTION, &iinfo); va_end (args); } libbonoboui-2.24.5/bonobo/bonobo-selector.c0000644000076400007640000002522211173072741015564 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ /* * bonobo-selector.c: Bonobo Component Selector * * Authors: * Richard Hestilow (hestgray@ionet.net) * Miguel de Icaza (miguel@kernel.org) * Martin Baulig (martin@home-of-linux.org) * Anders Carlsson (andersca@gnu.org) * Havoc Pennington (hp@redhat.com) * Dietmar Maurer (dietmar@ximian.com) * Michael Meeks (michael@ximian.com) * * Copyright 1999, 2000 Richard Hestilow, Ximian, Inc, * Martin Baulig, Anders Carlsson, * Havoc Pennigton, Dietmar Maurer */ #include #include #include #include G_DEFINE_TYPE (BonoboSelector, bonobo_selector, GTK_TYPE_DIALOG) #define DEFAULT_INTERFACE "IDL:Bonobo/Control:1.0" #define BONOBO_PAD_SMALL 4 struct _BonoboSelectorPrivate { BonoboSelectorWidget *selector; }; enum { OK, CANCEL, LAST_SIGNAL }; enum { PROP_0, PROP_INTERFACES }; static guint bonobo_selector_signals [LAST_SIGNAL] = { 0, 0 }; static void bonobo_selector_finalize (GObject *object) { g_return_if_fail (BONOBO_IS_SELECTOR (object)); g_free (BONOBO_SELECTOR (object)->priv); G_OBJECT_CLASS (bonobo_selector_parent_class)->finalize (object); } /** * bonobo_selector_get_selected_id: * @sel: A BonoboSelector widget. * * Returns: A newly-allocated string containing the ID of the * currently-selected CORBA server (i.e., the corba server whose name * is highlighted in the list). The user of this function is * responsible for freeing this. It will give an oaf iid back. */ gchar * bonobo_selector_get_selected_id (BonoboSelector *sel) { g_return_val_if_fail (BONOBO_IS_SELECTOR (sel), NULL); return bonobo_selector_widget_get_id (sel->priv->selector); } /** * bonobo_selector_get_selected_name: * @sel: A BonoboSelector widget. * * Returns: A newly-allocated string containing the name of the * currently-selected CORBA server (i.e., the corba server whose name * is highlighted in the list). The user of this function is * responsible for freeing this. */ gchar * bonobo_selector_get_selected_name (BonoboSelector *sel) { g_return_val_if_fail (BONOBO_IS_SELECTOR (sel), NULL); return bonobo_selector_widget_get_name (sel->priv->selector); } /** * bonobo_selector_get_selected_description: * @sel: A BonoboSelector widget. * * Returns: A newly-allocated string containing the description of the * currently-selected CORBA server (i.e., the corba server whose name * is highlighted in the list). The user of this function is * responsible for freeing this. */ gchar * bonobo_selector_get_selected_description (BonoboSelector *sel) { g_return_val_if_fail (BONOBO_IS_SELECTOR (sel), NULL); return bonobo_selector_widget_get_description (sel->priv->selector); } static void ok_callback (GtkWidget *widget, gpointer data) { char *text = bonobo_selector_get_selected_id ( BONOBO_SELECTOR (widget)); g_object_set_data (G_OBJECT (widget), "UserData", text); } /** * bonobo_selector_select_id: * @title: The title to be used for the dialog. * @interfaces_required: A list of required interfaces. See * bonobo_selector_new(). * * Calls bonobo_selector_new() to create a new * BonoboSelector widget with the specified paramters, @title and * @interfaces_required. Then runs the dialog modally and allows * the user to make a selection. * * Returns: The Oaf IID of the selected server, or NULL if no server is * selected. The ID string has been allocated with g_strdup. */ gchar * bonobo_selector_select_id (const gchar *title, const gchar **interfaces_required) { GtkWidget *sel = bonobo_selector_new (title, interfaces_required); gchar *name = NULL; int n; g_return_val_if_fail (sel != NULL, NULL); g_signal_connect (sel, "ok", G_CALLBACK (ok_callback), NULL); g_object_set_data (G_OBJECT (sel), "UserData", NULL); gtk_widget_show (sel); n = gtk_dialog_run (GTK_DIALOG (sel)); switch (n) { case GTK_RESPONSE_CANCEL: name = NULL; break; case GTK_RESPONSE_APPLY: case GTK_RESPONSE_OK: name = g_object_get_data (G_OBJECT (sel), "UserData"); break; default: break; } gtk_widget_destroy (sel); return name; } static void response_callback (GtkWidget *widget, gint response_id, gpointer data) { switch (response_id) { case GTK_RESPONSE_OK: g_signal_emit (data, bonobo_selector_signals [OK], 0); break; case GTK_RESPONSE_CANCEL: g_signal_emit (data, bonobo_selector_signals [CANCEL], 0); default: break; } } static void final_select_cb (GtkWidget *widget, BonoboSelector *sel) { gtk_dialog_response (GTK_DIALOG (sel), GTK_RESPONSE_OK); } /** * bonobo_selector_construct: * @sel: the selector to construct * @title: the title for the window * @selector: the component view widget to put inside it. * * Don't use this ever - use construct-time properties instead. * TODO: Remove from header when we are allowed to change the API. * Constructs the innards of a bonobo selector window. * * Return value: the constructed widget. **/ GtkWidget * bonobo_selector_construct (BonoboSelector *sel, const gchar *title, BonoboSelectorWidget *selector) { g_return_val_if_fail (BONOBO_IS_SELECTOR (sel), NULL); g_return_val_if_fail (BONOBO_IS_SELECTOR_WIDGET (selector), NULL); sel->priv->selector = selector; g_signal_connect (selector, "final_select", G_CALLBACK (final_select_cb), sel); gtk_window_set_title (GTK_WINDOW (sel), title ? title : ""); gtk_box_pack_start (GTK_BOX (GTK_DIALOG (sel)->vbox), GTK_WIDGET (selector), TRUE, TRUE, BONOBO_PAD_SMALL); gtk_dialog_add_button (GTK_DIALOG (sel), GTK_STOCK_OK, GTK_RESPONSE_OK); gtk_dialog_add_button (GTK_DIALOG (sel), GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL); gtk_dialog_set_default_response (GTK_DIALOG (sel), GTK_RESPONSE_OK); g_signal_connect (sel, "response", G_CALLBACK (response_callback), sel); gtk_window_set_default_size (GTK_WINDOW (sel), 400, 300); gtk_widget_show_all (GTK_DIALOG (sel)->vbox); return GTK_WIDGET (sel); } static void bonobo_selector_internal_construct (BonoboSelector *sel) { BonoboSelectorWidget* selector = sel->priv->selector; g_signal_connect (selector, "final_select", G_CALLBACK (final_select_cb), sel); gtk_box_pack_start (GTK_BOX (GTK_DIALOG (sel)->vbox), GTK_WIDGET (selector), TRUE, TRUE, BONOBO_PAD_SMALL); gtk_dialog_add_button (GTK_DIALOG (sel), GTK_STOCK_OK, GTK_RESPONSE_OK); gtk_dialog_add_button (GTK_DIALOG (sel), GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL); gtk_dialog_set_default_response (GTK_DIALOG (sel), GTK_RESPONSE_OK); g_signal_connect (sel, "response", G_CALLBACK (response_callback), sel); gtk_window_set_default_size (GTK_WINDOW (sel), 400, 300); gtk_widget_show_all (GTK_DIALOG (sel)->vbox); } static void bonobo_selector_init (BonoboSelector *sel) { BonoboSelectorWidget *selectorwidget = NULL; sel->priv = g_new0 (BonoboSelectorPrivate, 1); selectorwidget = BONOBO_SELECTOR_WIDGET (bonobo_selector_widget_new ()); sel->priv->selector = selectorwidget; bonobo_selector_internal_construct (sel); } static void bonobo_selector_set_property (GObject *object, guint prop_id, const GValue *value, GParamSpec *pspec) { BonoboSelector *selector = BONOBO_SELECTOR (object); switch (prop_id) { case PROP_INTERFACES: { const gchar *query [2] = { DEFAULT_INTERFACE, NULL }; /* the default interfaces_required. */ BonoboSelectorWidget *selectorwidget = NULL; /* Get the supplied array or interfaces, replacing it with a default if none have been provided: */ const gchar **interfaces_required = NULL; if (!interfaces_required) interfaces_required = query; /* Set the interfaces_required in the child SelectorWidget: */ selectorwidget = selector->priv->selector;; if (selectorwidget) bonobo_selector_widget_set_interfaces (selectorwidget, interfaces_required); break; } default: G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec); break; } } static void bonobo_selector_get_property (GObject *object, guint prop_id, GValue *value, GParamSpec *pspec) { switch (prop_id) { /* PROP_INTERFACES is read-only, because there is a virtual BonoboSelectorWidget::set_interfaces(), but no get_interfaces(). */ default: G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec); break; } } static void bonobo_selector_class_init (BonoboSelectorClass *klass) { GObjectClass *object_class; object_class = (GObjectClass *) klass; object_class->finalize = bonobo_selector_finalize; object_class->set_property = bonobo_selector_set_property; object_class->get_property = bonobo_selector_get_property; bonobo_selector_signals [OK] = g_signal_new ("ok", G_TYPE_FROM_CLASS (object_class), G_SIGNAL_RUN_LAST, G_STRUCT_OFFSET (BonoboSelectorClass, ok), NULL, NULL, g_cclosure_marshal_VOID__VOID, G_TYPE_NONE, 0); bonobo_selector_signals [CANCEL] = g_signal_new ("cancel", G_TYPE_FROM_CLASS (object_class), G_SIGNAL_RUN_LAST, G_STRUCT_OFFSET (BonoboSelectorClass, cancel), NULL, NULL, g_cclosure_marshal_VOID__VOID, G_TYPE_NONE, 0); /* properties: */ g_object_class_install_property (object_class, PROP_INTERFACES, g_param_spec_value_array ("interfaces_required", _("Interfaces required"), _("A NULL-terminated array of interfaces which a server must support in order to be listed in the selector. Defaults to \"IDL:Bonobo/Embeddable:1.0\" if no interfaces are listed"), g_param_spec_string ("interface-required-entry", _("Interface required entry"), _("One of the interfaces that's required"), NULL, G_PARAM_READWRITE), G_PARAM_WRITABLE | G_PARAM_CONSTRUCT)); } /** * bonobo_selector_new: * @title: A string which should go in the title of the * BonoboSelector window. * @interfaces_required: A NULL-terminated array of interfaces which a * server must support in order to be listed in the selector. Defaults * to "IDL:Bonobo/Embeddable:1.0" if no interfaces are listed. * * Creates a new BonoboSelector widget. The title of the dialog * is set to @title, and the list of selectable servers is populated * with those servers which support the interfaces specified in * @interfaces_required. * * Returns: A pointer to the newly-created BonoboSelector widget. */ GtkWidget * bonobo_selector_new (const gchar *title, const gchar **interfaces_required) { BonoboSelector *sel = g_object_new (bonobo_selector_get_type (), "title", title, "interfaces_required", interfaces_required, NULL); return GTK_WIDGET (sel); } libbonoboui-2.24.5/bonobo/bonobo-selector-widget.h0000644000076400007640000000364411173072741017056 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ /** * bonobo-selector-widget.h: Bonobo Component Selector * * Author: * Michael Meeks (michael@helixcode.com) * * Copyright 2000 Helix Code, Inc. */ #ifndef BONOBO_SELECTOR_WIDGET_H #define BONOBO_SELECTOR_WIDGET_H #include G_BEGIN_DECLS #define BONOBO_TYPE_SELECTOR_WIDGET (bonobo_selector_widget_get_type ()) #define BONOBO_SELECTOR_WIDGET(obj) G_TYPE_CHECK_INSTANCE_CAST(obj, bonobo_selector_widget_get_type (), BonoboSelectorWidget) #define BONOBO_SELECTOR_WIDGET_CLASS(klass) G_TYPE_CHECK_CLASS_CAST (klass, bonobo_selector_widget_get_type (), BonoboSelectorWidgetClass) #define BONOBO_IS_SELECTOR_WIDGET(obj) G_TYPE_CHECK_INSTANCE_TYPE (obj, bonobo_selector_widget_get_type ()) typedef struct _BonoboSelectorWidgetPrivate BonoboSelectorWidgetPrivate; typedef struct { GtkVBox parent; BonoboSelectorWidgetPrivate *priv; } BonoboSelectorWidget; typedef struct { GtkVBoxClass parent_class; /* Virtual methods */ gchar *(* get_id) (BonoboSelectorWidget *sel); gchar *(* get_name) (BonoboSelectorWidget *sel); gchar *(* get_description) (BonoboSelectorWidget *sel); void (* set_interfaces) (BonoboSelectorWidget *sel, const gchar **interfaces); /* User select */ void (* final_select) (BonoboSelectorWidget *sel); gpointer dummy[2]; } BonoboSelectorWidgetClass; GType bonobo_selector_widget_get_type (void) G_GNUC_CONST; GtkWidget *bonobo_selector_widget_new (void); void bonobo_selector_widget_set_interfaces (BonoboSelectorWidget *sel, const gchar **interfaces_required); gchar *bonobo_selector_widget_get_id (BonoboSelectorWidget *sel); gchar *bonobo_selector_widget_get_name (BonoboSelectorWidget *sel); gchar *bonobo_selector_widget_get_description (BonoboSelectorWidget *sel); G_END_DECLS #endif /* BONOBO_SELECTOR_H */ libbonoboui-2.24.5/bonobo/bonobo-ui-node.c0000644000076400007640000005360111173072741015306 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ /** * bonobo-ui-node.c: Code to manipulate BonoboUINode objects * lightweight, cutdown XML node representations * * Authors: * Michael Meeks * Havoc Pennington * * Copyright 2000 Red Hat, Inc. * 2001 Ximian, Inc. */ #include #include #include #include #include #include #include #if LIBXML_VERSION < 20212 # error Something extremely stupid has happened #endif #define attr(n,i) g_array_index((n)->attrs, BonoboUIAttr, (i)) /** * bonobo_ui_node_new: * @name: The name for the node * * Creates a new node with name @name * * Return value: a new node pointer **/ BonoboUINode* bonobo_ui_node_new (const char *name) { BonoboUINode *node = g_new0 (BonoboUINode, 1); node->name_id = g_quark_from_string (name); node->ref_count = 1; /* FIXME: we could do this idly */ node->attrs = g_array_new (FALSE, FALSE, sizeof (BonoboUIAttr)); return node; } /** * bonobo_ui_node_new_child: * @parent: the parent * @name: the name of the new child * * Create a new node as a child of @parent with name @name * * Return value: pointer to the new child **/ BonoboUINode* bonobo_ui_node_new_child (BonoboUINode *parent, const char *name) { BonoboUINode *node; node = bonobo_ui_node_new (name); bonobo_ui_node_add_child (parent, node); return node; } /** * bonobo_ui_node_copy: * @node: the node * @recursive: whether to dup children too. * * Copy an XML node, if @recursive do a deep copy, otherwise just dup the node itself. * * Return value: a copy of the noce **/ BonoboUINode* bonobo_ui_node_copy (BonoboUINode *node, gboolean recursive) { BonoboUINode *copy; copy = g_new0 (BonoboUINode, 1); copy->ref_count = 1; copy->name_id = node->name_id; copy->content = g_strdup (node->content); bonobo_ui_node_copy_attrs (node, copy); if (recursive) { BonoboUINode *l, *last = NULL; for (l = node->children; l; l = l->next) { BonoboUINode *child; child = bonobo_ui_node_copy (l, TRUE); if (!last) copy->children = child; else { child->prev = last; last->next = child; } last = child; } } return copy; } /** * bonobo_ui_node_add_child: * @parent: the parent * @child: the new child * * Add a @child node to the @parent node ( after the other children ) **/ void bonobo_ui_node_add_child (BonoboUINode *parent, BonoboUINode *child) { BonoboUINode *l, *last = NULL; for (l = parent->children; l; l = l->next) last = l; child->prev = last; child->next = NULL; if (!last) parent->children = child; else last->next = child; child->parent = parent; } void bonobo_ui_node_add_after (BonoboUINode *before, BonoboUINode *new_after) { new_after->next = before->next; new_after->prev = before; if (new_after->next) new_after->next->prev = new_after; before->next = new_after; new_after->parent = before->parent; } /** * bonobo_ui_node_insert_before: * @after: the placeholder for insertion * @new_before: the node to insert * * Insert a @sibling before @prev_sibling in a node list **/ void bonobo_ui_node_insert_before (BonoboUINode *after, BonoboUINode *new_before) { bonobo_ui_node_unlink (new_before); new_before->prev = after->prev; if (after->prev) { after->prev->next = new_before; } else { if (after->parent) after->parent->children = new_before; } new_before->next = after; after->prev = new_before; new_before->parent = after->parent; } /** * bonobo_ui_node_unlink: * @node: the node * * Unlink @node from its tree, ie. disassociate it with its parent **/ void bonobo_ui_node_unlink (BonoboUINode *node) { if (!node) return; if (!node->prev) { if (node->parent) node->parent->children = node->next; } else node->prev->next = node->next; if (node->next) node->next->prev = node->prev; node->next = NULL; node->prev = NULL; node->parent = NULL; } /** * bonobo_ui_node_replace: * @old_node: node to be replaced * @new_node: node to replace with * * Replace @old_node with @new_node in the tree. @old_node is * left unlinked and floating with its children. **/ void bonobo_ui_node_replace (BonoboUINode *old_node, BonoboUINode *new_node) { bonobo_ui_node_unlink (new_node); new_node->next = old_node->next; new_node->prev = old_node->prev; new_node->parent = old_node->parent; old_node->next = NULL; old_node->prev = NULL; old_node->parent = NULL; if (new_node->next) new_node->next->prev = new_node; if (new_node->prev) new_node->prev->next = new_node; else { if (new_node->parent) new_node->parent->children = new_node; } } void bonobo_ui_node_move_children (BonoboUINode *from, BonoboUINode *to) { BonoboUINode *l; g_return_if_fail (to != NULL); g_return_if_fail (from != NULL); g_return_if_fail (bonobo_ui_node_children (to) == NULL); to->children = from->children; from->children = NULL; for (l = to->children; l; l = l->next) l->parent = to; } static void node_free_attrs (BonoboUINode *node) { int i; for (i = 0; i < node->attrs->len; i++) if (attr (node, i).value) xmlFree (attr (node, i).value); g_array_free (node->attrs, TRUE); } static void node_free_internal (BonoboUINode *node) { BonoboUINode *l, *next; g_return_if_fail (node->ref_count >= 0); if (node->parent || node->next || node->prev) bonobo_ui_node_unlink (node); node_free_attrs (node); g_free (node->content); for (l = node->children; l; l = next) { next = l->next; bonobo_ui_node_unlink (l); bonobo_ui_node_unref (l); } g_free (node); } void bonobo_ui_node_unref (BonoboUINode *node) { if (--node->ref_count <= 0) node_free_internal (node); } BonoboUINode * bonobo_ui_node_ref (BonoboUINode *node) { node->ref_count++; return node; } /** * bonobo_ui_node_free: * @node: a node. * * Frees the memory associated with the @node and unlink it from the tree **/ void bonobo_ui_node_free (BonoboUINode *node) { if (node->ref_count > 1) g_warning ("Freeing referenced node %p", node); bonobo_ui_node_unref (node); } /** * bonobo_ui_node_set_data: * @node: the node * @data: user data * * Associates some user data with the node pointer **/ void bonobo_ui_node_set_data (BonoboUINode *node, gpointer data) { node->user_data = data; } /** * bonobo_ui_node_get_data: * @node: the node * * Gets user data associated with @node * * Return value: the user data, see bonobo_ui_node_set_data **/ gpointer bonobo_ui_node_get_data (BonoboUINode *node) { return node->user_data; } static BonoboUIAttr * get_attr (BonoboUINode *node, GQuark id, BonoboUIAttr **opt_space) { int i; BonoboUIAttr *a; if (opt_space) *opt_space = NULL; for (i = 0; i < node->attrs->len; i++) { a = &attr (node, i); if (a->id == id) return a; if (a->id == 0 && opt_space) *opt_space = a; } return NULL; } static inline gboolean do_set_attr (BonoboUINode *node, GQuark id, const char *value) { gboolean different = TRUE; BonoboUIAttr *a, *space; g_return_val_if_fail (node != NULL, FALSE); a = get_attr (node, id, &space); if (a) { different = !value || strcmp (a->value, value); if (different) { xmlFree (a->value); a->value = NULL; if (!value) /* Unset the attribute */ a->id = 0; else { a->value = xmlStrdup (value); } } } else { if (!value) return FALSE; if (space) { space->id = id; space->value = xmlStrdup (value); } else { BonoboUIAttr na; na.id = id; na.value = xmlStrdup (value); g_array_append_val (node->attrs, na); } } return different; } void bonobo_ui_node_set_attr_by_id (BonoboUINode *node, GQuark id, const char *value) { do_set_attr (node, id, value); } gboolean bonobo_ui_node_try_set_attr (BonoboUINode *node, GQuark prop, const char *value) { return do_set_attr (node, prop, value); } /** * bonobo_ui_node_set_attr: * @node: The node * @name: the name of the attr * @value: the value for the attr * * Set the attribute of @name on @node to @value overriding any * previous values of that attr. **/ void bonobo_ui_node_set_attr (BonoboUINode *node, const char *name, const char *value) { bonobo_ui_node_set_attr_by_id ( node, g_quark_from_string (name), value); } const char * bonobo_ui_node_get_attr_by_id (BonoboUINode *node, GQuark id) { BonoboUIAttr *a; if (!node) return NULL; a = get_attr (node, id, NULL); return a ? a->value : NULL; } /** * bonobo_ui_node_get_attr: * @node: the node * @name: the name of the attr to get * * Fetch the value of an attr of name @name from @node * see also: bonobo_ui_node_free_string * * Return value: the attr text. **/ char* bonobo_ui_node_get_attr (BonoboUINode *node, const char *name) { return xmlStrdup ( bonobo_ui_node_get_attr_by_id ( node, g_quark_from_string (name))); } /** * bonobo_ui_node_has_attr: * @node: the node * @name: the name of the attr to detect * * Determines whether the @node has an attribute of name @name * * Return value: TRUE if the attr exists **/ gboolean bonobo_ui_node_has_attr (BonoboUINode *node, const char *name) { return bonobo_ui_node_get_attr_by_id ( node, g_quark_from_string (name)) != NULL; } /** * bonobo_ui_node_remove_attr: * @node: the node * @name: name of the attribute * * remove any attribute with name @name from @node **/ void bonobo_ui_node_remove_attr (BonoboUINode *node, const char *name) { bonobo_ui_node_set_attr (node, name, NULL); } /** * bonobo_ui_node_set_content: * @node: the node * @content: the new content * * Set the textual content of @node to @content **/ void bonobo_ui_node_set_content (BonoboUINode *node, const char *content) { g_free (node->content); node->content = g_strdup (content); } const char * bonobo_ui_node_peek_content (BonoboUINode *node) { return node->content; } /** * bonobo_ui_node_get_content: * @node: the node * * see also: bonobo_ui_node_free_string * * Return value: the content of @node **/ char * bonobo_ui_node_get_content (BonoboUINode *node) { return xmlStrdup (bonobo_ui_node_peek_content (node)); } /** * bonobo_ui_node_next: * @node: the node * * Return value: the node after @node in the list **/ BonoboUINode* bonobo_ui_node_next (BonoboUINode *node) { return node->next; } /** * bonobo_ui_node_prev: * @node: the node * * Return value: the node after @node in the list **/ BonoboUINode* bonobo_ui_node_prev (BonoboUINode *node) { return node->prev; } /** * bonobo_ui_node_children: * @node: the node * * Return value: the first child of @node **/ BonoboUINode* bonobo_ui_node_children (BonoboUINode *node) { return node->children; } /** * bonobo_ui_node_parent: * @node: the node * * Return value: the parent node of @node **/ BonoboUINode* bonobo_ui_node_parent (BonoboUINode *node) { return node->parent; } /** * bonobo_ui_node_get_name: * @node: the node * * Return value: the name of @node **/ const char* bonobo_ui_node_get_name (BonoboUINode *node) { return g_quark_to_string (node->name_id); } gboolean bonobo_ui_node_has_name_by_id (BonoboUINode *node, GQuark id) { return (node->name_id == id); } /** * bonobo_ui_node_has_name: * @node: the node * @name: a name the node might have * * Return value: TRUE if @node has name == @name **/ gboolean bonobo_ui_node_has_name (BonoboUINode *node, const char *name) { return bonobo_ui_node_has_name_by_id ( node, g_quark_from_string (name)); } /** * bonobo_ui_node_free_string: * @str: the string to free. * * Frees a string returned by any of the get routines. **/ void bonobo_ui_node_free_string (char *str) { if (str) xmlFree (str); } /** * bonobo_ui_node_transparent: * @node: the node * * Determines whether @node is transparent. A node is * transparent if it has no content and either no attributes * or a single 'name' attribute. * * Return value: TRUE if transparent **/ gboolean bonobo_ui_node_transparent (BonoboUINode *node) { gboolean ret = FALSE; static GQuark name_id = 0; static GQuark separator_id; g_return_val_if_fail (node != NULL, TRUE); if (!name_id) { name_id = g_quark_from_static_string ("name"); /* FIXME: ugly to have specific widgets in here */ separator_id = g_quark_from_static_string ("separator"); } if (node->content) ret = FALSE; else if (node->attrs->len == 0) if (node->name_id == separator_id) ret = FALSE; else ret = TRUE; else if (node->attrs->len == 1 && attr (node, 0).id == name_id) ret = TRUE; return ret; } /** * bonobo_ui_node_copy_attrs: * @src: the attr source node * @dest: where to dump the attrs. * * This function copies all the attributes from @src to @dest * effectively cloning the @src node as @dest **/ void bonobo_ui_node_copy_attrs (const BonoboUINode *src, BonoboUINode *dest) { int i; if (dest->attrs) node_free_attrs (dest); dest->attrs = g_array_new (FALSE, FALSE, sizeof (BonoboUIAttr)); g_array_set_size (dest->attrs, src->attrs->len); for (i = 0; i < src->attrs->len; i++) { BonoboUIAttr *as = &attr (src, i); BonoboUIAttr *ad = &attr (dest, i); ad->id = as->id; ad->value = xmlStrdup (as->value); } } /** * bonobo_ui_node_strip: * @node: a pointer to the node's pointer * * A compat function for legacy reasons. **/ void bonobo_ui_node_strip (BonoboUINode **node) { } /* SAX Parser */ typedef struct { BonoboUINode *root; BonoboUINode *cur; GString *content; } ParseState; static ParseState * parse_state_new (void) { ParseState *ps = g_new0 (ParseState, 1); ps->root = bonobo_ui_node_new (""); ps->cur = ps->root; ps->content = g_string_sized_new (0); return ps; } static BonoboUINode * parse_state_free (ParseState *ps, gboolean free_root) { BonoboUINode *ret = NULL; if (ps) { if (!free_root) { ret = ps->root->children; bonobo_ui_node_unlink (ret); } bonobo_ui_node_free (ps->root); g_string_free (ps->content, TRUE); g_free (ps); } return ret; } static void uiStartDocument (ParseState *ps) { ps->cur = ps->root; } static void uiStartElement (ParseState *ps, const xmlChar *name, const xmlChar **attrs) { int i; BonoboUINode *node; /* FIXME: we want to keep a stack of list end nodes here for speed ... */ node = bonobo_ui_node_new_child (ps->cur, name); ps->cur = node; for (i = 0; attrs && attrs [i]; i++) { BonoboUIAttr a; a.id = g_quark_from_string (attrs [i++]); a.value = xmlStrdup (attrs [i]); g_array_append_val (node->attrs, a); } } static void uiEndElement (ParseState *ps, const xmlChar *name) { if (ps->content->len > 0) { int i; char *content = ps->content->str; for (i = 0; content [i] != '\0'; i++) { if (content [i] != ' ' && content [i] != '\t' && content [i] != '\n') break; } if (content [i] != '\0') { g_free (ps->cur->content); ps->cur->content = content; g_string_free (ps->content, FALSE); } else g_string_free (ps->content, TRUE); ps->content = g_string_sized_new (0); } ps->cur = ps->cur->parent; } static void uiCharacters (ParseState *ps, const xmlChar *chars, int len) { g_string_append_len (ps->content, chars, len); } static void uiWarning (ParseState *ps, const char *msg, ...) { va_list args; va_start (args, msg); g_logv ("XML", G_LOG_LEVEL_WARNING, msg, args); va_end (args); } static void uiError (ParseState *ps, const char *msg, ...) { va_list args; va_start (args, msg); g_logv ("XML", G_LOG_LEVEL_CRITICAL, msg, args); va_end (args); } static void uiFatalError (ParseState *ps, const char *msg, ...) { va_list args; va_start (args, msg); g_logv ("XML", G_LOG_LEVEL_ERROR, msg, args); va_end (args); } static xmlSAXHandler bonoboSAXParser = { NULL, /* internalSubset */ NULL, /* isStandalone */ NULL, /* hasInternalSubset */ NULL, /* hasExternalSubset */ NULL, /* resolveEntity */ NULL, /* getEntity */ NULL, /* entityDecl */ NULL, /* notationDecl */ NULL, /* attributeDecl */ NULL, /* elementDecl */ NULL, /* unparsedEntityDecl */ NULL, /* setDocumentLocator */ (startDocumentSAXFunc) uiStartDocument, /* startDocument */ (endDocumentSAXFunc) NULL, /* endDocument */ (startElementSAXFunc) uiStartElement, /* startElement */ (endElementSAXFunc) uiEndElement, /* endElement */ NULL, /* reference */ (charactersSAXFunc) uiCharacters, /* characters */ NULL, /* ignorableWhitespace */ NULL, /* processingInstruction */ NULL, /* comment */ (warningSAXFunc) uiWarning, /* warning */ (errorSAXFunc) uiError, /* error */ (fatalErrorSAXFunc) uiFatalError, /* fatalError */ }; static BonoboUINode * do_parse (xmlParserCtxt *ctxt) { int ret = 0; ParseState *ps; xmlSAXHandlerPtr oldsax; if (!ctxt) return NULL; ps = parse_state_new (); oldsax = ctxt->sax; ctxt->sax = &bonoboSAXParser; ctxt->userData = ps; /* Magic to make entities work as expected */ ctxt->replaceEntities = TRUE; xmlParseDocument (ctxt); if (ctxt->wellFormed) ret = 0; else { if (ctxt->errNo != 0) ret = ctxt->errNo; else ret = -1; } ctxt->sax = oldsax; xmlFreeParserCtxt (ctxt); if (ret < 0) { g_warning ("XML not well formed!"); parse_state_free (ps, TRUE); return NULL; } return parse_state_free (ps, FALSE); } /** * bonobo_ui_node_from_string: * @xml: the xml string * * Parses a string into an XML tree * * Return value: the xml tree. **/ BonoboUINode* bonobo_ui_node_from_string (const char *xml) { guint len; g_return_val_if_fail (xml != NULL, NULL); len = strlen (xml); if (len < 3) return NULL; return do_parse (xmlCreateMemoryParserCtxt ((char *) xml, len)); } /** * bonobo_ui_node_from_file: * @fname: the filename containing the xml * * Loads and parses the filename into an XML tree * * Return value: the xml tree. **/ BonoboUINode* bonobo_ui_node_from_file (const char *fname) { g_return_val_if_fail (fname != NULL, NULL); return do_parse (xmlCreateFileParserCtxt (fname)); } /* * Cut and paste from gmarkup.c: what a hack. */ static void append_escaped_text (GString *str, const gchar *text) { const gchar *p; p = text; while (*p != '\0') { const gchar *next; next = g_utf8_next_char (p); switch (*p) { case '&': g_string_append (str, "&"); break; case '<': g_string_append (str, "<"); break; case '>': g_string_append (str, ">"); break; case '\'': g_string_append (str, "'"); break; case '"': g_string_append (str, """); break; default: g_string_append_len (str, p, next - p); break; } p = next; } } static void internal_to_string (GString *str, BonoboUINode *node, gboolean recurse) { int i; gboolean contains; const char *tag_name; contains = node->content || (node->children && recurse); tag_name = g_quark_to_string (node->name_id); g_string_append_c (str, '<'); g_string_append (str, tag_name); for (i = 0; i < node->attrs->len; i++) { BonoboUIAttr *a = &attr (node, i); if (!a->id) continue; g_string_append_c (str, ' '); g_string_append (str, g_quark_to_string (a->id)); g_string_append_c (str, '='); g_string_append_c (str, '\"'); append_escaped_text (str, a->value); g_string_append_c (str, '\"'); } if (contains) { g_string_append_c (str, '>'); if (recurse && node->children) { BonoboUINode *l; g_string_append (str, "\n"); for (l = node->children; l; l = l->next) internal_to_string (str, l, recurse); } if (node->content) append_escaped_text (str, node->content); g_string_append (str, "\n"); } else g_string_append (str, "/>\n"); } #if 0 static void validate_tree (BonoboUINode *node) { BonoboUINode *l, *last = NULL; if (!node) return; for (l = node->children; l; l = l->next) { if (l->parent != node) g_warning ("Parent chaining error on '%p' parent %p should be %p", l, l->parent, node); if (l->prev != last) g_warning ("Previous chaining error on '%p' prev %p should be %p", l, l->prev, last); validate_tree (l); last = l; } } #endif /** * bonobo_ui_node_to_string: * @node: the node tree * @recurse: whether to dump its children as well * * Convert the node to its XML string representation. * * Return value: the string representation or NULL on error * Use g_free to free. **/ char * bonobo_ui_node_to_string (BonoboUINode *node, gboolean recurse) { GString *str = g_string_sized_new (64); g_return_val_if_fail (node != NULL, NULL); internal_to_string (str, node, recurse); /* fprintf (stderr, "nodes to string: '%s'", str->str); */ /* validate_tree (node); */ return g_string_free (str, FALSE); } const char * bonobo_ui_node_peek_attr (BonoboUINode *node, const char *name) { GQuark id = g_quark_from_string (name); return bonobo_ui_node_get_attr_by_id (node, id); } /** * bonobo_ui_node_get_path_child: * @node: parent node * @name: 'name' of child node. * * Finds the child with the right name, based on * the normal path traversal naming rules. * * Return value: the child node or NULL. **/ BonoboUINode * bonobo_ui_node_get_path_child (BonoboUINode *node, const char *name) { BonoboUINode *l; GQuark name_as_quark; static GQuark name_string_id = 0; name_as_quark = g_quark_try_string (name); if (!name_string_id) name_string_id = g_quark_from_static_string ("name"); for (l = node->children; l; l = l->next) { BonoboUIAttr *a; if ((a = get_attr (l, name_string_id, NULL)) && a->value && !strcmp (a->value, name)) return l; if (l->name_id && l->name_id == name_as_quark) return l; } return NULL; } libbonoboui-2.24.5/bonobo/bonobo-ui-preferences.c0000644000076400007640000001254311173072741016662 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ /** * bonobo-ui-preferences.c: private wrappers for global UI preferences. * * Authors: * Michael Meeks (michael@ximian.com) * Martin Baulig (martin@home-of-linux.org) * * Copyright 2001 Ximian, Inc. */ #undef GTK_DISABLE_DEPRECATED #include #include #include #include #include #include #include #define GLOBAL_INTERFACE_KEY "/desktop/gnome/interface" static GConfEnumStringPair toolbar_styles[] = { { GTK_TOOLBAR_TEXT, "text" }, { GTK_TOOLBAR_ICONS, "icons" }, { GTK_TOOLBAR_BOTH, "both" }, { GTK_TOOLBAR_BOTH_HORIZ, "both_horiz" }, { GTK_TOOLBAR_BOTH_HORIZ, "both-horiz" }, { -1, NULL } }; static GConfClient *client; static GSList *engine_list; static guint desktop_notify_id; static guint update_engines_idle_id; static void keys_changed_fn (GConfClient *client, guint cnxn_id, GConfEntry *entry, gpointer user_data); static gboolean update_engines_idle_callback (gpointer data) { BonoboUINode *root_node; BonoboUIEngine *engine; GSList *node; if (update_engines_idle_id == 0) return FALSE; for (node = engine_list; node; node = node->next) { engine = node->data; root_node = bonobo_ui_engine_get_path (engine, "/"); bonobo_ui_engine_dirty_tree (engine, root_node); } update_engines_idle_id = 0; return FALSE; } void bonobo_ui_preferences_add_engine (BonoboUIEngine *engine) { if (!client) client = gconf_client_get_default (); if (engine_list == NULL) { /* We need to intialize the notifiers */ gconf_client_add_dir (client, GLOBAL_INTERFACE_KEY, GCONF_CLIENT_PRELOAD_RECURSIVE, NULL); desktop_notify_id = gconf_client_notify_add (client, GLOBAL_INTERFACE_KEY, keys_changed_fn, NULL, NULL, NULL); } engine_list = g_slist_prepend (engine_list, engine); } void bonobo_ui_preferences_remove_engine (BonoboUIEngine *engine) { if (!g_slist_find (engine_list, engine)) return; engine_list = g_slist_remove (engine_list, engine); if (engine_list == NULL) { /* Remove notification */ gconf_client_remove_dir (client, GLOBAL_INTERFACE_KEY, NULL); gconf_client_notify_remove (client, desktop_notify_id); desktop_notify_id = 0; } } /* * Yes Gconf's C API sucks, yes bonobo-config is a far better * way to access configuration, yes I hate this code; Michael. */ static gboolean get (const char *key, gboolean def) { gboolean ret; GError *err = NULL; if (!client) client = gconf_client_get_default (); ret = gconf_client_get_bool (client, key, &err); if (err) { static int warned = 0; if (!warned++) g_warning ("Failed to get '%s': '%s'", key, err->message); g_error_free (err); ret = def; } return ret; } int bonobo_ui_preferences_shutdown (void) { int ret = 0; if (client) { g_object_unref (client); client = NULL; } ret = gconf_debug_shutdown (); if (ret) g_warning ("GConf's dirty shutdown"); return ret; } #define DEFINE_BONOBO_UI_PREFERENCE(c_name, prop_name, def) \ static gboolean cached_## c_name; \ \ gboolean \ bonobo_ui_preferences_get_ ## c_name (void) \ { \ static gboolean value; \ \ if (!cached_##c_name) { \ value = get ("/desktop/gnome/interface/" prop_name, def); \ cached_## c_name = TRUE; \ } \ return value; \ } BonoboUIToolbarStyle bonobo_ui_preferences_get_toolbar_style (void) { BonoboUIToolbarStyle style; char *str; if (!client) client = gconf_client_get_default (); style = GTK_TOOLBAR_BOTH; str = gconf_client_get_string (client, "/desktop/gnome/interface/toolbar_style", NULL); if (str != NULL) { gint intstyle; gconf_string_to_enum (toolbar_styles, str, &intstyle); g_free (str); style = intstyle; } return style; } DEFINE_BONOBO_UI_PREFERENCE (toolbar_detachable, "toolbar_detachable", TRUE) DEFINE_BONOBO_UI_PREFERENCE (menus_have_icons, "menus_have_icons", TRUE) DEFINE_BONOBO_UI_PREFERENCE (menus_have_tearoff, "menus_have_tearoff", FALSE) DEFINE_BONOBO_UI_PREFERENCE (menubar_detachable, "menubar_detachable", TRUE) static void keys_changed_fn (GConfClient *client, guint cnxn_id, GConfEntry *entry, gpointer user_data) { const char *key_name; key_name = gconf_entry_get_key (entry); g_return_if_fail (key_name != NULL); /* FIXME: update the values instead */ if (!strcmp (key_name, GLOBAL_INTERFACE_KEY "/toolbar_detachable")) cached_toolbar_detachable = FALSE; else if (!strcmp (key_name, GLOBAL_INTERFACE_KEY "/menus_have_icons")) cached_menus_have_icons = FALSE; else if (!strcmp (key_name, GLOBAL_INTERFACE_KEY "/menus_have_tearoff")) cached_menus_have_tearoff = FALSE; else if (!strcmp (key_name, GLOBAL_INTERFACE_KEY "/menubar_detachable")) cached_menubar_detachable = FALSE; if (update_engines_idle_id != 0) return; update_engines_idle_id = g_idle_add (update_engines_idle_callback, NULL); } libbonoboui-2.24.5/bonobo/bonobo-a11y.h0000664000076400007640000000305411546334570014532 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ /** * Bonobo accessibility helpers * * Author: * Michael Meeks (michael@ximian.com) * * Copyright 2002 Sun Microsystems, Inc. */ #ifndef _BONOBO_A11Y_H_ #define _BONOBO_A11Y_H_ #include #include #include G_BEGIN_DECLS typedef void (*BonoboA11YClassInitFn) (AtkObjectClass *klass); AtkObject *bonobo_a11y_get_atk_object (gpointer widget); AtkObject *bonobo_a11y_set_atk_object_ret (GtkWidget *widget, AtkObject *object); GType bonobo_a11y_get_derived_type_for (GType widget_type, const char *gail_parent_class, BonoboA11YClassInitFn class_init); AtkObject *bonobo_a11y_create_accessible_for (GtkWidget *widget, const char *gail_parent_class, BonoboA11YClassInitFn class_init, /* pairs of: */ GType first_interface_type, /* const GInterfaceInfo *interface */ ...); /* NULL terminated */ void bonobo_a11y_add_actions_interface (GType a11y_object_type, AtkActionIface *chain, /* quads of: */ int first_id, /* char * action name */ /* char * initial action description */ /* char * keybinding descr. */ ...); /* -1 terminated */ G_END_DECLS #endif /* _BONOBO_A11Y_H_ */ libbonoboui-2.24.5/bonobo/bonobo-ui-preferences.h0000644000076400007640000000245211173072741016665 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ /** * bonobo-ui-preferences.h: private wrappers for global UI preferences. * * Authors: * Michael Meeks (michael@helixcode.com) * Martin Baulig (martin@home-of-linux.org) * * Copyright 2001 Ximian, Inc. */ #ifndef _BONOBO_UI_PREFERENCES_H_ #define _BONOBO_UI_PREFERENCES_H_ #include #include #include G_BEGIN_DECLS #define BONOBO_UI_PAD 8 #define BONOBO_UI_PAD_SMALL 4 #define BONOBO_UI_PAD_BIG 12 /* Add a UI engine to the configuration list */ void bonobo_ui_preferences_add_engine (BonoboUIEngine *engine); void bonobo_ui_preferences_remove_engine (BonoboUIEngine *engine); /* Default toolbar style */ BonoboUIToolbarStyle bonobo_ui_preferences_get_toolbar_style (void); /* Whether menus have icons */ gboolean bonobo_ui_preferences_get_menus_have_icons (void); /* Whether menus can be torn off */ gboolean bonobo_ui_preferences_get_menus_have_tearoff (void); /* Whether menubars can be detached */ gboolean bonobo_ui_preferences_get_menubar_detachable (void); /* Whether a per-app toolbar style has been specified */ gboolean bonobo_ui_preferences_get_toolbar_detachable (void); G_END_DECLS #endif /* _BONOBO_UI_PREFERENCES_H_ */ libbonoboui-2.24.5/depcomp0000755000076400007640000004426711546334701012436 00000000000000#! /bin/sh # depcomp - compile a program generating dependencies as side-effects scriptversion=2009-04-28.21; # UTC # Copyright (C) 1999, 2000, 2003, 2004, 2005, 2006, 2007, 2009 Free # Software Foundation, Inc. # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2, or (at your option) # any later version. # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # You should have received a copy of the GNU General Public License # along with this program. If not, see . # As a special exception to the GNU General Public License, if you # distribute this file as part of a program that contains a # configuration script generated by Autoconf, you may include it under # the same distribution terms that you use for the rest of that program. # Originally written by Alexandre Oliva . case $1 in '') echo "$0: No command. Try \`$0 --help' for more information." 1>&2 exit 1; ;; -h | --h*) cat <<\EOF Usage: depcomp [--help] [--version] PROGRAM [ARGS] Run PROGRAMS ARGS to compile a file, generating dependencies as side-effects. Environment variables: depmode Dependency tracking mode. source Source file read by `PROGRAMS ARGS'. object Object file output by `PROGRAMS ARGS'. DEPDIR directory where to store dependencies. depfile Dependency file to output. tmpdepfile Temporary file to use when outputing dependencies. libtool Whether libtool is used (yes/no). Report bugs to . EOF exit $? ;; -v | --v*) echo "depcomp $scriptversion" exit $? ;; esac if test -z "$depmode" || test -z "$source" || test -z "$object"; then echo "depcomp: Variables source, object and depmode must be set" 1>&2 exit 1 fi # Dependencies for sub/bar.o or sub/bar.obj go into sub/.deps/bar.Po. depfile=${depfile-`echo "$object" | sed 's|[^\\/]*$|'${DEPDIR-.deps}'/&|;s|\.\([^.]*\)$|.P\1|;s|Pobj$|Po|'`} tmpdepfile=${tmpdepfile-`echo "$depfile" | sed 's/\.\([^.]*\)$/.T\1/'`} rm -f "$tmpdepfile" # Some modes work just like other modes, but use different flags. We # parameterize here, but still list the modes in the big case below, # to make depend.m4 easier to write. Note that we *cannot* use a case # here, because this file can only contain one case statement. if test "$depmode" = hp; then # HP compiler uses -M and no extra arg. gccflag=-M depmode=gcc fi if test "$depmode" = dashXmstdout; then # This is just like dashmstdout with a different argument. dashmflag=-xM depmode=dashmstdout fi cygpath_u="cygpath -u -f -" if test "$depmode" = msvcmsys; then # This is just like msvisualcpp but w/o cygpath translation. # Just convert the backslash-escaped backslashes to single forward # slashes to satisfy depend.m4 cygpath_u="sed s,\\\\\\\\,/,g" depmode=msvisualcpp fi case "$depmode" in gcc3) ## gcc 3 implements dependency tracking that does exactly what ## we want. Yay! Note: for some reason libtool 1.4 doesn't like ## it if -MD -MP comes after the -MF stuff. Hmm. ## Unfortunately, FreeBSD c89 acceptance of flags depends upon ## the command line argument order; so add the flags where they ## appear in depend2.am. Note that the slowdown incurred here ## affects only configure: in makefiles, %FASTDEP% shortcuts this. for arg do case $arg in -c) set fnord "$@" -MT "$object" -MD -MP -MF "$tmpdepfile" "$arg" ;; *) set fnord "$@" "$arg" ;; esac shift # fnord shift # $arg done "$@" stat=$? if test $stat -eq 0; then : else rm -f "$tmpdepfile" exit $stat fi mv "$tmpdepfile" "$depfile" ;; gcc) ## There are various ways to get dependency output from gcc. Here's ## why we pick this rather obscure method: ## - Don't want to use -MD because we'd like the dependencies to end ## up in a subdir. Having to rename by hand is ugly. ## (We might end up doing this anyway to support other compilers.) ## - The DEPENDENCIES_OUTPUT environment variable makes gcc act like ## -MM, not -M (despite what the docs say). ## - Using -M directly means running the compiler twice (even worse ## than renaming). if test -z "$gccflag"; then gccflag=-MD, fi "$@" -Wp,"$gccflag$tmpdepfile" stat=$? if test $stat -eq 0; then : else rm -f "$tmpdepfile" exit $stat fi rm -f "$depfile" echo "$object : \\" > "$depfile" alpha=ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz ## The second -e expression handles DOS-style file names with drive letters. sed -e 's/^[^:]*: / /' \ -e 's/^['$alpha']:\/[^:]*: / /' < "$tmpdepfile" >> "$depfile" ## This next piece of magic avoids the `deleted header file' problem. ## The problem is that when a header file which appears in a .P file ## is deleted, the dependency causes make to die (because there is ## typically no way to rebuild the header). We avoid this by adding ## dummy dependencies for each header file. Too bad gcc doesn't do ## this for us directly. tr ' ' ' ' < "$tmpdepfile" | ## Some versions of gcc put a space before the `:'. On the theory ## that the space means something, we add a space to the output as ## well. ## Some versions of the HPUX 10.20 sed can't process this invocation ## correctly. Breaking it into two sed invocations is a workaround. sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile" rm -f "$tmpdepfile" ;; hp) # This case exists only to let depend.m4 do its work. It works by # looking at the text of this script. This case will never be run, # since it is checked for above. exit 1 ;; sgi) if test "$libtool" = yes; then "$@" "-Wp,-MDupdate,$tmpdepfile" else "$@" -MDupdate "$tmpdepfile" fi stat=$? if test $stat -eq 0; then : else rm -f "$tmpdepfile" exit $stat fi rm -f "$depfile" if test -f "$tmpdepfile"; then # yes, the sourcefile depend on other files echo "$object : \\" > "$depfile" # Clip off the initial element (the dependent). Don't try to be # clever and replace this with sed code, as IRIX sed won't handle # lines with more than a fixed number of characters (4096 in # IRIX 6.2 sed, 8192 in IRIX 6.5). We also remove comment lines; # the IRIX cc adds comments like `#:fec' to the end of the # dependency line. tr ' ' ' ' < "$tmpdepfile" \ | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' | \ tr ' ' ' ' >> "$depfile" echo >> "$depfile" # The second pass generates a dummy entry for each header file. tr ' ' ' ' < "$tmpdepfile" \ | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' -e 's/$/:/' \ >> "$depfile" else # The sourcefile does not contain any dependencies, so just # store a dummy comment line, to avoid errors with the Makefile # "include basename.Plo" scheme. echo "#dummy" > "$depfile" fi rm -f "$tmpdepfile" ;; aix) # The C for AIX Compiler uses -M and outputs the dependencies # in a .u file. In older versions, this file always lives in the # current directory. Also, the AIX compiler puts `$object:' at the # start of each line; $object doesn't have directory information. # Version 6 uses the directory in both cases. dir=`echo "$object" | sed -e 's|/[^/]*$|/|'` test "x$dir" = "x$object" && dir= base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'` if test "$libtool" = yes; then tmpdepfile1=$dir$base.u tmpdepfile2=$base.u tmpdepfile3=$dir.libs/$base.u "$@" -Wc,-M else tmpdepfile1=$dir$base.u tmpdepfile2=$dir$base.u tmpdepfile3=$dir$base.u "$@" -M fi stat=$? if test $stat -eq 0; then : else rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" exit $stat fi for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" do test -f "$tmpdepfile" && break done if test -f "$tmpdepfile"; then # Each line is of the form `foo.o: dependent.h'. # Do two passes, one to just change these to # `$object: dependent.h' and one to simply `dependent.h:'. sed -e "s,^.*\.[a-z]*:,$object:," < "$tmpdepfile" > "$depfile" # That's a tab and a space in the []. sed -e 's,^.*\.[a-z]*:[ ]*,,' -e 's,$,:,' < "$tmpdepfile" >> "$depfile" else # The sourcefile does not contain any dependencies, so just # store a dummy comment line, to avoid errors with the Makefile # "include basename.Plo" scheme. echo "#dummy" > "$depfile" fi rm -f "$tmpdepfile" ;; icc) # Intel's C compiler understands `-MD -MF file'. However on # icc -MD -MF foo.d -c -o sub/foo.o sub/foo.c # ICC 7.0 will fill foo.d with something like # foo.o: sub/foo.c # foo.o: sub/foo.h # which is wrong. We want: # sub/foo.o: sub/foo.c # sub/foo.o: sub/foo.h # sub/foo.c: # sub/foo.h: # ICC 7.1 will output # foo.o: sub/foo.c sub/foo.h # and will wrap long lines using \ : # foo.o: sub/foo.c ... \ # sub/foo.h ... \ # ... "$@" -MD -MF "$tmpdepfile" stat=$? if test $stat -eq 0; then : else rm -f "$tmpdepfile" exit $stat fi rm -f "$depfile" # Each line is of the form `foo.o: dependent.h', # or `foo.o: dep1.h dep2.h \', or ` dep3.h dep4.h \'. # Do two passes, one to just change these to # `$object: dependent.h' and one to simply `dependent.h:'. sed "s,^[^:]*:,$object :," < "$tmpdepfile" > "$depfile" # Some versions of the HPUX 10.20 sed can't process this invocation # correctly. Breaking it into two sed invocations is a workaround. sed 's,^[^:]*: \(.*\)$,\1,;s/^\\$//;/^$/d;/:$/d' < "$tmpdepfile" | sed -e 's/$/ :/' >> "$depfile" rm -f "$tmpdepfile" ;; hp2) # The "hp" stanza above does not work with aCC (C++) and HP's ia64 # compilers, which have integrated preprocessors. The correct option # to use with these is +Maked; it writes dependencies to a file named # 'foo.d', which lands next to the object file, wherever that # happens to be. # Much of this is similar to the tru64 case; see comments there. dir=`echo "$object" | sed -e 's|/[^/]*$|/|'` test "x$dir" = "x$object" && dir= base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'` if test "$libtool" = yes; then tmpdepfile1=$dir$base.d tmpdepfile2=$dir.libs/$base.d "$@" -Wc,+Maked else tmpdepfile1=$dir$base.d tmpdepfile2=$dir$base.d "$@" +Maked fi stat=$? if test $stat -eq 0; then : else rm -f "$tmpdepfile1" "$tmpdepfile2" exit $stat fi for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" do test -f "$tmpdepfile" && break done if test -f "$tmpdepfile"; then sed -e "s,^.*\.[a-z]*:,$object:," "$tmpdepfile" > "$depfile" # Add `dependent.h:' lines. sed -ne '2,${ s/^ *// s/ \\*$// s/$/:/ p }' "$tmpdepfile" >> "$depfile" else echo "#dummy" > "$depfile" fi rm -f "$tmpdepfile" "$tmpdepfile2" ;; tru64) # The Tru64 compiler uses -MD to generate dependencies as a side # effect. `cc -MD -o foo.o ...' puts the dependencies into `foo.o.d'. # At least on Alpha/Redhat 6.1, Compaq CCC V6.2-504 seems to put # dependencies in `foo.d' instead, so we check for that too. # Subdirectories are respected. dir=`echo "$object" | sed -e 's|/[^/]*$|/|'` test "x$dir" = "x$object" && dir= base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'` if test "$libtool" = yes; then # With Tru64 cc, shared objects can also be used to make a # static library. This mechanism is used in libtool 1.4 series to # handle both shared and static libraries in a single compilation. # With libtool 1.4, dependencies were output in $dir.libs/$base.lo.d. # # With libtool 1.5 this exception was removed, and libtool now # generates 2 separate objects for the 2 libraries. These two # compilations output dependencies in $dir.libs/$base.o.d and # in $dir$base.o.d. We have to check for both files, because # one of the two compilations can be disabled. We should prefer # $dir$base.o.d over $dir.libs/$base.o.d because the latter is # automatically cleaned when .libs/ is deleted, while ignoring # the former would cause a distcleancheck panic. tmpdepfile1=$dir.libs/$base.lo.d # libtool 1.4 tmpdepfile2=$dir$base.o.d # libtool 1.5 tmpdepfile3=$dir.libs/$base.o.d # libtool 1.5 tmpdepfile4=$dir.libs/$base.d # Compaq CCC V6.2-504 "$@" -Wc,-MD else tmpdepfile1=$dir$base.o.d tmpdepfile2=$dir$base.d tmpdepfile3=$dir$base.d tmpdepfile4=$dir$base.d "$@" -MD fi stat=$? if test $stat -eq 0; then : else rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" "$tmpdepfile4" exit $stat fi for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" "$tmpdepfile4" do test -f "$tmpdepfile" && break done if test -f "$tmpdepfile"; then sed -e "s,^.*\.[a-z]*:,$object:," < "$tmpdepfile" > "$depfile" # That's a tab and a space in the []. sed -e 's,^.*\.[a-z]*:[ ]*,,' -e 's,$,:,' < "$tmpdepfile" >> "$depfile" else echo "#dummy" > "$depfile" fi rm -f "$tmpdepfile" ;; #nosideeffect) # This comment above is used by automake to tell side-effect # dependency tracking mechanisms from slower ones. dashmstdout) # Important note: in order to support this mode, a compiler *must* # always write the preprocessed file to stdout, regardless of -o. "$@" || exit $? # Remove the call to Libtool. if test "$libtool" = yes; then while test "X$1" != 'X--mode=compile'; do shift done shift fi # Remove `-o $object'. IFS=" " for arg do case $arg in -o) shift ;; $object) shift ;; *) set fnord "$@" "$arg" shift # fnord shift # $arg ;; esac done test -z "$dashmflag" && dashmflag=-M # Require at least two characters before searching for `:' # in the target name. This is to cope with DOS-style filenames: # a dependency such as `c:/foo/bar' could be seen as target `c' otherwise. "$@" $dashmflag | sed 's:^[ ]*[^: ][^:][^:]*\:[ ]*:'"$object"'\: :' > "$tmpdepfile" rm -f "$depfile" cat < "$tmpdepfile" > "$depfile" tr ' ' ' ' < "$tmpdepfile" | \ ## Some versions of the HPUX 10.20 sed can't process this invocation ## correctly. Breaking it into two sed invocations is a workaround. sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile" rm -f "$tmpdepfile" ;; dashXmstdout) # This case only exists to satisfy depend.m4. It is never actually # run, as this mode is specially recognized in the preamble. exit 1 ;; makedepend) "$@" || exit $? # Remove any Libtool call if test "$libtool" = yes; then while test "X$1" != 'X--mode=compile'; do shift done shift fi # X makedepend shift cleared=no eat=no for arg do case $cleared in no) set ""; shift cleared=yes ;; esac if test $eat = yes; then eat=no continue fi case "$arg" in -D*|-I*) set fnord "$@" "$arg"; shift ;; # Strip any option that makedepend may not understand. Remove # the object too, otherwise makedepend will parse it as a source file. -arch) eat=yes ;; -*|$object) ;; *) set fnord "$@" "$arg"; shift ;; esac done obj_suffix=`echo "$object" | sed 's/^.*\././'` touch "$tmpdepfile" ${MAKEDEPEND-makedepend} -o"$obj_suffix" -f"$tmpdepfile" "$@" rm -f "$depfile" cat < "$tmpdepfile" > "$depfile" sed '1,2d' "$tmpdepfile" | tr ' ' ' ' | \ ## Some versions of the HPUX 10.20 sed can't process this invocation ## correctly. Breaking it into two sed invocations is a workaround. sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile" rm -f "$tmpdepfile" "$tmpdepfile".bak ;; cpp) # Important note: in order to support this mode, a compiler *must* # always write the preprocessed file to stdout. "$@" || exit $? # Remove the call to Libtool. if test "$libtool" = yes; then while test "X$1" != 'X--mode=compile'; do shift done shift fi # Remove `-o $object'. IFS=" " for arg do case $arg in -o) shift ;; $object) shift ;; *) set fnord "$@" "$arg" shift # fnord shift # $arg ;; esac done "$@" -E | sed -n -e '/^# [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' \ -e '/^#line [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' | sed '$ s: \\$::' > "$tmpdepfile" rm -f "$depfile" echo "$object : \\" > "$depfile" cat < "$tmpdepfile" >> "$depfile" sed < "$tmpdepfile" '/^$/d;s/^ //;s/ \\$//;s/$/ :/' >> "$depfile" rm -f "$tmpdepfile" ;; msvisualcpp) # Important note: in order to support this mode, a compiler *must* # always write the preprocessed file to stdout. "$@" || exit $? # Remove the call to Libtool. if test "$libtool" = yes; then while test "X$1" != 'X--mode=compile'; do shift done shift fi IFS=" " for arg do case "$arg" in -o) shift ;; $object) shift ;; "-Gm"|"/Gm"|"-Gi"|"/Gi"|"-ZI"|"/ZI") set fnord "$@" shift shift ;; *) set fnord "$@" "$arg" shift shift ;; esac done "$@" -E 2>/dev/null | sed -n '/^#line [0-9][0-9]* "\([^"]*\)"/ s::\1:p' | $cygpath_u | sort -u > "$tmpdepfile" rm -f "$depfile" echo "$object : \\" > "$depfile" sed < "$tmpdepfile" -n -e 's% %\\ %g' -e '/^\(.*\)$/ s:: \1 \\:p' >> "$depfile" echo " " >> "$depfile" sed < "$tmpdepfile" -n -e 's% %\\ %g' -e '/^\(.*\)$/ s::\1\::p' >> "$depfile" rm -f "$tmpdepfile" ;; msvcmsys) # This case exists only to let depend.m4 do its work. It works by # looking at the text of this script. This case will never be run, # since it is checked for above. exit 1 ;; none) exec "$@" ;; *) echo "Unknown depmode $depmode" 1>&2 exit 1 ;; esac exit 0 # Local Variables: # mode: shell-script # sh-indentation: 2 # eval: (add-hook 'write-file-hooks 'time-stamp) # time-stamp-start: "scriptversion=" # time-stamp-format: "%:y-%02m-%02d.%02H" # time-stamp-time-zone: "UTC" # time-stamp-end: "; # UTC" # End: libbonoboui-2.24.5/mkinstalldirs0000755000076400007640000000672211546334702013662 00000000000000#! /bin/sh # mkinstalldirs --- make directory hierarchy scriptversion=2009-04-28.21; # UTC # Original author: Noah Friedman # Created: 1993-05-16 # Public domain. # # This file is maintained in Automake, please report # bugs to or send patches to # . nl=' ' IFS=" "" $nl" errstatus=0 dirmode= usage="\ Usage: mkinstalldirs [-h] [--help] [--version] [-m MODE] DIR ... Create each directory DIR (with mode MODE, if specified), including all leading file name components. Report bugs to ." # process command line arguments while test $# -gt 0 ; do case $1 in -h | --help | --h*) # -h for help echo "$usage" exit $? ;; -m) # -m PERM arg shift test $# -eq 0 && { echo "$usage" 1>&2; exit 1; } dirmode=$1 shift ;; --version) echo "$0 $scriptversion" exit $? ;; --) # stop option processing shift break ;; -*) # unknown option echo "$usage" 1>&2 exit 1 ;; *) # first non-opt arg break ;; esac done for file do if test -d "$file"; then shift else break fi done case $# in 0) exit 0 ;; esac # Solaris 8's mkdir -p isn't thread-safe. If you mkdir -p a/b and # mkdir -p a/c at the same time, both will detect that a is missing, # one will create a, then the other will try to create a and die with # a "File exists" error. This is a problem when calling mkinstalldirs # from a parallel make. We use --version in the probe to restrict # ourselves to GNU mkdir, which is thread-safe. case $dirmode in '') if mkdir -p --version . >/dev/null 2>&1 && test ! -d ./--version; then echo "mkdir -p -- $*" exec mkdir -p -- "$@" else # On NextStep and OpenStep, the `mkdir' command does not # recognize any option. It will interpret all options as # directories to create, and then abort because `.' already # exists. test -d ./-p && rmdir ./-p test -d ./--version && rmdir ./--version fi ;; *) if mkdir -m "$dirmode" -p --version . >/dev/null 2>&1 && test ! -d ./--version; then echo "mkdir -m $dirmode -p -- $*" exec mkdir -m "$dirmode" -p -- "$@" else # Clean up after NextStep and OpenStep mkdir. for d in ./-m ./-p ./--version "./$dirmode"; do test -d $d && rmdir $d done fi ;; esac for file do case $file in /*) pathcomp=/ ;; *) pathcomp= ;; esac oIFS=$IFS IFS=/ set fnord $file shift IFS=$oIFS for d do test "x$d" = x && continue pathcomp=$pathcomp$d case $pathcomp in -*) pathcomp=./$pathcomp ;; esac if test ! -d "$pathcomp"; then echo "mkdir $pathcomp" mkdir "$pathcomp" || lasterr=$? if test ! -d "$pathcomp"; then errstatus=$lasterr else if test ! -z "$dirmode"; then echo "chmod $dirmode $pathcomp" lasterr= chmod "$dirmode" "$pathcomp" || lasterr=$? if test ! -z "$lasterr"; then errstatus=$lasterr fi fi fi fi pathcomp=$pathcomp/ done done exit $errstatus # Local Variables: # mode: shell-script # sh-indentation: 2 # eval: (add-hook 'write-file-hooks 'time-stamp) # time-stamp-start: "scriptversion=" # time-stamp-format: "%:y-%02m-%02d.%02H" # time-stamp-time-zone: "UTC" # time-stamp-end: "; # UTC" # End: libbonoboui-2.24.5/NEWS0000664000076400007640000004417011546334645011562 00000000000000libbonoboui 2.24.5 * Updated translations libbonoboui 2.24.4 * Updated translations (en@shaw, eo, eu, gl, ja, or, sl) libbonoboui 2.24.3 * Skip unknown accelerators (Jeff Cai) * Don't pass NULL to G_OBJECT_GET_CLASS() (Paul Bolle) * Updated translations (ast, bn, cs, cy, en@shaw, gl, lt, ru) libbonoboui 2.24.2 Amanpreet Singh Alam (1): updating for Gnome Punjabi Translation by A S Alam Carles Ferrando (1): Added Catalan (Valencian) translation Christian Persch (1): More gtk single include fixes. Bug #535475. Denis Arnaud (1): Updated breton translation, added br in LINGUAS file Djihed Afifi (1): Updated Arabic translation Ignacio Casal Quinteiro (1): Updated Galician translation Jamil Ahmed (1): Updated Bengali translation Jorge Gonzalez (1): Updated Spanish translation Kostas Papadimas (1): Updated Greek Translation by Jennie Petoumenou. Mohammad Anwari (1): Updated Indonesian translation by Andika Triwidada Rodrigo L. M. Flores (1): Updated Brazilian Portuguese mailing list address. Shankar Prasad (1): updated kn.po Zabeeh Khan (1): Updated Pashto translation libbonoboui 2.24.1 * Use single glib/gtk+ includes (Cosimo Cecchi, Przemysław Grzegorczyk) * Remove use of deprecated glib/gtk+ api (Kjartan) * Updated translations (ar, bg, dz, hi, lv, or, pt_BR, zh_HK, zh_TW) libbonoboui 2.24.0 * Remove more gnome-vfs deps (Cosimo Cecchi) * Cleanups (Andreas Köhler, Kjartan Maraas) * Updated translations (ar, bn_IN, hr, mai, ml, pt, ro, sr, te) libbonoboui 2.23.5 * Remove gnome-vfs dependency (#544831, Cosimo Cecchi) * Allows to build using GTK_DISABLE_DEPRECATED (chpe). * Translation updates. libbonoboui 2.23.4 * Only include / in public libbonoboui headers (#535475) * Add support for Super/Hyper/Meta in keybindings (#525626) * Translation updates. libbonoboui 2.22.0 * Translation updates. libbonoboui 2.21.90 * Link to popt since we use it (dmacks at netspace org) * Use a dialog for the "Help not found" case (Matthias) * Win32 fixes (Tor) libbonoboui 2.20.0 * More GOption porting (Gilles Dartiguelounge) * Updated translations: - Arabic (Khaled Hosny) - Finnish (Ilkka Tuohela) - Portugese (Leonardo Ferreira Fontenelle) - Sinhala (Danishka Navin) - Thai (aka.ape@gmail.com) libbonoboui 2.19.5 * Fix build with gtk+ >= 2.11.6 libbonoboui 2.19.4 * Cleanup bonobo-browser .desktop file (Kjartan Maraas) * Use glib/gi18n[-lib].h instead of bonobo-i18n.h (Christian Persch) libbonoboui 2.18.0 * Cleanups (Kjartan) * Updated translations: - Albanian (Laurent Dhima) - Brazilian Portugese (Leonardo Ferreira Fontenelle) - Lithuanian (Gintautas Miliauskas) - Polish (The GNOME PL Team) libbonoboui 2.17.93 * Build fix. libbonoboui 2.17.92 * Dist MAINTAINERS (Kjartan) * Updated translations: - Khaled Hosny (ar) - Jonathan Ernst (fr) - Thierry Randrianiriana (mg) libbonoboui 2.17.91 * Fix the port to GtkArrow (Christian Persch) * Build fix (Jens Granseuer) * Translation updates: - Khaled Hosny (ar) - Thierry Randrianiriana (mg) - Jonathan Ernst (fr) libbonoboui 2.17.0 * Add an index to the API docs (Matthew Barnes) * Leak fixes (Kjartan Maraas) * Fix build after new deprecations in libgnome (P. Henrique Silva) [#383497] * Code cleanups (Kjartan Maraas) * Use GtkArrow to draw the arrows (Diego Escalante Urrelo) [#162312] * Guard against NULL to avoid crashes on Win32 (Andreas Köhler) [#379365] * Fix build with quartz backend (Min Sik Kim) [#382692] * Move ORBit2 and libxml2 to Requires.private (Samuel Thibault) [#352191] * Translation updates: * Khaled Hosny (ar) * Runa Bhattacharjee (bn_IN) * Mindu Dorji (dz) * Adam Weinberger (en_CA) * David Lodge (en_GB) * Ivar Smolin (et) * Ignacio Casal Quinteiro (gl) * Yair Hershkovitz (he) * Luca Ferretti (it) * Vladimer Sichinava (ka) * Kjartan Maraas (nb) * Shiva Prasad Pokharel (ne) * Artur Flinta (pl) * Leonardo Ferreira Fontenelle (pt_BR) libbonoboui 2.16.0 * Translation updates. libbonoboui 2.15.1 * Fix the about dialog in bonobo-browser (Matthias) * Fix leaks in the UI code that showed up when changing components in evolution. (Cecilia Gonzalez) * Set menubar to correct detachable state (Manuel Clos) libbonoboui 2.15.0 * Use move LINGUAS out of configure.in (Przemysław Grzegorczyk) * Build and warning fixes (Marcus Meissner, Kjartan) * Fix moving of detached toolbars (Nikolay V. Shmyrev) * Fix a crash in the component browser (Joe Marcus Clarke) * Win32 portability fixes (Tor Lillqvist) * Translation updates: * Runa Bhattacharjee (bn_IN) * Rajesh Ranjan (hi) * Christophe Merlet (fr) * Žygimantas Beručka (lt) * Raivis Dejus (lv) * Subhransu Behera (or) * Leonardo Ferreira Fontenelle (pt_BR) * Inaki Larranaga (eu) * Baris Cicek (tr) * Maxim Dziumanenko (uk) libbonoboui 2.14.0 * Fix CORBA object leaks (Adriano Winter Bess) * Fix bonobo-object-browser .desktop file (Stephane Loeuillet and Vincent Untz * Translation updates: * Žygimantas Beručka (lt) * Kjartan Maraas (nn) * Subhransu Behera (or) * Mişu Moldovan (ro) libbonoboui 2.13.1 * Fix leaks introduced by the GOption argument handling code (Christian Perch) * Sync with latest libgnome (Christian Persch) [#326846] libbonoboui 2.13.0 * Add support for GOption argument parsing in libgnome (Pawel Sliwowski, chpe) [#307312] * Don't use deprecated gnome_i18n_get_language_list (Gustavo J. A. M. Carneiro) * Translation updates: * Khandakar Mujahidul Islam (bn) * Jordi Mallach (ca) * Iñaki Larrañaga Murgoitio (eu) * Roozbeh Pournader (fa) * Christophe Merlet (RedFox) (fr) * Mohammad DAMT (id) * Alessio Frusciante (it) * Changwoo Ryu (ko) * Erdal Ronahi (ku) * Žygimantas Beručka (lt) * Tino Meinen (nl) * Afonso Celso Medina (pt_BR) * Leonid Kanter (ru) * Christian Rose (sv) * Baris Cicek (tr) * Clytie Siddall (vi) libbonoboui 2.10.1 * Translation updates. libbonoboui 2.10.0 * bugs fixed + xml string free (NotZed) + browser widget fix (Rodrigo Moya) + UI engine sync check (Balamurali Viswanathan) * features + statusbar packing options (Nickolay Shmyrev) + Win32 support (Tor Lillqvist) libbonoboui 2.8.1 * bugs fixed + Merged the fixes from the toolbar-rework branch (Federico Mena Quintero) + Fix warnings when toolbars are destroyed (Federico) + Fix GDK interaction problem when running a control in same process as the container (Gustavo) + Fix include of wrong i18n header files (Jonathan Blandford) + Don't install files from examples (Gustavo) + Dock item a11y fix (Kjartan Maraas) + More toolbar fixes (Arvind Samptur) + Toolbar theme rendering fixes (Benjamin Berg, JP Rosevear) * misc. + Remove redundant AC_SUBST's in configure.in (Tomasz Kłoczko) + Add Bonobo component browser tool (Rodrigo Moya) + Deprecate pack-end behavior and add a space type for separators. (Marco Pesenti Gritti) libbonoboui 2.5.3 * bugs fixed + toolbar/dock destruction crasher (Michael) + unused arg cleanup (Fernando Herrera) * featurelets + BonoboWindow cleanup (Arvind Samptur) libbonoboui 2.5.2 * bugs fixed + require the right gtk+ (Jason Leach) + AIX portability (The Written Word) + svg icon image size (Sergey V. Udaltsov) + status bar grip problem (Michael) + control 'activate' signal (Federico, JP) + memove not strcpy for overlap (JP) + dock size allocation problem (Michael) * featurelets + status bar packing improvement (Alexander Larsson) libbonoboui 2.5.1 libbonoboui 2.3.6 * bugs fixed + F1 help menu shortcut (Yuedong Du) + vicious K/B focus fixage (Federico) + dock grip fix (Padraig O'Briain) + doc. fix (Michael) libbonoboui 2.3.3 * bugs fixed + multi-head issues (Morten Welinder, Michael) + nasty focus hacks binned (Michael) + UI preferences fixes (Anders Carlsson) + toolbar layout fix (Gustavo Giraldez) + UI re-enterancy fix (Radek Doulik) + Tooltip fixes (Dave Camp) + build fixage (Hidetoshi Tajima, Masahiro Sakai, Malcolm Tredinnick, Padraig O'Briain, Alex Duggan) * featurelets + new sample container (Sergey Oudaltsov) + nicer toolbar rendering (Rodney Dawes) + cygwin port (Masahiro Sakai) + toolbar widget direction (Jody Goldberg) + working canvas components (Bob Gibbs) + more documentation (Gustavo Carneiro) * translations + kn, id, mn, yi (Christian Rose) + ro (Marius Andreiana) + fa (Roozbeh Pournader) + ml (Guntupalli Karunakar) + sr (Danilo Šegan) + cy (Telsa Gwynne et. al) libbonoboui 2.2.0 * Bugs fixed + toolbar size allocation (Michael) + toolbar popup positioning (Kang Jeong-Hee) + help display fixes (Michael, Marcus FreeBSD) + build fixes (Michael, Kjartan Maraas) + file sel brokenness (NotZed) + 64bit cleaning (HHetter) + custom icon sizing (Mark McLouglin) * Featurelets + new component_set_widget API (Michael) + improved lifecycle helpers (Michael) + built in BONOBO_DEBUG menu (Gustavo Carneiro) libbonoboui 2.0.1 * Featurelets + new widget stuffing API (Michael) + libxml2 added to deps (Mark) + updated FAQ (Gustavo Carneiro) libbonoboui 2.0.3.2 * Bugs fixed + toolbar label set efficiency win (Michael) + toolbar destruction (Jaka Mocnik, Satyajit) libbonoboui 2.0.3.1 * Bugs fixed + UI Node fixes (Michael) + UI widget ref fixes (Michael) + uninitialized popup ref fix (Michael) + FAQ improvement (Gustavo Carneiro) libbonoboui 2.0.3 * Bugs fixed + icon theme change fixes (Michael) libbonoboui 2.0.2 * Bugs fixed + expose event propagation (Federico Mena) + dock layout fix (Michael) + flush icon cache on theme change (Michael) + plug/socket in-process sizing (Michael) + leak fixes (Michael) + UI node lifecycle re-enterancy fix (Michael) libbonoboui 2.0.1 * Bugs fixed + multi-head fixes all over (Mark McLouglin) + plug/socket ref update (Michael, Dave Camp) + menu accel group fix (Michael) + UI re-enterancy fixes (Michael) + a11y toolbar role on toolbar (Michael) + don't install test bits (Brian Cameron) + 'No foo' (Morten Welinder) * Featurelets + better control regression tests (Michael) + optimized UI path lookups (Michael) + DockItem glade improvements (James Henstridge) libbonoboui 2.0.0 * Add bin-compat padding (Michael) libbonoboui 1.118.0 * Bugs fixed + socket resize on show (Michael) + socket sizing badness / inefficiency (Michael) + DockItem glade fixes (Kristian Rietveld) + pixbuf leak fix (Gustavo Giráldez) + control frame CORBA sizing update (Federico) libbonoboui 1.117.1 * Bugs fixed + toolbar config dialog transient (Michael) + file-sel cancel fix (Paolo Maggi) + toolbar look fix (Gustavo Giráldez) libbonoboui 1.117.0 * Bugs fixed + file-sel control activation cleanup (Paolo Maggi) + control / plug lifecycle fixup (Michael) + auto-built help menu sync with libgnome (Michael) + toolbar style updates to sync with control center (Michael) + pass "--screen" onto multi-screen gtk+ (Balamurali Viswanathan) + object ownership transferal fixes (Michael) + more regression tests (Michael) + transient dialog fixage (Michael, Jon-Kare Hellan) libbonoboui 1.116.0 * Bugs fixed + GladeWidgetInfo updated (Murray Cumming) + bogus construct function removal (Murray) + construction property addition (Murray) + status signal mis-management (Michael, Morten Welinder) + don't auto-activate stuff confusingly (Michael) libbonoboui 1.115.0 * Bugs fixed + entity mis-management (Michael, DV, Frederic Crozat) + dock band bindability (Murray Cumming) + remote UI container segv (Michael) + focus direction fixage (Anders) + signal paramter fixage (Murray) + grip sizing (Jeroen Zwartepoorte) + build fixage (Jacob Berkman) + C++ includeability (Murray Cumming) + plug/socket grab leak (Mark McLouglin) + dock lockability instant update (Michael) + staticification of signals (Jacob) + warning free control widgeting (Michael) + mutiple key press chain error (Michael) + libgnome pkgconfig dependency (Murray) * Featurelets + dock layout (Michael) + accessibility + key-navigability + UI translation speedup (Michael) + large label handling speedup (Michael) + more regression tests (Michael) + error handler rename (Jody Goldberg) libbonoboui 1.113.0 * Bugs fixed + widget / leak fixes (Paolo Maggi) + UI config display (Michael) + file selector fixes (James Willcox, Paolo) + pixmap / stock-item lookup bug (Michael) + Popup API race fixage (Mark McLoughlin) + resize grip visibility updates (Paolo) + const warning fixes (Jody Goldberg) + signal type brokenness (Michael) + UI engine scripting binding fixes (Johan Dahlin) + 'system_exception' fired more (Michael) * Featurelets (Michael) + UI handler performance improvements + multi display activation updates + GnomeProgram re-organisation + performance regression test libbonoboui 1.112.1 * Bugs fixed + popup race (Mark) + resize_grip handling (Paolo Maggi, Michael) + file_selector fixes (James Willcox, Paolo) + leak fixes (Paolo) + zoomable ref leak on failure (Michael) + build warning fixes (Jody) + g_value warning fix (Michael) + publicise BonoboUIEngine type (Johan Dahlin) + updated control lifecycle (Michael) + passes distcheck (Michael) * UI handler featurelets (Michael) + automated performance tests + compat stock mapping updated + various accelerations libbonoboui 1.112.0 * Bugs fixed + test-moniker ref leak fix (Michael) + build fixes (Gediminas Paulauskas, Jacob) * Featurelets (Michael) + frame_get_popup_component + port UI config serialization to GConf + remove all deprecated API usage + shutdown gconf so we don't report bogus ref leaks. + do more string munging on stack to save locking + more performance tests libbonoboui 1.111.0 * Bugs fixed + remove access syscalls (Michael) + leak fix & menu sync upd. (Mark McLouglin) * Featurelets (Michael) + UI set_prop much faster + remove some deprecated API libbonoboui 1.110.2 * fix a default placeholder issue (Michael) * more automated regression tests (Michael) libbonoboui 1.110.1 * update regression tests (Michael) * fix radio button bug (Michael) * Track the Gtk+ file selector changes (Paolo Maggi) * UTF8 strreverse fix (Michael) * property control leak fix (Jens Finke) libbonoboui 1.110.0 * UI & controls (Michael) + sensitivity bug fix + merge order fixes in setAttr + queueResize stub impl + automated UI handler test + coalesce redundant style property sets + coalesce freeze/thaws on the UIComponent + set style on sub-controls + more compatible stock name mapping * Misc. + glade property bag leak fix (Michael) + type macro updates (Johan Dahlin) + ctype cleaning (Darin) libbonoboui 1.109.2 * dynamicaly update UI to match GConf (Anders) * re-enterancy fixes in UI engine dispose (Michael) libbonoboui 1.109.1 * silly build fix. libbonoboui 1.109.0 * UI handler + re-enterancy fixes (Michael) + status segv (Darin Adler) + resize grip configurability (Anders Carlsson) + component polishing (Michael) + fix control widget leak (Michael) + forward ported accelerations (Michael) + less malloc thrash (Michael) * Controls + auto merging fixes (Jacob Berkman) + signal updates (Dave Camp) + missing macro (Bill Haneman) + plug property fixage (Mark) * Misc + PropertyControl ported (Jens Finke) + more regression tests (Michael) + file selector updates (Paolo Maggi) + leak fixes (Michael, Anders, Darin) + build fixage (Darin) libbonoboui 1.108.1 * GType != guint fixage (George Lebl) * substantial control lifecycle work & cleanup (Michael) * macro fixage (Jacob) * forward unhandled mouse clicks on plug (Mark McLouglin) * popup API addition (Mark) libbonoboui 1.108.0 * add glib-mkenum (Jacob) * glade updates (Jacob) * build fixage (Jacob, Laszlo Peter) * dock item placement fixes & new properties (Jacob) * UI handler - fix mnemonics (James Henstridge) * install samples out of the path (Rodrigo Moya) * referencing fix in toolbar (Darin) * plug expose issue (Michael) libbonoboui 1.107.0 * UI handler (Me) + UI preferences ported to GConf + new exception on getAttr for no attr. + UI handler pre-condition fixage + new popup API for the panel + opt_ev'ism (Mark McLouglin) + size allocation fixes (Mark McLouglin) * Plug / Socket (Me) + BonoboWidget fixes and updates + continuing lifecycle fixage + don't let show_all propagate in proc. + regression tests + re-parenting work * Misc. + get_type fixage (Jacob) + glib fixes (Owen, Peter Williams) + build fixage (Mark McLouglin, Jacob) + zoomable cleans & re-writes + port to GObject * New docs (Mark McLouglin) + UI handler + object hierarchy + controls / components libbonoboui 1.106.0 * Add exception environments where missing (Me, Federico) * Plug / Socket / Control / ControlFrame rewrite (Me) + cleaner, quicker, smaller, leaks killed + sizes before realizing + documented; doc/control.txt + unfinished. * Use GConf not gnome-preferences (Me) * Type name standardization (Seth Nickell) * glade module (Jacob) * Bonobo UI hello world re-written (Me) * Method doc fixage (Havoc) * Parallel install fixage (Abel Cheung, Havoc) * Regression tests + added control / frame tests + (async) moniker test updates * build fixage (Jacob) libbonoboui 1.103 * Bug fixes * build fixage (Glynn Foster, Anders, PeterW) * libgnome tracking (George Lebl) * leak fixage (Anders) * genmarshal standardiztion (Darin) * zoomable fixage (Cody Russell) * relocate server files (Me) * Features * code to do toplevel transients from controls (Me) * BonoboUINode/UI bits re-write (Me) + much faster code + uses less memory * update regression tests (Me) * IDL for container verb/id automation (Me) * use gtk-stock for samples (Murray Cumming) * pruning libgnome usage (Martin) * closure API updates (Martin) * file selector client API (Jacob) libbonoboui-2.24.5/tests/0000775000076400007640000000000011546335131012266 500000000000000libbonoboui-2.24.5/tests/control/0000775000076400007640000000000011546335131013746 500000000000000libbonoboui-2.24.5/tests/control/Makefile.am0000644000076400007640000000060011173072741015715 00000000000000noinst_PROGRAMS = \ test-control INCLUDES = \ -DGNOMELOCALEDIR=\""$(datadir)/locale"\" \ -I$(top_srcdir) \ -DBONOBO_UIDIR=\""$(datadir)/gnome/ui/"\" \ -DG_LOG_DOMAIN=\"Bonobo\" \ -DVERSION=\"$(VERSION)\" \ $(WARN_CFLAGS) \ $(BONOBOUI_CFLAGS) LDADD = $(top_builddir)/bonobo/libbonoboui-2.la $(BONOBOUI_LIBS) test_control_SOURCES = test-control.c libbonoboui-2.24.5/tests/control/Makefile.in0000664000076400007640000003664711546334701015755 00000000000000# Makefile.in generated by automake 1.11.1 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, # Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY, to the extent permitted by law; without # even the implied warranty of MERCHANTABILITY or FITNESS FOR A # PARTICULAR PURPOSE. @SET_MAKE@ VPATH = @srcdir@ pkgdatadir = $(datadir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ pkglibdir = $(libdir)/@PACKAGE@ pkglibexecdir = $(libexecdir)/@PACKAGE@ am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd install_sh_DATA = $(install_sh) -c -m 644 install_sh_PROGRAM = $(install_sh) -c install_sh_SCRIPT = $(install_sh) -c INSTALL_HEADER = $(INSTALL_DATA) transform = $(program_transform_name) NORMAL_INSTALL = : PRE_INSTALL = : POST_INSTALL = : NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : build_triplet = @build@ host_triplet = @host@ noinst_PROGRAMS = test-control$(EXEEXT) subdir = tests/control DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/configure.in am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs CONFIG_HEADER = $(top_builddir)/config.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = PROGRAMS = $(noinst_PROGRAMS) am_test_control_OBJECTS = test-control.$(OBJEXT) test_control_OBJECTS = $(am_test_control_OBJECTS) test_control_LDADD = $(LDADD) am__DEPENDENCIES_1 = test_control_DEPENDENCIES = $(top_builddir)/bonobo/libbonoboui-2.la \ $(am__DEPENDENCIES_1) DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir) depcomp = $(SHELL) $(top_srcdir)/depcomp am__depfiles_maybe = depfiles am__mv = mv -f COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) LTCOMPILE = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \ --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) CCLD = $(CC) LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \ --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \ $(LDFLAGS) -o $@ SOURCES = $(test_control_SOURCES) DIST_SOURCES = $(test_control_SOURCES) ETAGS = etags CTAGS = ctags DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ACLOCAL_AMFLAGS = @ACLOCAL_AMFLAGS@ ALL_LINGUAS = @ALL_LINGUAS@ AMTAR = @AMTAR@ AR = @AR@ AS = @AS@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ AWK = @AWK@ BONOBOUI_CFLAGS = @BONOBOUI_CFLAGS@ BONOBOUI_GLADE_CFLAGS = @BONOBOUI_GLADE_CFLAGS@ BONOBOUI_GLADE_LIBS = @BONOBOUI_GLADE_LIBS@ BONOBOUI_LIBS = @BONOBOUI_LIBS@ BONOBOUI_SINGLE_INCLUDES = @BONOBOUI_SINGLE_INCLUDES@ CATALOGS = @CATALOGS@ CATOBJEXT = @CATOBJEXT@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ CYGPATH_W = @CYGPATH_W@ DATADIRNAME = @DATADIRNAME@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DUMPBIN = @DUMPBIN@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_MKENUMS = @GLIB_MKENUMS@ GMOFILES = @GMOFILES@ GMSGFMT = @GMSGFMT@ GREP = @GREP@ GTKDOC_CHECK = @GTKDOC_CHECK@ GTKDOC_MKPDF = @GTKDOC_MKPDF@ GTKDOC_REBASE = @GTKDOC_REBASE@ HTML_DIR = @HTML_DIR@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INSTOBJEXT = @INSTOBJEXT@ INTLLIBS = @INTLLIBS@ INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@ INTLTOOL_MERGE = @INTLTOOL_MERGE@ INTLTOOL_PERL = @INTLTOOL_PERL@ INTLTOOL_UPDATE = @INTLTOOL_UPDATE@ LD = @LD@ LDFLAGS = @LDFLAGS@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIPO = @LIPO@ LN_S = @LN_S@ LTLIBOBJS = @LTLIBOBJS@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MKDIR_P = @MKDIR_P@ MKINSTALLDIRS = @MKINSTALLDIRS@ MSGFMT = @MSGFMT@ MSGFMT_OPTS = @MSGFMT_OPTS@ MSGMERGE = @MSGMERGE@ NM = @NM@ NMEDIT = @NMEDIT@ OBJDUMP = @OBJDUMP@ OBJEXT = @OBJEXT@ OTOOL = @OTOOL@ OTOOL64 = @OTOOL64@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_URL = @PACKAGE_URL@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ PATH_TO_XRDB = @PATH_TO_XRDB@ PKG_CONFIG = @PKG_CONFIG@ POFILES = @POFILES@ POPT_LIBS = @POPT_LIBS@ POSUB = @POSUB@ PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@ PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@ RANLIB = @RANLIB@ SED = @SED@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ STRIP = @STRIP@ USE_NLS = @USE_NLS@ VERSION = @VERSION@ WARN_CFLAGS = @WARN_CFLAGS@ XGETTEXT = @XGETTEXT@ XMKMF = @XMKMF@ X_CFLAGS = @X_CFLAGS@ X_EXTRA_LIBS = @X_EXTRA_LIBS@ X_LIBS = @X_LIBS@ X_PRE_LIBS = @X_PRE_LIBS@ YACC = @YACC@ YFLAGS = @YFLAGS@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ abs_top_srcdir = @abs_top_srcdir@ ac_ct_CC = @ac_ct_CC@ ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ am__include = @am__include@ am__leading_dot = @am__leading_dot@ am__quote = @am__quote@ am__tar = @am__tar@ am__untar = @am__untar@ bindir = @bindir@ build = @build@ build_alias = @build_alias@ build_cpu = @build_cpu@ build_os = @build_os@ build_vendor = @build_vendor@ builddir = @builddir@ datadir = @datadir@ datarootdir = @datarootdir@ docdir = @docdir@ dvidir = @dvidir@ exec_prefix = @exec_prefix@ host = @host@ host_alias = @host_alias@ host_cpu = @host_cpu@ host_os = @host_os@ host_vendor = @host_vendor@ htmldir = @htmldir@ includedir = @includedir@ infodir = @infodir@ install_sh = @install_sh@ libdir = @libdir@ libexecdir = @libexecdir@ localedir = @localedir@ localstatedir = @localstatedir@ lt_ECHO = @lt_ECHO@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ sysconfdir = @sysconfdir@ target_alias = @target_alias@ top_build_prefix = @top_build_prefix@ top_builddir = @top_builddir@ top_srcdir = @top_srcdir@ INCLUDES = \ -DGNOMELOCALEDIR=\""$(datadir)/locale"\" \ -I$(top_srcdir) \ -DBONOBO_UIDIR=\""$(datadir)/gnome/ui/"\" \ -DG_LOG_DOMAIN=\"Bonobo\" \ -DVERSION=\"$(VERSION)\" \ $(WARN_CFLAGS) \ $(BONOBOUI_CFLAGS) LDADD = $(top_builddir)/bonobo/libbonoboui-2.la $(BONOBOUI_LIBS) test_control_SOURCES = test-control.c all: all-am .SUFFIXES: .SUFFIXES: .c .lo .o .obj $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps) @for dep in $?; do \ case '$(am__configure_deps)' in \ *$$dep*) \ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ && { if test -f $@; then exit 0; else break; fi; }; \ exit 1;; \ esac; \ done; \ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign tests/control/Makefile'; \ $(am__cd) $(top_srcdir) && \ $(AUTOMAKE) --foreign tests/control/Makefile .PRECIOUS: Makefile Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status @case '$?' in \ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(am__aclocal_m4_deps): clean-noinstPROGRAMS: @list='$(noinst_PROGRAMS)'; test -n "$$list" || exit 0; \ echo " rm -f" $$list; \ rm -f $$list || exit $$?; \ test -n "$(EXEEXT)" || exit 0; \ list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \ echo " rm -f" $$list; \ rm -f $$list test-control$(EXEEXT): $(test_control_OBJECTS) $(test_control_DEPENDENCIES) @rm -f test-control$(EXEEXT) $(LINK) $(test_control_OBJECTS) $(test_control_LDADD) $(LIBS) mostlyclean-compile: -rm -f *.$(OBJEXT) distclean-compile: -rm -f *.tab.c @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-control.Po@am__quote@ .c.o: @am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< @am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(COMPILE) -c $< .c.obj: @am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'` @am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(COMPILE) -c `$(CYGPATH_W) '$<'` .c.lo: @am__fastdepCC_TRUE@ $(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< @am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(LTCOMPILE) -c -o $@ $< mostlyclean-libtool: -rm -f *.lo clean-libtool: -rm -rf .libs _libs ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ END { if (nonempty) { for (i in files) print i; }; }'`; \ mkid -fID $$unique tags: TAGS TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) set x; \ here=`pwd`; \ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ END { if (nonempty) { for (i in files) print i; }; }'`; \ shift; \ if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ test -n "$$unique" || unique=$$empty_fix; \ if test $$# -gt 0; then \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ "$$@" $$unique; \ else \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ $$unique; \ fi; \ fi ctags: CTAGS CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ END { if (nonempty) { for (i in files) print i; }; }'`; \ test -z "$(CTAGS_ARGS)$$unique" \ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ $$unique GTAGS: here=`$(am__cd) $(top_builddir) && pwd` \ && $(am__cd) $(top_srcdir) \ && gtags -i $(GTAGS_ARGS) "$$here" distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ dist_files=`for file in $$list; do echo $$file; done | \ sed -e "s|^$$srcdirstrip/||;t" \ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ case $$dist_files in \ */*) $(MKDIR_P) `echo "$$dist_files" | \ sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ sort -u` ;; \ esac; \ for file in $$dist_files; do \ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ if test -d $$d/$$file; then \ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ if test -d "$(distdir)/$$file"; then \ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ else \ test -f "$(distdir)/$$file" \ || cp -p $$d/$$file "$(distdir)/$$file" \ || exit 1; \ fi; \ done check-am: all-am check: check-am all-am: Makefile $(PROGRAMS) installdirs: install: install-am install-exec: install-exec-am install-data: install-data-am uninstall: uninstall-am install-am: all-am @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am installcheck: installcheck-am install-strip: $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ `test -z '$(STRIP)' || \ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install mostlyclean-generic: clean-generic: distclean-generic: -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) maintainer-clean-generic: @echo "This command is intended for maintainers to use" @echo "it deletes files that may require special tools to rebuild." clean: clean-am clean-am: clean-generic clean-libtool clean-noinstPROGRAMS \ mostlyclean-am distclean: distclean-am -rm -rf ./$(DEPDIR) -rm -f Makefile distclean-am: clean-am distclean-compile distclean-generic \ distclean-tags dvi: dvi-am dvi-am: html: html-am html-am: info: info-am info-am: install-data-am: install-dvi: install-dvi-am install-dvi-am: install-exec-am: install-html: install-html-am install-html-am: install-info: install-info-am install-info-am: install-man: install-pdf: install-pdf-am install-pdf-am: install-ps: install-ps-am install-ps-am: installcheck-am: maintainer-clean: maintainer-clean-am -rm -rf ./$(DEPDIR) -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic mostlyclean: mostlyclean-am mostlyclean-am: mostlyclean-compile mostlyclean-generic \ mostlyclean-libtool pdf: pdf-am pdf-am: ps: ps-am ps-am: uninstall-am: .MAKE: install-am install-strip .PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \ clean-libtool clean-noinstPROGRAMS ctags distclean \ distclean-compile distclean-generic distclean-libtool \ distclean-tags distdir dvi dvi-am html html-am info info-am \ install install-am install-data install-data-am install-dvi \ install-dvi-am install-exec install-exec-am install-html \ install-html-am install-info install-info-am install-man \ install-pdf install-pdf-am install-ps install-ps-am \ install-strip installcheck installcheck-am installdirs \ maintainer-clean maintainer-clean-generic mostlyclean \ mostlyclean-compile mostlyclean-generic mostlyclean-libtool \ pdf pdf-am ps ps-am tags uninstall uninstall-am # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. .NOEXPORT: libbonoboui-2.24.5/tests/control/test-control.c0000644000076400007640000001726111173072741016475 00000000000000/* * test-focus.c: A test application to sort focus issues. * * Author: * Michael Meeks (michael@helixcode.com) * * Copyright 2001 Ximian, Inc. */ #undef GTK_DISABLE_DEPRECATED #include "config.h" #include #include #include #include typedef struct { /* Control */ GtkWidget *control_widget; BonoboControl *control; BonoboPlug *plug; /* Frame */ GtkWidget *bonobo_widget; BonoboControlFrame *frame; BonoboSocket *socket; } Test; typedef enum { DESTROY_CONTROL, DESTROY_TOPLEVEL, DESTROY_CONTAINED, DESTROY_SOCKET, DESTROY_TYPE_LAST } DestroyType; static void destroy_test (Test *test, DestroyType type) { switch (type) { case DESTROY_CONTAINED: { /* Highly non-useful, should never happen */ BonoboControlFrame *frame; gtk_widget_destroy (test->control_widget); g_assert (test->control_widget == NULL); frame = bonobo_widget_get_control_frame ( BONOBO_WIDGET (test->bonobo_widget)); g_assert (BONOBO_IS_CONTROL_FRAME (frame)); break; } case DESTROY_SOCKET: g_warning ("unimpl"); /* drop through */ case DESTROY_CONTROL: bonobo_object_unref (test->control); g_assert (test->plug == NULL); g_assert (test->control_widget == NULL); /* drop through */ case DESTROY_TOPLEVEL: gtk_widget_destroy (test->bonobo_widget); g_assert (test->bonobo_widget == NULL); g_assert (test->socket == NULL); g_assert (test->frame == NULL); g_assert (test->plug == NULL); g_assert (test->control == NULL); break; default: g_assert_not_reached (); break; } g_assert (test->control_widget == NULL); switch (type) { case DESTROY_CONTAINED: gtk_widget_destroy (test->bonobo_widget); break; default: break; } g_assert (test->bonobo_widget == NULL); } static void destroy_cb (GObject *object, Test *text) { dbgprintf ("destroy %s %p\n", g_type_name_from_instance ( (GTypeInstance *) object), object); } static void create_control (Test *test) { test->control_widget = gtk_entry_new (); g_signal_connect (G_OBJECT (test->control_widget), "destroy", G_CALLBACK (destroy_cb), test); g_assert (test->control_widget != NULL); gtk_widget_show (test->control_widget); test->control = bonobo_control_new (test->control_widget); g_assert (test->control != NULL); test->plug = bonobo_control_get_plug (test->control); g_assert (test->plug != NULL); g_signal_connect (G_OBJECT (test->plug), "destroy", G_CALLBACK (destroy_cb), test); g_object_add_weak_pointer (G_OBJECT (test->plug), (gpointer *) &test->plug); g_object_add_weak_pointer (G_OBJECT (test->control), (gpointer *) &test->control); g_object_add_weak_pointer (G_OBJECT (test->control_widget), (gpointer *) &test->control_widget); } /* An ugly hack into the ORB */ extern CORBA_Object ORBit_objref_get_proxy (CORBA_Object obj); static void create_frame (Test *test, gboolean fake_remote) { Bonobo_Control control; control = BONOBO_OBJREF (test->control); /* if (fake_remote) control = ORBit_objref_get_proxy (control);*/ test->bonobo_widget = bonobo_widget_new_control_from_objref ( control, CORBA_OBJECT_NIL); bonobo_object_unref (BONOBO_OBJECT (test->control)); gtk_widget_show (test->bonobo_widget); test->frame = bonobo_widget_get_control_frame ( BONOBO_WIDGET (test->bonobo_widget)); test->socket = bonobo_control_frame_get_socket (test->frame); g_object_add_weak_pointer (G_OBJECT (test->frame), (gpointer *) &test->frame); g_object_add_weak_pointer (G_OBJECT (test->socket), (gpointer *) &test->socket); g_object_add_weak_pointer (G_OBJECT (test->bonobo_widget), (gpointer *) &test->bonobo_widget); } static Test * create_test (gboolean fake_remote) { Test *test = g_new0 (Test, 1); create_control (test); create_frame (test, fake_remote); return test; } static int timeout_cb (gpointer user_data) { gboolean *done = user_data; *done = TRUE; return FALSE; } static void mainloop_for (gulong interval) { gboolean mainloop_done = FALSE; if (!interval) /* Wait for another process */ interval = 50; g_timeout_add (interval, timeout_cb, &mainloop_done); while (g_main_context_pending (NULL)) g_main_context_iteration (NULL, FALSE); while (g_main_context_iteration (NULL, TRUE) && !mainloop_done) ; } #if 0 static void realize_cb (GtkWidget *socket, gpointer user_data) { GtkWidget *plug, *w; g_warning ("Realize"); plug = gtk_plug_new (0); w = gtk_button_new_with_label ("Baa"); gtk_widget_show_all (w); gtk_widget_show (plug); gtk_container_add (GTK_CONTAINER (plug), w); GTK_PLUG (plug)->socket_window = GTK_WIDGET (socket)->window; gtk_socket_add_id (GTK_SOCKET (socket), gtk_plug_get_id (GTK_PLUG (plug))); gdk_window_show (GTK_WIDGET (plug)->window); } #endif static void run_tests (GtkContainer *parent, gboolean wait_for_realize, gboolean fake_remote) { GtkWidget *vbox; DestroyType t; Test *tests[DESTROY_TYPE_LAST]; vbox = gtk_vbox_new (TRUE, 2); gtk_widget_show (vbox); gtk_container_add (parent, vbox); #if 0 { /* Test raw plug / socket */ GtkWidget *socket; g_warning ("Foo Bar. !!!"); socket = gtk_socket_new (); g_signal_connect (G_OBJECT (socket), "realize", G_CALLBACK (realize_cb), NULL); gtk_widget_show (GTK_WIDGET (socket)); gtk_box_pack_start (GTK_BOX (vbox), socket, TRUE, TRUE, 2); } #endif printf ("create\n"); for (t = 0; t < DESTROY_TYPE_LAST; t++) { tests [t] = create_test (fake_remote); gtk_box_pack_start ( GTK_BOX (vbox), GTK_WIDGET (tests [t]->bonobo_widget), TRUE, TRUE, 2); } if (wait_for_realize) mainloop_for (100); printf ("show / hide\n"); gtk_widget_hide (GTK_WIDGET (parent)); if (wait_for_realize) mainloop_for (100); gtk_widget_show (GTK_WIDGET (parent)); if (wait_for_realize) mainloop_for (100); printf ("re-add\n"); g_object_ref (G_OBJECT (vbox)); gtk_container_remove (parent, vbox); gtk_container_add (parent, vbox); if (wait_for_realize) mainloop_for (100); printf ("re-parent\n"); for (t = 0; t < DESTROY_TYPE_LAST; t++) { g_object_ref (tests [t]->bonobo_widget); gtk_container_remove (GTK_CONTAINER (GTK_BOX (vbox)), tests [t]->bonobo_widget); gtk_box_pack_start ( GTK_BOX (vbox), GTK_WIDGET (tests [t]->bonobo_widget), TRUE, TRUE, 2); g_object_unref (tests [t]->bonobo_widget); } if (wait_for_realize) mainloop_for (100); printf ("destroy\n"); for (t = 0; t < DESTROY_TYPE_LAST; t++) { destroy_test (tests [t], t); mainloop_for (0); } gtk_widget_destroy (GTK_WIDGET (vbox)); } static void simple_tests (void) { BonoboControl *control; GtkWidget *widget = gtk_button_new_with_label ("Foo"); control = bonobo_control_new (widget); bonobo_object_unref (BONOBO_OBJECT (control)); control = bonobo_control_new (gtk_entry_new ()); bonobo_object_unref (BONOBO_OBJECT (control)); } static void test_gtk_weakrefs (void) { gpointer ref; GtkObject *object = g_object_new (GTK_TYPE_BUTTON, NULL); ref = object; g_object_ref_sink (object); g_object_add_weak_pointer (ref, &ref); gtk_object_destroy (object); g_object_unref (object); g_assert (ref == NULL); } int main (int argc, char **argv) { GtkWidget *window; free (malloc (8)); textdomain (GETTEXT_PACKAGE); if (!bonobo_ui_init ("test-focus", VERSION, &argc, argv)) g_error ("Can not bonobo_ui_init"); bonobo_activate (); test_gtk_weakrefs (); window = gtk_window_new (GTK_WINDOW_TOPLEVEL); gtk_window_set_title (GTK_WINDOW (window), "Control test"); gtk_widget_show_all (window); simple_tests (); run_tests (GTK_CONTAINER (window), TRUE, TRUE); run_tests (GTK_CONTAINER (window), FALSE, TRUE); gtk_widget_destroy (window); return bonobo_ui_debug_shutdown (); } libbonoboui-2.24.5/tests/test-filesel.c0000644000076400007640000000231111173072741014746 00000000000000/* * test-libfilesel.c: a small test program for libgnomefilesel * * Authors: * Jacob Berkman * * Copyright 2001 Ximian, Inc. * */ #include #include #include #include #include #include static gint get_files (gpointer data) { char *s, **strv; int i; s = bonobo_file_selector_open (NULL, FALSE, NULL, NULL, "/etc"); g_print ("open test:\n\t%s\n", s); g_free (s); s = bonobo_file_selector_save (NULL, FALSE, NULL, NULL, "/tmp", "test.txt"); g_print ("save test:\n\t%s\n", s); g_free (s); strv = bonobo_file_selector_open_multi (NULL, TRUE, NULL, NULL, NULL); g_print ("open multi test:\n"); if (strv) { for (i = 0; strv[i]; i++) g_print ("\t%s\n", strv[i]); g_strfreev (strv); } bonobo_main_quit (); return FALSE; } int main (int argc, char *argv[]) { GnomeProgram *program; free (malloc (8)); textdomain (GETTEXT_PACKAGE); program = gnome_program_init ("test-filesel", VERSION, LIBBONOBOUI_MODULE, argc, argv, NULL); bonobo_activate (); g_idle_add (get_files, NULL); bonobo_main (); g_object_unref (program); return 0; } libbonoboui-2.24.5/tests/test-events.c0000644000076400007640000000337511173072741014642 00000000000000/* * test-events.c: A test application to sort X events issues. * * Author: * Mark McLoughlin * * Copyright 2001 Sun Microsytems, Inc. */ #undef GTK_DISABLE_DEPRECATED #include "config.h" #include #include static gboolean event_cb (GtkWidget *widget, GdkEventButton *event) { switch (event->type) { case GDK_BUTTON_PRESS: g_message (_("button press event %d"), event->button); break; case GDK_BUTTON_RELEASE: g_message (_("button release event %d"), event->button); break; default: g_message (_("event type: %d"), event->type); break; } return FALSE; } static int exit_cb (GtkWidget *widget, gpointer user_data) { gtk_main_quit (); return FALSE; } int main (int argc, char **argv) { GnomeProgram *program; GtkWidget *window; GtkWidget *control; gchar *iid; if (argc != 2 || strncmp (argv [1], "OAFIID", 6)) g_error (_("usage: test-events ")); iid = argv [1]; textdomain (GETTEXT_PACKAGE); program = gnome_program_init ("test-events", VERSION, LIBBONOBOUI_MODULE, argc, argv, NULL); bonobo_activate (); window = gtk_window_new (GTK_WINDOW_TOPLEVEL); gtk_window_set_title (GTK_WINDOW (window), "Events test"); g_signal_connect (G_OBJECT (window), "delete_event", G_CALLBACK (exit_cb), NULL); g_signal_connect (G_OBJECT (window), "button-press-event", G_CALLBACK (event_cb), NULL); g_signal_connect (G_OBJECT (window), "button-release-event", G_CALLBACK (event_cb), NULL); control = bonobo_widget_new_control (iid, NULL); if (!control) g_error (_("Cannot get control widget for '%s'"), iid); gtk_container_add (GTK_CONTAINER (window), control); gtk_widget_show_all (window); gtk_main (); g_object_unref (program); return bonobo_debug_shutdown (); } libbonoboui-2.24.5/tests/test-sensitivity.c0000644000076400007640000001223411173072741015722 00000000000000/* * Sensitivity showing hack, ugly code * -George * * Used to be: * * sample-control-container.c * * Authors: * Nat Friedman (nat@ximian.com) * Michael Meeks (michael@ximian.com) * * Copyright 1999, 2001 Ximian, Inc. */ #undef GTK_DISABLE_DEPRECATED #include #include #include static void app_destroy_cb (GtkWidget *app, BonoboUIContainer *uic) { gtk_main_quit (); } static void toggle_sensitive (GtkWidget *w, GtkWidget *control) { if (GTK_WIDGET_SENSITIVE (control)) gtk_widget_set_sensitive (control, FALSE); else gtk_widget_set_sensitive (control, TRUE); } static GtkWidget * make_inprocess_control (BonoboUIContainer *uic) { BonoboControl *control; GtkWidget *controlw; GtkWidget *w = gtk_label_new (">>> this is a control <<<"); gtk_widget_show (w); control = bonobo_control_new (w); controlw = bonobo_widget_new_control_from_objref (BONOBO_OBJREF (control), BONOBO_OBJREF (uic)); bonobo_object_unref (BONOBO_OBJECT (control)); return controlw; } static guint container_create (void) { GtkWidget *control; GtkWidget *box; BonoboUIContainer *uic; GtkWindow *window; GtkWidget *app; app = bonobo_window_new ("sample-control-container", "Sample Bonobo Control Container"); window = GTK_WINDOW (app); uic = bonobo_window_get_ui_container (BONOBO_WINDOW (app)); gtk_window_set_default_size (window, 500, 440); gtk_window_set_resizable (window, TRUE); g_signal_connect (window, "destroy", G_CALLBACK (app_destroy_cb), uic); box = gtk_vbox_new (FALSE, 5); bonobo_window_set_contents (BONOBO_WINDOW (app), box); control = bonobo_widget_new_control ("OAFIID:Bonobo_Sample_Clock", BONOBO_OBJREF (uic)); if (control) { GtkWidget *w; gtk_widget_set_sensitive (GTK_WIDGET (control), FALSE); gtk_box_pack_start (GTK_BOX (box), gtk_label_new ("Initially insensitive:"), FALSE, FALSE, 0); gtk_box_pack_start (GTK_BOX (box), control, TRUE, TRUE, 0); w = gtk_button_new_with_label ("toggle_sensitivity"); gtk_box_pack_start (GTK_BOX (box), w, FALSE, FALSE, 0); g_signal_connect (GTK_OBJECT (w), "clicked", G_CALLBACK (toggle_sensitive), control); } gtk_box_pack_start (GTK_BOX (box), gtk_hseparator_new (), FALSE, FALSE, 0); gtk_box_pack_start (GTK_BOX (box), gtk_hseparator_new (), FALSE, FALSE, 0); gtk_box_pack_start (GTK_BOX (box), gtk_hseparator_new (), FALSE, FALSE, 0); control = bonobo_widget_new_control ("OAFIID:Bonobo_Sample_Clock", BONOBO_OBJREF (uic)); if (control) { GtkWidget *w; gtk_box_pack_start (GTK_BOX (box), gtk_label_new ("Initially sensitive:"), FALSE, FALSE, 0); gtk_box_pack_start (GTK_BOX (box), control, TRUE, TRUE, 0); w = gtk_button_new_with_label ("toggle_sensitivity"); gtk_box_pack_start (GTK_BOX (box), w, FALSE, FALSE, 0); g_signal_connect (GTK_OBJECT (w), "clicked", G_CALLBACK (toggle_sensitive), control); } gtk_box_pack_start (GTK_BOX (box), gtk_hseparator_new (), FALSE, FALSE, 0); gtk_box_pack_start (GTK_BOX (box), gtk_hseparator_new (), FALSE, FALSE, 0); gtk_box_pack_start (GTK_BOX (box), gtk_hseparator_new (), FALSE, FALSE, 0); control = make_inprocess_control (uic); if (control) { GtkWidget *w; gtk_widget_set_sensitive (GTK_WIDGET (control), FALSE); gtk_box_pack_start (GTK_BOX (box), gtk_label_new ("inprocess initially insensitive:"), FALSE, FALSE, 0); gtk_box_pack_start (GTK_BOX (box), control, TRUE, TRUE, 0); w = gtk_button_new_with_label ("toggle_sensitivity"); gtk_box_pack_start (GTK_BOX (box), w, FALSE, FALSE, 0); g_signal_connect (GTK_OBJECT (w), "clicked", G_CALLBACK (toggle_sensitive), control); } gtk_box_pack_start (GTK_BOX (box), gtk_hseparator_new (), FALSE, FALSE, 0); gtk_box_pack_start (GTK_BOX (box), gtk_hseparator_new (), FALSE, FALSE, 0); gtk_box_pack_start (GTK_BOX (box), gtk_hseparator_new (), FALSE, FALSE, 0); control = make_inprocess_control (uic); if (control) { GtkWidget *w; gtk_box_pack_start (GTK_BOX (box), gtk_label_new ("inprocess initially sensitive:"), FALSE, FALSE, 0); gtk_box_pack_start (GTK_BOX (box), control, TRUE, TRUE, 0); w = gtk_button_new_with_label ("toggle_sensitivity"); gtk_box_pack_start (GTK_BOX (box), w, FALSE, FALSE, 0); g_signal_connect (GTK_OBJECT (w), "clicked", G_CALLBACK (toggle_sensitive), control); } gtk_widget_show_all (GTK_WIDGET (window)); return FALSE; } int main (int argc, char **argv) { CORBA_Environment ev; GnomeProgram *program; CORBA_exception_init (&ev); /* Encorage -lefence to play ball */ { char *tmp = malloc (4); if (tmp) free (tmp); } program = gnome_program_init ("test-sensitivity", VERSION, LIBBONOBOUI_MODULE, argc, argv, NULL); /* * We can't make any CORBA calls unless we're in the main * loop. So we delay creating the container here. */ g_idle_add ((GSourceFunc) container_create, NULL); bonobo_main (); g_object_unref (program); return bonobo_ui_debug_shutdown (); } libbonoboui-2.24.5/tests/Makefile.am0000644000076400007640000000170211173072741014241 00000000000000SUBDIRS = control noinst_PROGRAMS = \ test-ui \ test-ui-auto \ test-toolbar \ test-selector \ test-filesel \ test-focus \ test-sensitivity \ test-reparent \ test-events bin_PROGRAMS = \ test-moniker INCLUDES = \ -DGNOMELOCALEDIR=\""$(datadir)/locale"\" \ -I$(top_srcdir) \ -DBONOBO_UI_INTERNAL \ -DBONOBO_UIDIR=\""$(datadir)/gnome/ui/"\" \ -DBONOBO_TOPSRCDIR=\""$(top_srcdir)"\" \ -DG_LOG_DOMAIN=\"Bonobo\" \ -DVERSION=\"$(VERSION)\" \ $(WARN_CFLAGS) \ $(BONOBOUI_CFLAGS) LDADD = $(top_builddir)/bonobo/libbonoboui-2.la $(BONOBOUI_LIBS) test_ui_SOURCES = test-ui.c test_ui_auto_SOURCES = test-ui-auto.c test_focus_SOURCES = test-focus.c test_toolbar_SOURCES = test-toolbar.c test_selector_SOURCES = test-selector.c test_sensitivity_SOURCES = test-sensitivity.c test_reparent_SOURCES = test-reparent.c test_moniker_SOURCES = test-moniker.c test_filesel_SOURCES = test-filesel.c TESTS = test-ui-auto libbonoboui-2.24.5/tests/test-ui-auto.c0000644000076400007640000002463711173072741014725 00000000000000/* * test-ui-auto.c: An automatic Bonobo UI api regression test * * Author: * Michael Meeks (michael@helixcode.com) * * Copyright 2002 Ximian, Inc. */ #undef GTK_DISABLE_DEPRECATED #include #include #include #include #include #include static const char *typical_pixbuf = "000000130000000eA" "0b0c0c000d0e0e001c1b1b00141213020f0e0e04141b1b15111717581319195e171e1e34" "171c1c16080a0a0b060606180a0d0d660d1414910a0f0f71070b0b510406062700000005" "000000001d1f1f09050606190c0c0c1c1d1c1d362626265d3c444490607c7ae5587573fc" "3b4f4fe71b2424be121818990f1616a42a3e3eea507878ff395858fe1e2f30f90c1314c1" "03050532000101011a1c1c4d131717b02e3939b63f4746db636766ff909292ff929696ff" "848d8dff788888ff6f8887ff617c7bff4b6565ff547979ff4b7473ff467271ff477677ff" "264041f20b13146b030707070f12125f3c4a4af5a0cac9ff97bcbbff9cbab9ffaabdbcff" "b5c1c0ffb8c0c0ffb6bbbbffafb1b1ff9f9f9fff868989ff707878ff5e6b6bff516464ff" "3e5c5cff233f3fff0f1c1c90070f0f0c0f13131a303e3dc096c4c3ff8cbbbaff83b1b0ff" "7eacaaff79a5a4ff7ca3a2ff8ba8a8ff9baeaeffa7b5b5ffa8b2b2ffa2a6a6ffa8a7a7ff" "a19d9dff6e7575fe2b4344fa0e202073050d0d08030404082a36366e7ea3a2fc8cbbb9ff" "7ca8a7ff76a3a2ff709e9dff6b9998ff659392ff5b8989ff578383ff588080ff708888ff" "b8bdbdffd2d0d0ff919495ff304142e30818194900050503030404011e2626324a5f5fe8" "89b7b5ff76a2a1ff709d9cff6a9796ff659190ff5e898aff558181ff4e7b7bff467474ff" "486f6fff9fadadffd3d2d2ff797f80ff253132b5010a0b2500000000000000000101011b" "293635be729998ff6f9c9bff6a9695ff64908fff5e8a8aff578383ff4f7a7bff497474ff" "416d6dff396263ff798b8cffafaeaeff575d5ef81b22237e0000000e00000000000000ff" "0203030d1e2626864c6868ff689695ff628e8eff5c8888ff568281ff4f7b7bff477273ff" "416c6dff3a6566ff315b5cff566c6cff7c7e7dff3e4040da1014144c0000000300000000" "00000000050404040c1010572f4242f85d8786ff567f7fff517c7bff4c7877ff467272ff" "3f6a6bff396465ff335e5fff2a5657ff395353ff4d5050fe262626b60304043400000005" "000000010000000004040400040505301d2929c93a5656fd3e6060ff3e6362ff3d6363ff" "3a6162ff355e5fff315a5bff2c5657ff255051ff2b4546ff2e3131f7121111a90000004a" "0000001f0000000800000000000000000405050a11181852182525b51c2d2de41e3131f8" "203636fe233c3dff234243ff234445ff214647ff1e4547ff223b3bff181b1bee040303a9" "0000007300000047000000170000000000000000000101000a0f0f090b1212210a101047" "070c0c7c060b0ba6080f0fc90b1616eb0d1c1cfe0f2222fe102929fe142727ff0b0f0fe3" "000000a00000007f000000570000001d0000000000000000000000000000000000000000" "000000040000000b00000011010202290204035b02040480020505ac020808c8050b0bc3" "030505940000005f0000004a000000300000000f"; static void test_ui_node_attrs (void) { GQuark baa_id; BonoboUINode *node; fprintf (stderr, " attrs ...\n"); node = bonobo_ui_node_new ("foo"); g_assert (node != NULL); g_assert (bonobo_ui_node_has_name (node, "foo")); baa_id = g_quark_from_static_string ("baa"); g_assert ( bonobo_ui_node_try_set_attr (node, baa_id, "baz")); g_assert (!bonobo_ui_node_try_set_attr (node, baa_id, "baz")); g_assert (!strcmp (bonobo_ui_node_get_attr_by_id (node, baa_id), "baz")); bonobo_ui_node_set_attr (node, "A", "A"); bonobo_ui_node_set_attr (node, "A", "B"); g_assert (!strcmp (bonobo_ui_node_peek_attr (node, "A"), "B")); bonobo_ui_node_free (node); } static void test_ui_node_inserts (void) { BonoboUINode *parent, *a, *b; fprintf (stderr, " inserts ...\n"); parent = bonobo_ui_node_new ("parent"); a = bonobo_ui_node_new_child (parent, "a"); g_assert (a->prev == NULL); g_assert (a->next == NULL); g_assert (a->parent == parent); b = bonobo_ui_node_new ("b"); g_assert (b->prev == NULL); g_assert (b->next == NULL); bonobo_ui_node_insert_before (a, b); g_assert (b->prev == NULL); g_assert (b->next == a); g_assert (b->parent == parent); g_assert (a->prev == b); g_assert (a->next == NULL); g_assert (a->parent == parent); bonobo_ui_node_free (parent); } static void test_xml_roundtrip (const char *txt) { char *result; BonoboUINode *node; node = bonobo_ui_node_from_string (txt); g_assert (node != NULL); result = bonobo_ui_node_to_string (node, TRUE); bonobo_ui_node_free (node); if (strcmp (result, txt)) g_error ("'%s' => '%s'", txt, result); bonobo_ui_node_free_string (result); } static void test_ui_node_parsing (void) { fprintf (stderr, " parsing ...\n"); test_xml_roundtrip ("\n"); test_xml_roundtrip ("\n"); test_xml_roundtrip ("\n"); test_xml_roundtrip ("\n"); } static void test_ui_node (void) { fprintf (stderr, "testing BonoboUINode ...\n"); test_ui_node_attrs (); test_ui_node_inserts (); test_ui_node_parsing (); } static void check_prop (BonoboUIEngine *engine, const char *path, const char *value, const char *intended) { CORBA_char *str; str = bonobo_ui_engine_xml_get_prop (engine, path, value, NULL); if (intended) { g_assert (str != NULL); g_assert (!strcmp (str, intended)); CORBA_free (str); } else g_assert (str == NULL); } static void test_engine_misc (CORBA_Environment *ev) { BonoboUINode *node; BonoboUIEngine *engine; fprintf (stderr, " misc ...\n"); engine = bonobo_ui_engine_new (NULL); node = bonobo_ui_node_from_string ( ""); bonobo_ui_engine_xml_merge_tree (engine, "/", node, "A"); bonobo_ui_engine_xml_set_prop (engine, "/Foo", "prop", "B", "B"); check_prop (engine, "/Foo", "prop", "B"); bonobo_ui_engine_xml_rm (engine, "/", "B"); check_prop (engine, "/Foo", "prop", "A"); g_assert (bonobo_ui_engine_node_is_dirty ( engine, bonobo_ui_engine_get_path (engine, "/Foo"))); g_object_unref (engine); } static void test_engine_container (CORBA_Environment *ev) { BonoboUIEngine *engine; BonoboUIContainer *container; BonoboUIContainer *new_container; fprintf (stderr, " UI container association ...\n"); engine = bonobo_ui_engine_new (NULL); container = bonobo_ui_container_new (); new_container = bonobo_ui_container_new (); bonobo_ui_engine_set_ui_container (engine, container); g_assert (engine->priv->container == container); g_assert (bonobo_ui_container_get_engine (container) == engine); bonobo_ui_engine_set_ui_container (engine, new_container); g_assert (engine->priv->container == new_container); g_assert (bonobo_ui_container_get_engine (container) == NULL); g_assert (bonobo_ui_container_get_engine (new_container) == engine); bonobo_object_unref (new_container); bonobo_object_unref (container); g_object_unref (engine); } static void test_engine_default_placeholder (CORBA_Environment *ev) { BonoboUIEngine *engine; CORBA_char *str; BonoboUINode *node; fprintf (stderr, " default placeholders ...\n"); engine = bonobo_ui_engine_new (NULL); node = bonobo_ui_node_from_string ( "" " " " " " " ""); bonobo_ui_engine_xml_merge_tree (engine, "/", node, "A"); node = bonobo_ui_node_from_string (""); bonobo_ui_engine_xml_merge_tree (engine, "/", node, "A"); str = bonobo_ui_engine_xml_get (engine, "/", FALSE); /* g_warning ("foo '%s'", str); */ CORBA_free (str); node = bonobo_ui_engine_get_path (engine, "/fooa"); g_assert (node != NULL); g_assert (node->name_id == g_quark_from_string ("nodea")); g_assert (node->next != NULL); node = node->next; g_assert (node->name_id == g_quark_from_string ("nodeb")); g_assert (node->next != NULL); node = node->next; g_assert (node->name_id == g_quark_from_string ("placeholder")); g_assert (node->next != NULL); node = node->next; g_assert (node->name_id == g_quark_from_string ("nodec")); g_assert (node->next == NULL); g_object_unref (engine); } static void test_ui_engine (CORBA_Environment *ev) { fprintf (stderr, "testing BonoboUIEngine ...\n"); test_engine_misc (ev); test_engine_container (ev); test_engine_default_placeholder (ev); } static void test_ui_performance (CORBA_Environment *ev) { int i; GTimer *timer; BonoboUINode *node; BonoboUIEngine *engine; fprintf (stderr, "performance tests ...\n"); timer = g_timer_new (); g_timer_start (timer); engine = bonobo_ui_engine_new (NULL); node = bonobo_ui_node_from_file (BONOBO_TOPSRCDIR "/doc/std-ui.xml"); if (!node) g_error ("Can't find std-ui.xml"); bonobo_ui_engine_xml_merge_tree (engine, "/", node, "A"); g_timer_reset (timer); for (i = 0; i < 10000; i++) bonobo_ui_engine_xml_set_prop ( engine, "/menu/File/FileOpen", "hidden", (i / 3) % 2 ? "1" : "0", "A"); fprintf (stderr, " set prop item: %g(ns)\n", g_timer_elapsed (timer, NULL) * 100); g_timer_reset (timer); for (i = 0; i < 10000; i++) bonobo_ui_engine_xml_set_prop ( engine, "/menu/File/FileOpen", "hidden", (i / 3) % 2 ? "1" : "0", (i/6) % 2 ? "A" : "B"); fprintf (stderr, " set prop cmd override: %g(ns)\n", g_timer_elapsed (timer, NULL) * 100); g_timer_reset (timer); for (i = 0; i < 1000; i++) { char *str = g_strdup_printf ( "", i % 13); node = bonobo_ui_node_from_string (str); bonobo_ui_engine_xml_merge_tree (engine, "/commands", node, "A"); g_free (str); } fprintf (stderr, " merge command: %g(ns)\n", g_timer_elapsed (timer, NULL) * 1000); g_timer_reset (timer); for (i = 0; i < 1000; i++) { char *str = g_strdup_printf ( "", i % 13, i % 13, typical_pixbuf); node = bonobo_ui_node_from_string (str); bonobo_ui_engine_xml_merge_tree (engine, "/menu", node, "A"); g_free (str); } fprintf (stderr, " merge pixbuf: %g(ns)\n", g_timer_elapsed (timer, NULL) * 1000); g_timer_reset (timer); for (i = 0; i < 10000; i++) { char *path = g_strdup_printf ("/menu/%d", i % 14); g_free (path); } fprintf (stderr, " path lookup: %g(ns)\n", g_timer_elapsed (timer, NULL) * 100); g_object_unref (engine); } int main (int argc, char **argv) { CORBA_Environment *ev, real_ev; GnomeProgram *program; ev = &real_ev; CORBA_exception_init (ev); free (malloc (8)); /* -lefence */ program = gnome_program_init ("test-ui-uao", VERSION, LIBBONOBOUI_MODULE, argc, argv, NULL); bonobo_activate (); test_ui_node (); test_ui_engine (ev); test_ui_performance (ev); CORBA_exception_free (ev); fprintf (stderr, "All tests passed successfully\n"); g_object_unref (program); return bonobo_ui_debug_shutdown (); } libbonoboui-2.24.5/tests/test-toolbar.c0000644000076400007640000000517011173072741014773 00000000000000#undef GTK_DISABLE_DEPRECATED #include #include #include #include #include #include static GtkWidget * prepend_item (BonoboUIToolbar *toolbar, const char *icon_file_name, const char *label, gboolean expandable) { GtkWidget *item; GdkPixbuf *pixbuf; if (icon_file_name) pixbuf = gdk_pixbuf_new_from_file (icon_file_name, NULL); else pixbuf = NULL; item = bonobo_ui_toolbar_button_item_new (pixbuf, label); if (pixbuf) g_object_unref (pixbuf); bonobo_ui_toolbar_insert (toolbar, BONOBO_UI_TOOLBAR_ITEM (item), 0); bonobo_ui_toolbar_item_set_expandable (BONOBO_UI_TOOLBAR_ITEM (item), expandable); gtk_widget_show (item); return item; } int main (int argc, char **argv) { GtkWidget *window; GtkWidget *toolbar; GtkWidget *frame; GtkWidget *item; GnomeProgram *program; /* ElectricFence rules. */ free (malloc (1)); program = gnome_program_init ("test-toolbar", VERSION, LIBBONOBOUI_MODULE, argc, argv, NULL); window = gtk_window_new (GTK_WINDOW_TOPLEVEL); g_signal_connect (window, "destroy", G_CALLBACK (gtk_main_quit), NULL); frame = gtk_frame_new (NULL); gtk_frame_set_shadow_type (GTK_FRAME (frame), GTK_SHADOW_OUT); gtk_widget_show (frame); gtk_container_add (GTK_CONTAINER (window), frame); toolbar = bonobo_ui_toolbar_new (); gtk_widget_show (toolbar); gtk_container_add (GTK_CONTAINER (frame), toolbar); /* bonobo_ui_toolbar_set_orientation (BONOBO_UI_TOOLBAR (toolbar), GTK_ORIENTATION_VERTICAL); */ { /* Test late icon adding */ GtkWidget *image; item = prepend_item (BONOBO_UI_TOOLBAR (toolbar), NULL, "Debian", FALSE); image = gtk_image_new_from_file ("/usr/share/pixmaps/gnome-debian.png"); bonobo_ui_toolbar_button_item_set_image ( BONOBO_UI_TOOLBAR_BUTTON_ITEM (item), image); } { /* Test late label setting */ item = prepend_item (BONOBO_UI_TOOLBAR (toolbar), "/usr/share/pixmaps/gnome-emacs.png", NULL, FALSE); bonobo_ui_toolbar_button_item_set_label ( BONOBO_UI_TOOLBAR_BUTTON_ITEM (item), "Emacs"); } prepend_item (BONOBO_UI_TOOLBAR (toolbar), "/usr/share/pixmaps/apple-green.png", "Green apple", FALSE); prepend_item (BONOBO_UI_TOOLBAR (toolbar), "/usr/share/pixmaps/apple-red.png", "Red apple (exp)", TRUE); prepend_item (BONOBO_UI_TOOLBAR (toolbar), "/usr/share/pixmaps/gnome-applets.png", "Applets", FALSE); prepend_item (BONOBO_UI_TOOLBAR (toolbar), "/usr/share/pixmaps/gnome-gimp.png", "Gimp (exp)", TRUE); gtk_widget_show (window); gtk_main (); g_object_unref (program); return 0; } libbonoboui-2.24.5/tests/test-ui.c0000644000076400007640000004745011173072741013755 00000000000000/* * test-ui.c: A test application to hammer the Bonobo UI api. * * Author: * Michael Meeks (michael@helixcode.com) * * Copyright 2000, 2001 Ximian, Inc. */ #undef GTK_DISABLE_DEPRECATED #include #include #include #include #include #include #include #include #include #include #include #include #include static const char * tame_xpm[] = { "24 24 8 1", " c None", ". c #FFFFFF", "+ c #9E9E9E", "@ c #484848", "# c #131313", "$ c #CFCFCF", "% c #363636", "& c #000000", " ", " ", " ", " ", " ..... ", " ......... ", " ...+@#@+... ", " ..$%&&&&&%$.. ", " ..%&&&&&&&%.. ", " ..+&&&&&&&&&+.. ", " ..@&&&&&&&&&@.. ", " ..#&&&&&&&&&#.. ", " ..@&&&&&&&&&@.. ", " ..+&&&&&&&&&+.. ", " ..%&&&&&&&%.. ", " ..$%&&&&&%$.. ", " ...+@#@+... ", " ......... ", " ..... ", " ", " ", " ", " ", " " }; static BonoboUIComponent *global_component; #define PRINT_PREF(spref, pref) \ fprintf (stderr, "\t" spref " : %s\n", \ bonobo_ui_preferences_get_ ## pref () ? "True" : "False") static void dump_prefs (void) { fprintf (stderr, "--- UI Preferences ---\n"); fprintf (stderr, "Toolbar:\n"); PRINT_PREF ("detachable", toolbar_detachable); fprintf (stderr, "Menus:\n"); PRINT_PREF ("have icons", menus_have_icons); PRINT_PREF ("have tearoff", menus_have_tearoff); fprintf (stderr, "Menubar:\n"); PRINT_PREF ("detachable", menubar_detachable); } #undef PRINT_PREF static void cb_do_quit (GtkWindow *window, gpointer dummy) { bonobo_main_quit (); } #define bonobo_window_dump(w,msg) \ bonobo_ui_engine_dump (bonobo_window_get_ui_engine (w), stderr, msg) static void cb_do_dump (GtkWindow *window, BonoboWindow *win) { bonobo_window_dump (win, "on User input"); } static void cb_do_popup (GtkWindow *window, BonoboWindow *win) { GtkWidget *menu; menu = gtk_menu_new (); bonobo_window_add_popup (win, GTK_MENU (menu), "/popups/MyStuff"); gtk_widget_show (menu); gtk_menu_popup (GTK_MENU (menu), NULL, NULL, NULL, NULL, 3, 0); } static void cb_do_hide_toolbar (GtkWindow *window, BonoboWindow *win) { const char path [] = "/Toolbar"; char *val; val = bonobo_ui_component_get_prop (global_component, path, "hidden", NULL); if (val && atoi (val)) bonobo_ui_component_set_prop (global_component, path, "hidden", "0", NULL); else bonobo_ui_component_set_prop (global_component, path, "hidden", "1", NULL); g_free (val); } static void cb_set_state (GtkEntry *state_entry, GtkEntry *path_entry) { const char *path, *state; char *txt, *str; path = gtk_entry_get_text (path_entry); state = gtk_entry_get_text (state_entry); g_warning ("Set state on '%s' to '%s'", path, state); bonobo_ui_component_set_prop ( global_component, path, "state", state, NULL); txt = bonobo_ui_component_get_prop ( global_component, path, "state", NULL); g_warning ("Re-fetched state was '%s'", txt); str = g_strdup_printf ("The state is now '%s'", txt); bonobo_ui_component_set_status (global_component, str, NULL); g_free (str); g_free (txt); } static void toggled_cb (BonoboUIComponent *component, const char *path, Bonobo_UIComponent_EventType type, const char *state, gpointer user_data) { fprintf (stderr, "toggled to '%s' type '%u' path '%s'\n", state, type, path); } static void disconnect_progress (GtkObject *progress, gpointer dummy) { gtk_timeout_remove (GPOINTER_TO_UINT (dummy)); } static gboolean update_progress (GtkProgressBar *progress) { double pos = gtk_progress_bar_get_fraction (progress); if (pos < 0.95) pos += 0.05; else pos = 0; gtk_progress_bar_set_fraction (progress, pos); return TRUE; } static void slow_size_request (GtkWidget *widget, GtkRequisition *requisition, gpointer user_data) { /* sleep (2);*/ } static void file_exit_cmd (BonoboUIComponent *uic, gpointer user_data, const char *verbname) { exit (0); } static void file_open_cmd (BonoboUIComponent *uic, gpointer user_data, const char *verbname) { g_warning ("File Open"); } static gboolean do_sane_popup (GtkWidget *widget, GdkEventButton *event, BonoboControl *control) { if (event->button == 3) return bonobo_control_do_popup ( control, event->button, event->time); return FALSE; } static BonoboUIVerb verbs [] = { BONOBO_UI_VERB ("FileExit", file_exit_cmd), BONOBO_UI_VERB ("FileOpen", file_open_cmd), BONOBO_UI_VERB_END }; int main (int argc, char **argv) { BonoboWindow *win; BonoboUIComponent *componenta; BonoboUIComponent *componentb; BonoboUIComponent *componentc; BonoboUIContainer *container; Bonobo_UIContainer corba_container; CORBA_Environment real_ev, *ev; GnomeProgram *program; char *txt, *fname; int i; char simplea [] = "\n" " \n" " \n" " \n" " \n" " \n" " \n" " \n" ""; char keysa [] = "\n" " \n" "\n"; char simpleb [] = "\n" " \n" " \n" " \n" " \n" " \n" "\n"; char simplec [] = "\n" " \n" "\n"; char simpled [] = "\n"; char simplee [] = "\n"; char toola [] = "\n" " \n" " \n" " \n" " "; char toolb [] = "\n" " "; /* char statusa [] = "Kippers\n";*/ char statusb [] = "\n" " \n" " \n" ""; ev = &real_ev; CORBA_exception_init (ev); free (malloc (8)); program = gnome_program_init ("test-ui", VERSION, LIBBONOBOUI_MODULE, argc, argv, NULL); textdomain (GETTEXT_PACKAGE); bonobo_activate (); dump_prefs (); win = BONOBO_WINDOW (bonobo_window_new ("Win", "My Test Application")); container = bonobo_window_get_ui_container (win); bonobo_ui_engine_config_set_path (bonobo_window_get_ui_engine (win), "/test-ui/UIConfig/kvps"); corba_container = BONOBO_OBJREF (container); { GtkWidget *box = gtk_vbox_new (FALSE, 0); GtkWidget *button; GtkWidget *path_entry, *state_entry; button = gtk_button_new_with_label ("Press me to test!"); g_signal_connect (GTK_OBJECT (button), "clicked", (GtkSignalFunc) cb_do_quit, NULL); gtk_widget_show (GTK_WIDGET (button)); gtk_box_pack_start_defaults (GTK_BOX (box), button); button = gtk_button_new_with_label ("Dump Xml tree"); g_signal_connect (GTK_OBJECT (button), "clicked", (GtkSignalFunc) cb_do_dump, win); gtk_widget_show (GTK_WIDGET (button)); gtk_box_pack_start_defaults (GTK_BOX (box), button); button = gtk_button_new_with_label ("Popup"); g_signal_connect (GTK_OBJECT (button), "clicked", (GtkSignalFunc) cb_do_popup, win); gtk_widget_show (GTK_WIDGET (button)); gtk_box_pack_start_defaults (GTK_BOX (box), button); button = gtk_button_new_with_label ("Hide toolbar"); g_signal_connect (GTK_OBJECT (button), "clicked", (GtkSignalFunc) cb_do_hide_toolbar, win); gtk_widget_show (GTK_WIDGET (button)); gtk_box_pack_start_defaults (GTK_BOX (box), button); path_entry = gtk_entry_new (); gtk_entry_set_text (GTK_ENTRY (path_entry), "/commands/MyFoo"); gtk_widget_show (GTK_WIDGET (path_entry)); gtk_box_pack_start_defaults (GTK_BOX (box), path_entry); state_entry = gtk_entry_new (); gtk_entry_set_text (GTK_ENTRY (state_entry), "1"); g_signal_connect (GTK_OBJECT (state_entry), "changed", (GtkSignalFunc) cb_set_state, path_entry); gtk_widget_show (GTK_WIDGET (state_entry)); gtk_box_pack_start_defaults (GTK_BOX (box), state_entry); gtk_widget_show (GTK_WIDGET (box)); bonobo_window_set_contents (win, box); } g_signal_connect (GTK_OBJECT (win), "size_request", G_CALLBACK (slow_size_request), NULL); componenta = bonobo_ui_component_new ("A"); bonobo_object_unref (BONOBO_OBJECT (componenta)); componenta = bonobo_ui_component_new ("A"); componentb = bonobo_ui_component_new ("B"); componentc = bonobo_ui_component_new ("C"); bonobo_ui_component_set_container (componenta, corba_container, NULL); bonobo_ui_component_set_container (componentb, corba_container, NULL); bonobo_ui_component_set_container (componentc, corba_container, NULL); global_component = componenta; fname = bonobo_ui_util_get_ui_fname (NULL, "../doc/std-ui.xml"); if (fname && g_file_test (fname, G_FILE_TEST_EXISTS)) { fprintf (stderr, "\n\n--- Add std-ui.xml ---\n\n\n"); bonobo_ui_util_set_ui (componenta, NULL, "../doc/std-ui.xml", "gdm", NULL); /* bonobo_ui_component_set_prop ( componenta, "/menu/Preferences", "pixname", "/demo/a.xpm", NULL);*/ gtk_widget_show (GTK_WIDGET (win)); bonobo_main (); } else { g_warning ("Can't find ../doc/std-ui.xml"); gtk_widget_show (GTK_WIDGET (win)); } g_free (fname); bonobo_ui_component_freeze (componenta, NULL); fprintf (stderr, "\n\n--- Remove A ---\n\n\n"); bonobo_ui_component_rm (componenta, "/", ev); g_assert (!BONOBO_EX (ev)); /* bonobo_ui_component_set_translate (componentb, "/status", statusa, ev); g_assert (!BONOBO_EX (ev));*/ bonobo_ui_component_set_translate (componenta, "/", simplea, ev); g_assert (!BONOBO_EX (ev)); bonobo_ui_component_set_translate (componentb, "/", " ", ev); g_assert (!BONOBO_EX (ev)); bonobo_ui_component_set_translate (componenta, "/popups/MyStuff", simpleb, ev); g_assert (!BONOBO_EX (ev)); bonobo_ui_component_set_translate (componenta, "/", keysa, ev); g_assert (!BONOBO_EX (ev)); bonobo_ui_component_set_translate (componentb, "/", toola, ev); g_assert (!BONOBO_EX (ev)); { GtkWidget *widget = gtk_button_new_with_label ("My Label"); BonoboControl *control = bonobo_control_new (widget); BonoboUIComponent *componentp; g_signal_connect (GTK_OBJECT (widget), "button_press_event", G_CALLBACK (do_sane_popup), control); componentp = bonobo_control_get_popup_ui_component (control); #if 1 bonobo_ui_component_set (componentp, "/", "" "", ev); g_assert (!BONOBO_EX (ev)); bonobo_ui_component_set_translate ( componentp, "/popups/button3", simpleb, ev); g_assert (!BONOBO_EX (ev)); #endif gtk_widget_show (widget); bonobo_ui_component_object_set (componenta, "/menu/File/MyControl", BONOBO_OBJREF (control), ev); bonobo_object_unref (BONOBO_OBJECT (control)); g_assert (!BONOBO_EX (ev)); widget = gtk_menu_item_new_with_mnemonic ("_Foo item"); gtk_widget_show (widget); bonobo_ui_component_widget_set (componenta, "/menu/File/MyControl2", widget, ev); } { GtkWidget *widget = gtk_entry_new (); gtk_entry_set_text (GTK_ENTRY (widget), "Example text"); gtk_widget_show (widget); bonobo_ui_component_widget_set (componenta, "/Toolbar/AControl", widget, ev); g_assert (!BONOBO_EX (ev)); } { GtkWidget *widget; GdkPixbuf *pixbuf = gdk_pixbuf_new_from_xpm_data (tame_xpm); widget = bonobo_ui_toolbar_button_item_new (pixbuf, "Test Control"); gtk_widget_show (widget); bonobo_ui_component_widget_set (componenta, "/Toolbar/BControl", widget, ev); g_assert (!BONOBO_EX (ev)); } bonobo_ui_component_add_listener (componentb, "MyFoo", toggled_cb, ev); g_assert (!BONOBO_EX (ev)); bonobo_ui_component_set_translate (componentb, "/", statusb, ev); g_assert (!BONOBO_EX (ev)); /* Duplicate set */ bonobo_ui_component_set_translate (componenta, "/", simplea, ev); g_assert (!BONOBO_EX (ev)); bonobo_ui_component_add_verb_list_with_data ( componenta, verbs, GUINT_TO_POINTER (15)); bonobo_ui_component_thaw (componenta, ev); g_assert (!BONOBO_EX (ev)); bonobo_ui_component_set_status (componenta, "WhatA1", ev); g_assert (!BONOBO_EX (ev)); bonobo_ui_component_set_status (componenta, "WhatA1", ev); g_assert (!BONOBO_EX (ev)); bonobo_ui_component_set_status (componentb, "WhatB2", ev); g_assert (!BONOBO_EX (ev)); bonobo_ui_component_set_status (componenta, "WhatA3", ev); g_assert (!BONOBO_EX (ev)); bonobo_ui_component_rm (componenta, "/status", ev); g_assert (!BONOBO_EX (ev)); bonobo_ui_component_set_status (componentb, "WhatB4", ev); g_assert (!BONOBO_EX (ev)); bonobo_ui_component_set_status (componenta, "WhatA5", ev); g_assert (!BONOBO_EX (ev)); bonobo_ui_component_set_status (componenta, "WhatA6>", ev); g_assert (!BONOBO_EX (ev)); bonobo_ui_component_set_status (componentb, "WhatB7", ev); g_assert (!BONOBO_EX (ev)); bonobo_ui_component_set_status (componentb, "", ev); g_assert (!BONOBO_EX (ev)); g_assert (bonobo_ui_component_get_prop ( componentb, "/status/main", "non-existant", ev) == NULL); g_assert (!strcmp (BONOBO_EX_REPOID (ev), ex_Bonobo_UIContainer_NonExistentAttr)); CORBA_exception_free (ev); { const char *good = "WhatA6>\n"; txt = bonobo_ui_component_get (componenta, "/status/main", TRUE, NULL); if (!txt || strcmp (txt, good)) { g_warning ("Broken merging code '%s' should be '%s'", txt, good); bonobo_window_dump (win, "on fatal error"); g_assert_not_reached (); } CORBA_free (txt); } bonobo_main (); bonobo_ui_component_freeze (componenta, ev); g_assert (!BONOBO_EX (ev)); bonobo_ui_component_set_translate (componentb, "/menu", simpleb, ev); g_assert (!BONOBO_EX (ev)); bonobo_ui_component_set_translate (componenta, "/", toolb, ev); g_assert (!BONOBO_EX (ev)); bonobo_ui_component_set_prop (componenta, "/menu/File", "label", "_Goo-wan>", ev); g_assert (!BONOBO_EX (ev)); /* A 'transparent' node merge */ txt = bonobo_ui_component_get_prop (componenta, "/Toolbar", "look", ev); g_assert (!BONOBO_EX (ev)); printf ("Before merge look '%s'\n", txt); bonobo_ui_component_set_translate (componenta, "/", "", ev); g_assert (!BONOBO_EX (ev)); g_free (txt); txt = bonobo_ui_component_get_prop (componenta, "/Toolbar", "look", ev); g_assert (!BONOBO_EX (ev)); printf ("After merge look '%s'\n", txt); if (txt == NULL || strcmp (txt, "icon")) g_warning ("Serious transparency regression"); g_free (txt); bonobo_ui_component_set_translate (componenta, "/menu/File/Nice", simplee, ev); g_assert (!BONOBO_EX (ev)); { GtkWidget *widget = gtk_progress_bar_new (); BonoboControl *control = bonobo_control_new (widget); guint id; gtk_widget_show (widget); bonobo_ui_component_object_set (componenta, "/status/Progress", BONOBO_OBJREF (control), NULL); id = gtk_timeout_add (100, (GSourceFunc) update_progress, widget); g_signal_connect (GTK_OBJECT (widget), "destroy", G_CALLBACK (disconnect_progress), GUINT_TO_POINTER (id)); bonobo_object_unref (BONOBO_OBJECT (control)); } bonobo_ui_component_set_status (componenta, "This is a very long status message " "that should cause the window to be resized if " "there is in fact a bug in it", ev); g_assert (!BONOBO_EX (ev)); bonobo_ui_component_thaw (componenta, ev); g_assert (!BONOBO_EX (ev)); bonobo_main (); g_warning ("Begginning stress test, this may take some time ..."); for (i = 0; i < 100; i++) { bonobo_ui_component_freeze (componentc, ev); g_assert (!BONOBO_EX (ev)); bonobo_ui_component_set_translate (componentc, "/commands", "", ev); g_assert (!BONOBO_EX (ev)); bonobo_ui_component_set_translate (componentc, "/menu", simplec, ev); g_assert (!BONOBO_EX (ev)); bonobo_ui_component_set_translate (componentc, "/menu/File", simpled, ev); g_assert (!BONOBO_EX (ev)); bonobo_ui_component_thaw (componentc, ev); g_assert (!BONOBO_EX (ev)); } g_warning ("Done stress test"); bonobo_main (); bonobo_ui_component_freeze (componenta, ev); g_assert (!BONOBO_EX (ev)); fprintf (stderr, "\n\n--- Remove 2 ---\n\n\n"); bonobo_ui_component_rm (componentb, "/", ev); g_assert (!BONOBO_EX (ev)); bonobo_ui_component_set_prop (componentc, "/menu/File/save", "label", "SaveC", ev); g_assert (!BONOBO_EX (ev)); bonobo_ui_component_thaw (componenta, ev); g_assert (!BONOBO_EX (ev)); bonobo_main (); bonobo_ui_component_freeze (componenta, ev); g_assert (!BONOBO_EX (ev)); fprintf (stderr, "\n\n--- Remove 3 ---\n\n\n"); bonobo_ui_component_rm (componentc, "/", ev); g_assert (!BONOBO_EX (ev)); bonobo_ui_component_thaw (componenta, ev); g_assert (!BONOBO_EX (ev)); bonobo_main (); bonobo_ui_component_freeze (componenta, ev); g_assert (!BONOBO_EX (ev)); fprintf (stderr, "\n\n--- Remove 1 ---\n\n\n"); bonobo_ui_component_rm (componenta, "/", ev); g_assert (!BONOBO_EX (ev)); bonobo_ui_component_thaw (componenta, ev); g_assert (!BONOBO_EX (ev)); bonobo_main (); bonobo_object_unref (BONOBO_OBJECT (componenta)); bonobo_object_unref (BONOBO_OBJECT (componentb)); bonobo_object_unref (BONOBO_OBJECT (componentc)); gtk_widget_destroy (GTK_WIDGET (win)); CORBA_exception_free (ev); g_object_unref (program); return bonobo_ui_debug_shutdown (); } libbonoboui-2.24.5/tests/Makefile.in0000664000076400007640000007532611546334701014272 00000000000000# Makefile.in generated by automake 1.11.1 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, # Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY, to the extent permitted by law; without # even the implied warranty of MERCHANTABILITY or FITNESS FOR A # PARTICULAR PURPOSE. @SET_MAKE@ VPATH = @srcdir@ pkgdatadir = $(datadir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ pkglibdir = $(libdir)/@PACKAGE@ pkglibexecdir = $(libexecdir)/@PACKAGE@ am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd install_sh_DATA = $(install_sh) -c -m 644 install_sh_PROGRAM = $(install_sh) -c install_sh_SCRIPT = $(install_sh) -c INSTALL_HEADER = $(INSTALL_DATA) transform = $(program_transform_name) NORMAL_INSTALL = : PRE_INSTALL = : POST_INSTALL = : NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : build_triplet = @build@ host_triplet = @host@ noinst_PROGRAMS = test-ui$(EXEEXT) test-ui-auto$(EXEEXT) \ test-toolbar$(EXEEXT) test-selector$(EXEEXT) \ test-filesel$(EXEEXT) test-focus$(EXEEXT) \ test-sensitivity$(EXEEXT) test-reparent$(EXEEXT) \ test-events$(EXEEXT) bin_PROGRAMS = test-moniker$(EXEEXT) TESTS = test-ui-auto$(EXEEXT) subdir = tests DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/configure.in am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs CONFIG_HEADER = $(top_builddir)/config.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = am__installdirs = "$(DESTDIR)$(bindir)" PROGRAMS = $(bin_PROGRAMS) $(noinst_PROGRAMS) test_events_SOURCES = test-events.c test_events_OBJECTS = test-events.$(OBJEXT) test_events_LDADD = $(LDADD) am__DEPENDENCIES_1 = test_events_DEPENDENCIES = $(top_builddir)/bonobo/libbonoboui-2.la \ $(am__DEPENDENCIES_1) am_test_filesel_OBJECTS = test-filesel.$(OBJEXT) test_filesel_OBJECTS = $(am_test_filesel_OBJECTS) test_filesel_LDADD = $(LDADD) test_filesel_DEPENDENCIES = $(top_builddir)/bonobo/libbonoboui-2.la \ $(am__DEPENDENCIES_1) am_test_focus_OBJECTS = test-focus.$(OBJEXT) test_focus_OBJECTS = $(am_test_focus_OBJECTS) test_focus_LDADD = $(LDADD) test_focus_DEPENDENCIES = $(top_builddir)/bonobo/libbonoboui-2.la \ $(am__DEPENDENCIES_1) am_test_moniker_OBJECTS = test-moniker.$(OBJEXT) test_moniker_OBJECTS = $(am_test_moniker_OBJECTS) test_moniker_LDADD = $(LDADD) test_moniker_DEPENDENCIES = $(top_builddir)/bonobo/libbonoboui-2.la \ $(am__DEPENDENCIES_1) am_test_reparent_OBJECTS = test-reparent.$(OBJEXT) test_reparent_OBJECTS = $(am_test_reparent_OBJECTS) test_reparent_LDADD = $(LDADD) test_reparent_DEPENDENCIES = $(top_builddir)/bonobo/libbonoboui-2.la \ $(am__DEPENDENCIES_1) am_test_selector_OBJECTS = test-selector.$(OBJEXT) test_selector_OBJECTS = $(am_test_selector_OBJECTS) test_selector_LDADD = $(LDADD) test_selector_DEPENDENCIES = $(top_builddir)/bonobo/libbonoboui-2.la \ $(am__DEPENDENCIES_1) am_test_sensitivity_OBJECTS = test-sensitivity.$(OBJEXT) test_sensitivity_OBJECTS = $(am_test_sensitivity_OBJECTS) test_sensitivity_LDADD = $(LDADD) test_sensitivity_DEPENDENCIES = \ $(top_builddir)/bonobo/libbonoboui-2.la $(am__DEPENDENCIES_1) am_test_toolbar_OBJECTS = test-toolbar.$(OBJEXT) test_toolbar_OBJECTS = $(am_test_toolbar_OBJECTS) test_toolbar_LDADD = $(LDADD) test_toolbar_DEPENDENCIES = $(top_builddir)/bonobo/libbonoboui-2.la \ $(am__DEPENDENCIES_1) am_test_ui_OBJECTS = test-ui.$(OBJEXT) test_ui_OBJECTS = $(am_test_ui_OBJECTS) test_ui_LDADD = $(LDADD) test_ui_DEPENDENCIES = $(top_builddir)/bonobo/libbonoboui-2.la \ $(am__DEPENDENCIES_1) am_test_ui_auto_OBJECTS = test-ui-auto.$(OBJEXT) test_ui_auto_OBJECTS = $(am_test_ui_auto_OBJECTS) test_ui_auto_LDADD = $(LDADD) test_ui_auto_DEPENDENCIES = $(top_builddir)/bonobo/libbonoboui-2.la \ $(am__DEPENDENCIES_1) DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir) depcomp = $(SHELL) $(top_srcdir)/depcomp am__depfiles_maybe = depfiles am__mv = mv -f COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) LTCOMPILE = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \ --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) CCLD = $(CC) LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \ --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \ $(LDFLAGS) -o $@ SOURCES = test-events.c $(test_filesel_SOURCES) $(test_focus_SOURCES) \ $(test_moniker_SOURCES) $(test_reparent_SOURCES) \ $(test_selector_SOURCES) $(test_sensitivity_SOURCES) \ $(test_toolbar_SOURCES) $(test_ui_SOURCES) \ $(test_ui_auto_SOURCES) DIST_SOURCES = test-events.c $(test_filesel_SOURCES) \ $(test_focus_SOURCES) $(test_moniker_SOURCES) \ $(test_reparent_SOURCES) $(test_selector_SOURCES) \ $(test_sensitivity_SOURCES) $(test_toolbar_SOURCES) \ $(test_ui_SOURCES) $(test_ui_auto_SOURCES) RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \ html-recursive info-recursive install-data-recursive \ install-dvi-recursive install-exec-recursive \ install-html-recursive install-info-recursive \ install-pdf-recursive install-ps-recursive install-recursive \ installcheck-recursive installdirs-recursive pdf-recursive \ ps-recursive uninstall-recursive RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \ distclean-recursive maintainer-clean-recursive AM_RECURSIVE_TARGETS = $(RECURSIVE_TARGETS:-recursive=) \ $(RECURSIVE_CLEAN_TARGETS:-recursive=) tags TAGS ctags CTAGS \ distdir ETAGS = etags CTAGS = ctags am__tty_colors = \ red=; grn=; lgn=; blu=; std= DIST_SUBDIRS = $(SUBDIRS) DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) am__relativize = \ dir0=`pwd`; \ sed_first='s,^\([^/]*\)/.*$$,\1,'; \ sed_rest='s,^[^/]*/*,,'; \ sed_last='s,^.*/\([^/]*\)$$,\1,'; \ sed_butlast='s,/*[^/]*$$,,'; \ while test -n "$$dir1"; do \ first=`echo "$$dir1" | sed -e "$$sed_first"`; \ if test "$$first" != "."; then \ if test "$$first" = ".."; then \ dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \ dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \ else \ first2=`echo "$$dir2" | sed -e "$$sed_first"`; \ if test "$$first2" = "$$first"; then \ dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \ else \ dir2="../$$dir2"; \ fi; \ dir0="$$dir0"/"$$first"; \ fi; \ fi; \ dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \ done; \ reldir="$$dir2" ACLOCAL = @ACLOCAL@ ACLOCAL_AMFLAGS = @ACLOCAL_AMFLAGS@ ALL_LINGUAS = @ALL_LINGUAS@ AMTAR = @AMTAR@ AR = @AR@ AS = @AS@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ AWK = @AWK@ BONOBOUI_CFLAGS = @BONOBOUI_CFLAGS@ BONOBOUI_GLADE_CFLAGS = @BONOBOUI_GLADE_CFLAGS@ BONOBOUI_GLADE_LIBS = @BONOBOUI_GLADE_LIBS@ BONOBOUI_LIBS = @BONOBOUI_LIBS@ BONOBOUI_SINGLE_INCLUDES = @BONOBOUI_SINGLE_INCLUDES@ CATALOGS = @CATALOGS@ CATOBJEXT = @CATOBJEXT@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ CYGPATH_W = @CYGPATH_W@ DATADIRNAME = @DATADIRNAME@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DUMPBIN = @DUMPBIN@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_MKENUMS = @GLIB_MKENUMS@ GMOFILES = @GMOFILES@ GMSGFMT = @GMSGFMT@ GREP = @GREP@ GTKDOC_CHECK = @GTKDOC_CHECK@ GTKDOC_MKPDF = @GTKDOC_MKPDF@ GTKDOC_REBASE = @GTKDOC_REBASE@ HTML_DIR = @HTML_DIR@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INSTOBJEXT = @INSTOBJEXT@ INTLLIBS = @INTLLIBS@ INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@ INTLTOOL_MERGE = @INTLTOOL_MERGE@ INTLTOOL_PERL = @INTLTOOL_PERL@ INTLTOOL_UPDATE = @INTLTOOL_UPDATE@ LD = @LD@ LDFLAGS = @LDFLAGS@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIPO = @LIPO@ LN_S = @LN_S@ LTLIBOBJS = @LTLIBOBJS@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MKDIR_P = @MKDIR_P@ MKINSTALLDIRS = @MKINSTALLDIRS@ MSGFMT = @MSGFMT@ MSGFMT_OPTS = @MSGFMT_OPTS@ MSGMERGE = @MSGMERGE@ NM = @NM@ NMEDIT = @NMEDIT@ OBJDUMP = @OBJDUMP@ OBJEXT = @OBJEXT@ OTOOL = @OTOOL@ OTOOL64 = @OTOOL64@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_URL = @PACKAGE_URL@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ PATH_TO_XRDB = @PATH_TO_XRDB@ PKG_CONFIG = @PKG_CONFIG@ POFILES = @POFILES@ POPT_LIBS = @POPT_LIBS@ POSUB = @POSUB@ PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@ PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@ RANLIB = @RANLIB@ SED = @SED@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ STRIP = @STRIP@ USE_NLS = @USE_NLS@ VERSION = @VERSION@ WARN_CFLAGS = @WARN_CFLAGS@ XGETTEXT = @XGETTEXT@ XMKMF = @XMKMF@ X_CFLAGS = @X_CFLAGS@ X_EXTRA_LIBS = @X_EXTRA_LIBS@ X_LIBS = @X_LIBS@ X_PRE_LIBS = @X_PRE_LIBS@ YACC = @YACC@ YFLAGS = @YFLAGS@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ abs_top_srcdir = @abs_top_srcdir@ ac_ct_CC = @ac_ct_CC@ ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ am__include = @am__include@ am__leading_dot = @am__leading_dot@ am__quote = @am__quote@ am__tar = @am__tar@ am__untar = @am__untar@ bindir = @bindir@ build = @build@ build_alias = @build_alias@ build_cpu = @build_cpu@ build_os = @build_os@ build_vendor = @build_vendor@ builddir = @builddir@ datadir = @datadir@ datarootdir = @datarootdir@ docdir = @docdir@ dvidir = @dvidir@ exec_prefix = @exec_prefix@ host = @host@ host_alias = @host_alias@ host_cpu = @host_cpu@ host_os = @host_os@ host_vendor = @host_vendor@ htmldir = @htmldir@ includedir = @includedir@ infodir = @infodir@ install_sh = @install_sh@ libdir = @libdir@ libexecdir = @libexecdir@ localedir = @localedir@ localstatedir = @localstatedir@ lt_ECHO = @lt_ECHO@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ sysconfdir = @sysconfdir@ target_alias = @target_alias@ top_build_prefix = @top_build_prefix@ top_builddir = @top_builddir@ top_srcdir = @top_srcdir@ SUBDIRS = control INCLUDES = \ -DGNOMELOCALEDIR=\""$(datadir)/locale"\" \ -I$(top_srcdir) \ -DBONOBO_UI_INTERNAL \ -DBONOBO_UIDIR=\""$(datadir)/gnome/ui/"\" \ -DBONOBO_TOPSRCDIR=\""$(top_srcdir)"\" \ -DG_LOG_DOMAIN=\"Bonobo\" \ -DVERSION=\"$(VERSION)\" \ $(WARN_CFLAGS) \ $(BONOBOUI_CFLAGS) LDADD = $(top_builddir)/bonobo/libbonoboui-2.la $(BONOBOUI_LIBS) test_ui_SOURCES = test-ui.c test_ui_auto_SOURCES = test-ui-auto.c test_focus_SOURCES = test-focus.c test_toolbar_SOURCES = test-toolbar.c test_selector_SOURCES = test-selector.c test_sensitivity_SOURCES = test-sensitivity.c test_reparent_SOURCES = test-reparent.c test_moniker_SOURCES = test-moniker.c test_filesel_SOURCES = test-filesel.c all: all-recursive .SUFFIXES: .SUFFIXES: .c .lo .o .obj $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps) @for dep in $?; do \ case '$(am__configure_deps)' in \ *$$dep*) \ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ && { if test -f $@; then exit 0; else break; fi; }; \ exit 1;; \ esac; \ done; \ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign tests/Makefile'; \ $(am__cd) $(top_srcdir) && \ $(AUTOMAKE) --foreign tests/Makefile .PRECIOUS: Makefile Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status @case '$?' in \ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(am__aclocal_m4_deps): install-binPROGRAMS: $(bin_PROGRAMS) @$(NORMAL_INSTALL) test -z "$(bindir)" || $(MKDIR_P) "$(DESTDIR)$(bindir)" @list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \ for p in $$list; do echo "$$p $$p"; done | \ sed 's/$(EXEEXT)$$//' | \ while read p p1; do if test -f $$p || test -f $$p1; \ then echo "$$p"; echo "$$p"; else :; fi; \ done | \ sed -e 'p;s,.*/,,;n;h' -e 's|.*|.|' \ -e 'p;x;s,.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/' | \ sed 'N;N;N;s,\n, ,g' | \ $(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1 } \ { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \ if ($$2 == $$4) files[d] = files[d] " " $$1; \ else { print "f", $$3 "/" $$4, $$1; } } \ END { for (d in files) print "f", d, files[d] }' | \ while read type dir files; do \ if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \ test -z "$$files" || { \ echo " $(INSTALL_PROGRAM_ENV) $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL_PROGRAM) $$files '$(DESTDIR)$(bindir)$$dir'"; \ $(INSTALL_PROGRAM_ENV) $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL_PROGRAM) $$files "$(DESTDIR)$(bindir)$$dir" || exit $$?; \ } \ ; done uninstall-binPROGRAMS: @$(NORMAL_UNINSTALL) @list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \ files=`for p in $$list; do echo "$$p"; done | \ sed -e 'h;s,^.*/,,;s/$(EXEEXT)$$//;$(transform)' \ -e 's/$$/$(EXEEXT)/' `; \ test -n "$$list" || exit 0; \ echo " ( cd '$(DESTDIR)$(bindir)' && rm -f" $$files ")"; \ cd "$(DESTDIR)$(bindir)" && rm -f $$files clean-binPROGRAMS: @list='$(bin_PROGRAMS)'; test -n "$$list" || exit 0; \ echo " rm -f" $$list; \ rm -f $$list || exit $$?; \ test -n "$(EXEEXT)" || exit 0; \ list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \ echo " rm -f" $$list; \ rm -f $$list clean-noinstPROGRAMS: @list='$(noinst_PROGRAMS)'; test -n "$$list" || exit 0; \ echo " rm -f" $$list; \ rm -f $$list || exit $$?; \ test -n "$(EXEEXT)" || exit 0; \ list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \ echo " rm -f" $$list; \ rm -f $$list test-events$(EXEEXT): $(test_events_OBJECTS) $(test_events_DEPENDENCIES) @rm -f test-events$(EXEEXT) $(LINK) $(test_events_OBJECTS) $(test_events_LDADD) $(LIBS) test-filesel$(EXEEXT): $(test_filesel_OBJECTS) $(test_filesel_DEPENDENCIES) @rm -f test-filesel$(EXEEXT) $(LINK) $(test_filesel_OBJECTS) $(test_filesel_LDADD) $(LIBS) test-focus$(EXEEXT): $(test_focus_OBJECTS) $(test_focus_DEPENDENCIES) @rm -f test-focus$(EXEEXT) $(LINK) $(test_focus_OBJECTS) $(test_focus_LDADD) $(LIBS) test-moniker$(EXEEXT): $(test_moniker_OBJECTS) $(test_moniker_DEPENDENCIES) @rm -f test-moniker$(EXEEXT) $(LINK) $(test_moniker_OBJECTS) $(test_moniker_LDADD) $(LIBS) test-reparent$(EXEEXT): $(test_reparent_OBJECTS) $(test_reparent_DEPENDENCIES) @rm -f test-reparent$(EXEEXT) $(LINK) $(test_reparent_OBJECTS) $(test_reparent_LDADD) $(LIBS) test-selector$(EXEEXT): $(test_selector_OBJECTS) $(test_selector_DEPENDENCIES) @rm -f test-selector$(EXEEXT) $(LINK) $(test_selector_OBJECTS) $(test_selector_LDADD) $(LIBS) test-sensitivity$(EXEEXT): $(test_sensitivity_OBJECTS) $(test_sensitivity_DEPENDENCIES) @rm -f test-sensitivity$(EXEEXT) $(LINK) $(test_sensitivity_OBJECTS) $(test_sensitivity_LDADD) $(LIBS) test-toolbar$(EXEEXT): $(test_toolbar_OBJECTS) $(test_toolbar_DEPENDENCIES) @rm -f test-toolbar$(EXEEXT) $(LINK) $(test_toolbar_OBJECTS) $(test_toolbar_LDADD) $(LIBS) test-ui$(EXEEXT): $(test_ui_OBJECTS) $(test_ui_DEPENDENCIES) @rm -f test-ui$(EXEEXT) $(LINK) $(test_ui_OBJECTS) $(test_ui_LDADD) $(LIBS) test-ui-auto$(EXEEXT): $(test_ui_auto_OBJECTS) $(test_ui_auto_DEPENDENCIES) @rm -f test-ui-auto$(EXEEXT) $(LINK) $(test_ui_auto_OBJECTS) $(test_ui_auto_LDADD) $(LIBS) mostlyclean-compile: -rm -f *.$(OBJEXT) distclean-compile: -rm -f *.tab.c @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-events.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-filesel.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-focus.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-moniker.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-reparent.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-selector.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-sensitivity.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-toolbar.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-ui-auto.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-ui.Po@am__quote@ .c.o: @am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< @am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(COMPILE) -c $< .c.obj: @am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'` @am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(COMPILE) -c `$(CYGPATH_W) '$<'` .c.lo: @am__fastdepCC_TRUE@ $(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< @am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(LTCOMPILE) -c -o $@ $< mostlyclean-libtool: -rm -f *.lo clean-libtool: -rm -rf .libs _libs # This directory's subdirectories are mostly independent; you can cd # into them and run `make' without going through this Makefile. # To change the values of `make' variables: instead of editing Makefiles, # (1) if the variable is set in `config.status', edit `config.status' # (which will cause the Makefiles to be regenerated when you run `make'); # (2) otherwise, pass the desired values on the `make' command line. $(RECURSIVE_TARGETS): @fail= failcom='exit 1'; \ for f in x $$MAKEFLAGS; do \ case $$f in \ *=* | --[!k]*);; \ *k*) failcom='fail=yes';; \ esac; \ done; \ dot_seen=no; \ target=`echo $@ | sed s/-recursive//`; \ list='$(SUBDIRS)'; for subdir in $$list; do \ echo "Making $$target in $$subdir"; \ if test "$$subdir" = "."; then \ dot_seen=yes; \ local_target="$$target-am"; \ else \ local_target="$$target"; \ fi; \ ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ || eval $$failcom; \ done; \ if test "$$dot_seen" = "no"; then \ $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \ fi; test -z "$$fail" $(RECURSIVE_CLEAN_TARGETS): @fail= failcom='exit 1'; \ for f in x $$MAKEFLAGS; do \ case $$f in \ *=* | --[!k]*);; \ *k*) failcom='fail=yes';; \ esac; \ done; \ dot_seen=no; \ case "$@" in \ distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \ *) list='$(SUBDIRS)' ;; \ esac; \ rev=''; for subdir in $$list; do \ if test "$$subdir" = "."; then :; else \ rev="$$subdir $$rev"; \ fi; \ done; \ rev="$$rev ."; \ target=`echo $@ | sed s/-recursive//`; \ for subdir in $$rev; do \ echo "Making $$target in $$subdir"; \ if test "$$subdir" = "."; then \ local_target="$$target-am"; \ else \ local_target="$$target"; \ fi; \ ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ || eval $$failcom; \ done && test -z "$$fail" tags-recursive: list='$(SUBDIRS)'; for subdir in $$list; do \ test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \ done ctags-recursive: list='$(SUBDIRS)'; for subdir in $$list; do \ test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \ done ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ END { if (nonempty) { for (i in files) print i; }; }'`; \ mkid -fID $$unique tags: TAGS TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) set x; \ here=`pwd`; \ if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \ include_option=--etags-include; \ empty_fix=.; \ else \ include_option=--include; \ empty_fix=; \ fi; \ list='$(SUBDIRS)'; for subdir in $$list; do \ if test "$$subdir" = .; then :; else \ test ! -f $$subdir/TAGS || \ set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \ fi; \ done; \ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ END { if (nonempty) { for (i in files) print i; }; }'`; \ shift; \ if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ test -n "$$unique" || unique=$$empty_fix; \ if test $$# -gt 0; then \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ "$$@" $$unique; \ else \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ $$unique; \ fi; \ fi ctags: CTAGS CTAGS: ctags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ END { if (nonempty) { for (i in files) print i; }; }'`; \ test -z "$(CTAGS_ARGS)$$unique" \ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ $$unique GTAGS: here=`$(am__cd) $(top_builddir) && pwd` \ && $(am__cd) $(top_srcdir) \ && gtags -i $(GTAGS_ARGS) "$$here" distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags check-TESTS: $(TESTS) @failed=0; all=0; xfail=0; xpass=0; skip=0; \ srcdir=$(srcdir); export srcdir; \ list=' $(TESTS) '; \ $(am__tty_colors); \ if test -n "$$list"; then \ for tst in $$list; do \ if test -f ./$$tst; then dir=./; \ elif test -f $$tst; then dir=; \ else dir="$(srcdir)/"; fi; \ if $(TESTS_ENVIRONMENT) $${dir}$$tst; then \ all=`expr $$all + 1`; \ case " $(XFAIL_TESTS) " in \ *[\ \ ]$$tst[\ \ ]*) \ xpass=`expr $$xpass + 1`; \ failed=`expr $$failed + 1`; \ col=$$red; res=XPASS; \ ;; \ *) \ col=$$grn; res=PASS; \ ;; \ esac; \ elif test $$? -ne 77; then \ all=`expr $$all + 1`; \ case " $(XFAIL_TESTS) " in \ *[\ \ ]$$tst[\ \ ]*) \ xfail=`expr $$xfail + 1`; \ col=$$lgn; res=XFAIL; \ ;; \ *) \ failed=`expr $$failed + 1`; \ col=$$red; res=FAIL; \ ;; \ esac; \ else \ skip=`expr $$skip + 1`; \ col=$$blu; res=SKIP; \ fi; \ echo "$${col}$$res$${std}: $$tst"; \ done; \ if test "$$all" -eq 1; then \ tests="test"; \ All=""; \ else \ tests="tests"; \ All="All "; \ fi; \ if test "$$failed" -eq 0; then \ if test "$$xfail" -eq 0; then \ banner="$$All$$all $$tests passed"; \ else \ if test "$$xfail" -eq 1; then failures=failure; else failures=failures; fi; \ banner="$$All$$all $$tests behaved as expected ($$xfail expected $$failures)"; \ fi; \ else \ if test "$$xpass" -eq 0; then \ banner="$$failed of $$all $$tests failed"; \ else \ if test "$$xpass" -eq 1; then passes=pass; else passes=passes; fi; \ banner="$$failed of $$all $$tests did not behave as expected ($$xpass unexpected $$passes)"; \ fi; \ fi; \ dashes="$$banner"; \ skipped=""; \ if test "$$skip" -ne 0; then \ if test "$$skip" -eq 1; then \ skipped="($$skip test was not run)"; \ else \ skipped="($$skip tests were not run)"; \ fi; \ test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \ dashes="$$skipped"; \ fi; \ report=""; \ if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \ report="Please report to $(PACKAGE_BUGREPORT)"; \ test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \ dashes="$$report"; \ fi; \ dashes=`echo "$$dashes" | sed s/./=/g`; \ if test "$$failed" -eq 0; then \ echo "$$grn$$dashes"; \ else \ echo "$$red$$dashes"; \ fi; \ echo "$$banner"; \ test -z "$$skipped" || echo "$$skipped"; \ test -z "$$report" || echo "$$report"; \ echo "$$dashes$$std"; \ test "$$failed" -eq 0; \ else :; fi distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ dist_files=`for file in $$list; do echo $$file; done | \ sed -e "s|^$$srcdirstrip/||;t" \ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ case $$dist_files in \ */*) $(MKDIR_P) `echo "$$dist_files" | \ sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ sort -u` ;; \ esac; \ for file in $$dist_files; do \ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ if test -d $$d/$$file; then \ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ if test -d "$(distdir)/$$file"; then \ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ else \ test -f "$(distdir)/$$file" \ || cp -p $$d/$$file "$(distdir)/$$file" \ || exit 1; \ fi; \ done @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \ if test "$$subdir" = .; then :; else \ test -d "$(distdir)/$$subdir" \ || $(MKDIR_P) "$(distdir)/$$subdir" \ || exit 1; \ fi; \ done @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \ if test "$$subdir" = .; then :; else \ dir1=$$subdir; dir2="$(distdir)/$$subdir"; \ $(am__relativize); \ new_distdir=$$reldir; \ dir1=$$subdir; dir2="$(top_distdir)"; \ $(am__relativize); \ new_top_distdir=$$reldir; \ echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \ echo " am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \ ($(am__cd) $$subdir && \ $(MAKE) $(AM_MAKEFLAGS) \ top_distdir="$$new_top_distdir" \ distdir="$$new_distdir" \ am__remove_distdir=: \ am__skip_length_check=: \ am__skip_mode_fix=: \ distdir) \ || exit 1; \ fi; \ done check-am: all-am $(MAKE) $(AM_MAKEFLAGS) check-TESTS check: check-recursive all-am: Makefile $(PROGRAMS) installdirs: installdirs-recursive installdirs-am: for dir in "$(DESTDIR)$(bindir)"; do \ test -z "$$dir" || $(MKDIR_P) "$$dir"; \ done install: install-recursive install-exec: install-exec-recursive install-data: install-data-recursive uninstall: uninstall-recursive install-am: all-am @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am installcheck: installcheck-recursive install-strip: $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ `test -z '$(STRIP)' || \ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install mostlyclean-generic: clean-generic: distclean-generic: -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) maintainer-clean-generic: @echo "This command is intended for maintainers to use" @echo "it deletes files that may require special tools to rebuild." clean: clean-recursive clean-am: clean-binPROGRAMS clean-generic clean-libtool \ clean-noinstPROGRAMS mostlyclean-am distclean: distclean-recursive -rm -rf ./$(DEPDIR) -rm -f Makefile distclean-am: clean-am distclean-compile distclean-generic \ distclean-tags dvi: dvi-recursive dvi-am: html: html-recursive html-am: info: info-recursive info-am: install-data-am: install-dvi: install-dvi-recursive install-dvi-am: install-exec-am: install-binPROGRAMS install-html: install-html-recursive install-html-am: install-info: install-info-recursive install-info-am: install-man: install-pdf: install-pdf-recursive install-pdf-am: install-ps: install-ps-recursive install-ps-am: installcheck-am: maintainer-clean: maintainer-clean-recursive -rm -rf ./$(DEPDIR) -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic mostlyclean: mostlyclean-recursive mostlyclean-am: mostlyclean-compile mostlyclean-generic \ mostlyclean-libtool pdf: pdf-recursive pdf-am: ps: ps-recursive ps-am: uninstall-am: uninstall-binPROGRAMS .MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) check-am \ ctags-recursive install-am install-strip tags-recursive .PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \ all all-am check check-TESTS check-am clean clean-binPROGRAMS \ clean-generic clean-libtool clean-noinstPROGRAMS ctags \ ctags-recursive distclean distclean-compile distclean-generic \ distclean-libtool distclean-tags distdir dvi dvi-am html \ html-am info info-am install install-am install-binPROGRAMS \ install-data install-data-am install-dvi install-dvi-am \ install-exec install-exec-am install-html install-html-am \ install-info install-info-am install-man install-pdf \ install-pdf-am install-ps install-ps-am install-strip \ installcheck installcheck-am installdirs installdirs-am \ maintainer-clean maintainer-clean-generic mostlyclean \ mostlyclean-compile mostlyclean-generic mostlyclean-libtool \ pdf pdf-am ps ps-am tags tags-recursive uninstall uninstall-am \ uninstall-binPROGRAMS # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. .NOEXPORT: libbonoboui-2.24.5/tests/test-selector.c0000644000076400007640000000104111173072741015142 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ #undef GTK_DISABLE_DEPRECATED #include #include int main (int argc, char *argv[]) { GnomeProgram *program; gchar *text; program = gnome_program_init ("bonobo-selector", VERSION, LIBBONOBOUI_MODULE, argc, argv, NULL); text = bonobo_selector_select_id (_("Select an object"), NULL); g_print ("OAFIID: '%s'\n", text ? text : ""); g_free (text); g_object_unref (program); return bonobo_ui_debug_shutdown (); } libbonoboui-2.24.5/tests/test-reparent.c0000644000076400007640000000661311173072741015154 00000000000000/* * Test to check if removing controls is borked * * Authors: * Iain Holmes * Michael Meeks * * Copyright (C) 2001 Ximian, Inc. */ #undef GTK_DISABLE_DEPRECATED #include static gboolean do_remote = TRUE; static gboolean do_local = TRUE; static GtkWidget *window, *vbox, *button, *placeholder1, *placeholder2; static GtkWidget *remote_widget = NULL, *inproc_widget = NULL; #define TEST_OAFIID "OAFIID:Bonobo_Sample_Entry" static gboolean do_add (gpointer data) { if (do_remote) gtk_container_add (GTK_CONTAINER (placeholder1), remote_widget); if (do_local) gtk_container_add (GTK_CONTAINER (placeholder2), inproc_widget); g_print ("Added..............\n"); return FALSE; } static gboolean do_remove (gpointer data) { if (do_remote) { g_object_ref (remote_widget); gtk_container_remove (GTK_CONTAINER (placeholder1), remote_widget); } if (do_local) { g_object_ref (inproc_widget); gtk_container_remove (GTK_CONTAINER (placeholder2), inproc_widget); } g_print ("Removed............\n"); g_timeout_add (100, do_add, NULL); return FALSE; } static void remove_and_add (GtkWidget *click, gpointer useless_user_data) { g_timeout_add (100, do_remove, NULL); } static void make_remote_widget (void) { g_assert (remote_widget == NULL); remote_widget = bonobo_widget_new_control (TEST_OAFIID, CORBA_OBJECT_NIL); gtk_widget_show (remote_widget); gtk_container_add (GTK_CONTAINER (placeholder1), remote_widget); } static void make_inproc_widget (void) { BonoboControl *control; GtkWidget *entry; g_assert (inproc_widget == NULL); entry = gtk_entry_new (); gtk_entry_set_text (GTK_ENTRY (entry), "In-proc"); gtk_widget_show (entry); control = bonobo_control_new (gtk_entry_new ()); bonobo_object_unref (BONOBO_OBJECT (control)); control = bonobo_control_new (entry); inproc_widget = bonobo_widget_new_control_from_objref ( BONOBO_OBJREF (control), CORBA_OBJECT_NIL); bonobo_object_unref (BONOBO_OBJECT (control)); gtk_widget_show (inproc_widget); gtk_container_add (GTK_CONTAINER (placeholder2), inproc_widget); } static gboolean idle_init (gpointer data) { if (do_remote) make_remote_widget (); if (do_local) make_inproc_widget (); return FALSE; } static gboolean quit_cb (GtkWindow *window, GdkEvent *event, gpointer dummy) { if (do_local) gtk_widget_destroy (inproc_widget); bonobo_main_quit (); return TRUE; } int main (int argc, char **argv) { GnomeProgram *program; program = gnome_program_init ("test-reparent", VERSION, LIBBONOBOUI_MODULE, argc, argv, NULL); window = gtk_window_new (GTK_WINDOW_TOPLEVEL); vbox = gtk_vbox_new (FALSE, 0); gtk_container_add (GTK_CONTAINER (window), vbox); g_signal_connect (G_OBJECT (window), "delete_event", G_CALLBACK (quit_cb), NULL); placeholder1 = gtk_frame_new ("Out of proc"); gtk_box_pack_start (GTK_BOX (vbox), placeholder1, TRUE, TRUE, 0); placeholder2 = gtk_frame_new ("In proc"); gtk_box_pack_start (GTK_BOX (vbox), placeholder2, TRUE, TRUE, 0); button = gtk_button_new_with_label ("Remove and add"); gtk_box_pack_start (GTK_BOX (vbox), button, TRUE, TRUE, 0); g_signal_connect (G_OBJECT (button), "clicked", G_CALLBACK (remove_and_add), NULL); gtk_widget_show_all (window); g_timeout_add (0, idle_init, NULL); bonobo_main (); gtk_widget_destroy (window); g_object_unref (program); return bonobo_ui_debug_shutdown (); } libbonoboui-2.24.5/tests/test-focus.c0000644000076400007640000000454211173072741014452 00000000000000/* * test-focus.c: A test application to sort focus issues. * * Author: * Michael Meeks (michael@helixcode.com) * * Copyright 2001 Ximian, Inc. */ #undef GTK_DISABLE_DEPRECATED #include "config.h" #include #include #include #include #include static void clicked_fn (GtkButton *button, GtkWidget *control) { g_signal_handlers_disconnect_matched ( button, G_SIGNAL_MATCH_DATA, 0, 0, NULL, NULL, control); gtk_widget_destroy (control); gtk_widget_destroy (GTK_WIDGET (button)); } static int exit_cb (GtkWidget *widget, gpointer user_data) { gtk_main_quit (); return FALSE; } static void add_control (GtkBox *box) { GtkWidget *tmp, *control; #if 1 control = bonobo_widget_new_control ("OAFIID:Bonobo_Sample_Entry", NULL); #else control = bonobo_widget_new_control ("OAFIID:Nautilus_Text_View", NULL); #endif g_assert (control != NULL); gtk_box_pack_start_defaults (box, control); gtk_widget_show (control); tmp = gtk_button_new_with_label ("Destroy remote control"); g_signal_connect (tmp, "clicked", G_CALLBACK (clicked_fn), control); gtk_box_pack_start_defaults (box, tmp); gtk_widget_show (tmp); } static void add_fn (GtkButton *button, GtkBox *box) { add_control (box); } int main (int argc, char **argv) { GtkWidget *tmp; GtkWidget *window; GtkWidget *vbox; GnomeProgram *program; free (malloc (8)); textdomain (GETTEXT_PACKAGE); program = gnome_program_init ("test-focus", VERSION, LIBBONOBOUI_MODULE, argc, argv, NULL); bonobo_activate (); window = gtk_window_new (GTK_WINDOW_TOPLEVEL); gtk_window_set_title (GTK_WINDOW (window), "Focus test"); g_signal_connect (GTK_OBJECT (window), "delete_event", G_CALLBACK (exit_cb), NULL); vbox = gtk_vbox_new (FALSE, 0); gtk_container_add (GTK_CONTAINER (window), vbox); tmp = gtk_entry_new (); gtk_box_pack_start_defaults (GTK_BOX (vbox), tmp); tmp = gtk_button_new_with_label ("In Container A"); gtk_box_pack_start_defaults (GTK_BOX (vbox), tmp); add_control (GTK_BOX (vbox)); tmp = gtk_button_new_with_label ("add control"); g_signal_connect (tmp, "clicked", G_CALLBACK (add_fn), vbox); gtk_box_pack_start_defaults (GTK_BOX (vbox), tmp); gtk_widget_show_all (window); gtk_main (); g_object_unref (program); return bonobo_ui_debug_shutdown (); } libbonoboui-2.24.5/tests/test-moniker.c0000644000076400007640000002253511173072741015001 00000000000000/* * moniker-test.c: Test program for monikers resolving to various interfaces. * * Authors: * Vladimir Vukicevic (vladimir@ximian.com) * Michael Meeks (michael@ximian.com) * * Based on moniker-control-test.c, by Joe Shaw (joe@ximian.com) * * Copyright (C) 2001, Ximian, Inc. */ #undef GTK_DISABLE_DEPRECATED #ifdef HAVE_CONFIG_H #include #endif #include #include #include static int async_done; typedef enum { AS_NONE = 0, AS_INTERFACE, AS_STREAM, AS_STORAGE_FILE_LIST, AS_CONTROL } MonikerTestDisplayAs; typedef void (*MonikerDisplayFunction) (const char *moniker, CORBA_Environment *ev); typedef struct { MonikerTestDisplayAs disp_as; MonikerDisplayFunction func; } MonikerTestDisplayers; typedef struct { gchar *requested_interface; gchar *requested_moniker; MonikerTestDisplayAs display_as; gchar *moniker; gboolean async, ps, pr, pc; } MonikerTestOptions; static gchar **remaining = NULL; static MonikerTestOptions global_mto = { NULL }; static const GOptionEntry moniker_test_options [] = { { "interface", 'i', 0, G_OPTION_ARG_STRING, &global_mto.requested_interface, "request specific interface", "interface" }, { "async", 'a', 0, G_OPTION_ARG_NONE, &global_mto.async, "request asynchronous operation where possible", NULL }, { "stream", 's', 0, G_OPTION_ARG_NONE, &global_mto.ps, "request Bonobo/Stream", NULL }, { "storage", 'r', 0, G_OPTION_ARG_NONE, &global_mto.pr, "request Bonobo/Storage", NULL }, { "control", 'c', 0, G_OPTION_ARG_NONE, &global_mto.pc, "request Bonobo/Control", NULL }, { G_OPTION_REMAINING, 0, 0, G_OPTION_ARG_STRING_ARRAY, &remaining, "moniker", "moniker" }, { NULL } }; static void display_as_interface (const char *moniker, CORBA_Environment *ev) { Bonobo_Unknown the_unknown; the_unknown = bonobo_get_object (moniker, global_mto.requested_interface, ev); if (ev->_major == CORBA_NO_EXCEPTION && the_unknown) { fprintf (stderr, "Requesting interface %s: SUCCESS\n", global_mto.requested_interface); bonobo_object_release_unref (the_unknown, ev); return; } fprintf (stderr, "Requesting interface: %s: EXCEPTION: %s:%s\n", global_mto.requested_interface, BONOBO_EX_REPOID (ev), bonobo_exception_get_text (ev)); } static void dump_stream (Bonobo_Stream the_stream, CORBA_Environment *ev) { fprintf (stderr, "Writing stream to stdout...\n"); do { Bonobo_Stream_iobuf *stream_iobuf; Bonobo_Stream_read (the_stream, 512, &stream_iobuf, ev); if (BONOBO_EX (ev)) { bonobo_object_release_unref (the_stream, ev); g_error ("got exception %s while reading from stream!", BONOBO_EX_REPOID (ev)); } if (stream_iobuf->_length == 0) { CORBA_free (stream_iobuf); bonobo_object_release_unref (the_stream, ev); return; } fwrite (stream_iobuf->_buffer, stream_iobuf->_length, 1, stdout); CORBA_free (stream_iobuf); } while (1); } static void disp_stream_async_cb (Bonobo_Unknown object, CORBA_Environment *ev, gpointer user_data) { if (BONOBO_EX (ev) || !object) { g_error ("Couldn't get Bonobo/Stream interface '%s'", bonobo_exception_get_text (ev)); } else dump_stream (object, ev); async_done = 1; } static void display_as_stream (const char *moniker, CORBA_Environment *ev) { Bonobo_Stream the_stream; if (global_mto.async) { bonobo_get_object_async (moniker, "IDL:Bonobo/Stream:1.0", ev, disp_stream_async_cb, NULL); if (BONOBO_EX (ev)) g_error ("Couldn't get Bonobo/Stream '%s'", bonobo_exception_get_text (ev)); } else { the_stream = bonobo_get_object (moniker, "IDL:Bonobo/Stream:1.0", ev); if (BONOBO_EX (ev) || !the_stream) { g_error ("Couldn't get Bonobo/Stream interface '%s'", bonobo_exception_get_text (ev)); } dump_stream (the_stream, ev); } } static void display_as_storage_file_list (const char *moniker, CORBA_Environment *ev) { Bonobo_Storage the_storage; Bonobo_Storage_DirectoryList *storage_contents; Bonobo_StorageInfo *bsi; int i; the_storage = bonobo_get_object (moniker, "IDL:Bonobo/Storage:1.0", ev); if (BONOBO_EX (ev) || !the_storage) { g_error ("Couldn't get Bonobo/Storage interface"); } storage_contents = Bonobo_Storage_listContents (the_storage, "", Bonobo_FIELD_CONTENT_TYPE | Bonobo_FIELD_SIZE | Bonobo_FIELD_TYPE, ev); if (!storage_contents || (storage_contents && !storage_contents->_buffer)) { g_error ("got NULL storage_contents!\n"); } bsi = storage_contents->_buffer; printf ("Storage List\n"); printf ("------------\n"); for (i = 0; i < storage_contents->_length; i++) { printf ("% 3d: %20s % 10d %c %15s\n", i, bsi[i].name, bsi[i].size, bsi[i].type == Bonobo_STORAGE_TYPE_DIRECTORY ? 'd' : 'r', bsi[i].content_type); } bonobo_object_release_unref (the_storage, ev); /* how do I free the silly dirlist? */ } static void display_control_async_cb (BonoboWidget *widget, CORBA_Environment *ev, gpointer user_data) { if (BONOBO_EX (ev)) { GtkWidget *label = gtk_label_new ("Failed to activate"); char *err; g_warning ("Exception '%s'", (err = bonobo_exception_get_text (ev))); g_free (err); gtk_widget_destroy (GTK_WIDGET (widget)); bonobo_window_set_contents (BONOBO_WINDOW (user_data), label); } else bonobo_control_frame_control_activate ( bonobo_widget_get_control_frame (BONOBO_WIDGET (widget))); async_done = 1; } static void display_as_control (const char *moniker, CORBA_Environment *ev) { Bonobo_Control the_control; GtkWidget *widget; BonoboUIContainer *ui_container; GtkWidget *window; window = bonobo_window_new ("moniker-test", moniker); ui_container = bonobo_window_get_ui_container (BONOBO_WINDOW (window)); gtk_window_set_default_size (GTK_WINDOW (window), 400, 350); if (global_mto.async) { widget = bonobo_widget_new_control_async ( moniker, BONOBO_OBJREF (ui_container), display_control_async_cb, window); } else { the_control = bonobo_get_object (moniker, "IDL:Bonobo/Control:1.0", ev); if (BONOBO_EX (ev) || !the_control) g_error ("Couldn't get Bonobo/Control interface: '%s'", bonobo_exception_get_text (ev)); widget = bonobo_widget_new_control_from_objref ( the_control, BONOBO_OBJREF (ui_container)); bonobo_object_release_unref (the_control, ev); } if (BONOBO_EX (ev) || !widget) g_error ("Couldn't get a widget from the_control"); if (!global_mto.async) bonobo_control_frame_control_activate ( bonobo_widget_get_control_frame (BONOBO_WIDGET (widget))); bonobo_window_set_contents (BONOBO_WINDOW (window), widget); g_signal_connect (window, "destroy", G_CALLBACK (bonobo_main_quit), NULL); gtk_widget_show_all (window); bonobo_main (); } static MonikerTestDisplayers displayers[] = { { AS_INTERFACE, display_as_interface }, { AS_STREAM, display_as_stream }, { AS_STORAGE_FILE_LIST, display_as_storage_file_list }, { AS_CONTROL, display_as_control }, {0 } }; static void do_moniker_magic (void) { CORBA_Environment ev; MonikerTestDisplayers *iter = displayers; CORBA_exception_init (&ev); while (iter->disp_as) { if (iter->disp_as == global_mto.display_as) { (*iter->func) (global_mto.requested_moniker, &ev); CORBA_exception_free (&ev); return; } iter++; } g_error ("Didn't find handler!"); } int main (int argc, char **argv) { GnomeProgram *program; GOptionContext *context = NULL; free (malloc (8)); /* -lefence */ context = g_option_context_new ("- test-moniker"); g_option_context_add_main_entries (context, moniker_test_options, GETTEXT_PACKAGE); program = gnome_program_init ("- test-moniker", VERSION, LIBBONOBOUI_MODULE, argc, argv, GNOME_PARAM_GOPTION_CONTEXT, context, NULL); if (global_mto.requested_interface) global_mto.display_as = AS_INTERFACE; else if (global_mto.ps) global_mto.display_as = AS_STREAM; else if (global_mto.pr) global_mto.display_as = AS_STORAGE_FILE_LIST; else if (global_mto.pc) global_mto.display_as = AS_CONTROL; else { fprintf (stderr, "%s", g_option_context_get_help (context, TRUE, NULL)); return 1; } if (remaining!=NULL) global_mto.requested_moniker = remaining[0]; if (global_mto.requested_moniker == NULL) { fprintf (stderr, "%s", g_option_context_get_help (context, TRUE, NULL)); return 1; } fprintf (stderr, "Resolving moniker '%s' as ", global_mto.requested_moniker); switch (global_mto.display_as) { case AS_INTERFACE: fprintf (stderr, "%s", global_mto.requested_interface); break; case AS_STREAM: fprintf (stderr, "IDL:Bonobo/Stream:1.0"); break; case AS_STORAGE_FILE_LIST: fprintf (stderr, "IDL:Bonobo/Storage:1.0"); break; case AS_CONTROL: fprintf (stderr, "IDL:Bonobo/Control:1.0"); break; default: fprintf (stderr, "???"); break; } if (global_mto.async) fprintf (stderr, " asynchronously"); fprintf (stderr, "\n"); bonobo_activate (); async_done = 0; do_moniker_magic (); while (global_mto.async && !async_done) g_main_context_iteration (NULL, TRUE); g_object_unref (program); return bonobo_ui_debug_shutdown (); } libbonoboui-2.24.5/COPYING.LIB0000644000076400007640000006347611173072741012523 00000000000000 GNU LESSER GENERAL PUBLIC LICENSE Version 2.1, February 1999 Copyright (C) 1991, 1999 Free Software Foundation, Inc. 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. [This is the first released version of the Lesser GPL. It also counts as the successor of the GNU Library Public License, version 2, hence the version number 2.1.] Preamble The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public Licenses are intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users. This license, the Lesser General Public License, applies to some specially designated software packages--typically libraries--of the Free Software Foundation and other authors who decide to use it. You can use it too, but we suggest you first think carefully about whether this license or the ordinary General Public License is the better strategy to use in any particular case, based on the explanations below. When we speak of free software, we are referring to freedom of use, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish); that you receive source code or can get it if you want it; that you can change the software and use pieces of it in new free programs; and that you are informed that you can do these things. To protect your rights, we need to make restrictions that forbid distributors to deny you these rights or to ask you to surrender these rights. These restrictions translate to certain responsibilities for you if you distribute copies of the library or if you modify it. For example, if you distribute copies of the library, whether gratis or for a fee, you must give the recipients all the rights that we gave you. You must make sure that they, too, receive or can get the source code. If you link other code with the library, you must provide complete object files to the recipients, so that they can relink them with the library after making changes to the library and recompiling it. And you must show them these terms so they know their rights. We protect your rights with a two-step method: (1) we copyright the library, and (2) we offer you this license, which gives you legal permission to copy, distribute and/or modify the library. To protect each distributor, we want to make it very clear that there is no warranty for the free library. Also, if the library is modified by someone else and passed on, the recipients should know that what they have is not the original version, so that the original author's reputation will not be affected by problems that might be introduced by others. Finally, software patents pose a constant threat to the existence of any free program. We wish to make sure that a company cannot effectively restrict the users of a free program by obtaining a restrictive license from a patent holder. Therefore, we insist that any patent license obtained for a version of the library must be consistent with the full freedom of use specified in this license. Most GNU software, including some libraries, is covered by the ordinary GNU General Public License. This license, the GNU Lesser General Public License, applies to certain designated libraries, and is quite different from the ordinary General Public License. We use this license for certain libraries in order to permit linking those libraries into non-free programs. When a program is linked with a library, whether statically or using a shared library, the combination of the two is legally speaking a combined work, a derivative of the original library. The ordinary General Public License therefore permits such linking only if the entire combination fits its criteria of freedom. The Lesser General Public License permits more lax criteria for linking other code with the library. We call this license the "Lesser" General Public License because it does Less to protect the user's freedom than the ordinary General Public License. It also provides other free software developers Less of an advantage over competing non-free programs. These disadvantages are the reason we use the ordinary General Public License for many libraries. However, the Lesser license provides advantages in certain special circumstances. For example, on rare occasions, there may be a special need to encourage the widest possible use of a certain library, so that it becomes a de-facto standard. To achieve this, non-free programs must be allowed to use the library. A more frequent case is that a free library does the same job as widely used non-free libraries. In this case, there is little to gain by limiting the free library to free software only, so we use the Lesser General Public License. In other cases, permission to use a particular library in non-free programs enables a greater number of people to use a large body of free software. For example, permission to use the GNU C Library in non-free programs enables many more people to use the whole GNU operating system, as well as its variant, the GNU/Linux operating system. Although the Lesser General Public License is Less protective of the users' freedom, it does ensure that the user of a program that is linked with the Library has the freedom and the wherewithal to run that program using a modified version of the Library. The precise terms and conditions for copying, distribution and modification follow. Pay close attention to the difference between a "work based on the library" and a "work that uses the library". The former contains code derived from the library, whereas the latter must be combined with the library in order to run. GNU LESSER GENERAL PUBLIC LICENSE TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION 0. This License Agreement applies to any software library or other program which contains a notice placed by the copyright holder or other authorized party saying it may be distributed under the terms of this Lesser General Public License (also called "this License"). Each licensee is addressed as "you". A "library" means a collection of software functions and/or data prepared so as to be conveniently linked with application programs (which use some of those functions and data) to form executables. The "Library", below, refers to any such software library or work which has been distributed under these terms. A "work based on the Library" means either the Library or any derivative work under copyright law: that is to say, a work containing the Library or a portion of it, either verbatim or with modifications and/or translated straightforwardly into another language. (Hereinafter, translation is included without limitation in the term "modification".) "Source code" for a work means the preferred form of the work for making modifications to it. For a library, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the library. Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running a program using the Library is not restricted, and output from such a program is covered only if its contents constitute a work based on the Library (independent of the use of the Library in a tool for writing it). Whether that is true depends on what the Library does and what the program that uses the Library does. 1. You may copy and distribute verbatim copies of the Library's complete source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and distribute a copy of this License along with the Library. You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee. 2. You may modify your copy or copies of the Library or any portion of it, thus forming a work based on the Library, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions: a) The modified work must itself be a software library. b) You must cause the files modified to carry prominent notices stating that you changed the files and the date of any change. c) You must cause the whole of the work to be licensed at no charge to all third parties under the terms of this License. d) If a facility in the modified Library refers to a function or a table of data to be supplied by an application program that uses the facility, other than as an argument passed when the facility is invoked, then you must make a good faith effort to ensure that, in the event an application does not supply such function or table, the facility still operates, and performs whatever part of its purpose remains meaningful. (For example, a function in a library to compute square roots has a purpose that is entirely well-defined independent of the application. Therefore, Subsection 2d requires that any application-supplied function or table used by this function must be optional: if the application does not supply it, the square root function must still compute square roots.) These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Library, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Library, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it. Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Library. In addition, mere aggregation of another work not based on the Library with the Library (or with a work based on the Library) on a volume of a storage or distribution medium does not bring the other work under the scope of this License. 3. You may opt to apply the terms of the ordinary GNU General Public License instead of this License to a given copy of the Library. To do this, you must alter all the notices that refer to this License, so that they refer to the ordinary GNU General Public License, version 2, instead of to this License. (If a newer version than version 2 of the ordinary GNU General Public License has appeared, then you can specify that version instead if you wish.) Do not make any other change in these notices. Once this change is made in a given copy, it is irreversible for that copy, so the ordinary GNU General Public License applies to all subsequent copies and derivative works made from that copy. This option is useful when you wish to copy part of the code of the Library into a program that is not a library. 4. You may copy and distribute the Library (or a portion or derivative of it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange. If distribution of object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place satisfies the requirement to distribute the source code, even though third parties are not compelled to copy the source along with the object code. 5. A program that contains no derivative of any portion of the Library, but is designed to work with the Library by being compiled or linked with it, is called a "work that uses the Library". Such a work, in isolation, is not a derivative work of the Library, and therefore falls outside the scope of this License. However, linking a "work that uses the Library" with the Library creates an executable that is a derivative of the Library (because it contains portions of the Library), rather than a "work that uses the library". The executable is therefore covered by this License. Section 6 states terms for distribution of such executables. When a "work that uses the Library" uses material from a header file that is part of the Library, the object code for the work may be a derivative work of the Library even though the source code is not. Whether this is true is especially significant if the work can be linked without the Library, or if the work is itself a library. The threshold for this to be true is not precisely defined by law. If such an object file uses only numerical parameters, data structure layouts and accessors, and small macros and small inline functions (ten lines or less in length), then the use of the object file is unrestricted, regardless of whether it is legally a derivative work. (Executables containing this object code plus portions of the Library will still fall under Section 6.) Otherwise, if the work is a derivative of the Library, you may distribute the object code for the work under the terms of Section 6. Any executables containing that work also fall under Section 6, whether or not they are linked directly with the Library itself. 6. As an exception to the Sections above, you may also combine or link a "work that uses the Library" with the Library to produce a work containing portions of the Library, and distribute that work under terms of your choice, provided that the terms permit modification of the work for the customer's own use and reverse engineering for debugging such modifications. You must give prominent notice with each copy of the work that the Library is used in it and that the Library and its use are covered by this License. You must supply a copy of this License. If the work during execution displays copyright notices, you must include the copyright notice for the Library among them, as well as a reference directing the user to the copy of this License. Also, you must do one of these things: a) Accompany the work with the complete corresponding machine-readable source code for the Library including whatever changes were used in the work (which must be distributed under Sections 1 and 2 above); and, if the work is an executable linked with the Library, with the complete machine-readable "work that uses the Library", as object code and/or source code, so that the user can modify the Library and then relink to produce a modified executable containing the modified Library. (It is understood that the user who changes the contents of definitions files in the Library will not necessarily be able to recompile the application to use the modified definitions.) b) Use a suitable shared library mechanism for linking with the Library. A suitable mechanism is one that (1) uses at run time a copy of the library already present on the user's computer system, rather than copying library functions into the executable, and (2) will operate properly with a modified version of the library, if the user installs one, as long as the modified version is interface-compatible with the version that the work was made with. c) Accompany the work with a written offer, valid for at least three years, to give the same user the materials specified in Subsection 6a, above, for a charge no more than the cost of performing this distribution. d) If distribution of the work is made by offering access to copy from a designated place, offer equivalent access to copy the above specified materials from the same place. e) Verify that the user has already received a copy of these materials or that you have already sent this user a copy. For an executable, the required form of the "work that uses the Library" must include any data and utility programs needed for reproducing the executable from it. However, as a special exception, the materials to be distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable. It may happen that this requirement contradicts the license restrictions of other proprietary libraries that do not normally accompany the operating system. Such a contradiction means you cannot use both them and the Library together in an executable that you distribute. 7. You may place library facilities that are a work based on the Library side-by-side in a single library together with other library facilities not covered by this License, and distribute such a combined library, provided that the separate distribution of the work based on the Library and of the other library facilities is otherwise permitted, and provided that you do these two things: a) Accompany the combined library with a copy of the same work based on the Library, uncombined with any other library facilities. This must be distributed under the terms of the Sections above. b) Give prominent notice with the combined library of the fact that part of it is a work based on the Library, and explaining where to find the accompanying uncombined form of the same work. 8. You may not copy, modify, sublicense, link with, or distribute the Library except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense, link with, or distribute the Library is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance. 9. You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Library or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Library (or any work based on the Library), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Library or works based on it. 10. Each time you redistribute the Library (or any work based on the Library), the recipient automatically receives a license from the original licensor to copy, distribute, link with or modify the Library subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties with this License. 11. If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Library at all. For example, if a patent license would not permit royalty-free redistribution of the Library by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Library. If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply, and the section as a whole is intended to apply in other circumstances. It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice. This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License. 12. If the distribution and/or use of the Library is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Library under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License. 13. The Free Software Foundation may publish revised and/or new versions of the Lesser General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. Each version is given a distinguishing version number. If the Library specifies a version number of this License which applies to it and "any later version", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Library does not specify a license version number, you may choose any version ever published by the Free Software Foundation. 14. If you wish to incorporate parts of the Library into other free programs whose distribution conditions are incompatible with these, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally. NO WARRANTY 15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. 16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. END OF TERMS AND CONDITIONS How to Apply These Terms to Your New Libraries If you develop a new library, and you want it to be of the greatest possible use to the public, we recommend making it free software that everyone can redistribute and change. You can do so by permitting redistribution under these terms (or, alternatively, under the terms of the ordinary General Public License). To apply these terms, attach the following notices to the library. It is safest to attach them to the start of each source file to most effectively convey the exclusion of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found. Copyright (C) This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version. This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public License along with this library; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA Also add information on how to contact you by electronic and paper mail. You should also get your employer (if you work as a programmer) or your school, if any, to sign a "copyright disclaimer" for the library, if necessary. Here is a sample; alter the names: Yoyodyne, Inc., hereby disclaims all copyright interest in the library `Frob' (a library for tweaking knobs) written by James Random Hacker. , 1 April 1990 Ty Coon, President of Vice That's all there is to it! libbonoboui-2.24.5/config.sub0000755000076400007640000010316711546334700013036 00000000000000#! /bin/sh # Configuration validation subroutine script. # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, # 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009 # Free Software Foundation, Inc. timestamp='2009-11-20' # This file is (in principle) common to ALL GNU software. # The presence of a machine in this file suggests that SOME GNU software # can handle that machine. It does not imply ALL GNU software can. # # This file is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software # Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA # 02110-1301, USA. # # As a special exception to the GNU General Public License, if you # distribute this file as part of a program that contains a # configuration script generated by Autoconf, you may include it under # the same distribution terms that you use for the rest of that program. # Please send patches to . Submit a context # diff and a properly formatted GNU ChangeLog entry. # # Configuration subroutine to validate and canonicalize a configuration type. # Supply the specified configuration type as an argument. # If it is invalid, we print an error message on stderr and exit with code 1. # Otherwise, we print the canonical config type on stdout and succeed. # You can get the latest version of this script from: # http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD # This file is supposed to be the same for all GNU packages # and recognize all the CPU types, system types and aliases # that are meaningful with *any* GNU software. # Each package is responsible for reporting which valid configurations # it does not support. The user should be able to distinguish # a failure to support a valid configuration from a meaningless # configuration. # The goal of this file is to map all the various variations of a given # machine specification into a single specification in the form: # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM # or in some cases, the newer four-part form: # CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM # It is wrong to echo any other type of specification. me=`echo "$0" | sed -e 's,.*/,,'` usage="\ Usage: $0 [OPTION] CPU-MFR-OPSYS $0 [OPTION] ALIAS Canonicalize a configuration name. Operation modes: -h, --help print this help, then exit -t, --time-stamp print date of last modification, then exit -v, --version print version number, then exit Report bugs and patches to ." version="\ GNU config.sub ($timestamp) Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." help=" Try \`$me --help' for more information." # Parse command line while test $# -gt 0 ; do case $1 in --time-stamp | --time* | -t ) echo "$timestamp" ; exit ;; --version | -v ) echo "$version" ; exit ;; --help | --h* | -h ) echo "$usage"; exit ;; -- ) # Stop option processing shift; break ;; - ) # Use stdin as input. break ;; -* ) echo "$me: invalid option $1$help" exit 1 ;; *local*) # First pass through any local machine types. echo $1 exit ;; * ) break ;; esac done case $# in 0) echo "$me: missing argument$help" >&2 exit 1;; 1) ;; *) echo "$me: too many arguments$help" >&2 exit 1;; esac # Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any). # Here we must recognize all the valid KERNEL-OS combinations. maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'` case $maybe_os in nto-qnx* | linux-gnu* | linux-dietlibc | linux-newlib* | linux-uclibc* | \ uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* | \ kopensolaris*-gnu* | \ storm-chaos* | os2-emx* | rtmk-nova*) os=-$maybe_os basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'` ;; *) basic_machine=`echo $1 | sed 's/-[^-]*$//'` if [ $basic_machine != $1 ] then os=`echo $1 | sed 's/.*-/-/'` else os=; fi ;; esac ### Let's recognize common machines as not being operating systems so ### that things like config.sub decstation-3100 work. We also ### recognize some manufacturers as not being operating systems, so we ### can provide default operating systems below. case $os in -sun*os*) # Prevent following clause from handling this invalid input. ;; -dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \ -att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \ -unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \ -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\ -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \ -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \ -apple | -axis | -knuth | -cray | -microblaze) os= basic_machine=$1 ;; -bluegene*) os=-cnk ;; -sim | -cisco | -oki | -wec | -winbond) os= basic_machine=$1 ;; -scout) ;; -wrs) os=-vxworks basic_machine=$1 ;; -chorusos*) os=-chorusos basic_machine=$1 ;; -chorusrdb) os=-chorusrdb basic_machine=$1 ;; -hiux*) os=-hiuxwe2 ;; -sco6) os=-sco5v6 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` ;; -sco5) os=-sco3.2v5 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` ;; -sco4) os=-sco3.2v4 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` ;; -sco3.2.[4-9]*) os=`echo $os | sed -e 's/sco3.2./sco3.2v/'` basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` ;; -sco3.2v[4-9]*) # Don't forget version if it is 3.2v4 or newer. basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` ;; -sco5v6*) # Don't forget version if it is 3.2v4 or newer. basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` ;; -sco*) os=-sco3.2v2 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` ;; -udk*) basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` ;; -isc) os=-isc2.2 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` ;; -clix*) basic_machine=clipper-intergraph ;; -isc*) basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` ;; -lynx*) os=-lynxos ;; -ptx*) basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'` ;; -windowsnt*) os=`echo $os | sed -e 's/windowsnt/winnt/'` ;; -psos*) os=-psos ;; -mint | -mint[0-9]*) basic_machine=m68k-atari os=-mint ;; esac # Decode aliases for certain CPU-COMPANY combinations. case $basic_machine in # Recognize the basic CPU types without company name. # Some are omitted here because they have special meanings below. 1750a | 580 \ | a29k \ | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \ | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \ | am33_2.0 \ | arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr | avr32 \ | bfin \ | c4x | clipper \ | d10v | d30v | dlx | dsp16xx \ | fido | fr30 | frv \ | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \ | i370 | i860 | i960 | ia64 \ | ip2k | iq2000 \ | lm32 \ | m32c | m32r | m32rle | m68000 | m68k | m88k \ | maxq | mb | microblaze | mcore | mep | metag \ | mips | mipsbe | mipseb | mipsel | mipsle \ | mips16 \ | mips64 | mips64el \ | mips64octeon | mips64octeonel \ | mips64orion | mips64orionel \ | mips64r5900 | mips64r5900el \ | mips64vr | mips64vrel \ | mips64vr4100 | mips64vr4100el \ | mips64vr4300 | mips64vr4300el \ | mips64vr5000 | mips64vr5000el \ | mips64vr5900 | mips64vr5900el \ | mipsisa32 | mipsisa32el \ | mipsisa32r2 | mipsisa32r2el \ | mipsisa64 | mipsisa64el \ | mipsisa64r2 | mipsisa64r2el \ | mipsisa64sb1 | mipsisa64sb1el \ | mipsisa64sr71k | mipsisa64sr71kel \ | mipstx39 | mipstx39el \ | mn10200 | mn10300 \ | moxie \ | mt \ | msp430 \ | nios | nios2 \ | ns16k | ns32k \ | or32 \ | pdp10 | pdp11 | pj | pjl \ | powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \ | pyramid \ | rx \ | score \ | sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \ | sh64 | sh64le \ | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \ | sparcv8 | sparcv9 | sparcv9b | sparcv9v \ | spu | strongarm \ | tahoe | thumb | tic4x | tic80 | tron \ | ubicom32 \ | v850 | v850e \ | we32k \ | x86 | xc16x | xscale | xscalee[bl] | xstormy16 | xtensa \ | z8k | z80) basic_machine=$basic_machine-unknown ;; m6811 | m68hc11 | m6812 | m68hc12 | picochip) # Motorola 68HC11/12. basic_machine=$basic_machine-unknown os=-none ;; m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k) ;; ms1) basic_machine=mt-unknown ;; # We use `pc' rather than `unknown' # because (1) that's what they normally are, and # (2) the word "unknown" tends to confuse beginning users. i*86 | x86_64) basic_machine=$basic_machine-pc ;; # Object if more than one company name word. *-*-*) echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 exit 1 ;; # Recognize the basic CPU types with company name. 580-* \ | a29k-* \ | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \ | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \ | alphapca5[67]-* | alpha64pca5[67]-* | arc-* \ | arm-* | armbe-* | armle-* | armeb-* | armv*-* \ | avr-* | avr32-* \ | bfin-* | bs2000-* \ | c[123]* | c30-* | [cjt]90-* | c4x-* | c54x-* | c55x-* | c6x-* \ | clipper-* | craynv-* | cydra-* \ | d10v-* | d30v-* | dlx-* \ | elxsi-* \ | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \ | h8300-* | h8500-* \ | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \ | i*86-* | i860-* | i960-* | ia64-* \ | ip2k-* | iq2000-* \ | lm32-* \ | m32c-* | m32r-* | m32rle-* \ | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \ | m88110-* | m88k-* | maxq-* | mcore-* | metag-* | microblaze-* \ | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \ | mips16-* \ | mips64-* | mips64el-* \ | mips64octeon-* | mips64octeonel-* \ | mips64orion-* | mips64orionel-* \ | mips64r5900-* | mips64r5900el-* \ | mips64vr-* | mips64vrel-* \ | mips64vr4100-* | mips64vr4100el-* \ | mips64vr4300-* | mips64vr4300el-* \ | mips64vr5000-* | mips64vr5000el-* \ | mips64vr5900-* | mips64vr5900el-* \ | mipsisa32-* | mipsisa32el-* \ | mipsisa32r2-* | mipsisa32r2el-* \ | mipsisa64-* | mipsisa64el-* \ | mipsisa64r2-* | mipsisa64r2el-* \ | mipsisa64sb1-* | mipsisa64sb1el-* \ | mipsisa64sr71k-* | mipsisa64sr71kel-* \ | mipstx39-* | mipstx39el-* \ | mmix-* \ | mt-* \ | msp430-* \ | nios-* | nios2-* \ | none-* | np1-* | ns16k-* | ns32k-* \ | orion-* \ | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \ | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \ | pyramid-* \ | romp-* | rs6000-* | rx-* \ | sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \ | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \ | sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \ | sparclite-* \ | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | strongarm-* | sv1-* | sx?-* \ | tahoe-* | thumb-* \ | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* | tile-* \ | tron-* \ | ubicom32-* \ | v850-* | v850e-* | vax-* \ | we32k-* \ | x86-* | x86_64-* | xc16x-* | xps100-* | xscale-* | xscalee[bl]-* \ | xstormy16-* | xtensa*-* \ | ymp-* \ | z8k-* | z80-*) ;; # Recognize the basic CPU types without company name, with glob match. xtensa*) basic_machine=$basic_machine-unknown ;; # Recognize the various machine names and aliases which stand # for a CPU type and a company and sometimes even an OS. 386bsd) basic_machine=i386-unknown os=-bsd ;; 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc) basic_machine=m68000-att ;; 3b*) basic_machine=we32k-att ;; a29khif) basic_machine=a29k-amd os=-udi ;; abacus) basic_machine=abacus-unknown ;; adobe68k) basic_machine=m68010-adobe os=-scout ;; alliant | fx80) basic_machine=fx80-alliant ;; altos | altos3068) basic_machine=m68k-altos ;; am29k) basic_machine=a29k-none os=-bsd ;; amd64) basic_machine=x86_64-pc ;; amd64-*) basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'` ;; amdahl) basic_machine=580-amdahl os=-sysv ;; amiga | amiga-*) basic_machine=m68k-unknown ;; amigaos | amigados) basic_machine=m68k-unknown os=-amigaos ;; amigaunix | amix) basic_machine=m68k-unknown os=-sysv4 ;; apollo68) basic_machine=m68k-apollo os=-sysv ;; apollo68bsd) basic_machine=m68k-apollo os=-bsd ;; aros) basic_machine=i386-pc os=-aros ;; aux) basic_machine=m68k-apple os=-aux ;; balance) basic_machine=ns32k-sequent os=-dynix ;; blackfin) basic_machine=bfin-unknown os=-linux ;; blackfin-*) basic_machine=bfin-`echo $basic_machine | sed 's/^[^-]*-//'` os=-linux ;; bluegene*) basic_machine=powerpc-ibm os=-cnk ;; c90) basic_machine=c90-cray os=-unicos ;; cegcc) basic_machine=arm-unknown os=-cegcc ;; convex-c1) basic_machine=c1-convex os=-bsd ;; convex-c2) basic_machine=c2-convex os=-bsd ;; convex-c32) basic_machine=c32-convex os=-bsd ;; convex-c34) basic_machine=c34-convex os=-bsd ;; convex-c38) basic_machine=c38-convex os=-bsd ;; cray | j90) basic_machine=j90-cray os=-unicos ;; craynv) basic_machine=craynv-cray os=-unicosmp ;; cr16) basic_machine=cr16-unknown os=-elf ;; crds | unos) basic_machine=m68k-crds ;; crisv32 | crisv32-* | etraxfs*) basic_machine=crisv32-axis ;; cris | cris-* | etrax*) basic_machine=cris-axis ;; crx) basic_machine=crx-unknown os=-elf ;; da30 | da30-*) basic_machine=m68k-da30 ;; decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn) basic_machine=mips-dec ;; decsystem10* | dec10*) basic_machine=pdp10-dec os=-tops10 ;; decsystem20* | dec20*) basic_machine=pdp10-dec os=-tops20 ;; delta | 3300 | motorola-3300 | motorola-delta \ | 3300-motorola | delta-motorola) basic_machine=m68k-motorola ;; delta88) basic_machine=m88k-motorola os=-sysv3 ;; dicos) basic_machine=i686-pc os=-dicos ;; djgpp) basic_machine=i586-pc os=-msdosdjgpp ;; dpx20 | dpx20-*) basic_machine=rs6000-bull os=-bosx ;; dpx2* | dpx2*-bull) basic_machine=m68k-bull os=-sysv3 ;; ebmon29k) basic_machine=a29k-amd os=-ebmon ;; elxsi) basic_machine=elxsi-elxsi os=-bsd ;; encore | umax | mmax) basic_machine=ns32k-encore ;; es1800 | OSE68k | ose68k | ose | OSE) basic_machine=m68k-ericsson os=-ose ;; fx2800) basic_machine=i860-alliant ;; genix) basic_machine=ns32k-ns ;; gmicro) basic_machine=tron-gmicro os=-sysv ;; go32) basic_machine=i386-pc os=-go32 ;; h3050r* | hiux*) basic_machine=hppa1.1-hitachi os=-hiuxwe2 ;; h8300hms) basic_machine=h8300-hitachi os=-hms ;; h8300xray) basic_machine=h8300-hitachi os=-xray ;; h8500hms) basic_machine=h8500-hitachi os=-hms ;; harris) basic_machine=m88k-harris os=-sysv3 ;; hp300-*) basic_machine=m68k-hp ;; hp300bsd) basic_machine=m68k-hp os=-bsd ;; hp300hpux) basic_machine=m68k-hp os=-hpux ;; hp3k9[0-9][0-9] | hp9[0-9][0-9]) basic_machine=hppa1.0-hp ;; hp9k2[0-9][0-9] | hp9k31[0-9]) basic_machine=m68000-hp ;; hp9k3[2-9][0-9]) basic_machine=m68k-hp ;; hp9k6[0-9][0-9] | hp6[0-9][0-9]) basic_machine=hppa1.0-hp ;; hp9k7[0-79][0-9] | hp7[0-79][0-9]) basic_machine=hppa1.1-hp ;; hp9k78[0-9] | hp78[0-9]) # FIXME: really hppa2.0-hp basic_machine=hppa1.1-hp ;; hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893) # FIXME: really hppa2.0-hp basic_machine=hppa1.1-hp ;; hp9k8[0-9][13679] | hp8[0-9][13679]) basic_machine=hppa1.1-hp ;; hp9k8[0-9][0-9] | hp8[0-9][0-9]) basic_machine=hppa1.0-hp ;; hppa-next) os=-nextstep3 ;; hppaosf) basic_machine=hppa1.1-hp os=-osf ;; hppro) basic_machine=hppa1.1-hp os=-proelf ;; i370-ibm* | ibm*) basic_machine=i370-ibm ;; # I'm not sure what "Sysv32" means. Should this be sysv3.2? i*86v32) basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` os=-sysv32 ;; i*86v4*) basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` os=-sysv4 ;; i*86v) basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` os=-sysv ;; i*86sol2) basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` os=-solaris2 ;; i386mach) basic_machine=i386-mach os=-mach ;; i386-vsta | vsta) basic_machine=i386-unknown os=-vsta ;; iris | iris4d) basic_machine=mips-sgi case $os in -irix*) ;; *) os=-irix4 ;; esac ;; isi68 | isi) basic_machine=m68k-isi os=-sysv ;; m68knommu) basic_machine=m68k-unknown os=-linux ;; m68knommu-*) basic_machine=m68k-`echo $basic_machine | sed 's/^[^-]*-//'` os=-linux ;; m88k-omron*) basic_machine=m88k-omron ;; magnum | m3230) basic_machine=mips-mips os=-sysv ;; merlin) basic_machine=ns32k-utek os=-sysv ;; microblaze) basic_machine=microblaze-xilinx ;; mingw32) basic_machine=i386-pc os=-mingw32 ;; mingw32ce) basic_machine=arm-unknown os=-mingw32ce ;; miniframe) basic_machine=m68000-convergent ;; *mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*) basic_machine=m68k-atari os=-mint ;; mips3*-*) basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'` ;; mips3*) basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown ;; monitor) basic_machine=m68k-rom68k os=-coff ;; morphos) basic_machine=powerpc-unknown os=-morphos ;; msdos) basic_machine=i386-pc os=-msdos ;; ms1-*) basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'` ;; mvs) basic_machine=i370-ibm os=-mvs ;; ncr3000) basic_machine=i486-ncr os=-sysv4 ;; netbsd386) basic_machine=i386-unknown os=-netbsd ;; netwinder) basic_machine=armv4l-rebel os=-linux ;; news | news700 | news800 | news900) basic_machine=m68k-sony os=-newsos ;; news1000) basic_machine=m68030-sony os=-newsos ;; news-3600 | risc-news) basic_machine=mips-sony os=-newsos ;; necv70) basic_machine=v70-nec os=-sysv ;; next | m*-next ) basic_machine=m68k-next case $os in -nextstep* ) ;; -ns2*) os=-nextstep2 ;; *) os=-nextstep3 ;; esac ;; nh3000) basic_machine=m68k-harris os=-cxux ;; nh[45]000) basic_machine=m88k-harris os=-cxux ;; nindy960) basic_machine=i960-intel os=-nindy ;; mon960) basic_machine=i960-intel os=-mon960 ;; nonstopux) basic_machine=mips-compaq os=-nonstopux ;; np1) basic_machine=np1-gould ;; nsr-tandem) basic_machine=nsr-tandem ;; op50n-* | op60c-*) basic_machine=hppa1.1-oki os=-proelf ;; openrisc | openrisc-*) basic_machine=or32-unknown ;; os400) basic_machine=powerpc-ibm os=-os400 ;; OSE68000 | ose68000) basic_machine=m68000-ericsson os=-ose ;; os68k) basic_machine=m68k-none os=-os68k ;; pa-hitachi) basic_machine=hppa1.1-hitachi os=-hiuxwe2 ;; paragon) basic_machine=i860-intel os=-osf ;; parisc) basic_machine=hppa-unknown os=-linux ;; parisc-*) basic_machine=hppa-`echo $basic_machine | sed 's/^[^-]*-//'` os=-linux ;; pbd) basic_machine=sparc-tti ;; pbb) basic_machine=m68k-tti ;; pc532 | pc532-*) basic_machine=ns32k-pc532 ;; pc98) basic_machine=i386-pc ;; pc98-*) basic_machine=i386-`echo $basic_machine | sed 's/^[^-]*-//'` ;; pentium | p5 | k5 | k6 | nexgen | viac3) basic_machine=i586-pc ;; pentiumpro | p6 | 6x86 | athlon | athlon_*) basic_machine=i686-pc ;; pentiumii | pentium2 | pentiumiii | pentium3) basic_machine=i686-pc ;; pentium4) basic_machine=i786-pc ;; pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*) basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'` ;; pentiumpro-* | p6-* | 6x86-* | athlon-*) basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` ;; pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*) basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` ;; pentium4-*) basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'` ;; pn) basic_machine=pn-gould ;; power) basic_machine=power-ibm ;; ppc) basic_machine=powerpc-unknown ;; ppc-*) basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'` ;; ppcle | powerpclittle | ppc-le | powerpc-little) basic_machine=powerpcle-unknown ;; ppcle-* | powerpclittle-*) basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'` ;; ppc64) basic_machine=powerpc64-unknown ;; ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'` ;; ppc64le | powerpc64little | ppc64-le | powerpc64-little) basic_machine=powerpc64le-unknown ;; ppc64le-* | powerpc64little-*) basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'` ;; ps2) basic_machine=i386-ibm ;; pw32) basic_machine=i586-unknown os=-pw32 ;; rdos) basic_machine=i386-pc os=-rdos ;; rom68k) basic_machine=m68k-rom68k os=-coff ;; rm[46]00) basic_machine=mips-siemens ;; rtpc | rtpc-*) basic_machine=romp-ibm ;; s390 | s390-*) basic_machine=s390-ibm ;; s390x | s390x-*) basic_machine=s390x-ibm ;; sa29200) basic_machine=a29k-amd os=-udi ;; sb1) basic_machine=mipsisa64sb1-unknown ;; sb1el) basic_machine=mipsisa64sb1el-unknown ;; sde) basic_machine=mipsisa32-sde os=-elf ;; sei) basic_machine=mips-sei os=-seiux ;; sequent) basic_machine=i386-sequent ;; sh) basic_machine=sh-hitachi os=-hms ;; sh5el) basic_machine=sh5le-unknown ;; sh64) basic_machine=sh64-unknown ;; sparclite-wrs | simso-wrs) basic_machine=sparclite-wrs os=-vxworks ;; sps7) basic_machine=m68k-bull os=-sysv2 ;; spur) basic_machine=spur-unknown ;; st2000) basic_machine=m68k-tandem ;; stratus) basic_machine=i860-stratus os=-sysv4 ;; sun2) basic_machine=m68000-sun ;; sun2os3) basic_machine=m68000-sun os=-sunos3 ;; sun2os4) basic_machine=m68000-sun os=-sunos4 ;; sun3os3) basic_machine=m68k-sun os=-sunos3 ;; sun3os4) basic_machine=m68k-sun os=-sunos4 ;; sun4os3) basic_machine=sparc-sun os=-sunos3 ;; sun4os4) basic_machine=sparc-sun os=-sunos4 ;; sun4sol2) basic_machine=sparc-sun os=-solaris2 ;; sun3 | sun3-*) basic_machine=m68k-sun ;; sun4) basic_machine=sparc-sun ;; sun386 | sun386i | roadrunner) basic_machine=i386-sun ;; sv1) basic_machine=sv1-cray os=-unicos ;; symmetry) basic_machine=i386-sequent os=-dynix ;; t3e) basic_machine=alphaev5-cray os=-unicos ;; t90) basic_machine=t90-cray os=-unicos ;; tic54x | c54x*) basic_machine=tic54x-unknown os=-coff ;; tic55x | c55x*) basic_machine=tic55x-unknown os=-coff ;; tic6x | c6x*) basic_machine=tic6x-unknown os=-coff ;; tile*) basic_machine=tile-unknown os=-linux-gnu ;; tx39) basic_machine=mipstx39-unknown ;; tx39el) basic_machine=mipstx39el-unknown ;; toad1) basic_machine=pdp10-xkl os=-tops20 ;; tower | tower-32) basic_machine=m68k-ncr ;; tpf) basic_machine=s390x-ibm os=-tpf ;; udi29k) basic_machine=a29k-amd os=-udi ;; ultra3) basic_machine=a29k-nyu os=-sym1 ;; v810 | necv810) basic_machine=v810-nec os=-none ;; vaxv) basic_machine=vax-dec os=-sysv ;; vms) basic_machine=vax-dec os=-vms ;; vpp*|vx|vx-*) basic_machine=f301-fujitsu ;; vxworks960) basic_machine=i960-wrs os=-vxworks ;; vxworks68) basic_machine=m68k-wrs os=-vxworks ;; vxworks29k) basic_machine=a29k-wrs os=-vxworks ;; w65*) basic_machine=w65-wdc os=-none ;; w89k-*) basic_machine=hppa1.1-winbond os=-proelf ;; xbox) basic_machine=i686-pc os=-mingw32 ;; xps | xps100) basic_machine=xps100-honeywell ;; ymp) basic_machine=ymp-cray os=-unicos ;; z8k-*-coff) basic_machine=z8k-unknown os=-sim ;; z80-*-coff) basic_machine=z80-unknown os=-sim ;; none) basic_machine=none-none os=-none ;; # Here we handle the default manufacturer of certain CPU types. It is in # some cases the only manufacturer, in others, it is the most popular. w89k) basic_machine=hppa1.1-winbond ;; op50n) basic_machine=hppa1.1-oki ;; op60c) basic_machine=hppa1.1-oki ;; romp) basic_machine=romp-ibm ;; mmix) basic_machine=mmix-knuth ;; rs6000) basic_machine=rs6000-ibm ;; vax) basic_machine=vax-dec ;; pdp10) # there are many clones, so DEC is not a safe bet basic_machine=pdp10-unknown ;; pdp11) basic_machine=pdp11-dec ;; we32k) basic_machine=we32k-att ;; sh[1234] | sh[24]a | sh[24]aeb | sh[34]eb | sh[1234]le | sh[23]ele) basic_machine=sh-unknown ;; sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v) basic_machine=sparc-sun ;; cydra) basic_machine=cydra-cydrome ;; orion) basic_machine=orion-highlevel ;; orion105) basic_machine=clipper-highlevel ;; mac | mpw | mac-mpw) basic_machine=m68k-apple ;; pmac | pmac-mpw) basic_machine=powerpc-apple ;; *-unknown) # Make sure to match an already-canonicalized machine name. ;; *) echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 exit 1 ;; esac # Here we canonicalize certain aliases for manufacturers. case $basic_machine in *-digital*) basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'` ;; *-commodore*) basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'` ;; *) ;; esac # Decode manufacturer-specific aliases for certain operating systems. if [ x"$os" != x"" ] then case $os in # First match some system type aliases # that might get confused with valid system types. # -solaris* is a basic system type, with this one exception. -auroraux) os=-auroraux ;; -solaris1 | -solaris1.*) os=`echo $os | sed -e 's|solaris1|sunos4|'` ;; -solaris) os=-solaris2 ;; -svr4*) os=-sysv4 ;; -unixware*) os=-sysv4.2uw ;; -gnu/linux*) os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'` ;; # First accept the basic system types. # The portable systems comes first. # Each alternative MUST END IN A *, to match a version number. # -sysv* is not here because it comes later, after sysvr4. -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \ | -*vms* | -sco* | -esix* | -isc* | -aix* | -cnk* | -sunos | -sunos[34]*\ | -hpux* | -unos* | -osf* | -luna* | -dgux* | -auroraux* | -solaris* \ | -sym* | -kopensolaris* \ | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \ | -aos* | -aros* \ | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \ | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \ | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \ | -openbsd* | -solidbsd* \ | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \ | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \ | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \ | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \ | -chorusos* | -chorusrdb* | -cegcc* \ | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ | -mingw32* | -linux-gnu* | -linux-newlib* | -linux-uclibc* \ | -uxpv* | -beos* | -mpeix* | -udk* \ | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \ | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \ | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \ | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \ | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \ | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \ | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es*) # Remember, each alternative MUST END IN *, to match a version number. ;; -qnx*) case $basic_machine in x86-* | i*86-*) ;; *) os=-nto$os ;; esac ;; -nto-qnx*) ;; -nto*) os=`echo $os | sed -e 's|nto|nto-qnx|'` ;; -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \ | -windows* | -osx | -abug | -netware* | -os9* | -beos* | -haiku* \ | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*) ;; -mac*) os=`echo $os | sed -e 's|mac|macos|'` ;; -linux-dietlibc) os=-linux-dietlibc ;; -linux*) os=`echo $os | sed -e 's|linux|linux-gnu|'` ;; -sunos5*) os=`echo $os | sed -e 's|sunos5|solaris2|'` ;; -sunos6*) os=`echo $os | sed -e 's|sunos6|solaris3|'` ;; -opened*) os=-openedition ;; -os400*) os=-os400 ;; -wince*) os=-wince ;; -osfrose*) os=-osfrose ;; -osf*) os=-osf ;; -utek*) os=-bsd ;; -dynix*) os=-bsd ;; -acis*) os=-aos ;; -atheos*) os=-atheos ;; -syllable*) os=-syllable ;; -386bsd) os=-bsd ;; -ctix* | -uts*) os=-sysv ;; -nova*) os=-rtmk-nova ;; -ns2 ) os=-nextstep2 ;; -nsk*) os=-nsk ;; # Preserve the version number of sinix5. -sinix5.*) os=`echo $os | sed -e 's|sinix|sysv|'` ;; -sinix*) os=-sysv4 ;; -tpf*) os=-tpf ;; -triton*) os=-sysv3 ;; -oss*) os=-sysv3 ;; -svr4) os=-sysv4 ;; -svr3) os=-sysv3 ;; -sysvr4) os=-sysv4 ;; # This must come after -sysvr4. -sysv*) ;; -ose*) os=-ose ;; -es1800*) os=-ose ;; -xenix) os=-xenix ;; -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) os=-mint ;; -aros*) os=-aros ;; -kaos*) os=-kaos ;; -zvmoe) os=-zvmoe ;; -dicos*) os=-dicos ;; -none) ;; *) # Get rid of the `-' at the beginning of $os. os=`echo $os | sed 's/[^-]*-//'` echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2 exit 1 ;; esac else # Here we handle the default operating systems that come with various machines. # The value should be what the vendor currently ships out the door with their # machine or put another way, the most popular os provided with the machine. # Note that if you're going to try to match "-MANUFACTURER" here (say, # "-sun"), then you have to tell the case statement up towards the top # that MANUFACTURER isn't an operating system. Otherwise, code above # will signal an error saying that MANUFACTURER isn't an operating # system, and we'll never get to this point. case $basic_machine in score-*) os=-elf ;; spu-*) os=-elf ;; *-acorn) os=-riscix1.2 ;; arm*-rebel) os=-linux ;; arm*-semi) os=-aout ;; c4x-* | tic4x-*) os=-coff ;; # This must come before the *-dec entry. pdp10-*) os=-tops20 ;; pdp11-*) os=-none ;; *-dec | vax-*) os=-ultrix4.2 ;; m68*-apollo) os=-domain ;; i386-sun) os=-sunos4.0.2 ;; m68000-sun) os=-sunos3 # This also exists in the configure program, but was not the # default. # os=-sunos4 ;; m68*-cisco) os=-aout ;; mep-*) os=-elf ;; mips*-cisco) os=-elf ;; mips*-*) os=-elf ;; or32-*) os=-coff ;; *-tti) # must be before sparc entry or we get the wrong os. os=-sysv3 ;; sparc-* | *-sun) os=-sunos4.1.1 ;; *-be) os=-beos ;; *-haiku) os=-haiku ;; *-ibm) os=-aix ;; *-knuth) os=-mmixware ;; *-wec) os=-proelf ;; *-winbond) os=-proelf ;; *-oki) os=-proelf ;; *-hp) os=-hpux ;; *-hitachi) os=-hiux ;; i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent) os=-sysv ;; *-cbm) os=-amigaos ;; *-dg) os=-dgux ;; *-dolphin) os=-sysv3 ;; m68k-ccur) os=-rtu ;; m88k-omron*) os=-luna ;; *-next ) os=-nextstep ;; *-sequent) os=-ptx ;; *-crds) os=-unos ;; *-ns) os=-genix ;; i370-*) os=-mvs ;; *-next) os=-nextstep3 ;; *-gould) os=-sysv ;; *-highlevel) os=-bsd ;; *-encore) os=-bsd ;; *-sgi) os=-irix ;; *-siemens) os=-sysv4 ;; *-masscomp) os=-rtu ;; f30[01]-fujitsu | f700-fujitsu) os=-uxpv ;; *-rom68k) os=-coff ;; *-*bug) os=-coff ;; *-apple) os=-macos ;; *-atari*) os=-mint ;; *) os=-none ;; esac fi # Here we handle the case where we know the os, and the CPU type, but not the # manufacturer. We pick the logical manufacturer. vendor=unknown case $basic_machine in *-unknown) case $os in -riscix*) vendor=acorn ;; -sunos*) vendor=sun ;; -cnk*|-aix*) vendor=ibm ;; -beos*) vendor=be ;; -hpux*) vendor=hp ;; -mpeix*) vendor=hp ;; -hiux*) vendor=hitachi ;; -unos*) vendor=crds ;; -dgux*) vendor=dg ;; -luna*) vendor=omron ;; -genix*) vendor=ns ;; -mvs* | -opened*) vendor=ibm ;; -os400*) vendor=ibm ;; -ptx*) vendor=sequent ;; -tpf*) vendor=ibm ;; -vxsim* | -vxworks* | -windiss*) vendor=wrs ;; -aux*) vendor=apple ;; -hms*) vendor=hitachi ;; -mpw* | -macos*) vendor=apple ;; -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) vendor=atari ;; -vos*) vendor=stratus ;; esac basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"` ;; esac echo $basic_machine$os exit # Local variables: # eval: (add-hook 'write-file-hooks 'time-stamp) # time-stamp-start: "timestamp='" # time-stamp-format: "%:y-%02m-%02d" # time-stamp-end: "'" # End: libbonoboui-2.24.5/po/0000775000076400007640000000000011546335132011543 500000000000000libbonoboui-2.24.5/po/cy.po0000664000076400007640000003247511433016366012451 00000000000000# libbonoboui yn Gymraeg. # Copyright (C) 2003-2005 Free Software Foundation, Inc. # This file is distributed under the same license as the libbonoboui package. # Dafydd Harries , 2003 # Rhys Jones , 2005 # Iestyn Pryce , 2009. msgid "" msgstr "" "Project-Id-Version: libbonoboui\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2009-12-20 12:41+0000\n" "PO-Revision-Date: 2009-12-20 12:44+0100\n" "Last-Translator: Iestyn Pryce \n" "Language-Team: Welsh \n" "Language: cy\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n==2) ? 1 : 0;\n" "X-Generator: Virtaal 0.5.0\n" #: ../bonobo/bonobo-canvas-item.c:680 msgid "corba factory" msgstr "ffatri corba" #: ../bonobo/bonobo-canvas-item.c:681 msgid "The factory pointer" msgstr "Y pwyntydd ffatri" #: ../bonobo/bonobo-canvas-item.c:690 msgid "corba UI container" msgstr "cynhwysydd rhyngwyneb defnyddiwr corba" #: ../bonobo/bonobo-canvas-item.c:691 msgid "The User interface container" msgstr "Y cynhwysydd rhyngwyneb defnyddiwr" #: ../bonobo/bonobo-dock-item-grip.c:254 msgid "Dock the toolbar" msgstr "Docio'r bar offer" #: ../bonobo/bonobo-dock-item-grip.c:255 msgid "Undock the toolbar" msgstr "Dad-ddocio'r bar offer" #: ../bonobo/bonobo-dock-item.c:225 ../bonobo/bonobo-dock-item.c:226 #: ../bonobo/bonobo-ui-toolbar.c:1163 msgid "Shadow type" msgstr "Math cysgod" #: ../bonobo/bonobo-dock-item.c:236 ../bonobo/bonobo-dock-item.c:237 #: ../bonobo/bonobo-ui-toolbar.c:1107 ../bonobo/bonobo-ui-toolbar.c:1108 msgid "Orientation" msgstr "Gogwydd" #: ../bonobo/bonobo-dock-item.c:247 ../bonobo/bonobo-dock-item.c:248 #: ../bonobo/bonobo-ui-toolbar.c:1126 ../bonobo/bonobo-ui-toolbar.c:1127 msgid "Preferred width" msgstr "Lled dewisol" #: ../bonobo/bonobo-dock-item.c:256 ../bonobo/bonobo-dock-item.c:257 #: ../bonobo/bonobo-ui-toolbar.c:1135 ../bonobo/bonobo-ui-toolbar.c:1136 msgid "Preferred height" msgstr "Uchder dewisol" #: ../bonobo/bonobo-file-selector-util.c:350 msgid "Select a file to open" msgstr "Dewiswch ffeil i'w agor" #: ../bonobo/bonobo-file-selector-util.c:378 msgid "Select files to open" msgstr "Dewiswch ffeiliau i'w agor" #: ../bonobo/bonobo-file-selector-util.c:407 msgid "Select a filename to save" msgstr "Dewiswch enw ffeil i'w gadw" #: ../bonobo/bonobo-plug.c:425 msgid "Event Forwarding" msgstr "Anfon Digwyddiadau Ymlaen" #: ../bonobo/bonobo-plug.c:426 msgid "Whether X events should be forwarded" msgstr "Dylid anfon digwyddiadau X ymlaen" #: ../bonobo/bonobo-selector-widget.c:300 ../bonobo/bonobo-window.c:347 #: ../tools/browser/component-details.c:108 #: ../tools/browser/component-list.c:369 msgid "Name" msgstr "Enw" #: ../bonobo/bonobo-selector-widget.c:322 #: ../tools/browser/component-details.c:109 msgid "Description" msgstr "Disgrifiad" #: ../bonobo/bonobo-selector.c:343 msgid "Interfaces required" msgstr "Rhyngwynebau sydd angen" #: ../bonobo/bonobo-selector.c:344 msgid "" "A NULL-terminated array of interfaces which a server must support in order " "to be listed in the selector. Defaults to \"IDL:Bonobo/Embeddable:1.0\" if " "no interfaces are listed" msgstr "" "Arae, terfynedig â NULL, o ryngwynebau mae gweinydd yn gorfod eu cynnal er " "mwyn cael ei restri yn y dewiswr. Y rhagosodiad yw \"IDL:Bonobo/" "EMbeddable:1.0\" os nad oes unrhyw ryngwynebau wedi eu rhestri." #: ../bonobo/bonobo-selector.c:346 msgid "Interface required entry" msgstr "Cofnod rhyngwyneb sydd angen" #: ../bonobo/bonobo-selector.c:347 msgid "One of the interfaces that's required" msgstr "Un o'r rhyngwynebau sydd angen" #: ../bonobo/bonobo-ui-config-widget.c:267 msgid "Visible" msgstr "Gweladwy" #: ../bonobo/bonobo-ui-config-widget.c:274 msgid "_Show" msgstr "_Dangos" #: ../bonobo/bonobo-ui-config-widget.c:281 msgid "_Hide" msgstr "_Cuddio" #: ../bonobo/bonobo-ui-config-widget.c:287 msgid "_View tooltips" msgstr "_Gweld awgrymiadau" #: ../bonobo/bonobo-ui-config-widget.c:292 msgid "Toolbars" msgstr "Barrau Offer" #: ../bonobo/bonobo-ui-config-widget.c:302 msgid "toolbars" msgstr "barrau offer" #: ../bonobo/bonobo-ui-config-widget.c:313 #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "Look" msgstr "Edrych" #: ../bonobo/bonobo-ui-config-widget.c:322 #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "_Icon" msgstr "_Eicon" #: ../bonobo/bonobo-ui-config-widget.c:328 msgid "_Text and Icon" msgstr "_Testun ac Eicon" #: ../bonobo/bonobo-ui-config-widget.c:334 msgid "Text only" msgstr "Testun yn unig" #: ../bonobo/bonobo-ui-config-widget.c:340 msgid "_Priority text only" msgstr "Testun _pwysig yn unig" #: ../bonobo/bonobo-ui-engine.c:93 msgid "Debug" msgstr "Datnamu" #: ../bonobo/bonobo-ui-engine.c:93 msgid "_Dump XML" msgstr "_Dadlwytho XML" #: ../bonobo/bonobo-ui-engine.c:94 msgid "Dump the entire UI's XML description to the console" msgstr "Dadlwytho holl ddisgrifiad XML y rhyngwyneb defnyddiwr i'r consol" #: ../bonobo/bonobo-ui-engine-config.c:524 msgid "Configure UI" msgstr "Cyflunio'r Rhyngwyneb Defnyddiwr" #: ../bonobo/bonobo-ui-init-gtk.c:131 msgid "Gdk debugging flags to set" msgstr "Baneri datnamu Gdk i'w gosod" #: ../bonobo/bonobo-ui-init-gtk.c:131 ../bonobo/bonobo-ui-init-gtk.c:134 #: ../bonobo/bonobo-ui-init-gtk.c:162 ../bonobo/bonobo-ui-init-gtk.c:165 msgid "FLAGS" msgstr "BANERI" #: ../bonobo/bonobo-ui-init-gtk.c:134 msgid "Gdk debugging flags to unset" msgstr "Baneri datnamu Gdk i'w dadosod" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "X display to use" msgstr "Y dangosydd X i'w ddefnyddio" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "DISPLAY" msgstr "DANGOSYDD" #: ../bonobo/bonobo-ui-init-gtk.c:142 msgid "X screen to use" msgstr "Y sgrin X i'w ddefnyddio" #: ../bonobo/bonobo-ui-init-gtk.c:142 msgid "SCREEN" msgstr "SGRIN" #: ../bonobo/bonobo-ui-init-gtk.c:146 msgid "Make X calls synchronous" msgstr "Gwneud galwadau X yn gydamseredig" #: ../bonobo/bonobo-ui-init-gtk.c:152 msgid "Don't use X shared memory extension" msgstr "Peidio defnyddio estyniad cof rhanedig X" #: ../bonobo/bonobo-ui-init-gtk.c:156 msgid "Program name as used by the window manager" msgstr "Enw'r rhaglen fel y defnyddiwyd gan y rheolwr ffenestri" #: ../bonobo/bonobo-ui-init-gtk.c:156 msgid "NAME" msgstr "ENW" #: ../bonobo/bonobo-ui-init-gtk.c:159 msgid "Program class as used by the window manager" msgstr "Dosbarth y rhaglen fel y defnyddiwyd gan y rheolwr ffenestri" #: ../bonobo/bonobo-ui-init-gtk.c:159 msgid "CLASS" msgstr "DOSBARTH" #: ../bonobo/bonobo-ui-init-gtk.c:162 msgid "Gtk+ debugging flags to set" msgstr "Baneri datnamu Gtk+ i'w gosod" #: ../bonobo/bonobo-ui-init-gtk.c:165 msgid "Gtk+ debugging flags to unset" msgstr "Baneri datnamu Gtk+ i'w dadosod" #: ../bonobo/bonobo-ui-init-gtk.c:168 msgid "Make all warnings fatal" msgstr "Gwneud pob rhybudd yn farwol" #: ../bonobo/bonobo-ui-init-gtk.c:171 msgid "Load an additional Gtk module" msgstr "Llwytho modiwl Gtk ychwanegol" #: ../bonobo/bonobo-ui-init-gtk.c:171 msgid "MODULE" msgstr "MODIWL" #: ../bonobo/bonobo-ui-init-gtk.c:187 msgid "GTK+" msgstr "GTK+" #: ../bonobo/bonobo-ui-main.c:281 msgid "Bonobo GUI support" msgstr "cynhaliaeth Rhyngwyneb Defnyddiwr Graffigol Bonobo" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "B_oth" msgstr "Y _ddau" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "T_ext" msgstr "_Testun" #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Hide t_ips" msgstr "_Cuddio awgrymiadau" #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Show t_ips" msgstr "_Dangos awgrymiadau" #: ../bonobo/bonobo-ui-sync-toolbar.c:570 msgid "_Hide toolbar" msgstr "_Cuddio'r bar offer" #: ../bonobo/bonobo-ui-sync-toolbar.c:570 msgid "Customi_ze" msgstr "_Addasu" #: ../bonobo/bonobo-ui-sync-toolbar.c:571 msgid "Customize the toolbar" msgstr "Addasu’r bar offer" #: ../bonobo/bonobo-ui-toolbar.c:1117 msgid "is floating" msgstr "yn arnofio" #: ../bonobo/bonobo-ui-toolbar.c:1118 msgid "whether the toolbar is floating" msgstr "a ydy'r bar offer yn arnofio" # EFALLAI (befel?) #: ../bonobo/bonobo-ui-toolbar.c:1164 msgid "Style of bevel around the toolbar" msgstr "Arddull y befel o amgylch y bar offer" #: ../bonobo/bonobo-ui-util.c:602 msgid "Could not display help for this application" msgstr "Methu dangos cymorth ar gyfer y rhaglen hon" #: ../bonobo/bonobo-ui-util.c:644 msgid "_Contents" msgstr "_Cynnwys" #: ../bonobo/bonobo-ui-util.c:645 msgid "View help for this application" msgstr "Dangos cymorth ar gyfer y rhaglen hon" #: ../bonobo/bonobo-window.c:348 msgid "Name of the window - used for configuration serialization." msgstr "Enw'r ffenest - defnyddir ar gyfer cyfresoli cyfluniad." #: ../bonobo/bonobo-zoomable.c:326 msgid "Zoom level" msgstr "Lefel chwyddo" # EFALLAI (context would be nice) #: ../bonobo/bonobo-zoomable.c:327 msgid "The degree of enlargment" msgstr "Y lefel o chwyddo" #: ../bonobo/bonobo-zoomable.c:335 msgid "Minimum Zoom level" msgstr "Lefel Chwyddo Isaf" #: ../bonobo/bonobo-zoomable.c:336 msgid "The minimum degree of enlargment" msgstr "Y lefel lleiaf o chwyddo" #: ../bonobo/bonobo-zoomable.c:344 msgid "Maximum Zoom level" msgstr "Lefel Chwyddo Mwyaf" #: ../bonobo/bonobo-zoomable.c:345 msgid "The maximum degree of enlargment" msgstr "Y lefel mwyaf o chwyddo" #: ../bonobo/bonobo-zoomable.c:353 msgid "Has a minimum Zoom level" msgstr "Mae ganddo lefel chwyddo lleiaf" #: ../bonobo/bonobo-zoomable.c:354 msgid "Whether we have a valid minimum zoom level" msgstr "A oes lefel chwyddo lleiaf dilys gennym" #: ../bonobo/bonobo-zoomable.c:361 msgid "Has a maximum Zoom level" msgstr "Mae ganddo lefel chwyddo mwyaf" #: ../bonobo/bonobo-zoomable.c:362 msgid "Whether we have a valid maximum zoom level" msgstr "A oes lefel chwyddo mwyaf dilys gennym" #: ../bonobo/bonobo-zoomable.c:369 msgid "Is continuous" msgstr "Yn barhaus" #: ../bonobo/bonobo-zoomable.c:370 msgid "Whether we zoom continuously (as opposed to jumps)" msgstr "Ydym ni'n chwyddo'n barhaus (yn lle neidio)" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:1 msgid "About this application" msgstr "Ynghylch y rhaglen hon" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:2 msgid "Select" msgstr "Dewis" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:3 msgid "_About..." msgstr "_Ynghylch..." #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:4 msgid "_Edit" msgstr "_Golygu" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:5 #: ../tools/browser/bonobo-browser.xml.h:4 msgid "_File" msgstr "_Ffeil" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:6 msgid "_Select" msgstr "_Dewis" #: ../samples/bonoboui/hello.c:65 msgid "This does nothing; it is only a demonstration." msgstr "Mae hyn yn gwneud dim byd; dim ond arddangosiad ydyw" #: ../samples/bonoboui/hello.c:147 msgid "BonoboUI-Hello." msgstr "Helo-BonoboUI" #: ../samples/bonoboui/hello.c:219 msgid "Gnome Hello" msgstr "Helo Gnome" #. Create Label and put it in the Button: #: ../samples/bonoboui/hello.c:274 msgid "Hello, World!" msgstr "Helo, Fyd!" #: ../samples/bonoboui/hello.c:314 msgid "Cannot init libbonoboui code" msgstr "Methu cychwyn cod libbonoboui" #: ../samples/controls/bonobo-sample-controls.c:133 msgid "Could not initialize Bonobo UI" msgstr "Methu cychwyn Rhyngwyneb Defnyddiwr Bonobo" #: ../tools/browser/bonobo-browser.desktop.in.h:1 msgid "Bonobo Component Browser" msgstr "Porwr Cydrannau Bonobo" #: ../tools/browser/bonobo-browser.desktop.in.h:2 msgid "Shows available Bonobo components" msgstr "Dangos y cydrannau Bonobo sydd ar gael" #: ../tools/browser/bonobo-browser.xml.h:1 msgid "About this program..." msgstr "Ynglŷn â'r rhaglen..." #: ../tools/browser/bonobo-browser.xml.h:2 msgid "Close the current window" msgstr "Cau'r ffenest bresennol" #: ../tools/browser/bonobo-browser.xml.h:3 msgid "Open a new window" msgstr "Agor ffenest newydd" #: ../tools/browser/bonobo-browser.xml.h:5 msgid "_Help" msgstr "_Cymorth" #. Build the general tab #: ../tools/browser/component-details.c:103 msgid "General" msgstr "Cyffredinol" #: ../tools/browser/component-details.c:110 #: ../tools/browser/component-list.c:389 msgid "IID" msgstr "Rhif ID" #: ../tools/browser/component-details.c:111 msgid "Location" msgstr "Lleoliad" #. Build the details tab #: ../tools/browser/component-details.c:161 msgid "Details" msgstr "Manylion" #: ../tools/browser/component-details.c:162 msgid "Detailed Information" msgstr "Manylion Manwl" #: ../tools/browser/component-list.c:358 ../tools/browser/window.c:283 msgid "Active" msgstr "Yn Weithredol" #: ../tools/browser/component-list.c:379 msgid "Type" msgstr "Math" #: ../tools/browser/window.c:162 msgid "Component Details" msgstr "Manylion Cydran" #: ../tools/browser/window.c:208 msgid "Bonobo Browser" msgstr "Porwr Bonobo" #: ../tools/browser/window.c:210 msgid "Copyright 2001, The GNOME Foundation" msgstr "Hawlfraint 2001, The GNOME Foundation" #: ../tools/browser/window.c:211 msgid "Bonobo component browser" msgstr "Porwr cydrannau Bonobo" #: ../tools/browser/window.c:214 msgid "translator-credits" msgstr "" "Dafydd Harries \n" "Rhys Jones \n" "Iestyn Pryce " #. create the window #: ../tools/browser/window.c:240 msgid "Component Browser" msgstr "Porwr Cydrannau" #. Fill out the tool bar #: ../tools/browser/window.c:280 msgid "All" msgstr "Popeth" #: ../tools/browser/window.c:286 msgid "Inactive" msgstr "Anweithredol" #~ msgid "HOST" #~ msgstr "GWESTEIWR" #~ msgid "PORT" #~ msgstr "PORTH" #~ msgid "STYLE" #~ msgstr "ARDDULL" libbonoboui-2.24.5/po/pa.po0000644000076400007640000003661511173072741012434 00000000000000# translation of libbonoboui.HEAD.po to Punjabi # Copyright (C) 2004, 2005, 2007 Free Software Foundation, Inc. # # # Amanpreet Singh Alam , 2004. # A S Alam , 2004, 2005, 2007, 2009. msgid "" msgstr "" "Project-Id-Version: libbonoboui.HEAD\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2008-11-07 14:28+0100\n" "PO-Revision-Date: 2009-03-15 08:13+0000\n" "Last-Translator: A S Alam \n" "Language-Team: Punjabi/Panjabi \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Generator: Lokalize 0.3\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" #: ../bonobo/bonobo-canvas-item.c:680 msgid "corba factory" msgstr "ਕੋਰਬਾ ਫੈਕਟਰੀ" #: ../bonobo/bonobo-canvas-item.c:681 msgid "The factory pointer" msgstr "ਫੈਕਟਰੀ ਪੁਆਇੰਟਰ" #: ../bonobo/bonobo-canvas-item.c:690 msgid "corba UI container" msgstr "ਕੋਰਬਾ UI ਕੰਨਟੇਨਰ" #: ../bonobo/bonobo-canvas-item.c:691 msgid "The User interface container" msgstr "ਯੂਜਰ ਇੰਟਰਫੇਸ ਕੰਨਟੇਨਰ" #: ../bonobo/bonobo-dock-item-grip.c:254 msgid "Dock the toolbar" msgstr "ਟੂਲਬਾਰ ਡੌਕ ਕਰੋ" #: ../bonobo/bonobo-dock-item-grip.c:255 msgid "Undock the toolbar" msgstr "ਟੂਲਬਾਰ ਅਣ-ਡੌਕ ਕਰੋ" #: ../bonobo/bonobo-dock-item.c:225 ../bonobo/bonobo-dock-item.c:226 #: ../bonobo/bonobo-ui-toolbar.c:1161 msgid "Shadow type" msgstr "ਸ਼ੈਡੋ ਟਾਈਪ" #: ../bonobo/bonobo-dock-item.c:236 ../bonobo/bonobo-dock-item.c:237 #: ../bonobo/bonobo-ui-toolbar.c:1105 ../bonobo/bonobo-ui-toolbar.c:1106 msgid "Orientation" msgstr "ਸਥਿਤੀ" #: ../bonobo/bonobo-dock-item.c:247 ../bonobo/bonobo-dock-item.c:248 #: ../bonobo/bonobo-ui-toolbar.c:1124 ../bonobo/bonobo-ui-toolbar.c:1125 msgid "Preferred width" msgstr "ਪਸੰਦੀਦਾ ਚੌੜਾਈ" #: ../bonobo/bonobo-dock-item.c:256 ../bonobo/bonobo-dock-item.c:257 #: ../bonobo/bonobo-ui-toolbar.c:1133 ../bonobo/bonobo-ui-toolbar.c:1134 msgid "Preferred height" msgstr "ਪਸੰਦੀਦਾ ਉਚਾਈ" #: ../bonobo/bonobo-file-selector-util.c:350 msgid "Select a file to open" msgstr "ਖੋਲ੍ਹਣ ਲਈ ਇਕ ਫਾਇਲ ਚੁਣੋ" #: ../bonobo/bonobo-file-selector-util.c:378 msgid "Select files to open" msgstr "ਖੋਲਣ ਲਈ ਫਾਇਲਾਂ ਚੁਣੋ" #: ../bonobo/bonobo-file-selector-util.c:407 msgid "Select a filename to save" msgstr "ਸੰਭਾਲਣ ਲਈ ਇਕ ਫਾਇਲ ਚੁਣੋ" #: ../bonobo/bonobo-plug.c:423 msgid "Event Forwarding" msgstr "ਈਵੈਂਟ ਅੱਗੇ ਭੇਜੋ" #: ../bonobo/bonobo-plug.c:424 msgid "Whether X events should be forwarded" msgstr "ਕੀ X ਈਵੈਂਟ ਅੱਗੇ ਭੇਜੇ ਜਾਣ" #: ../bonobo/bonobo-selector-widget.c:297 ../bonobo/bonobo-window.c:344 #: ../tools/browser/component-details.c:114 #: ../tools/browser/component-list.c:378 msgid "Name" msgstr "ਨਾਂ" #: ../bonobo/bonobo-selector-widget.c:319 #: ../tools/browser/component-details.c:115 msgid "Description" msgstr "ਵੇਰਵਾ" #: ../bonobo/bonobo-selector.c:343 msgid "Interfaces required" msgstr "ਇੰਟਰਫੇਸ ਚਾਹੀਦਾ ਹੈ" #: ../bonobo/bonobo-selector.c:344 msgid "" "A NULL-terminated array of interfaces which a server must support in order " "to be listed in the selector. Defaults to \"IDL:Bonobo/Embeddable:1.0\" if " "no interfaces are listed" msgstr "" "ਇੱਕ ਇੰਟਰਫੇਸ ਦੀ NULL_terminated ਸੂਚੀ, ਜੋ ਕਿ ਇੱਕ ਸਰਵਰ ਕੋਲ ਹੋਣੀ ਜਰੂਰੀ ਹੈ ਤਾਂ ਕਿ ਚੋਣ ਵਿਚ ਕ੍ਰਮ " "ਬਣਾ ਸਕੇ। ਡਿਫਾਲਟ ਤੌਰ ਤੇ \"IDL:Bonobo/Embeddable:1.0\" ਜੇਕਰ ਕੋਈ ਇੰਟਰਫੇਸ ਸੂਚੀਬੱਧ ਨਾ ਹੋਵੇ" #: ../bonobo/bonobo-selector.c:346 msgid "Interface required entry" msgstr "ਇੰਟਰਫੇਸ ਚਾਹੀਦਾ ਹੈ" #: ../bonobo/bonobo-selector.c:347 msgid "One of the interfaces that's required" msgstr "ਇਕ ਚਾਹੀਦਾ ਇੰਟਰਫੇਸ ਹੈ" #: ../bonobo/bonobo-ui-config-widget.c:265 msgid "Visible" msgstr "ਵੇਖਣਯੋਗ" #: ../bonobo/bonobo-ui-config-widget.c:272 msgid "_Show" msgstr "ਵੇਖੋ(_S)" #: ../bonobo/bonobo-ui-config-widget.c:279 msgid "_Hide" msgstr "ਓਹਲੇ(_H)" #: ../bonobo/bonobo-ui-config-widget.c:285 msgid "_View tooltips" msgstr "ਟੂਲ-ਟਿੱਪ ਵੇਖੋ(_V)" #: ../bonobo/bonobo-ui-config-widget.c:290 msgid "Toolbars" msgstr "ਟੂਲਬਾਰ" #: ../bonobo/bonobo-ui-config-widget.c:300 msgid "toolbars" msgstr "ਟੂਲਬਾਰ" #: ../bonobo/bonobo-ui-config-widget.c:311 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "Look" msgstr "ਵੇਖੋ" #: ../bonobo/bonobo-ui-config-widget.c:320 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "_Icon" msgstr "ਆਈਕਾਨ(_I)" #: ../bonobo/bonobo-ui-config-widget.c:326 msgid "_Text and Icon" msgstr "ਪਾਠ ਅਤੇ ਆਈਕਾਨ(_T)" #: ../bonobo/bonobo-ui-config-widget.c:332 msgid "Text only" msgstr "ਕੇਵਲ ਪਾਠ ਹੀ" #: ../bonobo/bonobo-ui-config-widget.c:338 msgid "_Priority text only" msgstr "ਤਰਜੀਹ ਪਾਠ ਹੀ(_P)" #: ../bonobo/bonobo-ui-engine.c:91 msgid "Debug" msgstr "ਡੀਬੱਗ" #: ../bonobo/bonobo-ui-engine.c:91 msgid "_Dump XML" msgstr "XML ਡੰਪ(_D)" #: ../bonobo/bonobo-ui-engine.c:92 msgid "Dump the entire UI's XML description to the console" msgstr "ਸਭ UI ਦਾ XML ਕੰਨਸੋਲ ਤੇ ਡੰਪ ਰੱਖੋ" #: ../bonobo/bonobo-ui-engine-config.c:522 msgid "Configure UI" msgstr "UI ਸੰਰਚਨਾ" #: ../bonobo/bonobo-ui-init-gtk.c:131 msgid "Gdk debugging flags to set" msgstr "Gdk ਡੀਬੱਗ ਨਿਸ਼ਾਨ ਸੈੱਟ ਕਰੋ" #: ../bonobo/bonobo-ui-init-gtk.c:131 ../bonobo/bonobo-ui-init-gtk.c:134 #: ../bonobo/bonobo-ui-init-gtk.c:162 ../bonobo/bonobo-ui-init-gtk.c:165 msgid "FLAGS" msgstr "ਫਲੈਗ" #: ../bonobo/bonobo-ui-init-gtk.c:134 msgid "Gdk debugging flags to unset" msgstr "Gdk ਡੀਬੱਗ ਫਲੈਗ ਅਣ-ਸੈੱਟ ਕਰੋ" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "X display to use" msgstr "ਵਰਤਣ ਲਈ X ਡਿਸਪਲੇਅ" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "DISPLAY" msgstr "ਡਿਸਪਲੇਅ" #: ../bonobo/bonobo-ui-init-gtk.c:142 msgid "X screen to use" msgstr "ਵਰਤਣ ਲਈ X ਸਕਰੀਨ" #: ../bonobo/bonobo-ui-init-gtk.c:142 msgid "SCREEN" msgstr "ਸਕਰੀਨ" #: ../bonobo/bonobo-ui-init-gtk.c:146 msgid "Make X calls synchronous" msgstr "X ਕਾਲ ਸੈਕਰੋਨਸ ਬਣਾਓ" #: ../bonobo/bonobo-ui-init-gtk.c:152 msgid "Don't use X shared memory extension" msgstr "X ਸਾਂਝੀ ਮੈਮਰੀ ਇਕਸਟੇਸ਼ਨ ਨਾ ਵਰਤੋਂ" #: ../bonobo/bonobo-ui-init-gtk.c:156 msgid "Program name as used by the window manager" msgstr "ਵਿੰਡੋ ਮੈਨੇਜਰ ਰਾਹੀਂ ਵਰਤੇ ਜਾਂਦੇ ਪਰੋਗਰਾਮ ਨਾਂ" #: ../bonobo/bonobo-ui-init-gtk.c:156 msgid "NAME" msgstr "ਨਾਂ" #: ../bonobo/bonobo-ui-init-gtk.c:159 msgid "Program class as used by the window manager" msgstr "ਵਿੰਡੋ ਮੈਨੇਜਰ ਰਾਹੀਂ ਵਰਤੀ ਜਾਂਦੀ ਪਰੋਗਰਾਮ ਕਲਾਸ" #: ../bonobo/bonobo-ui-init-gtk.c:159 msgid "CLASS" msgstr "ਕਲਾਸ" #: ../bonobo/bonobo-ui-init-gtk.c:162 msgid "Gtk+ debugging flags to set" msgstr "Gdk+ ਡੀਬੱਗ ਨਿਸ਼ਾਨ ਸੈੱਟ ਕਰੋ" #: ../bonobo/bonobo-ui-init-gtk.c:165 msgid "Gtk+ debugging flags to unset" msgstr "Gdk+ ਡੀਬੱਗ ਨਿਸ਼ਾਨ ਅਣ-ਸੈੱਟ" #: ../bonobo/bonobo-ui-init-gtk.c:168 msgid "Make all warnings fatal" msgstr "ਸਭ ਚੇਤਾਵਨੀਆਂ ਘਾਤਕ ਬਣਾਓ" #: ../bonobo/bonobo-ui-init-gtk.c:171 msgid "Load an additional Gtk module" msgstr "ਹੋਰ ਵਾਧੂ Gtk ਮੋਡੀਊਲ ਲੋਡ ਕਰੋ" #: ../bonobo/bonobo-ui-init-gtk.c:171 msgid "MODULE" msgstr "ਮੋਡੀਊਲ" #: ../bonobo/bonobo-ui-init-gtk.c:187 msgid "GTK+" msgstr "GTK+" #: ../bonobo/bonobo-ui-main.c:278 msgid "Bonobo GUI support" msgstr "ਬੋਨਬੋ GUI ਸਹਿਯੋਗ" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "B_oth" msgstr "ਦੋਵੇਂ(_o)" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "T_ext" msgstr "ਪਾਠ(_e)" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Hide t_ips" msgstr "ਇਸ਼ਾਰਾ ਓਹਲੇ(_i)" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Show t_ips" msgstr "ਇਸ਼ਾਰਾ ਵੇਖੋ(_i)" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "_Hide toolbar" msgstr "ਟੂਲਬਾਰ ਉਹਲੇ(_H)" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "Customi_ze" msgstr "ਸੋਧ(_z)" #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Customize the toolbar" msgstr "ਟੂਲਬਾਰ ਕਸਟਮਾਈਜ਼" #: ../bonobo/bonobo-ui-toolbar.c:1115 msgid "is floating" msgstr "ਤਰਦੀ ਹੈ" #: ../bonobo/bonobo-ui-toolbar.c:1116 msgid "whether the toolbar is floating" msgstr "ਕੀ ਟੂਲਬਾਰ ਤਰਦੀ ਹੋਵੇ" #: ../bonobo/bonobo-ui-toolbar.c:1162 msgid "Style of bevel around the toolbar" msgstr "ਟੂਲਬਾਰ ਦੁਆਲੇ ਬੀਵਾਲ ਸਟਾਈਲ" #: ../bonobo/bonobo-ui-util.c:599 msgid "Could not display help for this application" msgstr "ਇਸ ਐਪਲੀਕੇਸ਼ਨ ਲਈ ਮੱਦਦ ਨਹੀਂ ਵੇਖਾਈ ਨਹੀਂ ਜਾ ਸਕੀ" #: ../bonobo/bonobo-ui-util.c:641 msgid "_Contents" msgstr "ਸਮੱਗਰੀ(_C)" #: ../bonobo/bonobo-ui-util.c:642 msgid "View help for this application" msgstr "ਇਸ ਐਪਲੀਕੇਸ਼ਨ ਲਈ ਮੱਦਦ ਵੇਖੋ" #: ../bonobo/bonobo-window.c:345 msgid "Name of the window - used for configuration serialization." msgstr "serialization ਦੀ ਸੰਰਚਨਾ ਲਈ ਵਰਤੇ ਵਿੰਡੋ ਦਾ ਨਾਂ" #: ../bonobo/bonobo-zoomable.c:326 msgid "Zoom level" msgstr "ਜ਼ੂਮ ਲੈਵਲ" #: ../bonobo/bonobo-zoomable.c:327 msgid "The degree of enlargment" msgstr "ਵੱਡਾ ਕਰਨ ਲਈ ਸੀਮਾ" #: ../bonobo/bonobo-zoomable.c:335 msgid "Minimum Zoom level" msgstr "ਘੱਟੋ ਘੱਟ ਜ਼ੂਮ ਲੈਵਲ" #: ../bonobo/bonobo-zoomable.c:336 msgid "The minimum degree of enlargment" msgstr "ਵੱਡਾ ਕਰਨ ਲਈ ਘੱਟੋ ਘੱਟ ਡਿਗਰੀ" #: ../bonobo/bonobo-zoomable.c:344 msgid "Maximum Zoom level" msgstr "ਵੱਧ ਤੋ ਵੱਧ ਜ਼ੂਮ ਲੈਵਲ" #: ../bonobo/bonobo-zoomable.c:345 msgid "The maximum degree of enlargment" msgstr "ਵੱਡਾ ਕਰਨ ਲਈ ਵੱਧ ਤੋ ਵੱਧ ਡਿਗਰੀ" #: ../bonobo/bonobo-zoomable.c:353 msgid "Has a minimum Zoom level" msgstr "ਘੱਟੋ ਘੱਟ ਜ਼ੂਮ ਲੈਵਲ ਹੈ" #: ../bonobo/bonobo-zoomable.c:354 msgid "Whether we have a valid minimum zoom level" msgstr "ਕੀ ਜਾਇਜ ਘੱਟੋ ਘੱਟ ਜ਼ੂਮ ਲੈਵਲ ਹੈ?" #: ../bonobo/bonobo-zoomable.c:361 msgid "Has a maximum Zoom level" msgstr "ਵੱਧ ਤੋ ਵੱਧ ਜ਼ੂਮ ਲੈਵਲ ਹੈ" #: ../bonobo/bonobo-zoomable.c:362 msgid "Whether we have a valid maximum zoom level" msgstr "ਕੀ ਜਾਇਜ ਵੱਧ ਤੋ ਵੱਧ ਜ਼ੂਮ ਲੈਵਲ ਹੈ?" #: ../bonobo/bonobo-zoomable.c:369 msgid "Is continuous" msgstr "ਲਗਾਤਾਰ" #: ../bonobo/bonobo-zoomable.c:370 msgid "Whether we zoom continuously (as opposed to jumps)" msgstr "ਕੀ ਲਗਾਤਾਰ ਅਕਾਰ ਬਦਲਣਾ ਹੈ (ਇਸ ਨਾਲੋ ਇਕੋ ਵਾਰ ਹੀ)" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:1 msgid "About this application" msgstr "ਇਸ ਐਪਲੀਕੇਸ਼ਨ ਬਾਰੇ" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:2 msgid "Select" msgstr "ਚੁਣੋ" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:3 msgid "_About..." msgstr "ਇਸ ਬਾਰੇ(_A)..." #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:4 msgid "_Edit" msgstr "ਸੋਧ(_E)" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:5 #: ../tools/browser/bonobo-browser.xml.h:4 msgid "_File" msgstr "ਫਾਇਲ(_F)" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:6 msgid "_Select" msgstr "ਚੋਣ(_S)" #: ../samples/bonoboui/hello.c:63 msgid "This does nothing; it is only a demonstration." msgstr "ਇਹ ਕੁਝ ਨਹੀਂ ਹੈ, ਸਿਰਫ ਪਰਦਰਸ਼ਨ ਹੈ।" #: ../samples/bonoboui/hello.c:145 msgid "BonoboUI-Hello." msgstr "BonoboUI-Hello." #: ../samples/bonoboui/hello.c:217 msgid "Gnome Hello" msgstr "ਗਨੋਮ ਹੈਲੋ" #. Create Label and put it in the Button: #: ../samples/bonoboui/hello.c:272 msgid "Hello, World!" msgstr "ਅਕਾਲ ਸਹਾਇ!" #: ../samples/bonoboui/hello.c:312 msgid "Cannot init libbonoboui code" msgstr "libbonoboui ਕੋਡ ਸ਼ੁਰੂ ਨਾ ਹੋ ਸਕਿਆ" #: ../samples/controls/bonobo-sample-controls.c:131 msgid "Could not initialize Bonobo UI" msgstr "Bonobo UI ਕੋਡ ਸ਼ੁਰੂ ਨਾ ਹੋ ਸਕਿਆ" #: ../tools/browser/bonobo-browser.desktop.in.h:1 msgid "Bonobo Component Browser" msgstr "ਬੋਨਬੋ ਭਾਗ ਬਰਾਊਜ਼ਰ" #: ../tools/browser/bonobo-browser.desktop.in.h:2 msgid "Shows available Bonobo components" msgstr "ਉਪਲੱਬਧ ਬੋਨਬੋ ਭਾਗ ਵੇਖੋ" #: ../tools/browser/bonobo-browser.xml.h:1 msgid "About this program..." msgstr "ਇਸ ਪਰੋਗਰਾਮ ਬਾਰੇ..." #: ../tools/browser/bonobo-browser.xml.h:2 msgid "Close the current window" msgstr "ਮੌਜੂਦਾ ਵਿੰਡੋ ਬੰਦ ਕਰੋ" #: ../tools/browser/bonobo-browser.xml.h:3 msgid "Open a new window" msgstr "ਇੱਕ ਨਵੀਂ ਵਿੰਡੋ ਵਿੱਚ ਖੋਲ੍ਹੋ" #: ../tools/browser/bonobo-browser.xml.h:5 msgid "_Help" msgstr "ਮੱਦਦ(_H)" #. Build the general tab #: ../tools/browser/component-details.c:109 msgid "General" msgstr "ਸਧਾਰਨ" #: ../tools/browser/component-details.c:116 #: ../tools/browser/component-list.c:398 msgid "IID" msgstr "IID" #: ../tools/browser/component-details.c:117 msgid "Location" msgstr "ਟਿਕਾਣਾ" #. Build the details tab #: ../tools/browser/component-details.c:167 msgid "Details" msgstr "ਵੇਰਵਾ" #: ../tools/browser/component-details.c:168 msgid "Detailed Information" msgstr "ਵੇਰਵਾ ਜਾਣਕਾਰੀ" #: ../tools/browser/component-list.c:367 ../tools/browser/window.c:283 msgid "Active" msgstr "ਸਰਗਰਮ" #: ../tools/browser/component-list.c:388 msgid "Type" msgstr "ਕਿਸਮ" #: ../tools/browser/window.c:162 msgid "Component Details" msgstr "ਭਾਗ ਵੇਰਵਾ" #: ../tools/browser/window.c:208 msgid "Bonobo Browser" msgstr "ਬੋਨਬੋ ਬਰਾਊਜ਼ਰ" #: ../tools/browser/window.c:210 msgid "Copyright 2001, The GNOME Foundation" msgstr "੨੦੦੧ ਹੱਕ ਰਾਖਵੇਂ ਹਨ, ਗਨੋਮ ਫਾਊਡੇਸ਼ਨ" #: ../tools/browser/window.c:211 msgid "Bonobo component browser" msgstr "ਬੋਨੋਬੋ ਭਾਗ ਬਰਾਊਜ਼ਰ" #: ../tools/browser/window.c:214 msgid "translator-credits" msgstr "" "ਅਮਨਪਰੀਤ ਸਿੰਘ ਆਲਮ\n" "POST (Punjabi OpenSource Team)\n" "http://www.satluj.com" #. create the window #: ../tools/browser/window.c:240 msgid "Component Browser" msgstr "ਭਾਗ ਬਰਾਊਜ਼ਰ" #. Fill out the tool bar #: ../tools/browser/window.c:280 msgid "All" msgstr "ਸਭ" #: ../tools/browser/window.c:286 msgid "Inactive" msgstr "ਨਾ-ਸਰਗਰਮ" libbonoboui-2.24.5/po/POTFILES.in0000644000076400007640000000160011173072741013233 00000000000000# List of source files containing translatable strings. # Please keep this list in alphabetic order. bonobo/bonobo-canvas-item.c bonobo/bonobo-dock-item-grip.c bonobo/bonobo-dock-item.c bonobo/bonobo-file-selector-util.c bonobo/bonobo-plug.c bonobo/bonobo-selector-widget.c bonobo/bonobo-selector.c bonobo/bonobo-ui-config-widget.c bonobo/bonobo-ui-engine.c bonobo/bonobo-ui-engine-config.c bonobo/bonobo-ui-init-gtk.c bonobo/bonobo-ui-main.c bonobo/bonobo-ui-sync-toolbar.c bonobo/bonobo-ui-toolbar.c bonobo/bonobo-ui-util.c bonobo/bonobo-window.c bonobo/bonobo-zoomable.c samples/bonoboui/Bonobo_Sample_Hello.xml samples/bonoboui/hello.c samples/controls/Bonobo_Sample_Controls.server.in.in samples/controls/bonobo-sample-controls.c tools/browser/bonobo-browser.desktop.in tools/browser/bonobo-browser.xml tools/browser/component-details.c tools/browser/component-list.c tools/browser/window.c libbonoboui-2.24.5/po/zu.po0000644000076400007640000003104511173072741012462 00000000000000# Northern Sotho translation of libbonoboui. # Copyright (C) 2004 Zuza Software Foundation # This file is distributed under the same license as the libbonoboui package. # # Zuza Software Foundation , 2004 # msgid "" msgstr "" "Project-Id-Version: libbonoboui 2.8-branch\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2005-09-10 18:44+0200\n" "PO-Revision-Date: 2004-12-02 14:06+0200\n" "Last-Translator: Zuza Software Foundation \n" "Language-Team: Zulu \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../bonobo/bonobo-canvas-item.c:683 msgid "corba factory" msgstr "ifektri corba" #: ../bonobo/bonobo-canvas-item.c:684 msgid "The factory pointer" msgstr "Isikhombi sefektri" #: ../bonobo/bonobo-canvas-item.c:693 msgid "corba UI container" msgstr "Isitsha esiphatha corba UI" #: ../bonobo/bonobo-canvas-item.c:694 msgid "The User interface container" msgstr "Isitsha esiphatha umsebenzisi wohlanganisa imiboniso" #: ../bonobo/bonobo-dock-item-grip.c:257 msgid "Dock the toolbar" msgstr "Ngenisa isiqobolo" #: ../bonobo/bonobo-dock-item-grip.c:258 #, fuzzy msgid "Undock the toolbar" msgstr "Ungsingenisi isiqobolo" #: ../bonobo/bonobo-dock-item.c:235 ../bonobo/bonobo-dock-item.c:236 #: ../bonobo/bonobo-ui-toolbar.c:1175 msgid "Shadow type" msgstr "Inhlobo enomthunzi" #: ../bonobo/bonobo-dock-item.c:246 ../bonobo/bonobo-dock-item.c:247 #: ../bonobo/bonobo-ui-toolbar.c:1119 ../bonobo/bonobo-ui-toolbar.c:1120 msgid "Orientation" msgstr "Ukuma" #: ../bonobo/bonobo-dock-item.c:257 ../bonobo/bonobo-dock-item.c:258 #: ../bonobo/bonobo-ui-toolbar.c:1138 ../bonobo/bonobo-ui-toolbar.c:1139 msgid "Preferred width" msgstr "Unbubanzi obuthandekayo" #: ../bonobo/bonobo-dock-item.c:266 ../bonobo/bonobo-dock-item.c:267 #: ../bonobo/bonobo-ui-toolbar.c:1147 ../bonobo/bonobo-ui-toolbar.c:1148 msgid "Preferred height" msgstr "Ubude obuthandekayo" #: ../bonobo/bonobo-file-selector-util.c:357 msgid "Select a file to open" msgstr "Khetha ihele ozolivula" #: ../bonobo/bonobo-file-selector-util.c:385 msgid "Select files to open" msgstr "Khetha ohele ozobavula" #: ../bonobo/bonobo-file-selector-util.c:414 msgid "Select a filename to save" msgstr "Khetha igamahele ozolivula" #: ../bonobo/bonobo-plug.c:425 msgid "Event Forwarding" msgstr "Ukudlulisela umcimbi" #: ../bonobo/bonobo-plug.c:426 msgid "Whether X events should be forwarded" msgstr "Ingabe umncimbi X umelwe ukudluliselwa phambili" #: ../bonobo/bonobo-selector-widget.c:302 ../bonobo/bonobo-window.c:346 #: ../tools/browser/component-details.c:114 #: ../tools/browser/component-list.c:381 msgid "Name" msgstr "Igama" #: ../bonobo/bonobo-selector-widget.c:324 #: ../tools/browser/component-details.c:115 msgid "Description" msgstr "Ukulanda" #: ../bonobo/bonobo-selector.c:345 msgid "Interfaces required" msgstr "Kudingeka imiboniso" #: ../bonobo/bonobo-selector.c:346 msgid "" "A NULL-terminated array of interfaces which a server must support in order " "to be listed in the selector. Defaults to \"IDL:Bonobo/Embeddable:1.0\" if " "no interfaces are listed" msgstr "" "Umlinganiselo NULL-ogcinisiwe wemiboniso lapho umnikezi kumele awuxhase " "ukuze ingeniswe phakathi kokhetho. Amaphutha ku \"IDL:Bonobo/ethwalisiwe:1.0" "\" uma kungekho okuhleliwe okungena ngaphakthi" #: ../bonobo/bonobo-selector.c:348 msgid "Interface required entry" msgstr "Umboniso wokungena uyisidingo" #: ../bonobo/bonobo-selector.c:349 msgid "One of the interfaces that's required" msgstr "Okunye okuyisidingo kwemiboniso" #: ../bonobo/bonobo-ui-config-widget.c:268 msgid "Visible" msgstr "Iyabonakala" #: ../bonobo/bonobo-ui-config-widget.c:275 msgid "_Show" msgstr "_Tshengisa" #: ../bonobo/bonobo-ui-config-widget.c:282 msgid "_Hide" msgstr "_Fihla" #: ../bonobo/bonobo-ui-config-widget.c:288 msgid "_View tooltips" msgstr "_Bheka amacebo wamathuluzi" #: ../bonobo/bonobo-ui-config-widget.c:293 msgid "Toolbars" msgstr "Iziqobo" #: ../bonobo/bonobo-ui-config-widget.c:303 msgid "toolbars" msgstr "iziqobo" #: ../bonobo/bonobo-ui-config-widget.c:314 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "Look" msgstr "Bheka" #: ../bonobo/bonobo-ui-config-widget.c:323 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "_Icon" msgstr "_Uphawu" #: ../bonobo/bonobo-ui-config-widget.c:329 msgid "_Text and Icon" msgstr "I_tekisi nophawu" #: ../bonobo/bonobo-ui-config-widget.c:335 msgid "Text only" msgstr "Itekisi kuphela" #: ../bonobo/bonobo-ui-config-widget.c:341 msgid "_Priority text only" msgstr "_Ukubaluleka kwetekisi lodwa" #: ../bonobo/bonobo-ui-engine.c:90 msgid "Debug" msgstr "Hlola umonakalo" #: ../bonobo/bonobo-ui-engine.c:90 msgid "_Dump XML" msgstr "_Lahla XML" #: ../bonobo/bonobo-ui-engine.c:91 msgid "Dump the entire UI's XML description to the console" msgstr "Lahla konke ukulanda UI's XML phakathi kokuzimasa" #: ../bonobo/bonobo-ui-engine-config.c:522 msgid "Configure UI" msgstr "Beka isimo UI" #: ../bonobo/bonobo-ui-init-gtk.c:113 msgid "Gdk debugging flags to set" msgstr "Ukuhlela amaflagi okuhlola umonakalo Gdk" #: ../bonobo/bonobo-ui-init-gtk.c:113 ../bonobo/bonobo-ui-init-gtk.c:116 #: ../bonobo/bonobo-ui-init-gtk.c:144 ../bonobo/bonobo-ui-init-gtk.c:147 msgid "FLAGS" msgstr "IFLAGA" #: ../bonobo/bonobo-ui-init-gtk.c:116 msgid "Gdk debugging flags to unset" msgstr "Ukuhlelwanga amaflagi okuhlola umonakalo Gdk" #: ../bonobo/bonobo-ui-init-gtk.c:120 msgid "X display to use" msgstr "X ubekelwe ukusebenza" #: ../bonobo/bonobo-ui-init-gtk.c:120 msgid "DISPLAY" msgstr "BONISA" #: ../bonobo/bonobo-ui-init-gtk.c:124 msgid "X screen to use" msgstr "X ubuso besiga-nyezi buyasebenziswa" #: ../bonobo/bonobo-ui-init-gtk.c:124 msgid "SCREEN" msgstr "UBUSO_BESIGA-NYEZI" #: ../bonobo/bonobo-ui-init-gtk.c:128 msgid "Make X calls synchronous" msgstr "Yenza X ukushayela ngokuvumelana" #: ../bonobo/bonobo-ui-init-gtk.c:134 msgid "Don't use X shared memory extension" msgstr "Ungasebenzisi X ngokwabelana igatsha lomqondo" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "Program name as used by the window manager" msgstr "Igama lohlelo njengoba lisebenzisiwe ngumphathi wefasitela" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "NAME" msgstr "IGAMA" #: ../bonobo/bonobo-ui-init-gtk.c:141 msgid "Program class as used by the window manager" msgstr "Hlela igumbi njengoba lisebenzisiwe ngumphathi wefasitela" #: ../bonobo/bonobo-ui-init-gtk.c:141 msgid "CLASS" msgstr "IQEMBU" #: ../bonobo/bonobo-ui-init-gtk.c:144 msgid "Gtk+ debugging flags to set" msgstr "Gtk+ hlela amaflagi okuhlola umonakalo" #: ../bonobo/bonobo-ui-init-gtk.c:147 msgid "Gtk+ debugging flags to unset" msgstr "Gtk+ akuhleliwe amaflaggi okuhlola umonakalo" #: ../bonobo/bonobo-ui-init-gtk.c:150 msgid "Make all warnings fatal" msgstr "Yenza zonke izixwayiso ukuba zibe nokubulala" #: ../bonobo/bonobo-ui-init-gtk.c:153 msgid "Load an additional Gtk module" msgstr "Faka enye futhi Gtk module" #: ../bonobo/bonobo-ui-init-gtk.c:153 msgid "MODULE" msgstr "MODULE" #: ../bonobo/bonobo-ui-init-gtk.c:162 msgid "GTK+" msgstr "GTK+" #: ../bonobo/bonobo-ui-main.c:278 msgid "Bonobo GUI support" msgstr "Ukuxhasa Bonobo GUI" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "B_oth" msgstr "Zo_mbili" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "T_ext" msgstr "Ite_kisi" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Hide t_ips" msgstr "Fihla amac_ebo" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Show t_ips" msgstr "Khombisa amac_ebo" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "_Hide toolbar" msgstr "_Fihla isiqobo" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "Customi_ze" msgstr "Zenze_le" #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Customize the toolbar" msgstr "Zenzele isiqobo" #: ../bonobo/bonobo-ui-toolbar.c:1129 msgid "is floating" msgstr "iyaphuphuma" #: ../bonobo/bonobo-ui-toolbar.c:1130 msgid "whether the toolbar is floating" msgstr "ingabe isiqobo siyaphuphuma" #: ../bonobo/bonobo-ui-toolbar.c:1176 msgid "Style of bevel around the toolbar" msgstr "Inhlobo yokutshekukisa ezungeze isiqobo" #: ../bonobo/bonobo-ui-util.c:630 msgid "_Contents" msgstr "_Iziqikithi" #: ../bonobo/bonobo-ui-util.c:631 msgid "View help for this application" msgstr "Bheka usizo lwalesisithobo" #: ../bonobo/bonobo-window.c:347 msgid "Name of the window - used for configuration serialization." msgstr "Igama lefasitela - lisebenziselwa ukuphawulwa ngokwenani." #: ../bonobo/bonobo-zoomable.c:326 msgid "Zoom level" msgstr "Izinga lokukhulisa" #: ../bonobo/bonobo-zoomable.c:327 msgid "The degree of enlargment" msgstr "Izinga lenkuliso" #: ../bonobo/bonobo-zoomable.c:335 msgid "Minimum Zoom level" msgstr "Izinga eliphantsi lokukhulisa" #: ../bonobo/bonobo-zoomable.c:336 msgid "The minimum degree of enlargment" msgstr "Izinga eliphantsi lenkuliso" #: ../bonobo/bonobo-zoomable.c:344 msgid "Maximum Zoom level" msgstr "Izinga eliphakeme lokukhulisa" #: ../bonobo/bonobo-zoomable.c:345 msgid "The maximum degree of enlargment" msgstr "Izinga eliphakeme lenkuliso" #: ../bonobo/bonobo-zoomable.c:353 msgid "Has a minimum Zoom level" msgstr "Une zinga eliphantsi lokukhulisa" #: ../bonobo/bonobo-zoomable.c:354 msgid "Whether we have a valid minimum zoom level" msgstr "Ingabe sinezinga eliyilo eliphantsi lokukhulisa" #: ../bonobo/bonobo-zoomable.c:361 msgid "Has a maximum Zoom level" msgstr "Une zinga eliphantsi lokukhulisa" #: ../bonobo/bonobo-zoomable.c:362 msgid "Whether we have a valid maximum zoom level" msgstr "Ingabe sinezinga eliphakeme lokukhulisa" #: ../bonobo/bonobo-zoomable.c:369 msgid "Is continuous" msgstr "Iyaqhubeka" #: ../bonobo/bonobo-zoomable.c:370 msgid "Whether we zoom continuously (as opposed to jumps)" msgstr "Ingabe sikhulisa njalo (njengoba kuphikiwe mgokwenqa)" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:1 msgid "About this application" msgstr "Ngalesithobo" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:2 msgid "Select" msgstr "Khetha" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:3 msgid "_About..." msgstr "_Nge..." #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:4 msgid "_Edit" msgstr "_Hlela" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:5 #: ../tools/browser/bonobo-browser.xml.h:4 msgid "_File" msgstr "_Ihele" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:6 msgid "_Select" msgstr "_Khetha" #: ../samples/bonoboui/hello.c:63 msgid "This does nothing; it is only a demonstration." msgstr "Lokhu akwenzi lutho; kuyisibonakaliso nje." #: ../samples/bonoboui/hello.c:145 msgid "BonoboUI-Hello." msgstr "BonoboUI-Sawubona." #: ../samples/bonoboui/hello.c:217 msgid "Gnome Hello" msgstr "Gnome sawubona" #. Create Label and put it in the Button: #: ../samples/bonoboui/hello.c:272 msgid "Hello, World!" msgstr "Sawubona, Mhlaba!" #: ../samples/bonoboui/hello.c:312 msgid "Cannot init libbonoboui code" msgstr "Ihlulekile kwikhodi ye init libbonoboui" #: ../samples/controls/bonobo-sample-controls.c:131 msgid "Could not initialize Bonobo UI" msgstr "Ihlulekile ukuqala ikhodi Bonobo UI" #: ../tools/browser/bonobo-browser.desktop.in.h:1 msgid "Bonobo Component Browser" msgstr "" #: ../tools/browser/bonobo-browser.desktop.in.h:2 msgid "Shows available Bonobo components" msgstr "" #: ../tools/browser/bonobo-browser.xml.h:1 #, fuzzy msgid "About this program..." msgstr "Ngalesithobo" #: ../tools/browser/bonobo-browser.xml.h:2 msgid "Close the current window" msgstr "" #: ../tools/browser/bonobo-browser.xml.h:3 msgid "Open a new window" msgstr "" #: ../tools/browser/bonobo-browser.xml.h:5 #, fuzzy msgid "_Help" msgstr "_Fihla" #. Build the general tab #: ../tools/browser/component-details.c:109 msgid "General" msgstr "" #: ../tools/browser/component-details.c:116 #: ../tools/browser/component-list.c:401 msgid "IID" msgstr "" #: ../tools/browser/component-details.c:117 msgid "Location" msgstr "" #. Build the details tab #: ../tools/browser/component-details.c:167 msgid "Details" msgstr "" #: ../tools/browser/component-details.c:168 msgid "Detailed Information" msgstr "" #: ../tools/browser/component-list.c:370 ../tools/browser/window.c:290 msgid "Active" msgstr "" #: ../tools/browser/component-list.c:391 msgid "Type" msgstr "" #: ../tools/browser/window.c:170 msgid "Component Details" msgstr "" #: ../tools/browser/window.c:215 msgid "Bonobo Browser" msgstr "" #: ../tools/browser/window.c:216 msgid "Copyright 2001, The GNOME Foundation" msgstr "" #: ../tools/browser/window.c:217 msgid "Bonobo component browser" msgstr "" #. create the window #: ../tools/browser/window.c:247 msgid "Component Browser" msgstr "" #. Fill out the tool bar #: ../tools/browser/window.c:287 msgid "All" msgstr "" #: ../tools/browser/window.c:293 msgid "Inactive" msgstr "" libbonoboui-2.24.5/po/hu.po0000644000076400007640000003314111173072741012437 00000000000000# Hungarian translation of libbonoboui. # Copyright (C) 2002, 2003, 2004, 2005, 2006, 2008 Free Software Foundation, Inc. # This file is distributed under the same license as the libbonoboui package. # # Emese Kovacs , 2002. # Andras Timar , 2003, 2004. # Gabor Kelemen , 2004, 2005, 2006, 2008. # Laszlo Dvornik , 2004, 2005. msgid "" msgstr "" "Project-Id-Version: libbonoboui\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2007-11-13 21:46+0000\n" "PO-Revision-Date: 2008-02-26 00:16+0100\n" "Last-Translator: Gabor Kelemen \n" "Language-Team: Hungarian \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Generator: KBabel 1.11.4\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" #: ../bonobo/bonobo-canvas-item.c:680 msgid "corba factory" msgstr "corba factory" #: ../bonobo/bonobo-canvas-item.c:681 msgid "The factory pointer" msgstr "A factory mutató" #: ../bonobo/bonobo-canvas-item.c:690 msgid "corba UI container" msgstr "corba UI konténer" #: ../bonobo/bonobo-canvas-item.c:691 msgid "The User interface container" msgstr "A felhasználói felület konténere" #: ../bonobo/bonobo-dock-item-grip.c:255 msgid "Dock the toolbar" msgstr "Az eszköztár dokkolása" #: ../bonobo/bonobo-dock-item-grip.c:256 msgid "Undock the toolbar" msgstr "Az eszköztár dokkolásának megszüntetése" #: ../bonobo/bonobo-dock-item.c:228 ../bonobo/bonobo-dock-item.c:229 #: ../bonobo/bonobo-ui-toolbar.c:1161 msgid "Shadow type" msgstr "Árnyék típusa" #: ../bonobo/bonobo-dock-item.c:239 ../bonobo/bonobo-dock-item.c:240 #: ../bonobo/bonobo-ui-toolbar.c:1105 ../bonobo/bonobo-ui-toolbar.c:1106 msgid "Orientation" msgstr "Irány" #: ../bonobo/bonobo-dock-item.c:250 ../bonobo/bonobo-dock-item.c:251 #: ../bonobo/bonobo-ui-toolbar.c:1124 ../bonobo/bonobo-ui-toolbar.c:1125 msgid "Preferred width" msgstr "Előnyben részesített szélesség" #: ../bonobo/bonobo-dock-item.c:259 ../bonobo/bonobo-dock-item.c:260 #: ../bonobo/bonobo-ui-toolbar.c:1133 ../bonobo/bonobo-ui-toolbar.c:1134 msgid "Preferred height" msgstr "Előnyben részesített magasság" #: ../bonobo/bonobo-file-selector-util.c:357 msgid "Select a file to open" msgstr "A megnyitandó fájl kiválasztása" #: ../bonobo/bonobo-file-selector-util.c:385 msgid "Select files to open" msgstr "A megnyitandó fájlok kiválasztása" #: ../bonobo/bonobo-file-selector-util.c:414 msgid "Select a filename to save" msgstr "A mentendő fájl nevének kiválasztása" #: ../bonobo/bonobo-plug.c:423 msgid "Event Forwarding" msgstr "Eseménytovábbítás" #: ../bonobo/bonobo-plug.c:424 msgid "Whether X events should be forwarded" msgstr "Továbbítsa-e az X-eseményeket" #: ../bonobo/bonobo-selector-widget.c:297 ../bonobo/bonobo-window.c:344 #: ../tools/browser/component-details.c:114 #: ../tools/browser/component-list.c:378 msgid "Name" msgstr "Név" #: ../bonobo/bonobo-selector-widget.c:319 #: ../tools/browser/component-details.c:115 msgid "Description" msgstr "Leírás" #: ../bonobo/bonobo-selector.c:343 msgid "Interfaces required" msgstr "Felületek szükségesek" #: ../bonobo/bonobo-selector.c:344 msgid "" "A NULL-terminated array of interfaces which a server must support in order " "to be listed in the selector. Defaults to \"IDL:Bonobo/Embeddable:1.0\" if " "no interfaces are listed" msgstr "" "Olyan felületek NULL-végű tömbje, amelyet a kiszolgálónak támogatnia kell, " "hogy a szelektorban megjelenjen. Az alapértelmezett az „IDL:Bonobo/" "Embeddable:1.0”, ha nincs más felület felsorolva." #: ../bonobo/bonobo-selector.c:346 msgid "Interface required entry" msgstr "Szükséges felület bejegyzés" #: ../bonobo/bonobo-selector.c:347 msgid "One of the interfaces that's required" msgstr "Az egyik szükséges felület" #: ../bonobo/bonobo-ui-config-widget.c:265 msgid "Visible" msgstr "Látható" #: ../bonobo/bonobo-ui-config-widget.c:272 msgid "_Show" msgstr "_Megjelenítés" #: ../bonobo/bonobo-ui-config-widget.c:279 msgid "_Hide" msgstr "_Elrejtés" #: ../bonobo/bonobo-ui-config-widget.c:285 msgid "_View tooltips" msgstr "_Buboréksúgó megjelenítése" #: ../bonobo/bonobo-ui-config-widget.c:290 msgid "Toolbars" msgstr "Eszköztárak" #: ../bonobo/bonobo-ui-config-widget.c:300 msgid "toolbars" msgstr "eszköztárak" #: ../bonobo/bonobo-ui-config-widget.c:311 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "Look" msgstr "Kinézet" #: ../bonobo/bonobo-ui-config-widget.c:320 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "_Icon" msgstr "_Ikon" #: ../bonobo/bonobo-ui-config-widget.c:326 msgid "_Text and Icon" msgstr "_Szöveg és ikon" #: ../bonobo/bonobo-ui-config-widget.c:332 msgid "Text only" msgstr "Csak szöveg" #: ../bonobo/bonobo-ui-config-widget.c:338 msgid "_Priority text only" msgstr "Csak _lényeges szöveg" #: ../bonobo/bonobo-ui-engine.c:91 msgid "Debug" msgstr "Hibakeresés" #: ../bonobo/bonobo-ui-engine.c:91 msgid "_Dump XML" msgstr "_XML kiíratása" #: ../bonobo/bonobo-ui-engine.c:92 msgid "Dump the entire UI's XML description to the console" msgstr "A teljes felhasználói felület XML-leírásának kiíratása a konzolra" #: ../bonobo/bonobo-ui-engine-config.c:522 msgid "Configure UI" msgstr "UI beállítása" #: ../bonobo/bonobo-ui-init-gtk.c:130 msgid "Gdk debugging flags to set" msgstr "Beállítandó Gdk debug jelzőbitek" #: ../bonobo/bonobo-ui-init-gtk.c:130 ../bonobo/bonobo-ui-init-gtk.c:133 #: ../bonobo/bonobo-ui-init-gtk.c:161 ../bonobo/bonobo-ui-init-gtk.c:164 msgid "FLAGS" msgstr "JELZŐK" #: ../bonobo/bonobo-ui-init-gtk.c:133 msgid "Gdk debugging flags to unset" msgstr "Kikapcsolandó Gdk debug jelzőbitek" #: ../bonobo/bonobo-ui-init-gtk.c:137 msgid "X display to use" msgstr "Használandó X-megjelenítő" #: ../bonobo/bonobo-ui-init-gtk.c:137 msgid "DISPLAY" msgstr "MEGJELENÍTŐ" #: ../bonobo/bonobo-ui-init-gtk.c:141 msgid "X screen to use" msgstr "Használandó X-képernyő" #: ../bonobo/bonobo-ui-init-gtk.c:141 msgid "SCREEN" msgstr "KÉPERNYŐ" #: ../bonobo/bonobo-ui-init-gtk.c:145 msgid "Make X calls synchronous" msgstr "Legyenek szinkron X-hívások" #: ../bonobo/bonobo-ui-init-gtk.c:151 msgid "Don't use X shared memory extension" msgstr "Ne használja az X megosztott memória kiterjesztését" #: ../bonobo/bonobo-ui-init-gtk.c:155 msgid "Program name as used by the window manager" msgstr "A programnév, ahogy az ablakkezelő használja" #: ../bonobo/bonobo-ui-init-gtk.c:155 msgid "NAME" msgstr "NÉV" #: ../bonobo/bonobo-ui-init-gtk.c:158 msgid "Program class as used by the window manager" msgstr "A program osztálya, ahogy az ablakkezelő használja" #: ../bonobo/bonobo-ui-init-gtk.c:158 msgid "CLASS" msgstr "OSZTÁLY" #: ../bonobo/bonobo-ui-init-gtk.c:161 msgid "Gtk+ debugging flags to set" msgstr "Beállítandó Gtk+ debug jelzőbitek" #: ../bonobo/bonobo-ui-init-gtk.c:164 msgid "Gtk+ debugging flags to unset" msgstr "Kikapcsolandó Gtk+ jelzőbitek" #: ../bonobo/bonobo-ui-init-gtk.c:167 msgid "Make all warnings fatal" msgstr "Minden figyelmeztetés végzetes legyen" #: ../bonobo/bonobo-ui-init-gtk.c:170 msgid "Load an additional Gtk module" msgstr "További Gtk modul betöltése" #: ../bonobo/bonobo-ui-init-gtk.c:170 msgid "MODULE" msgstr "MODUL" #: ../bonobo/bonobo-ui-init-gtk.c:186 msgid "GTK+" msgstr "GTK+" #: ../bonobo/bonobo-ui-main.c:278 msgid "Bonobo GUI support" msgstr "Bonobo GUI támogatás" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "B_oth" msgstr "Mind_kettő" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "T_ext" msgstr "_Szöveg" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Hide t_ips" msgstr "_Buboréksúgó elrejtése" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Show t_ips" msgstr "_Buboréksúgó megjelenítése" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "_Hide toolbar" msgstr "Eszköztár _elrejtése" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "Customi_ze" msgstr "Testres_zabás" #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Customize the toolbar" msgstr "Az eszköztár testreszabása" #: ../bonobo/bonobo-ui-toolbar.c:1115 msgid "is floating" msgstr "lebegő" #: ../bonobo/bonobo-ui-toolbar.c:1116 msgid "whether the toolbar is floating" msgstr "lebegő legyen-e az eszköztár" #: ../bonobo/bonobo-ui-toolbar.c:1162 msgid "Style of bevel around the toolbar" msgstr "Az eszköztár körüli élkidolgozás stílusa" #: ../bonobo/bonobo-ui-util.c:601 msgid "Could not display help for this application" msgstr "Az alkalmazás súgója nem jeleníthető meg" #: ../bonobo/bonobo-ui-util.c:643 msgid "_Contents" msgstr "_Tartalom" #: ../bonobo/bonobo-ui-util.c:644 msgid "View help for this application" msgstr "Az alkalmazás súgójának megtekintése" #: ../bonobo/bonobo-window.c:345 msgid "Name of the window - used for configuration serialization." msgstr "Az ablak neve - a konfiguráció szerializációjához kell." #: ../bonobo/bonobo-zoomable.c:326 msgid "Zoom level" msgstr "Nagyítás mértéke" #: ../bonobo/bonobo-zoomable.c:327 msgid "The degree of enlargment" msgstr "A nagyítás mértéke" #: ../bonobo/bonobo-zoomable.c:335 msgid "Minimum Zoom level" msgstr "Legkisebb nagyítás mértéke" #: ../bonobo/bonobo-zoomable.c:336 msgid "The minimum degree of enlargment" msgstr "A legkisebb nagyítás mértéke" #: ../bonobo/bonobo-zoomable.c:344 msgid "Maximum Zoom level" msgstr "Legnagyobb nagyítás mértéke" #: ../bonobo/bonobo-zoomable.c:345 msgid "The maximum degree of enlargment" msgstr "A legnagyobb nagyítás mértéke" #: ../bonobo/bonobo-zoomable.c:353 msgid "Has a minimum Zoom level" msgstr "Van legkisebb nagyítás mértéke" #: ../bonobo/bonobo-zoomable.c:354 msgid "Whether we have a valid minimum zoom level" msgstr "Van-e érvényes legkisebb nagyítás mérték" #: ../bonobo/bonobo-zoomable.c:361 msgid "Has a maximum Zoom level" msgstr "Van legnagyobb nagyítás mértéke" #: ../bonobo/bonobo-zoomable.c:362 msgid "Whether we have a valid maximum zoom level" msgstr "Van-e érvényes legnagyobb nagyítás mérték" #: ../bonobo/bonobo-zoomable.c:369 msgid "Is continuous" msgstr "Folyamatos" #: ../bonobo/bonobo-zoomable.c:370 msgid "Whether we zoom continuously (as opposed to jumps)" msgstr "Folyamatosan nagyítható-e, vagy lépésenként" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:1 msgid "About this application" msgstr "Az alkalmazás névjegye" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:2 msgid "Select" msgstr "Kijelölés" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:3 msgid "_About..." msgstr "_Névjegy..." #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:4 msgid "_Edit" msgstr "S_zerkesztés" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:5 #: ../tools/browser/bonobo-browser.xml.h:4 msgid "_File" msgstr "_Fájl" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:6 msgid "_Select" msgstr "_Kijelölés" #: ../samples/bonoboui/hello.c:63 msgid "This does nothing; it is only a demonstration." msgstr "Ez semmit nem csinál, csak demó." #: ../samples/bonoboui/hello.c:145 msgid "BonoboUI-Hello." msgstr "BonoboUI-Hello." #: ../samples/bonoboui/hello.c:217 msgid "Gnome Hello" msgstr "Gnome Hello" #. Create Label and put it in the Button: #: ../samples/bonoboui/hello.c:272 msgid "Hello, World!" msgstr "Szia világ!" #: ../samples/bonoboui/hello.c:312 msgid "Cannot init libbonoboui code" msgstr "Nem lehet inicializálni a libbonoboui kódot" #: ../samples/controls/bonobo-sample-controls.c:131 msgid "Could not initialize Bonobo UI" msgstr "Nem lehet inicializálni a Bonobo UI-t" #: ../tools/browser/bonobo-browser.desktop.in.h:1 msgid "Bonobo Component Browser" msgstr "Bonobo-komponensböngésző" #: ../tools/browser/bonobo-browser.desktop.in.h:2 msgid "Shows available Bonobo components" msgstr "Elérhető Bonobo-komponensek megjelenítése" #: ../tools/browser/bonobo-browser.xml.h:1 msgid "About this program..." msgstr "A program névjegye..." #: ../tools/browser/bonobo-browser.xml.h:2 msgid "Close the current window" msgstr "A jelenlegi ablak bezárása" #: ../tools/browser/bonobo-browser.xml.h:3 msgid "Open a new window" msgstr "Új ablak megnyitása" #: ../tools/browser/bonobo-browser.xml.h:5 msgid "_Help" msgstr "_Súgó" #. Build the general tab #: ../tools/browser/component-details.c:109 msgid "General" msgstr "Általános" #: ../tools/browser/component-details.c:116 #: ../tools/browser/component-list.c:398 msgid "IID" msgstr "IID" #: ../tools/browser/component-details.c:117 msgid "Location" msgstr "Hely" #. Build the details tab #: ../tools/browser/component-details.c:167 msgid "Details" msgstr "Részletek" #: ../tools/browser/component-details.c:168 msgid "Detailed Information" msgstr "Részletes információk" #: ../tools/browser/component-list.c:367 ../tools/browser/window.c:283 msgid "Active" msgstr "Aktív" #: ../tools/browser/component-list.c:388 msgid "Type" msgstr "Típus" #: ../tools/browser/window.c:162 msgid "Component Details" msgstr "Komponens részletei" #: ../tools/browser/window.c:208 msgid "Bonobo Browser" msgstr "Bonobo-böngésző" #: ../tools/browser/window.c:210 msgid "Copyright 2001, The GNOME Foundation" msgstr "Copyright 2001, The GNOME Foundation" #: ../tools/browser/window.c:211 msgid "Bonobo component browser" msgstr "Bonobo-komponensböngésző" #: ../tools/browser/window.c:214 msgid "translator-credits" msgstr "" "Dvornik László \n" "Kelemen Gábor \n" "Kovács Emese \n" "Tímár András " #. create the window #: ../tools/browser/window.c:240 msgid "Component Browser" msgstr "Komponensböngésző" #. Fill out the tool bar #: ../tools/browser/window.c:280 msgid "All" msgstr "Mind" #: ../tools/browser/window.c:286 msgid "Inactive" msgstr "Inaktív" libbonoboui-2.24.5/po/ja.po0000664000076400007640000003425611546334521012430 00000000000000# libbonoboui ja.po. # Copyright (C) 1999-2003,2005-2008 Free Software Foundation, Inc. # Yukihiro Nakai , 1999. # Takayuki KUSANO , 1999, 2000, 2002. # KAMAGASAKO Masatoshi , 2003. # Takeshi AIHANA , 2003,2005-2008. # msgid "" msgstr "" "Project-Id-Version: libbonoboui master\n" "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?" "product=bonobo&component=libbonoboui\n" "POT-Creation-Date: 2010-07-21 11:19+0000\n" "PO-Revision-Date: 2008-02-02 21:12+0900\n" "Last-Translator: Takeshi AIHANA \n" "Language-Team: Japanese \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../bonobo/bonobo-canvas-item.c:680 msgid "corba factory" msgstr "CORBA ファクトリ" #: ../bonobo/bonobo-canvas-item.c:681 msgid "The factory pointer" msgstr "ファクトリ・ポインタ" #: ../bonobo/bonobo-canvas-item.c:690 msgid "corba UI container" msgstr "CORBA UI コンテナ" #: ../bonobo/bonobo-canvas-item.c:691 msgid "The User interface container" msgstr "ユーザ・インタフェース・コンテナ" #: ../bonobo/bonobo-dock-item-grip.c:254 msgid "Dock the toolbar" msgstr "ツールバーの組み込み" #: ../bonobo/bonobo-dock-item-grip.c:255 msgid "Undock the toolbar" msgstr "ツールバーの取り外し" #: ../bonobo/bonobo-dock-item.c:225 ../bonobo/bonobo-dock-item.c:226 #: ../bonobo/bonobo-ui-toolbar.c:1163 msgid "Shadow type" msgstr "シャドウの種類" #: ../bonobo/bonobo-dock-item.c:236 ../bonobo/bonobo-dock-item.c:237 #: ../bonobo/bonobo-ui-toolbar.c:1107 ../bonobo/bonobo-ui-toolbar.c:1108 msgid "Orientation" msgstr "向き" #: ../bonobo/bonobo-dock-item.c:247 ../bonobo/bonobo-dock-item.c:248 #: ../bonobo/bonobo-ui-toolbar.c:1126 ../bonobo/bonobo-ui-toolbar.c:1127 msgid "Preferred width" msgstr "お好みの幅" #: ../bonobo/bonobo-dock-item.c:256 ../bonobo/bonobo-dock-item.c:257 #: ../bonobo/bonobo-ui-toolbar.c:1135 ../bonobo/bonobo-ui-toolbar.c:1136 msgid "Preferred height" msgstr "お好みの高さ" #: ../bonobo/bonobo-file-selector-util.c:350 msgid "Select a file to open" msgstr "オープンするファイルの選択" #: ../bonobo/bonobo-file-selector-util.c:378 msgid "Select files to open" msgstr "オープンするファイルの選択" #: ../bonobo/bonobo-file-selector-util.c:407 msgid "Select a filename to save" msgstr "保存するファイル名の選択" #: ../bonobo/bonobo-plug.c:425 msgid "Event Forwarding" msgstr "イベントの転送" #: ../bonobo/bonobo-plug.c:426 msgid "Whether X events should be forwarded" msgstr "X イベントを転送するかどうか" #: ../bonobo/bonobo-selector-widget.c:300 ../bonobo/bonobo-window.c:347 #: ../tools/browser/component-details.c:108 #: ../tools/browser/component-list.c:369 msgid "Name" msgstr "名称" #: ../bonobo/bonobo-selector-widget.c:322 #: ../tools/browser/component-details.c:109 msgid "Description" msgstr "説明" #: ../bonobo/bonobo-selector.c:343 msgid "Interfaces required" msgstr "必要なインタフェース" #: ../bonobo/bonobo-selector.c:344 msgid "" "A NULL-terminated array of interfaces which a server must support in order " "to be listed in the selector. Defaults to \"IDL:Bonobo/Embeddable:1.0\" if " "no interfaces are listed" msgstr "" "サーバがサポートしなければならないインタフェースの配列 (終端は NULL 文字) " "で、セレクタの中にリスト化されます。インタフェースが一つもリスト化されていな" "い場合は、デフォルト値の \"IDL:Bonobo/Embeddable:1.0\" を使用します。" #: ../bonobo/bonobo-selector.c:346 msgid "Interface required entry" msgstr "必要なインタフェースのエントリ" #: ../bonobo/bonobo-selector.c:347 msgid "One of the interfaces that's required" msgstr "必要とされているインタフェースの一つ" #: ../bonobo/bonobo-ui-config-widget.c:267 msgid "Visible" msgstr "可視" #: ../bonobo/bonobo-ui-config-widget.c:274 msgid "_Show" msgstr "表示(_S)" #: ../bonobo/bonobo-ui-config-widget.c:281 msgid "_Hide" msgstr "隠す(_H)" #: ../bonobo/bonobo-ui-config-widget.c:287 msgid "_View tooltips" msgstr "ツールチップの表示(_V)" #: ../bonobo/bonobo-ui-config-widget.c:292 msgid "Toolbars" msgstr "ツールバー" #: ../bonobo/bonobo-ui-config-widget.c:302 msgid "toolbars" msgstr "ツールバー" #: ../bonobo/bonobo-ui-config-widget.c:313 #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "Look" msgstr "外観" #: ../bonobo/bonobo-ui-config-widget.c:322 #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "_Icon" msgstr "アイコン(_I)" #: ../bonobo/bonobo-ui-config-widget.c:328 msgid "_Text and Icon" msgstr "ラベルとアイコン(_T)" #: ../bonobo/bonobo-ui-config-widget.c:334 msgid "Text only" msgstr "ラベルのみ" #: ../bonobo/bonobo-ui-config-widget.c:340 msgid "_Priority text only" msgstr "優先ラベルのみ(_P)" #: ../bonobo/bonobo-ui-engine.c:93 msgid "Debug" msgstr "デバッグ" #: ../bonobo/bonobo-ui-engine.c:93 msgid "_Dump XML" msgstr "XML のダンプ(_D)" #: ../bonobo/bonobo-ui-engine.c:94 msgid "Dump the entire UI's XML description to the console" msgstr "すべての UI の XML 記述をコンソールに出力します" #: ../bonobo/bonobo-ui-engine-config.c:524 msgid "Configure UI" msgstr "UI の設定" #: ../bonobo/bonobo-ui-init-gtk.c:131 msgid "Gdk debugging flags to set" msgstr "有効にする Gdk のデバッグ・フラグ" #: ../bonobo/bonobo-ui-init-gtk.c:131 ../bonobo/bonobo-ui-init-gtk.c:134 #: ../bonobo/bonobo-ui-init-gtk.c:162 ../bonobo/bonobo-ui-init-gtk.c:165 msgid "FLAGS" msgstr "FLAGS" #: ../bonobo/bonobo-ui-init-gtk.c:134 msgid "Gdk debugging flags to unset" msgstr "無効にする Gdk のデバッグ・フラグ" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "X display to use" msgstr "使用する X ディスプレイ" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "DISPLAY" msgstr "DISPLAY" #: ../bonobo/bonobo-ui-init-gtk.c:142 msgid "X screen to use" msgstr "使用する X のスクリーン" #: ../bonobo/bonobo-ui-init-gtk.c:142 msgid "SCREEN" msgstr "SCREEN" #: ../bonobo/bonobo-ui-init-gtk.c:146 msgid "Make X calls synchronous" msgstr "X の呼び出しを同期する" #: ../bonobo/bonobo-ui-init-gtk.c:152 msgid "Don't use X shared memory extension" msgstr "X の共有メモリ拡張を使用しない" #: ../bonobo/bonobo-ui-init-gtk.c:156 msgid "Program name as used by the window manager" msgstr "ウインドウ・マネージャで使用するプログラム名" #: ../bonobo/bonobo-ui-init-gtk.c:156 msgid "NAME" msgstr "NAME" #: ../bonobo/bonobo-ui-init-gtk.c:159 msgid "Program class as used by the window manager" msgstr "ウインドウ・マネージャで使用するプログラムのクラス" #: ../bonobo/bonobo-ui-init-gtk.c:159 msgid "CLASS" msgstr "CLASS" #: ../bonobo/bonobo-ui-init-gtk.c:162 msgid "Gtk+ debugging flags to set" msgstr "有効にする GTK+ のデバッグ・フラグ" #: ../bonobo/bonobo-ui-init-gtk.c:165 msgid "Gtk+ debugging flags to unset" msgstr "無効にする GTK+ のデバッグ・フラグ" #: ../bonobo/bonobo-ui-init-gtk.c:168 msgid "Make all warnings fatal" msgstr "すべての警告を致命的なものとする" #: ../bonobo/bonobo-ui-init-gtk.c:171 msgid "Load an additional Gtk module" msgstr "追加で読み込む GTK+ モジュール" #: ../bonobo/bonobo-ui-init-gtk.c:171 msgid "MODULE" msgstr "MODULE" #: ../bonobo/bonobo-ui-init-gtk.c:187 msgid "GTK+" msgstr "GTK+" #: ../bonobo/bonobo-ui-main.c:281 msgid "Bonobo GUI support" msgstr "Bonobo GUI サポート" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "B_oth" msgstr "両方(_O)" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "T_ext" msgstr "テキスト(_E)" #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Hide t_ips" msgstr "ツールチップを隠す(_I)" #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Show t_ips" msgstr "ツールチップを表示する(_I)" #: ../bonobo/bonobo-ui-sync-toolbar.c:570 msgid "_Hide toolbar" msgstr "ツールバーを隠す(_H)" #: ../bonobo/bonobo-ui-sync-toolbar.c:570 msgid "Customi_ze" msgstr "カスタマイズ(_Z)" #: ../bonobo/bonobo-ui-sync-toolbar.c:571 msgid "Customize the toolbar" msgstr "ツールバーをカスタマイズします" #: ../bonobo/bonobo-ui-toolbar.c:1117 msgid "is floating" msgstr "取り外し中" #: ../bonobo/bonobo-ui-toolbar.c:1118 msgid "whether the toolbar is floating" msgstr "ツールバーが取り外されているかどうか" #: ../bonobo/bonobo-ui-toolbar.c:1164 msgid "Style of bevel around the toolbar" msgstr "ツールバーまわりの傾斜 (ベベル) のスタイル" #: ../bonobo/bonobo-ui-util.c:602 msgid "Could not display help for this application" msgstr "このアプリケーションのヘルプを表示できませんでした" #: ../bonobo/bonobo-ui-util.c:644 msgid "_Contents" msgstr "目次(_C)" #: ../bonobo/bonobo-ui-util.c:645 msgid "View help for this application" msgstr "このアプリケーションのヘルプを表示します" #: ../bonobo/bonobo-window.c:348 msgid "Name of the window - used for configuration serialization." msgstr "ウインドウ名 - 設定のシリアライズに使用します" #: ../bonobo/bonobo-zoomable.c:326 msgid "Zoom level" msgstr "拡大率" #: ../bonobo/bonobo-zoomable.c:327 msgid "The degree of enlargment" msgstr "どのくらい拡大するか" #: ../bonobo/bonobo-zoomable.c:335 msgid "Minimum Zoom level" msgstr "最小拡大率" #: ../bonobo/bonobo-zoomable.c:336 msgid "The minimum degree of enlargment" msgstr "最低限どの程度拡大するか" #: ../bonobo/bonobo-zoomable.c:344 msgid "Maximum Zoom level" msgstr "最大拡大率" #: ../bonobo/bonobo-zoomable.c:345 msgid "The maximum degree of enlargment" msgstr "最大でどの程度拡大するか" #: ../bonobo/bonobo-zoomable.c:353 msgid "Has a minimum Zoom level" msgstr "最小拡大率有り" #: ../bonobo/bonobo-zoomable.c:354 msgid "Whether we have a valid minimum zoom level" msgstr "正しい最小拡大率を設定しているかどうか" #: ../bonobo/bonobo-zoomable.c:361 msgid "Has a maximum Zoom level" msgstr "最大拡大率有り" #: ../bonobo/bonobo-zoomable.c:362 msgid "Whether we have a valid maximum zoom level" msgstr "正しい最大拡大率を設定しているかどうか" #: ../bonobo/bonobo-zoomable.c:369 msgid "Is continuous" msgstr "連続的" #: ../bonobo/bonobo-zoomable.c:370 msgid "Whether we zoom continuously (as opposed to jumps)" msgstr "(段階的ではなく) 連続的に拡大できるかどうか" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:1 msgid "About this application" msgstr "このアプリケーションについて" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:2 msgid "Select" msgstr "選択" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:3 msgid "_About..." msgstr "情報(_A)..." #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:4 msgid "_Edit" msgstr "編集(_E)" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:5 #: ../tools/browser/bonobo-browser.xml.h:4 msgid "_File" msgstr "ファイル(_F)" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:6 msgid "_Select" msgstr "選択(_S)" #: ../samples/bonoboui/hello.c:65 msgid "This does nothing; it is only a demonstration." msgstr "何もしません。ただのデモです。" #: ../samples/bonoboui/hello.c:147 msgid "BonoboUI-Hello." msgstr "BnoboUI-Hello." #: ../samples/bonoboui/hello.c:219 msgid "Gnome Hello" msgstr "Gnome Hello" #. Create Label and put it in the Button: #: ../samples/bonoboui/hello.c:274 msgid "Hello, World!" msgstr "こんにちは、世界!" #: ../samples/bonoboui/hello.c:314 msgid "Cannot init libbonoboui code" msgstr "libbonoboui のコードを初期化できません" #: ../samples/controls/bonobo-sample-controls.c:133 msgid "Could not initialize Bonobo UI" msgstr "Bonobo UI を初期化できませんでした" #: ../tools/browser/bonobo-browser.desktop.in.h:1 msgid "Bonobo Component Browser" msgstr "Bonobo コンポーネント・ブラウザ" #: ../tools/browser/bonobo-browser.desktop.in.h:2 msgid "Shows available Bonobo components" msgstr "利用可能な Bonobo コンポーネントを表示します" #: ../tools/browser/bonobo-browser.xml.h:1 msgid "About this program..." msgstr "このプログラムについて..." #: ../tools/browser/bonobo-browser.xml.h:2 msgid "Close the current window" msgstr "このウィンドウを閉じます" #: ../tools/browser/bonobo-browser.xml.h:3 msgid "Open a new window" msgstr "新しいウィンドウを開きます" #: ../tools/browser/bonobo-browser.xml.h:5 msgid "_Help" msgstr "ヘルプ(_H)" #. Build the general tab #: ../tools/browser/component-details.c:103 msgid "General" msgstr "全般" #: ../tools/browser/component-details.c:110 #: ../tools/browser/component-list.c:389 msgid "IID" msgstr "IID" #: ../tools/browser/component-details.c:111 msgid "Location" msgstr "場所" #. Build the details tab #: ../tools/browser/component-details.c:161 msgid "Details" msgstr "詳細" #: ../tools/browser/component-details.c:162 msgid "Detailed Information" msgstr "詳細な情報" #: ../tools/browser/component-list.c:358 ../tools/browser/window.c:283 msgid "Active" msgstr "起動中" #: ../tools/browser/component-list.c:379 msgid "Type" msgstr "種類" #: ../tools/browser/window.c:162 msgid "Component Details" msgstr "コンポーネントの詳細" #: ../tools/browser/window.c:208 msgid "Bonobo Browser" msgstr "Bonobo ブラウザ" #: ../tools/browser/window.c:210 msgid "Copyright 2001, The GNOME Foundation" msgstr "Copyright 2001, The GNOME Foundation" #: ../tools/browser/window.c:211 msgid "Bonobo component browser" msgstr "Bonobo コンポーネント・ブラウザ" #: ../tools/browser/window.c:214 msgid "translator-credits" msgstr "" "相花 毅 \n" "KAMAGASAKO Masatoshi \n" "Takayuki KUSANO \n" "Yukihiro Nakai \n" "日本GNOMEユーザー会 http://www.gnome.gr.jp" #. create the window #: ../tools/browser/window.c:240 msgid "Component Browser" msgstr "コンポーネント・ブラウザ" #. Fill out the tool bar #: ../tools/browser/window.c:280 msgid "All" msgstr "すべて" #: ../tools/browser/window.c:286 msgid "Inactive" msgstr "未起動" libbonoboui-2.24.5/po/hr.po0000644000076400007640000003303211173072741012433 00000000000000# Translation of libbonoboui to Croatiann # Copyright (C) Croatiann team # Translators: Automatski Prijevod <>,Robert Sedak , msgid "" msgstr "" "Project-Id-Version: libbonoboui 0\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2008-09-09 16:02+0200\n" "PO-Revision-Date: 2007-06-03 03:43+0000\n" "Last-Translator: Launchpad Translations Administrators \n" "Language-Team: Croatian \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%" "10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n" "X-Launchpad-Export-Date: 2008-05-28 09:26+0000\n" "X-Generator: Launchpad (build Unknown)\n" #: ../bonobo/bonobo-canvas-item.c:680 msgid "corba factory" msgstr "corba tvornica" #: ../bonobo/bonobo-canvas-item.c:681 msgid "The factory pointer" msgstr "Pokazivač tvornice" #: ../bonobo/bonobo-canvas-item.c:690 msgid "corba UI container" msgstr "Spremnik corba UI" #: ../bonobo/bonobo-canvas-item.c:691 msgid "The User interface container" msgstr "Spremnik korisničkog sučelja" #: ../bonobo/bonobo-dock-item-grip.c:255 msgid "Dock the toolbar" msgstr "Usidri traku s alatima" #: ../bonobo/bonobo-dock-item-grip.c:256 msgid "Undock the toolbar" msgstr "Odsidri traku s alatima" #: ../bonobo/bonobo-dock-item.c:228 ../bonobo/bonobo-dock-item.c:229 #: ../bonobo/bonobo-ui-toolbar.c:1161 msgid "Shadow type" msgstr "Vrsta sjene" #: ../bonobo/bonobo-dock-item.c:239 ../bonobo/bonobo-dock-item.c:240 #: ../bonobo/bonobo-ui-toolbar.c:1105 ../bonobo/bonobo-ui-toolbar.c:1106 msgid "Orientation" msgstr "Orijentacija" #: ../bonobo/bonobo-dock-item.c:250 ../bonobo/bonobo-dock-item.c:251 #: ../bonobo/bonobo-ui-toolbar.c:1124 ../bonobo/bonobo-ui-toolbar.c:1125 msgid "Preferred width" msgstr "Najpogodnija širina" #: ../bonobo/bonobo-dock-item.c:259 ../bonobo/bonobo-dock-item.c:260 #: ../bonobo/bonobo-ui-toolbar.c:1133 ../bonobo/bonobo-ui-toolbar.c:1134 msgid "Preferred height" msgstr "Preporučena visina" #: ../bonobo/bonobo-file-selector-util.c:355 msgid "Select a file to open" msgstr "Odaberi datoteku" #: ../bonobo/bonobo-file-selector-util.c:383 msgid "Select files to open" msgstr "Izaberite datoteke za otvaranje" #: ../bonobo/bonobo-file-selector-util.c:412 msgid "Select a filename to save" msgstr "Izaberite ime datoteke za spremanje" #: ../bonobo/bonobo-plug.c:423 msgid "Event Forwarding" msgstr "Događaj prosljeđivanja" #: ../bonobo/bonobo-plug.c:424 msgid "Whether X events should be forwarded" msgstr "Koji X događaji trebaju biti proslijeđeni" #: ../bonobo/bonobo-selector-widget.c:297 ../bonobo/bonobo-window.c:344 #: ../tools/browser/component-details.c:114 #: ../tools/browser/component-list.c:378 msgid "Name" msgstr "Ime" #: ../bonobo/bonobo-selector-widget.c:319 #: ../tools/browser/component-details.c:115 msgid "Description" msgstr "Opis" #: ../bonobo/bonobo-selector.c:343 msgid "Interfaces required" msgstr "Potrebno je sučelje" #: ../bonobo/bonobo-selector.c:344 msgid "" "A NULL-terminated array of interfaces which a server must support in order " "to be listed in the selector. Defaults to \"IDL:Bonobo/Embeddable:1.0\" if " "no interfaces are listed" msgstr "" "NULL-završno polje sučelja koje poslužitelj mora podržavati kako bi mogao " "biti popisan u izborniku. Uobičajeno u \"IDL:Bonobo/Embeddable:1.0\" ukoliko " "nije niti jedno sučelje na popisu" #: ../bonobo/bonobo-selector.c:346 msgid "Interface required entry" msgstr "Unos koji se mora izvršiti pomoću sučelja" #: ../bonobo/bonobo-selector.c:347 msgid "One of the interfaces that's required" msgstr "Jedno od sučelja koje je potrebno" #: ../bonobo/bonobo-ui-config-widget.c:265 msgid "Visible" msgstr "Vidljivo" #: ../bonobo/bonobo-ui-config-widget.c:272 msgid "_Show" msgstr "_Prikaži" #: ../bonobo/bonobo-ui-config-widget.c:279 msgid "_Hide" msgstr "_Sakrij" #: ../bonobo/bonobo-ui-config-widget.c:285 msgid "_View tooltips" msgstr "_Prikaži opise alata" #: ../bonobo/bonobo-ui-config-widget.c:290 msgid "Toolbars" msgstr "Alatne trake" #: ../bonobo/bonobo-ui-config-widget.c:300 msgid "toolbars" msgstr "trake s alatima" #: ../bonobo/bonobo-ui-config-widget.c:311 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "Look" msgstr "Pogled" #: ../bonobo/bonobo-ui-config-widget.c:320 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "_Icon" msgstr "_SLIČICA" #: ../bonobo/bonobo-ui-config-widget.c:326 msgid "_Text and Icon" msgstr "_Tekst i sličice" #: ../bonobo/bonobo-ui-config-widget.c:332 msgid "Text only" msgstr "Samo tekst" #: ../bonobo/bonobo-ui-config-widget.c:338 msgid "_Priority text only" msgstr "Samo _prioritetni tekst" #: ../bonobo/bonobo-ui-engine.c:91 msgid "Debug" msgstr "Pronalaženje grešaka" #: ../bonobo/bonobo-ui-engine.c:91 msgid "_Dump XML" msgstr "_Ispiši XML" #: ../bonobo/bonobo-ui-engine.c:92 msgid "Dump the entire UI's XML description to the console" msgstr "Izbaci čitav XML opus korisničkog sučelja na konzolu" #: ../bonobo/bonobo-ui-engine-config.c:522 msgid "Configure UI" msgstr "Podesi korisničko sučelje" #: ../bonobo/bonobo-ui-init-gtk.c:131 msgid "Gdk debugging flags to set" msgstr "Postavi Gdk zastavice za pronalaženje grešaka u programu" #: ../bonobo/bonobo-ui-init-gtk.c:131 ../bonobo/bonobo-ui-init-gtk.c:134 #: ../bonobo/bonobo-ui-init-gtk.c:162 ../bonobo/bonobo-ui-init-gtk.c:165 msgid "FLAGS" msgstr "ZASTAVICE" #: ../bonobo/bonobo-ui-init-gtk.c:134 msgid "Gdk debugging flags to unset" msgstr "Ukloni Gdk zastavice za pronalaženje grešaka u programu" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "X display to use" msgstr "Koji se X zaslon koristi" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "DISPLAY" msgstr "PRIKAŽI" #: ../bonobo/bonobo-ui-init-gtk.c:142 msgid "X screen to use" msgstr "Koji se X zaslon koristi" #: ../bonobo/bonobo-ui-init-gtk.c:142 msgid "SCREEN" msgstr "ZASLON" #: ../bonobo/bonobo-ui-init-gtk.c:146 msgid "Make X calls synchronous" msgstr "Stvara X pozive sinkronizirane" #: ../bonobo/bonobo-ui-init-gtk.c:152 msgid "Don't use X shared memory extension" msgstr "Ne koristi dodatak dijeljenja memorije za X sustav" #: ../bonobo/bonobo-ui-init-gtk.c:156 msgid "Program name as used by the window manager" msgstr "Ime programa koje koristi upravitelj prozorima" #: ../bonobo/bonobo-ui-init-gtk.c:156 msgid "NAME" msgstr "IME" #: ../bonobo/bonobo-ui-init-gtk.c:159 msgid "Program class as used by the window manager" msgstr "Programska klasa koju koristi upravitelj prozora" #: ../bonobo/bonobo-ui-init-gtk.c:159 msgid "CLASS" msgstr "KLASA" #: ../bonobo/bonobo-ui-init-gtk.c:162 msgid "Gtk+ debugging flags to set" msgstr "Postavi Gtk+ zastavice za pronalaženje grešaka u programu" #: ../bonobo/bonobo-ui-init-gtk.c:165 msgid "Gtk+ debugging flags to unset" msgstr "Ukloni Gtk+ zastavice za pronalaženje grešaka u programu" #: ../bonobo/bonobo-ui-init-gtk.c:168 msgid "Make all warnings fatal" msgstr "Stvara sva upozorenja opasnima" #: ../bonobo/bonobo-ui-init-gtk.c:171 msgid "Load an additional Gtk module" msgstr "Učitaj dodatni Gtk modul" #: ../bonobo/bonobo-ui-init-gtk.c:171 msgid "MODULE" msgstr "MODUL" #: ../bonobo/bonobo-ui-init-gtk.c:187 msgid "GTK+" msgstr "GTK+" #: ../bonobo/bonobo-ui-main.c:278 msgid "Bonobo GUI support" msgstr "Podrška Bonobo grafičkom sučelju" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "B_oth" msgstr "_Oboje" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "T_ext" msgstr "T_ekst" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Hide t_ips" msgstr "Sakri savjete" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Show t_ips" msgstr "Prikaži _savijete" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "_Hide toolbar" msgstr "_Sakrij traku s alatima" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "Customi_ze" msgstr "_Prilagodi" #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Customize the toolbar" msgstr "Prilagodi traku s alatima" #: ../bonobo/bonobo-ui-toolbar.c:1115 msgid "is floating" msgstr "je plutajući" #: ../bonobo/bonobo-ui-toolbar.c:1116 msgid "whether the toolbar is floating" msgstr "Bilo da traka s alatima pluta" #: ../bonobo/bonobo-ui-toolbar.c:1162 msgid "Style of bevel around the toolbar" msgstr "Stil slikovnog okvira oko trake s alatima" #: ../bonobo/bonobo-ui-util.c:601 msgid "Could not display help for this application" msgstr "Ne mogu prikazari sustav pomoći za ovaj program" #: ../bonobo/bonobo-ui-util.c:643 msgid "_Contents" msgstr "_Sadržaj" #: ../bonobo/bonobo-ui-util.c:644 msgid "View help for this application" msgstr "Pogledaj pomoć za ovaj program" #: ../bonobo/bonobo-window.c:345 msgid "Name of the window - used for configuration serialization." msgstr "Ime prozora - koristi se za serijalizaciju postavki." #: ../bonobo/bonobo-zoomable.c:326 msgid "Zoom level" msgstr "Razina povećanja" #: ../bonobo/bonobo-zoomable.c:327 msgid "The degree of enlargment" msgstr "Postotak proširenja" #: ../bonobo/bonobo-zoomable.c:335 msgid "Minimum Zoom level" msgstr "najmanja razina povećanja" #: ../bonobo/bonobo-zoomable.c:336 msgid "The minimum degree of enlargment" msgstr "Najmanji postotak proširenja" #: ../bonobo/bonobo-zoomable.c:344 msgid "Maximum Zoom level" msgstr "Najveća razina povećanja" #: ../bonobo/bonobo-zoomable.c:345 msgid "The maximum degree of enlargment" msgstr "Najveći postotak proširenja" #: ../bonobo/bonobo-zoomable.c:353 msgid "Has a minimum Zoom level" msgstr "Ima najmanju razinu uvećanja/umanjenja" #: ../bonobo/bonobo-zoomable.c:354 msgid "Whether we have a valid minimum zoom level" msgstr "Bilo da imamo ispravnu najmanju razinu povećanja" #: ../bonobo/bonobo-zoomable.c:361 msgid "Has a maximum Zoom level" msgstr "Ima najveću razinu uvećanja/umanjenja" #: ../bonobo/bonobo-zoomable.c:362 msgid "Whether we have a valid maximum zoom level" msgstr "Bilo da imamo ispravnu najveću raznu povećanja" #: ../bonobo/bonobo-zoomable.c:369 msgid "Is continuous" msgstr "Nastavlja se" #: ../bonobo/bonobo-zoomable.c:370 msgid "Whether we zoom continuously (as opposed to jumps)" msgstr "Bilo da neprekidno povećavamo (suprotno od skokova)" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:1 msgid "About this application" msgstr "O ovoj aplikaciji" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:2 msgid "Select" msgstr "Odaberi" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:3 msgid "_About..." msgstr "_O..." #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:4 msgid "_Edit" msgstr "_Uredi" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:5 #: ../tools/browser/bonobo-browser.xml.h:4 msgid "_File" msgstr "_Datoteka" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:6 msgid "_Select" msgstr "_Odaberi" #: ../samples/bonoboui/hello.c:63 msgid "This does nothing; it is only a demonstration." msgstr "Ovo ne radi ništa, ovo je samo demonstracija." #: ../samples/bonoboui/hello.c:145 msgid "BonoboUI-Hello." msgstr "BonoboUI-Dobar dan." #: ../samples/bonoboui/hello.c:217 msgid "Gnome Hello" msgstr "Gnome Dobar dan" #. Create Label and put it in the Button: #: ../samples/bonoboui/hello.c:272 msgid "Hello, World!" msgstr "Dobar dan, svijete!" #: ../samples/bonoboui/hello.c:312 msgid "Cannot init libbonoboui code" msgstr "ne mogu pokrenuti libbonoboui kod" #: ../samples/controls/bonobo-sample-controls.c:131 msgid "Could not initialize Bonobo UI" msgstr "Ne mogu pokrenuti Bonobo korisničko sučelje" #: ../tools/browser/bonobo-browser.desktop.in.h:1 msgid "Bonobo Component Browser" msgstr "Pretraživač Bonobo komponenti" #: ../tools/browser/bonobo-browser.desktop.in.h:2 msgid "Shows available Bonobo components" msgstr "Prikazuje dostupne Bonobo komponente" #: ../tools/browser/bonobo-browser.xml.h:1 msgid "About this program..." msgstr "O ovom programu..." #: ../tools/browser/bonobo-browser.xml.h:2 msgid "Close the current window" msgstr "Zatvori trenutni prozor" #: ../tools/browser/bonobo-browser.xml.h:3 msgid "Open a new window" msgstr "Otvori novi prozor" #: ../tools/browser/bonobo-browser.xml.h:5 msgid "_Help" msgstr "_Pomoć" #. Build the general tab #: ../tools/browser/component-details.c:109 msgid "General" msgstr "Općenito" #: ../tools/browser/component-details.c:116 #: ../tools/browser/component-list.c:398 msgid "IID" msgstr "IID" #: ../tools/browser/component-details.c:117 msgid "Location" msgstr "Lokacija" #. Build the details tab #: ../tools/browser/component-details.c:167 msgid "Details" msgstr "Detalji" #: ../tools/browser/component-details.c:168 msgid "Detailed Information" msgstr "Detaljne informacije" #: ../tools/browser/component-list.c:367 ../tools/browser/window.c:283 msgid "Active" msgstr "Aktivno" #: ../tools/browser/component-list.c:388 msgid "Type" msgstr "Vrsta" #: ../tools/browser/window.c:162 msgid "Component Details" msgstr "Detalji komponente" #: ../tools/browser/window.c:208 msgid "Bonobo Browser" msgstr "Bonobo pretraživač" #: ../tools/browser/window.c:210 msgid "Copyright 2001, The GNOME Foundation" msgstr "Copyright 2001, Gnome fondacija" #: ../tools/browser/window.c:211 msgid "Bonobo component browser" msgstr "Pretraživač Bonobo komponenti" #: ../tools/browser/window.c:214 msgid "translator-credits" msgstr "" "lokalizacija@linux.hr\n" " Automatski Prijevod <>\n" " Robert Sedak \n" "\n" "Launchpad Contributions:\n" " Ante Karamatić https://launchpad.net/~ivoks\n" " Launchpad Translations Administrators https://launchpad.net/~rosetta-admins" #. create the window #: ../tools/browser/window.c:240 msgid "Component Browser" msgstr "Pretraživač komponenti" #. Fill out the tool bar #: ../tools/browser/window.c:280 msgid "All" msgstr "Sve" #: ../tools/browser/window.c:286 msgid "Inactive" msgstr "Neaktivno" libbonoboui-2.24.5/po/es.po0000644000076400007640000003351111200301551012414 00000000000000# translation of libbonoboui.HEAD.po to Español # Héctor García Álvarez , 2001. # Juan Manuel García Molina , 2002. # Francisco Javier F. Serrador , 2003. # Francisco Javier F. Serrador , 2004, 2006. # traducción de es.po al Spanish # Translation into spanish of libbonoboui. # Copyright (C) 2001,2003, 2004, 2006, 2007, 2008 Free Software Foundation, Inc. # Jorge González , 2007, 200, 2009. msgid "" msgstr "" "Project-Id-Version: libbonoboui.HEAD\n" "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?" "product=libbonoboui&component=general\n" "POT-Creation-Date: 2009-04-17 13:14+0000\n" "PO-Revision-Date: 2009-05-02 14:59+0200\n" "Last-Translator: Jorge González \n" "Language-Team: Español \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Generator: KBabel 1.11.4\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" #: ../bonobo/bonobo-canvas-item.c:680 msgid "corba factory" msgstr "fábrica corba" #: ../bonobo/bonobo-canvas-item.c:681 msgid "The factory pointer" msgstr "El puntero de la fábrica" #: ../bonobo/bonobo-canvas-item.c:690 msgid "corba UI container" msgstr "contenedor corba UI" #: ../bonobo/bonobo-canvas-item.c:691 msgid "The User interface container" msgstr "El contenedor de la interfaz de usuario" #: ../bonobo/bonobo-dock-item-grip.c:254 msgid "Dock the toolbar" msgstr "Empotrar la barra de herramientas" #: ../bonobo/bonobo-dock-item-grip.c:255 msgid "Undock the toolbar" msgstr "Desempotrar la barra de herramientas" #: ../bonobo/bonobo-dock-item.c:225 ../bonobo/bonobo-dock-item.c:226 #: ../bonobo/bonobo-ui-toolbar.c:1163 msgid "Shadow type" msgstr "Tipo oculto" #: ../bonobo/bonobo-dock-item.c:236 ../bonobo/bonobo-dock-item.c:237 #: ../bonobo/bonobo-ui-toolbar.c:1107 ../bonobo/bonobo-ui-toolbar.c:1108 msgid "Orientation" msgstr "Orientación" #: ../bonobo/bonobo-dock-item.c:247 ../bonobo/bonobo-dock-item.c:248 #: ../bonobo/bonobo-ui-toolbar.c:1126 ../bonobo/bonobo-ui-toolbar.c:1127 msgid "Preferred width" msgstr "Ancho preferido" #: ../bonobo/bonobo-dock-item.c:256 ../bonobo/bonobo-dock-item.c:257 #: ../bonobo/bonobo-ui-toolbar.c:1135 ../bonobo/bonobo-ui-toolbar.c:1136 msgid "Preferred height" msgstr "Altura preferida" #: ../bonobo/bonobo-file-selector-util.c:350 msgid "Select a file to open" msgstr "Seleccione un archivo a abrir" #: ../bonobo/bonobo-file-selector-util.c:378 msgid "Select files to open" msgstr "Seleccione los archivos a abrir" #: ../bonobo/bonobo-file-selector-util.c:407 msgid "Select a filename to save" msgstr "Seleccione un nombre de archivo para guardar" #: ../bonobo/bonobo-plug.c:425 msgid "Event Forwarding" msgstr "Redirección de eventos" #: ../bonobo/bonobo-plug.c:426 msgid "Whether X events should be forwarded" msgstr "Si se deben redirigir los eventos de X" #: ../bonobo/bonobo-selector-widget.c:300 ../bonobo/bonobo-window.c:347 #: ../tools/browser/component-details.c:108 #: ../tools/browser/component-list.c:369 msgid "Name" msgstr "Nombre" #: ../bonobo/bonobo-selector-widget.c:322 #: ../tools/browser/component-details.c:109 msgid "Description" msgstr "Descripción" #: ../bonobo/bonobo-selector.c:343 msgid "Interfaces required" msgstr "Interfaces requeridas" #: ../bonobo/bonobo-selector.c:344 msgid "" "A NULL-terminated array of interfaces which a server must support in order " "to be listed in the selector. Defaults to \"IDL:Bonobo/Embeddable:1.0\" if " "no interfaces are listed" msgstr "" "Para que un servidor sea listado en el selector, debe soportar un array de " "interfaces terminado en nulo. De forma predeterminada es «IDL:Bonobo/" "Embeddable:1.0» si no se listan ninguna interfaz" #: ../bonobo/bonobo-selector.c:346 msgid "Interface required entry" msgstr "Entrada requerida por el interfaz" #: ../bonobo/bonobo-selector.c:347 msgid "One of the interfaces that's required" msgstr "Uno de los interfaces que se necesitan" #: ../bonobo/bonobo-ui-config-widget.c:267 msgid "Visible" msgstr "Visible" #: ../bonobo/bonobo-ui-config-widget.c:274 msgid "_Show" msgstr "Mo_strar" #: ../bonobo/bonobo-ui-config-widget.c:281 msgid "_Hide" msgstr "_Ocultar" #: ../bonobo/bonobo-ui-config-widget.c:287 msgid "_View tooltips" msgstr "_Ver consejos" #: ../bonobo/bonobo-ui-config-widget.c:292 msgid "Toolbars" msgstr "Barras de herramientas" #: ../bonobo/bonobo-ui-config-widget.c:302 msgid "toolbars" msgstr "barras de herramientas" #: ../bonobo/bonobo-ui-config-widget.c:313 #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "Look" msgstr "Apariencia" #: ../bonobo/bonobo-ui-config-widget.c:322 #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "_Icon" msgstr "_Icono" #: ../bonobo/bonobo-ui-config-widget.c:328 msgid "_Text and Icon" msgstr "_Texto e icono" #: ../bonobo/bonobo-ui-config-widget.c:334 msgid "Text only" msgstr "Sólo texto" #: ../bonobo/bonobo-ui-config-widget.c:340 msgid "_Priority text only" msgstr "Solo texto _prioritario" #: ../bonobo/bonobo-ui-engine.c:93 msgid "Debug" msgstr "Depurar" #: ../bonobo/bonobo-ui-engine.c:93 msgid "_Dump XML" msgstr "_Volcar XML" #: ../bonobo/bonobo-ui-engine.c:94 msgid "Dump the entire UI's XML description to the console" msgstr "Volcar la descripción completa del XML de la UI a la consola" #: ../bonobo/bonobo-ui-engine-config.c:524 msgid "Configure UI" msgstr "Configurar UI" #: ../bonobo/bonobo-ui-init-gtk.c:131 msgid "Gdk debugging flags to set" msgstr "Banderas de depuración de GDK a establecer" #: ../bonobo/bonobo-ui-init-gtk.c:131 ../bonobo/bonobo-ui-init-gtk.c:134 #: ../bonobo/bonobo-ui-init-gtk.c:162 ../bonobo/bonobo-ui-init-gtk.c:165 msgid "FLAGS" msgstr "BANDERAS" #: ../bonobo/bonobo-ui-init-gtk.c:134 msgid "Gdk debugging flags to unset" msgstr "Banderas de depuración de GDK a desactivar" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "X display to use" msgstr "Visor (display) X que usar" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "DISPLAY" msgstr "VISOR" #: ../bonobo/bonobo-ui-init-gtk.c:142 msgid "X screen to use" msgstr "Pantalla (screen) X que usar" #: ../bonobo/bonobo-ui-init-gtk.c:142 msgid "SCREEN" msgstr "PANTALLA" #: ../bonobo/bonobo-ui-init-gtk.c:146 msgid "Make X calls synchronous" msgstr "Hacer llamadas a X síncronas" #: ../bonobo/bonobo-ui-init-gtk.c:152 msgid "Don't use X shared memory extension" msgstr "No usar la extensión de memoria compartida de X" #: ../bonobo/bonobo-ui-init-gtk.c:156 msgid "Program name as used by the window manager" msgstr "Nombre de programa tal y como lo usa el gestor de ventanas" #: ../bonobo/bonobo-ui-init-gtk.c:156 msgid "NAME" msgstr "NOMBRE" #: ../bonobo/bonobo-ui-init-gtk.c:159 msgid "Program class as used by the window manager" msgstr "Clase de programa tal y como la usa el gestor de ventanas" #: ../bonobo/bonobo-ui-init-gtk.c:159 msgid "CLASS" msgstr "CLASE" #: ../bonobo/bonobo-ui-init-gtk.c:162 msgid "Gtk+ debugging flags to set" msgstr "Banderas de depuración de GTK+ a fijar" #: ../bonobo/bonobo-ui-init-gtk.c:165 msgid "Gtk+ debugging flags to unset" msgstr "Banderas de depuración de GTK+ a desactivar" #: ../bonobo/bonobo-ui-init-gtk.c:168 msgid "Make all warnings fatal" msgstr "Hacer que todos los avisos actúen como errores" #: ../bonobo/bonobo-ui-init-gtk.c:171 msgid "Load an additional Gtk module" msgstr "Cargar un módulo GTK adicional" #: ../bonobo/bonobo-ui-init-gtk.c:171 msgid "MODULE" msgstr "MODULO" #: ../bonobo/bonobo-ui-init-gtk.c:187 msgid "GTK+" msgstr "GTK+" #: ../bonobo/bonobo-ui-main.c:281 msgid "Bonobo GUI support" msgstr "Soporte de interfaz de Bonobo" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "B_oth" msgstr "Amb_os" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "T_ext" msgstr "T_exto" #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Hide t_ips" msgstr "Ocultar c_onsejos" #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Show t_ips" msgstr "Mostrar c_onsejos" #: ../bonobo/bonobo-ui-sync-toolbar.c:570 msgid "_Hide toolbar" msgstr "O_cultar barra de herramientas" #: ../bonobo/bonobo-ui-sync-toolbar.c:570 msgid "Customi_ze" msgstr "Personali_zar" #: ../bonobo/bonobo-ui-sync-toolbar.c:571 msgid "Customize the toolbar" msgstr "Personalizar la barra de herramientas" #: ../bonobo/bonobo-ui-toolbar.c:1117 msgid "is floating" msgstr "flotante" #: ../bonobo/bonobo-ui-toolbar.c:1118 msgid "whether the toolbar is floating" msgstr "si la barra de herramientas es flotante" #: ../bonobo/bonobo-ui-toolbar.c:1164 msgid "Style of bevel around the toolbar" msgstr "Estilo de bisel alrededor de la barra de herramientas" #: ../bonobo/bonobo-ui-util.c:602 msgid "Could not display help for this application" msgstr "No se pudo mostrar la ayuda para esta aplicación" #: ../bonobo/bonobo-ui-util.c:644 msgid "_Contents" msgstr "Índ_ice" #: ../bonobo/bonobo-ui-util.c:645 msgid "View help for this application" msgstr "Ver la ayuda para esta aplicación" #: ../bonobo/bonobo-window.c:348 msgid "Name of the window - used for configuration serialization." msgstr "Nombre de la ventana - usado para serialización de configuración." #: ../bonobo/bonobo-zoomable.c:326 msgid "Zoom level" msgstr "Nivel de ampliación" #: ../bonobo/bonobo-zoomable.c:327 msgid "The degree of enlargment" msgstr "Grado de alargamiento" #: ../bonobo/bonobo-zoomable.c:335 msgid "Minimum Zoom level" msgstr "Nivel de ampliación mínimo" #: ../bonobo/bonobo-zoomable.c:336 msgid "The minimum degree of enlargment" msgstr "El mínimo grado de alargamiento" #: ../bonobo/bonobo-zoomable.c:344 msgid "Maximum Zoom level" msgstr "Máximo nivel de ampliación" #: ../bonobo/bonobo-zoomable.c:345 msgid "The maximum degree of enlargment" msgstr "El máximo grado de alargamiento" #: ../bonobo/bonobo-zoomable.c:353 msgid "Has a minimum Zoom level" msgstr "Tiene un nivel mínimo de ampliación" #: ../bonobo/bonobo-zoomable.c:354 msgid "Whether we have a valid minimum zoom level" msgstr "Si se tiene un nivel mínimo de ampliación válido" #: ../bonobo/bonobo-zoomable.c:361 msgid "Has a maximum Zoom level" msgstr "Tiene un nivel de ampliación máximo" #: ../bonobo/bonobo-zoomable.c:362 msgid "Whether we have a valid maximum zoom level" msgstr "Si tiene un nivel máximo de ampliación válido" #: ../bonobo/bonobo-zoomable.c:369 msgid "Is continuous" msgstr "Es continuo" #: ../bonobo/bonobo-zoomable.c:370 msgid "Whether we zoom continuously (as opposed to jumps)" msgstr "" "Si se realiza ampliación de forma continua (opuesto a hacerlo a saltos)" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:1 msgid "About this application" msgstr "Acerca de esta aplicación" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:2 msgid "Select" msgstr "Seleccionar" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:3 msgid "_About..." msgstr "A_cerca de..." #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:4 msgid "_Edit" msgstr "_Editar" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:5 #: ../tools/browser/bonobo-browser.xml.h:4 msgid "_File" msgstr "_Archivo" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:6 msgid "_Select" msgstr "_Seleccionar" #: ../samples/bonoboui/hello.c:65 msgid "This does nothing; it is only a demonstration." msgstr "Esto no realiza acción alguna; sólo es una demostración." #: ../samples/bonoboui/hello.c:147 msgid "BonoboUI-Hello." msgstr "BonoboUI-Hello." #: ../samples/bonoboui/hello.c:219 msgid "Gnome Hello" msgstr "Hola Gnome" #. Create Label and put it in the Button: #: ../samples/bonoboui/hello.c:274 msgid "Hello, World!" msgstr "¡Hola mundo!" #: ../samples/bonoboui/hello.c:314 msgid "Cannot init libbonoboui code" msgstr "No se puede inicializar el código de libbonoboui" #: ../samples/controls/bonobo-sample-controls.c:133 msgid "Could not initialize Bonobo UI" msgstr "No se pudo iniciar la interfaz de Bonobo" #: ../tools/browser/bonobo-browser.desktop.in.h:1 msgid "Bonobo Component Browser" msgstr "Examinador de componentes Bonobo" #: ../tools/browser/bonobo-browser.desktop.in.h:2 msgid "Shows available Bonobo components" msgstr "Muestra los componentes Bonobo disponibles" #: ../tools/browser/bonobo-browser.xml.h:1 msgid "About this program..." msgstr "Acerca de este programa..." #: ../tools/browser/bonobo-browser.xml.h:2 msgid "Close the current window" msgstr "Cierra la ventana actual" #: ../tools/browser/bonobo-browser.xml.h:3 msgid "Open a new window" msgstr "Abrir una ventana nueva" #: ../tools/browser/bonobo-browser.xml.h:5 msgid "_Help" msgstr "Ay_uda" #. Build the general tab #: ../tools/browser/component-details.c:103 msgid "General" msgstr "General" #: ../tools/browser/component-details.c:110 #: ../tools/browser/component-list.c:389 msgid "IID" msgstr "IID" #: ../tools/browser/component-details.c:111 msgid "Location" msgstr "Ubicación" #. Build the details tab #: ../tools/browser/component-details.c:161 msgid "Details" msgstr "Detalles" #: ../tools/browser/component-details.c:162 msgid "Detailed Information" msgstr "Información detallada" #: ../tools/browser/component-list.c:358 ../tools/browser/window.c:283 msgid "Active" msgstr "Activo" #: ../tools/browser/component-list.c:379 msgid "Type" msgstr "Tipo" #: ../tools/browser/window.c:162 msgid "Component Details" msgstr "Detalles del componente" #: ../tools/browser/window.c:208 msgid "Bonobo Browser" msgstr "Examinador Bonobo" #: ../tools/browser/window.c:210 msgid "Copyright 2001, The GNOME Foundation" msgstr "Copyright 2001, The GNOME Foundation" #: ../tools/browser/window.c:211 msgid "Bonobo component browser" msgstr "Examinador de componentes Bonobo" #: ../tools/browser/window.c:214 msgid "translator-credits" msgstr "" "Jorge González \n" "Francisco Javier F. Serrador " #. create the window #: ../tools/browser/window.c:240 msgid "Component Browser" msgstr "Examinador de componentes" #. Fill out the tool bar #: ../tools/browser/window.c:280 msgid "All" msgstr "Todo" #: ../tools/browser/window.c:286 msgid "Inactive" msgstr "Inactivo" libbonoboui-2.24.5/po/uk.po0000644000076400007640000003626211173072741012451 00000000000000# Ukrainian translation of libbonoboui. # Copyright (C) 2001 Free Software Foundation, Inc. # Yuriy Syrota , 2001. # Maxim Dziumanenko , 2004-2007 # msgid "" msgstr "" "Project-Id-Version: libbonoboui\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2008-01-25 12:30+0200\n" "PO-Revision-Date: 2008-01-25 19:00+0200\n" "Last-Translator: Maxim Dziumanenko \n" "Language-Team: Ukrainian \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../bonobo/bonobo-canvas-item.c:680 msgid "corba factory" msgstr "фабрика CORBA" #: ../bonobo/bonobo-canvas-item.c:681 msgid "The factory pointer" msgstr "Вказівник на фабрику" #: ../bonobo/bonobo-canvas-item.c:690 msgid "corba UI container" msgstr "контейнер інтерфейсу користувача CORBA" #: ../bonobo/bonobo-canvas-item.c:691 msgid "The User interface container" msgstr "Контейнер інтерфейсу користувача" #: ../bonobo/bonobo-dock-item-grip.c:255 msgid "Dock the toolbar" msgstr "Пристикувати панель інструментів" #: ../bonobo/bonobo-dock-item-grip.c:256 msgid "Undock the toolbar" msgstr "Відчепити панель інструментів" #: ../bonobo/bonobo-dock-item.c:228 ../bonobo/bonobo-dock-item.c:229 #: ../bonobo/bonobo-ui-toolbar.c:1161 msgid "Shadow type" msgstr "Тип тіні" #: ../bonobo/bonobo-dock-item.c:239 ../bonobo/bonobo-dock-item.c:240 #: ../bonobo/bonobo-ui-toolbar.c:1105 ../bonobo/bonobo-ui-toolbar.c:1106 msgid "Orientation" msgstr "Орієнтація" #: ../bonobo/bonobo-dock-item.c:250 ../bonobo/bonobo-dock-item.c:251 #: ../bonobo/bonobo-ui-toolbar.c:1124 ../bonobo/bonobo-ui-toolbar.c:1125 msgid "Preferred width" msgstr "Бажана ширина" #: ../bonobo/bonobo-dock-item.c:259 ../bonobo/bonobo-dock-item.c:260 #: ../bonobo/bonobo-ui-toolbar.c:1133 ../bonobo/bonobo-ui-toolbar.c:1134 msgid "Preferred height" msgstr "Бажана висота" #: ../bonobo/bonobo-file-selector-util.c:357 msgid "Select a file to open" msgstr "Виберіть файл для відкривання" #: ../bonobo/bonobo-file-selector-util.c:385 msgid "Select files to open" msgstr "Виберіть файли для відкривання" #: ../bonobo/bonobo-file-selector-util.c:414 msgid "Select a filename to save" msgstr "Виберіть файл для збереження" #: ../bonobo/bonobo-plug.c:423 msgid "Event Forwarding" msgstr "Пересилання подій" #: ../bonobo/bonobo-plug.c:424 msgid "Whether X events should be forwarded" msgstr "Чи мають пересилатися події X Window" #: ../bonobo/bonobo-selector-widget.c:297 ../bonobo/bonobo-window.c:344 #: ../tools/browser/component-details.c:114 #: ../tools/browser/component-list.c:378 msgid "Name" msgstr "Назва" #: ../bonobo/bonobo-selector-widget.c:319 #: ../tools/browser/component-details.c:115 msgid "Description" msgstr "Опис" #: ../bonobo/bonobo-selector.c:343 msgid "Interfaces required" msgstr "Обов'язкові інтерфейси" #: ../bonobo/bonobo-selector.c:344 msgid "" "A NULL-terminated array of interfaces which a server must support in order " "to be listed in the selector. Defaults to \"IDL:Bonobo/Embeddable:1.0\" if " "no interfaces are listed" msgstr "" "Завершений нулем масив інтерфейсів, які сервер має підтримувати, щоб бути " "перерахованим. Типове значення \"IDL:Bonobo/Embeddable:1.0\" якщо " "інтерфейси не перераховано." #: ../bonobo/bonobo-selector.c:346 msgid "Interface required entry" msgstr "Елемент обов'язкового інтерфейсу" #: ../bonobo/bonobo-selector.c:347 msgid "One of the interfaces that's required" msgstr "Один з потрібних інтерфейсів" #: ../bonobo/bonobo-ui-config-widget.c:265 msgid "Visible" msgstr "Видимий" #: ../bonobo/bonobo-ui-config-widget.c:272 msgid "_Show" msgstr "П_оказати" #: ../bonobo/bonobo-ui-config-widget.c:279 msgid "_Hide" msgstr "Пр_ибрати" #: ../bonobo/bonobo-ui-config-widget.c:285 msgid "_View tooltips" msgstr "_Перегляд підказок" #: ../bonobo/bonobo-ui-config-widget.c:290 msgid "Toolbars" msgstr "Панелі інструментів" #: ../bonobo/bonobo-ui-config-widget.c:300 msgid "toolbars" msgstr "панелі" #: ../bonobo/bonobo-ui-config-widget.c:311 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "Look" msgstr "Вигляд" #: ../bonobo/bonobo-ui-config-widget.c:320 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "_Icon" msgstr "_Значок" #: ../bonobo/bonobo-ui-config-widget.c:326 msgid "_Text and Icon" msgstr "_Текст та значок" #: ../bonobo/bonobo-ui-config-widget.c:332 msgid "Text only" msgstr "Лише текст" #: ../bonobo/bonobo-ui-config-widget.c:338 msgid "_Priority text only" msgstr "_Лише текст" #: ../bonobo/bonobo-ui-engine.c:91 msgid "Debug" msgstr "Налагодження" #: ../bonobo/bonobo-ui-engine.c:91 msgid "_Dump XML" msgstr "В_ивести у форматі XML" #: ../bonobo/bonobo-ui-engine.c:92 msgid "Dump the entire UI's XML description to the console" msgstr "Вивести весь опис інтерфейсу на консоль у форматі XML" #: ../bonobo/bonobo-ui-engine-config.c:522 msgid "Configure UI" msgstr "Налаштувати інтерфейс" #: ../bonobo/bonobo-ui-init-gtk.c:131 msgid "Gdk debugging flags to set" msgstr "Ознаки налагодження GTK, які слід встановити" #: ../bonobo/bonobo-ui-init-gtk.c:131 ../bonobo/bonobo-ui-init-gtk.c:134 #: ../bonobo/bonobo-ui-init-gtk.c:162 ../bonobo/bonobo-ui-init-gtk.c:165 msgid "FLAGS" msgstr "ОЗНАКИ" #: ../bonobo/bonobo-ui-init-gtk.c:134 msgid "Gdk debugging flags to unset" msgstr "Ознаки налагодження GTK, які слід зняти" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "X display to use" msgstr "Дисплей X Window, який слід використовувати" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "DISPLAY" msgstr "ДИСПЛЕЙ" #: ../bonobo/bonobo-ui-init-gtk.c:142 msgid "X screen to use" msgstr "Екран X Window, який слід використовувати" #: ../bonobo/bonobo-ui-init-gtk.c:142 msgid "SCREEN" msgstr "ЕКРАН" #: ../bonobo/bonobo-ui-init-gtk.c:146 msgid "Make X calls synchronous" msgstr "Синхронізовані виклики X Window" #: ../bonobo/bonobo-ui-init-gtk.c:152 msgid "Don't use X shared memory extension" msgstr "Не використовувати додаткові функції X Window для спільної пам'яті" #: ../bonobo/bonobo-ui-init-gtk.c:156 msgid "Program name as used by the window manager" msgstr "Назва програми, що використовується віконним менеджером" #: ../bonobo/bonobo-ui-init-gtk.c:156 msgid "NAME" msgstr "НАЗВА" #: ../bonobo/bonobo-ui-init-gtk.c:159 msgid "Program class as used by the window manager" msgstr "Клас програми, що використовується віконним менеджером" #: ../bonobo/bonobo-ui-init-gtk.c:159 msgid "CLASS" msgstr "КЛАС" #: ../bonobo/bonobo-ui-init-gtk.c:162 msgid "Gtk+ debugging flags to set" msgstr "Ознаки налагодження GTK+, які слід встановити" #: ../bonobo/bonobo-ui-init-gtk.c:165 msgid "Gtk+ debugging flags to unset" msgstr "Ознаки налагодження GTK+, які слід зняти" #: ../bonobo/bonobo-ui-init-gtk.c:168 msgid "Make all warnings fatal" msgstr "Вважати всі попередження фатальними" #: ../bonobo/bonobo-ui-init-gtk.c:171 msgid "Load an additional Gtk module" msgstr "Завантажити додатковий модуль GTK" #: ../bonobo/bonobo-ui-init-gtk.c:171 msgid "MODULE" msgstr "МОДУЛЬ" #: ../bonobo/bonobo-ui-init-gtk.c:187 msgid "GTK+" msgstr "GTK+" #: ../bonobo/bonobo-ui-main.c:278 msgid "Bonobo GUI support" msgstr "Підтримка графічного інтерфейсу Bonobo" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "B_oth" msgstr "_Обидва" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "T_ext" msgstr "_Текст" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Hide t_ips" msgstr "Сховати п_ідказки" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Show t_ips" msgstr "Показати п_ідказки" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "_Hide toolbar" msgstr "С_ховати панель" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "Customi_ze" msgstr "_Налаштувати" #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Customize the toolbar" msgstr "Налаштувати панель" #: ../bonobo/bonobo-ui-toolbar.c:1115 msgid "is floating" msgstr "переміщується" #: ../bonobo/bonobo-ui-toolbar.c:1116 msgid "whether the toolbar is floating" msgstr "чи панель здатна переміщуватись" #: ../bonobo/bonobo-ui-toolbar.c:1162 msgid "Style of bevel around the toolbar" msgstr "Стиль рамки навколо панелі" #: ../bonobo/bonobo-ui-util.c:601 msgid "Could not display help for this application" msgstr "Не вдається відобразити довідку до цієї програми" #: ../bonobo/bonobo-ui-util.c:643 msgid "_Contents" msgstr "_Зміст" #: ../bonobo/bonobo-ui-util.c:644 msgid "View help for this application" msgstr "Показати довідку до цієї програми" #: ../bonobo/bonobo-window.c:345 msgid "Name of the window - used for configuration serialization." msgstr "Назва вікна (використовується для серіалізації конфігурації)." #: ../bonobo/bonobo-zoomable.c:326 msgid "Zoom level" msgstr "Масштаб" #: ../bonobo/bonobo-zoomable.c:327 msgid "The degree of enlargment" msgstr "Ступінь збільшення" #: ../bonobo/bonobo-zoomable.c:335 msgid "Minimum Zoom level" msgstr "Мінімальне збільшення" #: ../bonobo/bonobo-zoomable.c:336 msgid "The minimum degree of enlargment" msgstr "Мінімальний ступінь збільшення" #: ../bonobo/bonobo-zoomable.c:344 msgid "Maximum Zoom level" msgstr "Максимальне збільшення" #: ../bonobo/bonobo-zoomable.c:345 msgid "The maximum degree of enlargment" msgstr "Максимальний ступінь збільшення" #: ../bonobo/bonobo-zoomable.c:353 msgid "Has a minimum Zoom level" msgstr "Має мінімальне збільшення" #: ../bonobo/bonobo-zoomable.c:354 msgid "Whether we have a valid minimum zoom level" msgstr "Чи є допустима мінімальна величина збільшення" #: ../bonobo/bonobo-zoomable.c:361 msgid "Has a maximum Zoom level" msgstr "Має максимальне збільшення" #: ../bonobo/bonobo-zoomable.c:362 msgid "Whether we have a valid maximum zoom level" msgstr "Чи є допустима максимальна величина збільшення" #: ../bonobo/bonobo-zoomable.c:369 msgid "Is continuous" msgstr "Безперервний" #: ../bonobo/bonobo-zoomable.c:370 msgid "Whether we zoom continuously (as opposed to jumps)" msgstr "Чи масштаб безперервний (на відміну від дискретного)" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:1 msgid "About this application" msgstr "Про програму" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:2 msgid "Select" msgstr "Вибрати" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:3 msgid "_About..." msgstr "_Про програму..." #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:4 msgid "_Edit" msgstr "_Правка" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:5 #: ../tools/browser/bonobo-browser.xml.h:4 msgid "_File" msgstr "_Файл" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:6 msgid "_Select" msgstr "Виді_лити" #: ../samples/bonoboui/hello.c:63 msgid "This does nothing; it is only a demonstration." msgstr "Нічого не робить; це лише демонстрації" #: ../samples/bonoboui/hello.c:145 msgid "BonoboUI-Hello." msgstr "BonoboUI-Hello." #: ../samples/bonoboui/hello.c:217 msgid "Gnome Hello" msgstr "Привіт GNOME" #. Create Label and put it in the Button: #: ../samples/bonoboui/hello.c:272 msgid "Hello, World!" msgstr "Привіт, світ!" #: ../samples/bonoboui/hello.c:312 msgid "Cannot init libbonoboui code" msgstr "Не вдається ініціалізувати код бібліотеки libbonoboui" #: ../samples/controls/bonobo-sample-controls.c:131 msgid "Could not initialize Bonobo UI" msgstr "Не вдається ініціалізувати графічний інтерфейс Bonobo" #: ../tools/browser/bonobo-browser.desktop.in.h:1 msgid "Bonobo Component Browser" msgstr "Оглядач компонентів Bonobo" #: ../tools/browser/bonobo-browser.desktop.in.h:2 msgid "Shows available Bonobo components" msgstr "Відображає доступні компоненти Bonobo" #: ../tools/browser/bonobo-browser.xml.h:1 msgid "About this program..." msgstr "Про програму..." #: ../tools/browser/bonobo-browser.xml.h:2 msgid "Close the current window" msgstr "Закрити поточне вікно" #: ../tools/browser/bonobo-browser.xml.h:3 msgid "Open a new window" msgstr "Відкрити нове вікно" #: ../tools/browser/bonobo-browser.xml.h:5 msgid "_Help" msgstr "_Довідка" #. Build the general tab #: ../tools/browser/component-details.c:109 msgid "General" msgstr "Загальне" #: ../tools/browser/component-details.c:116 #: ../tools/browser/component-list.c:398 msgid "IID" msgstr "IID" #: ../tools/browser/component-details.c:117 msgid "Location" msgstr "Адреса" #. Build the details tab #: ../tools/browser/component-details.c:167 msgid "Details" msgstr "Подробиці" #: ../tools/browser/component-details.c:168 msgid "Detailed Information" msgstr "Докладна інформація" #: ../tools/browser/component-list.c:367 ../tools/browser/window.c:283 msgid "Active" msgstr "Активний" #: ../tools/browser/component-list.c:388 msgid "Type" msgstr "Тип" #: ../tools/browser/window.c:162 msgid "Component Details" msgstr "Опис компонента" #: ../tools/browser/window.c:208 msgid "Bonobo Browser" msgstr "Оглядач Bonobo" #: ../tools/browser/window.c:210 msgid "Copyright 2001, The GNOME Foundation" msgstr "Авторські права 2001, The GNOME Foundation" #: ../tools/browser/window.c:211 msgid "Bonobo component browser" msgstr "Оглядач компонентів Bonobo" #: ../tools/browser/window.c:214 msgid "translator-credits" msgstr "" "Yuriy Syrota \n" "Максим Дзюманенко " #. create the window #: ../tools/browser/window.c:240 msgid "Component Browser" msgstr "Оглядач компонентів" #. Fill out the tool bar #: ../tools/browser/window.c:280 msgid "All" msgstr "Усі" #: ../tools/browser/window.c:286 msgid "Inactive" msgstr "Неактивний" libbonoboui-2.24.5/po/en_CA.po0000644000076400007640000003102511173072741012767 00000000000000# English/Canada translation of libbonoboui. # Copyright (C) 2004-2005 Adam Weinberger and the GNOME Foundation # This file is distributed under the same licence as the libbonoboui package. # Adam Weinberger , 2004, 2005 # # msgid "" msgstr "" "Project-Id-Version: libbonoboui\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2006-12-28 13:19-0500\n" "PO-Revision-Date: 2005-06-01 16:39-0400\n" "Last-Translator: Adam Weinberger \n" "Language-Team: Canadian English \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../bonobo/bonobo-canvas-item.c:680 msgid "corba factory" msgstr "CORBA factory" #: ../bonobo/bonobo-canvas-item.c:681 msgid "The factory pointer" msgstr "The factory pointer" #: ../bonobo/bonobo-canvas-item.c:690 msgid "corba UI container" msgstr "CORBA UI container" #: ../bonobo/bonobo-canvas-item.c:691 msgid "The User interface container" msgstr "The User interface container" #: ../bonobo/bonobo-dock-item-grip.c:255 msgid "Dock the toolbar" msgstr "Dock the toolbar" #: ../bonobo/bonobo-dock-item-grip.c:256 msgid "Undock the toolbar" msgstr "Undock the toolbar" #: ../bonobo/bonobo-dock-item.c:228 ../bonobo/bonobo-dock-item.c:229 #: ../bonobo/bonobo-ui-toolbar.c:1161 msgid "Shadow type" msgstr "Shadow type" #: ../bonobo/bonobo-dock-item.c:239 ../bonobo/bonobo-dock-item.c:240 #: ../bonobo/bonobo-ui-toolbar.c:1105 ../bonobo/bonobo-ui-toolbar.c:1106 msgid "Orientation" msgstr "Orientation" #: ../bonobo/bonobo-dock-item.c:250 ../bonobo/bonobo-dock-item.c:251 #: ../bonobo/bonobo-ui-toolbar.c:1124 ../bonobo/bonobo-ui-toolbar.c:1125 msgid "Preferred width" msgstr "Preferred width" #: ../bonobo/bonobo-dock-item.c:259 ../bonobo/bonobo-dock-item.c:260 #: ../bonobo/bonobo-ui-toolbar.c:1133 ../bonobo/bonobo-ui-toolbar.c:1134 msgid "Preferred height" msgstr "Preferred height" #: ../bonobo/bonobo-file-selector-util.c:357 msgid "Select a file to open" msgstr "Select a file to open" #: ../bonobo/bonobo-file-selector-util.c:385 msgid "Select files to open" msgstr "Select files to open" #: ../bonobo/bonobo-file-selector-util.c:414 msgid "Select a filename to save" msgstr "Select a filename to save" #: ../bonobo/bonobo-plug.c:424 msgid "Event Forwarding" msgstr "Event Forwarding" #: ../bonobo/bonobo-plug.c:425 msgid "Whether X events should be forwarded" msgstr "Whether X events should be forwarded" #: ../bonobo/bonobo-selector-widget.c:298 ../bonobo/bonobo-window.c:344 #: ../tools/browser/component-details.c:114 #: ../tools/browser/component-list.c:378 msgid "Name" msgstr "Name" #: ../bonobo/bonobo-selector-widget.c:320 #: ../tools/browser/component-details.c:115 msgid "Description" msgstr "Description" #: ../bonobo/bonobo-selector.c:343 msgid "Interfaces required" msgstr "Interfaces required" #: ../bonobo/bonobo-selector.c:344 msgid "" "A NULL-terminated array of interfaces which a server must support in order " "to be listed in the selector. Defaults to \"IDL:Bonobo/Embeddable:1.0\" if " "no interfaces are listed" msgstr "" "A NULL-terminated array of interfaces which a server must support in order " "to be listed in the selector. Defaults to \"IDL:Bonobo/Embeddable:1.0\" if " "no interfaces are listed" #: ../bonobo/bonobo-selector.c:346 msgid "Interface required entry" msgstr "Interface required entry" #: ../bonobo/bonobo-selector.c:347 msgid "One of the interfaces that's required" msgstr "One of the interfaces that's required" #: ../bonobo/bonobo-ui-config-widget.c:265 msgid "Visible" msgstr "Visible" #: ../bonobo/bonobo-ui-config-widget.c:272 msgid "_Show" msgstr "_Show" #: ../bonobo/bonobo-ui-config-widget.c:279 msgid "_Hide" msgstr "_Hide" #: ../bonobo/bonobo-ui-config-widget.c:285 msgid "_View tooltips" msgstr "_View tooltips" #: ../bonobo/bonobo-ui-config-widget.c:290 msgid "Toolbars" msgstr "Toolbars" #: ../bonobo/bonobo-ui-config-widget.c:300 msgid "toolbars" msgstr "toolbars" #: ../bonobo/bonobo-ui-config-widget.c:311 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "Look" msgstr "Look" #: ../bonobo/bonobo-ui-config-widget.c:320 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "_Icon" msgstr "_Icon" #: ../bonobo/bonobo-ui-config-widget.c:326 msgid "_Text and Icon" msgstr "_Text and Icon" #: ../bonobo/bonobo-ui-config-widget.c:332 msgid "Text only" msgstr "Text only" #: ../bonobo/bonobo-ui-config-widget.c:338 msgid "_Priority text only" msgstr "_Priority text only" #: ../bonobo/bonobo-ui-engine.c:91 msgid "Debug" msgstr "Debug" #: ../bonobo/bonobo-ui-engine.c:91 msgid "_Dump XML" msgstr "_Dump XML" #: ../bonobo/bonobo-ui-engine.c:92 msgid "Dump the entire UI's XML description to the console" msgstr "Dump the entire UI's XML description to the console" #: ../bonobo/bonobo-ui-engine-config.c:522 msgid "Configure UI" msgstr "Configure UI" #: ../bonobo/bonobo-ui-init-gtk.c:127 msgid "Gdk debugging flags to set" msgstr "Gdk debugging flags to set" #: ../bonobo/bonobo-ui-init-gtk.c:127 ../bonobo/bonobo-ui-init-gtk.c:130 #: ../bonobo/bonobo-ui-init-gtk.c:158 ../bonobo/bonobo-ui-init-gtk.c:161 msgid "FLAGS" msgstr "FLAGS" #: ../bonobo/bonobo-ui-init-gtk.c:130 msgid "Gdk debugging flags to unset" msgstr "Gdk debugging flags to unset" #: ../bonobo/bonobo-ui-init-gtk.c:134 msgid "X display to use" msgstr "X display to use" #: ../bonobo/bonobo-ui-init-gtk.c:134 msgid "DISPLAY" msgstr "DISPLAY" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "X screen to use" msgstr "X screen to use" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "SCREEN" msgstr "SCREEN" #: ../bonobo/bonobo-ui-init-gtk.c:142 msgid "Make X calls synchronous" msgstr "Make X calls synchronous" #: ../bonobo/bonobo-ui-init-gtk.c:148 msgid "Don't use X shared memory extension" msgstr "Do not use X shared memory extension" #: ../bonobo/bonobo-ui-init-gtk.c:152 msgid "Program name as used by the window manager" msgstr "Program name as used by the window manager" #: ../bonobo/bonobo-ui-init-gtk.c:152 msgid "NAME" msgstr "NAME" #: ../bonobo/bonobo-ui-init-gtk.c:155 msgid "Program class as used by the window manager" msgstr "Program class as used by the window manager" #: ../bonobo/bonobo-ui-init-gtk.c:155 msgid "CLASS" msgstr "CLASS" #: ../bonobo/bonobo-ui-init-gtk.c:158 msgid "Gtk+ debugging flags to set" msgstr "Gtk+ debugging flags to set" #: ../bonobo/bonobo-ui-init-gtk.c:161 msgid "Gtk+ debugging flags to unset" msgstr "Gtk+ debugging flags to unset" #: ../bonobo/bonobo-ui-init-gtk.c:164 msgid "Make all warnings fatal" msgstr "Make all warnings fatal" #: ../bonobo/bonobo-ui-init-gtk.c:167 msgid "Load an additional Gtk module" msgstr "Load an additional Gtk module" #: ../bonobo/bonobo-ui-init-gtk.c:167 msgid "MODULE" msgstr "MODULE" #: ../bonobo/bonobo-ui-init-gtk.c:183 msgid "GTK+" msgstr "GTK+" #: ../bonobo/bonobo-ui-main.c:278 msgid "Bonobo GUI support" msgstr "Bonobo GUI support" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "B_oth" msgstr "B_oth" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "T_ext" msgstr "T_ext" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Hide t_ips" msgstr "Hide t_ips" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Show t_ips" msgstr "Show t_ips" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "_Hide toolbar" msgstr "_Hide toolbar" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "Customi_ze" msgstr "Customi_ze" #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Customize the toolbar" msgstr "Customize the toolbar" #: ../bonobo/bonobo-ui-toolbar.c:1115 msgid "is floating" msgstr "is floating" #: ../bonobo/bonobo-ui-toolbar.c:1116 msgid "whether the toolbar is floating" msgstr "whether the toolbar is floating" #: ../bonobo/bonobo-ui-toolbar.c:1162 msgid "Style of bevel around the toolbar" msgstr "Style of bevel around the toolbar" #: ../bonobo/bonobo-ui-util.c:630 msgid "_Contents" msgstr "_Contents" #: ../bonobo/bonobo-ui-util.c:631 msgid "View help for this application" msgstr "View help for this application" #: ../bonobo/bonobo-window.c:345 msgid "Name of the window - used for configuration serialization." msgstr "Name of the window - used for configuration serialization." #: ../bonobo/bonobo-zoomable.c:326 msgid "Zoom level" msgstr "Zoom level" #: ../bonobo/bonobo-zoomable.c:327 msgid "The degree of enlargment" msgstr "The degree of enlargment" #: ../bonobo/bonobo-zoomable.c:335 msgid "Minimum Zoom level" msgstr "Minimum Zoom level" #: ../bonobo/bonobo-zoomable.c:336 msgid "The minimum degree of enlargment" msgstr "The minimum degree of enlargment" #: ../bonobo/bonobo-zoomable.c:344 msgid "Maximum Zoom level" msgstr "Maximum Zoom level" #: ../bonobo/bonobo-zoomable.c:345 msgid "The maximum degree of enlargment" msgstr "The maximum degree of enlargment" #: ../bonobo/bonobo-zoomable.c:353 msgid "Has a minimum Zoom level" msgstr "Has a minimum Zoom level" #: ../bonobo/bonobo-zoomable.c:354 msgid "Whether we have a valid minimum zoom level" msgstr "Whether we have a valid minimum zoom level" #: ../bonobo/bonobo-zoomable.c:361 msgid "Has a maximum Zoom level" msgstr "Has a maximum Zoom level" #: ../bonobo/bonobo-zoomable.c:362 msgid "Whether we have a valid maximum zoom level" msgstr "Whether we have a valid maximum zoom level" #: ../bonobo/bonobo-zoomable.c:369 msgid "Is continuous" msgstr "Is continuous" #: ../bonobo/bonobo-zoomable.c:370 msgid "Whether we zoom continuously (as opposed to jumps)" msgstr "Whether we zoom continuously (as opposed to jumps)" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:1 msgid "About this application" msgstr "About this application" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:2 msgid "Select" msgstr "Select" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:3 msgid "_About..." msgstr "_About..." #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:4 msgid "_Edit" msgstr "_Edit" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:5 #: ../tools/browser/bonobo-browser.xml.h:4 msgid "_File" msgstr "_File" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:6 msgid "_Select" msgstr "_Select" #: ../samples/bonoboui/hello.c:63 msgid "This does nothing; it is only a demonstration." msgstr "This does nothing; it is only a demonstration." #: ../samples/bonoboui/hello.c:145 msgid "BonoboUI-Hello." msgstr "BonoboUI-Hello." #: ../samples/bonoboui/hello.c:217 msgid "Gnome Hello" msgstr "Gnome Hello" #. Create Label and put it in the Button: #: ../samples/bonoboui/hello.c:272 msgid "Hello, World!" msgstr "Hello, World!" #: ../samples/bonoboui/hello.c:312 msgid "Cannot init libbonoboui code" msgstr "Cannot init libbonoboui code" #: ../samples/controls/bonobo-sample-controls.c:131 msgid "Could not initialize Bonobo UI" msgstr "Could not initialize Bonobo UI" #: ../tools/browser/bonobo-browser.desktop.in.h:1 msgid "Bonobo Component Browser" msgstr "Bonobo Component Browser" #: ../tools/browser/bonobo-browser.desktop.in.h:2 msgid "Shows available Bonobo components" msgstr "Shows available Bonobo components" #: ../tools/browser/bonobo-browser.xml.h:1 msgid "About this program..." msgstr "About this program..." #: ../tools/browser/bonobo-browser.xml.h:2 msgid "Close the current window" msgstr "Close the current window" #: ../tools/browser/bonobo-browser.xml.h:3 msgid "Open a new window" msgstr "Open a new window" #: ../tools/browser/bonobo-browser.xml.h:5 msgid "_Help" msgstr "_Help" #. Build the general tab #: ../tools/browser/component-details.c:109 msgid "General" msgstr "General" #: ../tools/browser/component-details.c:116 #: ../tools/browser/component-list.c:398 msgid "IID" msgstr "IID" #: ../tools/browser/component-details.c:117 msgid "Location" msgstr "Location" #. Build the details tab #: ../tools/browser/component-details.c:167 msgid "Details" msgstr "Details" #: ../tools/browser/component-details.c:168 msgid "Detailed Information" msgstr "Detailed Information" #: ../tools/browser/component-list.c:367 ../tools/browser/window.c:283 msgid "Active" msgstr "Active" #: ../tools/browser/component-list.c:388 msgid "Type" msgstr "Type" #: ../tools/browser/window.c:162 msgid "Component Details" msgstr "Component Details" #: ../tools/browser/window.c:208 msgid "Bonobo Browser" msgstr "Bonobo Browser" #: ../tools/browser/window.c:210 msgid "Copyright 2001, The GNOME Foundation" msgstr "Copyright 2001, The GNOME Foundation" #: ../tools/browser/window.c:211 msgid "Bonobo component browser" msgstr "Bonobo component browser" #: ../tools/browser/window.c:214 msgid "translator-credits" msgstr "Adam Weinberger " #. create the window #: ../tools/browser/window.c:240 msgid "Component Browser" msgstr "Component Browser" #. Fill out the tool bar #: ../tools/browser/window.c:280 msgid "All" msgstr "All" #: ../tools/browser/window.c:286 msgid "Inactive" msgstr "Inactive" libbonoboui-2.24.5/po/bn.po0000664000076400007640000005533411433016366012434 00000000000000# Bengali Translation of libbonoboui. # Copyright (C) 1991-2003 Free Software Foundation, Inc. # This file is distributed under the same license as the libbonoboui package. # Khandakar Mujahidul Islam , 2003-2005. # Maruf Ovee , 2009. # Sadia Afroz , 2010. # msgid "" msgstr "" "Project-Id-Version: bn\n" "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?" "product=libbonoboui&component=general\n" "POT-Creation-Date: 2009-08-04 17:13+0000\n" "PO-Revision-Date: 2010-03-07 18:52+0600\n" "Last-Translator: Sadia Afroz \n" "Language-Team: Bengali \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../bonobo/bonobo-canvas-item.c:680 msgid "corba factory" msgstr "কোরবা ফ্যাক্টরি" # msgstr "করবা ফ্যাক্টরি" #: ../bonobo/bonobo-canvas-item.c:681 msgid "The factory pointer" msgstr "ফ্যাক্টরি নির্দেশক" # msgstr "কারখানা নির্দেশক" #: ../bonobo/bonobo-canvas-item.c:690 msgid "corba UI container" msgstr "কোরবা UI ধারক" # msgstr "করবা ইউ.আই. (UI) ধারক" #: ../bonobo/bonobo-canvas-item.c:691 msgid "The User interface container" msgstr "ব্যবহারকারী ইন্টারফেস ধারক" #: ../bonobo/bonobo-dock-item-grip.c:254 msgid "Dock the toolbar" msgstr "টুলবারটি ডক করুন" #: ../bonobo/bonobo-dock-item-grip.c:255 msgid "Undock the toolbar" msgstr "টুলবারটি আনডক করুন" #: ../bonobo/bonobo-dock-item.c:225 ../bonobo/bonobo-dock-item.c:226 #: ../bonobo/bonobo-ui-toolbar.c:1163 msgid "Shadow type" msgstr "ছায়ার ধরন" #: ../bonobo/bonobo-dock-item.c:236 ../bonobo/bonobo-dock-item.c:237 #: ../bonobo/bonobo-ui-toolbar.c:1107 ../bonobo/bonobo-ui-toolbar.c:1108 msgid "Orientation" msgstr "স্থিতিবিন্যাস" # msgstr "সজ্জা" #: ../bonobo/bonobo-dock-item.c:247 ../bonobo/bonobo-dock-item.c:248 #: ../bonobo/bonobo-ui-toolbar.c:1126 ../bonobo/bonobo-ui-toolbar.c:1127 msgid "Preferred width" msgstr "পছন্দনীয় প্রস্থ" #: ../bonobo/bonobo-dock-item.c:256 ../bonobo/bonobo-dock-item.c:257 #: ../bonobo/bonobo-ui-toolbar.c:1135 ../bonobo/bonobo-ui-toolbar.c:1136 msgid "Preferred height" msgstr "পছন্দনীয় উচ্চতা" #: ../bonobo/bonobo-file-selector-util.c:350 msgid "Select a file to open" msgstr "খোলার জন্য একটি ফাইল নির্বাচন করুন" #: ../bonobo/bonobo-file-selector-util.c:378 msgid "Select files to open" msgstr "খোলার জন্য ফাইলসমূহ নির্বাচন করুন" # msgstr "কয়েকটি ফাইল বাছাই করো" #: ../bonobo/bonobo-file-selector-util.c:407 msgid "Select a filename to save" msgstr "সংরক্ষণ করার জন্য একটি ফাইলের নাম নির্বাচন করুন" #: ../bonobo/bonobo-plug.c:425 msgid "Event Forwarding" msgstr "ইভেন্ট পুনঃপ্রেরণ" # msgstr "ইভেন্ট পাঠিয়ে দেয়া" #: ../bonobo/bonobo-plug.c:426 msgid "Whether X events should be forwarded" msgstr "X ইভেন্ট পুনঃপ্রেরণ করা উচিত কিনা" # msgstr "যে কোনো ক্ষেত্রে এক্স ইভেন্ট পাঠিয়ে দেয়া উচিত" # msgstr "যে কোনো ক্ষেত্রে এক্স ইভেন্ট ফরওয়ার্ড করে দেয়া উচিত" #: ../bonobo/bonobo-selector-widget.c:300 ../bonobo/bonobo-window.c:347 #: ../tools/browser/component-details.c:108 #: ../tools/browser/component-list.c:369 msgid "Name" msgstr "নাম" #: ../bonobo/bonobo-selector-widget.c:322 #: ../tools/browser/component-details.c:109 msgid "Description" msgstr "বিবরণ" # msgstr "বর্ণনা" #: ../bonobo/bonobo-selector.c:343 msgid "Interfaces required" msgstr "আবশ্যকীয় ইন্টারফেসসমূহ" #: ../bonobo/bonobo-selector.c:344 msgid "" "A NULL-terminated array of interfaces which a server must support in order " "to be listed in the selector. Defaults to \"IDL:Bonobo/Embeddable:1.0\" if " "no interfaces are listed" msgstr "" "একটি NULL -terminated ইন্টারফেস তালিকা, যা নির্বাচকে অন্তর্ভুক্ত হওয়ার জন্য " "একটি সার্ভারকে অবশ্যই সমর্থন করতে হবে। যদি কোন ইন্টারফেস তালিকাভুক্ত না থাকে " "তবে পূর্বনির্ধারিত হিসেবে \"IDL:Bonobo/Embeddable:1.0\" ব্যবহৃত হবে" # সার্ভার চালুরাখতেসাহায্যকরা ধারা #: ../bonobo/bonobo-selector.c:346 msgid "Interface required entry" msgstr "ইন্টারফেসের প্রয়োজনীয় এন্ট্রি" #: ../bonobo/bonobo-selector.c:347 msgid "One of the interfaces that's required" msgstr "প্রয়োজনীয় ইন্টারফেসসমূহের একটি" #: ../bonobo/bonobo-ui-config-widget.c:267 msgid "Visible" msgstr "দৃশ্যমান" #: ../bonobo/bonobo-ui-config-widget.c:274 msgid "_Show" msgstr "প্রদর্শন (_S)" #: ../bonobo/bonobo-ui-config-widget.c:281 msgid "_Hide" msgstr "লুকানো (_H)" #: ../bonobo/bonobo-ui-config-widget.c:287 msgid "_View tooltips" msgstr "টুলটিপস প্রদর্শন (_V)" #: ../bonobo/bonobo-ui-config-widget.c:292 msgid "Toolbars" msgstr "টুলবার" #: ../bonobo/bonobo-ui-config-widget.c:302 msgid "toolbars" msgstr "টুলবার" #: ../bonobo/bonobo-ui-config-widget.c:313 #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "Look" msgstr "চেহারা" # msgstr "দেখো" #: ../bonobo/bonobo-ui-config-widget.c:322 #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "_Icon" msgstr "আইকন (_I)" # msgstr "প্রতীক (_প)" #: ../bonobo/bonobo-ui-config-widget.c:328 msgid "_Text and Icon" msgstr "টেক্সট ও আইকন (_T)" # msgstr "টেক্সট এবং প্রতীক (_ট)" #: ../bonobo/bonobo-ui-config-widget.c:334 msgid "Text only" msgstr "শুধুমাত্র টেক্সট" #: ../bonobo/bonobo-ui-config-widget.c:340 msgid "_Priority text only" msgstr "শুধুমাত্র অগ্রাধিকারপ্রাপ্ত টেক্সট (_P)" # msgstr "শুধুমাত্র টেক্সটের _অগ্রাধিকার" #: ../bonobo/bonobo-ui-engine.c:93 msgid "Debug" msgstr "ডিবাগ" #: ../bonobo/bonobo-ui-engine.c:93 msgid "_Dump XML" msgstr "XML ডাম্প করুন (_D)" # msgstr "XML'র অস্থায়ী ভান্ডার" # msgstr "ডাম্প এক্স.এম.এল. (_ড)" #: ../bonobo/bonobo-ui-engine.c:94 msgid "Dump the entire UI's XML description to the console" msgstr "সম্পূর্ণ UI-এর XML বিবরণ কনসোলে ডাম্প করুন" #: ../bonobo/bonobo-ui-engine-config.c:524 msgid "Configure UI" msgstr "UI কনফিগার" #: ../bonobo/bonobo-ui-init-gtk.c:131 msgid "Gdk debugging flags to set" msgstr "যেসকল Gdk ডিবাগিং ফ্ল্যাগ সক্রিয় করা হবে" # msgstr "জিডিকে ডিবাগিং করার ফ্ল্যাগস নির্ধারণ করা হয়েছে" # msgstr "জিডিকে ডিবাগিং করার ফ্ল্যাগস নির্দিষ্ট করা হয়েছে" #: ../bonobo/bonobo-ui-init-gtk.c:131 ../bonobo/bonobo-ui-init-gtk.c:134 #: ../bonobo/bonobo-ui-init-gtk.c:162 ../bonobo/bonobo-ui-init-gtk.c:165 msgid "FLAGS" msgstr "FLAGS" # msgstr "পতাকাগুলো" #: ../bonobo/bonobo-ui-init-gtk.c:134 msgid "Gdk debugging flags to unset" msgstr "যেসকল Gdk ডিবাগিং ফ্ল্যাগ নিষ্ক্রিয় করা হবে" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "X display to use" msgstr "ব্যবহার করার জন্য X প্রদর্শন" # msgstr "ব্যবহার করার জন্য X ডিসপ্লে" # msgstr "ব্যবহৃত এক্স ডিসপ্লে" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "DISPLAY" msgstr "DISPLAY" # msgstr "ডিসপ্লে" #: ../bonobo/bonobo-ui-init-gtk.c:142 msgid "X screen to use" msgstr "ব্যবহার করার জন্য X পর্দা" # msgstr "ব্যবহার করার জন্য এক্স পর্দা" # msgstr "ব্যবহৃত এক্স পর্দা" #: ../bonobo/bonobo-ui-init-gtk.c:142 msgid "SCREEN" msgstr "SCREEN" #: ../bonobo/bonobo-ui-init-gtk.c:146 msgid "Make X calls synchronous" msgstr "X কলকে যুগপৎ করা হবে" #: ../bonobo/bonobo-ui-init-gtk.c:152 msgid "Don't use X shared memory extension" msgstr "X-এর শেয়ারকৃত মেমরি এক্সটেনশন ব্যবহার করা হবে না" # msgstr "প্রসারিত এক্স অধিকৃত মেমরি কখনো ব্যবহার করবে না" #: ../bonobo/bonobo-ui-init-gtk.c:156 msgid "Program name as used by the window manager" msgstr "উইন্ডো ম্যানেজার কর্তৃক ব্যবহৃত প্রোগ্রামের নাম" #: ../bonobo/bonobo-ui-init-gtk.c:156 msgid "NAME" msgstr "NAME" #: ../bonobo/bonobo-ui-init-gtk.c:159 msgid "Program class as used by the window manager" msgstr "উইন্ডো ব্যবস্থাপক কর্তৃক ব্যবহৃত প্রোগ্রামের শ্রেণী" # msgstr "উইন্ডো ম্যানেজার কর্তৃক ব্যবহৃত প্রোগ্রামের ক্লাস" #: ../bonobo/bonobo-ui-init-gtk.c:159 msgid "CLASS" msgstr "CLASS" # msgstr "স্টাইল" #: ../bonobo/bonobo-ui-init-gtk.c:162 msgid "Gtk+ debugging flags to set" msgstr "যেসকল Gtk+ ডিবাগিং ফ্ল্যাগ সক্রিয় করা হবে" # msgstr "জিটিকে+ ডিবাগিং করার ফ্ল্যাগ্‌স নির্ধারণ করা হয়েছে" # msgstr "জিটিকে+ ডিবাগিং ফ্ল্যাগস নির্ধারণ করা হয়েছে" # msgstr "জিটিকে+ ডিবাগিং ফ্ল্যাগস নির্দিষ্ট করা হয়েছে" #: ../bonobo/bonobo-ui-init-gtk.c:165 msgid "Gtk+ debugging flags to unset" msgstr "যেসকল Gtk+ ডিবাগিং ফ্ল্যাগ নিষ্ক্রিয় করা হবে" # msgstr "জিটিকে+ ডিবাগিং ফ্ল্যাগস নির্ধারণ করা হয় নি" # msgstr "জিটিকে+ ডিবাগিং ফ্ল্যাগস নির্দিষ্ট করা হয় নি" #: ../bonobo/bonobo-ui-init-gtk.c:168 msgid "Make all warnings fatal" msgstr "সকল সতর্কীকরণকে মারাত্মক হিসেবে নির্ধারণ করা হবে" #: ../bonobo/bonobo-ui-init-gtk.c:171 msgid "Load an additional Gtk module" msgstr "একটি অতিরিক্ত Gtk মডিউল লোড করা হবে" # msgstr "একটি সংযোজিত জিটিকে মডিউল লোড করো" #: ../bonobo/bonobo-ui-init-gtk.c:171 msgid "MODULE" msgstr "MODULE" #: ../bonobo/bonobo-ui-init-gtk.c:187 msgid "GTK+" msgstr "GTK+" #: ../bonobo/bonobo-ui-main.c:281 msgid "Bonobo GUI support" msgstr "বনোবো GUI সহায়তা" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "B_oth" msgstr "উভয় (_o)" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "T_ext" msgstr "টেক্সট (_e)" #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Hide t_ips" msgstr "পরামর্শ আড়াল (_i)" #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Show t_ips" msgstr "পরামর্শ প্রদর্শন (_i)" #: ../bonobo/bonobo-ui-sync-toolbar.c:570 msgid "_Hide toolbar" msgstr "টুলবার আড়াল (_H)" #: ../bonobo/bonobo-ui-sync-toolbar.c:570 msgid "Customi_ze" msgstr "স্বনির্ধারণ (_z)" #: ../bonobo/bonobo-ui-sync-toolbar.c:571 msgid "Customize the toolbar" msgstr "টুলবার স্বনির্ধারণ করুন" #: ../bonobo/bonobo-ui-toolbar.c:1117 msgid "is floating" msgstr "পরিবর্তন হচ্ছে" # msgstr "ভাসছে" # msgstr "উদ্দেশ্যহীনভাবে ভাসছে" #: ../bonobo/bonobo-ui-toolbar.c:1118 msgid "whether the toolbar is floating" msgstr "টুলবারে পরিবর্তন হচ্ছে কিনা" #: ../bonobo/bonobo-ui-toolbar.c:1164 msgid "Style of bevel around the toolbar" msgstr "টুলবারের চারপাশের ঢালের ধরন" # msgstr "উপাদান" # msgstr "পরিমান" #: ../bonobo/bonobo-ui-util.c:602 msgid "Could not display help for this application" msgstr "এই অ্যাপ্লিকেশনের জন্য সহায়তা প্রদর্শন করা যায়নি" #: ../bonobo/bonobo-ui-util.c:644 msgid "_Contents" msgstr "বিষয়বস্তু (_C)" # msgstr "উপাদান" # msgstr "পরিমান" #: ../bonobo/bonobo-ui-util.c:645 msgid "View help for this application" msgstr "এই অ্যাপ্লিকেশনের জন্য সহায়ক তথ্য দেখুন" #: ../bonobo/bonobo-window.c:348 msgid "Name of the window - used for configuration serialization." msgstr "উইন্ডোর নাম - কনফিগারেশন সিরিয়ালাইজেশনের জন্য ব্যবহৃত।" #: ../bonobo/bonobo-zoomable.c:326 msgid "Zoom level" msgstr "বড় করে দেখার মাত্রা" # msgstr "বড় করে দেখার স্তর" # msgstr "বড় করে দেখার ধাপ" #: ../bonobo/bonobo-zoomable.c:327 msgid "The degree of enlargment" msgstr "প্রসারিত করার স্তর" # msgstr "বৃদ্ধি করার মাত্রা" #: ../bonobo/bonobo-zoomable.c:335 msgid "Minimum Zoom level" msgstr "সর্বনিম্ন বড় করে দেখার মাত্রা" # msgstr "সর্বনিম্ন বড় করে দেখার ধাপ" #: ../bonobo/bonobo-zoomable.c:336 msgid "The minimum degree of enlargment" msgstr "প্রসারিত করার সর্বনিম্ন স্তর" # msgstr "সর্বনিম্ন বৃদ্ধি করার মাত্রা" #: ../bonobo/bonobo-zoomable.c:344 msgid "Maximum Zoom level" msgstr "প্রসারিত করার সর্বোচ্চ মাত্রা" # msgstr "সর্বোচ্চ বড় করে দেখার ধাপ" #: ../bonobo/bonobo-zoomable.c:345 msgid "The maximum degree of enlargment" msgstr "প্রসারিত করার সর্বোচ্চ স্তর" # msgstr "সর্বোচ্চ বৃদ্ধি করার মাত্রা" #: ../bonobo/bonobo-zoomable.c:353 msgid "Has a minimum Zoom level" msgstr "সর্বনিম্ন বড় করে দেখার মাত্রা রয়েছে" # msgstr "সর্বনিম্ন বড় করে দেখার স্তর আছে কিনা" # msgstr "সর্বনিম্ন বড় করে দেখার ধাপ আছে কিনা" #: ../bonobo/bonobo-zoomable.c:354 msgid "Whether we have a valid minimum zoom level" msgstr "আমাদের কার্যকর সর্বনিম্ন বড় করে দেখার মাত্রা রয়েছে কিনা" # msgstr "যে কোনো ক্ষেত্র আমাদের ত্রুটিহীন সর্বনিম্ন বড় করে দেখার স্তর রয়েছে কিনা" # msgstr "যে কোনো ক্ষেত্র আমাদের সঠিক সর্বনিম্ন বড় করে দেখার ধাপ আছে কিনা" #: ../bonobo/bonobo-zoomable.c:361 msgid "Has a maximum Zoom level" msgstr "সর্বোচ্চ বড় করে দেখার মাত্রা রয়েছে" # msgstr "সর্বোচ্চ বড় করে দেখার স্তর রয়েছে কিনা" # msgstr "সর্বোচ্চ বড় করে দেখার ধাপ আছে কিনা" #: ../bonobo/bonobo-zoomable.c:362 msgid "Whether we have a valid maximum zoom level" msgstr "আমাদের কার্যকর সর্বোচ্চ বড় করে দেখার মাত্রা রয়েছে কিনা" # msgstr "যে কোনো ক্ষেত্র আমাদের ত্রুটিহীন সর্বোচ্চ বড় করে দেখার স্তর রয়েছে কিনা" # msgstr "যে কোনো ক্ষেত্র আমাদের সঠিক সর্বোচ্চ বড় করে দেখার ধাপ আছে কিনা" #: ../bonobo/bonobo-zoomable.c:369 msgid "Is continuous" msgstr "ক্রমাগত চলছে" # msgstr "লাগাতার চলছে নাকি?" #: ../bonobo/bonobo-zoomable.c:370 msgid "Whether we zoom continuously (as opposed to jumps)" msgstr "আমরা ক্রমাগত বড় করে দেখবো কিনা (ধাপে ধাপে বড় করার পরিবর্তে)" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:1 msgid "About this application" msgstr "অ্যাপ্লিকেশন পরিচিতি" # msgstr "এই অ্যাপ্লিকেশন সম্বন্ধে" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:2 msgid "Select" msgstr "নির্বাচন" # msgstr "নির্বাচন করা" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:3 msgid "_About..." msgstr "পরিচিতি... (_A)" # msgstr "_সম্বন্ধে..." #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:4 msgid "_Edit" msgstr "সম্পাদনা (_E)" # msgstr "এডিট (_এ)" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:5 #: ../tools/browser/bonobo-browser.xml.h:4 msgid "_File" msgstr "ফাইল (_F)" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:6 msgid "_Select" msgstr "নির্বাচন (_S)" # msgstr "বাছাই করা ()" #: ../samples/bonoboui/hello.c:65 msgid "This does nothing; it is only a demonstration." msgstr "এটা কিছুই করে না; এটি শুধুই একটি নমুনা প্রদর্শনী।" # msgstr "এটা আসলে কিছুই না; শুধুমাত্র একটি নির্দেশনা ছাড়া।" #: ../samples/bonoboui/hello.c:147 msgid "BonoboUI-Hello." msgstr "BonoboUI-হ্যালো।" # msgstr "বনোবো ইউ.আই.(UI)-শুভেচ্ছা" #: ../samples/bonoboui/hello.c:219 msgid "Gnome Hello" msgstr "জিনোম হ্যালো" # msgstr "গুহ্‌নোম শুভেচ্ছা" #. Create Label and put it in the Button: #: ../samples/bonoboui/hello.c:274 msgid "Hello, World!" msgstr "হ্যালো, বিশ্ব!" #: ../samples/bonoboui/hello.c:314 msgid "Cannot init libbonoboui code" msgstr "libbonoboui কোড আরম্ভ করা যাচ্ছে না" #: ../samples/controls/bonobo-sample-controls.c:133 msgid "Could not initialize Bonobo UI" msgstr "বনোবো UI আরম্ভ করা যায়নি" #: ../tools/browser/bonobo-browser.desktop.in.h:1 msgid "Bonobo Component Browser" msgstr "বনোবো কম্পোনেন্ট ব্রাউজার" #: ../tools/browser/bonobo-browser.desktop.in.h:2 msgid "Shows available Bonobo components" msgstr "বিদ্যমান বনোবো কম্পোনেন্ট প্রদর্শন" #: ../tools/browser/bonobo-browser.xml.h:1 msgid "About this program..." msgstr "প্রোগ্রাম পরিচিতি..." #: ../tools/browser/bonobo-browser.xml.h:2 msgid "Close the current window" msgstr "বর্তমান উইন্ডো বন্ধ করুন" #: ../tools/browser/bonobo-browser.xml.h:3 msgid "Open a new window" msgstr "নতুন উইন্ডো খুলুন" #: ../tools/browser/bonobo-browser.xml.h:5 msgid "_Help" msgstr "সহায়তা (_H)" #. Build the general tab #: ../tools/browser/component-details.c:103 msgid "General" msgstr "সাধারণ" #: ../tools/browser/component-details.c:110 #: ../tools/browser/component-list.c:389 msgid "IID" msgstr "IID" #: ../tools/browser/component-details.c:111 msgid "Location" msgstr "অবস্থান" #. Build the details tab #: ../tools/browser/component-details.c:161 msgid "Details" msgstr "বিস্তারিত" #: ../tools/browser/component-details.c:162 msgid "Detailed Information" msgstr "বিস্তারিত তথ্য" #: ../tools/browser/component-list.c:358 ../tools/browser/window.c:283 msgid "Active" msgstr "সক্রিয়" #: ../tools/browser/component-list.c:379 msgid "Type" msgstr "ধরন" #: ../tools/browser/window.c:162 msgid "Component Details" msgstr "কম্পোনেন্টের বিবরণ" #: ../tools/browser/window.c:208 msgid "Bonobo Browser" msgstr "বনোবো ব্রাউজার" #: ../tools/browser/window.c:210 msgid "Copyright 2001, The GNOME Foundation" msgstr "স্বত্বাধিকার ২০০১, GNOME ফাউন্ডেশন " #: ../tools/browser/window.c:211 msgid "Bonobo component browser" msgstr "বনোবো কম্পোনেন্ট ব্রাউজার" #: ../tools/browser/window.c:214 msgid "translator-credits" msgstr "" "অঙ্কুর গ্রুপের পক্ষ থেকে খন্দকার মুজাহিদুল ইসলাম সুজন " "\nসাদিয়া আফরোজ " #. create the window #: ../tools/browser/window.c:240 msgid "Component Browser" msgstr "কম্পোনেন্ট ব্রাউজার" #. Fill out the tool bar #: ../tools/browser/window.c:280 msgid "All" msgstr "সব" #: ../tools/browser/window.c:286 msgid "Inactive" msgstr "নিষ্ক্রিয়" libbonoboui-2.24.5/po/zh_HK.po0000664000076400007640000003210611546334521013031 00000000000000# Chinese (Hong Kong) translation of libbonoboui. # Copyright (C) 2001, 02, 03, 06 Free Software Foundation, Inc. # Joe Man , 2001. # Abel Cheung , 2002-03, 06. # Chao-Hsiung Liao , 2009. # Wei-Lun Chao , 2010. # msgid "" msgstr "" "Project-Id-Version: libbonoboui 2.24.0\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2010-12-09 20:18+0800\n" "PO-Revision-Date: 2010-12-09 20:19+0800\n" "Last-Translator: Wei-Lun Chao \n" "Language-Team: Chinese (Hong Kong) \n" "Language: \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../bonobo/bonobo-canvas-item.c:680 msgid "corba factory" msgstr "corba 工廠" #: ../bonobo/bonobo-canvas-item.c:681 msgid "The factory pointer" msgstr "表示工廠的 pointer" #: ../bonobo/bonobo-canvas-item.c:690 msgid "corba UI container" msgstr "corba 界面容器元件" #: ../bonobo/bonobo-canvas-item.c:691 msgid "The User interface container" msgstr "用戶界面容器元件" #: ../bonobo/bonobo-dock-item-grip.c:254 msgid "Dock the toolbar" msgstr "嵌入工具列" #: ../bonobo/bonobo-dock-item-grip.c:255 msgid "Undock the toolbar" msgstr "卸離工具列" #: ../bonobo/bonobo-dock-item.c:225 ../bonobo/bonobo-dock-item.c:226 #: ../bonobo/bonobo-ui-toolbar.c:1163 msgid "Shadow type" msgstr "陰影類型" #: ../bonobo/bonobo-dock-item.c:236 ../bonobo/bonobo-dock-item.c:237 #: ../bonobo/bonobo-ui-toolbar.c:1107 ../bonobo/bonobo-ui-toolbar.c:1108 msgid "Orientation" msgstr "方向" #: ../bonobo/bonobo-dock-item.c:247 ../bonobo/bonobo-dock-item.c:248 #: ../bonobo/bonobo-ui-toolbar.c:1126 ../bonobo/bonobo-ui-toolbar.c:1127 msgid "Preferred width" msgstr "偏好的闊度" #: ../bonobo/bonobo-dock-item.c:256 ../bonobo/bonobo-dock-item.c:257 #: ../bonobo/bonobo-ui-toolbar.c:1135 ../bonobo/bonobo-ui-toolbar.c:1136 msgid "Preferred height" msgstr "偏好的高度" #: ../bonobo/bonobo-file-selector-util.c:350 msgid "Select a file to open" msgstr "選取準備開啟的檔案" #: ../bonobo/bonobo-file-selector-util.c:378 msgid "Select files to open" msgstr "選取多個要開啟的檔案" #: ../bonobo/bonobo-file-selector-util.c:407 msgid "Select a filename to save" msgstr "選取準備儲存的檔案" #: ../bonobo/bonobo-plug.c:425 msgid "Event Forwarding" msgstr "傳遞動作" #: ../bonobo/bonobo-plug.c:426 msgid "Whether X events should be forwarded" msgstr "輸入裝置發出的動作應否直接傳遞至 X" #: ../bonobo/bonobo-selector-widget.c:300 ../bonobo/bonobo-window.c:347 #: ../tools/browser/component-details.c:108 #: ../tools/browser/component-list.c:369 msgid "Name" msgstr "名稱" #: ../bonobo/bonobo-selector-widget.c:322 #: ../tools/browser/component-details.c:109 msgid "Description" msgstr "描述" #: ../bonobo/bonobo-selector.c:343 msgid "Interfaces required" msgstr "需要的 interface" #: ../bonobo/bonobo-selector.c:344 msgid "" "A NULL-terminated array of interfaces which a server must support in order " "to be listed in the selector. Defaults to \"IDL:Bonobo/Embeddable:1.0\" if " "no interfaces are listed" msgstr "一個以 NULL 作為最後一個元素的 CORBA interface 陣列,如果 server 想在 selector 中出現,就必須支援這些 interface。如果沒有列出任何 interface,預設值為 \"IDL:Bonobo/Embeddable:1.0\"。" #: ../bonobo/bonobo-selector.c:346 msgid "Interface required entry" msgstr "必須存在的 interface 項目" #: ../bonobo/bonobo-selector.c:347 msgid "One of the interfaces that's required" msgstr "其中一個必須存在的 interface" #: ../bonobo/bonobo-ui-config-widget.c:267 msgid "Visible" msgstr "可見的" #: ../bonobo/bonobo-ui-config-widget.c:274 msgid "_Show" msgstr "顯示(_S)" #: ../bonobo/bonobo-ui-config-widget.c:281 msgid "_Hide" msgstr "隱藏(_H)" #: ../bonobo/bonobo-ui-config-widget.c:287 msgid "_View tooltips" msgstr "顯示工具列提示(_V)" #: ../bonobo/bonobo-ui-config-widget.c:292 msgid "Toolbars" msgstr "工具列" #: ../bonobo/bonobo-ui-config-widget.c:302 msgid "toolbars" msgstr "工具列" #: ../bonobo/bonobo-ui-config-widget.c:313 #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "Look" msgstr "外觀" #: ../bonobo/bonobo-ui-config-widget.c:322 #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "_Icon" msgstr "圖示(_I)" #: ../bonobo/bonobo-ui-config-widget.c:328 msgid "_Text and Icon" msgstr "圖示及文字(_T)" #: ../bonobo/bonobo-ui-config-widget.c:334 msgid "Text only" msgstr "只有文字" #: ../bonobo/bonobo-ui-config-widget.c:340 msgid "_Priority text only" msgstr "部份圖示旁邊顯示文字(_P)" #: ../bonobo/bonobo-ui-engine.c:93 msgid "Debug" msgstr "偵錯" #: ../bonobo/bonobo-ui-engine.c:93 msgid "_Dump XML" msgstr "傾印 _XML" #: ../bonobo/bonobo-ui-engine.c:94 msgid "Dump the entire UI's XML description to the console" msgstr "傾印整個用戶界面的 XML 描述資料" #: ../bonobo/bonobo-ui-engine-config.c:524 msgid "Configure UI" msgstr "設定用戶界面" #: ../bonobo/bonobo-ui-init-gtk.c:131 msgid "Gdk debugging flags to set" msgstr "準備設定的 Gdk 偵錯旗標" #: ../bonobo/bonobo-ui-init-gtk.c:131 ../bonobo/bonobo-ui-init-gtk.c:134 #: ../bonobo/bonobo-ui-init-gtk.c:162 ../bonobo/bonobo-ui-init-gtk.c:165 msgid "FLAGS" msgstr "旗標" #: ../bonobo/bonobo-ui-init-gtk.c:134 msgid "Gdk debugging flags to unset" msgstr "準備去除的 Gdk 偵錯旗標" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "X display to use" msgstr "使用的 X 畫面" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "DISPLAY" msgstr "畫面" #: ../bonobo/bonobo-ui-init-gtk.c:142 msgid "X screen to use" msgstr "使用的 X 螢幕" #: ../bonobo/bonobo-ui-init-gtk.c:142 msgid "SCREEN" msgstr "螢幕" #: ../bonobo/bonobo-ui-init-gtk.c:146 msgid "Make X calls synchronous" msgstr "使用同步方式調用 X 函數" #: ../bonobo/bonobo-ui-init-gtk.c:152 msgid "Don't use X shared memory extension" msgstr "不使用 X 分享記憶體延伸功能" #: ../bonobo/bonobo-ui-init-gtk.c:156 msgid "Program name as used by the window manager" msgstr "視窗總管中使用的程式名稱" #: ../bonobo/bonobo-ui-init-gtk.c:156 msgid "NAME" msgstr "名稱" #: ../bonobo/bonobo-ui-init-gtk.c:159 msgid "Program class as used by the window manager" msgstr "視窗總管所需的程式類別名稱" #: ../bonobo/bonobo-ui-init-gtk.c:159 msgid "CLASS" msgstr "類別" #: ../bonobo/bonobo-ui-init-gtk.c:162 msgid "Gtk+ debugging flags to set" msgstr "準備設定的 Gtk+ 偵錯旗標" #: ../bonobo/bonobo-ui-init-gtk.c:165 msgid "Gtk+ debugging flags to unset" msgstr "準備去除的 Gtk+ 偵錯旗標" #: ../bonobo/bonobo-ui-init-gtk.c:168 msgid "Make all warnings fatal" msgstr "把所有的警告訊息都當成嚴重錯誤" #: ../bonobo/bonobo-ui-init-gtk.c:171 msgid "Load an additional Gtk module" msgstr "載入額外的 Gtk 模組" #: ../bonobo/bonobo-ui-init-gtk.c:171 msgid "MODULE" msgstr "模組" #: ../bonobo/bonobo-ui-init-gtk.c:187 msgid "GTK+" msgstr "GTK+" #: ../bonobo/bonobo-ui-main.c:281 msgid "Bonobo GUI support" msgstr "Bonobo 圖形界面支援" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "B_oth" msgstr "圖文(_O)" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "T_ext" msgstr "文字(_E)" #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Hide t_ips" msgstr "隱藏提示(_I)" #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Show t_ips" msgstr "顯示提示(_I)" #: ../bonobo/bonobo-ui-sync-toolbar.c:570 msgid "_Hide toolbar" msgstr "隱藏工具列(_H)" #: ../bonobo/bonobo-ui-sync-toolbar.c:570 msgid "Customi_ze" msgstr "自選(_Z)" #: ../bonobo/bonobo-ui-sync-toolbar.c:571 msgid "Customize the toolbar" msgstr "自選工具列" #: ../bonobo/bonobo-ui-toolbar.c:1117 msgid "is floating" msgstr "是浮動" #: ../bonobo/bonobo-ui-toolbar.c:1118 msgid "whether the toolbar is floating" msgstr "工具列是否浮動" #: ../bonobo/bonobo-ui-toolbar.c:1164 msgid "Style of bevel around the toolbar" msgstr "工具列邊緣的斜邊樣式" #: ../bonobo/bonobo-ui-util.c:602 msgid "Could not display help for this application" msgstr "無法顯示有關本程式的說明文件" #: ../bonobo/bonobo-ui-util.c:644 msgid "_Contents" msgstr "內容(_C)" #: ../bonobo/bonobo-ui-util.c:645 msgid "View help for this application" msgstr "顯示有關本程式的說明文件" #: ../bonobo/bonobo-window.c:348 msgid "Name of the window - used for configuration serialization." msgstr "視窗名稱" #: ../bonobo/bonobo-zoomable.c:326 msgid "Zoom level" msgstr "縮放倍率" #: ../bonobo/bonobo-zoomable.c:327 msgid "The degree of enlargment" msgstr "放大縮小的程度" #: ../bonobo/bonobo-zoomable.c:335 msgid "Minimum Zoom level" msgstr "縮放倍率下限" #: ../bonobo/bonobo-zoomable.c:336 msgid "The minimum degree of enlargment" msgstr "最低的縮放倍率" #: ../bonobo/bonobo-zoomable.c:344 msgid "Maximum Zoom level" msgstr "縮放倍率上限" #: ../bonobo/bonobo-zoomable.c:345 msgid "The maximum degree of enlargment" msgstr "最高的縮放倍率" #: ../bonobo/bonobo-zoomable.c:353 msgid "Has a minimum Zoom level" msgstr "有縮放倍率下限" #: ../bonobo/bonobo-zoomable.c:354 msgid "Whether we have a valid minimum zoom level" msgstr "是否有有效的縮放倍率下限" #: ../bonobo/bonobo-zoomable.c:361 msgid "Has a maximum Zoom level" msgstr "有縮放倍率上限" #: ../bonobo/bonobo-zoomable.c:362 msgid "Whether we have a valid maximum zoom level" msgstr "是否有有效的縮放倍率上限" #: ../bonobo/bonobo-zoomable.c:369 msgid "Is continuous" msgstr "是連續" #: ../bonobo/bonobo-zoomable.c:370 msgid "Whether we zoom continuously (as opposed to jumps)" msgstr "可否連續放大或縮小 (不同於只有個別的縮放倍率)" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:1 msgid "About this application" msgstr "關於此程式" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:2 msgid "Select" msgstr "選擇" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:3 msgid "_About..." msgstr "關於(_A)…" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:4 msgid "_Edit" msgstr "編輯(_E)" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:5 #: ../tools/browser/bonobo-browser.xml.h:4 msgid "_File" msgstr "檔案(_F)" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:6 msgid "_Select" msgstr "選擇(_S)" #: ../samples/bonoboui/hello.c:65 msgid "This does nothing; it is only a demonstration." msgstr "這個只是示範程式。" #: ../samples/bonoboui/hello.c:147 msgid "BonoboUI-Hello." msgstr "BonoboUI-Hello." #: ../samples/bonoboui/hello.c:219 msgid "Gnome Hello" msgstr "GNOME 示範" #. Create Label and put it in the Button: #: ../samples/bonoboui/hello.c:274 msgid "Hello, World!" msgstr "你好!" #: ../samples/bonoboui/hello.c:314 msgid "Cannot init libbonoboui code" msgstr "無法初始化 libbonoboui 的源代碼" #: ../samples/controls/bonobo-sample-controls.c:133 msgid "Could not initialize Bonobo UI" msgstr "無法初始化 Bonobo 圖形界面" #: ../tools/browser/bonobo-browser.desktop.in.h:1 msgid "Bonobo Component Browser" msgstr "Bonobo 元件瀏覽器" #: ../tools/browser/bonobo-browser.desktop.in.h:2 msgid "Shows available Bonobo components" msgstr "顯示現有的 Bonobo 元件" #: ../tools/browser/bonobo-browser.xml.h:1 msgid "About this program..." msgstr "關於本程式…" #: ../tools/browser/bonobo-browser.xml.h:2 msgid "Close the current window" msgstr "關閉目前的視窗" #: ../tools/browser/bonobo-browser.xml.h:3 msgid "Open a new window" msgstr "開啟新視窗" #: ../tools/browser/bonobo-browser.xml.h:5 msgid "_Help" msgstr "求助(_H)" #. Build the general tab #: ../tools/browser/component-details.c:103 msgid "General" msgstr "一般" #: ../tools/browser/component-details.c:110 #: ../tools/browser/component-list.c:389 msgid "IID" msgstr "IID" #: ../tools/browser/component-details.c:111 msgid "Location" msgstr "位置" #. Build the details tab #: ../tools/browser/component-details.c:161 msgid "Details" msgstr "詳細資料" #: ../tools/browser/component-details.c:162 msgid "Detailed Information" msgstr "詳細資料" #: ../tools/browser/component-list.c:358 ../tools/browser/window.c:283 msgid "Active" msgstr "使用中" #: ../tools/browser/component-list.c:379 msgid "Type" msgstr "類型" #: ../tools/browser/window.c:162 msgid "Component Details" msgstr "元件的詳細資料" #: ../tools/browser/window.c:208 msgid "Bonobo Browser" msgstr "Bonobo 瀏覽器" #: ../tools/browser/window.c:210 msgid "Copyright 2001, The GNOME Foundation" msgstr "版權所有 2001, The GNOME Foundation" #: ../tools/browser/window.c:211 msgid "Bonobo component browser" msgstr "Bonobo 元件瀏覽器" #: ../tools/browser/window.c:214 msgid "translator-credits" msgstr "" "如對翻譯有任何意見,請送一封電子郵件給\n" "以下地址,GNOME 翻譯隊伍會儘快回覆你:\n" "zh-l10n@lists.linux.org.tw\n" "\n" "Abel Cheung , 2002-03, 06\n" "Joe Man , 2001" #. create the window #: ../tools/browser/window.c:240 msgid "Component Browser" msgstr "元件瀏覽器" #. Fill out the tool bar #: ../tools/browser/window.c:280 msgid "All" msgstr "全部" #: ../tools/browser/window.c:286 msgid "Inactive" msgstr "不使用" libbonoboui-2.24.5/po/et.po0000664000076400007640000001771411546334521012446 00000000000000# Libbonoboui eesti keele tõlge. # Estonian translation of Libbonoboui. # # Copyright (C) 2004-2006 Free Software Foundation, Inc. # Copyright (C) 2008 The Gnome Project. # This file is distributed under the same license as the libbonoboui package. # # Priit Laes , 2004. # Ivar Smolin , 2005, 2006, 2008. # msgid "" msgstr "" "Project-Id-Version: Libbonoboui HEAD\n" "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?" "product=bonobo&component=libbonoboui\n" "POT-Creation-Date: 2010-12-09 12:20+0000\n" "PO-Revision-Date: 2007-11-18 19:27+0200\n" "Last-Translator: Ivar Smolin \n" "Language-Team: Estonian \n" "Language: et\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" msgid "corba factory" msgstr "corba factory" msgid "The factory pointer" msgstr "Factory viit" msgid "corba UI container" msgstr "corba kasutajaliidese konteiner" msgid "The User interface container" msgstr "Kasutajaliidese konteiner" msgid "Dock the toolbar" msgstr "Haagi tööriistariba külge" msgid "Undock the toolbar" msgstr "Haagi tööriistariba lahti" msgid "Shadow type" msgstr "Varju tüüp" msgid "Orientation" msgstr "Suund" msgid "Preferred width" msgstr "Eelistatud laius" msgid "Preferred height" msgstr "Eelistatud kõrgus" msgid "Select a file to open" msgstr "Vali fail, mida avada" msgid "Select files to open" msgstr "Vali failid, mida avada" msgid "Select a filename to save" msgstr "Vali salvestatava faili nimi" msgid "Event Forwarding" msgstr "Sündmuste edastamine" msgid "Whether X events should be forwarded" msgstr "Kas X'i sündmusi tuleb edastada" msgid "Name" msgstr "Nimi" msgid "Description" msgstr "Kirjeldus" msgid "Interfaces required" msgstr "Vajalikud liidesed" msgid "" "A NULL-terminated array of interfaces which a server must support in order " "to be listed in the selector. Defaults to \"IDL:Bonobo/Embeddable:1.0\" if " "no interfaces are listed" msgstr "" "NULL-lõpuga stringide massiiv liidestest, mida server peab toetama, et olla " "valikunimekirjas. Vaikimisi väärtuseks on \"IDL:Bonobo/Embeddable:1.0\" kui " "ühtegi liidest ei ole loetletud" msgid "Interface required entry" msgstr "Vajalike liideste kirje" msgid "One of the interfaces that's required" msgstr "Üks vajalikest liidestest" msgid "Visible" msgstr "Nähtav" msgid "_Show" msgstr "_Näita" msgid "_Hide" msgstr "_Peida" msgid "_View tooltips" msgstr "_Vaata tööriistavihjeid" msgid "Toolbars" msgstr "Tööriistaribad" msgid "toolbars" msgstr "tööriistaribad" msgid "Look" msgstr "Vaade" msgid "_Icon" msgstr "_Ikoon" msgid "_Text and Icon" msgstr "_Tekst ja ikoon" msgid "Text only" msgstr "Ainult tekst" msgid "_Priority text only" msgstr "_Ainult tähtis tekst" msgid "Debug" msgstr "Silumine" msgid "_Dump XML" msgstr "_XML-i väljastamine" msgid "Dump the entire UI's XML description to the console" msgstr "Väljastab konsoolile kogu kasutajaliidese XML kirjelduse" msgid "Configure UI" msgstr "Seadista kasutajaliidest" msgid "Gdk debugging flags to set" msgstr "Gdk silumislipud, mida seada" msgid "FLAGS" msgstr "LIPUD" msgid "Gdk debugging flags to unset" msgstr "Gdk silumislipud, mida nullida" msgid "X display to use" msgstr "Kasutatav X'i kuva" msgid "DISPLAY" msgstr "KUVA" msgid "X screen to use" msgstr "Kasutatav X'i ekraan" msgid "SCREEN" msgstr "EKRAAN" msgid "Make X calls synchronous" msgstr "X'i kutsungite muutmine sünkroonseks" msgid "Don't use X shared memory extension" msgstr "X'i jagatud mälu laiendust ei kasutata" msgid "Program name as used by the window manager" msgstr "Programmi nimi aknahalduri jaoks" msgid "NAME" msgstr "NIMI" msgid "Program class as used by the window manager" msgstr "Programmi liik aknahalduri jaoks" msgid "CLASS" msgstr "LIIK" msgid "Gtk+ debugging flags to set" msgstr "Gtk+ silumislipud, mida seada" msgid "Gtk+ debugging flags to unset" msgstr "Gtk+ silumislipud, mida nullida" msgid "Make all warnings fatal" msgstr "Kõigi hoiatuste muutmine saatuslikuks" msgid "Load an additional Gtk module" msgstr "Gtk lisamooduli laadimine" msgid "MODULE" msgstr "MOODUL" msgid "GTK+" msgstr "GTK+" msgid "Bonobo GUI support" msgstr "Bonobo kasutajaliidese tugi" msgid "B_oth" msgstr "_Mõlemad" msgid "T_ext" msgstr "T_ekst" msgid "Hide t_ips" msgstr "Sp_ikrite peitmine" msgid "Show t_ips" msgstr "Sp_ikrite näitamine" msgid "_Hide toolbar" msgstr "_Peida tööriistariba" msgid "Customi_ze" msgstr "K_ohanda" msgid "Customize the toolbar" msgstr "Kohanda tööriistariba" msgid "is floating" msgstr "on hõljuv" msgid "whether the toolbar is floating" msgstr "kas tööriistariba on hõljuv" msgid "Style of bevel around the toolbar" msgstr "Tööriistariba ümbritseva kaldserva stiil" msgid "Could not display help for this application" msgstr "Selle rakenduse abi pole võimalik kuvada" msgid "_Contents" msgstr "_Sisukord" msgid "View help for this application" msgstr "Kuva programmi abi" msgid "Name of the window - used for configuration serialization." msgstr "Akna nimi - kasutatakse seadistuse serialiseerimiseks." msgid "Zoom level" msgstr "Suurendusaste" msgid "The degree of enlargment" msgstr "Suurendamise aste" msgid "Minimum Zoom level" msgstr "Väikseim suurendusaste" msgid "The minimum degree of enlargment" msgstr "Väikseim suurendamise aste" msgid "Maximum Zoom level" msgstr "Suurim suurendusaste" msgid "The maximum degree of enlargment" msgstr "Suurim suurendamise aste" msgid "Has a minimum Zoom level" msgstr "On juba väikseimal suurendusastmel" msgid "Whether we have a valid minimum zoom level" msgstr "Kas meil on väikseim suurendusaste" msgid "Has a maximum Zoom level" msgstr "On juba suurimal suurendusastmel" msgid "Whether we have a valid maximum zoom level" msgstr "Kas meil on paikapidav suurim suurendustase" msgid "Is continuous" msgstr "On pidev" msgid "Whether we zoom continuously (as opposed to jumps)" msgstr "Kas me suurendame pidevalt (vastupidiselt hüpetele)" msgid "About this application" msgstr "Programmi kohta" msgid "Select" msgstr "Valik" msgid "_About..." msgstr "_Programmist..." msgid "_Edit" msgstr "_Redaktor" msgid "_File" msgstr "_Fail" msgid "_Select" msgstr "_Vali" msgid "This does nothing; it is only a demonstration." msgstr "See ei tee midagi; see on vaid näitlik selgitus." msgid "BonoboUI-Hello." msgstr "BonoboUI-Tere." msgid "Gnome Hello" msgstr "Gnome'i Tere" # Create Label and put it in the Button: #. Create Label and put it in the Button: msgid "Hello, World!" msgstr "Tere, maailm!" msgid "Cannot init libbonoboui code" msgstr "libbonoboui koodi pole võimalik lähtestada" msgid "Could not initialize Bonobo UI" msgstr "Bonobo kasutajaliidest pole võimalik lähtestada" msgid "Bonobo Component Browser" msgstr "Bonobo komponendisirvija" msgid "Shows available Bonobo components" msgstr "Saadaolevate Bonobo komponentide näitamine" msgid "About this program..." msgstr "Programmist lähemalt..." msgid "Close the current window" msgstr "Käesoleva akna sulgemine" msgid "Open a new window" msgstr "Uue akna avamine" msgid "_Help" msgstr "A_bi" #. Build the general tab msgid "General" msgstr "Üldine" msgid "IID" msgstr "IID" msgid "Location" msgstr "Asukoht" #. Build the details tab msgid "Details" msgstr "Üksikasjad" msgid "Detailed Information" msgstr "Üksikasjalised andmed" msgid "Active" msgstr "Aktiivne" msgid "Type" msgstr "Tüüp" msgid "Component Details" msgstr "Komponendi üksikasjad" msgid "Bonobo Browser" msgstr "Bonobo sirvija" msgid "Copyright 2001, The GNOME Foundation" msgstr "Autoriõigused 2001, The GNOME Foundation" msgid "Bonobo component browser" msgstr "Bonobo komponendilehitseja" msgid "translator-credits" msgstr "" "Priit Laes , 2004.\n" "Ivar Smolin , 2005, 2006, 2008." #. create the window msgid "Component Browser" msgstr "Komponendisirvija" #. Fill out the tool bar msgid "All" msgstr "Kõik" msgid "Inactive" msgstr "Mitteaktiivne" libbonoboui-2.24.5/po/sq.po0000644000076400007640000003612111173072741012447 00000000000000# Përkthimi i mesazheve të libbonoboui në shqip # This file is distributed under the same license as the libbonoboui package. # Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. # # Laurent Dhima , 2003, 2004, 2005, 2006, 2007, 2008. msgid "" msgstr "" "Project-Id-Version: libbonoboui HEAD\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2008-07-16 15:33+0200\n" "PO-Revision-Date: 2008-03-20 11:52+0100\n" "Last-Translator: Laurent Dhima \n" "Language-Team: albanian \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" #: ../bonobo/bonobo-canvas-item.c:680 msgid "corba factory" msgstr "fabrika e corba" #: ../bonobo/bonobo-canvas-item.c:681 msgid "The factory pointer" msgstr "Treguesi i fabrikës" #: ../bonobo/bonobo-canvas-item.c:690 msgid "corba UI container" msgstr "përmbajtësi UI corba" #: ../bonobo/bonobo-canvas-item.c:691 msgid "The User interface container" msgstr "Përmbajtësi i interfaqes së përdoruesit" #: ../bonobo/bonobo-dock-item-grip.c:255 msgid "Dock the toolbar" msgstr "Spiranco panelin e instrumentëve" #: ../bonobo/bonobo-dock-item-grip.c:256 msgid "Undock the toolbar" msgstr "Shkëput panelin e instrumentëve" #: ../bonobo/bonobo-dock-item.c:228 ../bonobo/bonobo-dock-item.c:229 #: ../bonobo/bonobo-ui-toolbar.c:1161 msgid "Shadow type" msgstr "Lloji i hijes" #: ../bonobo/bonobo-dock-item.c:239 ../bonobo/bonobo-dock-item.c:240 #: ../bonobo/bonobo-ui-toolbar.c:1105 ../bonobo/bonobo-ui-toolbar.c:1106 msgid "Orientation" msgstr "Orientimi" #: ../bonobo/bonobo-dock-item.c:250 ../bonobo/bonobo-dock-item.c:251 #: ../bonobo/bonobo-ui-toolbar.c:1124 ../bonobo/bonobo-ui-toolbar.c:1125 msgid "Preferred width" msgstr "Gjerësia e preferuar" #: ../bonobo/bonobo-dock-item.c:259 ../bonobo/bonobo-dock-item.c:260 #: ../bonobo/bonobo-ui-toolbar.c:1133 ../bonobo/bonobo-ui-toolbar.c:1134 msgid "Preferred height" msgstr "Lartësia e preferuar" #: ../bonobo/bonobo-file-selector-util.c:357 msgid "Select a file to open" msgstr "Zgjidh file që duhet hapur" #: ../bonobo/bonobo-file-selector-util.c:385 msgid "Select files to open" msgstr "Zgjidh files që duhen hapur" #: ../bonobo/bonobo-file-selector-util.c:414 msgid "Select a filename to save" msgstr "Zgjidh emrin e file për të ruajtur" #: ../bonobo/bonobo-plug.c:423 msgid "Event Forwarding" msgstr "Ridërgimi i ndodhive" #: ../bonobo/bonobo-plug.c:424 msgid "Whether X events should be forwarded" msgstr "Nëse ndodhitë X duhen ridërguar" #: ../bonobo/bonobo-selector-widget.c:297 ../bonobo/bonobo-window.c:344 #: ../tools/browser/component-details.c:114 #: ../tools/browser/component-list.c:378 msgid "Name" msgstr "Emri" #: ../bonobo/bonobo-selector-widget.c:319 #: ../tools/browser/component-details.c:115 msgid "Description" msgstr "Përshkrimi" #: ../bonobo/bonobo-selector.c:343 msgid "Interfaces required" msgstr "Interfaqet e kërkuara" # (pofilter) endpunc: checks whether punctuation at the end of the strings match #: ../bonobo/bonobo-selector.c:344 msgid "" "A NULL-terminated array of interfaces which a server must support in order " "to be listed in the selector. Defaults to \"IDL:Bonobo/Embeddable:1.0\" if " "no interfaces are listed" msgstr "" "Një array interfaqeje përfunduar nga NULL që serveri duhet të suportojë në " "mënyrë që të figurojë në listën e zgjedhësit. Vlera e paracaktuar është " "\"IDL:Bonobo/Embeddable:1.0\" nëse nuk është figuron asnjë interfaqe." #: ../bonobo/bonobo-selector.c:346 msgid "Interface required entry" msgstr "Zëri i interfaqes së kërkuar" #: ../bonobo/bonobo-selector.c:347 msgid "One of the interfaces that's required" msgstr "Njëra nga interfaqet e kërkuara" #: ../bonobo/bonobo-ui-config-widget.c:265 msgid "Visible" msgstr "I dukshëm" #: ../bonobo/bonobo-ui-config-widget.c:272 msgid "_Show" msgstr "_Shfaq" #: ../bonobo/bonobo-ui-config-widget.c:279 msgid "_Hide" msgstr "_Fshih" # (pofilter) simplecaps: checks the capitalisation of two strings isn't wildly different #: ../bonobo/bonobo-ui-config-widget.c:285 msgid "_View tooltips" msgstr "Shfaq _propozimet" #: ../bonobo/bonobo-ui-config-widget.c:290 msgid "Toolbars" msgstr "Panelët e instrumentëve" #: ../bonobo/bonobo-ui-config-widget.c:300 msgid "toolbars" msgstr "panelët e instrumentëve" #: ../bonobo/bonobo-ui-config-widget.c:311 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "Look" msgstr "Paraqitja" #: ../bonobo/bonobo-ui-config-widget.c:320 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "_Icon" msgstr "_Ikonë" #: ../bonobo/bonobo-ui-config-widget.c:326 msgid "_Text and Icon" msgstr "_Tekst dhe ikonë" #: ../bonobo/bonobo-ui-config-widget.c:332 msgid "Text only" msgstr "Vetëm tekst" #: ../bonobo/bonobo-ui-config-widget.c:338 msgid "_Priority text only" msgstr "Vetëm teksti _prioritar" #: ../bonobo/bonobo-ui-engine.c:91 msgid "Debug" msgstr "Gjetja dhe korrigjimi i gabimeve" # (pofilter) unchanged: please translate #: ../bonobo/bonobo-ui-engine.c:91 msgid "_Dump XML" msgstr "_Dump XML" # (pofilter) endwhitespace: checks whether whitespace at the end of the strings matches #: ../bonobo/bonobo-ui-engine.c:92 msgid "Dump the entire UI's XML description to the console" msgstr "Shkarko të gjithë përshkrimin XML të UI në konsolë " #: ../bonobo/bonobo-ui-engine-config.c:522 msgid "Configure UI" msgstr "Konfiguro UI" # (pofilter) simplecaps: checks the capitalisation of two strings isn't wildly different #: ../bonobo/bonobo-ui-init-gtk.c:131 msgid "Gdk debugging flags to set" msgstr "Flag e debug të Gdk për tu caktuar" #: ../bonobo/bonobo-ui-init-gtk.c:131 ../bonobo/bonobo-ui-init-gtk.c:134 #: ../bonobo/bonobo-ui-init-gtk.c:162 ../bonobo/bonobo-ui-init-gtk.c:165 msgid "FLAGS" msgstr "FLAGS" # (pofilter) simplecaps: checks the capitalisation of two strings isn't wildly different #: ../bonobo/bonobo-ui-init-gtk.c:134 msgid "Gdk debugging flags to unset" msgstr "Flag të debug të Gdk që duhen anulluar" # (pofilter) simplecaps: checks the capitalisation of two strings isn't wildly different #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "X display to use" msgstr "Monitori X që duhet përdorur" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "DISPLAY" msgstr "MONITORI" # (pofilter) simplecaps: checks the capitalisation of two strings isn't wildly different #: ../bonobo/bonobo-ui-init-gtk.c:142 msgid "X screen to use" msgstr "Ekrani X që duhet përdorur" # (pofilter) acronyms: acronyms should not be translated: SCREEN #: ../bonobo/bonobo-ui-init-gtk.c:142 msgid "SCREEN" msgstr "EKRANI" #: ../bonobo/bonobo-ui-init-gtk.c:146 msgid "Make X calls synchronous" msgstr "Bëj që thirrjet e X të jenë të sinkronizuara" #: ../bonobo/bonobo-ui-init-gtk.c:152 msgid "Don't use X shared memory extension" msgstr "Mos përdor veçoritë e X për kujtesën e përbashkët" #: ../bonobo/bonobo-ui-init-gtk.c:156 msgid "Program name as used by the window manager" msgstr "Emri i programit që përdoret nga manazhuesi i dritareve" # (pofilter) acronyms: acronyms should not be translated: NAME #: ../bonobo/bonobo-ui-init-gtk.c:156 msgid "NAME" msgstr "EMRI" #: ../bonobo/bonobo-ui-init-gtk.c:159 msgid "Program class as used by the window manager" msgstr "Klasa e programit që përdoret nga manazhuesi i dritareve" # (pofilter) acronyms: acronyms should not be translated: CLASS #: ../bonobo/bonobo-ui-init-gtk.c:159 msgid "CLASS" msgstr "KLASA" # (pofilter) simplecaps: checks the capitalisation of two strings isn't wildly different #: ../bonobo/bonobo-ui-init-gtk.c:162 msgid "Gtk+ debugging flags to set" msgstr "Flag e debug të Gtk+ për tu caktuar" # (pofilter) simplecaps: checks the capitalisation of two strings isn't wildly different #: ../bonobo/bonobo-ui-init-gtk.c:165 msgid "Gtk+ debugging flags to unset" msgstr "Flag e debug të Gtk+ për tu hequr" #: ../bonobo/bonobo-ui-init-gtk.c:168 msgid "Make all warnings fatal" msgstr "Bëj që të gjithë paralajmërimet të jenë fatale" #: ../bonobo/bonobo-ui-init-gtk.c:171 msgid "Load an additional Gtk module" msgstr "Ngarko një modul Gtk shtesë" # (pofilter) acronyms: acronyms should not be translated: MODULE #: ../bonobo/bonobo-ui-init-gtk.c:171 msgid "MODULE" msgstr "MODULI" #: ../bonobo/bonobo-ui-init-gtk.c:187 msgid "GTK+" msgstr "GTK+" #: ../bonobo/bonobo-ui-main.c:278 msgid "Bonobo GUI support" msgstr "Suporti Bonobo GUI" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "B_oth" msgstr "_Të dy" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "T_ext" msgstr "T_eksti" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Hide t_ips" msgstr "Fshih propoz_imet" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Show t_ips" msgstr "Trego propoz_imet" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "_Hide toolbar" msgstr "_Fshih panelin e instrumentëve" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "Customi_ze" msgstr "Personali_zo" #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Customize the toolbar" msgstr "Personalizo panelin e instrumentëve" #: ../bonobo/bonobo-ui-toolbar.c:1115 msgid "is floating" msgstr "është lëvizëse" #: ../bonobo/bonobo-ui-toolbar.c:1116 msgid "whether the toolbar is floating" msgstr "tregon nëse paneli i instrumentëve është lëvizës" #: ../bonobo/bonobo-ui-toolbar.c:1162 msgid "Style of bevel around the toolbar" msgstr "Stili i bordit rreth panelit të instrumentëve" # (pofilter) isfuzzy: Check if the unit has been marked fuzzy. #: ../bonobo/bonobo-ui-util.c:601 msgid "Could not display help for this application" msgstr "E pamundur shfaqja e ndihmës për këtë aplikativ" #: ../bonobo/bonobo-ui-util.c:643 msgid "_Contents" msgstr "_Përmbajtja" #: ../bonobo/bonobo-ui-util.c:644 msgid "View help for this application" msgstr "Shiko ndihmën në lidhje me këtë program" #: ../bonobo/bonobo-window.c:345 msgid "Name of the window - used for configuration serialization." msgstr "Emri i dritares - përdoret për të serializuar konfigurimin." #: ../bonobo/bonobo-zoomable.c:326 msgid "Zoom level" msgstr "Niveli i zmadhimit" #: ../bonobo/bonobo-zoomable.c:327 msgid "The degree of enlargment" msgstr "Grada e zmadhimit" #: ../bonobo/bonobo-zoomable.c:335 msgid "Minimum Zoom level" msgstr "Niveli minimum i zmadhimit" #: ../bonobo/bonobo-zoomable.c:336 msgid "The minimum degree of enlargment" msgstr "Grada minimum e zmadhimit" #: ../bonobo/bonobo-zoomable.c:344 msgid "Maximum Zoom level" msgstr "Niveli maksimum i zmadhimit" #: ../bonobo/bonobo-zoomable.c:345 msgid "The maximum degree of enlargment" msgstr "Grada maksimum e zmadhimit" #: ../bonobo/bonobo-zoomable.c:353 msgid "Has a minimum Zoom level" msgstr "Ka nivelin minimum të zmadhimit" #: ../bonobo/bonobo-zoomable.c:354 msgid "Whether we have a valid minimum zoom level" msgstr "Nëse të kemi apo jo një nivel minimum zmadhimi të vlefshëm" #: ../bonobo/bonobo-zoomable.c:361 msgid "Has a maximum Zoom level" msgstr "Ka nivelin maksimim të zmadhimit" #: ../bonobo/bonobo-zoomable.c:362 msgid "Whether we have a valid maximum zoom level" msgstr "Nëse të kemi apo jo një nivel maksimum zmadhimi të vlefshëm" #: ../bonobo/bonobo-zoomable.c:369 msgid "Is continuous" msgstr "Është i vazhdueshëm" # (pofilter) brackets: translation is missing '(', ')' #: ../bonobo/bonobo-zoomable.c:370 msgid "Whether we zoom continuously (as opposed to jumps)" msgstr "Tregon nëse zmadhimi duhet të jetë i vazhdueshëm (dhe jo gradual)" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:1 msgid "About this application" msgstr "Informacione në lidhje me këtë aplikativ" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:2 msgid "Select" msgstr "Zgjidh" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:3 msgid "_About..." msgstr "_Informacione..." #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:4 msgid "_Edit" msgstr "_Ndrysho" # (pofilter) unchanged: please translate #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:5 #: ../tools/browser/bonobo-browser.xml.h:4 msgid "_File" msgstr "_File" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:6 msgid "_Select" msgstr "_Zgjidh" #: ../samples/bonoboui/hello.c:63 msgid "This does nothing; it is only a demonstration." msgstr "Nuk bën asgjë; është vetëm një shembull." # (pofilter) unchanged: please translate #: ../samples/bonoboui/hello.c:145 msgid "BonoboUI-Hello." msgstr "BonoboUI-Hello." # (pofilter) unchanged: please translate #: ../samples/bonoboui/hello.c:217 msgid "Gnome Hello" msgstr "Gnome Hello" #. Create Label and put it in the Button: #: ../samples/bonoboui/hello.c:272 msgid "Hello, World!" msgstr "Botë, përshëndetje!" #: ../samples/bonoboui/hello.c:312 msgid "Cannot init libbonoboui code" msgstr "I pamundur fillimi i kodit të libbonoboui" #: ../samples/controls/bonobo-sample-controls.c:131 msgid "Could not initialize Bonobo UI" msgstr "E pamundur nisja e Bonobo UI" #: ../tools/browser/bonobo-browser.desktop.in.h:1 msgid "Bonobo Component Browser" msgstr "Shfletuesi i komponentëve Bonobo" #: ../tools/browser/bonobo-browser.desktop.in.h:2 msgid "Shows available Bonobo components" msgstr "Shfaq komponentët Bonobo në dispozicion" #: ../tools/browser/bonobo-browser.xml.h:1 msgid "About this program..." msgstr "Informacione mbi këtë program..." #: ../tools/browser/bonobo-browser.xml.h:2 msgid "Close the current window" msgstr "Mbyll dritaren aktuale" #: ../tools/browser/bonobo-browser.xml.h:3 msgid "Open a new window" msgstr "Hap një dritare të re" #: ../tools/browser/bonobo-browser.xml.h:5 msgid "_Help" msgstr "_Ndihmë" #. Build the general tab #: ../tools/browser/component-details.c:109 msgid "General" msgstr "Të përgjithshme" #: ../tools/browser/component-details.c:116 #: ../tools/browser/component-list.c:398 msgid "IID" msgstr "IID" #: ../tools/browser/component-details.c:117 msgid "Location" msgstr "Vendndodhja" #. Build the details tab #: ../tools/browser/component-details.c:167 msgid "Details" msgstr "Detaje" #: ../tools/browser/component-details.c:168 msgid "Detailed Information" msgstr "Informacione të hollësishme" #: ../tools/browser/component-list.c:367 ../tools/browser/window.c:283 msgid "Active" msgstr "Aktiv" #: ../tools/browser/component-list.c:388 msgid "Type" msgstr "Lloji" #: ../tools/browser/window.c:162 msgid "Component Details" msgstr "Detajet e komponentit" #: ../tools/browser/window.c:208 msgid "Bonobo Browser" msgstr "Shfletuesi Bonobo" # (pofilter) unchanged: please translate #: ../tools/browser/window.c:210 msgid "Copyright 2001, The GNOME Foundation" msgstr "Copyright 2001, The GNOME Foundation" # (pofilter) simplecaps: checks the capitalisation of two strings isn't wildly different #: ../tools/browser/window.c:211 msgid "Bonobo component browser" msgstr "Shfletuesi i komponentëve Bonobo" # (pofilter) credits: checks for messages containing translation credits instead of normal translations. #: ../tools/browser/window.c:214 msgid "translator-credits" msgstr "Laurent Dhima " #. create the window #: ../tools/browser/window.c:240 msgid "Component Browser" msgstr "Shfletuesi komponentëve" #. Fill out the tool bar #: ../tools/browser/window.c:280 msgid "All" msgstr "Gjithçka" #: ../tools/browser/window.c:286 msgid "Inactive" msgstr "Jo aktiv" libbonoboui-2.24.5/po/fi.po0000644000076400007640000003174111173072741012425 00000000000000# libbonoboui Finnish translation # Suomennos: http://gnome-fi.sourceforge.net/ # # Copyright (C) 2002 Free Software Foundation, Inc. # Sami Gerdt , 2000. # Pauli Virtanen , 2000-2005. # Ilkka Tuohela , 2005. # # embeddable = upote # control = säädin # msgid "" msgstr "" "Project-Id-Version: libbonoboui 1.109.2\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2008-02-13 15:23+0300\n" "PO-Revision-Date: 2006-08-14 10:10+0300\n" "Last-Translator: Ilkka Tuohela \n" "Language-Team: Finnish \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../bonobo/bonobo-canvas-item.c:680 msgid "corba factory" msgstr "corba-tehdas" #: ../bonobo/bonobo-canvas-item.c:681 msgid "The factory pointer" msgstr "Tehdasosoitin" #: ../bonobo/bonobo-canvas-item.c:690 msgid "corba UI container" msgstr "corba UI -säilö" #: ../bonobo/bonobo-canvas-item.c:691 msgid "The User interface container" msgstr "Käyttöliittymäsäilö" #: ../bonobo/bonobo-dock-item-grip.c:255 msgid "Dock the toolbar" msgstr "Telakoi työkalupalkki" #: ../bonobo/bonobo-dock-item-grip.c:256 msgid "Undock the toolbar" msgstr "Irrota työkalupalkki" #: ../bonobo/bonobo-dock-item.c:228 ../bonobo/bonobo-dock-item.c:229 #: ../bonobo/bonobo-ui-toolbar.c:1161 msgid "Shadow type" msgstr "Varjotyyppi" #: ../bonobo/bonobo-dock-item.c:239 ../bonobo/bonobo-dock-item.c:240 #: ../bonobo/bonobo-ui-toolbar.c:1105 ../bonobo/bonobo-ui-toolbar.c:1106 msgid "Orientation" msgstr "Suunta" #: ../bonobo/bonobo-dock-item.c:250 ../bonobo/bonobo-dock-item.c:251 #: ../bonobo/bonobo-ui-toolbar.c:1124 ../bonobo/bonobo-ui-toolbar.c:1125 msgid "Preferred width" msgstr "Haluttu leveys" #: ../bonobo/bonobo-dock-item.c:259 ../bonobo/bonobo-dock-item.c:260 #: ../bonobo/bonobo-ui-toolbar.c:1133 ../bonobo/bonobo-ui-toolbar.c:1134 msgid "Preferred height" msgstr "Haluttu korkeus" #: ../bonobo/bonobo-file-selector-util.c:357 msgid "Select a file to open" msgstr "Valitse avattava tiedosto" #: ../bonobo/bonobo-file-selector-util.c:385 msgid "Select files to open" msgstr "Valitse avattavat tiedostot" #: ../bonobo/bonobo-file-selector-util.c:414 msgid "Select a filename to save" msgstr "Valitse tallennettava tiedostonimi" #: ../bonobo/bonobo-plug.c:423 msgid "Event Forwarding" msgstr "Tapahtumien edelleen välitys" #: ../bonobo/bonobo-plug.c:424 msgid "Whether X events should be forwarded" msgstr "Välittyvätkö X-tapahtumat edelleen" #: ../bonobo/bonobo-selector-widget.c:297 ../bonobo/bonobo-window.c:344 #: ../tools/browser/component-details.c:114 #: ../tools/browser/component-list.c:378 msgid "Name" msgstr "Nimi" #: ../bonobo/bonobo-selector-widget.c:319 #: ../tools/browser/component-details.c:115 msgid "Description" msgstr "Kuvaus" #: ../bonobo/bonobo-selector.c:343 msgid "Interfaces required" msgstr "Vaaditut rajapinnat" #: ../bonobo/bonobo-selector.c:344 msgid "" "A NULL-terminated array of interfaces which a server must support in order " "to be listed in the selector. Defaults to \"IDL:Bonobo/Embeddable:1.0\" if " "no interfaces are listed" msgstr "" "NULL-päätteinen taulukko rajapinnoista, joita palvelimen täytyy tukea, jotta " "se näkyisi valitsimessa. Oletus on \"IDL:Bonobo/Embeddable:1.0\" jos " "rajapintoja ei ole lueteltu" #: ../bonobo/bonobo-selector.c:346 msgid "Interface required entry" msgstr "Vaadittu rajapinta -kohta" #: ../bonobo/bonobo-selector.c:347 msgid "One of the interfaces that's required" msgstr "Yksi vaadituista rajapinnoista" #: ../bonobo/bonobo-ui-config-widget.c:265 msgid "Visible" msgstr "Näkyvä" #: ../bonobo/bonobo-ui-config-widget.c:272 msgid "_Show" msgstr "_Näytä" #: ../bonobo/bonobo-ui-config-widget.c:279 msgid "_Hide" msgstr "_Piilota" #: ../bonobo/bonobo-ui-config-widget.c:285 msgid "_View tooltips" msgstr "_Näytä vinkit" #: ../bonobo/bonobo-ui-config-widget.c:290 msgid "Toolbars" msgstr "Työkalupalkit" #: ../bonobo/bonobo-ui-config-widget.c:300 msgid "toolbars" msgstr "työkalupalkit" #: ../bonobo/bonobo-ui-config-widget.c:311 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "Look" msgstr "Katso" #: ../bonobo/bonobo-ui-config-widget.c:320 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "_Icon" msgstr "_Kuvake" #: ../bonobo/bonobo-ui-config-widget.c:326 msgid "_Text and Icon" msgstr "_Teksti ja kuvake" #: ../bonobo/bonobo-ui-config-widget.c:332 msgid "Text only" msgstr "Pelkkä teksti" #: ../bonobo/bonobo-ui-config-widget.c:338 msgid "_Priority text only" msgstr "_Vain tärkeä teksti" #: ../bonobo/bonobo-ui-engine.c:91 msgid "Debug" msgstr "Vianetsintä" #: ../bonobo/bonobo-ui-engine.c:91 msgid "_Dump XML" msgstr "_XML-vedos" #: ../bonobo/bonobo-ui-engine.c:92 msgid "Dump the entire UI's XML description to the console" msgstr "Tulosta koko käyttöliittymän XML-kuvaus päätteeseen" #: ../bonobo/bonobo-ui-engine-config.c:522 msgid "Configure UI" msgstr "Muokkaa käyttöliittymäasetuksia" #: ../bonobo/bonobo-ui-init-gtk.c:131 msgid "Gdk debugging flags to set" msgstr "Asetettavat Gdk-vianetsintäliput" #: ../bonobo/bonobo-ui-init-gtk.c:131 ../bonobo/bonobo-ui-init-gtk.c:134 #: ../bonobo/bonobo-ui-init-gtk.c:162 ../bonobo/bonobo-ui-init-gtk.c:165 msgid "FLAGS" msgstr "LIPUT" #: ../bonobo/bonobo-ui-init-gtk.c:134 msgid "Gdk debugging flags to unset" msgstr "Poistettavat Gdk-vianetsintälaput" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "X display to use" msgstr "Käytettävä X-näyttö" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "DISPLAY" msgstr "NÄYTTÖ" #: ../bonobo/bonobo-ui-init-gtk.c:142 msgid "X screen to use" msgstr "Käytettävä X-näyttö" #: ../bonobo/bonobo-ui-init-gtk.c:142 msgid "SCREEN" msgstr "RUUTU" #: ../bonobo/bonobo-ui-init-gtk.c:146 msgid "Make X calls synchronous" msgstr "Tee X-kutsut synkronisesti" #: ../bonobo/bonobo-ui-init-gtk.c:152 msgid "Don't use X shared memory extension" msgstr "Älä käytä X:n jaetun muistin laajennosta" #: ../bonobo/bonobo-ui-init-gtk.c:156 msgid "Program name as used by the window manager" msgstr "Ohjelman nimi ikkunointiohjelmaa varten" #: ../bonobo/bonobo-ui-init-gtk.c:156 msgid "NAME" msgstr "NIMI" #: ../bonobo/bonobo-ui-init-gtk.c:159 msgid "Program class as used by the window manager" msgstr "Ohjelman luokka ikkunointiohjelmaa varten" #: ../bonobo/bonobo-ui-init-gtk.c:159 msgid "CLASS" msgstr "LUOKKA" #: ../bonobo/bonobo-ui-init-gtk.c:162 msgid "Gtk+ debugging flags to set" msgstr "Asetettavat Gtk+-vianetsintäliput" #: ../bonobo/bonobo-ui-init-gtk.c:165 msgid "Gtk+ debugging flags to unset" msgstr "Poistettavat Gtk+-vianetsintäliput" #: ../bonobo/bonobo-ui-init-gtk.c:168 msgid "Make all warnings fatal" msgstr "Tee kaikista varoituksista vakavia" #: ../bonobo/bonobo-ui-init-gtk.c:171 msgid "Load an additional Gtk module" msgstr "Lataa ylimääräinen Gtk-moduuli" #: ../bonobo/bonobo-ui-init-gtk.c:171 msgid "MODULE" msgstr "MODUULI" #: ../bonobo/bonobo-ui-init-gtk.c:187 msgid "GTK+" msgstr "GTK+" #: ../bonobo/bonobo-ui-main.c:278 msgid "Bonobo GUI support" msgstr "Bonobo GUI -tuki" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "B_oth" msgstr "_Molemmat" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "T_ext" msgstr "_Teksti" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Hide t_ips" msgstr "Piilota _vinkit" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Show t_ips" msgstr "Näytä _vinkit" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "_Hide toolbar" msgstr "_Piilota työkalupalkki" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "Customi_ze" msgstr "Muka_uta" #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Customize the toolbar" msgstr "Mukauta työkalupalkki" #: ../bonobo/bonobo-ui-toolbar.c:1115 msgid "is floating" msgstr "kelluu" #: ../bonobo/bonobo-ui-toolbar.c:1116 msgid "whether the toolbar is floating" msgstr "kelluuko työkalupalkki" #: ../bonobo/bonobo-ui-toolbar.c:1162 msgid "Style of bevel around the toolbar" msgstr "Työkalupalkin reunuksen tyyli" #: ../bonobo/bonobo-ui-util.c:601 msgid "Could not display help for this application" msgstr "Tälle sovellukselle ei voitu näyttää ohjetta" #: ../bonobo/bonobo-ui-util.c:643 msgid "_Contents" msgstr "_Sisältö" #: ../bonobo/bonobo-ui-util.c:644 msgid "View help for this application" msgstr "Näytä tämän ohjelman ohje" #: ../bonobo/bonobo-window.c:345 msgid "Name of the window - used for configuration serialization." msgstr "Ikkunan nimi - käytetään asetusten serialisointiin." #: ../bonobo/bonobo-zoomable.c:326 msgid "Zoom level" msgstr "Suurennos" #: ../bonobo/bonobo-zoomable.c:327 msgid "The degree of enlargment" msgstr "Suurennoksen määrä" #: ../bonobo/bonobo-zoomable.c:335 msgid "Minimum Zoom level" msgstr "Pienin suurennos" #: ../bonobo/bonobo-zoomable.c:336 msgid "The minimum degree of enlargment" msgstr "Pienin mahdollinen suurennos" #: ../bonobo/bonobo-zoomable.c:344 msgid "Maximum Zoom level" msgstr "Suurin suurennos" #: ../bonobo/bonobo-zoomable.c:345 msgid "The maximum degree of enlargment" msgstr "Suurin mahdollinen suurennos" #: ../bonobo/bonobo-zoomable.c:353 msgid "Has a minimum Zoom level" msgstr "Pienin suurennostaso on" #: ../bonobo/bonobo-zoomable.c:354 msgid "Whether we have a valid minimum zoom level" msgstr "Onko pienin mahdollinen suurennostaso olemassa" #: ../bonobo/bonobo-zoomable.c:361 msgid "Has a maximum Zoom level" msgstr "Suurin suurennostaso on" #: ../bonobo/bonobo-zoomable.c:362 msgid "Whether we have a valid maximum zoom level" msgstr "Onko suurin mahdollinen suurennostaso olemassa" #: ../bonobo/bonobo-zoomable.c:369 msgid "Is continuous" msgstr "On jatkuva" #: ../bonobo/bonobo-zoomable.c:370 msgid "Whether we zoom continuously (as opposed to jumps)" msgstr "Onko suurennos jatkuvaa (ei asteittaista)" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:1 msgid "About this application" msgstr "Tietoja tästä ohjelmasta" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:2 msgid "Select" msgstr "Valitse" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:3 msgid "_About..." msgstr "_Tietoja..." #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:4 msgid "_Edit" msgstr "_Muokkaa" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:5 #: ../tools/browser/bonobo-browser.xml.h:4 msgid "_File" msgstr "_Tiedosto" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:6 msgid "_Select" msgstr "_Valitse" #: ../samples/bonoboui/hello.c:63 msgid "This does nothing; it is only a demonstration." msgstr "Tämä ei tee mitään, se on vain esimerkkinä." #: ../samples/bonoboui/hello.c:145 msgid "BonoboUI-Hello." msgstr "BonoboUI-tervehdys" #: ../samples/bonoboui/hello.c:217 msgid "Gnome Hello" msgstr "Gnome-tervehdys" #. Create Label and put it in the Button: #: ../samples/bonoboui/hello.c:272 msgid "Hello, World!" msgstr "Tervehdys!" #: ../samples/bonoboui/hello.c:312 msgid "Cannot init libbonoboui code" msgstr "Ei voi alustaa libbonoboui'n koodia" #: ../samples/controls/bonobo-sample-controls.c:131 msgid "Could not initialize Bonobo UI" msgstr "Ei voinut alustaa Bonobo-UI:ta" #: ../tools/browser/bonobo-browser.desktop.in.h:1 msgid "Bonobo Component Browser" msgstr "Bonobo-komponenttien selain" #: ../tools/browser/bonobo-browser.desktop.in.h:2 msgid "Shows available Bonobo components" msgstr "Näytä saatavilla olevat Bonobo-komponentit" #: ../tools/browser/bonobo-browser.xml.h:1 msgid "About this program..." msgstr "Tietoja tästä ohjelmasta..." #: ../tools/browser/bonobo-browser.xml.h:2 msgid "Close the current window" msgstr "Sulje nykyinen ikkuna" #: ../tools/browser/bonobo-browser.xml.h:3 msgid "Open a new window" msgstr "Avaa uusi ikkuna" #: ../tools/browser/bonobo-browser.xml.h:5 msgid "_Help" msgstr "O_hje" #. Build the general tab #: ../tools/browser/component-details.c:109 msgid "General" msgstr "Yleinen" #: ../tools/browser/component-details.c:116 #: ../tools/browser/component-list.c:398 msgid "IID" msgstr "IID" #: ../tools/browser/component-details.c:117 msgid "Location" msgstr "Sijainti" #. Build the details tab #: ../tools/browser/component-details.c:167 msgid "Details" msgstr "Lisätiedot" #: ../tools/browser/component-details.c:168 msgid "Detailed Information" msgstr "Lisätietoja" #: ../tools/browser/component-list.c:367 ../tools/browser/window.c:283 msgid "Active" msgstr "Aktiivinen" #: ../tools/browser/component-list.c:388 msgid "Type" msgstr "Tyyppi" #: ../tools/browser/window.c:162 msgid "Component Details" msgstr "Komponentin tiedot" #: ../tools/browser/window.c:208 msgid "Bonobo Browser" msgstr "Bonobo-selain" #: ../tools/browser/window.c:210 msgid "Copyright 2001, The GNOME Foundation" msgstr "Copyright © 2001, GNOME-säätiö" #: ../tools/browser/window.c:211 msgid "Bonobo component browser" msgstr "Bonobo-komponenttien selain" #: ../tools/browser/window.c:214 msgid "translator-credits" msgstr "" "Ilkka Tuohela 2005-2006\n" "Pauli Virtanen 2000-2005\n" "Sami Gerdt 2000\n" "\n" "http://www.gnome.fi/" #. create the window #: ../tools/browser/window.c:240 msgid "Component Browser" msgstr "Komponenttiselain" #. Fill out the tool bar #: ../tools/browser/window.c:280 msgid "All" msgstr "Kaikki" #: ../tools/browser/window.c:286 msgid "Inactive" msgstr "Ei aktiivinen" libbonoboui-2.24.5/po/en_GB.po0000644000076400007640000003143311173072741012777 00000000000000# English (British) translation. # Copyright (C) 2004 THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the LIBBONOBO package. # Abigail Brady , Bastien Nocera , # Gareth Owen 2004. # msgid "" msgstr "" "Project-Id-Version: libbonobo\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2008-02-17 09:50+0000\n" "PO-Revision-Date: 2008-02-17 09:50-0000\n" "Last-Translator: David Lodge \n" "Language-Team: \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../bonobo/bonobo-canvas-item.c:680 msgid "corba factory" msgstr "corba factory" #: ../bonobo/bonobo-canvas-item.c:681 msgid "The factory pointer" msgstr "The factory pointer" #: ../bonobo/bonobo-canvas-item.c:690 msgid "corba UI container" msgstr "corba UI container" #: ../bonobo/bonobo-canvas-item.c:691 msgid "The User interface container" msgstr "The User interface container" #: ../bonobo/bonobo-dock-item-grip.c:255 msgid "Dock the toolbar" msgstr "Dock the toolbar" #: ../bonobo/bonobo-dock-item-grip.c:256 msgid "Undock the toolbar" msgstr "Undock the toolbar" #: ../bonobo/bonobo-dock-item.c:228 #: ../bonobo/bonobo-dock-item.c:229 #: ../bonobo/bonobo-ui-toolbar.c:1161 msgid "Shadow type" msgstr "Shadow type" #: ../bonobo/bonobo-dock-item.c:239 #: ../bonobo/bonobo-dock-item.c:240 #: ../bonobo/bonobo-ui-toolbar.c:1105 #: ../bonobo/bonobo-ui-toolbar.c:1106 msgid "Orientation" msgstr "Orientation" #: ../bonobo/bonobo-dock-item.c:250 #: ../bonobo/bonobo-dock-item.c:251 #: ../bonobo/bonobo-ui-toolbar.c:1124 #: ../bonobo/bonobo-ui-toolbar.c:1125 msgid "Preferred width" msgstr "Preferred width" #: ../bonobo/bonobo-dock-item.c:259 #: ../bonobo/bonobo-dock-item.c:260 #: ../bonobo/bonobo-ui-toolbar.c:1133 #: ../bonobo/bonobo-ui-toolbar.c:1134 msgid "Preferred height" msgstr "Preferred height" #: ../bonobo/bonobo-file-selector-util.c:357 msgid "Select a file to open" msgstr "Select a file to open" #: ../bonobo/bonobo-file-selector-util.c:385 msgid "Select files to open" msgstr "Select files to open" #: ../bonobo/bonobo-file-selector-util.c:414 msgid "Select a filename to save" msgstr "Select a filename to save" #: ../bonobo/bonobo-plug.c:423 msgid "Event Forwarding" msgstr "Event Forwarding" #: ../bonobo/bonobo-plug.c:424 msgid "Whether X events should be forwarded" msgstr "Whether X events should be forwarded" #: ../bonobo/bonobo-selector-widget.c:297 #: ../bonobo/bonobo-window.c:344 #: ../tools/browser/component-details.c:114 #: ../tools/browser/component-list.c:378 msgid "Name" msgstr "Name" #: ../bonobo/bonobo-selector-widget.c:319 #: ../tools/browser/component-details.c:115 msgid "Description" msgstr "Description" #: ../bonobo/bonobo-selector.c:343 msgid "Interfaces required" msgstr "Interfaces required" #: ../bonobo/bonobo-selector.c:344 msgid "A NULL-terminated array of interfaces which a server must support in order to be listed in the selector. Defaults to \"IDL:Bonobo/Embeddable:1.0\" if no interfaces are listed" msgstr "A NULL-terminated array of interfaces which a server must support in order to be listed in the selector. Defaults to \"IDL:Bonobo/Embeddable:1.0\" if no interfaces are listed" #: ../bonobo/bonobo-selector.c:346 msgid "Interface required entry" msgstr "Interface required entry" #: ../bonobo/bonobo-selector.c:347 msgid "One of the interfaces that's required" msgstr "One of the interfaces that's required" #: ../bonobo/bonobo-ui-config-widget.c:265 msgid "Visible" msgstr "Visible" #: ../bonobo/bonobo-ui-config-widget.c:272 msgid "_Show" msgstr "_Show" #: ../bonobo/bonobo-ui-config-widget.c:279 msgid "_Hide" msgstr "_Hide" #: ../bonobo/bonobo-ui-config-widget.c:285 msgid "_View tooltips" msgstr "_View tooltips" #: ../bonobo/bonobo-ui-config-widget.c:290 msgid "Toolbars" msgstr "Toolbars" #: ../bonobo/bonobo-ui-config-widget.c:300 msgid "toolbars" msgstr "toolbars" #: ../bonobo/bonobo-ui-config-widget.c:311 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "Look" msgstr "Look" #: ../bonobo/bonobo-ui-config-widget.c:320 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "_Icon" msgstr "_Icon" #: ../bonobo/bonobo-ui-config-widget.c:326 msgid "_Text and Icon" msgstr "_Text and Icon" #: ../bonobo/bonobo-ui-config-widget.c:332 msgid "Text only" msgstr "Text only" #: ../bonobo/bonobo-ui-config-widget.c:338 msgid "_Priority text only" msgstr "_Priority text only" #: ../bonobo/bonobo-ui-engine.c:91 msgid "Debug" msgstr "Debug" #: ../bonobo/bonobo-ui-engine.c:91 msgid "_Dump XML" msgstr "_Dump XML" #: ../bonobo/bonobo-ui-engine.c:92 msgid "Dump the entire UI's XML description to the console" msgstr "Dump the entire UI's XML description to the console" #: ../bonobo/bonobo-ui-engine-config.c:522 msgid "Configure UI" msgstr "Configure UI" #: ../bonobo/bonobo-ui-init-gtk.c:131 msgid "Gdk debugging flags to set" msgstr "Gdk debugging flags to set" #: ../bonobo/bonobo-ui-init-gtk.c:131 #: ../bonobo/bonobo-ui-init-gtk.c:134 #: ../bonobo/bonobo-ui-init-gtk.c:162 #: ../bonobo/bonobo-ui-init-gtk.c:165 msgid "FLAGS" msgstr "FLAGS" #: ../bonobo/bonobo-ui-init-gtk.c:134 msgid "Gdk debugging flags to unset" msgstr "Gdk debugging flags to unset" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "X display to use" msgstr "X display to use" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "DISPLAY" msgstr "DISPLAY" #: ../bonobo/bonobo-ui-init-gtk.c:142 msgid "X screen to use" msgstr "X screen to use" #: ../bonobo/bonobo-ui-init-gtk.c:142 msgid "SCREEN" msgstr "SCREEN" #: ../bonobo/bonobo-ui-init-gtk.c:146 msgid "Make X calls synchronous" msgstr "Make X calls synchronous" #: ../bonobo/bonobo-ui-init-gtk.c:152 msgid "Don't use X shared memory extension" msgstr "Don't use X shared memory extension" #: ../bonobo/bonobo-ui-init-gtk.c:156 msgid "Program name as used by the window manager" msgstr "Program name as used by the window manager" #: ../bonobo/bonobo-ui-init-gtk.c:156 msgid "NAME" msgstr "NAME" #: ../bonobo/bonobo-ui-init-gtk.c:159 msgid "Program class as used by the window manager" msgstr "Program class as used by the window manager" #: ../bonobo/bonobo-ui-init-gtk.c:159 msgid "CLASS" msgstr "CLASS" #: ../bonobo/bonobo-ui-init-gtk.c:162 msgid "Gtk+ debugging flags to set" msgstr "Gtk+ debugging flags to set" #: ../bonobo/bonobo-ui-init-gtk.c:165 msgid "Gtk+ debugging flags to unset" msgstr "Gtk+ debugging flags to unset" #: ../bonobo/bonobo-ui-init-gtk.c:168 msgid "Make all warnings fatal" msgstr "Make all warnings fatal" #: ../bonobo/bonobo-ui-init-gtk.c:171 msgid "Load an additional Gtk module" msgstr "Load an additional Gtk module" #: ../bonobo/bonobo-ui-init-gtk.c:171 msgid "MODULE" msgstr "MODULE" #: ../bonobo/bonobo-ui-init-gtk.c:187 msgid "GTK+" msgstr "GTK+" #: ../bonobo/bonobo-ui-main.c:278 msgid "Bonobo GUI support" msgstr "Bonobo GUI support" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "B_oth" msgstr "B_oth" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "T_ext" msgstr "T_ext" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Hide t_ips" msgstr "Hide t_ips" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Show t_ips" msgstr "Show t_ips" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "_Hide toolbar" msgstr "_Hide toolbar" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "Customi_ze" msgstr "Customi_se" #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Customize the toolbar" msgstr "Customise the toolbar" #: ../bonobo/bonobo-ui-toolbar.c:1115 msgid "is floating" msgstr "is floating" #: ../bonobo/bonobo-ui-toolbar.c:1116 msgid "whether the toolbar is floating" msgstr "whether the toolbar is floating" #: ../bonobo/bonobo-ui-toolbar.c:1162 msgid "Style of bevel around the toolbar" msgstr "Style of bevel around the toolbar" #: ../bonobo/bonobo-ui-util.c:601 msgid "Could not display help for this application" msgstr "Could not display help for this application" #: ../bonobo/bonobo-ui-util.c:643 msgid "_Contents" msgstr "_Contents" #: ../bonobo/bonobo-ui-util.c:644 msgid "View help for this application" msgstr "View help for this application" #: ../bonobo/bonobo-window.c:345 msgid "Name of the window - used for configuration serialization." msgstr "Name of the window - used for configuration serialization." #: ../bonobo/bonobo-zoomable.c:326 msgid "Zoom level" msgstr "Zoom level" #: ../bonobo/bonobo-zoomable.c:327 msgid "The degree of enlargment" msgstr "The degree of enlargment" #: ../bonobo/bonobo-zoomable.c:335 msgid "Minimum Zoom level" msgstr "Minimum Zoom level" #: ../bonobo/bonobo-zoomable.c:336 msgid "The minimum degree of enlargment" msgstr "The minimum degree of enlargment" #: ../bonobo/bonobo-zoomable.c:344 msgid "Maximum Zoom level" msgstr "Maximum Zoom level" #: ../bonobo/bonobo-zoomable.c:345 msgid "The maximum degree of enlargment" msgstr "The maximum degree of enlargment" #: ../bonobo/bonobo-zoomable.c:353 msgid "Has a minimum Zoom level" msgstr "Has a minimum Zoom level" #: ../bonobo/bonobo-zoomable.c:354 msgid "Whether we have a valid minimum zoom level" msgstr "Whether we have a valid minimum zoom level" #: ../bonobo/bonobo-zoomable.c:361 msgid "Has a maximum Zoom level" msgstr "Has a maximum Zoom level" #: ../bonobo/bonobo-zoomable.c:362 msgid "Whether we have a valid maximum zoom level" msgstr "Whether we have a valid maximum zoom level" #: ../bonobo/bonobo-zoomable.c:369 msgid "Is continuous" msgstr "Is continuous" #: ../bonobo/bonobo-zoomable.c:370 msgid "Whether we zoom continuously (as opposed to jumps)" msgstr "Whether we zoom continuously (as opposed to jumps)" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:1 msgid "About this application" msgstr "About this application" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:2 msgid "Select" msgstr "Select" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:3 msgid "_About..." msgstr "_About..." #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:4 msgid "_Edit" msgstr "_Edit" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:5 #: ../tools/browser/bonobo-browser.xml.h:4 msgid "_File" msgstr "_File" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:6 msgid "_Select" msgstr "_Select" #: ../samples/bonoboui/hello.c:63 msgid "This does nothing; it is only a demonstration." msgstr "This does nothing; it is only a demonstration." #: ../samples/bonoboui/hello.c:145 msgid "BonoboUI-Hello." msgstr "BonoboUI-Hello." #: ../samples/bonoboui/hello.c:217 msgid "Gnome Hello" msgstr "Gnome Hello" #. Create Label and put it in the Button: #: ../samples/bonoboui/hello.c:272 msgid "Hello, World!" msgstr "Hello, World!" #: ../samples/bonoboui/hello.c:312 msgid "Cannot init libbonoboui code" msgstr "Cannot init libbonoboui code" #: ../samples/controls/bonobo-sample-controls.c:131 msgid "Could not initialize Bonobo UI" msgstr "Could not initialise Bonobo UI" #: ../tools/browser/bonobo-browser.desktop.in.h:1 msgid "Bonobo Component Browser" msgstr "Bonobo Component Browser" #: ../tools/browser/bonobo-browser.desktop.in.h:2 msgid "Shows available Bonobo components" msgstr "Shows available Bonobo components" #: ../tools/browser/bonobo-browser.xml.h:1 msgid "About this program..." msgstr "About this program..." #: ../tools/browser/bonobo-browser.xml.h:2 msgid "Close the current window" msgstr "Close the current window" #: ../tools/browser/bonobo-browser.xml.h:3 msgid "Open a new window" msgstr "Open a new window" #: ../tools/browser/bonobo-browser.xml.h:5 msgid "_Help" msgstr "_Help" #. Build the general tab #: ../tools/browser/component-details.c:109 msgid "General" msgstr "General" #: ../tools/browser/component-details.c:116 #: ../tools/browser/component-list.c:398 msgid "IID" msgstr "IID" #: ../tools/browser/component-details.c:117 msgid "Location" msgstr "Location" #. Build the details tab #: ../tools/browser/component-details.c:167 msgid "Details" msgstr "Details" #: ../tools/browser/component-details.c:168 msgid "Detailed Information" msgstr "Detailed Information" #: ../tools/browser/component-list.c:367 #: ../tools/browser/window.c:283 msgid "Active" msgstr "Active" #: ../tools/browser/component-list.c:388 msgid "Type" msgstr "Type" #: ../tools/browser/window.c:162 msgid "Component Details" msgstr "Component Details" #: ../tools/browser/window.c:208 msgid "Bonobo Browser" msgstr "Bonobo Browser" #: ../tools/browser/window.c:210 msgid "Copyright 2001, The GNOME Foundation" msgstr "Copyright 2001, The GNOME Foundation" #: ../tools/browser/window.c:211 msgid "Bonobo component browser" msgstr "Bonobo component browser" #: ../tools/browser/window.c:214 msgid "translator-credits" msgstr "" "Abigail Brady \n" " Bastien Nocera \n" "Gareth Owen \n" "David Lodge " #. create the window #: ../tools/browser/window.c:240 msgid "Component Browser" msgstr "Component Browser" #. Fill out the tool bar #: ../tools/browser/window.c:280 msgid "All" msgstr "All" #: ../tools/browser/window.c:286 msgid "Inactive" msgstr "Inactive" libbonoboui-2.24.5/po/it.po0000644000076400007640000003260111173072741012437 00000000000000# Italian localization for libbonoboui # Copyright (C) 2001 Free Software Foundation, Inc. # Christopher R. Gabriel , 2001. # Alessio Frusciante , 2003-2005. # Luca Ferretti , 2003-2008. # msgid "" msgstr "" "Project-Id-Version: libbonoboui 2.21.x\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2008-02-25 13:44+0100\n" "PO-Revision-Date: 2008-02-25 13:45+0100\n" "Last-Translator: Luca Ferretti \n" "Language-Team: Italian \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../bonobo/bonobo-canvas-item.c:680 msgid "corba factory" msgstr "fabbrica corba" #: ../bonobo/bonobo-canvas-item.c:681 msgid "The factory pointer" msgstr "Il puntatore alla fabbrica" #: ../bonobo/bonobo-canvas-item.c:690 msgid "corba UI container" msgstr "contenitore UI corba" #: ../bonobo/bonobo-canvas-item.c:691 msgid "The User interface container" msgstr "Il contenitore dell'interfaccia utente" #: ../bonobo/bonobo-dock-item-grip.c:255 msgid "Dock the toolbar" msgstr "Ancora la barra degli strumenti" #: ../bonobo/bonobo-dock-item-grip.c:256 msgid "Undock the toolbar" msgstr "Rimuovi ancoraggio della barra degli strumenti" #: ../bonobo/bonobo-dock-item.c:228 ../bonobo/bonobo-dock-item.c:229 #: ../bonobo/bonobo-ui-toolbar.c:1161 msgid "Shadow type" msgstr "Tipo di ombra" #: ../bonobo/bonobo-dock-item.c:239 ../bonobo/bonobo-dock-item.c:240 #: ../bonobo/bonobo-ui-toolbar.c:1105 ../bonobo/bonobo-ui-toolbar.c:1106 msgid "Orientation" msgstr "Orientamento" #: ../bonobo/bonobo-dock-item.c:250 ../bonobo/bonobo-dock-item.c:251 #: ../bonobo/bonobo-ui-toolbar.c:1124 ../bonobo/bonobo-ui-toolbar.c:1125 msgid "Preferred width" msgstr "Larghezza preferita" #: ../bonobo/bonobo-dock-item.c:259 ../bonobo/bonobo-dock-item.c:260 #: ../bonobo/bonobo-ui-toolbar.c:1133 ../bonobo/bonobo-ui-toolbar.c:1134 msgid "Preferred height" msgstr "Altezza preferita" #: ../bonobo/bonobo-file-selector-util.c:357 msgid "Select a file to open" msgstr "Selezionare un file da aprire" #: ../bonobo/bonobo-file-selector-util.c:385 msgid "Select files to open" msgstr "Selezionare i file da aprire" #: ../bonobo/bonobo-file-selector-util.c:414 msgid "Select a filename to save" msgstr "Selezionare un nome di file da salvare" #: ../bonobo/bonobo-plug.c:423 msgid "Event Forwarding" msgstr "Inoltro degli eventi" #: ../bonobo/bonobo-plug.c:424 msgid "Whether X events should be forwarded" msgstr "Indica se gli eventi X devono essere inoltrati" #: ../bonobo/bonobo-selector-widget.c:297 ../bonobo/bonobo-window.c:344 #: ../tools/browser/component-details.c:114 #: ../tools/browser/component-list.c:378 msgid "Name" msgstr "Nome" #: ../bonobo/bonobo-selector-widget.c:319 #: ../tools/browser/component-details.c:115 msgid "Description" msgstr "Descrizione" #: ../bonobo/bonobo-selector.c:343 msgid "Interfaces required" msgstr "Interfacce richieste" #: ../bonobo/bonobo-selector.c:344 msgid "" "A NULL-terminated array of interfaces which a server must support in order " "to be listed in the selector. Defaults to \"IDL:Bonobo/Embeddable:1.0\" if " "no interfaces are listed" msgstr "" "Un array di interfacce terminato da NULL che un server deve supportare per " "essere elencato nel selettore. Il valore predefinito è \"IDL:Bonobo/" "Embeddable:1.0\" se non è elencata nessuna interfaccia." #: ../bonobo/bonobo-selector.c:346 msgid "Interface required entry" msgstr "Voce interfacce richieste" #: ../bonobo/bonobo-selector.c:347 msgid "One of the interfaces that's required" msgstr "Una delle interfacce richieste" #: ../bonobo/bonobo-ui-config-widget.c:265 msgid "Visible" msgstr "Visibile" #: ../bonobo/bonobo-ui-config-widget.c:272 msgid "_Show" msgstr "_Mostra" #: ../bonobo/bonobo-ui-config-widget.c:279 msgid "_Hide" msgstr "_Nascondi" #: ../bonobo/bonobo-ui-config-widget.c:285 msgid "_View tooltips" msgstr "_Suggerimenti" #: ../bonobo/bonobo-ui-config-widget.c:290 msgid "Toolbars" msgstr "Barre strumenti" #: ../bonobo/bonobo-ui-config-widget.c:300 msgid "toolbars" msgstr "barre strumenti" #: ../bonobo/bonobo-ui-config-widget.c:311 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "Look" msgstr "Aspetto" #: ../bonobo/bonobo-ui-config-widget.c:320 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "_Icon" msgstr "_Icona" #: ../bonobo/bonobo-ui-config-widget.c:326 msgid "_Text and Icon" msgstr "_Testo e icona" #: ../bonobo/bonobo-ui-config-widget.c:332 msgid "Text only" msgstr "Solo testo" #: ../bonobo/bonobo-ui-config-widget.c:338 msgid "_Priority text only" msgstr "Solo testo _prioritario" #: ../bonobo/bonobo-ui-engine.c:91 msgid "Debug" msgstr "Debug" #: ../bonobo/bonobo-ui-engine.c:91 msgid "_Dump XML" msgstr "_Riversa XML" #: ../bonobo/bonobo-ui-engine.c:92 msgid "Dump the entire UI's XML description to the console" msgstr "Riversa sulla console l'intera descrizione XML dell'interfaccia utente" #: ../bonobo/bonobo-ui-engine-config.c:522 msgid "Configure UI" msgstr "Configurazione UI" # Dovrei controllare la traduzione di GTK+ e rendere questo e i seguenti # uguali agli analogi messaggi in GTK+ -Luca # #: ../bonobo/bonobo-ui-init-gtk.c:131 msgid "Gdk debugging flags to set" msgstr "Flag di debug di Gdk da impostare" #: ../bonobo/bonobo-ui-init-gtk.c:131 ../bonobo/bonobo-ui-init-gtk.c:134 #: ../bonobo/bonobo-ui-init-gtk.c:162 ../bonobo/bonobo-ui-init-gtk.c:165 msgid "FLAGS" msgstr "FLAG" #: ../bonobo/bonobo-ui-init-gtk.c:134 msgid "Gdk debugging flags to unset" msgstr "Flag di debug di Gdk da azzerare" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "X display to use" msgstr "Display X da usare" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "DISPLAY" msgstr "DISPLAY" #: ../bonobo/bonobo-ui-init-gtk.c:142 msgid "X screen to use" msgstr "Schermo X da usare" #: ../bonobo/bonobo-ui-init-gtk.c:142 msgid "SCREEN" msgstr "SCHERMO" #: ../bonobo/bonobo-ui-init-gtk.c:146 msgid "Make X calls synchronous" msgstr "Rendere le chiamate di X sincrone" #: ../bonobo/bonobo-ui-init-gtk.c:152 msgid "Don't use X shared memory extension" msgstr "Non usare le estensioni di X per la memoria condivisa" #: ../bonobo/bonobo-ui-init-gtk.c:156 msgid "Program name as used by the window manager" msgstr "Nome del programma da usare nel window manager" #: ../bonobo/bonobo-ui-init-gtk.c:156 msgid "NAME" msgstr "NOME" #: ../bonobo/bonobo-ui-init-gtk.c:159 msgid "Program class as used by the window manager" msgstr "Classe del programma da usare nel window manager" #: ../bonobo/bonobo-ui-init-gtk.c:159 msgid "CLASS" msgstr "CLASSE" #: ../bonobo/bonobo-ui-init-gtk.c:162 msgid "Gtk+ debugging flags to set" msgstr "Flag di debug di Gtk+ da impostare" #: ../bonobo/bonobo-ui-init-gtk.c:165 msgid "Gtk+ debugging flags to unset" msgstr "Flag di debug di Gtk+ da azzerare" #: ../bonobo/bonobo-ui-init-gtk.c:168 msgid "Make all warnings fatal" msgstr "Rendere tutti gli warning fatali" #: ../bonobo/bonobo-ui-init-gtk.c:171 msgid "Load an additional Gtk module" msgstr "Carica un modulo Gtk aggiuntivo" #: ../bonobo/bonobo-ui-init-gtk.c:171 msgid "MODULE" msgstr "MODULO" #: ../bonobo/bonobo-ui-init-gtk.c:187 msgid "GTK+" msgstr "GTK+" #: ../bonobo/bonobo-ui-main.c:278 msgid "Bonobo GUI support" msgstr "Supporto Bonobo GUI" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "B_oth" msgstr "_Entrambi" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "T_ext" msgstr "_Testo" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Hide t_ips" msgstr "N_ascondi suggerimenti" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Show t_ips" msgstr "_Mostra suggerimenti" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "_Hide toolbar" msgstr "_Nascondi barra strumenti" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "Customi_ze" msgstr "_Personalizza" #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Customize the toolbar" msgstr "Personalizza la barra degli strumenti" #: ../bonobo/bonobo-ui-toolbar.c:1115 msgid "is floating" msgstr "è fluttuante" #: ../bonobo/bonobo-ui-toolbar.c:1116 msgid "whether the toolbar is floating" msgstr "indica se la barra degli strumenti è fluttuante" #: ../bonobo/bonobo-ui-toolbar.c:1162 msgid "Style of bevel around the toolbar" msgstr "Stile del bordo attorno alla barra degli strumenti" # GNOME-2-22 #: ../bonobo/bonobo-ui-util.c:601 msgid "Could not display help for this application" msgstr "Impossibile mostrare la documentazione di questa applicazione" #: ../bonobo/bonobo-ui-util.c:643 msgid "_Contents" msgstr "_Sommario" #: ../bonobo/bonobo-ui-util.c:644 msgid "View help for this application" msgstr "Mosta la documentazione su questa applicazione" #: ../bonobo/bonobo-window.c:345 msgid "Name of the window - used for configuration serialization." msgstr "Numero della finestra - usato per serializzare la configurazione." #: ../bonobo/bonobo-zoomable.c:326 msgid "Zoom level" msgstr "Livello di ingrandimento" #: ../bonobo/bonobo-zoomable.c:327 msgid "The degree of enlargment" msgstr "Il grado di ingrandimento" #: ../bonobo/bonobo-zoomable.c:335 msgid "Minimum Zoom level" msgstr "Livello di ingrandimento minimo" #: ../bonobo/bonobo-zoomable.c:336 msgid "The minimum degree of enlargment" msgstr "Il grado minimo di ingrandimento" #: ../bonobo/bonobo-zoomable.c:344 msgid "Maximum Zoom level" msgstr "Livello di ingrandimento massimo" #: ../bonobo/bonobo-zoomable.c:345 msgid "The maximum degree of enlargment" msgstr "Il grado massimo di ingrandimento" #: ../bonobo/bonobo-zoomable.c:353 msgid "Has a minimum Zoom level" msgstr "Ha il livello di zoom minimo" #: ../bonobo/bonobo-zoomable.c:354 msgid "Whether we have a valid minimum zoom level" msgstr "Indica se ha o no un livello di zoom minimo valido" #: ../bonobo/bonobo-zoomable.c:361 msgid "Has a maximum Zoom level" msgstr "Ha il livello di zoom massimo" #: ../bonobo/bonobo-zoomable.c:362 msgid "Whether we have a valid maximum zoom level" msgstr "Indica se ha o no un livello di zoom massimo valido" #: ../bonobo/bonobo-zoomable.c:369 msgid "Is continuous" msgstr "È continuo" #: ../bonobo/bonobo-zoomable.c:370 msgid "Whether we zoom continuously (as opposed to jumps)" msgstr "Indica se lo zoom è continuo invece che a scatti" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:1 msgid "About this application" msgstr "Informazioni su questa applicazione" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:2 msgid "Select" msgstr "Selezione" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:3 msgid "_About..." msgstr "I_nformazioni..." #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:4 msgid "_Edit" msgstr "_Modifica" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:5 #: ../tools/browser/bonobo-browser.xml.h:4 msgid "_File" msgstr "_File" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:6 msgid "_Select" msgstr "_Seleziona" #: ../samples/bonoboui/hello.c:63 msgid "This does nothing; it is only a demonstration." msgstr "Questo non fa niente: è solo una dimostrazione." #: ../samples/bonoboui/hello.c:145 msgid "BonoboUI-Hello." msgstr "BonoboUI-Hello." #: ../samples/bonoboui/hello.c:217 msgid "Gnome Hello" msgstr "Gnome Hello" #. Create Label and put it in the Button: #: ../samples/bonoboui/hello.c:272 msgid "Hello, World!" msgstr "Salve, Mondo!" #: ../samples/bonoboui/hello.c:312 msgid "Cannot init libbonoboui code" msgstr "Impossibile inizializzare il codice di libbonoboui" #: ../samples/controls/bonobo-sample-controls.c:131 msgid "Could not initialize Bonobo UI" msgstr "Impossibile inizializzare Bonobo UI" #: ../tools/browser/bonobo-browser.desktop.in.h:1 msgid "Bonobo Component Browser" msgstr "Browser dei componenti Bonobo" #: ../tools/browser/bonobo-browser.desktop.in.h:2 msgid "Shows available Bonobo components" msgstr "Mostra i componenti Bonobo disponibili" #: ../tools/browser/bonobo-browser.xml.h:1 msgid "About this program..." msgstr "Informazioni su questa applicazione..." #: ../tools/browser/bonobo-browser.xml.h:2 msgid "Close the current window" msgstr "Chiudi la finestra attuale" #: ../tools/browser/bonobo-browser.xml.h:3 msgid "Open a new window" msgstr "Apri una nuova finestra" #: ../tools/browser/bonobo-browser.xml.h:5 msgid "_Help" msgstr "A_iuto" #. Build the general tab #: ../tools/browser/component-details.c:109 msgid "General" msgstr "Generale" #: ../tools/browser/component-details.c:116 #: ../tools/browser/component-list.c:398 msgid "IID" msgstr "IID" #: ../tools/browser/component-details.c:117 msgid "Location" msgstr "Posizione" #. Build the details tab #: ../tools/browser/component-details.c:167 msgid "Details" msgstr "Dettagli" #: ../tools/browser/component-details.c:168 msgid "Detailed Information" msgstr "Informazioni dettagliate" #: ../tools/browser/component-list.c:367 ../tools/browser/window.c:283 msgid "Active" msgstr "Attiva" #: ../tools/browser/component-list.c:388 msgid "Type" msgstr "Tipo" #: ../tools/browser/window.c:162 msgid "Component Details" msgstr "Dettagli del componente" #: ../tools/browser/window.c:208 msgid "Bonobo Browser" msgstr "Browser Bonobo" #: ../tools/browser/window.c:210 msgid "Copyright 2001, The GNOME Foundation" msgstr "Copyright 2001, la GNOME Foundation" #: ../tools/browser/window.c:211 msgid "Bonobo component browser" msgstr "Browser dei componenti Bonobo" #: ../tools/browser/window.c:214 msgid "translator-credits" msgstr "Luca Ferretti " #. create the window #: ../tools/browser/window.c:240 msgid "Component Browser" msgstr "Browser dei componenti" #. Fill out the tool bar #: ../tools/browser/window.c:280 msgid "All" msgstr "Tutti" #: ../tools/browser/window.c:286 msgid "Inactive" msgstr "Inattivo" libbonoboui-2.24.5/po/de.po0000644000076400007640000003305211173072741012414 00000000000000# German libbonoboui translation. # Copyright (C) 2002-2003 Free Software Foundation, Inc. # Jörgen Scheibengruber , 2002. # Christian Neumair , 2002, 2003. # Hendrik Richter , 2004, 2005, 2006. # Andre Klapper , 2008. # msgid "" msgstr "" "Project-Id-Version: libbonoboui\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2008-01-13 02:59+0100\n" "PO-Revision-Date: 2008-01-13 03:00+0100\n" "Last-Translator: Andre Klapper \n" "Language-Team: German \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../bonobo/bonobo-canvas-item.c:680 msgid "corba factory" msgstr "CORBA-Fabrik" #: ../bonobo/bonobo-canvas-item.c:681 msgid "The factory pointer" msgstr "Der Fabrik-Zeiger" #: ../bonobo/bonobo-canvas-item.c:690 msgid "corba UI container" msgstr "CORBA-UI-Container" #: ../bonobo/bonobo-canvas-item.c:691 msgid "The User interface container" msgstr "Der Benutzeroberflächen-Container" #: ../bonobo/bonobo-dock-item-grip.c:255 msgid "Dock the toolbar" msgstr "Die Werkzeugleiste andocken" #: ../bonobo/bonobo-dock-item-grip.c:256 msgid "Undock the toolbar" msgstr "Die Werkzeugleiste abdocken" #: ../bonobo/bonobo-dock-item.c:228 ../bonobo/bonobo-dock-item.c:229 #: ../bonobo/bonobo-ui-toolbar.c:1161 msgid "Shadow type" msgstr "Schattentyp" #: ../bonobo/bonobo-dock-item.c:239 ../bonobo/bonobo-dock-item.c:240 #: ../bonobo/bonobo-ui-toolbar.c:1105 ../bonobo/bonobo-ui-toolbar.c:1106 msgid "Orientation" msgstr "Ausrichtung" #: ../bonobo/bonobo-dock-item.c:250 ../bonobo/bonobo-dock-item.c:251 #: ../bonobo/bonobo-ui-toolbar.c:1124 ../bonobo/bonobo-ui-toolbar.c:1125 msgid "Preferred width" msgstr "Bevorzugte Breite" #: ../bonobo/bonobo-dock-item.c:259 ../bonobo/bonobo-dock-item.c:260 #: ../bonobo/bonobo-ui-toolbar.c:1133 ../bonobo/bonobo-ui-toolbar.c:1134 msgid "Preferred height" msgstr "Bevorzugte Höhe" #: ../bonobo/bonobo-file-selector-util.c:357 msgid "Select a file to open" msgstr "Wählen Sie die zu öffnende Datei" #: ../bonobo/bonobo-file-selector-util.c:385 msgid "Select files to open" msgstr "Wählen Sie die zu öffnenden Dateien" #: ../bonobo/bonobo-file-selector-util.c:414 msgid "Select a filename to save" msgstr "Wählen Sie einen Namen für die zu speichernde Datei" #: ../bonobo/bonobo-plug.c:423 msgid "Event Forwarding" msgstr "Ereignis-Weiterleitung" #: ../bonobo/bonobo-plug.c:424 msgid "Whether X events should be forwarded" msgstr "Sollen X-Ereignisse weitergeleitet werden?" #: ../bonobo/bonobo-selector-widget.c:297 ../bonobo/bonobo-window.c:344 #: ../tools/browser/component-details.c:114 #: ../tools/browser/component-list.c:378 msgid "Name" msgstr "Name" #: ../bonobo/bonobo-selector-widget.c:319 #: ../tools/browser/component-details.c:115 msgid "Description" msgstr "Beschreibung" #: ../bonobo/bonobo-selector.c:343 msgid "Interfaces required" msgstr "Schnittstellen erforderlich" #: ../bonobo/bonobo-selector.c:344 msgid "" "A NULL-terminated array of interfaces which a server must support in order " "to be listed in the selector. Defaults to \"IDL:Bonobo/Embeddable:1.0\" if " "no interfaces are listed" msgstr "" "Ein NULL-terminiertes Datenfeld von Schnittstellen, die ein Server " "unterstützen muss, um in der Auswahlliste zu erscheinen. Falls es keine " "Schnittstellen enthält, wird die Vorgabe »IDL:Bonobo/Embeddable:1.0« " "verwendet." #: ../bonobo/bonobo-selector.c:346 msgid "Interface required entry" msgstr "Von der Schnittstelle benötigter Eintrag" #: ../bonobo/bonobo-selector.c:347 msgid "One of the interfaces that's required" msgstr "Eine der benötigten Schnittstellen" #: ../bonobo/bonobo-ui-config-widget.c:265 msgid "Visible" msgstr "Sichtbar" #: ../bonobo/bonobo-ui-config-widget.c:272 msgid "_Show" msgstr "An_zeigen" #: ../bonobo/bonobo-ui-config-widget.c:279 msgid "_Hide" msgstr "_Verbergen" #: ../bonobo/bonobo-ui-config-widget.c:285 msgid "_View tooltips" msgstr "_Minihilfen anzeigen" #: ../bonobo/bonobo-ui-config-widget.c:290 msgid "Toolbars" msgstr "Werkzeugleisten" #: ../bonobo/bonobo-ui-config-widget.c:300 msgid "toolbars" msgstr "Werkzeugleisten" #: ../bonobo/bonobo-ui-config-widget.c:311 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "Look" msgstr "Aussehen" #: ../bonobo/bonobo-ui-config-widget.c:320 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "_Icon" msgstr "_Symbol" #: ../bonobo/bonobo-ui-config-widget.c:326 msgid "_Text and Icon" msgstr "_Text und Symbol" #: ../bonobo/bonobo-ui-config-widget.c:332 msgid "Text only" msgstr "Nur Text" #: ../bonobo/bonobo-ui-config-widget.c:338 msgid "_Priority text only" msgstr "Nur _vorrangiger Text" #: ../bonobo/bonobo-ui-engine.c:91 msgid "Debug" msgstr "Fehlerdiagnose" #: ../bonobo/bonobo-ui-engine.c:91 msgid "_Dump XML" msgstr "XML _ausgeben" #: ../bonobo/bonobo-ui-engine.c:92 msgid "Dump the entire UI's XML description to the console" msgstr "" "Die XML-Beschreibung der gesamten Benutzeroberfläche im Terminal ausgeben" #: ../bonobo/bonobo-ui-engine-config.c:522 msgid "Configure UI" msgstr "Benutzeroberfläche konfigurieren" #: ../bonobo/bonobo-ui-init-gtk.c:130 msgid "Gdk debugging flags to set" msgstr "Zu setzende GDK-Fehlerdiagnoseoptionen" #: ../bonobo/bonobo-ui-init-gtk.c:130 ../bonobo/bonobo-ui-init-gtk.c:133 #: ../bonobo/bonobo-ui-init-gtk.c:161 ../bonobo/bonobo-ui-init-gtk.c:164 msgid "FLAGS" msgstr "OPTIONEN" #: ../bonobo/bonobo-ui-init-gtk.c:133 msgid "Gdk debugging flags to unset" msgstr "Zu deaktivierende GDK-Fehlerdiagnoseoptionen" #: ../bonobo/bonobo-ui-init-gtk.c:137 msgid "X display to use" msgstr "Zu verwendende X-Anzeige" #: ../bonobo/bonobo-ui-init-gtk.c:137 msgid "DISPLAY" msgstr "ANZEIGE" #: ../bonobo/bonobo-ui-init-gtk.c:141 msgid "X screen to use" msgstr "Zu verwendender X-Bildschirm" #: ../bonobo/bonobo-ui-init-gtk.c:141 msgid "SCREEN" msgstr "BILDSCHIRM" #: ../bonobo/bonobo-ui-init-gtk.c:145 msgid "Make X calls synchronous" msgstr "X-Aufrufe synchron durchführen" #: ../bonobo/bonobo-ui-init-gtk.c:151 msgid "Don't use X shared memory extension" msgstr "Die X-Erweiterung für gemeinsamen Speicher nicht nutzen" #: ../bonobo/bonobo-ui-init-gtk.c:155 msgid "Program name as used by the window manager" msgstr "Anwendungsname wie vom Fenstermanager verwendet" #: ../bonobo/bonobo-ui-init-gtk.c:155 msgid "NAME" msgstr "NAME" #: ../bonobo/bonobo-ui-init-gtk.c:158 msgid "Program class as used by the window manager" msgstr "Anwendungsklasse wie vom Fenstermanager verwendet" #: ../bonobo/bonobo-ui-init-gtk.c:158 msgid "CLASS" msgstr "KLASSE" #: ../bonobo/bonobo-ui-init-gtk.c:161 msgid "Gtk+ debugging flags to set" msgstr "Zu setzende GTK+-Fehlerdiagnoseoptionen" #: ../bonobo/bonobo-ui-init-gtk.c:164 msgid "Gtk+ debugging flags to unset" msgstr "Zu deaktivierende GTK+-Fehlerdiagnoseoptionen" #: ../bonobo/bonobo-ui-init-gtk.c:167 msgid "Make all warnings fatal" msgstr "Alle Warnungen wie schwerwiegende Fehler behandeln" #: ../bonobo/bonobo-ui-init-gtk.c:170 msgid "Load an additional Gtk module" msgstr "Ein zusätzliches GTK-Modul laden" #: ../bonobo/bonobo-ui-init-gtk.c:170 msgid "MODULE" msgstr "MODUL" #: ../bonobo/bonobo-ui-init-gtk.c:186 msgid "GTK+" msgstr "GTK+" #: ../bonobo/bonobo-ui-main.c:278 msgid "Bonobo GUI support" msgstr "Unterstützung für grafische Bonobo-Benutzeroberfläche" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "B_oth" msgstr "_Beide" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "T_ext" msgstr "T_ext" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Hide t_ips" msgstr "T_ipps verbergen" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Show t_ips" msgstr "Ti_pps anzeigen" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "_Hide toolbar" msgstr "Werkzeugleiste _verbergen" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "Customi_ze" msgstr "_Anpassen" #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Customize the toolbar" msgstr "Die Werkzeugleiste anpassen" #: ../bonobo/bonobo-ui-toolbar.c:1115 msgid "is floating" msgstr "schwebt" #: ../bonobo/bonobo-ui-toolbar.c:1116 msgid "whether the toolbar is floating" msgstr "Ob die Werkzeugleiste schweben soll" #: ../bonobo/bonobo-ui-toolbar.c:1162 msgid "Style of bevel around the toolbar" msgstr "Stil des Rands um die Werkzeugleiste" #: ../bonobo/bonobo-ui-util.c:601 msgid "Could not display help for this application" msgstr "Die Hilfe zu dieser Anwendung konnte nicht angezeigt werden" #: ../bonobo/bonobo-ui-util.c:643 msgid "_Contents" msgstr "I_nhalt" #: ../bonobo/bonobo-ui-util.c:644 msgid "View help for this application" msgstr "Die zu dieser Anwendung verfügbare Hilfe anzeigen" #: ../bonobo/bonobo-window.c:345 msgid "Name of the window - used for configuration serialization." msgstr "Name des Fensters - verwendet für die Serialisierung der Konfiguration" #: ../bonobo/bonobo-zoomable.c:326 msgid "Zoom level" msgstr "Vergrößerungsstufe" #: ../bonobo/bonobo-zoomable.c:327 msgid "The degree of enlargment" msgstr "Der Grad der Vergrößerung" #: ../bonobo/bonobo-zoomable.c:335 msgid "Minimum Zoom level" msgstr "Minimale Vergrößerungsstufe" # CHECK vielleicht nicht ganz perfekt #: ../bonobo/bonobo-zoomable.c:336 msgid "The minimum degree of enlargment" msgstr "Der minimale Grad der Vergrößerung" #: ../bonobo/bonobo-zoomable.c:344 msgid "Maximum Zoom level" msgstr "Maximale Vergrößerungsstufe" #: ../bonobo/bonobo-zoomable.c:345 msgid "The maximum degree of enlargment" msgstr "Der maximale Grad der Vergrößerung" #: ../bonobo/bonobo-zoomable.c:353 msgid "Has a minimum Zoom level" msgstr "Hat eine minimale Vergrößerungsstufe" #: ../bonobo/bonobo-zoomable.c:354 msgid "Whether we have a valid minimum zoom level" msgstr "Gibt es eine gültige minimale Vergrößerungsstufe?" #: ../bonobo/bonobo-zoomable.c:361 msgid "Has a maximum Zoom level" msgstr "Hat eine maximale Vergrößerungsstufe" #: ../bonobo/bonobo-zoomable.c:362 msgid "Whether we have a valid maximum zoom level" msgstr "Gibt es eine gültige maximale Vergrößerungsstufe?" #: ../bonobo/bonobo-zoomable.c:369 msgid "Is continuous" msgstr "Ist kontinuierlich" #: ../bonobo/bonobo-zoomable.c:370 msgid "Whether we zoom continuously (as opposed to jumps)" msgstr "Soll kontinuierlich vergrößert/verkleinert werden (nicht sprunghaft)?" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:1 msgid "About this application" msgstr "Info zu dieser Anwendung" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:2 msgid "Select" msgstr "Auswählen" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:3 msgid "_About..." msgstr "_Info …" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:4 msgid "_Edit" msgstr "_Bearbeiten" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:5 #: ../tools/browser/bonobo-browser.xml.h:4 msgid "_File" msgstr "_Datei" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:6 msgid "_Select" msgstr "_Auswählen" #: ../samples/bonoboui/hello.c:63 msgid "This does nothing; it is only a demonstration." msgstr "Dies tut nichts; es ist nur eine Demonstration." #: ../samples/bonoboui/hello.c:145 msgid "BonoboUI-Hello." msgstr "BonoboUI-Hallo." #: ../samples/bonoboui/hello.c:217 msgid "Gnome Hello" msgstr "GNOME-Hallo" #. Create Label and put it in the Button: #: ../samples/bonoboui/hello.c:272 msgid "Hello, World!" msgstr "Hallo, Welt!" #: ../samples/bonoboui/hello.c:312 msgid "Cannot init libbonoboui code" msgstr "Der libbonoboui-Code konnte nicht initialisiert werden" #: ../samples/controls/bonobo-sample-controls.c:131 msgid "Could not initialize Bonobo UI" msgstr "Bonobo-UI konnte nicht initialisiert werden" #: ../tools/browser/bonobo-browser.desktop.in.h:1 msgid "Bonobo Component Browser" msgstr "Bonobo-Komponenten-Browser" #: ../tools/browser/bonobo-browser.desktop.in.h:2 msgid "Shows available Bonobo components" msgstr "Verfügbare Bonobo-Komponenten anzeigen" #: ../tools/browser/bonobo-browser.xml.h:1 msgid "About this program..." msgstr "Info zu dieser Anwendung …" #: ../tools/browser/bonobo-browser.xml.h:2 msgid "Close the current window" msgstr "Aktuelles Fenster schließen" #: ../tools/browser/bonobo-browser.xml.h:3 msgid "Open a new window" msgstr "Neues Fenster öffnen" #: ../tools/browser/bonobo-browser.xml.h:5 msgid "_Help" msgstr "_Hilfe" #. Build the general tab #: ../tools/browser/component-details.c:109 msgid "General" msgstr "Allgemein" #: ../tools/browser/component-details.c:116 #: ../tools/browser/component-list.c:398 msgid "IID" msgstr "IID" #: ../tools/browser/component-details.c:117 msgid "Location" msgstr "Ort" #. Build the details tab #: ../tools/browser/component-details.c:167 msgid "Details" msgstr "Details" #: ../tools/browser/component-details.c:168 msgid "Detailed Information" msgstr "Erweiterte Informationen" #: ../tools/browser/component-list.c:367 ../tools/browser/window.c:283 msgid "Active" msgstr "Aktiv" #: ../tools/browser/component-list.c:388 msgid "Type" msgstr "Typ" #: ../tools/browser/window.c:162 msgid "Component Details" msgstr "Komponenten-Details" #: ../tools/browser/window.c:208 msgid "Bonobo Browser" msgstr "Bonobo-Browser" #: ../tools/browser/window.c:210 msgid "Copyright 2001, The GNOME Foundation" msgstr "Copyright 2001, The GNOME Foundation" #: ../tools/browser/window.c:211 msgid "Bonobo component browser" msgstr "Bonobo-Komponenten-Browser" #: ../tools/browser/window.c:214 msgid "translator-credits" msgstr "" "Jörgen Scheibengruber \n" "Christian Neumair \n" "Hendrik Richter " #. create the window #: ../tools/browser/window.c:240 msgid "Component Browser" msgstr "Komponenten-Browser" #. Fill out the tool bar #: ../tools/browser/window.c:280 msgid "All" msgstr "Alles" #: ../tools/browser/window.c:286 msgid "Inactive" msgstr "Inaktiv" libbonoboui-2.24.5/po/hi.po0000644000076400007640000004103511173072741012424 00000000000000# translation of hi.po to Hindi # Copyright (C) 2004, 2005, 2006, 2009 Free Software Foundation, Inc. # # Ravishankar Shrivastava , 2004. # Rajesh Ranjan , 2005, 2006, 2009. msgid "" msgstr "" "Project-Id-Version: hi\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2008-11-07 14:28+0100\n" "PO-Revision-Date: 2009-03-06 14:04+0530\n" "Last-Translator: Rajesh Ranjan \n" "Language-Team: Hindi \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Generator: KBabel 1.11.4\n" "Plural-Forms: nplurals=2; plural=(n!=1);\n\n" "\n" "\n" "\n" #: ../bonobo/bonobo-canvas-item.c:680 msgid "corba factory" msgstr "कोरबा फैक्ट्री" #: ../bonobo/bonobo-canvas-item.c:681 msgid "The factory pointer" msgstr "फैक्ट्री पाइंटर" #: ../bonobo/bonobo-canvas-item.c:690 msgid "corba UI container" msgstr "कोरबा यूआई धारक" #: ../bonobo/bonobo-canvas-item.c:691 msgid "The User interface container" msgstr "उपयोक्ता अंतरफलक धारक" #: ../bonobo/bonobo-dock-item-grip.c:254 msgid "Dock the toolbar" msgstr "औज़ारपट्टी डॉक करें" #: ../bonobo/bonobo-dock-item-grip.c:255 msgid "Undock the toolbar" msgstr "औज़ारपट्टी अन डॉक करें" #: ../bonobo/bonobo-dock-item.c:225 ../bonobo/bonobo-dock-item.c:226 #: ../bonobo/bonobo-ui-toolbar.c:1161 msgid "Shadow type" msgstr "छाया प्रकार" #: ../bonobo/bonobo-dock-item.c:236 ../bonobo/bonobo-dock-item.c:237 #: ../bonobo/bonobo-ui-toolbar.c:1105 ../bonobo/bonobo-ui-toolbar.c:1106 msgid "Orientation" msgstr "दिशा" #: ../bonobo/bonobo-dock-item.c:247 ../bonobo/bonobo-dock-item.c:248 #: ../bonobo/bonobo-ui-toolbar.c:1124 ../bonobo/bonobo-ui-toolbar.c:1125 msgid "Preferred width" msgstr "मान्य चौड़ाई" #: ../bonobo/bonobo-dock-item.c:256 ../bonobo/bonobo-dock-item.c:257 #: ../bonobo/bonobo-ui-toolbar.c:1133 ../bonobo/bonobo-ui-toolbar.c:1134 msgid "Preferred height" msgstr "मान्य ऊँचाई" #: ../bonobo/bonobo-file-selector-util.c:350 msgid "Select a file to open" msgstr "खोलने हेतु एक फ़ाइल चुनें" #: ../bonobo/bonobo-file-selector-util.c:378 msgid "Select files to open" msgstr "खोलने हेतु फ़ाइलें चुनें" #: ../bonobo/bonobo-file-selector-util.c:407 msgid "Select a filename to save" msgstr "सहेजने हेतु एक फ़ाइल नाम चुनें" #: ../bonobo/bonobo-plug.c:423 msgid "Event Forwarding" msgstr "घटना अग्रेषण" #: ../bonobo/bonobo-plug.c:424 msgid "Whether X events should be forwarded" msgstr "क्या एक्स घटनाओं को अग्रेषित किया जाना है" #: ../bonobo/bonobo-selector-widget.c:297 ../bonobo/bonobo-window.c:344 #: ../tools/browser/component-details.c:114 #: ../tools/browser/component-list.c:378 msgid "Name" msgstr "नाम" #: ../bonobo/bonobo-selector-widget.c:319 #: ../tools/browser/component-details.c:115 msgid "Description" msgstr "वर्णन" #: ../bonobo/bonobo-selector.c:343 msgid "Interfaces required" msgstr "अंतरफलकेस वांछित" #: ../bonobo/bonobo-selector.c:344 msgid "" "A NULL-terminated array of interfaces which a server must support in order " "to be listed in the selector. Defaults to \"IDL:Bonobo/Embeddable:1.0\" if " "no interfaces are listed" msgstr "" "अंतरफलक का एक NULL-terminated सरणी जिसको एक सर्वर को जरूर समर्थन करना चाहिये चयनक " "की सूची में शामिल होने के लिये. \"IDL:Bonobo/Embeddable:1.0\" में मूलभूत अगर कोई " "अंतरफलक सूचीबद्ध नहीं है." #: ../bonobo/bonobo-selector.c:346 msgid "Interface required entry" msgstr "अंतरफलक वांछित प्रविष्टि" #: ../bonobo/bonobo-selector.c:347 msgid "One of the interfaces that's required" msgstr "जो वांछित है, उनमें से एक अंतरफलक" #: ../bonobo/bonobo-ui-config-widget.c:265 msgid "Visible" msgstr "दृष्टिगोचर" #: ../bonobo/bonobo-ui-config-widget.c:272 msgid "_Show" msgstr "दिखाएँ (_S)" #: ../bonobo/bonobo-ui-config-widget.c:279 msgid "_Hide" msgstr "छुपाएँ (_H)" #: ../bonobo/bonobo-ui-config-widget.c:285 msgid "_View tooltips" msgstr "उपकरण-युक्तियाँ देखें (_V)" #: ../bonobo/bonobo-ui-config-widget.c:290 msgid "Toolbars" msgstr "उपकरण-पट्टियाँ" #: ../bonobo/bonobo-ui-config-widget.c:300 msgid "toolbars" msgstr "उपकरण-पट्टियाँ" #: ../bonobo/bonobo-ui-config-widget.c:311 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "Look" msgstr "देखें" #: ../bonobo/bonobo-ui-config-widget.c:320 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "_Icon" msgstr "चिह्न (_I)" #: ../bonobo/bonobo-ui-config-widget.c:326 msgid "_Text and Icon" msgstr "पाठ तथा चिह्न (_T)" #: ../bonobo/bonobo-ui-config-widget.c:332 msgid "Text only" msgstr "सिर्फ पाठ" #: ../bonobo/bonobo-ui-config-widget.c:338 msgid "_Priority text only" msgstr "सिर्फ प्राथमिकता पाठ (_P)" #: ../bonobo/bonobo-ui-engine.c:91 msgid "Debug" msgstr "डिबग" #: ../bonobo/bonobo-ui-engine.c:91 msgid "_Dump XML" msgstr "एक्सएमएल फेंके (_D)" #: ../bonobo/bonobo-ui-engine.c:92 msgid "Dump the entire UI's XML description to the console" msgstr "सम्पूर्ण यूआई का एक्सएमएल वर्णन कंसोल में फेंकें" #: ../bonobo/bonobo-ui-engine-config.c:522 msgid "Configure UI" msgstr "यूआई कॉन्फ़िगर करें" #: ../bonobo/bonobo-ui-init-gtk.c:131 msgid "Gdk debugging flags to set" msgstr "जीडीके डिबगिंग ध्वज जिसे नियत करना है" #: ../bonobo/bonobo-ui-init-gtk.c:131 ../bonobo/bonobo-ui-init-gtk.c:134 #: ../bonobo/bonobo-ui-init-gtk.c:162 ../bonobo/bonobo-ui-init-gtk.c:165 msgid "FLAGS" msgstr "ध्वज" #: ../bonobo/bonobo-ui-init-gtk.c:134 msgid "Gdk debugging flags to unset" msgstr "जीडीके डिबगिंग फ्लैग्स जिसे अनियत करना है" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "X display to use" msgstr "उपयोग में एक्स प्रदर्शक" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "DISPLAY" msgstr "प्रदर्शक" #: ../bonobo/bonobo-ui-init-gtk.c:142 msgid "X screen to use" msgstr "उपयोग में एक्स स्क्रीन" #: ../bonobo/bonobo-ui-init-gtk.c:142 msgid "SCREEN" msgstr "स्क्रीन" #: ../bonobo/bonobo-ui-init-gtk.c:146 msgid "Make X calls synchronous" msgstr "एक्स काल्स सिंक्रोनस करें" #: ../bonobo/bonobo-ui-init-gtk.c:152 msgid "Don't use X shared memory extension" msgstr "एक्स साझा मेमोरी विस्तारक का उपयोग नहीं करें" #: ../bonobo/bonobo-ui-init-gtk.c:156 msgid "Program name as used by the window manager" msgstr "प्रोग्राम नाम जैसा कि विंडो प्रबंधक द्वारा प्रयुक्त है" #: ../bonobo/bonobo-ui-init-gtk.c:156 msgid "NAME" msgstr "नाम" #: ../bonobo/bonobo-ui-init-gtk.c:159 msgid "Program class as used by the window manager" msgstr "प्रोग्राम क्लास जैसा कि विंडो प्रबंधक द्वारा प्रयुक्त है" #: ../bonobo/bonobo-ui-init-gtk.c:159 msgid "CLASS" msgstr "क्लास" #: ../bonobo/bonobo-ui-init-gtk.c:162 msgid "Gtk+ debugging flags to set" msgstr "जीटीके+ डिबगिंग ध्वज नियत हेतु" #: ../bonobo/bonobo-ui-init-gtk.c:165 msgid "Gtk+ debugging flags to unset" msgstr "जीटीके+ डिबगिंग ध्वज अनियत हेतु" #: ../bonobo/bonobo-ui-init-gtk.c:168 msgid "Make all warnings fatal" msgstr "सभी चेतावनियों को गंभीर बनाएँ" #: ../bonobo/bonobo-ui-init-gtk.c:171 msgid "Load an additional Gtk module" msgstr "एक अतिरिक्त जीटीके मॉड्यूल लोड करें" #: ../bonobo/bonobo-ui-init-gtk.c:171 msgid "MODULE" msgstr "मॉड्यूल" #: ../bonobo/bonobo-ui-init-gtk.c:187 msgid "GTK+" msgstr "जीटीके+" #: ../bonobo/bonobo-ui-main.c:278 msgid "Bonobo GUI support" msgstr "बोनोबो जीयूआई समर्थन" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "B_oth" msgstr "दोनों (_o)" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "T_ext" msgstr "पाठ (_e)" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Hide t_ips" msgstr "सुझाव छुपाएँ (_i)" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Show t_ips" msgstr "सुझाव दिखाएँ (_i)" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "_Hide toolbar" msgstr "औज़ारपट्टी छुपाएँ (_H)" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "Customi_ze" msgstr "अनुकूलित करें (_z)" #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Customize the toolbar" msgstr "औज़ारपट्टी अनुकूलित करें" #: ../bonobo/bonobo-ui-toolbar.c:1115 msgid "is floating" msgstr "फ्लोटिंग है" #: ../bonobo/bonobo-ui-toolbar.c:1116 msgid "whether the toolbar is floating" msgstr "क्या औज़ारपट्टी फ्लोटिंग है?" #: ../bonobo/bonobo-ui-toolbar.c:1162 msgid "Style of bevel around the toolbar" msgstr "औज़ारपट्टी के चारों ओर बेवल की शैली" #: ../bonobo/bonobo-ui-util.c:599 msgid "Could not display help for this application" msgstr "इस अनुप्रयोग के लिए मदद नहीं दिखा सका" #: ../bonobo/bonobo-ui-util.c:641 msgid "_Contents" msgstr "विषय सूची (_C)" #: ../bonobo/bonobo-ui-util.c:642 msgid "View help for this application" msgstr "इस अनुप्रयोग हेतु मदद देखें" #: ../bonobo/bonobo-window.c:345 msgid "Name of the window - used for configuration serialization." msgstr "विंडो का नाम - कॉन्फ़िगरेशन सीरियलाइज़ेशन हेतु प्रयुक्त" #: ../bonobo/bonobo-zoomable.c:326 msgid "Zoom level" msgstr "जूम स्तर" #: ../bonobo/bonobo-zoomable.c:327 msgid "The degree of enlargment" msgstr "आकार वृद्धि का अंश" #: ../bonobo/bonobo-zoomable.c:335 msgid "Minimum Zoom level" msgstr "न्यूनतम जूम स्तर" #: ../bonobo/bonobo-zoomable.c:336 msgid "The minimum degree of enlargment" msgstr "न्यूनतम आकार वृद्धि का अंश" #: ../bonobo/bonobo-zoomable.c:344 msgid "Maximum Zoom level" msgstr "अधिकतम जूम स्तर" #: ../bonobo/bonobo-zoomable.c:345 msgid "The maximum degree of enlargment" msgstr "आकार वृद्धि का अधिकतम अंश" #: ../bonobo/bonobo-zoomable.c:353 msgid "Has a minimum Zoom level" msgstr "न्यूनतम जूम स्तर है" #: ../bonobo/bonobo-zoomable.c:354 msgid "Whether we have a valid minimum zoom level" msgstr "क्या हमारे पास वैध न्यूनतम जूम स्तर है" #: ../bonobo/bonobo-zoomable.c:361 msgid "Has a maximum Zoom level" msgstr "अधिकतम जूम स्तर है" #: ../bonobo/bonobo-zoomable.c:362 msgid "Whether we have a valid maximum zoom level" msgstr "क्या हमारे पास वैध अधिकतम जूम स्तर है" #: ../bonobo/bonobo-zoomable.c:369 msgid "Is continuous" msgstr "लगातार है" #: ../bonobo/bonobo-zoomable.c:370 msgid "Whether we zoom continuously (as opposed to jumps)" msgstr "क्या लगातार जूम करना है (चरणबद्ध के विरूद्ध)" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:1 msgid "About this application" msgstr "इस अनुप्रयोग के बारे में" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:2 msgid "Select" msgstr "चुनें" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:3 msgid "_About..." msgstr "के बारे में... (_A)" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:4 msgid "_Edit" msgstr "संपादन (_E)" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:5 #: ../tools/browser/bonobo-browser.xml.h:4 msgid "_File" msgstr "फ़ाइल (_F)" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:6 msgid "_Select" msgstr "चुनें (_S)" #: ../samples/bonoboui/hello.c:63 msgid "This does nothing; it is only a demonstration." msgstr "यह कुछ नहीं करता है, यह सिर्फ एक प्रदर्शन है." #: ../samples/bonoboui/hello.c:145 msgid "BonoboUI-Hello." msgstr "बोनोबोयूआई-नमस्कार" #: ../samples/bonoboui/hello.c:217 msgid "Gnome Hello" msgstr "गनोम नमस्कार" # Create Label and put it in the Button: #. Create Label and put it in the Button: #: ../samples/bonoboui/hello.c:272 msgid "Hello, World!" msgstr "सबको नमस्कार!" #: ../samples/bonoboui/hello.c:312 msgid "Cannot init libbonoboui code" msgstr "libbonoboui कोड को प्रारंभ नहीं किया जा सका" #: ../samples/controls/bonobo-sample-controls.c:131 msgid "Could not initialize Bonobo UI" msgstr "बोनोबो यूआई को प्रारंभ नहीं किया जा सका" #: ../tools/browser/bonobo-browser.desktop.in.h:1 msgid "Bonobo Component Browser" msgstr "Bonobo घटक ब्रॉउजर" #: ../tools/browser/bonobo-browser.desktop.in.h:2 msgid "Shows available Bonobo components" msgstr "उपलब्ध Bonobo घटक सहेजें" #: ../tools/browser/bonobo-browser.xml.h:1 msgid "About this program..." msgstr "इस प्रोग्राम के बारे में..." #: ../tools/browser/bonobo-browser.xml.h:2 msgid "Close the current window" msgstr "मौजूदा विंडो को बंद करें" #: ../tools/browser/bonobo-browser.xml.h:3 msgid "Open a new window" msgstr "नया विंडो खोलें" #: ../tools/browser/bonobo-browser.xml.h:5 msgid "_Help" msgstr "मदद (_H)" #. Build the general tab #: ../tools/browser/component-details.c:109 msgid "General" msgstr "सामान्य" #: ../tools/browser/component-details.c:116 #: ../tools/browser/component-list.c:398 msgid "IID" msgstr "IID" #: ../tools/browser/component-details.c:117 msgid "Location" msgstr "स्थान" #. Build the details tab #: ../tools/browser/component-details.c:167 msgid "Details" msgstr "विवरण" #: ../tools/browser/component-details.c:168 msgid "Detailed Information" msgstr "विस्तृत सूचना" #: ../tools/browser/component-list.c:367 ../tools/browser/window.c:283 msgid "Active" msgstr "सक्रिय" #: ../tools/browser/component-list.c:388 msgid "Type" msgstr "प्रकार" #: ../tools/browser/window.c:162 msgid "Component Details" msgstr "घटक विवरण" #: ../tools/browser/window.c:208 msgid "Bonobo Browser" msgstr "Bonobo ब्रॉउजर" #: ../tools/browser/window.c:210 msgid "Copyright 2001, The GNOME Foundation" msgstr "Copyright 2001, GNOME न्यास" #: ../tools/browser/window.c:211 msgid "Bonobo component browser" msgstr "Bonobo घटक ब्रॉउजर" #: ../tools/browser/window.c:214 msgid "translator-credits" msgstr "अनुवाद श्रेय" #. create the window #: ../tools/browser/window.c:240 msgid "Component Browser" msgstr "घटक ब्रॉउजर" #. Fill out the tool bar #: ../tools/browser/window.c:280 msgid "All" msgstr "सब" #: ../tools/browser/window.c:286 msgid "Inactive" msgstr "निष्क्रिय" libbonoboui-2.24.5/po/kn.po0000644000076400007640000004211311173072741012432 00000000000000# translation of libbonoboui.HEAD.kn.po to Kannada # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Shankar Prasad , 2009. msgid "" msgstr "" "Project-Id-Version: libbonoboui.HEAD.kn\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2008-11-07 14:28+0100\n" "PO-Revision-Date: 2009-03-24 23:05+0530\n" "Last-Translator: Shankar Prasad \n" "Language-Team: Kannada \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Generator: KBabel 1.11.4\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" #: ../bonobo/bonobo-canvas-item.c:680 msgid "corba factory" msgstr "corba ಫ್ಯಾಕ್ಟರಿ" #: ../bonobo/bonobo-canvas-item.c:681 msgid "The factory pointer" msgstr "ಫ್ಯಾಕ್ಟರಿಯ ಸೂಚಕ" #: ../bonobo/bonobo-canvas-item.c:690 msgid "corba UI container" msgstr "corba UI ಅನ್ನು ಹೊಂದಿರುವುದು" #: ../bonobo/bonobo-canvas-item.c:691 msgid "The User interface container" msgstr "ಬಳಕೆದಾರರ ಸಂಪರ್ಕಸಾಧನವನ್ನು ಹೊಂದಿರುವುದು" #: ../bonobo/bonobo-dock-item-grip.c:254 msgid "Dock the toolbar" msgstr "ಉಪಕರಣಪಟ್ಟಿಯನ್ನು ಅಂಟಿಸು" #: ../bonobo/bonobo-dock-item-grip.c:255 msgid "Undock the toolbar" msgstr "ಉಪಕರಣ ಪಟ್ಟಿಯನ್ನು ಅಂಟಿಸದಿರು" #: ../bonobo/bonobo-dock-item.c:225 ../bonobo/bonobo-dock-item.c:226 #: ../bonobo/bonobo-ui-toolbar.c:1161 msgid "Shadow type" msgstr "ನೆರಳಿನ ಬಗೆ" #: ../bonobo/bonobo-dock-item.c:236 ../bonobo/bonobo-dock-item.c:237 #: ../bonobo/bonobo-ui-toolbar.c:1105 ../bonobo/bonobo-ui-toolbar.c:1106 msgid "Orientation" msgstr "ಸ್ಥಾನ" #: ../bonobo/bonobo-dock-item.c:247 ../bonobo/bonobo-dock-item.c:248 #: ../bonobo/bonobo-ui-toolbar.c:1124 ../bonobo/bonobo-ui-toolbar.c:1125 msgid "Preferred width" msgstr "ಇಚ್ಛೆಯ ಅಗಲ" #: ../bonobo/bonobo-dock-item.c:256 ../bonobo/bonobo-dock-item.c:257 #: ../bonobo/bonobo-ui-toolbar.c:1133 ../bonobo/bonobo-ui-toolbar.c:1134 msgid "Preferred height" msgstr "ಇಚ್ಛೆಯ ಎತ್ತರ" #: ../bonobo/bonobo-file-selector-util.c:350 msgid "Select a file to open" msgstr "ತೆರೆಯಲು ಒಂದು ಕಡತವನ್ನು ಆಯ್ಕೆ ಮಾಡಿ" #: ../bonobo/bonobo-file-selector-util.c:378 msgid "Select files to open" msgstr "ತೆರೆಯಲು ಕಡತಗಳನ್ನು ಆಯ್ಕೆ ಮಾಡಿ" #: ../bonobo/bonobo-file-selector-util.c:407 msgid "Select a filename to save" msgstr "ಉಳಿಸಲು ಒಂದು ಕಡತದ ಹೆಸರನ್ನು ಆಯ್ಕೆ ಮಾಡಿ" #: ../bonobo/bonobo-plug.c:423 msgid "Event Forwarding" msgstr "ಕಾರ್ಯಕ್ರಮದ ಫಾರ್ವಾರ್ಡಿಂಗ್" #: ../bonobo/bonobo-plug.c:424 msgid "Whether X events should be forwarded" msgstr "X ಕಾರ್ಯಕ್ರಮಗಳನ್ನು ಫಾರ್ವಾರ್ಡ್ ಮಾಡಬೇಕೆ" #: ../bonobo/bonobo-selector-widget.c:297 ../bonobo/bonobo-window.c:344 #: ../tools/browser/component-details.c:114 #: ../tools/browser/component-list.c:378 msgid "Name" msgstr "ಹೆಸರು" #: ../bonobo/bonobo-selector-widget.c:319 #: ../tools/browser/component-details.c:115 msgid "Description" msgstr "ವರ್ಣನೆ" #: ../bonobo/bonobo-selector.c:343 msgid "Interfaces required" msgstr "ಸಂಪರ್ಕಸಾಧನಗಳ ಅಗತ್ಯವಿದೆ" #: ../bonobo/bonobo-selector.c:344 msgid "" "A NULL-terminated array of interfaces which a server must support in order " "to be listed in the selector. Defaults to \"IDL:Bonobo/Embeddable:1.0\" if " "no interfaces are listed" msgstr "ಆಯ್ಕೆಗಾರದಲ್ಲಿ ಪಟ್ಟಿ ಮಾಡಲ್ಪಡಬೇಕೆಂದರೆ ಒಂದು ಶೂನ್ಯ-ಅಂತ್ಯಗೊಳಿಸಲಾದ ಸಂಪರ್ಕಸಾಧನಗಳ ವ್ಯೂಹವನ್ನು ಹೊಂದಿರುವ ಇದನ್ನು ಪರಿಚಾರಕವು ಬೆಂಬಲಿಸಬೇಕು. ಯಾವುದೆ ಸಂಪರ್ಕಸಾಧನಗಳನ್ನು ಪಟ್ಟಿ ಮಾಡದೆ ಇದ್ದಲ್ಲಿ \"IDL:Bonobo/Embeddable:1.0\" ಗೆ ಪೂರ್ವನಿಯೋಜಿತಗೊಳ್ಳುತ್ತದೆ" #: ../bonobo/bonobo-selector.c:346 msgid "Interface required entry" msgstr "ಸಂಪರ್ಕಸಾಧನಕ್ಕಾಗಿ ನಮೂದಿನ ಅಗತ್ಯವಿದೆ" #: ../bonobo/bonobo-selector.c:347 msgid "One of the interfaces that's required" msgstr "ಅಗತ್ಯವಿರುವ ಸಂಪರ್ಕಸಾಧನಗಳಲ್ಲಿ ಒಂದು" #: ../bonobo/bonobo-ui-config-widget.c:265 msgid "Visible" msgstr "ಕಾಣಿಸುವ" #: ../bonobo/bonobo-ui-config-widget.c:272 msgid "_Show" msgstr "ತೋರಿಸು" #: ../bonobo/bonobo-ui-config-widget.c:279 msgid "_Hide" msgstr "ಮುಚ್ಚಿಡು" #: ../bonobo/bonobo-ui-config-widget.c:285 msgid "_View tooltips" msgstr "ಉಪಕರಣ ಸಲಹೆಗಳನ್ನು ನೋಡು(_V)" #: ../bonobo/bonobo-ui-config-widget.c:290 msgid "Toolbars" msgstr "ಉಪಕರಣ ಪಟ್ಟಿಗಳು" #: ../bonobo/bonobo-ui-config-widget.c:300 msgid "toolbars" msgstr "ಉಪಕರಣ ಪಟ್ಟಿಗಳು" #: ../bonobo/bonobo-ui-config-widget.c:311 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "Look" msgstr "ನೋಡು" #: ../bonobo/bonobo-ui-config-widget.c:320 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "_Icon" msgstr "ಪ್ರತಿಮೆ" #: ../bonobo/bonobo-ui-config-widget.c:326 msgid "_Text and Icon" msgstr "ಪ್ರತಿಮೆ ಮತ್ತು ಪಠ್ಯ" #: ../bonobo/bonobo-ui-config-widget.c:332 msgid "Text only" msgstr "ಪಠ್ಯ ಮಾತ್ರ" #: ../bonobo/bonobo-ui-config-widget.c:338 msgid "_Priority text only" msgstr "ಆಧ್ಯತೆಯಿರುವ ಪಠ್ಯ ಮಾತ್ರ ತೋರಿಸು" #: ../bonobo/bonobo-ui-engine.c:91 msgid "Debug" msgstr "ದೋಷದ ಹುಡುಕಾಟ" #: ../bonobo/bonobo-ui-engine.c:91 msgid "_Dump XML" msgstr "XML ಅನ್ನು ಕಳುಹಿಸು(_D)" #: ../bonobo/bonobo-ui-engine.c:92 msgid "Dump the entire UI's XML description to the console" msgstr "ಸಂಪೂರ್ಣ UI ನ XML ವಿವರಣೆಯನ್ನು ಕನ್ಸೋಲಿಗೆ ಕಳುಹಿಸಿ" #: ../bonobo/bonobo-ui-engine-config.c:522 msgid "Configure UI" msgstr "UI ಅನ್ನು ಸಂರಚಿಸಿ" #: ../bonobo/bonobo-ui-init-gtk.c:131 msgid "Gdk debugging flags to set" msgstr "ಹೊಂದಿಸಲು Gdk ದೋಷ ನಿವಾರಣ ಗುರುತು ಚೀಟಿಗಳು" #: ../bonobo/bonobo-ui-init-gtk.c:131 ../bonobo/bonobo-ui-init-gtk.c:134 #: ../bonobo/bonobo-ui-init-gtk.c:162 ../bonobo/bonobo-ui-init-gtk.c:165 msgid "FLAGS" msgstr "FLAGS" #: ../bonobo/bonobo-ui-init-gtk.c:134 msgid "Gdk debugging flags to unset" msgstr "ಹೊಂದಿಸದೆ ಇರಲು Gdk ದೋಷ ನಿವಾರಣ ಗುರುತುಚೀಟಿಗಳು" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "X display to use" msgstr "ಬಳಸಲು X ಪ್ರದರ್ಶಕ" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "DISPLAY" msgstr "ಪ್ರದರ್ಶನ" #: ../bonobo/bonobo-ui-init-gtk.c:142 msgid "X screen to use" msgstr "ಬಳಸಲು X ತೆರೆ" #: ../bonobo/bonobo-ui-init-gtk.c:142 msgid "SCREEN" msgstr "ಪರ್ದೆ" #: ../bonobo/bonobo-ui-init-gtk.c:146 msgid "Make X calls synchronous" msgstr "X ಕರೆಗಳನ್ನು ಮೇಳೈಸು" #: ../bonobo/bonobo-ui-init-gtk.c:152 msgid "Don't use X shared memory extension" msgstr "ಹಂಚಲಾದ X ಮೆಮೊರಿ ವಿಸ್ತರಣೆಯನ್ನು ಬಳಸಬೇಡ" #: ../bonobo/bonobo-ui-init-gtk.c:156 msgid "Program name as used by the window manager" msgstr "ವಿಂಡೋ ವ್ಯವಸ್ಥಾಪಕನಿಂದ ಬಳಸಲ್ಪಟ್ಟ ಪ್ರೊಗ್ರಾಂ ಹೆಸರು" #: ../bonobo/bonobo-ui-init-gtk.c:156 msgid "NAME" msgstr "ಹೆಸರು" #: ../bonobo/bonobo-ui-init-gtk.c:159 msgid "Program class as used by the window manager" msgstr "ವಿಂಡೋ ವ್ಯವಸ್ಥಾಪಕನಿಂದ ಬಳಸಲ್ಪಟ್ಟ ಪ್ರೊಗ್ರಾಂ ವರ್ಗ" #: ../bonobo/bonobo-ui-init-gtk.c:159 msgid "CLASS" msgstr "ವರ್ಗ" #: ../bonobo/bonobo-ui-init-gtk.c:162 msgid "Gtk+ debugging flags to set" msgstr "ಹೊಂದಿಸಲು Gtk+ ದೋಷ ನಿವಾರಣೆಯ ಗುರುತುಗಳು" #: ../bonobo/bonobo-ui-init-gtk.c:165 msgid "Gtk+ debugging flags to unset" msgstr "ಹೊಂದಿಸದೆ ಇರಲು Gtk+ ದೋಷ ನಿವಾರಣೆಯ ಗುರುತುಗಳು" #: ../bonobo/bonobo-ui-init-gtk.c:168 msgid "Make all warnings fatal" msgstr "ಎಲ್ಲಾ ಎಚ್ಚರಿಕೆಗಳನ್ನು ಮಾರಕವಾಗಿಸು" #: ../bonobo/bonobo-ui-init-gtk.c:171 msgid "Load an additional Gtk module" msgstr "ಹೆಚ್ಚುವರಿ Gtk ಘಟಕವನ್ನು ಲೋಡ್ ಮಾಡಿ" #: ../bonobo/bonobo-ui-init-gtk.c:171 msgid "MODULE" msgstr "MODULE" #: ../bonobo/bonobo-ui-init-gtk.c:187 msgid "GTK+" msgstr "ಜಿಟಿಕೆ+" #: ../bonobo/bonobo-ui-main.c:278 msgid "Bonobo GUI support" msgstr "Bonobo GUI ಬೆಂಬಲ" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "B_oth" msgstr "ಎರಡು" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "T_ext" msgstr "ಪಠ್ಯ " #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Hide t_ips" msgstr "ಸಲಹೆಗಳನ್ನು ಅಡಗಿಸು(_i)" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Show t_ips" msgstr "ಸಲಹೆಗಳನ್ನು ತೋರಿಸು(_i)" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "_Hide toolbar" msgstr "ಉಪಕರಣ ಪಟ್ಟಿ ಬೊಚ್ಚಿಡು" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "Customi_ze" msgstr "ಗ್ರಾಹಕೀಯಗೊಳಿಸು" #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Customize the toolbar" msgstr "ಉಪಕರಣ ಪಟ್ಟಿಯನ್ನು ಗ್ರಾಹಕೀಯಗೊಳಿಸು" #: ../bonobo/bonobo-ui-toolbar.c:1115 msgid "is floating" msgstr "ತೆಳುತ್ತಿದೆ" #: ../bonobo/bonobo-ui-toolbar.c:1116 msgid "whether the toolbar is floating" msgstr "ಉಪಕರಣಪಟ್ಟಿಯು ತೇಲುತ್ತಿದೆಯೆ" #: ../bonobo/bonobo-ui-toolbar.c:1162 msgid "Style of bevel around the toolbar" msgstr "ಉಪಕರಣಪಟ್ಟಿಯ ಸುತ್ತಲಿನ ಇಳಿಜಾರಿನ ಶೈಲಿ" #: ../bonobo/bonobo-ui-util.c:599 msgid "Could not display help for this application" msgstr "ಈ ಅನ್ವಯದ ಬಗೆಗಿನ ನೆರವನ್ನು ತೋರಿಸಲಾಗಲಿಲ್ಲ" #: ../bonobo/bonobo-ui-util.c:641 msgid "_Contents" msgstr "ವಿಷಯಗಳು(_C)" #: ../bonobo/bonobo-ui-util.c:642 msgid "View help for this application" msgstr "ಈ ಅನ್ವಯದ ನೆರವನ್ನು ನೋಡಿ" #: ../bonobo/bonobo-window.c:345 msgid "Name of the window - used for configuration serialization." msgstr "ವಿಂಡೊದ ಹೆಸರು - ಸಂರಚನೆಯನ್ನು ಅನುಕ್ರಮಗೊಳಿಸಲು ಬಳಸಲಾಗುವುದು." #: ../bonobo/bonobo-zoomable.c:326 msgid "Zoom level" msgstr "ಗಾತ್ರಬದಲಾವಣೆಯ ಮಟ್ಟ" #: ../bonobo/bonobo-zoomable.c:327 msgid "The degree of enlargment" msgstr "ಹಿಗ್ಗಿಸುವಿಕೆಯ ಪ್ರಮಾಣ" #: ../bonobo/bonobo-zoomable.c:335 msgid "Minimum Zoom level" msgstr "ಕನಿಷ್ಟ ಗಾತ್ರ ಬದಲಾವಣೆಯ ಮಟ್ಟ" #: ../bonobo/bonobo-zoomable.c:336 msgid "The minimum degree of enlargment" msgstr "ಹಿಗ್ಗಿಸುವಿಕೆಯ ಕನಿಷ್ಟ ಪ್ರಮಾಣ" #: ../bonobo/bonobo-zoomable.c:344 msgid "Maximum Zoom level" msgstr "ಹಿಗ್ಗಿಸುವಿಕೆಯ ಗರಿಷ್ಟ ಮಟ್ಟ" #: ../bonobo/bonobo-zoomable.c:345 msgid "The maximum degree of enlargment" msgstr "ಹಿಗ್ಗಿಸುವಿಕೆಯ ಗರಿಷ್ಟ ಪ್ರಮಾಣ" #: ../bonobo/bonobo-zoomable.c:353 msgid "Has a minimum Zoom level" msgstr "ಕನಿಷ್ಟ ಹಿಗ್ಗಿಸುವ ಮಟ್ಟವನ್ನು ಹೊಂದಿದೆ" #: ../bonobo/bonobo-zoomable.c:354 msgid "Whether we have a valid minimum zoom level" msgstr "ನಾವು ಕನಿಷ್ಟ ಹಿಗ್ಗಿಸುವ ಮಟ್ಟವನ್ನು ಹೊಂದಿದ್ದೇವೆಯೆ" #: ../bonobo/bonobo-zoomable.c:361 msgid "Has a maximum Zoom level" msgstr "ಗರಿಷ್ಟ ಹಿಗ್ಗಿಸುವ ಮಟ್ಟವನ್ನು ಹೊಂದಿದೆ" #: ../bonobo/bonobo-zoomable.c:362 msgid "Whether we have a valid maximum zoom level" msgstr "ನಾವು ಗರಿಷ್ಟ ಹಿಗ್ಗಿಸುವ ಮಟ್ಟವನ್ನು ಹೊಂದಿದ್ದೇವೆಯೆ" #: ../bonobo/bonobo-zoomable.c:369 msgid "Is continuous" msgstr "ನಿರಂತರವಾಗಿದೆ" #: ../bonobo/bonobo-zoomable.c:370 msgid "Whether we zoom continuously (as opposed to jumps)" msgstr "ನಿರಂತರವಾಗಿ ಹಿಗ್ಗಿಸಬೇಕೆ (ಹಂತ ಹಂತವಾಗಿ ಹೋಗುವಿಕೆಗೆ ವಿರುದ್ಧವಾಗಿ)" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:1 msgid "About this application" msgstr "ಈ ಅನ್ವಯದ ಬಗ್ಗೆ" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:2 msgid "Select" msgstr "ಆಯ್ಕೆಮಾಡು" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:3 msgid "_About..." msgstr "ತಂತ್ರಾಂಶದ ಬಗ್ಗೆ..." #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:4 msgid "_Edit" msgstr "ಸಂಸ್ಕರಿಸು" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:5 #: ../tools/browser/bonobo-browser.xml.h:4 msgid "_File" msgstr "ಕಡತ" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:6 msgid "_Select" msgstr "ಆಯ್ಕೆಮಾಡು" #: ../samples/bonoboui/hello.c:63 msgid "This does nothing; it is only a demonstration." msgstr "ಇದು ಏನನ್ನೂ ಮಾಡುವುದಿಲ್ಲ; ಇದು ಕೇವಲ ಪ್ರದರ್ಶನಕ್ಕಾಗಿ ಮಾತ್ರ." #: ../samples/bonoboui/hello.c:145 msgid "BonoboUI-Hello." msgstr "BonoboUI-Hello." #: ../samples/bonoboui/hello.c:217 msgid "Gnome Hello" msgstr "Gnome Hello" #. Create Label and put it in the Button: #: ../samples/bonoboui/hello.c:272 msgid "Hello, World!" msgstr "ಹೆಲೊ ವರ್ಲ್ಡ್!" #: ../samples/bonoboui/hello.c:312 msgid "Cannot init libbonoboui code" msgstr "libbonoboui ಕೋಡ್ ಅನ್ನು ಆರಂಭಿಸಲು ಆಗಲಿಲ್ಲ" #: ../samples/controls/bonobo-sample-controls.c:131 msgid "Could not initialize Bonobo UI" msgstr "Bonobo UI ಅನ್ನು ಆರಂಭಿಸಲು ಸಾಧ್ಯವಾಗಿಲ್ಲ" #: ../tools/browser/bonobo-browser.desktop.in.h:1 msgid "Bonobo Component Browser" msgstr "Bonobo ಘಟಕ ವೀಕ್ಷಕ" #: ../tools/browser/bonobo-browser.desktop.in.h:2 msgid "Shows available Bonobo components" msgstr "ಲಭ್ಯವಿರುವ Bonobo ಘಟಕಗಳನ್ನು ತೋರಿಸುತ್ತದೆ" #: ../tools/browser/bonobo-browser.xml.h:1 msgid "About this program..." msgstr "ಈ ಅನ್ವಯದ ಬಗ್ಗೆ..." #: ../tools/browser/bonobo-browser.xml.h:2 msgid "Close the current window" msgstr "ಈಗಿನ ವಿಂಡೋವನ್ನು ಮುಚ್ಚು" #: ../tools/browser/bonobo-browser.xml.h:3 msgid "Open a new window" msgstr "ಹೊಸ ವಿಂಡೊವನ್ನು ತೆರೆ" #: ../tools/browser/bonobo-browser.xml.h:5 msgid "_Help" msgstr "ಸಹಾಯ(_H)" #. Build the general tab #: ../tools/browser/component-details.c:109 msgid "General" msgstr "ಸಾಮಾನ್ಯ" #: ../tools/browser/component-details.c:116 #: ../tools/browser/component-list.c:398 msgid "IID" msgstr "IID" #: ../tools/browser/component-details.c:117 msgid "Location" msgstr "ಸ್ಥಳ" #. Build the details tab #: ../tools/browser/component-details.c:167 msgid "Details" msgstr "ವಿವರಗಳು" #: ../tools/browser/component-details.c:168 msgid "Detailed Information" msgstr "ವಿವರವಾದ ಮಾಹಿತಿ" #: ../tools/browser/component-list.c:367 ../tools/browser/window.c:283 msgid "Active" msgstr "ಸಕ್ರಿಯ" #: ../tools/browser/component-list.c:388 msgid "Type" msgstr "ಬಗೆ" #: ../tools/browser/window.c:162 msgid "Component Details" msgstr "ಘಟಕಗಳ ವಿವರಗಳು" #: ../tools/browser/window.c:208 msgid "Bonobo Browser" msgstr "Bonobo ವೀಕ್ಷಕ" #: ../tools/browser/window.c:210 msgid "Copyright 2001, The GNOME Foundation" msgstr "ಹಕ್ಕು 2001, The GNOME Foundation" #: ../tools/browser/window.c:211 msgid "Bonobo component browser" msgstr "Bonobo ಘಟಕ ವೀಕ್ಷಕ" #: ../tools/browser/window.c:214 msgid "translator-credits" msgstr "ಶಂಕರ್ ಪ್ರಸಾದ್ " #. create the window #: ../tools/browser/window.c:240 msgid "Component Browser" msgstr "ಘಟಕ ವೀಕ್ಷಕ" #. Fill out the tool bar #: ../tools/browser/window.c:280 msgid "All" msgstr "ಎಲ್ಲಾ" #: ../tools/browser/window.c:286 msgid "Inactive" msgstr "ನಿಷ್ಕ್ರಿಯ" libbonoboui-2.24.5/po/si.po0000644000076400007640000002646011173072741012444 00000000000000# translation of si.po to Sinhala # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Danishka Navin , 2007. msgid "" msgstr "" "Project-Id-Version: si\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2007-09-16 03:30+0100\n" "PO-Revision-Date: 2007-09-17 12:40+0530\n" "Last-Translator: Danishka Navin \n" "Language-Team: Sinhala \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Generator: KBabel 1.11.4\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" #: ../bonobo/bonobo-canvas-item.c:680 msgid "corba factory" msgstr "" #: ../bonobo/bonobo-canvas-item.c:681 msgid "The factory pointer" msgstr "" #: ../bonobo/bonobo-canvas-item.c:690 msgid "corba UI container" msgstr "" #: ../bonobo/bonobo-canvas-item.c:691 msgid "The User interface container" msgstr "" #: ../bonobo/bonobo-dock-item-grip.c:255 msgid "Dock the toolbar" msgstr "" #: ../bonobo/bonobo-dock-item-grip.c:256 msgid "Undock the toolbar" msgstr "" #: ../bonobo/bonobo-dock-item.c:228 ../bonobo/bonobo-dock-item.c:229 #: ../bonobo/bonobo-ui-toolbar.c:1161 msgid "Shadow type" msgstr "" #: ../bonobo/bonobo-dock-item.c:239 ../bonobo/bonobo-dock-item.c:240 #: ../bonobo/bonobo-ui-toolbar.c:1105 ../bonobo/bonobo-ui-toolbar.c:1106 msgid "Orientation" msgstr "දිශානතිය" #: ../bonobo/bonobo-dock-item.c:250 ../bonobo/bonobo-dock-item.c:251 #: ../bonobo/bonobo-ui-toolbar.c:1124 ../bonobo/bonobo-ui-toolbar.c:1125 msgid "Preferred width" msgstr "" #: ../bonobo/bonobo-dock-item.c:259 ../bonobo/bonobo-dock-item.c:260 #: ../bonobo/bonobo-ui-toolbar.c:1133 ../bonobo/bonobo-ui-toolbar.c:1134 msgid "Preferred height" msgstr "" #: ../bonobo/bonobo-file-selector-util.c:357 msgid "Select a file to open" msgstr "" #: ../bonobo/bonobo-file-selector-util.c:385 msgid "Select files to open" msgstr "" #: ../bonobo/bonobo-file-selector-util.c:414 msgid "Select a filename to save" msgstr "" #: ../bonobo/bonobo-plug.c:423 msgid "Event Forwarding" msgstr "" #: ../bonobo/bonobo-plug.c:424 msgid "Whether X events should be forwarded" msgstr "" #: ../bonobo/bonobo-selector-widget.c:298 ../bonobo/bonobo-window.c:344 #: ../tools/browser/component-details.c:114 #: ../tools/browser/component-list.c:378 msgid "Name" msgstr "නම" #: ../bonobo/bonobo-selector-widget.c:320 #: ../tools/browser/component-details.c:115 msgid "Description" msgstr "විස්තරය" #: ../bonobo/bonobo-selector.c:343 msgid "Interfaces required" msgstr "" #: ../bonobo/bonobo-selector.c:344 msgid "" "A NULL-terminated array of interfaces which a server must support in order " "to be listed in the selector. Defaults to \"IDL:Bonobo/Embeddable:1.0\" if " "no interfaces are listed" msgstr "" #: ../bonobo/bonobo-selector.c:346 msgid "Interface required entry" msgstr "" #: ../bonobo/bonobo-selector.c:347 msgid "One of the interfaces that's required" msgstr "" #: ../bonobo/bonobo-ui-config-widget.c:265 msgid "Visible" msgstr "දෘශ්‍ය" #: ../bonobo/bonobo-ui-config-widget.c:272 msgid "_Show" msgstr "පෙන්වන්න (_S)" #: ../bonobo/bonobo-ui-config-widget.c:279 msgid "_Hide" msgstr "" #: ../bonobo/bonobo-ui-config-widget.c:285 msgid "_View tooltips" msgstr "" #: ../bonobo/bonobo-ui-config-widget.c:290 msgid "Toolbars" msgstr "" #: ../bonobo/bonobo-ui-config-widget.c:300 msgid "toolbars" msgstr "" #: ../bonobo/bonobo-ui-config-widget.c:311 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "Look" msgstr "" #: ../bonobo/bonobo-ui-config-widget.c:320 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "_Icon" msgstr "" #: ../bonobo/bonobo-ui-config-widget.c:326 msgid "_Text and Icon" msgstr "" #: ../bonobo/bonobo-ui-config-widget.c:332 msgid "Text only" msgstr "" #: ../bonobo/bonobo-ui-config-widget.c:338 msgid "_Priority text only" msgstr "" #: ../bonobo/bonobo-ui-engine.c:91 msgid "Debug" msgstr "" #: ../bonobo/bonobo-ui-engine.c:91 msgid "_Dump XML" msgstr "" #: ../bonobo/bonobo-ui-engine.c:92 msgid "Dump the entire UI's XML description to the console" msgstr "" #: ../bonobo/bonobo-ui-engine-config.c:522 msgid "Configure UI" msgstr "" #: ../bonobo/bonobo-ui-init-gtk.c:130 msgid "Gdk debugging flags to set" msgstr "Gdk දෝෂහරණ සංකේතය සැකසීමට" #: ../bonobo/bonobo-ui-init-gtk.c:130 ../bonobo/bonobo-ui-init-gtk.c:133 #: ../bonobo/bonobo-ui-init-gtk.c:161 ../bonobo/bonobo-ui-init-gtk.c:164 msgid "FLAGS" msgstr "FLAGS" #: ../bonobo/bonobo-ui-init-gtk.c:133 msgid "Gdk debugging flags to unset" msgstr "Gdk දෝෂහැරීමේ සංකේතය සකසා නැත" #: ../bonobo/bonobo-ui-init-gtk.c:137 msgid "X display to use" msgstr "භාවිතයට ඇති X දර්ශනය" #: ../bonobo/bonobo-ui-init-gtk.c:137 msgid "DISPLAY" msgstr "DISPLAY" #: ../bonobo/bonobo-ui-init-gtk.c:141 msgid "X screen to use" msgstr "භාවිතයට ඇති X තිරය" #: ../bonobo/bonobo-ui-init-gtk.c:141 msgid "SCREEN" msgstr "SCREEN" #: ../bonobo/bonobo-ui-init-gtk.c:145 msgid "Make X calls synchronous" msgstr "" #: ../bonobo/bonobo-ui-init-gtk.c:151 msgid "Don't use X shared memory extension" msgstr "" #: ../bonobo/bonobo-ui-init-gtk.c:155 msgid "Program name as used by the window manager" msgstr "කවුළු කළමණාකරු භාවිතා කරන යෙදුම් නම" #: ../bonobo/bonobo-ui-init-gtk.c:155 msgid "NAME" msgstr "NAME" #: ../bonobo/bonobo-ui-init-gtk.c:158 msgid "Program class as used by the window manager" msgstr "කවුළු කළමණාකරු භාවිතා කරන යෙදුම් පන්තිය" #: ../bonobo/bonobo-ui-init-gtk.c:158 msgid "CLASS" msgstr "CLASS" #: ../bonobo/bonobo-ui-init-gtk.c:161 msgid "Gtk+ debugging flags to set" msgstr "" #: ../bonobo/bonobo-ui-init-gtk.c:164 msgid "Gtk+ debugging flags to unset" msgstr "" #: ../bonobo/bonobo-ui-init-gtk.c:167 msgid "Make all warnings fatal" msgstr "" #: ../bonobo/bonobo-ui-init-gtk.c:170 msgid "Load an additional Gtk module" msgstr "" #: ../bonobo/bonobo-ui-init-gtk.c:170 msgid "MODULE" msgstr "" #: ../bonobo/bonobo-ui-init-gtk.c:186 msgid "GTK+" msgstr "GTK+" #: ../bonobo/bonobo-ui-main.c:278 msgid "Bonobo GUI support" msgstr "" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "B_oth" msgstr "" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "T_ext" msgstr "" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Hide t_ips" msgstr "" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Show t_ips" msgstr "" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "_Hide toolbar" msgstr "" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "Customi_ze" msgstr "" #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Customize the toolbar" msgstr "" #: ../bonobo/bonobo-ui-toolbar.c:1115 msgid "is floating" msgstr "" #: ../bonobo/bonobo-ui-toolbar.c:1116 msgid "whether the toolbar is floating" msgstr "" #: ../bonobo/bonobo-ui-toolbar.c:1162 msgid "Style of bevel around the toolbar" msgstr "" #: ../bonobo/bonobo-ui-util.c:630 msgid "_Contents" msgstr "අන්තර්ගත (_C)" #: ../bonobo/bonobo-ui-util.c:631 msgid "View help for this application" msgstr "" #: ../bonobo/bonobo-window.c:345 msgid "Name of the window - used for configuration serialization." msgstr "" #: ../bonobo/bonobo-zoomable.c:326 msgid "Zoom level" msgstr "" #: ../bonobo/bonobo-zoomable.c:327 msgid "The degree of enlargment" msgstr "" #: ../bonobo/bonobo-zoomable.c:335 msgid "Minimum Zoom level" msgstr "" #: ../bonobo/bonobo-zoomable.c:336 msgid "The minimum degree of enlargment" msgstr "" #: ../bonobo/bonobo-zoomable.c:344 msgid "Maximum Zoom level" msgstr "" #: ../bonobo/bonobo-zoomable.c:345 msgid "The maximum degree of enlargment" msgstr "" #: ../bonobo/bonobo-zoomable.c:353 msgid "Has a minimum Zoom level" msgstr "" #: ../bonobo/bonobo-zoomable.c:354 msgid "Whether we have a valid minimum zoom level" msgstr "" #: ../bonobo/bonobo-zoomable.c:361 msgid "Has a maximum Zoom level" msgstr "" #: ../bonobo/bonobo-zoomable.c:362 msgid "Whether we have a valid maximum zoom level" msgstr "" #: ../bonobo/bonobo-zoomable.c:369 msgid "Is continuous" msgstr "" #: ../bonobo/bonobo-zoomable.c:370 msgid "Whether we zoom continuously (as opposed to jumps)" msgstr "" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:1 msgid "About this application" msgstr "මෙම යෙදුම සම්බන්ධව" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:2 msgid "Select" msgstr "තෝරන්න" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:3 msgid "_About..." msgstr "සම්ගන්දව... (_A)" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:4 msgid "_Edit" msgstr "සැකසුම් (_E)" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:5 #: ../tools/browser/bonobo-browser.xml.h:4 msgid "_File" msgstr "ගොනු (_F)" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:6 msgid "_Select" msgstr "තෝරන්න (_S)" #: ../samples/bonoboui/hello.c:63 msgid "This does nothing; it is only a demonstration." msgstr "" #: ../samples/bonoboui/hello.c:145 msgid "BonoboUI-Hello." msgstr "" #: ../samples/bonoboui/hello.c:217 msgid "Gnome Hello" msgstr "" #. Create Label and put it in the Button: #: ../samples/bonoboui/hello.c:272 msgid "Hello, World!" msgstr "" #: ../samples/bonoboui/hello.c:312 msgid "Cannot init libbonoboui code" msgstr "" #: ../samples/controls/bonobo-sample-controls.c:131 msgid "Could not initialize Bonobo UI" msgstr "" #: ../tools/browser/bonobo-browser.desktop.in.h:1 msgid "Bonobo Component Browser" msgstr "" #: ../tools/browser/bonobo-browser.desktop.in.h:2 msgid "Shows available Bonobo components" msgstr "" #: ../tools/browser/bonobo-browser.xml.h:1 msgid "About this program..." msgstr "" #: ../tools/browser/bonobo-browser.xml.h:2 msgid "Close the current window" msgstr "" #: ../tools/browser/bonobo-browser.xml.h:3 msgid "Open a new window" msgstr "" #: ../tools/browser/bonobo-browser.xml.h:5 msgid "_Help" msgstr "උදව් (_H)" #. Build the general tab #: ../tools/browser/component-details.c:109 msgid "General" msgstr "සාමාන්‍ය" #: ../tools/browser/component-details.c:116 #: ../tools/browser/component-list.c:398 msgid "IID" msgstr "" #: ../tools/browser/component-details.c:117 msgid "Location" msgstr "පිහිටීම" #. Build the details tab #: ../tools/browser/component-details.c:167 msgid "Details" msgstr "විස්තර" #: ../tools/browser/component-details.c:168 msgid "Detailed Information" msgstr "" #: ../tools/browser/component-list.c:367 ../tools/browser/window.c:283 msgid "Active" msgstr "සක්‍රීය" #: ../tools/browser/component-list.c:388 msgid "Type" msgstr "වර්‍ගය" #: ../tools/browser/window.c:162 msgid "Component Details" msgstr "" #: ../tools/browser/window.c:208 msgid "Bonobo Browser" msgstr "" #: ../tools/browser/window.c:210 msgid "Copyright 2001, The GNOME Foundation" msgstr "" #: ../tools/browser/window.c:211 msgid "Bonobo component browser" msgstr "" #: ../tools/browser/window.c:214 msgid "translator-credits" msgstr "පරිවර්තන ස්තුතිය" #. create the window #: ../tools/browser/window.c:240 msgid "Component Browser" msgstr "" #. Fill out the tool bar #: ../tools/browser/window.c:280 msgid "All" msgstr "සියළු" #: ../tools/browser/window.c:286 msgid "Inactive" msgstr "අක්‍රිය" libbonoboui-2.24.5/po/lv.po0000644000076400007640000003206611173072741012451 00000000000000# translation of lv.po to Latvian # Copyright (C) 2006, 2009 Free Software Foundation, Inc. # # Raivis Dejus , 2006, 2009. msgid "" msgstr "" "Project-Id-Version: lv\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2008-11-07 14:28+0100\n" "PO-Revision-Date: 2009-01-24 18:41+0200\n" "Last-Translator: Raivis Dejus \n" "Language-Team: Latvian \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Generator: KBabel 1.11.4\n" "Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2);\n" #: ../bonobo/bonobo-canvas-item.c:680 msgid "corba factory" msgstr "corba ražotne" #: ../bonobo/bonobo-canvas-item.c:681 msgid "The factory pointer" msgstr "Ražotnes punktieris" #: ../bonobo/bonobo-canvas-item.c:690 msgid "corba UI container" msgstr "corba UI saturētājs" #: ../bonobo/bonobo-canvas-item.c:691 msgid "The User interface container" msgstr "Lietotāja saskarnes saturētājs" #: ../bonobo/bonobo-dock-item-grip.c:254 msgid "Dock the toolbar" msgstr "Pieslēgt rīkjoslu" #: ../bonobo/bonobo-dock-item-grip.c:255 msgid "Undock the toolbar" msgstr "Atslēgt rīkjoslu" #: ../bonobo/bonobo-dock-item.c:225 ../bonobo/bonobo-dock-item.c:226 #: ../bonobo/bonobo-ui-toolbar.c:1161 msgid "Shadow type" msgstr "Ēnas tips" #: ../bonobo/bonobo-dock-item.c:236 ../bonobo/bonobo-dock-item.c:237 #: ../bonobo/bonobo-ui-toolbar.c:1105 ../bonobo/bonobo-ui-toolbar.c:1106 msgid "Orientation" msgstr "Novietojums" #: ../bonobo/bonobo-dock-item.c:247 ../bonobo/bonobo-dock-item.c:248 #: ../bonobo/bonobo-ui-toolbar.c:1124 ../bonobo/bonobo-ui-toolbar.c:1125 msgid "Preferred width" msgstr "Vēlamais platums" #: ../bonobo/bonobo-dock-item.c:256 ../bonobo/bonobo-dock-item.c:257 #: ../bonobo/bonobo-ui-toolbar.c:1133 ../bonobo/bonobo-ui-toolbar.c:1134 msgid "Preferred height" msgstr "Vēlamais augstums" #: ../bonobo/bonobo-file-selector-util.c:350 msgid "Select a file to open" msgstr "Izvēlieties failu, ko atvērt" #: ../bonobo/bonobo-file-selector-util.c:378 msgid "Select files to open" msgstr "Izvēlieties failus, ko atvērt" #: ../bonobo/bonobo-file-selector-util.c:407 msgid "Select a filename to save" msgstr "Izvēlieties faila nosaukumu, lai saglabātu" #: ../bonobo/bonobo-plug.c:423 msgid "Event Forwarding" msgstr "Notikumu Pārsūtīšana" #: ../bonobo/bonobo-plug.c:424 msgid "Whether X events should be forwarded" msgstr "Vai X notikumiem jātiek pārsūtītiem" #: ../bonobo/bonobo-selector-widget.c:297 ../bonobo/bonobo-window.c:344 #: ../tools/browser/component-details.c:114 #: ../tools/browser/component-list.c:378 msgid "Name" msgstr "Nosaukums" #: ../bonobo/bonobo-selector-widget.c:319 #: ../tools/browser/component-details.c:115 msgid "Description" msgstr "Apraksts" #: ../bonobo/bonobo-selector.c:343 msgid "Interfaces required" msgstr "Pieprasītie interfeisi" #: ../bonobo/bonobo-selector.c:344 msgid "" "A NULL-terminated array of interfaces which a server must support in order " "to be listed in the selector. Defaults to \"IDL:Bonobo/Embeddable:1.0\" if " "no interfaces are listed" msgstr "" "Ar NULL pātraukts interfeisu masīvs kuri serverim ir jāatbalsta, lai tie " "tiku parādīti izvēlētājā. Noklusētais ir uz \"IDL:Bonobo/Embeddable:1.0\" ja " "interfeisi nav parādīti" #: ../bonobo/bonobo-selector.c:346 msgid "Interface required entry" msgstr "Pieprasīts interfeiss ievads" #: ../bonobo/bonobo-selector.c:347 msgid "One of the interfaces that's required" msgstr "Viens no interfeisiem kas pieprasīts" #: ../bonobo/bonobo-ui-config-widget.c:265 msgid "Visible" msgstr "Redzams" #: ../bonobo/bonobo-ui-config-widget.c:272 msgid "_Show" msgstr "_Rādīt" #: ../bonobo/bonobo-ui-config-widget.c:279 msgid "_Hide" msgstr "_Slēpt" #: ../bonobo/bonobo-ui-config-widget.c:285 msgid "_View tooltips" msgstr "_Skatīt knifus" #: ../bonobo/bonobo-ui-config-widget.c:290 msgid "Toolbars" msgstr "Rīkjoslas" #: ../bonobo/bonobo-ui-config-widget.c:300 msgid "toolbars" msgstr "rīkjoslas" #: ../bonobo/bonobo-ui-config-widget.c:311 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "Look" msgstr "Skatīties" #: ../bonobo/bonobo-ui-config-widget.c:320 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "_Icon" msgstr "_Ikona" #: ../bonobo/bonobo-ui-config-widget.c:326 msgid "_Text and Icon" msgstr "_Teksts un Ikona" #: ../bonobo/bonobo-ui-config-widget.c:332 msgid "Text only" msgstr "Tikai Teksts" #: ../bonobo/bonobo-ui-config-widget.c:338 msgid "_Priority text only" msgstr "Tikai _prioritātes teksts" #: ../bonobo/bonobo-ui-engine.c:91 msgid "Debug" msgstr "Atkļūdot" #: ../bonobo/bonobo-ui-engine.c:91 msgid "_Dump XML" msgstr "_Izmest XML" #: ../bonobo/bonobo-ui-engine.c:92 msgid "Dump the entire UI's XML description to the console" msgstr "Izmest visu LI XML aprakstu konsolē" #: ../bonobo/bonobo-ui-engine-config.c:522 msgid "Configure UI" msgstr "Konfigurēt UI" #: ../bonobo/bonobo-ui-init-gtk.c:131 msgid "Gdk debugging flags to set" msgstr "Uzstādāmie Gdk atkļūdošanas karodziņi" #: ../bonobo/bonobo-ui-init-gtk.c:131 ../bonobo/bonobo-ui-init-gtk.c:134 #: ../bonobo/bonobo-ui-init-gtk.c:162 ../bonobo/bonobo-ui-init-gtk.c:165 msgid "FLAGS" msgstr "FLAGS" #: ../bonobo/bonobo-ui-init-gtk.c:134 msgid "Gdk debugging flags to unset" msgstr "Noņemamie Gdk atkļūdošanas karodziņi" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "X display to use" msgstr "Izmantojamais X displejs" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "DISPLAY" msgstr "DISPLAY" #: ../bonobo/bonobo-ui-init-gtk.c:142 msgid "X screen to use" msgstr "Izmantojamais X ekrāns" #: ../bonobo/bonobo-ui-init-gtk.c:142 msgid "SCREEN" msgstr "SCREEN" #: ../bonobo/bonobo-ui-init-gtk.c:146 msgid "Make X calls synchronous" msgstr "Padarīt X izsaukumus sinhronus" #: ../bonobo/bonobo-ui-init-gtk.c:152 msgid "Don't use X shared memory extension" msgstr "Nelietot X kopējās atmiņas paplašinājumu" #: ../bonobo/bonobo-ui-init-gtk.c:156 msgid "Program name as used by the window manager" msgstr "Programmas nosaukums, ko izmanto logu pārvaldnieks" #: ../bonobo/bonobo-ui-init-gtk.c:156 msgid "NAME" msgstr "NAME" #: ../bonobo/bonobo-ui-init-gtk.c:159 msgid "Program class as used by the window manager" msgstr "Programas klase, ko izmanto logu pārvaldnieks" #: ../bonobo/bonobo-ui-init-gtk.c:159 msgid "CLASS" msgstr "CLASS" #: ../bonobo/bonobo-ui-init-gtk.c:162 msgid "Gtk+ debugging flags to set" msgstr "Uzstādamie Gtk+ atkļūdošanas karodziņi" #: ../bonobo/bonobo-ui-init-gtk.c:165 msgid "Gtk+ debugging flags to unset" msgstr "Noņemamie Gtk+ atkļūdošanas karodziņi" #: ../bonobo/bonobo-ui-init-gtk.c:168 msgid "Make all warnings fatal" msgstr "Padarīt visus brīdinājumus fatālus" #: ../bonobo/bonobo-ui-init-gtk.c:171 msgid "Load an additional Gtk module" msgstr "Ielādēt papildus Gtk moduli" #: ../bonobo/bonobo-ui-init-gtk.c:171 msgid "MODULE" msgstr "MODULE" #: ../bonobo/bonobo-ui-init-gtk.c:187 msgid "GTK+" msgstr "GTK+" #: ../bonobo/bonobo-ui-main.c:278 msgid "Bonobo GUI support" msgstr "Bonobo GUI atbalsts" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "B_oth" msgstr "_Abi" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "T_ext" msgstr "Teksts" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Hide t_ips" msgstr "Slēpt kni_fus" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Show t_ips" msgstr "Rādīt kn_ifus" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "_Hide toolbar" msgstr "_Slēpt rīkjoslu" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "Customi_ze" msgstr "Pār_veidot" #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Customize the toolbar" msgstr "Pārveidot rīkjoslu" #: ../bonobo/bonobo-ui-toolbar.c:1115 msgid "is floating" msgstr "'peldēšana'" #: ../bonobo/bonobo-ui-toolbar.c:1116 msgid "whether the toolbar is floating" msgstr "vai rīkjosla 'peld'" #: ../bonobo/bonobo-ui-toolbar.c:1162 msgid "Style of bevel around the toolbar" msgstr "Konusa tips ap rīkjoslu" #: ../bonobo/bonobo-ui-util.c:599 msgid "Could not display help for this application" msgstr "Nevar parādīt palīdzību šai aplikācijai" #: ../bonobo/bonobo-ui-util.c:641 msgid "_Contents" msgstr "_Saturs" #: ../bonobo/bonobo-ui-util.c:642 msgid "View help for this application" msgstr "Skatīt palīdzību šai aplikācijai" #: ../bonobo/bonobo-window.c:345 msgid "Name of the window - used for configuration serialization." msgstr "Loga nosaukums - izmantots konfigurācijas serializācijai." #: ../bonobo/bonobo-zoomable.c:326 msgid "Zoom level" msgstr "Palielinājuma līmenis" #: ../bonobo/bonobo-zoomable.c:327 msgid "The degree of enlargment" msgstr "Palielinājuma līmenis" #: ../bonobo/bonobo-zoomable.c:335 msgid "Minimum Zoom level" msgstr "Minimālais Palielinājuma līmenis" #: ../bonobo/bonobo-zoomable.c:336 msgid "The minimum degree of enlargment" msgstr "Minimālais palielinājuma līmenis" #: ../bonobo/bonobo-zoomable.c:344 msgid "Maximum Zoom level" msgstr "Maksimālais Palielinājuma līmenis" #: ../bonobo/bonobo-zoomable.c:345 msgid "The maximum degree of enlargment" msgstr "Maksimālais palielinājuma līmenis" #: ../bonobo/bonobo-zoomable.c:353 msgid "Has a minimum Zoom level" msgstr "Ir minimālais Palielinājuma līmenis" #: ../bonobo/bonobo-zoomable.c:354 msgid "Whether we have a valid minimum zoom level" msgstr "Vai ir atļauts minimālais palielinājuma līmenis" #: ../bonobo/bonobo-zoomable.c:361 msgid "Has a maximum Zoom level" msgstr "Ir maksimālais Palielinājuma līmenis" #: ../bonobo/bonobo-zoomable.c:362 msgid "Whether we have a valid maximum zoom level" msgstr "Vai ir atļauts maksimālais palielinājuma līmenis" #: ../bonobo/bonobo-zoomable.c:369 msgid "Is continuous" msgstr "Visu laiku" #: ../bonobo/bonobo-zoomable.c:370 msgid "Whether we zoom continuously (as opposed to jumps)" msgstr "Vai mēs palielinam/samazinam visu laiku (pretēji pa gabaliņam)" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:1 msgid "About this application" msgstr "Par šo aplikāciju" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:2 msgid "Select" msgstr "Izvēlieties" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:3 msgid "_About..." msgstr "_Par..." #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:4 msgid "_Edit" msgstr "_Rediģēt" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:5 #: ../tools/browser/bonobo-browser.xml.h:4 msgid "_File" msgstr "_Fails" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:6 msgid "_Select" msgstr "_Izvēlēties" #: ../samples/bonoboui/hello.c:63 msgid "This does nothing; it is only a demonstration." msgstr "Šis te nedara neko: tā ir tikai demonstrācija." #: ../samples/bonoboui/hello.c:145 msgid "BonoboUI-Hello." msgstr "BonoboUI-Hello." #: ../samples/bonoboui/hello.c:217 msgid "Gnome Hello" msgstr "Gnome Hello" #. Create Label and put it in the Button: #: ../samples/bonoboui/hello.c:272 msgid "Hello, World!" msgstr "Sveiki, Pasaule!" #: ../samples/bonoboui/hello.c:312 msgid "Cannot init libbonoboui code" msgstr "Nevaru inicializēt libbonoboui kodu" #: ../samples/controls/bonobo-sample-controls.c:131 msgid "Could not initialize Bonobo UI" msgstr "Nespēju inicializēt Bonobo UI" #: ../tools/browser/bonobo-browser.desktop.in.h:1 msgid "Bonobo Component Browser" msgstr "Bonobo komponenšu pārlūks" #: ../tools/browser/bonobo-browser.desktop.in.h:2 msgid "Shows available Bonobo components" msgstr "Rādīt pieejamos Bonobo komponentus" #: ../tools/browser/bonobo-browser.xml.h:1 msgid "About this program..." msgstr "Par šo programmu..." #: ../tools/browser/bonobo-browser.xml.h:2 msgid "Close the current window" msgstr "Aizvērt pašreizējo logu" #: ../tools/browser/bonobo-browser.xml.h:3 msgid "Open a new window" msgstr "Atvērt jaunu logu" #: ../tools/browser/bonobo-browser.xml.h:5 msgid "_Help" msgstr "_Palīgs" #. Build the general tab #: ../tools/browser/component-details.c:109 msgid "General" msgstr "Vispārīgi" #: ../tools/browser/component-details.c:116 #: ../tools/browser/component-list.c:398 msgid "IID" msgstr "IID" #: ../tools/browser/component-details.c:117 msgid "Location" msgstr "Atrašanās vieta" #. Build the details tab #: ../tools/browser/component-details.c:167 msgid "Details" msgstr "Detaļas" #: ../tools/browser/component-details.c:168 msgid "Detailed Information" msgstr "Detalizēta informācija" #: ../tools/browser/component-list.c:367 ../tools/browser/window.c:283 msgid "Active" msgstr "Aktīvs" #: ../tools/browser/component-list.c:388 msgid "Type" msgstr "Tips" #: ../tools/browser/window.c:162 msgid "Component Details" msgstr "Komponenta detaļas" #: ../tools/browser/window.c:208 msgid "Bonobo Browser" msgstr "Bonobo pārlūks" #: ../tools/browser/window.c:210 msgid "Copyright 2001, The GNOME Foundation" msgstr "Autortiesības 2001, GNOME fonds" #: ../tools/browser/window.c:211 msgid "Bonobo component browser" msgstr "Bonobo komponenšu pārlūks" #: ../tools/browser/window.c:214 msgid "translator-credits" msgstr "Raivis Dejus " #. create the window #: ../tools/browser/window.c:240 msgid "Component Browser" msgstr "Komponenšu pārlūks" #. Fill out the tool bar #: ../tools/browser/window.c:280 msgid "All" msgstr "Visi" #: ../tools/browser/window.c:286 msgid "Inactive" msgstr "Neaktīvs" libbonoboui-2.24.5/po/ru.po0000664000076400007640000003742111433016366012460 00000000000000# translation of libbonoboui.master.ru.po to Russian # translation of libbonoboui to Russian # Copyright (C) 2001-2003, 2004, 2005, 2006, 2010 Free Software Foundation, Inc. # # Valek Filippov , 2001-2002. # Dmitry G. Mastrukov , 2002-2003. # Leonid Kanter , 2004, 2005, 2006. # Yuri Kozlov , 2010. msgid "" msgstr "" "Project-Id-Version: libbonoboui trunk\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2010-03-19 18:21+0200\n" "PO-Revision-Date: 2010-03-17 20:37+0300\n" "Last-Translator: Yuri Kozlov \n" "Language-Team: Russian \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%" "10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" "X-Generator: KBabel 1.11.4\n" #: ../bonobo/bonobo-canvas-item.c:680 msgid "corba factory" msgstr "фабрика архитектуры corba" #: ../bonobo/bonobo-canvas-item.c:681 msgid "The factory pointer" msgstr "Указатель фабрики" #: ../bonobo/bonobo-canvas-item.c:690 msgid "corba UI container" msgstr "контейнер интерфейса пользователя архитектуры corba" #: ../bonobo/bonobo-canvas-item.c:691 msgid "The User interface container" msgstr "Контейнер интерфейса пользователя" #: ../bonobo/bonobo-dock-item-grip.c:254 msgid "Dock the toolbar" msgstr "Прицепить панель инструментов" #: ../bonobo/bonobo-dock-item-grip.c:255 msgid "Undock the toolbar" msgstr "Отцепить панель инструментов" #: ../bonobo/bonobo-dock-item.c:225 ../bonobo/bonobo-dock-item.c:226 #: ../bonobo/bonobo-ui-toolbar.c:1163 msgid "Shadow type" msgstr "Тип тени" #: ../bonobo/bonobo-dock-item.c:236 ../bonobo/bonobo-dock-item.c:237 #: ../bonobo/bonobo-ui-toolbar.c:1107 ../bonobo/bonobo-ui-toolbar.c:1108 msgid "Orientation" msgstr "Ориентация" #: ../bonobo/bonobo-dock-item.c:247 ../bonobo/bonobo-dock-item.c:248 #: ../bonobo/bonobo-ui-toolbar.c:1126 ../bonobo/bonobo-ui-toolbar.c:1127 msgid "Preferred width" msgstr "Предпочтительная ширина" #: ../bonobo/bonobo-dock-item.c:256 ../bonobo/bonobo-dock-item.c:257 #: ../bonobo/bonobo-ui-toolbar.c:1135 ../bonobo/bonobo-ui-toolbar.c:1136 msgid "Preferred height" msgstr "Предпочтительная высота" #: ../bonobo/bonobo-file-selector-util.c:350 msgid "Select a file to open" msgstr "Выберите файл для открытия" #: ../bonobo/bonobo-file-selector-util.c:378 msgid "Select files to open" msgstr "Выберите файлы для открытия" #: ../bonobo/bonobo-file-selector-util.c:407 msgid "Select a filename to save" msgstr "Выберите имя файла для сохранения" #: ../bonobo/bonobo-plug.c:425 msgid "Event Forwarding" msgstr "Пересылка события" #: ../bonobo/bonobo-plug.c:426 msgid "Whether X events should be forwarded" msgstr "Должны ли пересылаться события X" #: ../bonobo/bonobo-selector-widget.c:300 ../bonobo/bonobo-window.c:347 #: ../tools/browser/component-details.c:108 #: ../tools/browser/component-list.c:369 msgid "Name" msgstr "Имя" #: ../bonobo/bonobo-selector-widget.c:322 #: ../tools/browser/component-details.c:109 msgid "Description" msgstr "Описание" #: ../bonobo/bonobo-selector.c:343 msgid "Interfaces required" msgstr "Требуемые интерфейсы" #: ../bonobo/bonobo-selector.c:344 msgid "" "A NULL-terminated array of interfaces which a server must support in order " "to be listed in the selector. Defaults to \"IDL:Bonobo/Embeddable:1.0\" if " "no interfaces are listed" msgstr "" "Завершаемый нулём массив интерфейсов, который сервер должен поддерживать, " "чтобы быть перечисленным. По умолчанию - \"IDL:Bonobo/Embeddable:1.0\", если " "интерфейсы не перечислены" #: ../bonobo/bonobo-selector.c:346 msgid "Interface required entry" msgstr "Элемент требуемого интерфейса" #: ../bonobo/bonobo-selector.c:347 msgid "One of the interfaces that's required" msgstr "Один из требуемых интерфейсов" #: ../bonobo/bonobo-ui-config-widget.c:267 msgid "Visible" msgstr "Видимость" #: ../bonobo/bonobo-ui-config-widget.c:274 msgid "_Show" msgstr "По_казывать" #: ../bonobo/bonobo-ui-config-widget.c:281 msgid "_Hide" msgstr "_Скрывать" #: ../bonobo/bonobo-ui-config-widget.c:287 msgid "_View tooltips" msgstr "Показывать под_сказки" #: ../bonobo/bonobo-ui-config-widget.c:292 msgid "Toolbars" msgstr "Панели" #: ../bonobo/bonobo-ui-config-widget.c:302 msgid "toolbars" msgstr "панели" #: ../bonobo/bonobo-ui-config-widget.c:313 #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "Look" msgstr "Вид" #: ../bonobo/bonobo-ui-config-widget.c:322 #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "_Icon" msgstr "_Значок" #: ../bonobo/bonobo-ui-config-widget.c:328 msgid "_Text and Icon" msgstr "_Текст и значок" #: ../bonobo/bonobo-ui-config-widget.c:334 msgid "Text only" msgstr "Только текст" #: ../bonobo/bonobo-ui-config-widget.c:340 msgid "_Priority text only" msgstr "То_лько текст" #: ../bonobo/bonobo-ui-engine.c:93 msgid "Debug" msgstr "Отладка" #: ../bonobo/bonobo-ui-engine.c:93 msgid "_Dump XML" msgstr "В_ывести в формате XML" #: ../bonobo/bonobo-ui-engine.c:94 msgid "Dump the entire UI's XML description to the console" msgstr "Вывести всё описание интерфейса на консоль в формате XML" #: ../bonobo/bonobo-ui-engine-config.c:524 msgid "Configure UI" msgstr "Настроить интерфейс" #: ../bonobo/bonobo-ui-init-gtk.c:131 msgid "Gdk debugging flags to set" msgstr "Флаги отладки Gdk, которые надо установить" #: ../bonobo/bonobo-ui-init-gtk.c:131 ../bonobo/bonobo-ui-init-gtk.c:134 #: ../bonobo/bonobo-ui-init-gtk.c:162 ../bonobo/bonobo-ui-init-gtk.c:165 msgid "FLAGS" msgstr "ФЛАГИ" #: ../bonobo/bonobo-ui-init-gtk.c:134 msgid "Gdk debugging flags to unset" msgstr "Флаги отладки системы Gdk, которые надо снять" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "X display to use" msgstr "Дисплей системы X, который надо использовать" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "DISPLAY" msgstr "ДИСПЛЕЙ" #: ../bonobo/bonobo-ui-init-gtk.c:142 msgid "X screen to use" msgstr "Экран системы X, который надо использовать" #: ../bonobo/bonobo-ui-init-gtk.c:142 msgid "SCREEN" msgstr "ЭКРАН" #: ../bonobo/bonobo-ui-init-gtk.c:146 msgid "Make X calls synchronous" msgstr "Выполнять вызовы системы X синхронно" #: ../bonobo/bonobo-ui-init-gtk.c:152 msgid "Don't use X shared memory extension" msgstr "Не использовать расширение \"shared memory\" системы X" #: ../bonobo/bonobo-ui-init-gtk.c:156 msgid "Program name as used by the window manager" msgstr "Наименование программы для использования оконным менеджером" #: ../bonobo/bonobo-ui-init-gtk.c:156 msgid "NAME" msgstr "НАИМЕНОВАНИЕ" #: ../bonobo/bonobo-ui-init-gtk.c:159 msgid "Program class as used by the window manager" msgstr "Класс программы для использования оконным менеджером" #: ../bonobo/bonobo-ui-init-gtk.c:159 msgid "CLASS" msgstr "КЛАСС" #: ../bonobo/bonobo-ui-init-gtk.c:162 msgid "Gtk+ debugging flags to set" msgstr "Флаги отладки системы Gtk+, которые необходимо установить" #: ../bonobo/bonobo-ui-init-gtk.c:165 msgid "Gtk+ debugging flags to unset" msgstr "Флаги отладки системы Gtk+, которые надо снять" #: ../bonobo/bonobo-ui-init-gtk.c:168 msgid "Make all warnings fatal" msgstr "Считать все предупреждения фатальными" #: ../bonobo/bonobo-ui-init-gtk.c:171 msgid "Load an additional Gtk module" msgstr "Загрузить дополнительный модуль системы Gtk" #: ../bonobo/bonobo-ui-init-gtk.c:171 msgid "MODULE" msgstr "МОДУЛЬ" #: ../bonobo/bonobo-ui-init-gtk.c:187 msgid "GTK+" msgstr "GTK+" #: ../bonobo/bonobo-ui-main.c:281 msgid "Bonobo GUI support" msgstr "Поддержка пользовательского интерфейса системы Bonobo" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "B_oth" msgstr "Вс_ё" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "T_ext" msgstr "_Текст" #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Hide t_ips" msgstr "Скрыть под_сказки" #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Show t_ips" msgstr "Показать под_сказки" #: ../bonobo/bonobo-ui-sync-toolbar.c:570 msgid "_Hide toolbar" msgstr "_Скрыть панель" #: ../bonobo/bonobo-ui-sync-toolbar.c:570 msgid "Customi_ze" msgstr "Разно_образить" #: ../bonobo/bonobo-ui-sync-toolbar.c:571 msgid "Customize the toolbar" msgstr "Разнообразить панель" #: ../bonobo/bonobo-ui-toolbar.c:1117 msgid "is floating" msgstr "плавающая" #: ../bonobo/bonobo-ui-toolbar.c:1118 msgid "whether the toolbar is floating" msgstr "является ли панель плавающей" #: ../bonobo/bonobo-ui-toolbar.c:1164 msgid "Style of bevel around the toolbar" msgstr "Стиль обрамления вокруг панели" #: ../bonobo/bonobo-ui-util.c:602 msgid "Could not display help for this application" msgstr "Не удалось показать справку для этого приложения" #: ../bonobo/bonobo-ui-util.c:644 msgid "_Contents" msgstr "_Содержание справки" #: ../bonobo/bonobo-ui-util.c:645 msgid "View help for this application" msgstr "Вызвать справку для этого приложения" #: ../bonobo/bonobo-window.c:348 msgid "Name of the window - used for configuration serialization." msgstr "Наименование окна - используется для сериализации конфигурации." #: ../bonobo/bonobo-zoomable.c:326 msgid "Zoom level" msgstr "Масштаб" #: ../bonobo/bonobo-zoomable.c:327 msgid "The degree of enlargment" msgstr "Степень увеличения" #: ../bonobo/bonobo-zoomable.c:335 msgid "Minimum Zoom level" msgstr "Минимальный масштаб" #: ../bonobo/bonobo-zoomable.c:336 msgid "The minimum degree of enlargment" msgstr "Минимальная степень увеличения" #: ../bonobo/bonobo-zoomable.c:344 msgid "Maximum Zoom level" msgstr "Максимальный масштаб" #: ../bonobo/bonobo-zoomable.c:345 msgid "The maximum degree of enlargment" msgstr "Максимальная степень увеличения" #: ../bonobo/bonobo-zoomable.c:353 msgid "Has a minimum Zoom level" msgstr "Имеет минимальный масштаб" #: ../bonobo/bonobo-zoomable.c:354 msgid "Whether we have a valid minimum zoom level" msgstr "Имеется ли допустимый минимальный масштаб" #: ../bonobo/bonobo-zoomable.c:361 msgid "Has a maximum Zoom level" msgstr "Имеет максимальный масштаб" #: ../bonobo/bonobo-zoomable.c:362 msgid "Whether we have a valid maximum zoom level" msgstr "Имеется ли допустимый максимальный масштаб" #: ../bonobo/bonobo-zoomable.c:369 msgid "Is continuous" msgstr "Непрерывный" #: ../bonobo/bonobo-zoomable.c:370 msgid "Whether we zoom continuously (as opposed to jumps)" msgstr "Непрерывен ли масштаб (в отличие от дискретного)" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:1 msgid "About this application" msgstr "Об этом приложении" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:2 msgid "Select" msgstr "Выбрать" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:3 msgid "_About..." msgstr "_О программе..." #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:4 msgid "_Edit" msgstr "_Правка" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:5 #: ../tools/browser/bonobo-browser.xml.h:4 msgid "_File" msgstr "_Файл" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:6 msgid "_Select" msgstr "_Выбрать" #: ../samples/bonoboui/hello.c:65 msgid "This does nothing; it is only a demonstration." msgstr "Ничего не делает -- это просто демонстрация." #: ../samples/bonoboui/hello.c:147 msgid "BonoboUI-Hello." msgstr "BonoboUI-Hello." #: ../samples/bonoboui/hello.c:219 msgid "Gnome Hello" msgstr "Gnome Hello" #. Create Label and put it in the Button: #: ../samples/bonoboui/hello.c:274 msgid "Hello, World!" msgstr "Здравствуй, мир!" #: ../samples/bonoboui/hello.c:314 msgid "Cannot init libbonoboui code" msgstr "Невозможно инициализировать код библиотеки libbonoboui" #: ../samples/controls/bonobo-sample-controls.c:133 msgid "Could not initialize Bonobo UI" msgstr "Не удалось инициализировать пользовательский интерфейс системы Bonobo" #: ../tools/browser/bonobo-browser.desktop.in.h:1 msgid "Bonobo Component Browser" msgstr "Обозреватель компонентов Bonobo" #: ../tools/browser/bonobo-browser.desktop.in.h:2 msgid "Shows available Bonobo components" msgstr "Показывает доступные компоненты Bonobo" #: ../tools/browser/bonobo-browser.xml.h:1 msgid "About this program..." msgstr "О этой программе..." #: ../tools/browser/bonobo-browser.xml.h:2 msgid "Close the current window" msgstr "Закрыть текущее окно" #: ../tools/browser/bonobo-browser.xml.h:3 msgid "Open a new window" msgstr "Открыть новое окно" #: ../tools/browser/bonobo-browser.xml.h:5 msgid "_Help" msgstr "_Справка" #. Build the general tab #: ../tools/browser/component-details.c:103 msgid "General" msgstr "Общие" #: ../tools/browser/component-details.c:110 #: ../tools/browser/component-list.c:389 msgid "IID" msgstr "IID" #: ../tools/browser/component-details.c:111 msgid "Location" msgstr "Адрес" #. Build the details tab #: ../tools/browser/component-details.c:161 msgid "Details" msgstr "Подробно" #: ../tools/browser/component-details.c:162 msgid "Detailed Information" msgstr "Подробная информация" #: ../tools/browser/component-list.c:358 ../tools/browser/window.c:283 msgid "Active" msgstr "Активен" #: ../tools/browser/component-list.c:379 msgid "Type" msgstr "Тип" #: ../tools/browser/window.c:162 msgid "Component Details" msgstr "Описание компонента" #: ../tools/browser/window.c:208 msgid "Bonobo Browser" msgstr "Обозреватель Bonobo" #: ../tools/browser/window.c:210 msgid "Copyright 2001, The GNOME Foundation" msgstr "Copyright 2001, The GNOME Foundation" #: ../tools/browser/window.c:211 msgid "Bonobo component browser" msgstr "Обозреватель компонентов Bonobo" #: ../tools/browser/window.c:214 msgid "translator-credits" msgstr "" "Valek Filippov \n" "Dmitry G. Mastrukov\n" "Леонид Кантер " #. create the window #: ../tools/browser/window.c:240 msgid "Component Browser" msgstr "Обозреватель компонентов" #. Fill out the tool bar #: ../tools/browser/window.c:280 msgid "All" msgstr "Все" #: ../tools/browser/window.c:286 msgid "Inactive" msgstr "Неактивен" libbonoboui-2.24.5/po/ka.po0000644000076400007640000004164711173072741012430 00000000000000# translation of libbonoboui.HEAD.po to Georgian # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Vladimer Sichinava , 2006. msgid "" msgstr "" "Project-Id-Version: libbonoboui.HEAD\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2006-09-08 09:17+0200\n" "PO-Revision-Date: 2006-09-08 13:32+0200\n" "Last-Translator: Vladimer Sichinava \n" "Language-Team: Georgian \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Poedit-Language: Georgian\n" "X-Poedit-Country: GEORGIA\n" "X-Generator: KBabel 1.11.2\n" "Plural-Forms: nplurals=1; plural=0\n" #: ../bonobo/bonobo-canvas-item.c:683 msgid "corba factory" msgstr "corba-ს საწარმო" #: ../bonobo/bonobo-canvas-item.c:684 msgid "The factory pointer" msgstr "საწარმოს მაჩვენებელი" #: ../bonobo/bonobo-canvas-item.c:693 msgid "corba UI container" msgstr "corba UI კონტეინერი" #: ../bonobo/bonobo-canvas-item.c:694 msgid "The User interface container" msgstr "მომხმარებლის ინტერფეისის კონტეინერი" #: ../bonobo/bonobo-dock-item-grip.c:257 msgid "Dock the toolbar" msgstr "პულტის მიმაგრება" #: ../bonobo/bonobo-dock-item-grip.c:258 msgid "Undock the toolbar" msgstr "პულტის გათავისუფლება" #: ../bonobo/bonobo-dock-item.c:230 ../bonobo/bonobo-dock-item.c:231 #: ../bonobo/bonobo-ui-toolbar.c:1164 msgid "Shadow type" msgstr "დჩრდილვის ტიპი" #: ../bonobo/bonobo-dock-item.c:241 ../bonobo/bonobo-dock-item.c:242 #: ../bonobo/bonobo-ui-toolbar.c:1108 ../bonobo/bonobo-ui-toolbar.c:1109 msgid "Orientation" msgstr "ორიენტაცია" #: ../bonobo/bonobo-dock-item.c:252 ../bonobo/bonobo-dock-item.c:253 #: ../bonobo/bonobo-ui-toolbar.c:1127 ../bonobo/bonobo-ui-toolbar.c:1128 msgid "Preferred width" msgstr "სასურველი სიგანე" #: ../bonobo/bonobo-dock-item.c:261 ../bonobo/bonobo-dock-item.c:262 #: ../bonobo/bonobo-ui-toolbar.c:1136 ../bonobo/bonobo-ui-toolbar.c:1137 msgid "Preferred height" msgstr "სასურველი სიმაღლე" #: ../bonobo/bonobo-file-selector-util.c:357 msgid "Select a file to open" msgstr "გასახსენლი ფაილის შერჩევა" #: ../bonobo/bonobo-file-selector-util.c:385 msgid "Select files to open" msgstr "გასახსენლი ფაილების შერჩევა" #: ../bonobo/bonobo-file-selector-util.c:414 msgid "Select a filename to save" msgstr "შესანახი ფაილის სახელის შერჩევა" #: ../bonobo/bonobo-plug.c:425 msgid "Event Forwarding" msgstr "მოვლენის გადაგზავნა" #: ../bonobo/bonobo-plug.c:426 msgid "Whether X events should be forwarded" msgstr "გადაიგზავნოს თუ არა X მოვლენები" #: ../bonobo/bonobo-selector-widget.c:302 ../bonobo/bonobo-window.c:346 #: ../tools/browser/component-details.c:114 #: ../tools/browser/component-list.c:378 msgid "Name" msgstr "სახელი" #: ../bonobo/bonobo-selector-widget.c:324 #: ../tools/browser/component-details.c:115 msgid "Description" msgstr "აღწერილობა" #: ../bonobo/bonobo-selector.c:345 msgid "Interfaces required" msgstr "საჭირო ინტერფეისები" #: ../bonobo/bonobo-selector.c:346 msgid "" "A NULL-terminated array of interfaces which a server must support in order " "to be listed in the selector. Defaults to \"IDL:Bonobo/Embeddable:1.0\" if " "no interfaces are listed" msgstr "" "NULL-ით დაბოლოებული ინტერფეისების მასივი, რომელტა მხარდაჭერაც სერვერიდან " "აუცილებელია, რათა სელექტორის სიაში იყოს. თუ ინტერფეისების სია არაა, " "იგულისხმება \"IDL:Bonobo/Embeddable:1.0\"." #: ../bonobo/bonobo-selector.c:348 msgid "Interface required entry" msgstr "საჭირო ინტერფეისის ელემენტი" #: ../bonobo/bonobo-selector.c:349 msgid "One of the interfaces that's required" msgstr "ერთერთი საჭირო ინტერფეისი" #: ../bonobo/bonobo-ui-config-widget.c:268 msgid "Visible" msgstr "ხილული" #: ../bonobo/bonobo-ui-config-widget.c:275 msgid "_Show" msgstr "_ჩვენება" #: ../bonobo/bonobo-ui-config-widget.c:282 msgid "_Hide" msgstr "_დამალვა" #: ../bonobo/bonobo-ui-config-widget.c:288 msgid "_View tooltips" msgstr "_მინიშნებების ჩვენება" #: ../bonobo/bonobo-ui-config-widget.c:293 msgid "Toolbars" msgstr "პულტები" #: ../bonobo/bonobo-ui-config-widget.c:303 msgid "toolbars" msgstr "პულტები" #: ../bonobo/bonobo-ui-config-widget.c:314 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "Look" msgstr "ხედი" #: ../bonobo/bonobo-ui-config-widget.c:323 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "_Icon" msgstr "_ხატულა" #: ../bonobo/bonobo-ui-config-widget.c:329 msgid "_Text and Icon" msgstr "_ტექსტი და ხატულები" #: ../bonobo/bonobo-ui-config-widget.c:335 msgid "Text only" msgstr "მხოლოდ ტექსტი" #: ../bonobo/bonobo-ui-config-widget.c:341 msgid "_Priority text only" msgstr "_მხოლოდ ტექსტი" #: ../bonobo/bonobo-ui-engine.c:91 msgid "Debug" msgstr "გამართვა" #: ../bonobo/bonobo-ui-engine.c:91 msgid "_Dump XML" msgstr "_XML გამოტანა" #: ../bonobo/bonobo-ui-engine.c:92 msgid "Dump the entire UI's XML description to the console" msgstr "UI-ს სრული XML აღწერილობის ეკრანზე გამოტანა" #: ../bonobo/bonobo-ui-engine-config.c:522 msgid "Configure UI" msgstr "UI კონფიგურაცია" #: ../bonobo/bonobo-ui-init-gtk.c:126 msgid "Gdk debugging flags to set" msgstr "Gdk გამართვის მოსანიშნი ალმები" #: ../bonobo/bonobo-ui-init-gtk.c:126 ../bonobo/bonobo-ui-init-gtk.c:129 #: ../bonobo/bonobo-ui-init-gtk.c:157 ../bonobo/bonobo-ui-init-gtk.c:160 msgid "FLAGS" msgstr "ალმები" #: ../bonobo/bonobo-ui-init-gtk.c:129 msgid "Gdk debugging flags to unset" msgstr "Gdk გამართვის მოსახსნელი ალმები" #: ../bonobo/bonobo-ui-init-gtk.c:133 msgid "X display to use" msgstr "გამოსაყენებელი X დისპლეი" #: ../bonobo/bonobo-ui-init-gtk.c:133 msgid "DISPLAY" msgstr "დისპლეი" #: ../bonobo/bonobo-ui-init-gtk.c:137 msgid "X screen to use" msgstr "გამოსაყენებელი X ეკრანი" #: ../bonobo/bonobo-ui-init-gtk.c:137 msgid "SCREEN" msgstr "ეკრანი" #: ../bonobo/bonobo-ui-init-gtk.c:141 msgid "Make X calls synchronous" msgstr "X გამოძახების სინქრონიზება" #: ../bonobo/bonobo-ui-init-gtk.c:147 msgid "Don't use X shared memory extension" msgstr "მეხსიერების X გაზიარების პაკეტის გარეშე" #: ../bonobo/bonobo-ui-init-gtk.c:151 msgid "Program name as used by the window manager" msgstr "პროგრამის სახელი, როგორც ფანჯრის მმართველის მიერ გამოიყენება" #: ../bonobo/bonobo-ui-init-gtk.c:151 msgid "NAME" msgstr "სახელი" #: ../bonobo/bonobo-ui-init-gtk.c:154 msgid "Program class as used by the window manager" msgstr "პროგრამის კლასი, როგორც ფანჯრის მმართველის მიერ გამოიყენება" #: ../bonobo/bonobo-ui-init-gtk.c:154 msgid "CLASS" msgstr "კლასი" #: ../bonobo/bonobo-ui-init-gtk.c:157 msgid "Gtk+ debugging flags to set" msgstr "Gtk+ გამართვის მოსანიშნი ალმები" #: ../bonobo/bonobo-ui-init-gtk.c:160 msgid "Gtk+ debugging flags to unset" msgstr "Gtk+ გამართვის მოსახსნელი ალმები" #: ../bonobo/bonobo-ui-init-gtk.c:163 msgid "Make all warnings fatal" msgstr "ყველა გაფრთხილების კრიტიკულად მითითება" #: ../bonobo/bonobo-ui-init-gtk.c:166 msgid "Load an additional Gtk module" msgstr "დამატებითი Gtk მოდულის ჩატვირთვა" #: ../bonobo/bonobo-ui-init-gtk.c:166 msgid "MODULE" msgstr "მოდული" #: ../bonobo/bonobo-ui-init-gtk.c:182 msgid "GTK+" msgstr "GTK+" #: ../bonobo/bonobo-ui-main.c:278 msgid "Bonobo GUI support" msgstr "Bonobo GUI მხარდაჭერა" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "B_oth" msgstr "_ორივე" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "T_ext" msgstr "ტე_ქსტი" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Hide t_ips" msgstr "მინიშნებების _დამალვა" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Show t_ips" msgstr "მინი_შნებების _დამალვა" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "_Hide toolbar" msgstr "_პულტის დამალვა" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "Customi_ze" msgstr "მო_რგება" #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Customize the toolbar" msgstr "პულტის მორგება" #: ../bonobo/bonobo-ui-toolbar.c:1118 msgid "is floating" msgstr "მოდრეიფე" #: ../bonobo/bonobo-ui-toolbar.c:1119 msgid "whether the toolbar is floating" msgstr "არის თუ არა პულტი მოდრეიფე" #: ../bonobo/bonobo-ui-toolbar.c:1165 msgid "Style of bevel around the toolbar" msgstr "პულტის გაფორმების სტილი" #: ../bonobo/bonobo-ui-util.c:630 msgid "_Contents" msgstr "_შიგთავსი" #: ../bonobo/bonobo-ui-util.c:631 msgid "View help for this application" msgstr "ამ პროგრამის დახმარების ნახვა" #: ../bonobo/bonobo-window.c:347 msgid "Name of the window - used for configuration serialization." msgstr "ფანჯრის სახელი - გამოიყენება კონფიგურაციის სერიალიზაციისთვის." #: ../bonobo/bonobo-zoomable.c:326 msgid "Zoom level" msgstr "მასშტაბის სიდიდე" #: ../bonobo/bonobo-zoomable.c:327 msgid "The degree of enlargment" msgstr "გაზრდის ხარისხი" #: ../bonobo/bonobo-zoomable.c:335 msgid "Minimum Zoom level" msgstr "მასშტაბის მინიმალური სიდიდე" #: ../bonobo/bonobo-zoomable.c:336 msgid "The minimum degree of enlargment" msgstr "გაზრდის მინიმალური ხარისხი" #: ../bonobo/bonobo-zoomable.c:344 msgid "Maximum Zoom level" msgstr "მასშტაბის მაქსიმალური სიდიდე" #: ../bonobo/bonobo-zoomable.c:345 msgid "The maximum degree of enlargment" msgstr "გაზრდის მაქსიმალური ხარისხი" #: ../bonobo/bonobo-zoomable.c:353 msgid "Has a minimum Zoom level" msgstr "აქვს მასშტაბის მინიმალური სიდიდე" #: ../bonobo/bonobo-zoomable.c:354 msgid "Whether we have a valid minimum zoom level" msgstr "გვაქვს თუ არა მასშტაბის მართებული მინიმალური სიდიდე" #: ../bonobo/bonobo-zoomable.c:361 msgid "Has a maximum Zoom level" msgstr "აქვს მასშტაბის მაქსიმალური სიდიდე" #: ../bonobo/bonobo-zoomable.c:362 msgid "Whether we have a valid maximum zoom level" msgstr "გვაქვს თუ არა მასშტაბის მართებული მაქსიმალური სიდიდე" #: ../bonobo/bonobo-zoomable.c:369 msgid "Is continuous" msgstr "უწყვეტია" #: ../bonobo/bonobo-zoomable.c:370 msgid "Whether we zoom continuously (as opposed to jumps)" msgstr "არის თუ არა მასშტაბი უწყვეტი (წყვეტილის საპირისპიროდ)" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:1 msgid "About this application" msgstr "ამ პროგრამის შესახებ" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:2 msgid "Select" msgstr "არჩევა" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:3 msgid "_About..." msgstr "_პროგრამის შესახებ..." #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:4 msgid "_Edit" msgstr "_რედაქტირება" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:5 #: ../tools/browser/bonobo-browser.xml.h:4 msgid "_File" msgstr "_ფაილი" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:6 msgid "_Select" msgstr "_არჩევა" #: ../samples/bonoboui/hello.c:63 msgid "This does nothing; it is only a demonstration." msgstr "ეს მხოლოდ დემონსტრაციაა" #: ../samples/bonoboui/hello.c:145 msgid "BonoboUI-Hello." msgstr "BonoboUI მისალმება." #: ../samples/bonoboui/hello.c:217 msgid "Gnome Hello" msgstr "Gnome მისალმება" #. Create Label and put it in the Button: #: ../samples/bonoboui/hello.c:272 msgid "Hello, World!" msgstr "მოგესალმები, მსოფლიო!" #: ../samples/bonoboui/hello.c:312 msgid "Cannot init libbonoboui code" msgstr "libbonoboui კოდის ინიციალიზება ვერ ხერხდება" #: ../samples/controls/bonobo-sample-controls.c:131 msgid "Could not initialize Bonobo UI" msgstr "Bonobo UI-ს ინიციალიზება ვერ ხერხდება" #: ../tools/browser/bonobo-browser.desktop.in.h:1 msgid "Bonobo Component Browser" msgstr "Bonobo კომპონენტების გზამკვლევი" #: ../tools/browser/bonobo-browser.desktop.in.h:2 msgid "Shows available Bonobo components" msgstr "შესაძლო Bonobo კომპონენტების ჩვენება" #: ../tools/browser/bonobo-browser.xml.h:1 msgid "About this program..." msgstr "ამ პროგრამის შესახებ..." #: ../tools/browser/bonobo-browser.xml.h:2 msgid "Close the current window" msgstr "მიმდინარე ფანჯრის დახურვა" #: ../tools/browser/bonobo-browser.xml.h:3 msgid "Open a new window" msgstr "ახალი ფანჯრის გახსნა" #: ../tools/browser/bonobo-browser.xml.h:5 msgid "_Help" msgstr "_დახმარება" #. Build the general tab #: ../tools/browser/component-details.c:109 msgid "General" msgstr "ზოგადი" #: ../tools/browser/component-details.c:116 #: ../tools/browser/component-list.c:398 msgid "IID" msgstr "IID" #: ../tools/browser/component-details.c:117 msgid "Location" msgstr "მისამართი" #. Build the details tab #: ../tools/browser/component-details.c:167 msgid "Details" msgstr "დეტალები" #: ../tools/browser/component-details.c:168 msgid "Detailed Information" msgstr "დეტალური ინფორმაცია" #: ../tools/browser/component-list.c:367 ../tools/browser/window.c:283 msgid "Active" msgstr "აცტიური" #: ../tools/browser/component-list.c:388 msgid "Type" msgstr "ტიპი" #: ../tools/browser/window.c:162 msgid "Component Details" msgstr "კომპონენტის დეტალები" #: ../tools/browser/window.c:208 msgid "Bonobo Browser" msgstr "Bonobo გზამკვლევი" #: ../tools/browser/window.c:210 msgid "Copyright 2001, The GNOME Foundation" msgstr "საავტორო უფლება 2001, GNOME ფონდი" #: ../tools/browser/window.c:211 msgid "Bonobo component browser" msgstr "Bonobo კომპონენტების გზამკვლევი" #: ../tools/browser/window.c:214 msgid "translator-credits" msgstr "Gia Shervashidze " #. create the window #: ../tools/browser/window.c:240 msgid "Component Browser" msgstr "კომპონენტების გზამკვლევი" #. Fill out the tool bar #: ../tools/browser/window.c:280 msgid "All" msgstr "ყველა" #: ../tools/browser/window.c:286 msgid "Inactive" msgstr "პასიური" libbonoboui-2.24.5/po/sr.po0000644000076400007640000003701411173072741012452 00000000000000# Serbian translation of libbonoboui # Courtesy of Prevod.org team (http://www.prevod.org/) -- 2003, 2004, 2005. # # This file is distributed under the same license as the libbonoboui package. # # Maintainer: Вељко М. Станојевић # Reviewed on 2004-02-03 by: Данило Шеган # msgid "" msgstr "" "Project-Id-Version: libbonoboui\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2008-09-14 18:01+0200\n" "PO-Revision-Date: 2005-07-09 11:21+0200\n" "Last-Translator: Veljko M. Stanojevic \n" "Language-Team: Serbian (sr) \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && " "n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n" #: ../bonobo/bonobo-canvas-item.c:680 msgid "corba factory" msgstr "corba творница" #: ../bonobo/bonobo-canvas-item.c:681 msgid "The factory pointer" msgstr "Показивач творнице" #: ../bonobo/bonobo-canvas-item.c:690 msgid "corba UI container" msgstr "садржалац corba корисничког сучеља" #: ../bonobo/bonobo-canvas-item.c:691 msgid "The User interface container" msgstr "Садржалац корисничког сучеља" #: ../bonobo/bonobo-dock-item-grip.c:255 msgid "Dock the toolbar" msgstr "Прикачи траку са алатима" #: ../bonobo/bonobo-dock-item-grip.c:256 msgid "Undock the toolbar" msgstr "Откачи траку са алатима" #: ../bonobo/bonobo-dock-item.c:228 ../bonobo/bonobo-dock-item.c:229 #: ../bonobo/bonobo-ui-toolbar.c:1161 msgid "Shadow type" msgstr "Врста сенке" #: ../bonobo/bonobo-dock-item.c:239 ../bonobo/bonobo-dock-item.c:240 #: ../bonobo/bonobo-ui-toolbar.c:1105 ../bonobo/bonobo-ui-toolbar.c:1106 msgid "Orientation" msgstr "Усмерење" #: ../bonobo/bonobo-dock-item.c:250 ../bonobo/bonobo-dock-item.c:251 #: ../bonobo/bonobo-ui-toolbar.c:1124 ../bonobo/bonobo-ui-toolbar.c:1125 msgid "Preferred width" msgstr "Жељена ширина" #: ../bonobo/bonobo-dock-item.c:259 ../bonobo/bonobo-dock-item.c:260 #: ../bonobo/bonobo-ui-toolbar.c:1133 ../bonobo/bonobo-ui-toolbar.c:1134 msgid "Preferred height" msgstr "Жељена висина" #: ../bonobo/bonobo-file-selector-util.c:355 msgid "Select a file to open" msgstr "Одаберите датотеку за отварање" #: ../bonobo/bonobo-file-selector-util.c:383 msgid "Select files to open" msgstr "Одаберите датотеке за отварање" #: ../bonobo/bonobo-file-selector-util.c:412 msgid "Select a filename to save" msgstr "Одаберите име датотеке за снимање" #: ../bonobo/bonobo-plug.c:423 msgid "Event Forwarding" msgstr "Прослеђивање догађаја" #: ../bonobo/bonobo-plug.c:424 msgid "Whether X events should be forwarded" msgstr "Да ли треба проследити Икс догађаје" #: ../bonobo/bonobo-selector-widget.c:297 ../bonobo/bonobo-window.c:344 #: ../tools/browser/component-details.c:114 #: ../tools/browser/component-list.c:378 msgid "Name" msgstr "Име" #: ../bonobo/bonobo-selector-widget.c:319 #: ../tools/browser/component-details.c:115 msgid "Description" msgstr "Опис" #: ../bonobo/bonobo-selector.c:343 msgid "Interfaces required" msgstr "Неопходне спреге" #: ../bonobo/bonobo-selector.c:344 msgid "" "A NULL-terminated array of interfaces which a server must support in order " "to be listed in the selector. Defaults to \"IDL:Bonobo/Embeddable:1.0\" if " "no interfaces are listed" msgstr "" "Празном ниском (NULL) завршени низ спрега које сервер мора подржавати да би " "био наведен у избирачу. Подразумевана вредност је „IDL:Bonobo/" "Embeddable:1.0“ уколико ниједна спрега није наведена" #: ../bonobo/bonobo-selector.c:346 msgid "Interface required entry" msgstr "Упис неопходне спреге" #: ../bonobo/bonobo-selector.c:347 msgid "One of the interfaces that's required" msgstr "Једна од неопходних спрега" #: ../bonobo/bonobo-ui-config-widget.c:265 msgid "Visible" msgstr "Видљиво" #: ../bonobo/bonobo-ui-config-widget.c:272 msgid "_Show" msgstr "_Прикажи" #: ../bonobo/bonobo-ui-config-widget.c:279 msgid "_Hide" msgstr "_Сакриј" # tooltip -> облачић #: ../bonobo/bonobo-ui-config-widget.c:285 msgid "_View tooltips" msgstr "По_гледај савете" #: ../bonobo/bonobo-ui-config-widget.c:290 msgid "Toolbars" msgstr "Траке са алатима" #: ../bonobo/bonobo-ui-config-widget.c:300 msgid "toolbars" msgstr "траке са алатима" #: ../bonobo/bonobo-ui-config-widget.c:311 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "Look" msgstr "Изглед" #: ../bonobo/bonobo-ui-config-widget.c:320 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "_Icon" msgstr "_Икона" #: ../bonobo/bonobo-ui-config-widget.c:326 msgid "_Text and Icon" msgstr "_Текст и икона" #: ../bonobo/bonobo-ui-config-widget.c:332 msgid "Text only" msgstr "Само текст" #: ../bonobo/bonobo-ui-config-widget.c:338 msgid "_Priority text only" msgstr "Само _важан текст" #: ../bonobo/bonobo-ui-engine.c:91 msgid "Debug" msgstr "Отклањање грешака" #: ../bonobo/bonobo-ui-engine.c:91 msgid "_Dump XML" msgstr "Из_баци XML" #: ../bonobo/bonobo-ui-engine.c:92 msgid "Dump the entire UI's XML description to the console" msgstr "Избаци сав опис корисничког сучеља као XML на конзолу" #: ../bonobo/bonobo-ui-engine-config.c:522 msgid "Configure UI" msgstr "Подешавање корисничког сучеља" #: ../bonobo/bonobo-ui-init-gtk.c:131 msgid "Gdk debugging flags to set" msgstr "Које Гдк заставице за отклањање грешки поставити" #: ../bonobo/bonobo-ui-init-gtk.c:131 ../bonobo/bonobo-ui-init-gtk.c:134 #: ../bonobo/bonobo-ui-init-gtk.c:162 ../bonobo/bonobo-ui-init-gtk.c:165 msgid "FLAGS" msgstr "АРГУМЕНТИ" #: ../bonobo/bonobo-ui-init-gtk.c:134 msgid "Gdk debugging flags to unset" msgstr "Које Гдк аргументе за отклањање грешки склонити" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "X display to use" msgstr "Који Икс монитор користити" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "DISPLAY" msgstr "МОНИТОР" #: ../bonobo/bonobo-ui-init-gtk.c:142 msgid "X screen to use" msgstr "Икс екран који ће се користити" #: ../bonobo/bonobo-ui-init-gtk.c:142 msgid "SCREEN" msgstr "ЕКРАН" #: ../bonobo/bonobo-ui-init-gtk.c:146 msgid "Make X calls synchronous" msgstr "Усклади Икс позиве" #: ../bonobo/bonobo-ui-init-gtk.c:152 msgid "Don't use X shared memory extension" msgstr "Не користи проширење за дељену меморију Икса" #: ../bonobo/bonobo-ui-init-gtk.c:156 msgid "Program name as used by the window manager" msgstr "Назив програма који користи управљач прозорима" #: ../bonobo/bonobo-ui-init-gtk.c:156 msgid "NAME" msgstr "НАЗИВ" #: ../bonobo/bonobo-ui-init-gtk.c:159 msgid "Program class as used by the window manager" msgstr "Класа програма коју користи управљач прозорима" #: ../bonobo/bonobo-ui-init-gtk.c:159 msgid "CLASS" msgstr "КЛАСА" #: ../bonobo/bonobo-ui-init-gtk.c:162 msgid "Gtk+ debugging flags to set" msgstr "Које Гтк+ заставице за отклањање грешки поставити" #: ../bonobo/bonobo-ui-init-gtk.c:165 msgid "Gtk+ debugging flags to unset" msgstr "Које Гтк+ заставице за отклањање грешки склонити" #: ../bonobo/bonobo-ui-init-gtk.c:168 msgid "Make all warnings fatal" msgstr "Учини сва упозорења кобним" #: ../bonobo/bonobo-ui-init-gtk.c:171 msgid "Load an additional Gtk module" msgstr "Учитај додатни Гтк модул" #: ../bonobo/bonobo-ui-init-gtk.c:171 msgid "MODULE" msgstr "МОДУЛ" #: ../bonobo/bonobo-ui-init-gtk.c:187 msgid "GTK+" msgstr "ГТК+" #: ../bonobo/bonobo-ui-main.c:278 msgid "Bonobo GUI support" msgstr "Бонобо подршка за графичко корисничко сучеље" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "B_oth" msgstr "_Оба" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "T_ext" msgstr "Т_екст" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Hide t_ips" msgstr "Сакриј с_авете" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Show t_ips" msgstr "Прикажи са_вете" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "_Hide toolbar" msgstr "_Сакриј траку са алатима" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "Customi_ze" msgstr "Прила_годи" #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Customize the toolbar" msgstr "Прилагоди траку са алатима" #: ../bonobo/bonobo-ui-toolbar.c:1115 msgid "is floating" msgstr "је плутајућа" #: ../bonobo/bonobo-ui-toolbar.c:1116 msgid "whether the toolbar is floating" msgstr "да ли је трака са алатима плутајућа" #: ../bonobo/bonobo-ui-toolbar.c:1162 msgid "Style of bevel around the toolbar" msgstr "Изглед косе ивице око траке са алатима" #: ../bonobo/bonobo-ui-util.c:601 msgid "Could not display help for this application" msgstr "Не могу да прикажем помоћ за овај програм" #: ../bonobo/bonobo-ui-util.c:643 msgid "_Contents" msgstr "_Садржај" #: ../bonobo/bonobo-ui-util.c:644 msgid "View help for this application" msgstr "Погледај помоћ за овај програм" #: ../bonobo/bonobo-window.c:345 msgid "Name of the window - used for configuration serialization." msgstr "Назив прозора — користи се за серијализацију подешавања." #: ../bonobo/bonobo-zoomable.c:326 msgid "Zoom level" msgstr "Ниво увећања" #: ../bonobo/bonobo-zoomable.c:327 msgid "The degree of enlargment" msgstr "Степен увећања" #: ../bonobo/bonobo-zoomable.c:335 msgid "Minimum Zoom level" msgstr "Најмањи ниво увећања" #: ../bonobo/bonobo-zoomable.c:336 msgid "The minimum degree of enlargment" msgstr "Најмањи степен увећања" #: ../bonobo/bonobo-zoomable.c:344 msgid "Maximum Zoom level" msgstr "Највећи ниво увећања" #: ../bonobo/bonobo-zoomable.c:345 msgid "The maximum degree of enlargment" msgstr "Највећи степен увећања" #: ../bonobo/bonobo-zoomable.c:353 msgid "Has a minimum Zoom level" msgstr "Има најнижи ниво увеличања" #: ../bonobo/bonobo-zoomable.c:354 msgid "Whether we have a valid minimum zoom level" msgstr "Да ли имамо исправан најмањи ниво увећања" #: ../bonobo/bonobo-zoomable.c:361 msgid "Has a maximum Zoom level" msgstr "Има највећи ниво увећања" #: ../bonobo/bonobo-zoomable.c:362 msgid "Whether we have a valid maximum zoom level" msgstr "Да ли имамо исправан највећи ниво увећања" #: ../bonobo/bonobo-zoomable.c:369 msgid "Is continuous" msgstr "Непрекидан је" #: ../bonobo/bonobo-zoomable.c:370 msgid "Whether we zoom continuously (as opposed to jumps)" msgstr "Да ли непрекидно увећавамо и умањујемо (насупрот по корацима)" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:1 msgid "About this application" msgstr "О овом програму" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:2 msgid "Select" msgstr "Одабери" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:3 msgid "_About..." msgstr "_О програму..." #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:4 msgid "_Edit" msgstr "_Уређивање" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:5 #: ../tools/browser/bonobo-browser.xml.h:4 msgid "_File" msgstr "_Датотека" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:6 msgid "_Select" msgstr "Ода_бери" # Свиђа ми се „пука“, свака част Вељко ;) — Данило #: ../samples/bonoboui/hello.c:63 msgid "This does nothing; it is only a demonstration." msgstr "Ово не ради ништа, пука демонстрација." #: ../samples/bonoboui/hello.c:145 msgid "BonoboUI-Hello." msgstr "BonoboUI поздрав" #: ../samples/bonoboui/hello.c:217 msgid "Gnome Hello" msgstr "Поздрав Гнома" #. Create Label and put it in the Button: #: ../samples/bonoboui/hello.c:272 msgid "Hello, World!" msgstr "Здраво свете!" #: ../samples/bonoboui/hello.c:312 msgid "Cannot init libbonoboui code" msgstr "Не могу да покренем код libbonoboui-а" #: ../samples/controls/bonobo-sample-controls.c:131 msgid "Could not initialize Bonobo UI" msgstr "Неуспело покретање Бонобо графичког сучеља" #: ../tools/browser/bonobo-browser.desktop.in.h:1 msgid "Bonobo Component Browser" msgstr "Разгледач Бонобо компоненти" #: ../tools/browser/bonobo-browser.desktop.in.h:2 msgid "Shows available Bonobo components" msgstr "Прикажи доступне Бонобо компоненте" #: ../tools/browser/bonobo-browser.xml.h:1 msgid "About this program..." msgstr "О овом програму..." #: ../tools/browser/bonobo-browser.xml.h:2 msgid "Close the current window" msgstr "Затвори текући прозор" #: ../tools/browser/bonobo-browser.xml.h:3 msgid "Open a new window" msgstr "Отвори нови прозор" #: ../tools/browser/bonobo-browser.xml.h:5 msgid "_Help" msgstr "_Помоћ" #. Build the general tab #: ../tools/browser/component-details.c:109 msgid "General" msgstr "Опште" #: ../tools/browser/component-details.c:116 #: ../tools/browser/component-list.c:398 msgid "IID" msgstr "ИИД" #: ../tools/browser/component-details.c:117 msgid "Location" msgstr "Путања" #. Build the details tab #: ../tools/browser/component-details.c:167 msgid "Details" msgstr "Детаљи" #: ../tools/browser/component-details.c:168 msgid "Detailed Information" msgstr "Детаљни подаци" #: ../tools/browser/component-list.c:367 ../tools/browser/window.c:283 msgid "Active" msgstr "Активна" #: ../tools/browser/component-list.c:388 msgid "Type" msgstr "Врста" #: ../tools/browser/window.c:162 msgid "Component Details" msgstr "Детаљи о компоненти" #: ../tools/browser/window.c:208 msgid "Bonobo Browser" msgstr "Бонобо разгледач" #: ../tools/browser/window.c:210 msgid "Copyright 2001, The GNOME Foundation" msgstr "Сва права задржана 2001, Гном Задужбина" #: ../tools/browser/window.c:211 msgid "Bonobo component browser" msgstr "Разгледач Бонобо компоненти" #: ../tools/browser/window.c:214 msgid "translator-credits" msgstr "" "Вељко М. Станојевић \n" "\n" "http://prevod.org — превод на српски језик." #. create the window #: ../tools/browser/window.c:240 msgid "Component Browser" msgstr "Разгледач компоненти" #. Fill out the tool bar #: ../tools/browser/window.c:280 msgid "All" msgstr "Све" #: ../tools/browser/window.c:286 msgid "Inactive" msgstr "Неактивна" libbonoboui-2.24.5/po/tr.po0000644000076400007640000003237711173072741012462 00000000000000# Turkish translation of libbonoboui. # Copyright (C) 2001-2003, 2004, 2005 Free Software Foundation, Inc. # Ömer Fadıl USTA , 2001. # Görkem Çetin , 2002. # Erkan , 2003. # # Baris Cicek , 2005, 2008. msgid "" msgstr "" "Project-Id-Version: libbonoboui\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2008-09-09 15:51+0300\n" "PO-Revision-Date: 2008-09-09 15:52+0300\n" "Last-Translator: Baris Cicek \n" "Language-Team: Turkish \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\n" #: ../bonobo/bonobo-canvas-item.c:680 msgid "corba factory" msgstr "corba üreticisi" #: ../bonobo/bonobo-canvas-item.c:681 msgid "The factory pointer" msgstr "Üretici belirteci" #: ../bonobo/bonobo-canvas-item.c:690 msgid "corba UI container" msgstr "corba UI taşıyıcısı" #: ../bonobo/bonobo-canvas-item.c:691 msgid "The User interface container" msgstr "Kullanıcı arayüzü taşıyıcısı" #: ../bonobo/bonobo-dock-item-grip.c:255 msgid "Dock the toolbar" msgstr "Araç çubuğuna yerleştir" #: ../bonobo/bonobo-dock-item-grip.c:256 msgid "Undock the toolbar" msgstr "Araç çubuğunun kilidini kaldı" #: ../bonobo/bonobo-dock-item.c:228 ../bonobo/bonobo-dock-item.c:229 #: ../bonobo/bonobo-ui-toolbar.c:1161 msgid "Shadow type" msgstr "Gölge türü" #: ../bonobo/bonobo-dock-item.c:239 ../bonobo/bonobo-dock-item.c:240 #: ../bonobo/bonobo-ui-toolbar.c:1105 ../bonobo/bonobo-ui-toolbar.c:1106 msgid "Orientation" msgstr "Yönlendirme" #: ../bonobo/bonobo-dock-item.c:250 ../bonobo/bonobo-dock-item.c:251 #: ../bonobo/bonobo-ui-toolbar.c:1124 ../bonobo/bonobo-ui-toolbar.c:1125 msgid "Preferred width" msgstr "Tercih edilen genişlik" #: ../bonobo/bonobo-dock-item.c:259 ../bonobo/bonobo-dock-item.c:260 #: ../bonobo/bonobo-ui-toolbar.c:1133 ../bonobo/bonobo-ui-toolbar.c:1134 msgid "Preferred height" msgstr "Tercih edilen yükseklik" #: ../bonobo/bonobo-file-selector-util.c:355 msgid "Select a file to open" msgstr "Açmak için bir dosya seçin" #: ../bonobo/bonobo-file-selector-util.c:383 msgid "Select files to open" msgstr "Açılacak dosyaları seçin" #: ../bonobo/bonobo-file-selector-util.c:412 msgid "Select a filename to save" msgstr "Kaydetmek için bir isim seçin" #: ../bonobo/bonobo-plug.c:423 msgid "Event Forwarding" msgstr "Olay Yönlendirme" #: ../bonobo/bonobo-plug.c:424 msgid "Whether X events should be forwarded" msgstr "X olaylarının yönlendirilmesi" #: ../bonobo/bonobo-selector-widget.c:297 ../bonobo/bonobo-window.c:344 #: ../tools/browser/component-details.c:114 #: ../tools/browser/component-list.c:378 msgid "Name" msgstr "İsim" #: ../bonobo/bonobo-selector-widget.c:319 #: ../tools/browser/component-details.c:115 msgid "Description" msgstr "Tanım" #: ../bonobo/bonobo-selector.c:343 msgid "Interfaces required" msgstr "Gereken arayüzler" #: ../bonobo/bonobo-selector.c:344 msgid "" "A NULL-terminated array of interfaces which a server must support in order " "to be listed in the selector. Defaults to \"IDL:Bonobo/Embeddable:1.0\" if " "no interfaces are listed" msgstr "" "Sunucunun desteklemek zorunda olduğu NULL ile terkedilmiş arayüz dizisi " "seçicide listelenmek için gereklidir. Eğer hiç bir arayüz seçilmezse, " "öntanımlı olarak \"IDL:Bonobo/Embeddable:1.0\" kullanılır" #: ../bonobo/bonobo-selector.c:346 msgid "Interface required entry" msgstr "Gerekli arayüzler girişi" #: ../bonobo/bonobo-selector.c:347 msgid "One of the interfaces that's required" msgstr "Gerekli arayüzlerden birisi" #: ../bonobo/bonobo-ui-config-widget.c:265 msgid "Visible" msgstr "Görünür" #: ../bonobo/bonobo-ui-config-widget.c:272 msgid "_Show" msgstr "_Göster" #: ../bonobo/bonobo-ui-config-widget.c:279 msgid "_Hide" msgstr "Gi_zle" #: ../bonobo/bonobo-ui-config-widget.c:285 msgid "_View tooltips" msgstr "_Balon görüntüle" #: ../bonobo/bonobo-ui-config-widget.c:290 msgid "Toolbars" msgstr "Araç çubukları" #: ../bonobo/bonobo-ui-config-widget.c:300 msgid "toolbars" msgstr "araç çubukları" #: ../bonobo/bonobo-ui-config-widget.c:311 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "Look" msgstr "Görünüm" #: ../bonobo/bonobo-ui-config-widget.c:320 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "_Icon" msgstr "_Simge" #: ../bonobo/bonobo-ui-config-widget.c:326 msgid "_Text and Icon" msgstr "_Metin ve Simge" #: ../bonobo/bonobo-ui-config-widget.c:332 msgid "Text only" msgstr "Sadece metin" #: ../bonobo/bonobo-ui-config-widget.c:338 msgid "_Priority text only" msgstr "_Öncelikli sadece metin" #: ../bonobo/bonobo-ui-engine.c:91 msgid "Debug" msgstr "Hata ayıklama" #: ../bonobo/bonobo-ui-engine.c:91 msgid "_Dump XML" msgstr "XML _göster" #: ../bonobo/bonobo-ui-engine.c:92 msgid "Dump the entire UI's XML description to the console" msgstr "UI XML açıklamalarının verilerini konsolda göster" #: ../bonobo/bonobo-ui-engine-config.c:522 msgid "Configure UI" msgstr "UI Yapılandır" #: ../bonobo/bonobo-ui-init-gtk.c:131 msgid "Gdk debugging flags to set" msgstr "Gdk hata ayıklama imlerini yerleştir" #: ../bonobo/bonobo-ui-init-gtk.c:131 ../bonobo/bonobo-ui-init-gtk.c:134 #: ../bonobo/bonobo-ui-init-gtk.c:162 ../bonobo/bonobo-ui-init-gtk.c:165 msgid "FLAGS" msgstr "İMLER" #: ../bonobo/bonobo-ui-init-gtk.c:134 msgid "Gdk debugging flags to unset" msgstr "Gdk hata ayıklama imlerini geri al" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "X display to use" msgstr "Kullanılacak X görüntüsü" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "DISPLAY" msgstr "GÖRÜNTÜ" #: ../bonobo/bonobo-ui-init-gtk.c:142 msgid "X screen to use" msgstr "Kullanılacak X görüntüsü" #: ../bonobo/bonobo-ui-init-gtk.c:142 msgid "SCREEN" msgstr "EKRAN" #: ../bonobo/bonobo-ui-init-gtk.c:146 msgid "Make X calls synchronous" msgstr "X çağrılarını eşzamanılı yap" #: ../bonobo/bonobo-ui-init-gtk.c:152 msgid "Don't use X shared memory extension" msgstr "X paylaşılmış bellek uzantılarını kullanma" #: ../bonobo/bonobo-ui-init-gtk.c:156 msgid "Program name as used by the window manager" msgstr "Pencere yönetici gibi kullanılacak program adı" #: ../bonobo/bonobo-ui-init-gtk.c:156 msgid "NAME" msgstr "İSİM" #: ../bonobo/bonobo-ui-init-gtk.c:159 msgid "Program class as used by the window manager" msgstr "Pencere yöneticisi gibi kullanılacak program sınıfları" #: ../bonobo/bonobo-ui-init-gtk.c:159 msgid "CLASS" msgstr "SINIF" #: ../bonobo/bonobo-ui-init-gtk.c:162 msgid "Gtk+ debugging flags to set" msgstr "Gtk+ hata ayıklama imlerini yerleştir" #: ../bonobo/bonobo-ui-init-gtk.c:165 msgid "Gtk+ debugging flags to unset" msgstr "Gtk+ hata ayıklama imlerini kaldır" #: ../bonobo/bonobo-ui-init-gtk.c:168 msgid "Make all warnings fatal" msgstr "Bütün uyarıları ölümcül yap" #: ../bonobo/bonobo-ui-init-gtk.c:171 msgid "Load an additional Gtk module" msgstr "Ek Gtk modulu yükle" #: ../bonobo/bonobo-ui-init-gtk.c:171 msgid "MODULE" msgstr "MODÜL" #: ../bonobo/bonobo-ui-init-gtk.c:187 msgid "GTK+" msgstr "GTK+" #: ../bonobo/bonobo-ui-main.c:278 msgid "Bonobo GUI support" msgstr "Bonobo GUI desteği" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "B_oth" msgstr "İkisi_de" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "T_ext" msgstr "Me_tin" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Hide t_ips" msgstr "İpucunu giz_le" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Show t_ips" msgstr "İpucunu göste_r" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "_Hide toolbar" msgstr "Ara_ç çubuğunu gizle" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "Customi_ze" msgstr "Özelle_ştir" #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Customize the toolbar" msgstr "Araç çubuğunu özelleştir" #: ../bonobo/bonobo-ui-toolbar.c:1115 msgid "is floating" msgstr "kayandır" #: ../bonobo/bonobo-ui-toolbar.c:1116 msgid "whether the toolbar is floating" msgstr "araç çubugunun kayan olması" #: ../bonobo/bonobo-ui-toolbar.c:1162 msgid "Style of bevel around the toolbar" msgstr "Araç çubuğunun çevresindeki çıkıntının biçemi" #: ../bonobo/bonobo-ui-util.c:601 msgid "Could not display help for this application" msgstr "Bu uygulama için yardım gösterilemedi" #: ../bonobo/bonobo-ui-util.c:643 msgid "_Contents" msgstr "_İçerik" #: ../bonobo/bonobo-ui-util.c:644 msgid "View help for this application" msgstr "Bu uygulama için yardım göster" #: ../bonobo/bonobo-window.c:345 msgid "Name of the window - used for configuration serialization." msgstr "Pencere ismi - ayarların seri şekilde yapılması için kullanılacak." #: ../bonobo/bonobo-zoomable.c:326 msgid "Zoom level" msgstr "Yaklaştırma seviyesi" #: ../bonobo/bonobo-zoomable.c:327 msgid "The degree of enlargment" msgstr "Genişletme derecesi" #: ../bonobo/bonobo-zoomable.c:335 msgid "Minimum Zoom level" msgstr "Asgari Yaklaştırma seviyesi" #: ../bonobo/bonobo-zoomable.c:336 msgid "The minimum degree of enlargment" msgstr "Asgari genişletme derecesi" #: ../bonobo/bonobo-zoomable.c:344 msgid "Maximum Zoom level" msgstr "Azami Yaklaştırma seviyesi" #: ../bonobo/bonobo-zoomable.c:345 msgid "The maximum degree of enlargment" msgstr "Azami genişletme derecesi" #: ../bonobo/bonobo-zoomable.c:353 msgid "Has a minimum Zoom level" msgstr "Asgari yaklaştırma seviyesine sahip" #: ../bonobo/bonobo-zoomable.c:354 msgid "Whether we have a valid minimum zoom level" msgstr "Geçerli asgari yaklaştırma seviyesine sahip olup olmadığı" #: ../bonobo/bonobo-zoomable.c:361 msgid "Has a maximum Zoom level" msgstr "Azami yaklaştırma seviyesine sahip" #: ../bonobo/bonobo-zoomable.c:362 msgid "Whether we have a valid maximum zoom level" msgstr "Geçerli azami yaklaştırma seviyesine sahip olup olmadığı" #: ../bonobo/bonobo-zoomable.c:369 msgid "Is continuous" msgstr "Devamlıdır" #: ../bonobo/bonobo-zoomable.c:370 msgid "Whether we zoom continuously (as opposed to jumps)" msgstr "Devamlı yaklaştırma (adımlıya zıt olarak)" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:1 msgid "About this application" msgstr "Bu uygulama hakkında" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:2 msgid "Select" msgstr "Seç" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:3 msgid "_About..." msgstr "_Hakkında..." #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:4 msgid "_Edit" msgstr "_Düzen" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:5 #: ../tools/browser/bonobo-browser.xml.h:4 msgid "_File" msgstr "_Dosya" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:6 msgid "_Select" msgstr "_Seç" #: ../samples/bonoboui/hello.c:63 msgid "This does nothing; it is only a demonstration." msgstr "Bu sadece bir gösterim; bu hiç bir şey yapmaz." #: ../samples/bonoboui/hello.c:145 msgid "BonoboUI-Hello." msgstr "BonoboUI-Hello." #: ../samples/bonoboui/hello.c:217 msgid "Gnome Hello" msgstr "Gnome Hello" #. Create Label and put it in the Button: #: ../samples/bonoboui/hello.c:272 msgid "Hello, World!" msgstr "Merhaba, Dünya!" #: ../samples/bonoboui/hello.c:312 msgid "Cannot init libbonoboui code" msgstr "Libbonoboui kodu çalıştırılamıyor" #: ../samples/controls/bonobo-sample-controls.c:131 msgid "Could not initialize Bonobo UI" msgstr "Bonobo UI başlatılamıyor" #: ../tools/browser/bonobo-browser.desktop.in.h:1 msgid "Bonobo Component Browser" msgstr "Bonobo Bileşen Tarayıcısı" #: ../tools/browser/bonobo-browser.desktop.in.h:2 msgid "Shows available Bonobo components" msgstr "Geçerli Bonobo bileşenlerini gösterir" #: ../tools/browser/bonobo-browser.xml.h:1 msgid "About this program..." msgstr "Bu program hakkında..." #: ../tools/browser/bonobo-browser.xml.h:2 msgid "Close the current window" msgstr "Mevcut pencereyi kapat" #: ../tools/browser/bonobo-browser.xml.h:3 msgid "Open a new window" msgstr "Yeni bir pencere aç" #: ../tools/browser/bonobo-browser.xml.h:5 msgid "_Help" msgstr "_Yardım" #. Build the general tab #: ../tools/browser/component-details.c:109 msgid "General" msgstr "Genel" #: ../tools/browser/component-details.c:116 #: ../tools/browser/component-list.c:398 msgid "IID" msgstr "IID" #: ../tools/browser/component-details.c:117 msgid "Location" msgstr "Konum" #. Build the details tab #: ../tools/browser/component-details.c:167 msgid "Details" msgstr "Ayrıntılar" #: ../tools/browser/component-details.c:168 msgid "Detailed Information" msgstr "Ayrıntılı Bilgi" #: ../tools/browser/component-list.c:367 ../tools/browser/window.c:283 msgid "Active" msgstr "Aktif" #: ../tools/browser/component-list.c:388 msgid "Type" msgstr "Tür" #: ../tools/browser/window.c:162 msgid "Component Details" msgstr "Bileşen Ayrıntıları" #: ../tools/browser/window.c:208 msgid "Bonobo Browser" msgstr "Bonobo Tarayıcısı" #: ../tools/browser/window.c:210 msgid "Copyright 2001, The GNOME Foundation" msgstr "Telif Hakkı 2001, GNOME Vakfı" #: ../tools/browser/window.c:211 msgid "Bonobo component browser" msgstr "Bonobo bileşen tarayıcısı" #: ../tools/browser/window.c:214 msgid "translator-credits" msgstr "Barış Çiçek " #. create the window #: ../tools/browser/window.c:240 msgid "Component Browser" msgstr "Bileşen Tarayıcısı" #. Fill out the tool bar #: ../tools/browser/window.c:280 msgid "All" msgstr "Hepsi" #: ../tools/browser/window.c:286 msgid "Inactive" msgstr "Aktif Değil" libbonoboui-2.24.5/po/LINGUAS0000664000076400007640000000056511546334521012517 00000000000000# please keep this list sorted alphabetically # af am ar as ast az be bg bn bn_IN br bs ca ca@valencia cs cy da de dz el en_CA en_GB en@shaw eo es et eu fa fi fr ga gl gu he hi hr hu id is it ja ka kn ko ku li lt lv mai mg mk ml mn mr ms nb ne nl nn nso oc or pa pl ps pt pt_BR ro ru rw si sk sl sq sr sr@latin sr@ije sv ta te th tr ug uk vi wa xh yi zh_CN zh_HK zh_TW zu libbonoboui-2.24.5/po/af.po0000644000076400007640000003157511173072741012422 00000000000000# Afrikaans translation of libbonoboui. # Copyright (C) 2004 Zuza Software Foundation # This file is distributed under the same license as the libbonoboui package. # # Zuza Software Foundation , 2004 # F Wolff , 2008 msgid "" msgstr "" "Project-Id-Version: libbonoboui 2.6-branch\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2008-01-03 22:20+0100\n" "PO-Revision-Date: 2004-03-30 17:02+0200\n" "Last-Translator: Zuza Software Foundation \n" "Language-Team: Afrikaans \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../bonobo/bonobo-canvas-item.c:680 msgid "corba factory" msgstr "corba-fabriek" #: ../bonobo/bonobo-canvas-item.c:681 msgid "The factory pointer" msgstr "Die fabriekwyser" #: ../bonobo/bonobo-canvas-item.c:690 msgid "corba UI container" msgstr "corba UI-houer" #: ../bonobo/bonobo-canvas-item.c:691 msgid "The User interface container" msgstr "Die Gebruikerkoppelvlak-houer" #: ../bonobo/bonobo-dock-item-grip.c:255 msgid "Dock the toolbar" msgstr "Dok die nutsbalk" #: ../bonobo/bonobo-dock-item-grip.c:256 msgid "Undock the toolbar" msgstr "Ontdok die nutsbalk" #: ../bonobo/bonobo-dock-item.c:228 ../bonobo/bonobo-dock-item.c:229 #: ../bonobo/bonobo-ui-toolbar.c:1161 msgid "Shadow type" msgstr "Skadu-tipe" #: ../bonobo/bonobo-dock-item.c:239 ../bonobo/bonobo-dock-item.c:240 #: ../bonobo/bonobo-ui-toolbar.c:1105 ../bonobo/bonobo-ui-toolbar.c:1106 msgid "Orientation" msgstr "Oriëntasie" #: ../bonobo/bonobo-dock-item.c:250 ../bonobo/bonobo-dock-item.c:251 #: ../bonobo/bonobo-ui-toolbar.c:1124 ../bonobo/bonobo-ui-toolbar.c:1125 msgid "Preferred width" msgstr "Voorkeur-wydte" #: ../bonobo/bonobo-dock-item.c:259 ../bonobo/bonobo-dock-item.c:260 #: ../bonobo/bonobo-ui-toolbar.c:1133 ../bonobo/bonobo-ui-toolbar.c:1134 msgid "Preferred height" msgstr "Voorkeur-hoogte" #: ../bonobo/bonobo-file-selector-util.c:357 msgid "Select a file to open" msgstr "Kies 'n lêer om te open" #: ../bonobo/bonobo-file-selector-util.c:385 msgid "Select files to open" msgstr "Kies lêers om te open" #: ../bonobo/bonobo-file-selector-util.c:414 msgid "Select a filename to save" msgstr "Kies 'n lêernaam om te stoor" #: ../bonobo/bonobo-plug.c:423 msgid "Event Forwarding" msgstr "Gebeurtenisaansturing" #: ../bonobo/bonobo-plug.c:424 msgid "Whether X events should be forwarded" msgstr "Of X-gebeurtenisse aangestuur moet word" #: ../bonobo/bonobo-selector-widget.c:297 ../bonobo/bonobo-window.c:344 #: ../tools/browser/component-details.c:114 #: ../tools/browser/component-list.c:378 msgid "Name" msgstr "Naam" #: ../bonobo/bonobo-selector-widget.c:319 #: ../tools/browser/component-details.c:115 msgid "Description" msgstr "Beskrywing" #: ../bonobo/bonobo-selector.c:343 msgid "Interfaces required" msgstr "Koppelvlakke vereis" #: ../bonobo/bonobo-selector.c:344 msgid "" "A NULL-terminated array of interfaces which a server must support in order " "to be listed in the selector. Defaults to \"IDL:Bonobo/Embeddable:1.0\" if " "no interfaces are listed" msgstr "" "'n NULL-getermineerde skikking van koppelvlakke wat 'n bediener moet " "ondersteun ten einde gelys te word in die selekteerder. Verstek na \"IDL:" "Bonobo/Verskansbare:1.0\" indien geen koppelvlakke gelys is nie" #: ../bonobo/bonobo-selector.c:346 msgid "Interface required entry" msgstr "Koppelvlak het toegang benodig" #: ../bonobo/bonobo-selector.c:347 msgid "One of the interfaces that's required" msgstr "Een van die koppelvlakke wat benodig word" #: ../bonobo/bonobo-ui-config-widget.c:265 msgid "Visible" msgstr "Sigbaar" #: ../bonobo/bonobo-ui-config-widget.c:272 msgid "_Show" msgstr "_Wys" #: ../bonobo/bonobo-ui-config-widget.c:279 msgid "_Hide" msgstr "_Verberg" #: ../bonobo/bonobo-ui-config-widget.c:285 msgid "_View tooltips" msgstr "_Bekyk nutsgoedwenke" #: ../bonobo/bonobo-ui-config-widget.c:290 msgid "Toolbars" msgstr "Nutsbalke" #: ../bonobo/bonobo-ui-config-widget.c:300 msgid "toolbars" msgstr "nutsbalke" #: ../bonobo/bonobo-ui-config-widget.c:311 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "Look" msgstr "Kyk" #: ../bonobo/bonobo-ui-config-widget.c:320 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "_Icon" msgstr "_Ikoon" #: ../bonobo/bonobo-ui-config-widget.c:326 msgid "_Text and Icon" msgstr "_Teks en ikoon" #: ../bonobo/bonobo-ui-config-widget.c:332 msgid "Text only" msgstr "Slegs teks" #: ../bonobo/bonobo-ui-config-widget.c:338 msgid "_Priority text only" msgstr "Slegs _voorkeurteks" #: ../bonobo/bonobo-ui-engine.c:91 msgid "Debug" msgstr "Ontvlooi" #: ../bonobo/bonobo-ui-engine.c:91 msgid "_Dump XML" msgstr "_Stort XML" #: ../bonobo/bonobo-ui-engine.c:92 msgid "Dump the entire UI's XML description to the console" msgstr "Stort die hele UI se XML-beskrywing na die konsole" #: ../bonobo/bonobo-ui-engine-config.c:522 msgid "Configure UI" msgstr "Konfigureer UI" #: ../bonobo/bonobo-ui-init-gtk.c:130 msgid "Gdk debugging flags to set" msgstr "Gdk-ontvlooiingsmerkers om in te stel" #: ../bonobo/bonobo-ui-init-gtk.c:130 ../bonobo/bonobo-ui-init-gtk.c:133 #: ../bonobo/bonobo-ui-init-gtk.c:161 ../bonobo/bonobo-ui-init-gtk.c:164 msgid "FLAGS" msgstr "MERKERS" #: ../bonobo/bonobo-ui-init-gtk.c:133 msgid "Gdk debugging flags to unset" msgstr "Gdk-ontvlooiingsmerkers om te ontstel" #: ../bonobo/bonobo-ui-init-gtk.c:137 msgid "X display to use" msgstr "X-vertoon om te gebruik" #: ../bonobo/bonobo-ui-init-gtk.c:137 msgid "DISPLAY" msgstr "VERTOON" #: ../bonobo/bonobo-ui-init-gtk.c:141 msgid "X screen to use" msgstr "X-skerm om te gebruik" #: ../bonobo/bonobo-ui-init-gtk.c:141 msgid "SCREEN" msgstr "SKERM" #: ../bonobo/bonobo-ui-init-gtk.c:145 msgid "Make X calls synchronous" msgstr "Maak X-oproepe gelyktydig" #: ../bonobo/bonobo-ui-init-gtk.c:151 msgid "Don't use X shared memory extension" msgstr "Moenie X-gedeelde-geheueuitbreiding gebruik nie" #: ../bonobo/bonobo-ui-init-gtk.c:155 msgid "Program name as used by the window manager" msgstr "Programnaam soos deur vensterbestuurder gebruik" #: ../bonobo/bonobo-ui-init-gtk.c:155 msgid "NAME" msgstr "NAAM" #: ../bonobo/bonobo-ui-init-gtk.c:158 msgid "Program class as used by the window manager" msgstr "Programklas soos deur vensterbestuurder gebruik" #: ../bonobo/bonobo-ui-init-gtk.c:158 msgid "CLASS" msgstr "KLAS" #: ../bonobo/bonobo-ui-init-gtk.c:161 msgid "Gtk+ debugging flags to set" msgstr "Gtk+ ontvlooiingsmerkers om in te stel" #: ../bonobo/bonobo-ui-init-gtk.c:164 msgid "Gtk+ debugging flags to unset" msgstr "Gtk+ ontvlooiingsmerkers om te ontstel" #: ../bonobo/bonobo-ui-init-gtk.c:167 msgid "Make all warnings fatal" msgstr "Maak alle waarskuwings fataal" #: ../bonobo/bonobo-ui-init-gtk.c:170 msgid "Load an additional Gtk module" msgstr "Laai 'n addisionele Gtk-module" #: ../bonobo/bonobo-ui-init-gtk.c:170 msgid "MODULE" msgstr "MODULE" #: ../bonobo/bonobo-ui-init-gtk.c:186 msgid "GTK+" msgstr "GTK+" #: ../bonobo/bonobo-ui-main.c:278 msgid "Bonobo GUI support" msgstr "Bonobo GUI-ondersteuning" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "B_oth" msgstr "B_eide" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "T_ext" msgstr "T_eks" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Hide t_ips" msgstr "Verberg w_enke" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Show t_ips" msgstr "Wys w_enke" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "_Hide toolbar" msgstr "_Verberg nutsbalk" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "Customi_ze" msgstr "Pasma_ak" #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Customize the toolbar" msgstr "Pasmaak die nutsbalk" #: ../bonobo/bonobo-ui-toolbar.c:1115 msgid "is floating" msgstr "is swewend" #: ../bonobo/bonobo-ui-toolbar.c:1116 msgid "whether the toolbar is floating" msgstr "of die nutsbalk swewend is" #: ../bonobo/bonobo-ui-toolbar.c:1162 msgid "Style of bevel around the toolbar" msgstr "Styl van skuinsste rondom nutsbalk" #: ../bonobo/bonobo-ui-util.c:601 msgid "Could not display help for this application" msgstr "Kon nie hup vir hierdie program wys nie" #: ../bonobo/bonobo-ui-util.c:643 msgid "_Contents" msgstr "_Inhoud" #: ../bonobo/bonobo-ui-util.c:644 msgid "View help for this application" msgstr "Bekyk hulp vir hierdie toepassing" #: ../bonobo/bonobo-window.c:345 msgid "Name of the window - used for configuration serialization." msgstr "Naam van die venster - gebruik vir konfigurasie-serialisasie." #: ../bonobo/bonobo-zoomable.c:326 msgid "Zoom level" msgstr "Zoemvlak" #: ../bonobo/bonobo-zoomable.c:327 msgid "The degree of enlargment" msgstr "Die graad van vergroting" #: ../bonobo/bonobo-zoomable.c:335 msgid "Minimum Zoom level" msgstr "Minimum zoemvlak" #: ../bonobo/bonobo-zoomable.c:336 msgid "The minimum degree of enlargment" msgstr "Die minimum graad van vergroting" #: ../bonobo/bonobo-zoomable.c:344 msgid "Maximum Zoom level" msgstr "Maksimum zoemvlak" #: ../bonobo/bonobo-zoomable.c:345 msgid "The maximum degree of enlargment" msgstr "Die maksimum graad van vergroting" #: ../bonobo/bonobo-zoomable.c:353 msgid "Has a minimum Zoom level" msgstr "Het 'n minimum zoemvlak" #: ../bonobo/bonobo-zoomable.c:354 msgid "Whether we have a valid minimum zoom level" msgstr "Of ons 'n geldige minimum zoemvlak het" #: ../bonobo/bonobo-zoomable.c:361 msgid "Has a maximum Zoom level" msgstr "Het 'n maksimum zoemvlak" #: ../bonobo/bonobo-zoomable.c:362 msgid "Whether we have a valid maximum zoom level" msgstr "Of ons 'n geldige maksimum zoemvlak het" #: ../bonobo/bonobo-zoomable.c:369 msgid "Is continuous" msgstr "Is aaneenlopend" #: ../bonobo/bonobo-zoomable.c:370 msgid "Whether we zoom continuously (as opposed to jumps)" msgstr "Of ons aaneenlopend zoem (teenoor om te spring)" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:1 msgid "About this application" msgstr "Aangaande hierdie toepassing" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:2 msgid "Select" msgstr "Selekteer" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:3 msgid "_About..." msgstr "_Aangaande..." #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:4 msgid "_Edit" msgstr "_Redigeer" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:5 #: ../tools/browser/bonobo-browser.xml.h:4 msgid "_File" msgstr "_Lêer" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:6 msgid "_Select" msgstr "_Selekteer" #: ../samples/bonoboui/hello.c:63 msgid "This does nothing; it is only a demonstration." msgstr "Dit doen niks; dit is slegs 'n demonstrasie." #: ../samples/bonoboui/hello.c:145 msgid "BonoboUI-Hello." msgstr "BonoboUI-Hallo." #: ../samples/bonoboui/hello.c:217 msgid "Gnome Hello" msgstr "Gnome Hallo" #. Create Label and put it in the Button: #: ../samples/bonoboui/hello.c:272 msgid "Hello, World!" msgstr "Hallo, Wêreld!" #: ../samples/bonoboui/hello.c:312 msgid "Cannot init libbonoboui code" msgstr "Kan nie libbonoboui-kode inisieer nie" #: ../samples/controls/bonobo-sample-controls.c:131 msgid "Could not initialize Bonobo UI" msgstr "Kon nie Bonobo UI inisieer nie" #: ../tools/browser/bonobo-browser.desktop.in.h:1 msgid "Bonobo Component Browser" msgstr "Bonobo-komponentblaaier" #: ../tools/browser/bonobo-browser.desktop.in.h:2 msgid "Shows available Bonobo components" msgstr "Wys beskikbare Bonobo-komponente" #: ../tools/browser/bonobo-browser.xml.h:1 msgid "About this program..." msgstr "Aangaande hierdie program..." #: ../tools/browser/bonobo-browser.xml.h:2 msgid "Close the current window" msgstr "Sluit die huidige venster" #: ../tools/browser/bonobo-browser.xml.h:3 msgid "Open a new window" msgstr "Open 'n nuwe venster" #: ../tools/browser/bonobo-browser.xml.h:5 msgid "_Help" msgstr "_Hulp" #. Build the general tab #: ../tools/browser/component-details.c:109 msgid "General" msgstr "Algemeen" #: ../tools/browser/component-details.c:116 #: ../tools/browser/component-list.c:398 msgid "IID" msgstr "" #: ../tools/browser/component-details.c:117 msgid "Location" msgstr "Ligging" #. Build the details tab #: ../tools/browser/component-details.c:167 msgid "Details" msgstr "Detail" #: ../tools/browser/component-details.c:168 msgid "Detailed Information" msgstr "Gedetaileerde inligting" #: ../tools/browser/component-list.c:367 ../tools/browser/window.c:283 msgid "Active" msgstr "Aktief" #: ../tools/browser/component-list.c:388 msgid "Type" msgstr "Tipe" #: ../tools/browser/window.c:162 msgid "Component Details" msgstr "Komponentdetail" #: ../tools/browser/window.c:208 msgid "Bonobo Browser" msgstr "Bonobo-blaaier" #: ../tools/browser/window.c:210 msgid "Copyright 2001, The GNOME Foundation" msgstr "Kopiereg 2001, Die GNOME Stigting" #: ../tools/browser/window.c:211 msgid "Bonobo component browser" msgstr "Bonobo-komponent-blaaier" #: ../tools/browser/window.c:214 msgid "translator-credits" msgstr "Friedel Wolff" #. create the window #: ../tools/browser/window.c:240 msgid "Component Browser" msgstr "Komponent-blaaier" #. Fill out the tool bar #: ../tools/browser/window.c:280 msgid "All" msgstr "" #: ../tools/browser/window.c:286 msgid "Inactive" msgstr "Nieaktief" libbonoboui-2.24.5/po/bn_IN.po0000644000076400007640000005562511173072741013023 00000000000000# translation of bn_IN.po to Bengali INDIA # Bengali India Translation of libbonoboui. # Copyright (C) 1991-2003, 2006, 2008 Free Software Foundation, Inc. # This file is distributed under the same license as the libbonoboui package. # # Khandakar Mujahidul Islam , 2003-2005. # Runa Bhattacharjee , 2006. # Runa Bhattacharjee , 2008. msgid "" msgstr "" "Project-Id-Version: bn_IN\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2007-11-13 21:46+0000\n" "PO-Revision-Date: 2008-09-22 09:25+0530\n" "Last-Translator: Runa Bhattacharjee \n" "Language-Team: Bengali INDIA \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Generator: KBabel 1.11.4\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" "\n" #: ../bonobo/bonobo-canvas-item.c:680 msgid "corba factory" msgstr "corba ফ্যাক্টরি" # msgstr "করবা ফ্যাক্টরি" #: ../bonobo/bonobo-canvas-item.c:681 msgid "The factory pointer" msgstr "ফ্যাক্টরি নির্দেশক" # msgstr "কারখানা নির্দেশক" #: ../bonobo/bonobo-canvas-item.c:690 msgid "corba UI container" msgstr "corba UI ধারণকারী" # msgstr "করবা ইউ.আই. (UI) ধারক" #: ../bonobo/bonobo-canvas-item.c:691 msgid "The User interface container" msgstr "ইউজার ইন্টারফেস ধারণকারী" #: ../bonobo/bonobo-dock-item-grip.c:255 msgid "Dock the toolbar" msgstr "টুল-বার সংযুক্ত করা হবে" #: ../bonobo/bonobo-dock-item-grip.c:256 msgid "Undock the toolbar" msgstr "টুল-বার মুক্ত করা হবে" #: ../bonobo/bonobo-dock-item.c:228 ../bonobo/bonobo-dock-item.c:229 #: ../bonobo/bonobo-ui-toolbar.c:1161 msgid "Shadow type" msgstr "ছায়ার ধরন" #: ../bonobo/bonobo-dock-item.c:239 ../bonobo/bonobo-dock-item.c:240 #: ../bonobo/bonobo-ui-toolbar.c:1105 ../bonobo/bonobo-ui-toolbar.c:1106 msgid "Orientation" msgstr "দিশা" # msgstr "সজ্জা" #: ../bonobo/bonobo-dock-item.c:250 ../bonobo/bonobo-dock-item.c:251 #: ../bonobo/bonobo-ui-toolbar.c:1124 ../bonobo/bonobo-ui-toolbar.c:1125 msgid "Preferred width" msgstr "বাঞ্ছনীয় প্রস্থ" #: ../bonobo/bonobo-dock-item.c:259 ../bonobo/bonobo-dock-item.c:260 #: ../bonobo/bonobo-ui-toolbar.c:1133 ../bonobo/bonobo-ui-toolbar.c:1134 msgid "Preferred height" msgstr "বাঞ্ছনীয় উচ্চতা" #: ../bonobo/bonobo-file-selector-util.c:357 msgid "Select a file to open" msgstr "খোলা উদ্দেশ্যে ফাইল নির্বাচন করুন" #: ../bonobo/bonobo-file-selector-util.c:385 msgid "Select files to open" msgstr "খোলা উদ্দেশ্যে একাধিক ফাইল নির্বাচন করুন" # msgstr "কয়েকটি ফাইল বাছাই করো" #: ../bonobo/bonobo-file-selector-util.c:414 msgid "Select a filename to save" msgstr "সংরক্ষণের জন্য ফাইলের নাম নির্বাচন করুন" #: ../bonobo/bonobo-plug.c:423 msgid "Event Forwarding" msgstr "ইভেন্ট অনুবর্তন" # msgstr "ইভেন্ট পাঠিয়ে দেয়া" #: ../bonobo/bonobo-plug.c:424 msgid "Whether X events should be forwarded" msgstr "X ইভেন্ট অনুবর্তন করা হবে কিনা" # msgstr "যে কোনো ক্ষেত্রে এক্স ইভেন্ট পাঠিয়ে দেয়া উচিত" # msgstr "যে কোনো ক্ষেত্রে এক্স ইভেন্ট ফরওয়ার্ড করে দেয়া উচিত" #: ../bonobo/bonobo-selector-widget.c:297 ../bonobo/bonobo-window.c:344 #: ../tools/browser/component-details.c:114 #: ../tools/browser/component-list.c:378 msgid "Name" msgstr "নাম" #: ../bonobo/bonobo-selector-widget.c:319 #: ../tools/browser/component-details.c:115 msgid "Description" msgstr "বিবরণ" # msgstr "বর্ণনা" #: ../bonobo/bonobo-selector.c:343 msgid "Interfaces required" msgstr "আবশ্যক প্রেক্ষাপট" #: ../bonobo/bonobo-selector.c:344 msgid "" "A NULL-terminated array of interfaces which a server must support in order " "to be listed in the selector. Defaults to \"IDL:Bonobo/Embeddable:1.0\" if " "no interfaces are listed" msgstr "" "নির্বাচনের উদ্দেশ্যে তালিকাভুক্ত হওয়ার উদ্দেশ্যে সার্ভারের দ্বারা সমর্থিত NULL-" "টার্মিনেশন সহ ইন্টারফেসের অ্যারে। কোনো ইন্টারফেসের তালিকা উপস্থিত না থাকলে \"IDL:" "Bonobo/Embeddable:1.0\" ডিফল্ট মান প্রয়োগ করা হয়" # সার্ভার চালুরাখতেসাহায্যকরা ধারা #: ../bonobo/bonobo-selector.c:346 msgid "Interface required entry" msgstr "ইন্টারফেসের ক্ষেত্রের আবশ্যক এন্ট্রি" #: ../bonobo/bonobo-selector.c:347 msgid "One of the interfaces that's required" msgstr "আবশ্যক ইন্টারফেসের মধ্যে একটি" #: ../bonobo/bonobo-ui-config-widget.c:265 msgid "Visible" msgstr "দৃশ্যমান" #: ../bonobo/bonobo-ui-config-widget.c:272 msgid "_Show" msgstr "প্রদর্শন করা হবে (_S)" #: ../bonobo/bonobo-ui-config-widget.c:279 msgid "_Hide" msgstr "আড়াল করা হবে (_H)" #: ../bonobo/bonobo-ui-config-widget.c:285 msgid "_View tooltips" msgstr "টুল-টিপ প্রদর্শন করা হবে (_V)" #: ../bonobo/bonobo-ui-config-widget.c:290 msgid "Toolbars" msgstr "টুল-বার" #: ../bonobo/bonobo-ui-config-widget.c:300 msgid "toolbars" msgstr "টুল-বার" #: ../bonobo/bonobo-ui-config-widget.c:311 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "Look" msgstr "চেহারাছবি" # msgstr "দেখো" #: ../bonobo/bonobo-ui-config-widget.c:320 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "_Icon" msgstr "প্রতীক (_I)" # msgstr "প্রতীক (_প)" #: ../bonobo/bonobo-ui-config-widget.c:326 msgid "_Text and Icon" msgstr "টেক্সট ও প্রতীক (_T)" # msgstr "টেক্সট এবং প্রতীক (_ট)" #: ../bonobo/bonobo-ui-config-widget.c:332 msgid "Text only" msgstr "শুধুমাত্র টেক্সট" #: ../bonobo/bonobo-ui-config-widget.c:338 msgid "_Priority text only" msgstr "শুধুমাত্র গুরুত্বপূর্ণ টেক্সট (_P)" # msgstr "শুধুমাত্র টেক্সটের _অগ্রাধিকার" #: ../bonobo/bonobo-ui-engine.c:91 msgid "Debug" msgstr "ডিবাগ" #: ../bonobo/bonobo-ui-engine.c:91 msgid "_Dump XML" msgstr "XML ডাম্প করা হবে (_D)" # msgstr "XML'র অস্থায়ী ভান্ডার" # msgstr "ডাম্প এক্স.এম.এল. (_ড)" #: ../bonobo/bonobo-ui-engine.c:92 msgid "Dump the entire UI's XML description to the console" msgstr "UI'র সম্পূর্ণ XML বিবরণ কনসোলে ডাম্প করা হবে" #: ../bonobo/bonobo-ui-engine-config.c:522 msgid "Configure UI" msgstr "UI কনফিগার করুন" #: ../bonobo/bonobo-ui-init-gtk.c:130 msgid "Gdk debugging flags to set" msgstr "Gdk ডিবাগ সংক্রান্ত নির্ধারণযোগ্য ফ্ল্যাগ" # msgstr "জিডিকে ডিবাগিং করার ফ্ল্যাগস নির্ধারণ করা হয়েছে" # msgstr "জিডিকে ডিবাগিং করার ফ্ল্যাগস নির্দিষ্ট করা হয়েছে" #: ../bonobo/bonobo-ui-init-gtk.c:130 ../bonobo/bonobo-ui-init-gtk.c:133 #: ../bonobo/bonobo-ui-init-gtk.c:161 ../bonobo/bonobo-ui-init-gtk.c:164 msgid "FLAGS" msgstr "FLAGS" # msgstr "পতাকাগুলো" #: ../bonobo/bonobo-ui-init-gtk.c:133 msgid "Gdk debugging flags to unset" msgstr "Gdk ডিবাগ সংক্রান্ত যে সমস্ত ফ্ল্যাগের মান বাতিল করা হবে" #: ../bonobo/bonobo-ui-init-gtk.c:137 msgid "X display to use" msgstr "ব্যবহারের উদ্দেশ্যে চিহ্নিত X ডিসপ্লে" # msgstr "ব্যবহার করার জন্য X ডিসপ্লে" # msgstr "ব্যবহৃত এক্স ডিসপ্লে" #: ../bonobo/bonobo-ui-init-gtk.c:137 msgid "DISPLAY" msgstr "DISPLAY" # msgstr "ডিসপ্লে" #: ../bonobo/bonobo-ui-init-gtk.c:141 msgid "X screen to use" msgstr "ব্যবহারের উদ্দেশ্যে চিহ্নিত X পর্দা" # msgstr "ব্যবহার করার জন্য এক্স পর্দা" # msgstr "ব্যবহৃত এক্স পর্দা" #: ../bonobo/bonobo-ui-init-gtk.c:141 msgid "SCREEN" msgstr "SCREEN" #: ../bonobo/bonobo-ui-init-gtk.c:145 msgid "Make X calls synchronous" msgstr "X'এ সিঙ্ক্রোনাস কল করা হবে" #: ../bonobo/bonobo-ui-init-gtk.c:151 msgid "Don't use X shared memory extension" msgstr "X'র শেয়ার্ড মেমরি এক্সটেনশন ব্যবহার করা হবে না" # msgstr "প্রসারিত এক্স অধিকৃত মেমরি কখনো ব্যবহার করবে না" #: ../bonobo/bonobo-ui-init-gtk.c:155 msgid "Program name as used by the window manager" msgstr "উইন্ডো পরিচালনব্যবস্থার দ্বারা ব্যবহৃত প্রোগ্রামের নাম" #: ../bonobo/bonobo-ui-init-gtk.c:155 msgid "NAME" msgstr "NAME" #: ../bonobo/bonobo-ui-init-gtk.c:158 msgid "Program class as used by the window manager" msgstr "উইন্ডো পরিচালনব্যবস্থার দ্বারা ব্যবহৃত প্রোগ্রামের শ্রেণী" # msgstr "উইন্ডো ম্যানেজার কর্তৃক ব্যবহৃত প্রোগ্রামের ক্লাস" #: ../bonobo/bonobo-ui-init-gtk.c:158 msgid "CLASS" msgstr "CLASS" # msgstr "স্টাইল" #: ../bonobo/bonobo-ui-init-gtk.c:161 msgid "Gtk+ debugging flags to set" msgstr "Gtk+ ডিবাগ সংক্রান্ত নির্ধারণযোগ্য ফ্ল্যাগ" # msgstr "জিটিকে+ ডিবাগিং করার ফ্ল্যাগ্‌স নির্ধারণ করা হয়েছে" # msgstr "জিটিকে+ ডিবাগিং ফ্ল্যাগস নির্ধারণ করা হয়েছে" # msgstr "জিটিকে+ ডিবাগিং ফ্ল্যাগস নির্দিষ্ট করা হয়েছে" #: ../bonobo/bonobo-ui-init-gtk.c:164 msgid "Gtk+ debugging flags to unset" msgstr "Gtk+ ডিবাগ সংক্রান্ত যে সমস্ত ফ্ল্যাগের মান বাতিল করা হবে" # msgstr "জিটিকে+ ডিবাগিং ফ্ল্যাগস নির্ধারণ করা হয় নি" # msgstr "জিটিকে+ ডিবাগিং ফ্ল্যাগস নির্দিষ্ট করা হয় নি" #: ../bonobo/bonobo-ui-init-gtk.c:167 msgid "Make all warnings fatal" msgstr "সকল সতর্কবার্তা গুরুতর রূপে চিহ্নিত হবে" #: ../bonobo/bonobo-ui-init-gtk.c:170 msgid "Load an additional Gtk module" msgstr "একটি অতিরিক্ত Gtk মডিউল লোড করা হবে" # msgstr "একটি সংযোজিত জিটিকে মডিউল লোড করো" #: ../bonobo/bonobo-ui-init-gtk.c:170 msgid "MODULE" msgstr "MODULE" #: ../bonobo/bonobo-ui-init-gtk.c:186 msgid "GTK+" msgstr "GTK+" #: ../bonobo/bonobo-ui-main.c:278 msgid "Bonobo GUI support" msgstr "Bonobo GUI সমর্থন ব্যবস্থা" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "B_oth" msgstr "উভয় (_o)" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "T_ext" msgstr "টেক্সট (_e)" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Hide t_ips" msgstr "টিপ আড়াল করা হবে (_i)" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Show t_ips" msgstr "টিপ প্রদর্শন করা হবে (_i)" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "_Hide toolbar" msgstr "টুল-বার আড়াল করা হবে (_H)" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "Customi_ze" msgstr "স্বনির্বাচিত বৈশিষ্ট্য (_z)" #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Customize the toolbar" msgstr "টুল-বারের স্বনির্বাচিত বৈশিষ্ট্য নির্ধারণ" #: ../bonobo/bonobo-ui-toolbar.c:1115 msgid "is floating" msgstr "ভাসমান" # msgstr "ভাসছে" # msgstr "উদ্দেশ্যহীনভাবে ভাসছে" #: ../bonobo/bonobo-ui-toolbar.c:1116 msgid "whether the toolbar is floating" msgstr "টুল-বার ভাসমান কিনা" #: ../bonobo/bonobo-ui-toolbar.c:1162 msgid "Style of bevel around the toolbar" msgstr "টুল-বারের চারপাশে বিভেলের বিন্যাস" # msgstr "উপাদান" # msgstr "পরিমান" #: ../bonobo/bonobo-ui-util.c:601 msgid "Could not display help for this application" msgstr "চিহ্নিত অ্যাপ্লিকেশনের সহায়িকা প্রদর্শন করতে ব্যর্থ" #: ../bonobo/bonobo-ui-util.c:643 msgid "_Contents" msgstr "সূচী (_C)" # msgstr "উপাদান" # msgstr "পরিমান" #: ../bonobo/bonobo-ui-util.c:644 msgid "View help for this application" msgstr "চিহ্নিত অ্যাপ্লিকেশনের সহায়িকা প্রদর্শন" #: ../bonobo/bonobo-window.c:345 msgid "Name of the window - used for configuration serialization." msgstr "উইন্ডোর নাম - ধারাবাহিক কনফিগারেশনের ক্ষেত্রে ব্যবহৃত।" #: ../bonobo/bonobo-zoomable.c:326 msgid "Zoom level" msgstr "বড় করে প্রদর্শনের মাত্রা" # msgstr "বড় করে দেখার স্তর" # msgstr "বড় করে দেখার ধাপ" #: ../bonobo/bonobo-zoomable.c:327 msgid "The degree of enlargment" msgstr "সম্প্রসারণের মাত্রা" # msgstr "বৃদ্ধি করার মাত্রা" #: ../bonobo/bonobo-zoomable.c:335 msgid "Minimum Zoom level" msgstr "প্রদর্শনের সর্বনিম্ন মাপ" # msgstr "সর্বনিম্ন বড় করে দেখার ধাপ" #: ../bonobo/bonobo-zoomable.c:336 msgid "The minimum degree of enlargment" msgstr "সম্প্রসারণের সর্বনিম্ন মাত্রা" # msgstr "সর্বনিম্ন বৃদ্ধি করার মাত্রা" #: ../bonobo/bonobo-zoomable.c:344 msgid "Maximum Zoom level" msgstr "প্রদর্শনের সর্বোচ্চ মাপ" # msgstr "সর্বোচ্চ বড় করে দেখার ধাপ" #: ../bonobo/bonobo-zoomable.c:345 msgid "The maximum degree of enlargment" msgstr "সম্প্রসারণের সর্বোচ্চ মাত্রা" # msgstr "সর্বোচ্চ বৃদ্ধি করার মাত্রা" #: ../bonobo/bonobo-zoomable.c:353 msgid "Has a minimum Zoom level" msgstr "সর্বনিম্ন প্রদর্শনের মাত্রা উপস্থিত" # msgstr "সর্বনিম্ন বড় করে দেখার স্তর আছে কিনা" # msgstr "সর্বনিম্ন বড় করে দেখার ধাপ আছে কিনা" #: ../bonobo/bonobo-zoomable.c:354 msgid "Whether we have a valid minimum zoom level" msgstr "প্রদর্শনের সর্বনিম্ন বৈধ মাপ উপস্থিত রয়েছে কিনা" # msgstr "যে কোনো ক্ষেত্র আমাদের ত্রুটিহীন সর্বনিম্ন বড় করে দেখার স্তর রয়েছে কিনা" # msgstr "যে কোনো ক্ষেত্র আমাদের সঠিক সর্বনিম্ন বড় করে দেখার ধাপ আছে কিনা" #: ../bonobo/bonobo-zoomable.c:361 msgid "Has a maximum Zoom level" msgstr "সর্বোচ্চ প্রদর্শনের মাত্রা উপস্থিত" # msgstr "সর্বোচ্চ বড় করে দেখার স্তর রয়েছে কিনা" # msgstr "সর্বোচ্চ বড় করে দেখার ধাপ আছে কিনা" #: ../bonobo/bonobo-zoomable.c:362 msgid "Whether we have a valid maximum zoom level" msgstr "প্রদর্শনের সর্বোচ্চ বৈধ মাপ উপস্থিত রয়েছে কিনা" # msgstr "যে কোনো ক্ষেত্র আমাদের ত্রুটিহীন সর্বোচ্চ বড় করে দেখার স্তর রয়েছে কিনা" # msgstr "যে কোনো ক্ষেত্র আমাদের সঠিক সর্বোচ্চ বড় করে দেখার ধাপ আছে কিনা" #: ../bonobo/bonobo-zoomable.c:369 msgid "Is continuous" msgstr "ধারাবাহিক" # msgstr "লাগাতার চলছে নাকি?" #: ../bonobo/bonobo-zoomable.c:370 msgid "Whether we zoom continuously (as opposed to jumps)" msgstr "" "ধারাবাহিকরূপে প্রদর্শনের মাত্রা বৃদ্ধি করা হবে কি না (একযোগে অধিক পরিমাণ বৃদ্ধির " "পরিবর্তে)" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:1 msgid "About this application" msgstr "অ্যাপ্লিকেশন পরিচিতি" # msgstr "এই অ্যাপ্লিকেশন সম্বন্ধে" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:2 msgid "Select" msgstr "নির্বাচন করুন" # msgstr "নির্বাচন করা" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:3 msgid "_About..." msgstr "পরিচিতি...(_A)" # msgstr "_সম্বন্ধে..." #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:4 msgid "_Edit" msgstr "সম্পাদনা (_E)" # msgstr "এডিট (_এ)" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:5 #: ../tools/browser/bonobo-browser.xml.h:4 msgid "_File" msgstr "ফাইল (_F)" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:6 msgid "_Select" msgstr "নির্বাচন (_S)" # msgstr "বাছাই করা ()" #: ../samples/bonoboui/hello.c:63 msgid "This does nothing; it is only a demonstration." msgstr "এর দ্বারা কোনো কর্ম সঞ্চালিত হয় না; এটি মূলত মহড়া।" # msgstr "এটা আসলে কিছুই না; শুধুমাত্র একটি নির্দেশনা ছাড়া।" #: ../samples/bonoboui/hello.c:145 msgid "BonoboUI-Hello." msgstr "BonoboUI-Hello." # msgstr "বনোবো ইউ.আই.(UI)-শুভেচ্ছা" #: ../samples/bonoboui/hello.c:217 msgid "Gnome Hello" msgstr "Gnome Hello" # msgstr "গুহ্‌নোম শুভেচ্ছা" #. Create Label and put it in the Button: #: ../samples/bonoboui/hello.c:272 msgid "Hello, World!" msgstr "Hello, World!" #: ../samples/bonoboui/hello.c:312 msgid "Cannot init libbonoboui code" msgstr "libbonoboui কোড init করতে ব্যর্থ" #: ../samples/controls/bonobo-sample-controls.c:131 msgid "Could not initialize Bonobo UI" msgstr "Bonobo UI আরম্ভ করতে ব্যর্থ" #: ../tools/browser/bonobo-browser.desktop.in.h:1 msgid "Bonobo Component Browser" msgstr "Bonobo Component Browser" #: ../tools/browser/bonobo-browser.desktop.in.h:2 msgid "Shows available Bonobo components" msgstr "উপলব্ধ Bonobo বস্তু প্রদর্শন করা হয়" #: ../tools/browser/bonobo-browser.xml.h:1 msgid "About this program..." msgstr "প্রোগ্রাম পরিচিতি..." #: ../tools/browser/bonobo-browser.xml.h:2 msgid "Close the current window" msgstr "বর্তমান উইন্ডো বন্ধ করুন" #: ../tools/browser/bonobo-browser.xml.h:3 msgid "Open a new window" msgstr "নতুন উইন্ডো খুলুন" #: ../tools/browser/bonobo-browser.xml.h:5 msgid "_Help" msgstr "সহায়তা (_H)" #. Build the general tab #: ../tools/browser/component-details.c:109 msgid "General" msgstr "সাধারণ" #: ../tools/browser/component-details.c:116 #: ../tools/browser/component-list.c:398 msgid "IID" msgstr "IID" #: ../tools/browser/component-details.c:117 msgid "Location" msgstr "অবস্থান" #. Build the details tab #: ../tools/browser/component-details.c:167 msgid "Details" msgstr "বিবরণ" #: ../tools/browser/component-details.c:168 msgid "Detailed Information" msgstr "বিস্তারিত তথ্য" #: ../tools/browser/component-list.c:367 ../tools/browser/window.c:283 msgid "Active" msgstr "সক্রিয়" #: ../tools/browser/component-list.c:388 msgid "Type" msgstr "ধরন" #: ../tools/browser/window.c:162 msgid "Component Details" msgstr "বস্তুর বিবরণ" #: ../tools/browser/window.c:208 msgid "Bonobo Browser" msgstr "Bonobo Browser" #: ../tools/browser/window.c:210 msgid "Copyright 2001, The GNOME Foundation" msgstr "স্বত্বাধিকার ২০০১, GNOME Foundation" #: ../tools/browser/window.c:211 msgid "Bonobo component browser" msgstr "Bonobo component browser" #: ../tools/browser/window.c:214 msgid "translator-credits" msgstr "" "অঙ্কুর গ্রুপের পক্ষ থেকে খন্দকার মুজাহিদুল ইসলাম সুজন \n" "রুণা ভট্টাচার্য (runabh@gmail.com)" #. create the window #: ../tools/browser/window.c:240 msgid "Component Browser" msgstr "Component Browser" #. Fill out the tool bar #: ../tools/browser/window.c:280 msgid "All" msgstr "সমগ্র" #: ../tools/browser/window.c:286 msgid "Inactive" msgstr "নিষ্ক্রিয়" libbonoboui-2.24.5/po/li.po0000644000076400007640000003056211173072741012433 00000000000000# Copyright (C) 2002 Free Software Foundation, Inc. # This file is distributed under the same license as the libbonoboUI package. # Mathieu van Woerkom , 2003. # msgid "" msgstr "" "Project-Id-Version: libbonoboui HEAD\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2005-09-10 18:44+0200\n" "PO-Revision-Date: 2003-05-15 17:00+0000\n" "Last-Translator: Mathieu van Woerkom \n" "Language-Team: Limburgish \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../bonobo/bonobo-canvas-item.c:683 msgid "corba factory" msgstr "corba-febrik" #: ../bonobo/bonobo-canvas-item.c:684 msgid "The factory pointer" msgstr "De febrikpointer" #: ../bonobo/bonobo-canvas-item.c:693 msgid "corba UI container" msgstr "corba UI-container" #: ../bonobo/bonobo-canvas-item.c:694 msgid "The User interface container" msgstr "De Gebroekersinterface-container" #: ../bonobo/bonobo-dock-item-grip.c:257 msgid "Dock the toolbar" msgstr "Getuugbalk vaszètte" #: ../bonobo/bonobo-dock-item-grip.c:258 #, fuzzy msgid "Undock the toolbar" msgstr "Getuugbalk vriemake" #: ../bonobo/bonobo-dock-item.c:235 ../bonobo/bonobo-dock-item.c:236 #: ../bonobo/bonobo-ui-toolbar.c:1175 msgid "Shadow type" msgstr "Sjeem tiep" #: ../bonobo/bonobo-dock-item.c:246 ../bonobo/bonobo-dock-item.c:247 #: ../bonobo/bonobo-ui-toolbar.c:1119 ../bonobo/bonobo-ui-toolbar.c:1120 msgid "Orientation" msgstr "Orjentasie" #: ../bonobo/bonobo-dock-item.c:257 ../bonobo/bonobo-dock-item.c:258 #: ../bonobo/bonobo-ui-toolbar.c:1138 ../bonobo/bonobo-ui-toolbar.c:1139 msgid "Preferred width" msgstr "Gewunsjde breide" #: ../bonobo/bonobo-dock-item.c:266 ../bonobo/bonobo-dock-item.c:267 #: ../bonobo/bonobo-ui-toolbar.c:1147 ../bonobo/bonobo-ui-toolbar.c:1148 msgid "Preferred height" msgstr "Gewunsjde huugde" #: ../bonobo/bonobo-file-selector-util.c:357 msgid "Select a file to open" msgstr "Keus 't te äöpene besjtandj" #: ../bonobo/bonobo-file-selector-util.c:385 msgid "Select files to open" msgstr "Keus de te äöpene bestanden" #: ../bonobo/bonobo-file-selector-util.c:414 msgid "Select a filename to save" msgstr "Keus 't besjtandj veur op te sjlaon" #: ../bonobo/bonobo-plug.c:425 msgid "Event Forwarding" msgstr "Gebäörtenisse Doorsjikke" #: ../bonobo/bonobo-plug.c:426 msgid "Whether X events should be forwarded" msgstr "Of gebäörtenisse van X doorgesjik mote waere" #: ../bonobo/bonobo-selector-widget.c:302 ../bonobo/bonobo-window.c:346 #: ../tools/browser/component-details.c:114 #: ../tools/browser/component-list.c:381 msgid "Name" msgstr "Naam" #: ../bonobo/bonobo-selector-widget.c:324 #: ../tools/browser/component-details.c:115 msgid "Description" msgstr "Ómsjrieving" #: ../bonobo/bonobo-selector.c:345 msgid "Interfaces required" msgstr "Interfaces benudig" #: ../bonobo/bonobo-selector.c:346 msgid "" "A NULL-terminated array of interfaces which a server must support in order " "to be listed in the selector. Defaults to \"IDL:Bonobo/Embeddable:1.0\" if " "no interfaces are listed" msgstr "" "Ein NULL_getermineerde array van interfaces die ein server moot sjtiepe veur " "in de selector te kènne waere opgesómp. Sjteit sjtanderd op \"IDL:Bonobo/" "Embeddable:1.0\" wen dao gei interfaces waere geneump" #: ../bonobo/bonobo-selector.c:348 msgid "Interface required entry" msgstr "Interface benudig veldj" #: ../bonobo/bonobo-selector.c:349 msgid "One of the interfaces that's required" msgstr "Ein van de interfaces die benudig zeen" #: ../bonobo/bonobo-ui-config-widget.c:268 msgid "Visible" msgstr "Zichbaar" #: ../bonobo/bonobo-ui-config-widget.c:275 msgid "_Show" msgstr "_Tuine" #: ../bonobo/bonobo-ui-config-widget.c:282 msgid "_Hide" msgstr "_Maskere" #: ../bonobo/bonobo-ui-config-widget.c:288 msgid "_View tooltips" msgstr "T_uin tooltips" #: ../bonobo/bonobo-ui-config-widget.c:293 msgid "Toolbars" msgstr "Getuugbalke" #: ../bonobo/bonobo-ui-config-widget.c:303 msgid "toolbars" msgstr "getuugbalke" #: ../bonobo/bonobo-ui-config-widget.c:314 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "Look" msgstr "Uterlik" #: ../bonobo/bonobo-ui-config-widget.c:323 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "_Icon" msgstr "_Piktogram" #: ../bonobo/bonobo-ui-config-widget.c:329 msgid "_Text and Icon" msgstr "_Teks en Piktogram" #: ../bonobo/bonobo-ui-config-widget.c:335 msgid "Text only" msgstr "Allein teks" #: ../bonobo/bonobo-ui-config-widget.c:341 msgid "_Priority text only" msgstr "Allein _belangrieke teks" #: ../bonobo/bonobo-ui-engine.c:90 msgid "Debug" msgstr "Debugge" #: ../bonobo/bonobo-ui-engine.c:90 msgid "_Dump XML" msgstr "XML _dumpe" #: ../bonobo/bonobo-ui-engine.c:91 msgid "Dump the entire UI's XML description to the console" msgstr "De ganse XML-besjrieving van de UI in de console dumpe" #: ../bonobo/bonobo-ui-engine-config.c:522 msgid "Configure UI" msgstr "Gebroekersinterface insjtèlle" #: ../bonobo/bonobo-ui-init-gtk.c:113 msgid "Gdk debugging flags to set" msgstr "Aan te zètte Gdk debugmarkeringe " #: ../bonobo/bonobo-ui-init-gtk.c:113 ../bonobo/bonobo-ui-init-gtk.c:116 #: ../bonobo/bonobo-ui-init-gtk.c:144 ../bonobo/bonobo-ui-init-gtk.c:147 msgid "FLAGS" msgstr "MARKERINGE" #: ../bonobo/bonobo-ui-init-gtk.c:116 msgid "Gdk debugging flags to unset" msgstr "Oet te zètte Gdk debugmarkeringe" #: ../bonobo/bonobo-ui-init-gtk.c:120 msgid "X display to use" msgstr "Te gebroeke X-display" #: ../bonobo/bonobo-ui-init-gtk.c:120 msgid "DISPLAY" msgstr "DISPLAY" #: ../bonobo/bonobo-ui-init-gtk.c:124 msgid "X screen to use" msgstr "Te gebroeken X-sjirm" #: ../bonobo/bonobo-ui-init-gtk.c:124 msgid "SCREEN" msgstr "SJIRM" #: ../bonobo/bonobo-ui-init-gtk.c:128 msgid "Make X calls synchronous" msgstr "X-calls sinkroon make" #: ../bonobo/bonobo-ui-init-gtk.c:134 msgid "Don't use X shared memory extension" msgstr "Gei gebroek make van X shared memory extension" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "Program name as used by the window manager" msgstr "Programnaam wie de windowmanager deze gebroek" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "NAME" msgstr "NAAM" #: ../bonobo/bonobo-ui-init-gtk.c:141 msgid "Program class as used by the window manager" msgstr "Pragramklas wie de windowmanager dees gebroek" #: ../bonobo/bonobo-ui-init-gtk.c:141 msgid "CLASS" msgstr "KLAS" #: ../bonobo/bonobo-ui-init-gtk.c:144 msgid "Gtk+ debugging flags to set" msgstr "Aan te zètte Gtk+ debugmarkeringe" #: ../bonobo/bonobo-ui-init-gtk.c:147 msgid "Gtk+ debugging flags to unset" msgstr "Oet te zètte Gtk+ debugmarkeringe" #: ../bonobo/bonobo-ui-init-gtk.c:150 msgid "Make all warnings fatal" msgstr "Laot alle waarsjoewinge fataal zeen" #: ../bonobo/bonobo-ui-init-gtk.c:153 msgid "Load an additional Gtk module" msgstr "Laoj ein extra Gtk module" #: ../bonobo/bonobo-ui-init-gtk.c:153 msgid "MODULE" msgstr "MODULE" #: ../bonobo/bonobo-ui-init-gtk.c:162 msgid "GTK+" msgstr "GTK+" #: ../bonobo/bonobo-ui-main.c:278 msgid "Bonobo GUI support" msgstr "Bonobo GUI sjtiep" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "B_oth" msgstr "_Beids" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "T_ext" msgstr "T_eks" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Hide t_ips" msgstr "Maskeringst_ips" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Show t_ips" msgstr "Tuin _tips" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "_Hide toolbar" msgstr "_Maskeer getuugbalk" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "Customi_ze" msgstr "_Aanpasse" #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Customize the toolbar" msgstr "Getuugbalk aanpasse" #: ../bonobo/bonobo-ui-toolbar.c:1129 msgid "is floating" msgstr "is sjwevend" #: ../bonobo/bonobo-ui-toolbar.c:1130 msgid "whether the toolbar is floating" msgstr "of de getuugbalk sjwevend is" #: ../bonobo/bonobo-ui-toolbar.c:1176 msgid "Style of bevel around the toolbar" msgstr "Sjtiel van effek róndj de getuugbalk" #: ../bonobo/bonobo-ui-util.c:630 msgid "_Contents" msgstr "_Inhaud" #: ../bonobo/bonobo-ui-util.c:631 msgid "View help for this application" msgstr "Tuin de hulp veur dit program" #: ../bonobo/bonobo-window.c:347 msgid "Name of the window - used for configuration serialization." msgstr "Naam van 't vinster - gebroek veur configurasieserialisasie." #: ../bonobo/bonobo-zoomable.c:326 msgid "Zoom level" msgstr "Sjtanderd zoomnivo" #: ../bonobo/bonobo-zoomable.c:327 msgid "The degree of enlargment" msgstr "Mate van vergroeting" #: ../bonobo/bonobo-zoomable.c:335 msgid "Minimum Zoom level" msgstr "Minimaal zoomnivo" #: ../bonobo/bonobo-zoomable.c:336 msgid "The minimum degree of enlargment" msgstr "Minimale mate van vergroeting" #: ../bonobo/bonobo-zoomable.c:344 msgid "Maximum Zoom level" msgstr "Maximaal zoomnivo" #: ../bonobo/bonobo-zoomable.c:345 msgid "The maximum degree of enlargment" msgstr "Maximale mate van vergroeting" #: ../bonobo/bonobo-zoomable.c:353 msgid "Has a minimum Zoom level" msgstr "Haet ein minimaal Zoomnivo" #: ../bonobo/bonobo-zoomable.c:354 msgid "Whether we have a valid minimum zoom level" msgstr "Of 't gein geljig minimaal zoomnivo geuf" #: ../bonobo/bonobo-zoomable.c:361 msgid "Has a maximum Zoom level" msgstr "Haet ein maximaal Zoomnivo" #: ../bonobo/bonobo-zoomable.c:362 msgid "Whether we have a valid maximum zoom level" msgstr "Of 't gein geljig maximaal zoomnivo geuf" #: ../bonobo/bonobo-zoomable.c:369 msgid "Is continuous" msgstr "Verlöp doorloupend" #: ../bonobo/bonobo-zoomable.c:370 msgid "Whether we zoom continuously (as opposed to jumps)" msgstr "Of dao doorloupend gezoomp weurt (in plaats van in sjtappe)" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:1 msgid "About this application" msgstr "Euver dit program" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:2 msgid "Select" msgstr "Keus" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:3 msgid "_About..." msgstr "_Info..." #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:4 msgid "_Edit" msgstr "B_ewirke" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:5 #: ../tools/browser/bonobo-browser.xml.h:4 msgid "_File" msgstr "_Besjtandj" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:6 msgid "_Select" msgstr "_Keus" #: ../samples/bonoboui/hello.c:63 msgid "This does nothing; it is only a demonstration." msgstr "Hie gebäört niks; Dit is zjus ein demonstrasie." #: ../samples/bonoboui/hello.c:145 msgid "BonoboUI-Hello." msgstr "BonoboUI-Hallo." #: ../samples/bonoboui/hello.c:217 msgid "Gnome Hello" msgstr "Gnome Hallo" #. Create Label and put it in the Button: #: ../samples/bonoboui/hello.c:272 msgid "Hello, World!" msgstr "Hallo, Welt!" #: ../samples/bonoboui/hello.c:312 msgid "Cannot init libbonoboui code" msgstr "De libbonoboui kood kèn neet geïnisialiseerd waere" #: ../samples/controls/bonobo-sample-controls.c:131 msgid "Could not initialize Bonobo UI" msgstr "Kós Bonobo UI neet inisialisere" #: ../tools/browser/bonobo-browser.desktop.in.h:1 msgid "Bonobo Component Browser" msgstr "" #: ../tools/browser/bonobo-browser.desktop.in.h:2 msgid "Shows available Bonobo components" msgstr "" #: ../tools/browser/bonobo-browser.xml.h:1 #, fuzzy msgid "About this program..." msgstr "Euver dit program" #: ../tools/browser/bonobo-browser.xml.h:2 msgid "Close the current window" msgstr "" #: ../tools/browser/bonobo-browser.xml.h:3 msgid "Open a new window" msgstr "" #: ../tools/browser/bonobo-browser.xml.h:5 #, fuzzy msgid "_Help" msgstr "_Maskere" #. Build the general tab #: ../tools/browser/component-details.c:109 msgid "General" msgstr "" #: ../tools/browser/component-details.c:116 #: ../tools/browser/component-list.c:401 msgid "IID" msgstr "" #: ../tools/browser/component-details.c:117 msgid "Location" msgstr "" #. Build the details tab #: ../tools/browser/component-details.c:167 msgid "Details" msgstr "" #: ../tools/browser/component-details.c:168 msgid "Detailed Information" msgstr "" #: ../tools/browser/component-list.c:370 ../tools/browser/window.c:290 msgid "Active" msgstr "" #: ../tools/browser/component-list.c:391 msgid "Type" msgstr "" #: ../tools/browser/window.c:170 msgid "Component Details" msgstr "" #: ../tools/browser/window.c:215 msgid "Bonobo Browser" msgstr "" #: ../tools/browser/window.c:216 msgid "Copyright 2001, The GNOME Foundation" msgstr "" #: ../tools/browser/window.c:217 msgid "Bonobo component browser" msgstr "" #. create the window #: ../tools/browser/window.c:247 msgid "Component Browser" msgstr "" #. Fill out the tool bar #: ../tools/browser/window.c:287 msgid "All" msgstr "" #: ../tools/browser/window.c:293 msgid "Inactive" msgstr "" libbonoboui-2.24.5/po/mg.po0000644000076400007640000003245411173072741012434 00000000000000# MALAGASY TRANSLATION OF LIBBONOBOUI # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # Thierry Randrianiriana , 2007. msgid "" msgstr "" "Project-Id-Version: LIBBONOBOUI VERSION\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2006-12-20 07:54+0100\n" "PO-Revision-Date: 2007-02-11 09:10+0300\n" "Last-Translator: Fanomezana Rajaonarisoa \n" "Language-Team: MALAGASY \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../bonobo/bonobo-canvas-item.c:683 msgid "corba factory" msgstr "Toeram-pamolavolana ny Corba" #: ../bonobo/bonobo-canvas-item.c:684 msgid "The factory pointer" msgstr "Ny pointeurn'ilay toeram-pamolavolana" #: ../bonobo/bonobo-canvas-item.c:693 msgid "corba UI container" msgstr "Fisy ny UIn'ny corba" #: ../bonobo/bonobo-canvas-item.c:694 msgid "The User interface container" msgstr "Ny toerana fisian'ny mpaneran'ny mpampiasa" #: ../bonobo/bonobo-dock-item-grip.c:257 msgid "Dock the toolbar" msgstr "Apetao ny anjam-pitaovana" #: ../bonobo/bonobo-dock-item-grip.c:258 msgid "Undock the toolbar" msgstr "Vahao ny anjam-pitaovana" #: ../bonobo/bonobo-dock-item.c:230 #: ../bonobo/bonobo-dock-item.c:231 #: ../bonobo/bonobo-ui-toolbar.c:1164 msgid "Shadow type" msgstr "Karazan'aloka" #: ../bonobo/bonobo-dock-item.c:241 #: ../bonobo/bonobo-dock-item.c:242 #: ../bonobo/bonobo-ui-toolbar.c:1108 #: ../bonobo/bonobo-ui-toolbar.c:1109 msgid "Orientation" msgstr "Fitodika" #: ../bonobo/bonobo-dock-item.c:252 #: ../bonobo/bonobo-dock-item.c:253 #: ../bonobo/bonobo-ui-toolbar.c:1127 #: ../bonobo/bonobo-ui-toolbar.c:1128 msgid "Preferred width" msgstr "Indra safidy" #: ../bonobo/bonobo-dock-item.c:261 #: ../bonobo/bonobo-dock-item.c:262 #: ../bonobo/bonobo-ui-toolbar.c:1136 #: ../bonobo/bonobo-ui-toolbar.c:1137 msgid "Preferred height" msgstr "Haavo safidy" #: ../bonobo/bonobo-file-selector-util.c:357 msgid "Select a file to open" msgstr "Misafidiana rakitra hosokafana" #: ../bonobo/bonobo-file-selector-util.c:385 msgid "Select files to open" msgstr "Misafidiana rakitra maro hosokafana" #: ../bonobo/bonobo-file-selector-util.c:414 msgid "Select a filename to save" msgstr "Misafidiana rakitra horaiketina" #: ../bonobo/bonobo-plug.c:425 msgid "Event Forwarding" msgstr "Fampitana tranga" #: ../bonobo/bonobo-plug.c:426 msgid "Whether X events should be forwarded" msgstr "Raha tokony ampitaina ny tranga X" #: ../bonobo/bonobo-selector-widget.c:302 #: ../bonobo/bonobo-window.c:346 #: ../tools/browser/component-details.c:114 #: ../tools/browser/component-list.c:378 msgid "Name" msgstr "Anarana" #: ../bonobo/bonobo-selector-widget.c:324 #: ../tools/browser/component-details.c:115 msgid "Description" msgstr "Soritsoritra" #: ../bonobo/bonobo-selector.c:345 msgid "Interfaces required" msgstr "Mila mpanera" #: ../bonobo/bonobo-selector.c:346 msgid "A NULL-terminated array of interfaces which a server must support in order to be listed in the selector. Defaults to \"IDL:Bonobo/Embeddable:1.0\" if no interfaces are listed" msgstr "Andiam-panera miafara amin'ny NULL izay tsy maintsy raisin'ny mpizara an-tànana mba ahatafiditra azy anatin'ny mpisafidy. Hiverina ho lasitra \"IDL:Bonobo/Embeddable:1.0\" ilay izy raha tsy misy mpanera voafaritra" #: ../bonobo/bonobo-selector.c:348 msgid "Interface required entry" msgstr "Singan'ny mpanera ilaina" #: ../bonobo/bonobo-selector.c:349 msgid "One of the interfaces that's required" msgstr "Ny iray amin'ireo mpanera ilaina" #: ../bonobo/bonobo-ui-config-widget.c:268 msgid "Visible" msgstr "Hita maso" #: ../bonobo/bonobo-ui-config-widget.c:275 msgid "_Show" msgstr "_Asehoy" #: ../bonobo/bonobo-ui-config-widget.c:282 msgid "_Hide" msgstr "_Afeno" #: ../bonobo/bonobo-ui-config-widget.c:288 msgid "_View tooltips" msgstr "_Hizaha ny torohevitra miserana" #: ../bonobo/bonobo-ui-config-widget.c:293 msgid "Toolbars" msgstr "Anjam-pitaovana" #: ../bonobo/bonobo-ui-config-widget.c:303 msgid "toolbars" msgstr "anjam-pitaovana" #: ../bonobo/bonobo-ui-config-widget.c:314 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "Look" msgstr "Endrika" #: ../bonobo/bonobo-ui-config-widget.c:323 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "_Icon" msgstr "_Kisary" #: ../bonobo/bonobo-ui-config-widget.c:329 msgid "_Text and Icon" msgstr "_Soratra sy kisary" #: ../bonobo/bonobo-ui-config-widget.c:335 msgid "Text only" msgstr "Soratra fotsiny" #: ../bonobo/bonobo-ui-config-widget.c:341 msgid "_Priority text only" msgstr "_Soratra manan-danja fotsiny" #: ../bonobo/bonobo-ui-engine.c:91 msgid "Debug" msgstr "Débogage" #: ../bonobo/bonobo-ui-engine.c:91 msgid "_Dump XML" msgstr "_Asehoy ilay XML" #: ../bonobo/bonobo-ui-engine.c:92 msgid "Dump the entire UI's XML description to the console" msgstr "Maneho ny soritsoritra XML an'ilay UI rehetra amin'ny konsoly" #: ../bonobo/bonobo-ui-engine-config.c:522 msgid "Configure UI" msgstr "Hikirakira ilay UI" #: ../bonobo/bonobo-ui-init-gtk.c:126 msgid "Gdk debugging flags to set" msgstr "Saina débogage Gdk hofaritana" #: ../bonobo/bonobo-ui-init-gtk.c:126 #: ../bonobo/bonobo-ui-init-gtk.c:129 #: ../bonobo/bonobo-ui-init-gtk.c:157 #: ../bonobo/bonobo-ui-init-gtk.c:160 msgid "FLAGS" msgstr "SAINA" #: ../bonobo/bonobo-ui-init-gtk.c:129 msgid "Gdk debugging flags to unset" msgstr "Saina débogage Gdk hofoanana" #: ../bonobo/bonobo-ui-init-gtk.c:133 msgid "X display to use" msgstr "Seho X hampiasaina" #: ../bonobo/bonobo-ui-init-gtk.c:133 msgid "DISPLAY" msgstr "SEHO" #: ../bonobo/bonobo-ui-init-gtk.c:137 msgid "X screen to use" msgstr "Efijery X hampiasaina" #: ../bonobo/bonobo-ui-init-gtk.c:137 msgid "SCREEN" msgstr "EFIJERY" #: ../bonobo/bonobo-ui-init-gtk.c:141 msgid "Make X calls synchronous" msgstr "Ampiarao ny antso X" #: ../bonobo/bonobo-ui-init-gtk.c:147 msgid "Don't use X shared memory extension" msgstr "Aza ampiasaina ny tovan'arika iombonana X" #: ../bonobo/bonobo-ui-init-gtk.c:151 msgid "Program name as used by the window manager" msgstr "Ny anaran-drindranasa ampiasain'ilay mpandrindra fikandrana" #: ../bonobo/bonobo-ui-init-gtk.c:151 msgid "NAME" msgstr "ANARANA" #: ../bonobo/bonobo-ui-init-gtk.c:154 msgid "Program class as used by the window manager" msgstr "Ny sokajin-drindranasa ampiasain'ny mpandrindra fikandrana" #: ../bonobo/bonobo-ui-init-gtk.c:154 msgid "CLASS" msgstr "SOKAJY" #: ../bonobo/bonobo-ui-init-gtk.c:157 msgid "Gtk+ debugging flags to set" msgstr "Saina débogage Gtk+ hofaritana" #: ../bonobo/bonobo-ui-init-gtk.c:160 msgid "Gtk+ debugging flags to unset" msgstr "Saina débogage Gtk+ hofoanana" #: ../bonobo/bonobo-ui-init-gtk.c:163 msgid "Make all warnings fatal" msgstr "Mahatonga ny fampilazana rehetra hanandindom-pahavoazana" #: ../bonobo/bonobo-ui-init-gtk.c:166 msgid "Load an additional Gtk module" msgstr "Maka singa mpiorina Gtk fanampiny" #: ../bonobo/bonobo-ui-init-gtk.c:166 msgid "MODULE" msgstr "SINGAMPIORINA" #: ../bonobo/bonobo-ui-init-gtk.c:182 msgid "GTK+" msgstr "GTK+" #: ../bonobo/bonobo-ui-main.c:278 msgid "Bonobo GUI support" msgstr "Fandraisana an-tànana GUI Bonobo" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "B_oth" msgstr "_Izy roa" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "T_ext" msgstr "_Soratra" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Hide t_ips" msgstr "_Afeno ny torohevitra" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Show t_ips" msgstr "Aseho ny _torohevitra" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "_Hide toolbar" msgstr "_Afeno ny anjam-pitaovana" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "Customi_ze" msgstr "Hamaritra _endrika" #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Customize the toolbar" msgstr "Mamaritra ny endrik'ilay anjam-pitaovana" #: ../bonobo/bonobo-ui-toolbar.c:1118 msgid "is floating" msgstr "Mitsingevana" #: ../bonobo/bonobo-ui-toolbar.c:1119 msgid "whether the toolbar is floating" msgstr "raha atsingevana ilay ajam-pitaovana" #: ../bonobo/bonobo-ui-toolbar.c:1165 msgid "Style of bevel around the toolbar" msgstr "Ny endriky ny sompirana manodidina ilay anjam-pitaovana" #: ../bonobo/bonobo-ui-util.c:630 msgid "_Contents" msgstr "_Mpiaty" #: ../bonobo/bonobo-ui-util.c:631 msgid "View help for this application" msgstr "Maneho ny torolàlana momba io rindranasa io" #: ../bonobo/bonobo-window.c:347 msgid "Name of the window - used for configuration serialization." msgstr "Ny anaran'ilay fikandrana - ampiasaina amin'ny fanasaratsarahana amin'ny fikirakirana." #: ../bonobo/bonobo-zoomable.c:326 msgid "Zoom level" msgstr "Tahan'ny zòma" #: ../bonobo/bonobo-zoomable.c:327 msgid "The degree of enlargment" msgstr "Ny tahan'ny fanalehibiazana" #: ../bonobo/bonobo-zoomable.c:335 msgid "Minimum Zoom level" msgstr "Taha ambany indrindra" #: ../bonobo/bonobo-zoomable.c:336 msgid "The minimum degree of enlargment" msgstr "Ny taha fanalehibiazana ambany indrindra" #: ../bonobo/bonobo-zoomable.c:344 msgid "Maximum Zoom level" msgstr "Taha ambony indrindra" #: ../bonobo/bonobo-zoomable.c:345 msgid "The maximum degree of enlargment" msgstr "Ny tahan'ny fanalehibiazana ambony indrindra" #: ../bonobo/bonobo-zoomable.c:353 msgid "Has a minimum Zoom level" msgstr "Manana taha ambany indrindra" #: ../bonobo/bonobo-zoomable.c:354 msgid "Whether we have a valid minimum zoom level" msgstr "Raha manana tahan'ny zòma ambany indrindra mitombina isika" #: ../bonobo/bonobo-zoomable.c:361 msgid "Has a maximum Zoom level" msgstr "Manana taha ambony indrindra" #: ../bonobo/bonobo-zoomable.c:362 msgid "Whether we have a valid maximum zoom level" msgstr "Raha manana tahan'ny zòma ambony indrindra mitombina isika" #: ../bonobo/bonobo-zoomable.c:369 msgid "Is continuous" msgstr "Tsy an-kiato" #: ../bonobo/bonobo-zoomable.c:370 msgid "Whether we zoom continuously (as opposed to jumps)" msgstr "Raha atao tsy an-kiato (mifanohitra amin'ny mandingandingana) ny zòma" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:1 msgid "About this application" msgstr "Mombamomba ity rindranasa ity" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:2 msgid "Select" msgstr "Hisafidy" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:3 msgid "_About..." msgstr "_Mombamomba..." #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:4 msgid "_Edit" msgstr "_Fanovana" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:5 #: ../tools/browser/bonobo-browser.xml.h:4 msgid "_File" msgstr "_Rakitra" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:6 msgid "_Select" msgstr "_Hisafidy" #: ../samples/bonoboui/hello.c:63 msgid "This does nothing; it is only a demonstration." msgstr "Tsy manao na inona na inona fa natao anehoana zavatra fotsiny io." #: ../samples/bonoboui/hello.c:145 msgid "BonoboUI-Hello." msgstr "BonoboUI-Hello." #: ../samples/bonoboui/hello.c:217 msgid "Gnome Hello" msgstr "Fiarahaban'ny Gnome" #. Create Label and put it in the Button: #: ../samples/bonoboui/hello.c:272 msgid "Hello, World!" msgstr "Miarahaba izao tontolo izao!" #: ../samples/bonoboui/hello.c:312 msgid "Cannot init libbonoboui code" msgstr "Tsy voatomboka ny fangon'ny libbonoboui" #: ../samples/controls/bonobo-sample-controls.c:131 msgid "Could not initialize Bonobo UI" msgstr "Tsy voatomboka ny UIn'ny Bonobo" #: ../tools/browser/bonobo-browser.desktop.in.h:1 msgid "Bonobo Component Browser" msgstr "Mpizaha singa ho an'ny Bonobo" #: ../tools/browser/bonobo-browser.desktop.in.h:2 msgid "Shows available Bonobo components" msgstr "Maneho izay singa ho an'ny Bonobo misy" #: ../tools/browser/bonobo-browser.xml.h:1 msgid "About this program..." msgstr "Mombamomba ity rindranasa ity..." #: ../tools/browser/bonobo-browser.xml.h:2 msgid "Close the current window" msgstr "Manidy io fikandrana io" #: ../tools/browser/bonobo-browser.xml.h:3 msgid "Open a new window" msgstr "Manokatra fikandrana vaovao" #: ../tools/browser/bonobo-browser.xml.h:5 msgid "_Help" msgstr "_Torolàlana" #. Build the general tab #: ../tools/browser/component-details.c:109 msgid "General" msgstr "Ankapobeny" #: ../tools/browser/component-details.c:116 #: ../tools/browser/component-list.c:398 msgid "IID" msgstr "IID" #: ../tools/browser/component-details.c:117 msgid "Location" msgstr "Toerana" #. Build the details tab #: ../tools/browser/component-details.c:167 msgid "Details" msgstr "Antsipiriany" #: ../tools/browser/component-details.c:168 msgid "Detailed Information" msgstr "Laza amin'ny antsipiriany" #: ../tools/browser/component-list.c:367 #: ../tools/browser/window.c:283 msgid "Active" msgstr "Miasa" #: ../tools/browser/component-list.c:388 msgid "Type" msgstr "Karazana" #: ../tools/browser/window.c:162 msgid "Component Details" msgstr "Antsipirian'ilay singa" #: ../tools/browser/window.c:208 msgid "Bonobo Browser" msgstr "Mpitety Bonobo" #: ../tools/browser/window.c:210 msgid "Copyright 2001, The GNOME Foundation" msgstr "Copyright 2001, Ny Fikambanamben'ny GNOME" #: ../tools/browser/window.c:211 msgid "Bonobo component browser" msgstr "Mpizaha singa ho an'ny Bonobo" #: ../tools/browser/window.c:214 msgid "translator-credits" msgstr "" "Mpandrindra: Thierry Randrianiriana \n" "Mpandika teny: Fanomezana Rajaonarisoa " #. create the window #: ../tools/browser/window.c:240 msgid "Component Browser" msgstr "Mpizaha singa" #. Fill out the tool bar #: ../tools/browser/window.c:280 msgid "All" msgstr "Ny rehetra" #: ../tools/browser/window.c:286 msgid "Inactive" msgstr "Tsy miasa" libbonoboui-2.24.5/po/pt_BR.po0000644000076400007640000003272611261745451013044 00000000000000# Brazilian Portuguese translation for libbonoboui. # Copyright (C) 2002, 2005-2007 Free Software Foundation, Inc. # Evandro Fernandes Giovanini , 2002. # Afonso Celso Medina , 2005. # Leonardo Ferreira Fontenelle , 2006-2007. # msgid "" msgstr "" "Project-Id-Version: libbonoboui\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2009-09-06 22:35-0300\n" "PO-Revision-Date: 2009-09-06 22:35-0300\n" "Last-Translator: Vladimir Melo \n" "Language-Team: Brazilian Portuguese \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../bonobo/bonobo-canvas-item.c:680 msgid "corba factory" msgstr "fábrica corba" #: ../bonobo/bonobo-canvas-item.c:681 msgid "The factory pointer" msgstr "O ponteiro da fábrica" #: ../bonobo/bonobo-canvas-item.c:690 msgid "corba UI container" msgstr "recipiente da UI do corba" #: ../bonobo/bonobo-canvas-item.c:691 msgid "The User interface container" msgstr "O recipiente da interface do usuário" #: ../bonobo/bonobo-dock-item-grip.c:254 msgid "Dock the toolbar" msgstr "Encaixar a barra de ferramentas" #: ../bonobo/bonobo-dock-item-grip.c:255 msgid "Undock the toolbar" msgstr "Desencaixar a barra de ferramentas" #: ../bonobo/bonobo-dock-item.c:225 ../bonobo/bonobo-dock-item.c:226 #: ../bonobo/bonobo-ui-toolbar.c:1163 msgid "Shadow type" msgstr "Tipo de sombra" #: ../bonobo/bonobo-dock-item.c:236 ../bonobo/bonobo-dock-item.c:237 #: ../bonobo/bonobo-ui-toolbar.c:1107 ../bonobo/bonobo-ui-toolbar.c:1108 msgid "Orientation" msgstr "Orientação" #: ../bonobo/bonobo-dock-item.c:247 ../bonobo/bonobo-dock-item.c:248 #: ../bonobo/bonobo-ui-toolbar.c:1126 ../bonobo/bonobo-ui-toolbar.c:1127 msgid "Preferred width" msgstr "Largura preferencial" #: ../bonobo/bonobo-dock-item.c:256 ../bonobo/bonobo-dock-item.c:257 #: ../bonobo/bonobo-ui-toolbar.c:1135 ../bonobo/bonobo-ui-toolbar.c:1136 msgid "Preferred height" msgstr "Altura preferencial" #: ../bonobo/bonobo-file-selector-util.c:350 msgid "Select a file to open" msgstr "Selecione o arquivo a ser aberto" #: ../bonobo/bonobo-file-selector-util.c:378 msgid "Select files to open" msgstr "Selecione os arquivos a serem abertos" #: ../bonobo/bonobo-file-selector-util.c:407 msgid "Select a filename to save" msgstr "Selecione o nome de arquivo a ser salvo" #: ../bonobo/bonobo-plug.c:425 msgid "Event Forwarding" msgstr "Encaminhamento de evento" #: ../bonobo/bonobo-plug.c:426 msgid "Whether X events should be forwarded" msgstr "Indica se os eventos X devem ser encaminhados" #: ../bonobo/bonobo-selector-widget.c:300 ../bonobo/bonobo-window.c:347 #: ../tools/browser/component-details.c:108 #: ../tools/browser/component-list.c:369 msgid "Name" msgstr "Nome" #: ../bonobo/bonobo-selector-widget.c:322 #: ../tools/browser/component-details.c:109 msgid "Description" msgstr "Descrição" #: ../bonobo/bonobo-selector.c:343 msgid "Interfaces required" msgstr "Interfaces necessárias" #: ../bonobo/bonobo-selector.c:344 msgid "" "A NULL-terminated array of interfaces which a server must support in order " "to be listed in the selector. Defaults to \"IDL:Bonobo/Embeddable:1.0\" if " "no interfaces are listed" msgstr "" "Um vetor de interfaces terminado por NULL à qual um servidor deve dar " "suporte para ser listado no seletor. Se nenhuma interface for listada, o " "padrão é \"IDL:Bonobo/Embeddable:1.0\"" #: ../bonobo/bonobo-selector.c:346 msgid "Interface required entry" msgstr "Entrada necessária da interface" #: ../bonobo/bonobo-selector.c:347 msgid "One of the interfaces that's required" msgstr "Uma das interfaces necessárias" #: ../bonobo/bonobo-ui-config-widget.c:267 msgid "Visible" msgstr "Visível" #: ../bonobo/bonobo-ui-config-widget.c:274 msgid "_Show" msgstr "Mo_strar" #: ../bonobo/bonobo-ui-config-widget.c:281 msgid "_Hide" msgstr "_Ocultar" #: ../bonobo/bonobo-ui-config-widget.c:287 msgid "_View tooltips" msgstr "_Ver dicas de ferramentas" #: ../bonobo/bonobo-ui-config-widget.c:292 msgid "Toolbars" msgstr "Barras de ferramentas" #: ../bonobo/bonobo-ui-config-widget.c:302 msgid "toolbars" msgstr "barras de ferramentas" #: ../bonobo/bonobo-ui-config-widget.c:313 #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "Look" msgstr "Olhar" #: ../bonobo/bonobo-ui-config-widget.c:322 #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "_Icon" msgstr "Í_cone" #: ../bonobo/bonobo-ui-config-widget.c:328 msgid "_Text and Icon" msgstr "Ícone e _texto" #: ../bonobo/bonobo-ui-config-widget.c:334 msgid "Text only" msgstr "Somente texto" #: ../bonobo/bonobo-ui-config-widget.c:340 msgid "_Priority text only" msgstr "Somente texto _prioritário" #: ../bonobo/bonobo-ui-engine.c:93 msgid "Debug" msgstr "Depurar" #: ../bonobo/bonobo-ui-engine.c:93 msgid "_Dump XML" msgstr "_Despejar XML" #: ../bonobo/bonobo-ui-engine.c:94 msgid "Dump the entire UI's XML description to the console" msgstr "Mandar toda a descrição da UI XML para o console" #: ../bonobo/bonobo-ui-engine-config.c:524 msgid "Configure UI" msgstr "Configurar UI" #: ../bonobo/bonobo-ui-init-gtk.c:131 msgid "Gdk debugging flags to set" msgstr "Sinalizadores de depuração Gdk a serem definidos" #: ../bonobo/bonobo-ui-init-gtk.c:131 ../bonobo/bonobo-ui-init-gtk.c:134 #: ../bonobo/bonobo-ui-init-gtk.c:162 ../bonobo/bonobo-ui-init-gtk.c:165 msgid "FLAGS" msgstr "SINALIZADORES" #: ../bonobo/bonobo-ui-init-gtk.c:134 msgid "Gdk debugging flags to unset" msgstr "Os sinalizadores de depuração Gdk a serem removidos" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "X display to use" msgstr "Dispositivo X a ser usado" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "DISPLAY" msgstr "DISPLAY" #: ../bonobo/bonobo-ui-init-gtk.c:142 msgid "X screen to use" msgstr "Tela X a ser usada" #: ../bonobo/bonobo-ui-init-gtk.c:142 msgid "SCREEN" msgstr "TELA" #: ../bonobo/bonobo-ui-init-gtk.c:146 msgid "Make X calls synchronous" msgstr "Torna síncronas as chamadas do X" #: ../bonobo/bonobo-ui-init-gtk.c:152 msgid "Don't use X shared memory extension" msgstr "Não usar a extensão de memória compartilhada X" #: ../bonobo/bonobo-ui-init-gtk.c:156 msgid "Program name as used by the window manager" msgstr "Nome de programa como usado pelo gerenciador de janelas" #: ../bonobo/bonobo-ui-init-gtk.c:156 msgid "NAME" msgstr "NOME" #: ../bonobo/bonobo-ui-init-gtk.c:159 msgid "Program class as used by the window manager" msgstr "Classe de programa como usada pelo gerenciador de janelas" #: ../bonobo/bonobo-ui-init-gtk.c:159 msgid "CLASS" msgstr "CLASSE" #: ../bonobo/bonobo-ui-init-gtk.c:162 msgid "Gtk+ debugging flags to set" msgstr "Os sinalizadores de depuração Gtk+ a serem definidos" #: ../bonobo/bonobo-ui-init-gtk.c:165 msgid "Gtk+ debugging flags to unset" msgstr "Os sinalizadores de depuração Gtk+ a serem removidos" #: ../bonobo/bonobo-ui-init-gtk.c:168 msgid "Make all warnings fatal" msgstr "Torna todos os avisos fatais" #: ../bonobo/bonobo-ui-init-gtk.c:171 msgid "Load an additional Gtk module" msgstr "Carregar um módulo Gtk adicional" #: ../bonobo/bonobo-ui-init-gtk.c:171 msgid "MODULE" msgstr "MÓDULO" #: ../bonobo/bonobo-ui-init-gtk.c:187 msgid "GTK+" msgstr "GTK+" #: ../bonobo/bonobo-ui-main.c:281 msgid "Bonobo GUI support" msgstr "Suporte à GUI do Bonobo" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "B_oth" msgstr "Amb_os" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "T_ext" msgstr "T_exto" #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Hide t_ips" msgstr "Ocultar d_icas" #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Show t_ips" msgstr "Mostrar d_icas" #: ../bonobo/bonobo-ui-sync-toolbar.c:570 msgid "_Hide toolbar" msgstr "_Ocultar barra de ferramentas" #: ../bonobo/bonobo-ui-sync-toolbar.c:570 msgid "Customi_ze" msgstr "Personali_zar" #: ../bonobo/bonobo-ui-sync-toolbar.c:571 msgid "Customize the toolbar" msgstr "Personalizar a barra de ferramentas" #: ../bonobo/bonobo-ui-toolbar.c:1117 msgid "is floating" msgstr "é flutuante" #: ../bonobo/bonobo-ui-toolbar.c:1118 msgid "whether the toolbar is floating" msgstr "indica se a barra de ferramentas é flutuante" #: ../bonobo/bonobo-ui-toolbar.c:1164 msgid "Style of bevel around the toolbar" msgstr "Estilo da moldura ao redor da barra de ferramentas" #: ../bonobo/bonobo-ui-util.c:602 msgid "Could not display help for this application" msgstr "Não foi possível exibir ajuda para este aplicativo" #: ../bonobo/bonobo-ui-util.c:644 msgid "_Contents" msgstr "S_umário" #: ../bonobo/bonobo-ui-util.c:645 msgid "View help for this application" msgstr "Vê a ajuda para este aplicativo" #: ../bonobo/bonobo-window.c:348 msgid "Name of the window - used for configuration serialization." msgstr "Nome da janela - usado para serialização de configuração." #: ../bonobo/bonobo-zoomable.c:326 msgid "Zoom level" msgstr "Nível de zoom" #: ../bonobo/bonobo-zoomable.c:327 msgid "The degree of enlargment" msgstr "O nível de ampliação" #: ../bonobo/bonobo-zoomable.c:335 msgid "Minimum Zoom level" msgstr "Nível mínimo de zoom" #: ../bonobo/bonobo-zoomable.c:336 msgid "The minimum degree of enlargment" msgstr "O nível mínimo de ampliação" #: ../bonobo/bonobo-zoomable.c:344 msgid "Maximum Zoom level" msgstr "Nível máximo de zoom" #: ../bonobo/bonobo-zoomable.c:345 msgid "The maximum degree of enlargment" msgstr "O nível máximo de ampliação" #: ../bonobo/bonobo-zoomable.c:353 msgid "Has a minimum Zoom level" msgstr "Tem um nível mínimo de zoom" #: ../bonobo/bonobo-zoomable.c:354 msgid "Whether we have a valid minimum zoom level" msgstr "Indica se há um nível mínimo válido de zoom" #: ../bonobo/bonobo-zoomable.c:361 msgid "Has a maximum Zoom level" msgstr "Tem um nível máximo de zoom" #: ../bonobo/bonobo-zoomable.c:362 msgid "Whether we have a valid maximum zoom level" msgstr "Indica se há um nível máximo válido de zoom" #: ../bonobo/bonobo-zoomable.c:369 msgid "Is continuous" msgstr "É contínuo" #: ../bonobo/bonobo-zoomable.c:370 msgid "Whether we zoom continuously (as opposed to jumps)" msgstr "Indica se é aplicado zoom continuamente (em contraposição a saltos)" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:1 msgid "About this application" msgstr "Sobre este aplicativo" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:2 msgid "Select" msgstr "Selecionar" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:3 msgid "_About..." msgstr "_Sobre..." #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:4 msgid "_Edit" msgstr "_Editar" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:5 #: ../tools/browser/bonobo-browser.xml.h:4 msgid "_File" msgstr "_Arquivo" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:6 msgid "_Select" msgstr "_Selecionar" #: ../samples/bonoboui/hello.c:65 msgid "This does nothing; it is only a demonstration." msgstr "Não executa ação alguma; apenas uma demonstração." #: ../samples/bonoboui/hello.c:147 msgid "BonoboUI-Hello." msgstr "BonoboUI-Hello." #: ../samples/bonoboui/hello.c:219 msgid "Gnome Hello" msgstr "Gnome Hello" #. Create Label and put it in the Button: #: ../samples/bonoboui/hello.c:274 msgid "Hello, World!" msgstr "Olá, mundo!" #: ../samples/bonoboui/hello.c:314 msgid "Cannot init libbonoboui code" msgstr "Não é possível inicializar o código do libbonoboui" #: ../samples/controls/bonobo-sample-controls.c:133 msgid "Could not initialize Bonobo UI" msgstr "Não foi possível inicializar a UI do Bonobo" #: ../tools/browser/bonobo-browser.desktop.in.h:1 msgid "Bonobo Component Browser" msgstr "Navegador de Componentes Bonobo" #: ../tools/browser/bonobo-browser.desktop.in.h:2 msgid "Shows available Bonobo components" msgstr "Mostra os componentes Bonobo disponíveis" #: ../tools/browser/bonobo-browser.xml.h:1 msgid "About this program..." msgstr "Sobre este programa..." #: ../tools/browser/bonobo-browser.xml.h:2 msgid "Close the current window" msgstr "Fecha a janela atual" #: ../tools/browser/bonobo-browser.xml.h:3 msgid "Open a new window" msgstr "Abre uma nova janela" #: ../tools/browser/bonobo-browser.xml.h:5 msgid "_Help" msgstr "Aj_uda" #. Build the general tab #: ../tools/browser/component-details.c:103 msgid "General" msgstr "Geral" #: ../tools/browser/component-details.c:110 #: ../tools/browser/component-list.c:389 msgid "IID" msgstr "IID" #: ../tools/browser/component-details.c:111 msgid "Location" msgstr "Localização" #. Build the details tab #: ../tools/browser/component-details.c:161 msgid "Details" msgstr "Detalhes" #: ../tools/browser/component-details.c:162 msgid "Detailed Information" msgstr "Informação detalhada" #: ../tools/browser/component-list.c:358 ../tools/browser/window.c:283 msgid "Active" msgstr "Ativo" #: ../tools/browser/component-list.c:379 msgid "Type" msgstr "Tipo" #: ../tools/browser/window.c:162 msgid "Component Details" msgstr "Detalhes do componente" #: ../tools/browser/window.c:208 msgid "Bonobo Browser" msgstr "Navegador Bonobo" #: ../tools/browser/window.c:210 msgid "Copyright 2001, The GNOME Foundation" msgstr "Copyright 2001, The GNOME Foundation" #: ../tools/browser/window.c:211 msgid "Bonobo component browser" msgstr "Navegador de componentes Bonobo" #: ../tools/browser/window.c:214 msgid "translator-credits" msgstr "" "Evandro Fernandes Giovanini \n" "Afonso Celso Medina \n" "Leonardo Ferreira Fontenelle " #. create the window #: ../tools/browser/window.c:240 msgid "Component Browser" msgstr "Navegador de componentes" #. Fill out the tool bar #: ../tools/browser/window.c:280 msgid "All" msgstr "Todos" #: ../tools/browser/window.c:286 msgid "Inactive" msgstr "Inativo" libbonoboui-2.24.5/po/eu.po0000664000076400007640000003260311433016366012440 00000000000000# translation of eu.po to Basque # This file is distributed under the same license as the PACKAGE package. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER. # # Hizkuntza Politikarako Sailburuordetza , 2004, 2005. # Iñaki Larrañaga Murgoitio , 2005, 2006, 2010. # Iñaki Larrañaga Murgoitio , 2007. msgid "" msgstr "" "Project-Id-Version: eu\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2010-03-31 17:38+0200\n" "PO-Revision-Date: 2010-03-31 17:40+0200\n" "Last-Translator: Iñaki Larrañaga Murgoitio \n" "Language-Team: Basque \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Generator: KBabel 1.11.4\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" #: ../bonobo/bonobo-canvas-item.c:680 msgid "corba factory" msgstr "corba fabrika" #: ../bonobo/bonobo-canvas-item.c:681 msgid "The factory pointer" msgstr "Fabrikaren erakuslea" #: ../bonobo/bonobo-canvas-item.c:690 msgid "corba UI container" msgstr "corbaren UI edukiontzia" #: ../bonobo/bonobo-canvas-item.c:691 msgid "The User interface container" msgstr "Erabiltzailearen interfazearen edukiontzia" #: ../bonobo/bonobo-dock-item-grip.c:254 msgid "Dock the toolbar" msgstr "Atrakatu tresna-barra" #: ../bonobo/bonobo-dock-item-grip.c:255 msgid "Undock the toolbar" msgstr "Desuztartu tresna-barra" #: ../bonobo/bonobo-dock-item.c:225 ../bonobo/bonobo-dock-item.c:226 #: ../bonobo/bonobo-ui-toolbar.c:1163 msgid "Shadow type" msgstr "Itzal-mota" #: ../bonobo/bonobo-dock-item.c:236 ../bonobo/bonobo-dock-item.c:237 #: ../bonobo/bonobo-ui-toolbar.c:1107 ../bonobo/bonobo-ui-toolbar.c:1108 msgid "Orientation" msgstr "Orientazioa" #: ../bonobo/bonobo-dock-item.c:247 ../bonobo/bonobo-dock-item.c:248 #: ../bonobo/bonobo-ui-toolbar.c:1126 ../bonobo/bonobo-ui-toolbar.c:1127 msgid "Preferred width" msgstr "Hobetsitako zabalera" #: ../bonobo/bonobo-dock-item.c:256 ../bonobo/bonobo-dock-item.c:257 #: ../bonobo/bonobo-ui-toolbar.c:1135 ../bonobo/bonobo-ui-toolbar.c:1136 msgid "Preferred height" msgstr "Hobetsitako altuera" #: ../bonobo/bonobo-file-selector-util.c:350 msgid "Select a file to open" msgstr "Hautatu fitxategi bat irekitzeko" #: ../bonobo/bonobo-file-selector-util.c:378 msgid "Select files to open" msgstr "Hautatu fitxategiak irekitzeko" #: ../bonobo/bonobo-file-selector-util.c:407 msgid "Select a filename to save" msgstr "Hautatu fitxategi bat gordetzeko" #: ../bonobo/bonobo-plug.c:425 msgid "Event Forwarding" msgstr "Gertaerak birbidaltzea" #: ../bonobo/bonobo-plug.c:426 msgid "Whether X events should be forwarded" msgstr "X gertaera birbidali beharko litzatekeen ala ez adierazten du" #: ../bonobo/bonobo-selector-widget.c:300 ../bonobo/bonobo-window.c:347 #: ../tools/browser/component-details.c:108 #: ../tools/browser/component-list.c:369 msgid "Name" msgstr "Izena" #: ../bonobo/bonobo-selector-widget.c:322 #: ../tools/browser/component-details.c:109 msgid "Description" msgstr "Azalpena" #: ../bonobo/bonobo-selector.c:343 msgid "Interfaces required" msgstr "Eskatutako interfazeak" #: ../bonobo/bonobo-selector.c:344 msgid "" "A NULL-terminated array of interfaces which a server must support in order " "to be listed in the selector. Defaults to \"IDL:Bonobo/Embeddable:1.0\" if " "no interfaces are listed" msgstr "" "Zerbitzaria hautatzailearen zerrendan agertzeko, NULUAn amaitutako interfaze-" "taula bat onartu behar du. Lehenespenez \"IDL:Bonobo/Embeddable:1.0\" da " "zerrendan interfazerik ez badago" #: ../bonobo/bonobo-selector.c:346 msgid "Interface required entry" msgstr "Interfazeak sarrera eskatzen du" #: ../bonobo/bonobo-selector.c:347 msgid "One of the interfaces that's required" msgstr "Behar den interfazeetako bat" #: ../bonobo/bonobo-ui-config-widget.c:267 msgid "Visible" msgstr "Ikusgai" #: ../bonobo/bonobo-ui-config-widget.c:274 msgid "_Show" msgstr "_Erakutsi" #: ../bonobo/bonobo-ui-config-widget.c:281 msgid "_Hide" msgstr "E_zkutatu" #: ../bonobo/bonobo-ui-config-widget.c:287 msgid "_View tooltips" msgstr "Iku_si argibideak" #: ../bonobo/bonobo-ui-config-widget.c:292 msgid "Toolbars" msgstr "Tresna-barrak" #: ../bonobo/bonobo-ui-config-widget.c:302 msgid "toolbars" msgstr "tresna-barrak" #: ../bonobo/bonobo-ui-config-widget.c:313 #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "Look" msgstr "Itxura" #: ../bonobo/bonobo-ui-config-widget.c:322 #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "_Icon" msgstr "I_konoa" #: ../bonobo/bonobo-ui-config-widget.c:328 msgid "_Text and Icon" msgstr "_Testua eta ikonoa" #: ../bonobo/bonobo-ui-config-widget.c:334 msgid "Text only" msgstr "Testua bakarrik" #: ../bonobo/bonobo-ui-config-widget.c:340 msgid "_Priority text only" msgstr "_Lehentasunezko testua bakarrik" #: ../bonobo/bonobo-ui-engine.c:93 msgid "Debug" msgstr "Araztu" #: ../bonobo/bonobo-ui-engine.c:93 msgid "_Dump XML" msgstr "_Irauli XMLa" #: ../bonobo/bonobo-ui-engine.c:94 msgid "Dump the entire UI's XML description to the console" msgstr "Irauli UIaren XML azalpen osoa kontsolan" #: ../bonobo/bonobo-ui-engine-config.c:524 msgid "Configure UI" msgstr "Konfiguratu UIa" #: ../bonobo/bonobo-ui-init-gtk.c:131 msgid "Gdk debugging flags to set" msgstr "Ezarri beharreko Gdk arazketa-banderak" #: ../bonobo/bonobo-ui-init-gtk.c:131 ../bonobo/bonobo-ui-init-gtk.c:134 #: ../bonobo/bonobo-ui-init-gtk.c:162 ../bonobo/bonobo-ui-init-gtk.c:165 msgid "FLAGS" msgstr "BANDERAK" #: ../bonobo/bonobo-ui-init-gtk.c:134 msgid "Gdk debugging flags to unset" msgstr "Ezarpenetik kendu beharreko Gdk arazketa-banderak" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "X display to use" msgstr "Erabili beharreko X bistaratzea" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "DISPLAY" msgstr "BISTARATZEA" #: ../bonobo/bonobo-ui-init-gtk.c:142 msgid "X screen to use" msgstr "Erabili beharreko X pantaila" #: ../bonobo/bonobo-ui-init-gtk.c:142 msgid "SCREEN" msgstr "PANTAILA" #: ../bonobo/bonobo-ui-init-gtk.c:146 msgid "Make X calls synchronous" msgstr "Bihurtu X dei sinkroniko" #: ../bonobo/bonobo-ui-init-gtk.c:152 msgid "Don't use X shared memory extension" msgstr "Ez erabili X memoria-hedapen partekatua" #: ../bonobo/bonobo-ui-init-gtk.c:156 msgid "Program name as used by the window manager" msgstr "Leiho-kudeatzaileak erabilitako programa-izena" #: ../bonobo/bonobo-ui-init-gtk.c:156 msgid "NAME" msgstr "IZENA" #: ../bonobo/bonobo-ui-init-gtk.c:159 msgid "Program class as used by the window manager" msgstr "Leiho-kudeatzaileak erabilitako programa-klasea" #: ../bonobo/bonobo-ui-init-gtk.c:159 msgid "CLASS" msgstr "KLASEA" #: ../bonobo/bonobo-ui-init-gtk.c:162 msgid "Gtk+ debugging flags to set" msgstr "Ezarri beharreko Gtk+ arazketa-banderak" #: ../bonobo/bonobo-ui-init-gtk.c:165 msgid "Gtk+ debugging flags to unset" msgstr "Ezarpenetik kendu beharreko Gtk+ arazketa-banderak" #: ../bonobo/bonobo-ui-init-gtk.c:168 msgid "Make all warnings fatal" msgstr "Bihurtu abisu guztiak errore larri" #: ../bonobo/bonobo-ui-init-gtk.c:171 msgid "Load an additional Gtk module" msgstr "Kargatu Gtk modulu gehigarria" #: ../bonobo/bonobo-ui-init-gtk.c:171 msgid "MODULE" msgstr "MODULUA" #: ../bonobo/bonobo-ui-init-gtk.c:187 msgid "GTK+" msgstr "GTK+" #: ../bonobo/bonobo-ui-main.c:281 msgid "Bonobo GUI support" msgstr "Bonoboren GUI euskarria" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "B_oth" msgstr "_Biak" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "T_ext" msgstr "Te_stua" #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Hide t_ips" msgstr "Ezkutatu i_radokizunak" #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Show t_ips" msgstr "Erakutsi ira_dokizunak" #: ../bonobo/bonobo-ui-sync-toolbar.c:570 msgid "_Hide toolbar" msgstr "E_zkutatu tresna-barra" #: ../bonobo/bonobo-ui-sync-toolbar.c:570 msgid "Customi_ze" msgstr "_Pertsonalizatu" #: ../bonobo/bonobo-ui-sync-toolbar.c:571 msgid "Customize the toolbar" msgstr "Pertsonalizatu tresna-barra" #: ../bonobo/bonobo-ui-toolbar.c:1117 msgid "is floating" msgstr "mugikorra da" #: ../bonobo/bonobo-ui-toolbar.c:1118 msgid "whether the toolbar is floating" msgstr "tresna-barra mugikorra den ala ez adierazten du" #: ../bonobo/bonobo-ui-toolbar.c:1164 msgid "Style of bevel around the toolbar" msgstr "Tresna-barraren inguruko alaka-estiloa" #: ../bonobo/bonobo-ui-util.c:602 msgid "Could not display help for this application" msgstr "Ezin izan da aplikazio honen laguntza bistaratu" #: ../bonobo/bonobo-ui-util.c:644 msgid "_Contents" msgstr "_Edukia" #: ../bonobo/bonobo-ui-util.c:645 msgid "View help for this application" msgstr "Ikusi aplikazio honen laguntza" #: ../bonobo/bonobo-window.c:348 msgid "Name of the window - used for configuration serialization." msgstr "Leihoaren izena - konfigurazioaren serializaziorako erabiltzen da." #: ../bonobo/bonobo-zoomable.c:326 msgid "Zoom level" msgstr "Zoom-maila" #: ../bonobo/bonobo-zoomable.c:327 msgid "The degree of enlargment" msgstr "Handitze-maila" #: ../bonobo/bonobo-zoomable.c:335 msgid "Minimum Zoom level" msgstr "Gutxieneko zoom-maila" #: ../bonobo/bonobo-zoomable.c:336 msgid "The minimum degree of enlargment" msgstr "Gutxieneko handitze-maila" #: ../bonobo/bonobo-zoomable.c:344 msgid "Maximum Zoom level" msgstr "Gehienezko zoom-maila" #: ../bonobo/bonobo-zoomable.c:345 msgid "The maximum degree of enlargment" msgstr "Gehienezko handitze-maila" #: ../bonobo/bonobo-zoomable.c:353 msgid "Has a minimum Zoom level" msgstr "Gutxieneko zoom-maila du" #: ../bonobo/bonobo-zoomable.c:354 msgid "Whether we have a valid minimum zoom level" msgstr "Gutxieneko zoom-maila baliozkoa den ala ez adierazten du" #: ../bonobo/bonobo-zoomable.c:361 msgid "Has a maximum Zoom level" msgstr "Gehienezko zoom-maila du" #: ../bonobo/bonobo-zoomable.c:362 msgid "Whether we have a valid maximum zoom level" msgstr "Gehienezko zoom-maila baliozkoa den ala ez adierazten du" #: ../bonobo/bonobo-zoomable.c:369 msgid "Is continuous" msgstr "Etengabea da" #: ../bonobo/bonobo-zoomable.c:370 msgid "Whether we zoom continuously (as opposed to jumps)" msgstr "Etengabe handitzen dugun ala ez adierazten du (saltoen alderantzizkoa)" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:1 msgid "About this application" msgstr "Aplikazio honi buruz" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:2 msgid "Select" msgstr "Hautatu" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:3 msgid "_About..." msgstr "H_oni buruz..." #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:4 msgid "_Edit" msgstr "_Editatu" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:5 #: ../tools/browser/bonobo-browser.xml.h:4 msgid "_File" msgstr "_Fitxategia" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:6 msgid "_Select" msgstr "_Hautatu" #: ../samples/bonoboui/hello.c:65 msgid "This does nothing; it is only a demonstration." msgstr "Ez du ezer egiten; azalpen bat besterik ez da." #: ../samples/bonoboui/hello.c:147 msgid "BonoboUI-Hello." msgstr "BonoboUI-Hello." #: ../samples/bonoboui/hello.c:219 msgid "Gnome Hello" msgstr "Kaixo, Gnome" #. Create Label and put it in the Button: #: ../samples/bonoboui/hello.c:274 msgid "Hello, World!" msgstr "Kaixo guztiei!" #: ../samples/bonoboui/hello.c:314 msgid "Cannot init libbonoboui code" msgstr "Ezin da libbonoboui-n kodea hasieratu" #: ../samples/controls/bonobo-sample-controls.c:133 msgid "Could not initialize Bonobo UI" msgstr "Ezin izan da Bonoboren UI hasieratu" #: ../tools/browser/bonobo-browser.desktop.in.h:1 msgid "Bonobo Component Browser" msgstr "Bonobo osagai-arakatzailea" #: ../tools/browser/bonobo-browser.desktop.in.h:2 msgid "Shows available Bonobo components" msgstr "Eskuragarri dauden Bonoboren osagaiak erakusten ditu" #: ../tools/browser/bonobo-browser.xml.h:1 msgid "About this program..." msgstr "Aplikazio honi buruz..." #: ../tools/browser/bonobo-browser.xml.h:2 msgid "Close the current window" msgstr "Itxi uneko leihoa" #: ../tools/browser/bonobo-browser.xml.h:3 msgid "Open a new window" msgstr "Ireki leiho berria" #: ../tools/browser/bonobo-browser.xml.h:5 msgid "_Help" msgstr "_Laguntza" #. Build the general tab #: ../tools/browser/component-details.c:103 msgid "General" msgstr "Orokorra" #: ../tools/browser/component-details.c:110 #: ../tools/browser/component-list.c:389 msgid "IID" msgstr "IIDa" #: ../tools/browser/component-details.c:111 msgid "Location" msgstr "Kokalekua" #. Build the details tab #: ../tools/browser/component-details.c:161 msgid "Details" msgstr "Xehetasunak" #: ../tools/browser/component-details.c:162 msgid "Detailed Information" msgstr "Informazio xehea" #: ../tools/browser/component-list.c:358 ../tools/browser/window.c:283 msgid "Active" msgstr "Aktibo" #: ../tools/browser/component-list.c:379 msgid "Type" msgstr "Mota" #: ../tools/browser/window.c:162 msgid "Component Details" msgstr "Osagaien xehetasunak" #: ../tools/browser/window.c:208 msgid "Bonobo Browser" msgstr "Bonobo arakatzailea" #: ../tools/browser/window.c:210 msgid "Copyright 2001, The GNOME Foundation" msgstr "Copyright-a 2001, GNOME Fundazioa" #: ../tools/browser/window.c:211 msgid "Bonobo component browser" msgstr "bonobo osagai-arakatzailea" #: ../tools/browser/window.c:214 msgid "translator-credits" msgstr "" "Hizkuntza Politikarako Sailburuordetza \n" "Iñaki Larrañaga Murgoitio " #. create the window #: ../tools/browser/window.c:240 msgid "Component Browser" msgstr "Osagaien arakatzailea" #. Fill out the tool bar #: ../tools/browser/window.c:280 msgid "All" msgstr "Denak" #: ../tools/browser/window.c:286 msgid "Inactive" msgstr "Inaktibo" libbonoboui-2.24.5/po/vi.po0000644000076400007640000003320411173072741012441 00000000000000# Vietnamese translation for LibBoboboGUI. # Copyright © 2008 Gnome i18n Project for Vietnamese. # Nguyễn Thái Ngọc Duy , 2002. # Clytie Siddall , 2005-2008. # msgid "" "" msgstr "Project-Id-Version: libbonoboui GNOME TRUNK\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2007-11-13 21:46+0000\n" "PO-Revision-Date: 2008-01-04 18:38+1030\n" "Last-Translator: Clytie Siddall \n" "Language-Team: Vietnamese \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\n" "X-Generator: LocFactoryEditor 1.7b1\n" #: ../bonobo/bonobo-canvas-item.c:680 msgid "corba factory" msgstr "Bộ tạo corba" #: ../bonobo/bonobo-canvas-item.c:681 msgid "The factory pointer" msgstr "Con trỏ bộ tạo" #: ../bonobo/bonobo-canvas-item.c:690 msgid "corba UI container" msgstr "Bộ bao bọc giao diện người dùng corba" #: ../bonobo/bonobo-canvas-item.c:691 msgid "The User interface container" msgstr "Bộ bao bọc giao diện người dùng" #: ../bonobo/bonobo-dock-item-grip.c:255 msgid "Dock the toolbar" msgstr "Cụ neo thanh công cụ" #: ../bonobo/bonobo-dock-item-grip.c:256 msgid "Undock the toolbar" msgstr "Bỏ neo thanh công cụ" #: ../bonobo/bonobo-dock-item.c:228 #: ../bonobo/bonobo-dock-item.c:229 #: ../bonobo/bonobo-ui-toolbar.c:1161 msgid "Shadow type" msgstr "Kiểu bóng" #: ../bonobo/bonobo-dock-item.c:239 #: ../bonobo/bonobo-dock-item.c:240 #: ../bonobo/bonobo-ui-toolbar.c:1105 #: ../bonobo/bonobo-ui-toolbar.c:1106 msgid "Orientation" msgstr "Hướng" #: ../bonobo/bonobo-dock-item.c:250 #: ../bonobo/bonobo-dock-item.c:251 #: ../bonobo/bonobo-ui-toolbar.c:1124 #: ../bonobo/bonobo-ui-toolbar.c:1125 msgid "Preferred width" msgstr "Độ rộng ưa thích" #: ../bonobo/bonobo-dock-item.c:259 #: ../bonobo/bonobo-dock-item.c:260 #: ../bonobo/bonobo-ui-toolbar.c:1133 #: ../bonobo/bonobo-ui-toolbar.c:1134 msgid "Preferred height" msgstr "Độ cao ưa thích" #: ../bonobo/bonobo-file-selector-util.c:357 msgid "Select a file to open" msgstr "Chọn tập tin cần mở" #: ../bonobo/bonobo-file-selector-util.c:385 msgid "Select files to open" msgstr "Chọn các tập tin cần mở" #: ../bonobo/bonobo-file-selector-util.c:414 msgid "Select a filename to save" msgstr "Chọn tên tập tin cần lưu" #: ../bonobo/bonobo-plug.c:423 msgid "Event Forwarding" msgstr "Chuyển tiếp sự kiện" #: ../bonobo/bonobo-plug.c:424 msgid "Whether X events should be forwarded" msgstr "Có nên chuyển tiếp các sự kiện X hay không" #: ../bonobo/bonobo-selector-widget.c:297 #: ../bonobo/bonobo-window.c:344 #: ../tools/browser/component-details.c:114 #: ../tools/browser/component-list.c:378 msgid "Name" msgstr "Tên" #: ../bonobo/bonobo-selector-widget.c:319 #: ../tools/browser/component-details.c:115 msgid "Description" msgstr "Mô tả" #: ../bonobo/bonobo-selector.c:343 msgid "Interfaces required" msgstr "Giao diện cần thiết" #: ../bonobo/bonobo-selector.c:344 msgid "" "A NULL-terminated array of interfaces which a server must support in order " "to be listed in the selector. Defaults to \"IDL:Bonobo/Embeddable:1.0\" if " "no interfaces are listed" msgstr "Mảng giao diện kết thúc bằng NULL, mà một trình phục vụ phải hỗ trợ để được " "liệt kê trong bộ chọn. Mặc định là « IDL:Bonobo/Embeddable:1.0 » nếu không " "có giao diện nào được liệt kê." #: ../bonobo/bonobo-selector.c:346 msgid "Interface required entry" msgstr "Mục nhập giao diện cần thiết" #: ../bonobo/bonobo-selector.c:347 msgid "One of the interfaces that's required" msgstr "Một trong những giao diện cần thiết" #: ../bonobo/bonobo-ui-config-widget.c:265 msgid "Visible" msgstr "Hiển thị" #: ../bonobo/bonobo-ui-config-widget.c:272 msgid "_Show" msgstr "_Hiện" #: ../bonobo/bonobo-ui-config-widget.c:279 msgid "_Hide" msgstr "Ẩ_n" #: ../bonobo/bonobo-ui-config-widget.c:285 msgid "_View tooltips" msgstr "_Xem mẹo công cụ" #: ../bonobo/bonobo-ui-config-widget.c:290 msgid "Toolbars" msgstr "Thanh công cụ" #: ../bonobo/bonobo-ui-config-widget.c:300 msgid "toolbars" msgstr "thanh công cụ" #: ../bonobo/bonobo-ui-config-widget.c:311 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "Look" msgstr "Nhìn" #: ../bonobo/bonobo-ui-config-widget.c:320 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "_Icon" msgstr "B_iểu tượng" #: ../bonobo/bonobo-ui-config-widget.c:326 msgid "_Text and Icon" msgstr "Nhãn _và Hình" #: ../bonobo/bonobo-ui-config-widget.c:332 msgid "Text only" msgstr "Chỉ nhãn" #: ../bonobo/bonobo-ui-config-widget.c:338 msgid "_Priority text only" msgstr "Chỉ nhãn ư_u tiên" #: ../bonobo/bonobo-ui-engine.c:91 msgid "Debug" msgstr "Gỡ lỗi" #: ../bonobo/bonobo-ui-engine.c:91 msgid "_Dump XML" msgstr "Đổ _XML" #: ../bonobo/bonobo-ui-engine.c:92 msgid "Dump the entire UI's XML description to the console" msgstr "Đổ toàn bộ mô tả giao diện người dùng (UI) bằng XML ra bàn giao tiếp" #: ../bonobo/bonobo-ui-engine-config.c:522 msgid "Configure UI" msgstr "Cấu hình UI" #: ../bonobo/bonobo-ui-init-gtk.c:130 msgid "Gdk debugging flags to set" msgstr "Cờ gỡ lỗi Gdk cần đặt" #: ../bonobo/bonobo-ui-init-gtk.c:130 #: ../bonobo/bonobo-ui-init-gtk.c:133 #: ../bonobo/bonobo-ui-init-gtk.c:161 #: ../bonobo/bonobo-ui-init-gtk.c:164 msgid "FLAGS" msgstr "CỜ" #: ../bonobo/bonobo-ui-init-gtk.c:133 msgid "Gdk debugging flags to unset" msgstr "Cờ gỡ lỗi Gdk cần hủy đặt" #: ../bonobo/bonobo-ui-init-gtk.c:137 msgid "X display to use" msgstr "Bộ trình bày X cần dùng" #: ../bonobo/bonobo-ui-init-gtk.c:137 msgid "DISPLAY" msgstr "BỘ TRÌNH BÀY" #: ../bonobo/bonobo-ui-init-gtk.c:141 msgid "X screen to use" msgstr "Màn hình X cần dùng" #: ../bonobo/bonobo-ui-init-gtk.c:141 msgid "SCREEN" msgstr "MÀN HÌNH" #: ../bonobo/bonobo-ui-init-gtk.c:145 msgid "Make X calls synchronous" msgstr "Đặt cuộc gọi X là đồng bộ" #: ../bonobo/bonobo-ui-init-gtk.c:151 msgid "Don't use X shared memory extension" msgstr "Không dùng phần mở rộng bộ nhớ chia sẻ của X" #: ../bonobo/bonobo-ui-init-gtk.c:155 msgid "Program name as used by the window manager" msgstr "Tên chương trình như được bộ quản lý cửa sổ dùng" #: ../bonobo/bonobo-ui-init-gtk.c:155 msgid "NAME" msgstr "TÊN" #: ../bonobo/bonobo-ui-init-gtk.c:158 msgid "Program class as used by the window manager" msgstr "Hạng chương trình như được bộ quản lý cửa sổ dùng" #: ../bonobo/bonobo-ui-init-gtk.c:158 msgid "CLASS" msgstr "HẠNG" #: ../bonobo/bonobo-ui-init-gtk.c:161 msgid "Gtk+ debugging flags to set" msgstr "Cờ gỡ lỗi Gtk+ cần đặt" #: ../bonobo/bonobo-ui-init-gtk.c:164 msgid "Gtk+ debugging flags to unset" msgstr "Cờ gỡ lỗi Gtk+ cần hủy đặt" #: ../bonobo/bonobo-ui-init-gtk.c:167 msgid "Make all warnings fatal" msgstr "Đặt mọi cảnh báo là nghiêm trọng" #: ../bonobo/bonobo-ui-init-gtk.c:170 msgid "Load an additional Gtk module" msgstr "Tải một mô-đun Gtk thêm" #: ../bonobo/bonobo-ui-init-gtk.c:170 msgid "MODULE" msgstr "MÔ-ĐUN" # Name: don't translate / Tên: đừng dịch #: ../bonobo/bonobo-ui-init-gtk.c:186 msgid "GTK+" msgstr "GTK+" #: ../bonobo/bonobo-ui-main.c:278 msgid "Bonobo GUI support" msgstr "Hỗ trợ GUI Bonobo" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "B_oth" msgstr "Cả _hai" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "T_ext" msgstr "_Nhãn" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Hide t_ips" msgstr "Ẩn _mẹo" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Show t_ips" msgstr "Hiện _mẹo" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "_Hide toolbar" msgstr "Ẩn t_hanh công cụ" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "Customi_ze" msgstr "Tù_y chỉnh" #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Customize the toolbar" msgstr "Tùy chỉnh thanh công cụ" #: ../bonobo/bonobo-ui-toolbar.c:1115 msgid "is floating" msgstr "đang nổi" #: ../bonobo/bonobo-ui-toolbar.c:1116 msgid "whether the toolbar is floating" msgstr "thanh công cụ có nổi hay không" #: ../bonobo/bonobo-ui-toolbar.c:1162 msgid "Style of bevel around the toolbar" msgstr "Kiểu cạnh xiên quanh thanh công cụ" #: ../bonobo/bonobo-ui-util.c:601 msgid "Could not display help for this application" msgstr "Không thể hiển thị trợ giúp về ứng dụng này" #: ../bonobo/bonobo-ui-util.c:643 msgid "_Contents" msgstr "Mục lụ_c" #: ../bonobo/bonobo-ui-util.c:644 msgid "View help for this application" msgstr "Xem trợ giúp về ứng dụng này" #: ../bonobo/bonobo-window.c:345 msgid "Name of the window - used for configuration serialization." msgstr "Tên cửa sổ — dùng để xếp cấu hình theo thứ tự." #: ../bonobo/bonobo-zoomable.c:326 msgid "Zoom level" msgstr "Cấp thu phóng" #: ../bonobo/bonobo-zoomable.c:327 msgid "The degree of enlargment" msgstr "Cấp thu phỏng" #: ../bonobo/bonobo-zoomable.c:335 msgid "Minimum Zoom level" msgstr "Cấp thu phóng tối thiểu" #: ../bonobo/bonobo-zoomable.c:336 msgid "The minimum degree of enlargment" msgstr "Cấp thu phóng tối thiểu" #: ../bonobo/bonobo-zoomable.c:344 msgid "Maximum Zoom level" msgstr "Cấp thu phóng tối đa" #: ../bonobo/bonobo-zoomable.c:345 msgid "The maximum degree of enlargment" msgstr "Cấp thu phóng tối đa" #: ../bonobo/bonobo-zoomable.c:353 msgid "Has a minimum Zoom level" msgstr "Có cấp thu phóng tối thiểu" #: ../bonobo/bonobo-zoomable.c:354 msgid "Whether we have a valid minimum zoom level" msgstr "Có cấp thu phóng tối thiểu hay không" #: ../bonobo/bonobo-zoomable.c:361 msgid "Has a maximum Zoom level" msgstr "Có cấp thu phóng tối đa" #: ../bonobo/bonobo-zoomable.c:362 msgid "Whether we have a valid maximum zoom level" msgstr "Có cấp thu phóng tối đa hay không" #: ../bonobo/bonobo-zoomable.c:369 msgid "Is continuous" msgstr "Liên tục" #: ../bonobo/bonobo-zoomable.c:370 msgid "Whether we zoom continuously (as opposed to jumps)" msgstr "Có thu phóng liên tục (thay vì mỗi bước riêng)" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:1 msgid "About this application" msgstr "Giới thiệu ứng dụng này" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:2 msgid "Select" msgstr "Chọn" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:3 msgid "_About..." msgstr "_Giới thiệu..." #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:4 msgid "_Edit" msgstr "_Sửa" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:5 #: ../tools/browser/bonobo-browser.xml.h:4 msgid "_File" msgstr "_Tập tin" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:6 msgid "_Select" msgstr "_Chọn" #: ../samples/bonoboui/hello.c:63 msgid "This does nothing; it is only a demonstration." msgstr "Không làm gì cả; chỉ là một minh hoạ thôi." #: ../samples/bonoboui/hello.c:145 msgid "BonoboUI-Hello." msgstr "BonoboUI-Chào." #: ../samples/bonoboui/hello.c:217 msgid "Gnome Hello" msgstr "Gnome Chào" #.Create Label and put it in the Button: #: ../samples/bonoboui/hello.c:272 msgid "Hello, World!" msgstr "Chào thế giới !" #: ../samples/bonoboui/hello.c:312 msgid "Cannot init libbonoboui code" msgstr "Không thể khởi động mã libbonoboui" #: ../samples/controls/bonobo-sample-controls.c:131 msgid "Could not initialize Bonobo UI" msgstr "Không thể khởi động UI Bonobo." #: ../tools/browser/bonobo-browser.desktop.in.h:1 msgid "Bonobo Component Browser" msgstr "Bộ duyệt thành phần Bonobo" #: ../tools/browser/bonobo-browser.desktop.in.h:2 msgid "Shows available Bonobo components" msgstr "Hiển thị các thành phần Bonobo sẵn sàng" #: ../tools/browser/bonobo-browser.xml.h:1 msgid "About this program..." msgstr "Giới thiệu chương trình này..." #: ../tools/browser/bonobo-browser.xml.h:2 msgid "Close the current window" msgstr "Đóng cửa sổ hiện có" #: ../tools/browser/bonobo-browser.xml.h:3 msgid "Open a new window" msgstr "Mở một cửa sổ mới" #: ../tools/browser/bonobo-browser.xml.h:5 msgid "_Help" msgstr "Trợ _giúp" #.Build the general tab #: ../tools/browser/component-details.c:109 msgid "General" msgstr "Chung" #: ../tools/browser/component-details.c:116 #: ../tools/browser/component-list.c:398 msgid "IID" msgstr "IID" #: ../tools/browser/component-details.c:117 msgid "Location" msgstr "Địa chỉ" #.Build the details tab #: ../tools/browser/component-details.c:167 msgid "Details" msgstr "Chi tiết" #: ../tools/browser/component-details.c:168 msgid "Detailed Information" msgstr "Thông tin chi tiết" #: ../tools/browser/component-list.c:367 #: ../tools/browser/window.c:283 msgid "Active" msgstr "Hoạt động" #: ../tools/browser/component-list.c:388 msgid "Type" msgstr "Kiểu" #: ../tools/browser/window.c:162 msgid "Component Details" msgstr "Chi tiết thành phần" #: ../tools/browser/window.c:208 msgid "Bonobo Browser" msgstr "Bộ duyệt Bonobo" #: ../tools/browser/window.c:210 msgid "Copyright 2001, The GNOME Foundation" msgstr "Tác quyền © năm 2001 của Tổ chức GNOME." #: ../tools/browser/window.c:211 msgid "Bonobo component browser" msgstr "Bộ duyệt thành phần Bonobo" #: ../tools/browser/window.c:214 msgid "translator-credits" msgstr "Nhóm Việt hóa Gnome " #.create the window #: ../tools/browser/window.c:240 msgid "Component Browser" msgstr "Bộ duyệt thành phần" #.Fill out the tool bar #: ../tools/browser/window.c:280 msgid "All" msgstr "Tất cả" #: ../tools/browser/window.c:286 msgid "Inactive" msgstr "Không hoạt động" libbonoboui-2.24.5/po/ku.po0000644000076400007640000002541511173072741012447 00000000000000# translation of libbonoboui.HEAD.po to Kurdish # This file is distributed under the same license as the PACKAGE package. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER. # Erdal Ronahi , 2005. # msgid "" msgstr "" "Project-Id-Version: libbonoboui.HEAD\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2005-09-10 18:44+0200\n" "PO-Revision-Date: 2005-09-10 16:13+0200\n" "Last-Translator: Erdal Ronahi \n" "Language-Team: Kurdish \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Generator: KBabel 1.10.2\n" "Plural-Forms: Plural-Forms: nplurals=2; plural=n != 1\n" "\n" #: ../bonobo/bonobo-canvas-item.c:683 msgid "corba factory" msgstr "" #: ../bonobo/bonobo-canvas-item.c:684 msgid "The factory pointer" msgstr "" #: ../bonobo/bonobo-canvas-item.c:693 msgid "corba UI container" msgstr "" #: ../bonobo/bonobo-canvas-item.c:694 msgid "The User interface container" msgstr "" #: ../bonobo/bonobo-dock-item-grip.c:257 msgid "Dock the toolbar" msgstr "" #: ../bonobo/bonobo-dock-item-grip.c:258 msgid "Undock the toolbar" msgstr "" #: ../bonobo/bonobo-dock-item.c:235 ../bonobo/bonobo-dock-item.c:236 #: ../bonobo/bonobo-ui-toolbar.c:1175 msgid "Shadow type" msgstr "Cureyê sihê" #: ../bonobo/bonobo-dock-item.c:246 ../bonobo/bonobo-dock-item.c:247 #: ../bonobo/bonobo-ui-toolbar.c:1119 ../bonobo/bonobo-ui-toolbar.c:1120 msgid "Orientation" msgstr "Hêl" #: ../bonobo/bonobo-dock-item.c:257 ../bonobo/bonobo-dock-item.c:258 #: ../bonobo/bonobo-ui-toolbar.c:1138 ../bonobo/bonobo-ui-toolbar.c:1139 msgid "Preferred width" msgstr "" #: ../bonobo/bonobo-dock-item.c:266 ../bonobo/bonobo-dock-item.c:267 #: ../bonobo/bonobo-ui-toolbar.c:1147 ../bonobo/bonobo-ui-toolbar.c:1148 msgid "Preferred height" msgstr "" #: ../bonobo/bonobo-file-selector-util.c:357 msgid "Select a file to open" msgstr "" #: ../bonobo/bonobo-file-selector-util.c:385 msgid "Select files to open" msgstr "" #: ../bonobo/bonobo-file-selector-util.c:414 msgid "Select a filename to save" msgstr "" #: ../bonobo/bonobo-plug.c:425 msgid "Event Forwarding" msgstr "" #: ../bonobo/bonobo-plug.c:426 msgid "Whether X events should be forwarded" msgstr "" #: ../bonobo/bonobo-selector-widget.c:302 ../bonobo/bonobo-window.c:346 #: ../tools/browser/component-details.c:114 #: ../tools/browser/component-list.c:381 msgid "Name" msgstr "Nav" #: ../bonobo/bonobo-selector-widget.c:324 #: ../tools/browser/component-details.c:115 msgid "Description" msgstr "Şîrove:" #: ../bonobo/bonobo-selector.c:345 msgid "Interfaces required" msgstr "" #: ../bonobo/bonobo-selector.c:346 msgid "" "A NULL-terminated array of interfaces which a server must support in order " "to be listed in the selector. Defaults to \"IDL:Bonobo/Embeddable:1.0\" if " "no interfaces are listed" msgstr "" #: ../bonobo/bonobo-selector.c:348 msgid "Interface required entry" msgstr "" #: ../bonobo/bonobo-selector.c:349 msgid "One of the interfaces that's required" msgstr "" #: ../bonobo/bonobo-ui-config-widget.c:268 msgid "Visible" msgstr "Tê dîtin" #: ../bonobo/bonobo-ui-config-widget.c:275 msgid "_Show" msgstr "_Nîşan Bide" #: ../bonobo/bonobo-ui-config-widget.c:282 msgid "_Hide" msgstr "_Veşêre" #: ../bonobo/bonobo-ui-config-widget.c:288 #, fuzzy msgid "_View tooltips" msgstr "_Tooltips nîşan bide" #: ../bonobo/bonobo-ui-config-widget.c:293 msgid "Toolbars" msgstr "Darikên Amûran" #: ../bonobo/bonobo-ui-config-widget.c:303 msgid "toolbars" msgstr "darikên amûran" #: ../bonobo/bonobo-ui-config-widget.c:314 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "Look" msgstr "" #: ../bonobo/bonobo-ui-config-widget.c:323 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "_Icon" msgstr "" #: ../bonobo/bonobo-ui-config-widget.c:329 msgid "_Text and Icon" msgstr "" #: ../bonobo/bonobo-ui-config-widget.c:335 msgid "Text only" msgstr "Bi tenê nivîs" #: ../bonobo/bonobo-ui-config-widget.c:341 msgid "_Priority text only" msgstr "" #: ../bonobo/bonobo-ui-engine.c:90 msgid "Debug" msgstr "" #: ../bonobo/bonobo-ui-engine.c:90 msgid "_Dump XML" msgstr "" #: ../bonobo/bonobo-ui-engine.c:91 msgid "Dump the entire UI's XML description to the console" msgstr "" #: ../bonobo/bonobo-ui-engine-config.c:522 msgid "Configure UI" msgstr "" #: ../bonobo/bonobo-ui-init-gtk.c:113 msgid "Gdk debugging flags to set" msgstr "" #: ../bonobo/bonobo-ui-init-gtk.c:113 ../bonobo/bonobo-ui-init-gtk.c:116 #: ../bonobo/bonobo-ui-init-gtk.c:144 ../bonobo/bonobo-ui-init-gtk.c:147 msgid "FLAGS" msgstr "" #: ../bonobo/bonobo-ui-init-gtk.c:116 msgid "Gdk debugging flags to unset" msgstr "" #: ../bonobo/bonobo-ui-init-gtk.c:120 msgid "X display to use" msgstr "" #: ../bonobo/bonobo-ui-init-gtk.c:120 msgid "DISPLAY" msgstr "" #: ../bonobo/bonobo-ui-init-gtk.c:124 msgid "X screen to use" msgstr "" #: ../bonobo/bonobo-ui-init-gtk.c:124 msgid "SCREEN" msgstr "" #: ../bonobo/bonobo-ui-init-gtk.c:128 msgid "Make X calls synchronous" msgstr "" #: ../bonobo/bonobo-ui-init-gtk.c:134 msgid "Don't use X shared memory extension" msgstr "" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "Program name as used by the window manager" msgstr "" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "NAME" msgstr "" #: ../bonobo/bonobo-ui-init-gtk.c:141 msgid "Program class as used by the window manager" msgstr "" #: ../bonobo/bonobo-ui-init-gtk.c:141 msgid "CLASS" msgstr "CLASS" #: ../bonobo/bonobo-ui-init-gtk.c:144 msgid "Gtk+ debugging flags to set" msgstr "" #: ../bonobo/bonobo-ui-init-gtk.c:147 msgid "Gtk+ debugging flags to unset" msgstr "" #: ../bonobo/bonobo-ui-init-gtk.c:150 msgid "Make all warnings fatal" msgstr "" #: ../bonobo/bonobo-ui-init-gtk.c:153 msgid "Load an additional Gtk module" msgstr "" #: ../bonobo/bonobo-ui-init-gtk.c:153 msgid "MODULE" msgstr "MODULE" #: ../bonobo/bonobo-ui-init-gtk.c:162 msgid "GTK+" msgstr "GTK+" #: ../bonobo/bonobo-ui-main.c:278 msgid "Bonobo GUI support" msgstr "" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "B_oth" msgstr "Her _du" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "T_ext" msgstr "Ni_vîs" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Hide t_ips" msgstr "" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Show t_ips" msgstr "" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "_Hide toolbar" msgstr "" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "Customi_ze" msgstr "" #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Customize the toolbar" msgstr "" #: ../bonobo/bonobo-ui-toolbar.c:1129 msgid "is floating" msgstr "" #: ../bonobo/bonobo-ui-toolbar.c:1130 msgid "whether the toolbar is floating" msgstr "" #: ../bonobo/bonobo-ui-toolbar.c:1176 msgid "Style of bevel around the toolbar" msgstr "" #: ../bonobo/bonobo-ui-util.c:630 msgid "_Contents" msgstr "_Naverok" #: ../bonobo/bonobo-ui-util.c:631 msgid "View help for this application" msgstr "" #: ../bonobo/bonobo-window.c:347 msgid "Name of the window - used for configuration serialization." msgstr "" #: ../bonobo/bonobo-zoomable.c:326 msgid "Zoom level" msgstr "" #: ../bonobo/bonobo-zoomable.c:327 msgid "The degree of enlargment" msgstr "" #: ../bonobo/bonobo-zoomable.c:335 msgid "Minimum Zoom level" msgstr "" #: ../bonobo/bonobo-zoomable.c:336 msgid "The minimum degree of enlargment" msgstr "" #: ../bonobo/bonobo-zoomable.c:344 msgid "Maximum Zoom level" msgstr "" #: ../bonobo/bonobo-zoomable.c:345 msgid "The maximum degree of enlargment" msgstr "" #: ../bonobo/bonobo-zoomable.c:353 msgid "Has a minimum Zoom level" msgstr "" #: ../bonobo/bonobo-zoomable.c:354 msgid "Whether we have a valid minimum zoom level" msgstr "" #: ../bonobo/bonobo-zoomable.c:361 msgid "Has a maximum Zoom level" msgstr "" #: ../bonobo/bonobo-zoomable.c:362 msgid "Whether we have a valid maximum zoom level" msgstr "" #: ../bonobo/bonobo-zoomable.c:369 msgid "Is continuous" msgstr "" #: ../bonobo/bonobo-zoomable.c:370 msgid "Whether we zoom continuously (as opposed to jumps)" msgstr "" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:1 msgid "About this application" msgstr "Der barê vê bernameyê" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:2 msgid "Select" msgstr "Hilbijêre" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:3 msgid "_About..." msgstr "_Der barê..." #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:4 msgid "_Edit" msgstr "_Biguherîne" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:5 #: ../tools/browser/bonobo-browser.xml.h:4 msgid "_File" msgstr "_Dosya" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:6 msgid "_Select" msgstr "_Hilbijêre" #: ../samples/bonoboui/hello.c:63 msgid "This does nothing; it is only a demonstration." msgstr "" #: ../samples/bonoboui/hello.c:145 msgid "BonoboUI-Hello." msgstr "" #: ../samples/bonoboui/hello.c:217 msgid "Gnome Hello" msgstr "" #. Create Label and put it in the Button: #: ../samples/bonoboui/hello.c:272 msgid "Hello, World!" msgstr "" #: ../samples/bonoboui/hello.c:312 msgid "Cannot init libbonoboui code" msgstr "" #: ../samples/controls/bonobo-sample-controls.c:131 msgid "Could not initialize Bonobo UI" msgstr "" #: ../tools/browser/bonobo-browser.desktop.in.h:1 msgid "Bonobo Component Browser" msgstr "" #: ../tools/browser/bonobo-browser.desktop.in.h:2 msgid "Shows available Bonobo components" msgstr "" #: ../tools/browser/bonobo-browser.xml.h:1 msgid "About this program..." msgstr "Der barê vê bernameyê" #: ../tools/browser/bonobo-browser.xml.h:2 msgid "Close the current window" msgstr "" #: ../tools/browser/bonobo-browser.xml.h:3 msgid "Open a new window" msgstr "" #: ../tools/browser/bonobo-browser.xml.h:5 msgid "_Help" msgstr "_Alîkarî" #. Build the general tab #: ../tools/browser/component-details.c:109 msgid "General" msgstr "Giştî" #: ../tools/browser/component-details.c:116 #: ../tools/browser/component-list.c:401 msgid "IID" msgstr "" #: ../tools/browser/component-details.c:117 msgid "Location" msgstr "Cih" #. Build the details tab #: ../tools/browser/component-details.c:167 msgid "Details" msgstr "Hûragahî" #: ../tools/browser/component-details.c:168 #, fuzzy msgid "Detailed Information" msgstr "Agahiyên detay" #: ../tools/browser/component-list.c:370 ../tools/browser/window.c:290 msgid "Active" msgstr "Çalak" #: ../tools/browser/component-list.c:391 msgid "Type" msgstr "Cure" #: ../tools/browser/window.c:170 msgid "Component Details" msgstr "" #: ../tools/browser/window.c:215 msgid "Bonobo Browser" msgstr "" #: ../tools/browser/window.c:216 msgid "Copyright 2001, The GNOME Foundation" msgstr "Maf parastî (Copyright 2001, The GNOME Foundation)" #: ../tools/browser/window.c:217 msgid "Bonobo component browser" msgstr "" #. create the window #: ../tools/browser/window.c:247 msgid "Component Browser" msgstr "" #. Fill out the tool bar #: ../tools/browser/window.c:287 msgid "All" msgstr "Hemû" #: ../tools/browser/window.c:293 msgid "Inactive" msgstr "Neçalak" libbonoboui-2.24.5/po/oc.po0000644000076400007640000002633311173072741012431 00000000000000# Occitan translation for libbonoboui # Copyright (C) 2002 Free Software Foundation, Inc., Projek Gabai. # # Yannig MARCHEGAY (yannig@marchegay.org) - 2006-2007 # msgid "" msgstr "" "Project-Id-Version: libbonoboui HEAD\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2008-03-07 10:22+0100\n" "PO-Revision-Date: 2008-02-02 21:07+0100\n" "Last-Translator: Yannig MARCHEGAY (Kokoyaya) \n" "Language-Team: Occitan (post 1500) \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n > 1);\n" #: ../bonobo/bonobo-canvas-item.c:680 msgid "corba factory" msgstr "" #: ../bonobo/bonobo-canvas-item.c:681 msgid "The factory pointer" msgstr "" #: ../bonobo/bonobo-canvas-item.c:690 msgid "corba UI container" msgstr "" #: ../bonobo/bonobo-canvas-item.c:691 msgid "The User interface container" msgstr "" #: ../bonobo/bonobo-dock-item-grip.c:255 msgid "Dock the toolbar" msgstr "" #: ../bonobo/bonobo-dock-item-grip.c:256 msgid "Undock the toolbar" msgstr "" #: ../bonobo/bonobo-dock-item.c:228 ../bonobo/bonobo-dock-item.c:229 #: ../bonobo/bonobo-ui-toolbar.c:1161 msgid "Shadow type" msgstr "" #: ../bonobo/bonobo-dock-item.c:239 ../bonobo/bonobo-dock-item.c:240 #: ../bonobo/bonobo-ui-toolbar.c:1105 ../bonobo/bonobo-ui-toolbar.c:1106 msgid "Orientation" msgstr "Orientacion" #: ../bonobo/bonobo-dock-item.c:250 ../bonobo/bonobo-dock-item.c:251 #: ../bonobo/bonobo-ui-toolbar.c:1124 ../bonobo/bonobo-ui-toolbar.c:1125 msgid "Preferred width" msgstr "" #: ../bonobo/bonobo-dock-item.c:259 ../bonobo/bonobo-dock-item.c:260 #: ../bonobo/bonobo-ui-toolbar.c:1133 ../bonobo/bonobo-ui-toolbar.c:1134 msgid "Preferred height" msgstr "" #: ../bonobo/bonobo-file-selector-util.c:357 msgid "Select a file to open" msgstr "Seleccionatz un fichièr de dobrir" #: ../bonobo/bonobo-file-selector-util.c:385 msgid "Select files to open" msgstr "Seleccionatz de fichièrs de dobrir" #: ../bonobo/bonobo-file-selector-util.c:414 msgid "Select a filename to save" msgstr "Seleccionatz un nom de fichièr de dobrir" #: ../bonobo/bonobo-plug.c:423 msgid "Event Forwarding" msgstr "" #: ../bonobo/bonobo-plug.c:424 msgid "Whether X events should be forwarded" msgstr "" #: ../bonobo/bonobo-selector-widget.c:297 ../bonobo/bonobo-window.c:344 #: ../tools/browser/component-details.c:114 #: ../tools/browser/component-list.c:378 msgid "Name" msgstr "Nom" #: ../bonobo/bonobo-selector-widget.c:319 #: ../tools/browser/component-details.c:115 msgid "Description" msgstr "Descripcion" #: ../bonobo/bonobo-selector.c:343 msgid "Interfaces required" msgstr "" #: ../bonobo/bonobo-selector.c:344 msgid "" "A NULL-terminated array of interfaces which a server must support in order " "to be listed in the selector. Defaults to \"IDL:Bonobo/Embeddable:1.0\" if " "no interfaces are listed" msgstr "" #: ../bonobo/bonobo-selector.c:346 msgid "Interface required entry" msgstr "" #: ../bonobo/bonobo-selector.c:347 msgid "One of the interfaces that's required" msgstr "" #: ../bonobo/bonobo-ui-config-widget.c:265 msgid "Visible" msgstr "Visible" #: ../bonobo/bonobo-ui-config-widget.c:272 msgid "_Show" msgstr "_Visualizacion" #: ../bonobo/bonobo-ui-config-widget.c:279 msgid "_Hide" msgstr "_Amagar" #: ../bonobo/bonobo-ui-config-widget.c:285 msgid "_View tooltips" msgstr "" #: ../bonobo/bonobo-ui-config-widget.c:290 msgid "Toolbars" msgstr "Barras d'espleches" #: ../bonobo/bonobo-ui-config-widget.c:300 msgid "toolbars" msgstr "" #: ../bonobo/bonobo-ui-config-widget.c:311 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "Look" msgstr "" #: ../bonobo/bonobo-ui-config-widget.c:320 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "_Icon" msgstr "_Icòna" #: ../bonobo/bonobo-ui-config-widget.c:326 msgid "_Text and Icon" msgstr "_Tèxt e icòna" #: ../bonobo/bonobo-ui-config-widget.c:332 msgid "Text only" msgstr "Sonque tèxt" #: ../bonobo/bonobo-ui-config-widget.c:338 msgid "_Priority text only" msgstr "" #: ../bonobo/bonobo-ui-engine.c:91 msgid "Debug" msgstr "Débogage" #: ../bonobo/bonobo-ui-engine.c:91 msgid "_Dump XML" msgstr "" #: ../bonobo/bonobo-ui-engine.c:92 msgid "Dump the entire UI's XML description to the console" msgstr "" #: ../bonobo/bonobo-ui-engine-config.c:522 msgid "Configure UI" msgstr "" #: ../bonobo/bonobo-ui-init-gtk.c:131 msgid "Gdk debugging flags to set" msgstr "" #: ../bonobo/bonobo-ui-init-gtk.c:131 ../bonobo/bonobo-ui-init-gtk.c:134 #: ../bonobo/bonobo-ui-init-gtk.c:162 ../bonobo/bonobo-ui-init-gtk.c:165 msgid "FLAGS" msgstr "" #: ../bonobo/bonobo-ui-init-gtk.c:134 msgid "Gdk debugging flags to unset" msgstr "" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "X display to use" msgstr "Ecran X d'utilizar" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "DISPLAY" msgstr "" #: ../bonobo/bonobo-ui-init-gtk.c:142 msgid "X screen to use" msgstr "" #: ../bonobo/bonobo-ui-init-gtk.c:142 msgid "SCREEN" msgstr "ECRAN" #: ../bonobo/bonobo-ui-init-gtk.c:146 msgid "Make X calls synchronous" msgstr "" #: ../bonobo/bonobo-ui-init-gtk.c:152 msgid "Don't use X shared memory extension" msgstr "" #: ../bonobo/bonobo-ui-init-gtk.c:156 msgid "Program name as used by the window manager" msgstr "Nom del programa utilisat pel gestionari de fenèstras" #: ../bonobo/bonobo-ui-init-gtk.c:156 msgid "NAME" msgstr "NOM" #: ../bonobo/bonobo-ui-init-gtk.c:159 msgid "Program class as used by the window manager" msgstr "" #: ../bonobo/bonobo-ui-init-gtk.c:159 msgid "CLASS" msgstr "CLASSA" #: ../bonobo/bonobo-ui-init-gtk.c:162 msgid "Gtk+ debugging flags to set" msgstr "" #: ../bonobo/bonobo-ui-init-gtk.c:165 msgid "Gtk+ debugging flags to unset" msgstr "" #: ../bonobo/bonobo-ui-init-gtk.c:168 msgid "Make all warnings fatal" msgstr "" #: ../bonobo/bonobo-ui-init-gtk.c:171 msgid "Load an additional Gtk module" msgstr "" #: ../bonobo/bonobo-ui-init-gtk.c:171 msgid "MODULE" msgstr "MODUL" #: ../bonobo/bonobo-ui-init-gtk.c:187 msgid "GTK+" msgstr "GTK+" #: ../bonobo/bonobo-ui-main.c:278 msgid "Bonobo GUI support" msgstr "" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "B_oth" msgstr "Los d_os" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "T_ext" msgstr "T_èxt" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Hide t_ips" msgstr "" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Show t_ips" msgstr "" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "_Hide toolbar" msgstr "_Amagar la barra d'espleches" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "Customi_ze" msgstr "Personali_zar" #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Customize the toolbar" msgstr "" #: ../bonobo/bonobo-ui-toolbar.c:1115 msgid "is floating" msgstr "" #: ../bonobo/bonobo-ui-toolbar.c:1116 msgid "whether the toolbar is floating" msgstr "" #: ../bonobo/bonobo-ui-toolbar.c:1162 msgid "Style of bevel around the toolbar" msgstr "" #: ../bonobo/bonobo-ui-util.c:601 msgid "Could not display help for this application" msgstr "Impossible de visualizar l'ajuda de l'aplicacion" #: ../bonobo/bonobo-ui-util.c:643 msgid "_Contents" msgstr "_Ensenhador" #: ../bonobo/bonobo-ui-util.c:644 msgid "View help for this application" msgstr "Visualizar l'ajuda de l'aplicacion" #: ../bonobo/bonobo-window.c:345 msgid "Name of the window - used for configuration serialization." msgstr "" #: ../bonobo/bonobo-zoomable.c:326 msgid "Zoom level" msgstr "" #: ../bonobo/bonobo-zoomable.c:327 msgid "The degree of enlargment" msgstr "" #: ../bonobo/bonobo-zoomable.c:335 msgid "Minimum Zoom level" msgstr "" #: ../bonobo/bonobo-zoomable.c:336 msgid "The minimum degree of enlargment" msgstr "" #: ../bonobo/bonobo-zoomable.c:344 msgid "Maximum Zoom level" msgstr "" #: ../bonobo/bonobo-zoomable.c:345 msgid "The maximum degree of enlargment" msgstr "" #: ../bonobo/bonobo-zoomable.c:353 msgid "Has a minimum Zoom level" msgstr "" #: ../bonobo/bonobo-zoomable.c:354 msgid "Whether we have a valid minimum zoom level" msgstr "" #: ../bonobo/bonobo-zoomable.c:361 msgid "Has a maximum Zoom level" msgstr "" #: ../bonobo/bonobo-zoomable.c:362 msgid "Whether we have a valid maximum zoom level" msgstr "" #: ../bonobo/bonobo-zoomable.c:369 msgid "Is continuous" msgstr "" #: ../bonobo/bonobo-zoomable.c:370 msgid "Whether we zoom continuously (as opposed to jumps)" msgstr "" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:1 msgid "About this application" msgstr "A prepaus del logicial" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:2 msgid "Select" msgstr "Seleccionar" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:3 msgid "_About..." msgstr "_A prepaus..." #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:4 msgid "_Edit" msgstr "_Edicion" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:5 #: ../tools/browser/bonobo-browser.xml.h:4 msgid "_File" msgstr "_Fichièr" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:6 msgid "_Select" msgstr "_Seleccionar" #: ../samples/bonoboui/hello.c:63 msgid "This does nothing; it is only a demonstration." msgstr "" #: ../samples/bonoboui/hello.c:145 msgid "BonoboUI-Hello." msgstr "BonoboUI-Hello." #: ../samples/bonoboui/hello.c:217 msgid "Gnome Hello" msgstr "" #. Create Label and put it in the Button: #: ../samples/bonoboui/hello.c:272 msgid "Hello, World!" msgstr "" #: ../samples/bonoboui/hello.c:312 msgid "Cannot init libbonoboui code" msgstr "" #: ../samples/controls/bonobo-sample-controls.c:131 msgid "Could not initialize Bonobo UI" msgstr "" #: ../tools/browser/bonobo-browser.desktop.in.h:1 msgid "Bonobo Component Browser" msgstr "" #: ../tools/browser/bonobo-browser.desktop.in.h:2 msgid "Shows available Bonobo components" msgstr "" #: ../tools/browser/bonobo-browser.xml.h:1 msgid "About this program..." msgstr "A prepaus del programa..." #: ../tools/browser/bonobo-browser.xml.h:2 msgid "Close the current window" msgstr "Tampar la fenèstra activa" #: ../tools/browser/bonobo-browser.xml.h:3 msgid "Open a new window" msgstr "Dobrir una novèla fenèstra" #: ../tools/browser/bonobo-browser.xml.h:5 msgid "_Help" msgstr "_Ajuda" #. Build the general tab #: ../tools/browser/component-details.c:109 msgid "General" msgstr "General" #: ../tools/browser/component-details.c:116 #: ../tools/browser/component-list.c:398 msgid "IID" msgstr "" #: ../tools/browser/component-details.c:117 msgid "Location" msgstr "Emplaçament" #. Build the details tab #: ../tools/browser/component-details.c:167 msgid "Details" msgstr "Detalhs" #: ../tools/browser/component-details.c:168 msgid "Detailed Information" msgstr "" #: ../tools/browser/component-list.c:367 ../tools/browser/window.c:283 msgid "Active" msgstr "Actiu" #: ../tools/browser/component-list.c:388 msgid "Type" msgstr "Tipe" #: ../tools/browser/window.c:162 msgid "Component Details" msgstr "" #: ../tools/browser/window.c:208 msgid "Bonobo Browser" msgstr "Navegaire Bonobo" #: ../tools/browser/window.c:210 msgid "Copyright 2001, The GNOME Foundation" msgstr "" #: ../tools/browser/window.c:211 msgid "Bonobo component browser" msgstr "" #: ../tools/browser/window.c:214 msgid "translator-credits" msgstr "" "La còla occitana de revirada d'Ubuntu, 2007 - ubuntu-l10n-oci@lists.ubuntu." "com" #. create the window #: ../tools/browser/window.c:240 msgid "Component Browser" msgstr "" #. Fill out the tool bar #: ../tools/browser/window.c:280 msgid "All" msgstr "Totes" #: ../tools/browser/window.c:286 msgid "Inactive" msgstr "Inactiu" libbonoboui-2.24.5/po/da.po0000644000076400007640000003276311173072741012420 00000000000000# Danish translation of libbonoboui # Copyright (C) 1999-2007 Free Software Foundation, Inc. # This file is distributed under the same license as the libbonoboui package. # Keld Simonsen , 2001. # Kjartan Maraas , 1999 - 2001. # Ole Laursen , 2002 - 2003. # Martin Willemoes Hansen , 2004 - 2005. # Kenneth Nielsen , 2007. # M.P. Rommedahl , 2008. # # Husk at tilføje dig i credit-listen (besked id "translator-credits") # msgid "" msgstr "" "Project-Id-Version: libbonoboui\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2008-02-19 23:07+0100\n" "PO-Revision-Date: 2008-02-18 08:44+0100\n" "Last-Translator: M.P. Rommedahl \n" "Language-Team: Danish \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../bonobo/bonobo-canvas-item.c:680 msgid "corba factory" msgstr "CORBA-fabrik" #: ../bonobo/bonobo-canvas-item.c:681 msgid "The factory pointer" msgstr "Fabrikshenvisningen" #: ../bonobo/bonobo-canvas-item.c:690 msgid "corba UI container" msgstr "CORBA-grænsefladebeholder" #: ../bonobo/bonobo-canvas-item.c:691 msgid "The User interface container" msgstr "Brugergrænsefladebeholderen" #: ../bonobo/bonobo-dock-item-grip.c:255 msgid "Dock the toolbar" msgstr "Anbring værktøjslinjen i dok" #: ../bonobo/bonobo-dock-item-grip.c:256 msgid "Undock the toolbar" msgstr "Fjern værktøjslinjen fra dok" #: ../bonobo/bonobo-dock-item.c:228 ../bonobo/bonobo-dock-item.c:229 #: ../bonobo/bonobo-ui-toolbar.c:1161 msgid "Shadow type" msgstr "Skyggetype" #: ../bonobo/bonobo-dock-item.c:239 ../bonobo/bonobo-dock-item.c:240 #: ../bonobo/bonobo-ui-toolbar.c:1105 ../bonobo/bonobo-ui-toolbar.c:1106 msgid "Orientation" msgstr "Orientering" #: ../bonobo/bonobo-dock-item.c:250 ../bonobo/bonobo-dock-item.c:251 #: ../bonobo/bonobo-ui-toolbar.c:1124 ../bonobo/bonobo-ui-toolbar.c:1125 msgid "Preferred width" msgstr "Foretrukket bredde" #: ../bonobo/bonobo-dock-item.c:259 ../bonobo/bonobo-dock-item.c:260 #: ../bonobo/bonobo-ui-toolbar.c:1133 ../bonobo/bonobo-ui-toolbar.c:1134 msgid "Preferred height" msgstr "Foretrukket højde" #: ../bonobo/bonobo-file-selector-util.c:357 msgid "Select a file to open" msgstr "Vælg en fil som skal åbnes" #: ../bonobo/bonobo-file-selector-util.c:385 msgid "Select files to open" msgstr "Vælg filer som skal åbnes" #: ../bonobo/bonobo-file-selector-util.c:414 msgid "Select a filename to save" msgstr "Vælg et filnavn at gemme som" #: ../bonobo/bonobo-plug.c:423 msgid "Event Forwarding" msgstr "Hændelsesvideresendelse" #: ../bonobo/bonobo-plug.c:424 msgid "Whether X events should be forwarded" msgstr "Om X-hændelser skal videresendes" #: ../bonobo/bonobo-selector-widget.c:297 ../bonobo/bonobo-window.c:344 #: ../tools/browser/component-details.c:114 #: ../tools/browser/component-list.c:378 msgid "Name" msgstr "Navn" #: ../bonobo/bonobo-selector-widget.c:319 #: ../tools/browser/component-details.c:115 msgid "Description" msgstr "Beskrivelse" #: ../bonobo/bonobo-selector.c:343 msgid "Interfaces required" msgstr "Grænseflader påkrævet" #: ../bonobo/bonobo-selector.c:344 msgid "" "A NULL-terminated array of interfaces which a server must support in order " "to be listed in the selector. Defaults to \"IDL:Bonobo/Embeddable:1.0\" if " "no interfaces are listed" msgstr "" "En NULL-termineret tabel af grænseflader som serveren skal understøtte for " "at blive vist i vælgeren. Standardværdien er \"IDL:Bonobo/Embeddable:1.0\" " "hvis ingen grænseflader er listet" #: ../bonobo/bonobo-selector.c:346 msgid "Interface required entry" msgstr "Grænsefladepåkrævet indtastningsfelt" #: ../bonobo/bonobo-selector.c:347 msgid "One of the interfaces that's required" msgstr "En af de grænseflader der er påkrævet" #: ../bonobo/bonobo-ui-config-widget.c:265 msgid "Visible" msgstr "Synlig" #: ../bonobo/bonobo-ui-config-widget.c:272 msgid "_Show" msgstr "_Vis" #: ../bonobo/bonobo-ui-config-widget.c:279 msgid "_Hide" msgstr "_Skjul" #: ../bonobo/bonobo-ui-config-widget.c:285 msgid "_View tooltips" msgstr "_Vis værktøjstip" #: ../bonobo/bonobo-ui-config-widget.c:290 msgid "Toolbars" msgstr "Værktøjslinjer" #: ../bonobo/bonobo-ui-config-widget.c:300 msgid "toolbars" msgstr "værktøjslinjer" #: ../bonobo/bonobo-ui-config-widget.c:311 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "Look" msgstr "Udseende" #: ../bonobo/bonobo-ui-config-widget.c:320 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "_Icon" msgstr "_Ikon" #: ../bonobo/bonobo-ui-config-widget.c:326 msgid "_Text and Icon" msgstr "_Tekst og ikon" #: ../bonobo/bonobo-ui-config-widget.c:332 msgid "Text only" msgstr "Kun tekst" #: ../bonobo/bonobo-ui-config-widget.c:338 msgid "_Priority text only" msgstr "Kun _prioritetstekst" #: ../bonobo/bonobo-ui-engine.c:91 msgid "Debug" msgstr "Fejlretning" #: ../bonobo/bonobo-ui-engine.c:91 msgid "_Dump XML" msgstr "_Udskriv XML" #: ../bonobo/bonobo-ui-engine.c:92 msgid "Dump the entire UI's XML description to the console" msgstr "Udskriv hele grænsefladens XML-beskrivelse på konsollen" # vinduestitel så der er godt med plads #: ../bonobo/bonobo-ui-engine-config.c:522 msgid "Configure UI" msgstr "Konfigurér brugergrænseflade" #: ../bonobo/bonobo-ui-init-gtk.c:131 msgid "Gdk debugging flags to set" msgstr "Gdk-fejlsøgningsflag som skal aktiveres" #: ../bonobo/bonobo-ui-init-gtk.c:131 ../bonobo/bonobo-ui-init-gtk.c:134 #: ../bonobo/bonobo-ui-init-gtk.c:162 ../bonobo/bonobo-ui-init-gtk.c:165 msgid "FLAGS" msgstr "FLAG" #: ../bonobo/bonobo-ui-init-gtk.c:134 msgid "Gdk debugging flags to unset" msgstr "Gdk-fejlsøgningsflag som skal deaktiveres" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "X display to use" msgstr "X-terminal der skal benyttes" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "DISPLAY" msgstr "TERMINAL" #: ../bonobo/bonobo-ui-init-gtk.c:142 msgid "X screen to use" msgstr "X-skærm der skal benyttes" #: ../bonobo/bonobo-ui-init-gtk.c:142 msgid "SCREEN" msgstr "SKÆRM" #: ../bonobo/bonobo-ui-init-gtk.c:146 msgid "Make X calls synchronous" msgstr "Gør kald til X synkrone" #: ../bonobo/bonobo-ui-init-gtk.c:152 msgid "Don't use X shared memory extension" msgstr "Brug ikke X-udvidelse til delt hukommelse" #: ../bonobo/bonobo-ui-init-gtk.c:156 msgid "Program name as used by the window manager" msgstr "Programnavn som benyttet af vindueshåndteringen" #: ../bonobo/bonobo-ui-init-gtk.c:156 msgid "NAME" msgstr "NAVN" #: ../bonobo/bonobo-ui-init-gtk.c:159 msgid "Program class as used by the window manager" msgstr "Programklasse som benyttet af vindueshåndteringen" #: ../bonobo/bonobo-ui-init-gtk.c:159 msgid "CLASS" msgstr "KLASSE" #: ../bonobo/bonobo-ui-init-gtk.c:162 msgid "Gtk+ debugging flags to set" msgstr "Gtk+-fejlsøgningsflag som skal aktiveres" #: ../bonobo/bonobo-ui-init-gtk.c:165 msgid "Gtk+ debugging flags to unset" msgstr "Gtk+-fejlsøgningsflag som skal deaktiveres" #: ../bonobo/bonobo-ui-init-gtk.c:168 msgid "Make all warnings fatal" msgstr "Gør alle advarsler fatale" #: ../bonobo/bonobo-ui-init-gtk.c:171 msgid "Load an additional Gtk module" msgstr "Indlæs et ekstra Gtk+-modul" #: ../bonobo/bonobo-ui-init-gtk.c:171 msgid "MODULE" msgstr "MODUL" #: ../bonobo/bonobo-ui-init-gtk.c:187 msgid "GTK+" msgstr "GTK+" #: ../bonobo/bonobo-ui-main.c:278 msgid "Bonobo GUI support" msgstr "Bonobo GUI-understøttelse" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "B_oth" msgstr "B_egge" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "T_ext" msgstr "T_ekst" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Hide t_ips" msgstr "Skjul t_ip" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Show t_ips" msgstr "Vis t_ip" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "_Hide toolbar" msgstr "Sk_jul værktøjslinje" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "Customi_ze" msgstr "Tilpa_s" #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Customize the toolbar" msgstr "Tilpas værktøjslinjen" #: ../bonobo/bonobo-ui-toolbar.c:1115 msgid "is floating" msgstr "er flydende" #: ../bonobo/bonobo-ui-toolbar.c:1116 msgid "whether the toolbar is floating" msgstr "Om værktøjslinjen flyder" #: ../bonobo/bonobo-ui-toolbar.c:1162 msgid "Style of bevel around the toolbar" msgstr "Stil for kanten omkring værktøjslinjen" #: ../bonobo/bonobo-ui-util.c:601 msgid "Could not display help for this application" msgstr "Kunne ikke vise hjælp til dette program" #: ../bonobo/bonobo-ui-util.c:643 msgid "_Contents" msgstr "_Indhold" #: ../bonobo/bonobo-ui-util.c:644 msgid "View help for this application" msgstr "Vis hjælp til dette program" #: ../bonobo/bonobo-window.c:345 msgid "Name of the window - used for configuration serialization." msgstr "Vinduets navn - bruges til konfigurations serialisering" #: ../bonobo/bonobo-zoomable.c:326 msgid "Zoom level" msgstr "Zoomniveau" #: ../bonobo/bonobo-zoomable.c:327 msgid "The degree of enlargment" msgstr "Graden af forstørrelse" #: ../bonobo/bonobo-zoomable.c:335 msgid "Minimum Zoom level" msgstr "Mindste zoomniveau" #: ../bonobo/bonobo-zoomable.c:336 msgid "The minimum degree of enlargment" msgstr "Den mindste grad af formindskelse" #: ../bonobo/bonobo-zoomable.c:344 msgid "Maximum Zoom level" msgstr "Største zoomniveau" #: ../bonobo/bonobo-zoomable.c:345 msgid "The maximum degree of enlargment" msgstr "Den største grad af forstørrelse" #: ../bonobo/bonobo-zoomable.c:353 msgid "Has a minimum Zoom level" msgstr "Har et mindste zoomniveau" #: ../bonobo/bonobo-zoomable.c:354 msgid "Whether we have a valid minimum zoom level" msgstr "Om der er et gyldigt mindste zoomniveau" #: ../bonobo/bonobo-zoomable.c:361 msgid "Has a maximum Zoom level" msgstr "Har et største zoomniveau" #: ../bonobo/bonobo-zoomable.c:362 msgid "Whether we have a valid maximum zoom level" msgstr "Om der er et gyldigt største zoomniveau" #: ../bonobo/bonobo-zoomable.c:369 msgid "Is continuous" msgstr "Kontinuert" #: ../bonobo/bonobo-zoomable.c:370 msgid "Whether we zoom continuously (as opposed to jumps)" msgstr "Om der zoomes jævnt (i modsætning til i spring)" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:1 msgid "About this application" msgstr "Om dette program" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:2 msgid "Select" msgstr "Vælg" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:3 msgid "_About..." msgstr "_Om..." #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:4 msgid "_Edit" msgstr "_Redigér" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:5 #: ../tools/browser/bonobo-browser.xml.h:4 msgid "_File" msgstr "_Fil" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:6 msgid "_Select" msgstr "_Vælg" #: ../samples/bonoboui/hello.c:63 msgid "This does nothing; it is only a demonstration." msgstr "Dette gør ingenting; det er blot en demonstration" #: ../samples/bonoboui/hello.c:145 msgid "BonoboUI-Hello." msgstr "BonoboUI-Hello." #: ../samples/bonoboui/hello.c:217 msgid "Gnome Hello" msgstr "Gnome Hello" #. Create Label and put it in the Button: #: ../samples/bonoboui/hello.c:272 msgid "Hello, World!" msgstr "Hej, verden!" #: ../samples/bonoboui/hello.c:312 msgid "Cannot init libbonoboui code" msgstr "Kan ikke klargøre libbonoboui" #: ../samples/controls/bonobo-sample-controls.c:131 msgid "Could not initialize Bonobo UI" msgstr "Kunne ikke klargøre Bonobo UI" #: ../tools/browser/bonobo-browser.desktop.in.h:1 msgid "Bonobo Component Browser" msgstr "Bonobo-komponentbrowser" #: ../tools/browser/bonobo-browser.desktop.in.h:2 msgid "Shows available Bonobo components" msgstr "Viser tilgængelige bonobo-komponenter" #: ../tools/browser/bonobo-browser.xml.h:1 msgid "About this program..." msgstr "Om dette program ..." #: ../tools/browser/bonobo-browser.xml.h:2 msgid "Close the current window" msgstr "Luk det aktive vindue" #: ../tools/browser/bonobo-browser.xml.h:3 msgid "Open a new window" msgstr "Åbn et nyt vindue" #: ../tools/browser/bonobo-browser.xml.h:5 msgid "_Help" msgstr "_Hjælp" #. Build the general tab #: ../tools/browser/component-details.c:109 msgid "General" msgstr "Generelt" #: ../tools/browser/component-details.c:116 #: ../tools/browser/component-list.c:398 msgid "IID" msgstr "IID" #: ../tools/browser/component-details.c:117 msgid "Location" msgstr "Sted" #. Build the details tab #: ../tools/browser/component-details.c:167 msgid "Details" msgstr "Detaljer" #: ../tools/browser/component-details.c:168 msgid "Detailed Information" msgstr "Detaljeret information" #: ../tools/browser/component-list.c:367 ../tools/browser/window.c:283 msgid "Active" msgstr "Aktiv" #: ../tools/browser/component-list.c:388 msgid "Type" msgstr "Type" #: ../tools/browser/window.c:162 msgid "Component Details" msgstr "Komponentdetaljer" #: ../tools/browser/window.c:208 msgid "Bonobo Browser" msgstr "Bonobo-browser" #: ../tools/browser/window.c:210 msgid "Copyright 2001, The GNOME Foundation" msgstr "Copyright 2001, The GNOME Foundation" #: ../tools/browser/window.c:211 msgid "Bonobo component browser" msgstr "Bonobo-komponentbrowser" #: ../tools/browser/window.c:214 msgid "translator-credits" msgstr "" "Keld Simonsen\n" "Kjartan Maraas\n" "Ole Laursen\n" "Martin Willemoes Hansen\n" "M.P. Rommedahl\n" "\n" "Dansk-gruppen \n" "Mere info: http://www.dansk-gruppen.dk" #. create the window #: ../tools/browser/window.c:240 msgid "Component Browser" msgstr "Komponentbrowser" #. Fill out the tool bar #: ../tools/browser/window.c:280 msgid "All" msgstr "Alle" #: ../tools/browser/window.c:286 msgid "Inactive" msgstr "Inaktiv" #~ msgid "HOST" #~ msgstr "VÆRT" #~ msgid "PORT" #~ msgstr "PORT" #~ msgid "STYLE" #~ msgstr "STIL" libbonoboui-2.24.5/po/ne.po0000644000076400007640000004146611173072741012436 00000000000000# translation of libbonoboui.HEAD.ne.po to Nepali # Ganesh Ghimire , 2005. # Bishnu Adhikari , 2005. # Jaydeep Bhusal , 2005. # Shyam Krishna Bal , 2006. # Mahesh subedi , 2006. # Shiva Prasad Pokharel , 2006. # Nabin Gautam , 2007. # translation of libbonoboui.gnome-2-14.ne.po to msgid "" msgstr "" "Project-Id-Version: libbonoboui.HEAD.ne\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2007-01-02 03:22+0000\n" "PO-Revision-Date: 2007-12-17 11:04+0545\n" "Last-Translator: Nabin Gautam \n" "Language-Team: Nepali \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Generator: KBabel 1.11.4\n" "Plural-Forms: nplurals=2; plural=n !=1\n" #: ../bonobo/bonobo-canvas-item.c:680 msgid "corba factory" msgstr "कोर्बा कारखाना" #: ../bonobo/bonobo-canvas-item.c:681 msgid "The factory pointer" msgstr "कारखाना सूचक" #: ../bonobo/bonobo-canvas-item.c:690 msgid "corba UI container" msgstr "कोर्बा UI कन्टेनर" #: ../bonobo/bonobo-canvas-item.c:691 msgid "The User interface container" msgstr "प्रयोगकर्ता इन्टरफेस कन्टेनर" #: ../bonobo/bonobo-dock-item-grip.c:255 msgid "Dock the toolbar" msgstr "उपकरणपट्टी डक गर्नुहोस्" #: ../bonobo/bonobo-dock-item-grip.c:256 msgid "Undock the toolbar" msgstr "उपकरणपट्टीको डक हटाउनुहोस्" #: ../bonobo/bonobo-dock-item.c:228 ../bonobo/bonobo-dock-item.c:229 #: ../bonobo/bonobo-ui-toolbar.c:1161 msgid "Shadow type" msgstr "छायाँ प्रकार" #: ../bonobo/bonobo-dock-item.c:239 ../bonobo/bonobo-dock-item.c:240 #: ../bonobo/bonobo-ui-toolbar.c:1105 ../bonobo/bonobo-ui-toolbar.c:1106 msgid "Orientation" msgstr "अभिमूखिकरण" #: ../bonobo/bonobo-dock-item.c:250 ../bonobo/bonobo-dock-item.c:251 #: ../bonobo/bonobo-ui-toolbar.c:1124 ../bonobo/bonobo-ui-toolbar.c:1125 msgid "Preferred width" msgstr "छानिएका चौडाइ" #: ../bonobo/bonobo-dock-item.c:259 ../bonobo/bonobo-dock-item.c:260 #: ../bonobo/bonobo-ui-toolbar.c:1133 ../bonobo/bonobo-ui-toolbar.c:1134 msgid "Preferred height" msgstr "छानिएका उचाइ" #: ../bonobo/bonobo-file-selector-util.c:357 msgid "Select a file to open" msgstr "खोल्नु पर्ने फाइल चयन गर्नुहोस्" #: ../bonobo/bonobo-file-selector-util.c:385 msgid "Select files to open" msgstr "खोल्नु पर्ने फाइलहरू चयन गर्नुहोस्" #: ../bonobo/bonobo-file-selector-util.c:414 msgid "Select a filename to save" msgstr "बचत गरिने फाइलनाम चयन गर्नुहोस्" #: ../bonobo/bonobo-plug.c:424 msgid "Event Forwarding" msgstr "घटना फरवार्ड" #: ../bonobo/bonobo-plug.c:425 msgid "Whether X events should be forwarded" msgstr "X घटना फरवार्ड गर्नुपर्दछ या पर्दैन" #: ../bonobo/bonobo-selector-widget.c:298 ../bonobo/bonobo-window.c:344 #: ../tools/browser/component-details.c:114 #: ../tools/browser/component-list.c:378 msgid "Name" msgstr "नाम" #: ../bonobo/bonobo-selector-widget.c:320 #: ../tools/browser/component-details.c:115 msgid "Description" msgstr "वर्णन" #: ../bonobo/bonobo-selector.c:343 msgid "Interfaces required" msgstr "इन्टरफेस आवश्यक हुन्छ" #: ../bonobo/bonobo-selector.c:344 msgid "" "A NULL-terminated array of interfaces which a server must support in order " "to be listed in the selector. Defaults to \"IDL:Bonobo/Embeddable:1.0\" if " "no interfaces are listed" msgstr "इन्टरफेसको शून्यमा अन्त्य हुने एरे जसलाई चयनकर्तामा सूचीकृत हुनका लागि सर्भर समर्थन हुनु पर्दछ । यदि इन्टरफेस सूचीकृत छैनन् भने \"IDL:Bonobo/Embeddable:1.0\" मा पूर्वनिर्धारण गर्नुहोस्" #: ../bonobo/bonobo-selector.c:346 msgid "Interface required entry" msgstr "इन्टरफेसलाई प्रविष्टि आवश्यक हुन्छ" #: ../bonobo/bonobo-selector.c:347 msgid "One of the interfaces that's required" msgstr "आवश्यक हुने एउटा इन्टरफेस" #: ../bonobo/bonobo-ui-config-widget.c:265 msgid "Visible" msgstr "दृश्यात्मक" #: ../bonobo/bonobo-ui-config-widget.c:272 msgid "_Show" msgstr "देखाउनुहोस्" #: ../bonobo/bonobo-ui-config-widget.c:279 msgid "_Hide" msgstr "लुकाउनुहोस्" #: ../bonobo/bonobo-ui-config-widget.c:285 msgid "_View tooltips" msgstr "उपकरण टिपहरू हेर्नुहोस्" #: ../bonobo/bonobo-ui-config-widget.c:290 msgid "Toolbars" msgstr "उपकरणपट्टी" #: ../bonobo/bonobo-ui-config-widget.c:300 msgid "toolbars" msgstr "उपकरणपट्टी" #: ../bonobo/bonobo-ui-config-widget.c:311 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "Look" msgstr "हेर्नुहोस्" #: ../bonobo/bonobo-ui-config-widget.c:320 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "_Icon" msgstr "प्रतिमा" #: ../bonobo/bonobo-ui-config-widget.c:326 msgid "_Text and Icon" msgstr "पाठ र प्रतिमा" #: ../bonobo/bonobo-ui-config-widget.c:332 msgid "Text only" msgstr "पाठ मात्र" #: ../bonobo/bonobo-ui-config-widget.c:338 msgid "_Priority text only" msgstr "प्राथमिक पाठ मात्र" #: ../bonobo/bonobo-ui-engine.c:91 msgid "Debug" msgstr "त्रुटि सच्याउनुहोस्" #: ../bonobo/bonobo-ui-engine.c:91 msgid "_Dump XML" msgstr "XML डम्प गर्नुहोस्" #: ../bonobo/bonobo-ui-engine.c:92 msgid "Dump the entire UI's XML description to the console" msgstr "कन्सोलमा UI को पुरै XML वर्णन डम्प गर्नुहोस्" #: ../bonobo/bonobo-ui-engine-config.c:522 msgid "Configure UI" msgstr "UI कन्फिगर गर्नुहोस्" #: ../bonobo/bonobo-ui-init-gtk.c:127 msgid "Gdk debugging flags to set" msgstr "सेट गरिने Gdk डिबगिङ झन्डा" #: ../bonobo/bonobo-ui-init-gtk.c:127 ../bonobo/bonobo-ui-init-gtk.c:130 #: ../bonobo/bonobo-ui-init-gtk.c:158 ../bonobo/bonobo-ui-init-gtk.c:161 msgid "FLAGS" msgstr "FLAGS" #: ../bonobo/bonobo-ui-init-gtk.c:130 msgid "Gdk debugging flags to unset" msgstr "अनसेट गरिने Gdk डिबगिङ झन्डा" #: ../bonobo/bonobo-ui-init-gtk.c:134 msgid "X display to use" msgstr "प्रयोग गरिने X प्रदर्शन" #: ../bonobo/bonobo-ui-init-gtk.c:134 msgid "DISPLAY" msgstr "प्रदर्शन" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "X screen to use" msgstr "प्रयोग गरिने X पर्दा" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "SCREEN" msgstr "पर्दा" #: ../bonobo/bonobo-ui-init-gtk.c:142 msgid "Make X calls synchronous" msgstr " X कल समकालीन बनाउनुहोस्" #: ../bonobo/bonobo-ui-init-gtk.c:148 msgid "Don't use X shared memory extension" msgstr " X साझा बनाइएको स्मृति विस्तार प्रयोग नगर्नुहोस्" #: ../bonobo/bonobo-ui-init-gtk.c:152 msgid "Program name as used by the window manager" msgstr "सञ्झ्याल प्रबन्धकद्वारा प्रयोग गरिए अनुरूपको कार्यक्रमको नाम" #: ../bonobo/bonobo-ui-init-gtk.c:152 msgid "NAME" msgstr "नाम" #: ../bonobo/bonobo-ui-init-gtk.c:155 msgid "Program class as used by the window manager" msgstr "सञ्झ्याल प्रबन्धकद्वारा प्रयोग गरिए अनुरूपको कार्यक्रम वर्ग" #: ../bonobo/bonobo-ui-init-gtk.c:155 msgid "CLASS" msgstr "वर्ग" #: ../bonobo/bonobo-ui-init-gtk.c:158 msgid "Gtk+ debugging flags to set" msgstr "सेट गरिने Gtk+ डिबगिङ झन्डा" #: ../bonobo/bonobo-ui-init-gtk.c:161 msgid "Gtk+ debugging flags to unset" msgstr "अनसेट गरिने Gtk+ डिबगिङ झन्डा" #: ../bonobo/bonobo-ui-init-gtk.c:164 msgid "Make all warnings fatal" msgstr "सबै चेतावनी घातक बनाउनुहोस्" #: ../bonobo/bonobo-ui-init-gtk.c:167 msgid "Load an additional Gtk module" msgstr "अतिरिक्त GTK मोड्युल लोड गर्नुहोस्" #: ../bonobo/bonobo-ui-init-gtk.c:167 msgid "MODULE" msgstr "मोड्युल" #: ../bonobo/bonobo-ui-init-gtk.c:183 msgid "GTK+" msgstr "GTK+" #: ../bonobo/bonobo-ui-main.c:278 msgid "Bonobo GUI support" msgstr "बोनोबो GUI समर्थन" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "B_oth" msgstr "दुबै" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "T_ext" msgstr "पाठ" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Hide t_ips" msgstr "टिप लुकाउनुहोस्" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Show t_ips" msgstr "टिप देखाउनुहोस्" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "_Hide toolbar" msgstr "उपकरणपट्टी लुकाउनुहोस्" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "Customi_ze" msgstr "अनुकूलन गर्नुहोस्" #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Customize the toolbar" msgstr "उपकरणपट्टी अनुकूलन गर्नुहोस्" #: ../bonobo/bonobo-ui-toolbar.c:1115 msgid "is floating" msgstr "उत्प्लावन छ" #: ../bonobo/bonobo-ui-toolbar.c:1116 msgid "whether the toolbar is floating" msgstr "उपकरणपट्टी उत्प्लावन छ या छैन" #: ../bonobo/bonobo-ui-toolbar.c:1162 msgid "Style of bevel around the toolbar" msgstr "उपकरणपट्टी वरिपरि बेभेलको शैली" #: ../bonobo/bonobo-ui-util.c:630 msgid "_Contents" msgstr "सामाग्रीहरू" #: ../bonobo/bonobo-ui-util.c:631 msgid "View help for this application" msgstr "यस अनुप्रयोगका लागि मद्दत हेर्नुहोस्" #: ../bonobo/bonobo-window.c:345 msgid "Name of the window - used for configuration serialization." msgstr "सञ्झ्यालको नाम - कन्फिगरेसन क्रमानुगत बनाउनका लागि प्रयोग ।" #: ../bonobo/bonobo-zoomable.c:326 msgid "Zoom level" msgstr "जूम तह" #: ../bonobo/bonobo-zoomable.c:327 msgid "The degree of enlargment" msgstr "विस्तारको डिग्री" #: ../bonobo/bonobo-zoomable.c:335 msgid "Minimum Zoom level" msgstr "न्यूनतम जूम तह" #: ../bonobo/bonobo-zoomable.c:336 msgid "The minimum degree of enlargment" msgstr "विस्तारको न्यूनतम डिग्री" #: ../bonobo/bonobo-zoomable.c:344 msgid "Maximum Zoom level" msgstr "अधिकतम जूम तह" #: ../bonobo/bonobo-zoomable.c:345 msgid "The maximum degree of enlargment" msgstr "विस्तारको अधिकतम डिग्री" #: ../bonobo/bonobo-zoomable.c:353 msgid "Has a minimum Zoom level" msgstr "न्यूनतम जूम तह छ" #: ../bonobo/bonobo-zoomable.c:354 msgid "Whether we have a valid minimum zoom level" msgstr "हामिसँग एउटा मान्य न्यूनतम जूम तह छ या छैन" #: ../bonobo/bonobo-zoomable.c:361 msgid "Has a maximum Zoom level" msgstr "जूम तह अधिकतममा छ" #: ../bonobo/bonobo-zoomable.c:362 msgid "Whether we have a valid maximum zoom level" msgstr "हामिसँग एउटा मान्य अधिकतम जूम तह छ या छैन" #: ../bonobo/bonobo-zoomable.c:369 msgid "Is continuous" msgstr "निरन्तर छ" #: ../bonobo/bonobo-zoomable.c:370 msgid "Whether we zoom continuously (as opposed to jumps)" msgstr "निरन्तर जूम गर्ने हो या हैन (जम्प गर्न रोकिएमा)" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:1 msgid "About this application" msgstr "यस अनुप्रयोगका बारेमा" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:2 msgid "Select" msgstr "चयन गर्नुहोस्" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:3 msgid "_About..." msgstr "बारेमा..." #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:4 msgid "_Edit" msgstr "सम्पादन" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:5 #: ../tools/browser/bonobo-browser.xml.h:4 msgid "_File" msgstr "फाइल" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:6 msgid "_Select" msgstr "चयन गर्नुहोस्" #: ../samples/bonoboui/hello.c:63 msgid "This does nothing; it is only a demonstration." msgstr "यसले केही गर्दैन; यो केवल प्रदर्शन मात्र हो ।" #: ../samples/bonoboui/hello.c:145 msgid "BonoboUI-Hello." msgstr "हेलो बोनोबियू" #: ../samples/bonoboui/hello.c:217 msgid "Gnome Hello" msgstr "हेलो जिनोम" # Create Label and put it in the Button: #. Create Label and put it in the Button: #: ../samples/bonoboui/hello.c:272 msgid "Hello, World!" msgstr "हेलो, संसार !" #: ../samples/bonoboui/hello.c:312 msgid "Cannot init libbonoboui code" msgstr "लिबोनोबोयू कोड सुरु गर्न सकिँदैन" #: ../samples/controls/bonobo-sample-controls.c:131 msgid "Could not initialize Bonobo UI" msgstr "बोनोबो UI सुरु गर्न सकेन" #: ../tools/browser/bonobo-browser.desktop.in.h:1 msgid "Bonobo Component Browser" msgstr "बोनोबो अवयव ब्राउजर" #: ../tools/browser/bonobo-browser.desktop.in.h:2 msgid "Shows available Bonobo components" msgstr "उपलब्ध बोनोबो अवयवहरू देखाउछ" #: ../tools/browser/bonobo-browser.xml.h:1 msgid "About this program..." msgstr "यस कार्यक्रमका बारेमा..." #: ../tools/browser/bonobo-browser.xml.h:2 msgid "Close the current window" msgstr "हालको सञ्झ्याल बन्द गर्नुहोस्" #: ../tools/browser/bonobo-browser.xml.h:3 msgid "Open a new window" msgstr "नयाँ सञ्झ्याल खोल्नुहोस्" #: ../tools/browser/bonobo-browser.xml.h:5 msgid "_Help" msgstr "मद्दत" #. Build the general tab #: ../tools/browser/component-details.c:109 msgid "General" msgstr "साधारण" #: ../tools/browser/component-details.c:116 #: ../tools/browser/component-list.c:398 msgid "IID" msgstr "IID" #: ../tools/browser/component-details.c:117 msgid "Location" msgstr "स्थान" #. Build the details tab #: ../tools/browser/component-details.c:167 msgid "Details" msgstr "विवरण" #: ../tools/browser/component-details.c:168 msgid "Detailed Information" msgstr "विवरण सूचना" #: ../tools/browser/component-list.c:367 ../tools/browser/window.c:283 msgid "Active" msgstr "सक्रिय" #: ../tools/browser/component-list.c:388 msgid "Type" msgstr "प्रकार" #: ../tools/browser/window.c:162 msgid "Component Details" msgstr "अवयव विवरण" #: ../tools/browser/window.c:208 msgid "Bonobo Browser" msgstr "बोनोबो ब्राउजर" #: ../tools/browser/window.c:210 msgid "Copyright 2001, The GNOME Foundation" msgstr "प्रतिलिपि अधिकार २००१, जिनोम फाउण्डेसन" #: ../tools/browser/window.c:211 msgid "Bonobo component browser" msgstr "बोनोबो अवयव ब्राउजर" #: ../tools/browser/window.c:214 msgid "translator-credits" msgstr "Shyam krishna bal , Nabin Gautam" #. create the window #: ../tools/browser/window.c:240 msgid "Component Browser" msgstr "अवयव ब्राउजर" #. Fill out the tool bar #: ../tools/browser/window.c:280 msgid "All" msgstr "सबै" #: ../tools/browser/window.c:286 msgid "Inactive" msgstr "निस्क्रिय" libbonoboui-2.24.5/po/ga.po0000644000076400007640000002534311173072741012417 00000000000000# Irish (Gaeilge) translations for libbonoboui # Copyright (C) 2004 Alastair McKinstry # This file is distributed under the same license as the bonobo package. # Alastair McKinstry , 2004. # msgid "" msgstr "" "Project-Id-Version: libbonoboui HEAD\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2005-09-10 18:44+0200\n" "PO-Revision-Date: 2004-03-16 18:15+0000\n" "Last-Translator: Alastair McKinstry \n" "Language-Team: Irish \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../bonobo/bonobo-canvas-item.c:683 msgid "corba factory" msgstr "" #: ../bonobo/bonobo-canvas-item.c:684 msgid "The factory pointer" msgstr "" #: ../bonobo/bonobo-canvas-item.c:693 msgid "corba UI container" msgstr "" #: ../bonobo/bonobo-canvas-item.c:694 msgid "The User interface container" msgstr "" #: ../bonobo/bonobo-dock-item-grip.c:257 msgid "Dock the toolbar" msgstr "" #: ../bonobo/bonobo-dock-item-grip.c:258 msgid "Undock the toolbar" msgstr "" #: ../bonobo/bonobo-dock-item.c:235 ../bonobo/bonobo-dock-item.c:236 #: ../bonobo/bonobo-ui-toolbar.c:1175 msgid "Shadow type" msgstr "" #: ../bonobo/bonobo-dock-item.c:246 ../bonobo/bonobo-dock-item.c:247 #: ../bonobo/bonobo-ui-toolbar.c:1119 ../bonobo/bonobo-ui-toolbar.c:1120 msgid "Orientation" msgstr "Treosuíomh" #: ../bonobo/bonobo-dock-item.c:257 ../bonobo/bonobo-dock-item.c:258 #: ../bonobo/bonobo-ui-toolbar.c:1138 ../bonobo/bonobo-ui-toolbar.c:1139 msgid "Preferred width" msgstr "" #: ../bonobo/bonobo-dock-item.c:266 ../bonobo/bonobo-dock-item.c:267 #: ../bonobo/bonobo-ui-toolbar.c:1147 ../bonobo/bonobo-ui-toolbar.c:1148 msgid "Preferred height" msgstr "" #: ../bonobo/bonobo-file-selector-util.c:357 msgid "Select a file to open" msgstr "Tóg comhad a oscailt" #: ../bonobo/bonobo-file-selector-util.c:385 msgid "Select files to open" msgstr "Tóg comhaid a oscailt" #: ../bonobo/bonobo-file-selector-util.c:414 msgid "Select a filename to save" msgstr "Tóg comhad a sábháil" #: ../bonobo/bonobo-plug.c:425 msgid "Event Forwarding" msgstr "" #: ../bonobo/bonobo-plug.c:426 msgid "Whether X events should be forwarded" msgstr "" #: ../bonobo/bonobo-selector-widget.c:302 ../bonobo/bonobo-window.c:346 #: ../tools/browser/component-details.c:114 #: ../tools/browser/component-list.c:381 msgid "Name" msgstr "Ainm" #: ../bonobo/bonobo-selector-widget.c:324 #: ../tools/browser/component-details.c:115 msgid "Description" msgstr "Tuarascail" #: ../bonobo/bonobo-selector.c:345 msgid "Interfaces required" msgstr "" #: ../bonobo/bonobo-selector.c:346 msgid "" "A NULL-terminated array of interfaces which a server must support in order " "to be listed in the selector. Defaults to \"IDL:Bonobo/Embeddable:1.0\" if " "no interfaces are listed" msgstr "" #: ../bonobo/bonobo-selector.c:348 msgid "Interface required entry" msgstr "" #: ../bonobo/bonobo-selector.c:349 msgid "One of the interfaces that's required" msgstr "" #: ../bonobo/bonobo-ui-config-widget.c:268 msgid "Visible" msgstr "" #: ../bonobo/bonobo-ui-config-widget.c:275 msgid "_Show" msgstr "_Taispeán" #: ../bonobo/bonobo-ui-config-widget.c:282 msgid "_Hide" msgstr "" #: ../bonobo/bonobo-ui-config-widget.c:288 msgid "_View tooltips" msgstr "_Taispeán leathfhocail" #: ../bonobo/bonobo-ui-config-widget.c:293 msgid "Toolbars" msgstr "Barra Uirlísí" #: ../bonobo/bonobo-ui-config-widget.c:303 msgid "toolbars" msgstr "" #: ../bonobo/bonobo-ui-config-widget.c:314 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "Look" msgstr "Cuma" #: ../bonobo/bonobo-ui-config-widget.c:323 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "_Icon" msgstr "_Dealbh" #: ../bonobo/bonobo-ui-config-widget.c:329 msgid "_Text and Icon" msgstr "_Teacs agus Dealbh" #: ../bonobo/bonobo-ui-config-widget.c:335 msgid "Text only" msgstr "Teacs amhain" #: ../bonobo/bonobo-ui-config-widget.c:341 msgid "_Priority text only" msgstr "" #: ../bonobo/bonobo-ui-engine.c:90 msgid "Debug" msgstr "" #: ../bonobo/bonobo-ui-engine.c:90 msgid "_Dump XML" msgstr "" #: ../bonobo/bonobo-ui-engine.c:91 msgid "Dump the entire UI's XML description to the console" msgstr "" #: ../bonobo/bonobo-ui-engine-config.c:522 msgid "Configure UI" msgstr "Socraigh UI" #: ../bonobo/bonobo-ui-init-gtk.c:113 msgid "Gdk debugging flags to set" msgstr "" #: ../bonobo/bonobo-ui-init-gtk.c:113 ../bonobo/bonobo-ui-init-gtk.c:116 #: ../bonobo/bonobo-ui-init-gtk.c:144 ../bonobo/bonobo-ui-init-gtk.c:147 msgid "FLAGS" msgstr "BRATAÍ" #: ../bonobo/bonobo-ui-init-gtk.c:116 msgid "Gdk debugging flags to unset" msgstr "" #: ../bonobo/bonobo-ui-init-gtk.c:120 msgid "X display to use" msgstr "" #: ../bonobo/bonobo-ui-init-gtk.c:120 msgid "DISPLAY" msgstr "SCATHÁN" #: ../bonobo/bonobo-ui-init-gtk.c:124 msgid "X screen to use" msgstr "" #: ../bonobo/bonobo-ui-init-gtk.c:124 msgid "SCREEN" msgstr "" #: ../bonobo/bonobo-ui-init-gtk.c:128 msgid "Make X calls synchronous" msgstr "" #: ../bonobo/bonobo-ui-init-gtk.c:134 msgid "Don't use X shared memory extension" msgstr "" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "Program name as used by the window manager" msgstr "" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "NAME" msgstr "" #: ../bonobo/bonobo-ui-init-gtk.c:141 msgid "Program class as used by the window manager" msgstr "" #: ../bonobo/bonobo-ui-init-gtk.c:141 msgid "CLASS" msgstr "RANG" #: ../bonobo/bonobo-ui-init-gtk.c:144 msgid "Gtk+ debugging flags to set" msgstr "" #: ../bonobo/bonobo-ui-init-gtk.c:147 msgid "Gtk+ debugging flags to unset" msgstr "" #: ../bonobo/bonobo-ui-init-gtk.c:150 msgid "Make all warnings fatal" msgstr "" #: ../bonobo/bonobo-ui-init-gtk.c:153 msgid "Load an additional Gtk module" msgstr "" #: ../bonobo/bonobo-ui-init-gtk.c:153 msgid "MODULE" msgstr "MODÚIL" #: ../bonobo/bonobo-ui-init-gtk.c:162 msgid "GTK+" msgstr "GTK+" #: ../bonobo/bonobo-ui-main.c:278 msgid "Bonobo GUI support" msgstr "" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "B_oth" msgstr "" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "T_ext" msgstr "_Teacs" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Hide t_ips" msgstr "" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Show t_ips" msgstr "Taispeán _leathfhocail" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "_Hide toolbar" msgstr "" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "Customi_ze" msgstr "" #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Customize the toolbar" msgstr "" #: ../bonobo/bonobo-ui-toolbar.c:1129 msgid "is floating" msgstr "" #: ../bonobo/bonobo-ui-toolbar.c:1130 msgid "whether the toolbar is floating" msgstr "" #: ../bonobo/bonobo-ui-toolbar.c:1176 msgid "Style of bevel around the toolbar" msgstr "" #: ../bonobo/bonobo-ui-util.c:630 msgid "_Contents" msgstr "" #: ../bonobo/bonobo-ui-util.c:631 msgid "View help for this application" msgstr "" #: ../bonobo/bonobo-window.c:347 msgid "Name of the window - used for configuration serialization." msgstr "" #: ../bonobo/bonobo-zoomable.c:326 msgid "Zoom level" msgstr "" #: ../bonobo/bonobo-zoomable.c:327 msgid "The degree of enlargment" msgstr "" #: ../bonobo/bonobo-zoomable.c:335 msgid "Minimum Zoom level" msgstr "" #: ../bonobo/bonobo-zoomable.c:336 msgid "The minimum degree of enlargment" msgstr "" #: ../bonobo/bonobo-zoomable.c:344 msgid "Maximum Zoom level" msgstr "" #: ../bonobo/bonobo-zoomable.c:345 msgid "The maximum degree of enlargment" msgstr "" #: ../bonobo/bonobo-zoomable.c:353 msgid "Has a minimum Zoom level" msgstr "" #: ../bonobo/bonobo-zoomable.c:354 msgid "Whether we have a valid minimum zoom level" msgstr "" #: ../bonobo/bonobo-zoomable.c:361 msgid "Has a maximum Zoom level" msgstr "" #: ../bonobo/bonobo-zoomable.c:362 msgid "Whether we have a valid maximum zoom level" msgstr "" #: ../bonobo/bonobo-zoomable.c:369 msgid "Is continuous" msgstr "" #: ../bonobo/bonobo-zoomable.c:370 msgid "Whether we zoom continuously (as opposed to jumps)" msgstr "" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:1 msgid "About this application" msgstr "Faoi feidhmchlár seo" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:2 msgid "Select" msgstr "Tóg" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:3 msgid "_About..." msgstr "_Faoi..." #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:4 msgid "_Edit" msgstr "_Eagar" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:5 #: ../tools/browser/bonobo-browser.xml.h:4 msgid "_File" msgstr "_Comhad" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:6 msgid "_Select" msgstr "_Tóg" #: ../samples/bonoboui/hello.c:63 msgid "This does nothing; it is only a demonstration." msgstr "" #: ../samples/bonoboui/hello.c:145 msgid "BonoboUI-Hello." msgstr "Fáilte-BonoboUI" #: ../samples/bonoboui/hello.c:217 msgid "Gnome Hello" msgstr "Fáilte Gnome" #. Create Label and put it in the Button: #: ../samples/bonoboui/hello.c:272 msgid "Hello, World!" msgstr "Fáilte, Domhain!" #: ../samples/bonoboui/hello.c:312 msgid "Cannot init libbonoboui code" msgstr "Teip ag socraígh cód libbonoboui" #: ../samples/controls/bonobo-sample-controls.c:131 msgid "Could not initialize Bonobo UI" msgstr "Teip ag socraigh UI Bonobo" #: ../tools/browser/bonobo-browser.desktop.in.h:1 msgid "Bonobo Component Browser" msgstr "" #: ../tools/browser/bonobo-browser.desktop.in.h:2 msgid "Shows available Bonobo components" msgstr "" #: ../tools/browser/bonobo-browser.xml.h:1 #, fuzzy msgid "About this program..." msgstr "Faoi feidhmchlár seo" #: ../tools/browser/bonobo-browser.xml.h:2 msgid "Close the current window" msgstr "" #: ../tools/browser/bonobo-browser.xml.h:3 msgid "Open a new window" msgstr "" #: ../tools/browser/bonobo-browser.xml.h:5 msgid "_Help" msgstr "" #. Build the general tab #: ../tools/browser/component-details.c:109 msgid "General" msgstr "" #: ../tools/browser/component-details.c:116 #: ../tools/browser/component-list.c:401 msgid "IID" msgstr "" #: ../tools/browser/component-details.c:117 msgid "Location" msgstr "" #. Build the details tab #: ../tools/browser/component-details.c:167 msgid "Details" msgstr "" #: ../tools/browser/component-details.c:168 msgid "Detailed Information" msgstr "" #: ../tools/browser/component-list.c:370 ../tools/browser/window.c:290 msgid "Active" msgstr "" #: ../tools/browser/component-list.c:391 msgid "Type" msgstr "" #: ../tools/browser/window.c:170 msgid "Component Details" msgstr "" #: ../tools/browser/window.c:215 msgid "Bonobo Browser" msgstr "" #: ../tools/browser/window.c:216 msgid "Copyright 2001, The GNOME Foundation" msgstr "" #: ../tools/browser/window.c:217 msgid "Bonobo component browser" msgstr "" #. create the window #: ../tools/browser/window.c:247 msgid "Component Browser" msgstr "" #. Fill out the tool bar #: ../tools/browser/window.c:287 msgid "All" msgstr "" #: ../tools/browser/window.c:293 msgid "Inactive" msgstr "" libbonoboui-2.24.5/po/gu.po0000644000076400007640000004110711173072741012437 00000000000000# translation of libbonoboui.HEAD.gu.po to Gujarati # Ankit Patel , 2005, 2006. # Ankit Patel , 2008. msgid "" msgstr "" "Project-Id-Version: libbonoboui.HEAD.gu\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2007-11-13 21:46+0000\n" "PO-Revision-Date: 2008-02-29 16:12+0530\n" "Last-Translator: Ankit Patel \n" "Language-Team: Gujarati \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Generator: KBabel 1.11.4\n" "Plural-Forms: nplurals=2; plural=(n!=1);\n\n" "\n" "\n" "\n" #: ../bonobo/bonobo-canvas-item.c:680 msgid "corba factory" msgstr "કોર્બા કારખાનું" #: ../bonobo/bonobo-canvas-item.c:681 msgid "The factory pointer" msgstr "કારખાના સંકેત" #: ../bonobo/bonobo-canvas-item.c:690 msgid "corba UI container" msgstr "કોર્બા UI સમાવનાર" #: ../bonobo/bonobo-canvas-item.c:691 msgid "The User interface container" msgstr "વપરાશકર્તા ઇન્ટફેઇઝ સમાવનાર" #: ../bonobo/bonobo-dock-item-grip.c:255 msgid "Dock the toolbar" msgstr "સાધન દર્શક પટ્ટી નાની કરો" #: ../bonobo/bonobo-dock-item-grip.c:256 msgid "Undock the toolbar" msgstr "સાધનપટ્ટીનું ડોક દૂર કરો" #: ../bonobo/bonobo-dock-item.c:228 ../bonobo/bonobo-dock-item.c:229 #: ../bonobo/bonobo-ui-toolbar.c:1161 msgid "Shadow type" msgstr "છાયા પ્રકાર" #: ../bonobo/bonobo-dock-item.c:239 ../bonobo/bonobo-dock-item.c:240 #: ../bonobo/bonobo-ui-toolbar.c:1105 ../bonobo/bonobo-ui-toolbar.c:1106 msgid "Orientation" msgstr "દિશા" #: ../bonobo/bonobo-dock-item.c:250 ../bonobo/bonobo-dock-item.c:251 #: ../bonobo/bonobo-ui-toolbar.c:1124 ../bonobo/bonobo-ui-toolbar.c:1125 msgid "Preferred width" msgstr "માન્ય પહોળાઇ" #: ../bonobo/bonobo-dock-item.c:259 ../bonobo/bonobo-dock-item.c:260 #: ../bonobo/bonobo-ui-toolbar.c:1133 ../bonobo/bonobo-ui-toolbar.c:1134 msgid "Preferred height" msgstr "માન્ય ઊંચાઇ" #: ../bonobo/bonobo-file-selector-util.c:357 msgid "Select a file to open" msgstr "ખોલવા માટે ફાઇલ પસંદ કરો" #: ../bonobo/bonobo-file-selector-util.c:385 msgid "Select files to open" msgstr "ખોલવા માટે ફાઇલો પસંદ કરો" #: ../bonobo/bonobo-file-selector-util.c:414 msgid "Select a filename to save" msgstr "સંગ્રહ માટે ફાઇલનામ પસંદ કરો" #: ../bonobo/bonobo-plug.c:423 msgid "Event Forwarding" msgstr "ઘટના આગળ ઘપાવો" #: ../bonobo/bonobo-plug.c:424 msgid "Whether X events should be forwarded" msgstr "શું X ઘટનાને આગળ ઘપાવવાની છે" #: ../bonobo/bonobo-selector-widget.c:297 ../bonobo/bonobo-window.c:344 #: ../tools/browser/component-details.c:114 #: ../tools/browser/component-list.c:378 msgid "Name" msgstr "નામ" #: ../bonobo/bonobo-selector-widget.c:319 #: ../tools/browser/component-details.c:115 msgid "Description" msgstr "વર્ણન" #: ../bonobo/bonobo-selector.c:343 msgid "Interfaces required" msgstr "ઇન્ટફેઇઝ જરુરી" #: ../bonobo/bonobo-selector.c:344 msgid "" "A NULL-terminated array of interfaces which a server must support in order " "to be listed in the selector. Defaults to \"IDL:Bonobo/Embeddable:1.0\" if " "no interfaces are listed" msgstr "" "ઇન્ટફેસ નો NULL પૂરો થઇ ગયેલ અેરે જેને સમુહ જેને સર્વર પસંદગીકર્તામાં અનુક્રમીત કરવામાં સહાય " "કરે છે. જો કોઇ ઇન્ટરફેસ અનુક્રમીત ન હોય તો મૂળભૂત\"IDL:Bonobo/Embeddable:1.0\" છે " #: ../bonobo/bonobo-selector.c:346 msgid "Interface required entry" msgstr "ઇન્ટરફેસ માટે પ્રવેશ જરુરી છે" #: ../bonobo/bonobo-selector.c:347 msgid "One of the interfaces that's required" msgstr "તેમાંનો એક ઇન્ટરફેસ જે જરુરી છે" #: ../bonobo/bonobo-ui-config-widget.c:265 msgid "Visible" msgstr "દ્રશ્યમાન" #: ../bonobo/bonobo-ui-config-widget.c:272 msgid "_Show" msgstr "દેખાડો (_S)" #: ../bonobo/bonobo-ui-config-widget.c:279 msgid "_Hide" msgstr "છુપાવો (_H)" #: ../bonobo/bonobo-ui-config-widget.c:285 msgid "_View tooltips" msgstr "સાધન-મદદ જૂઓ (_V)" #: ../bonobo/bonobo-ui-config-widget.c:290 msgid "Toolbars" msgstr "સાધન દર્શક પટ્ટીઓ" #: ../bonobo/bonobo-ui-config-widget.c:300 msgid "toolbars" msgstr "સાધન દર્શક પટ્ટીઓ" #: ../bonobo/bonobo-ui-config-widget.c:311 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "Look" msgstr "જુઓ" #: ../bonobo/bonobo-ui-config-widget.c:320 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "_Icon" msgstr "ચિહ્ન (_I)" #: ../bonobo/bonobo-ui-config-widget.c:326 msgid "_Text and Icon" msgstr "લખાણ અને ચિહ્ન (_T)" #: ../bonobo/bonobo-ui-config-widget.c:332 msgid "Text only" msgstr "ફક્ત લખાણ" #: ../bonobo/bonobo-ui-config-widget.c:338 msgid "_Priority text only" msgstr "ફક્ત લખાણ ને પ્રાધાન્ય (_P)" #: ../bonobo/bonobo-ui-engine.c:91 msgid "Debug" msgstr "ભૂલ શોધવી" #: ../bonobo/bonobo-ui-engine.c:91 msgid "_Dump XML" msgstr "XML ફેંકો (_D)" #: ../bonobo/bonobo-ui-engine.c:92 msgid "Dump the entire UI's XML description to the console" msgstr "સંપુર્ણ UI ના XML વર્ણન ને કન્સોલ પર ફેંકો" #: ../bonobo/bonobo-ui-engine-config.c:522 msgid "Configure UI" msgstr "UI રુપરેખીત કરો" #: ../bonobo/bonobo-ui-init-gtk.c:130 msgid "Gdk debugging flags to set" msgstr "Gdk ભૂલ શોધનાર નિશાની સુયોજીત કરો" #: ../bonobo/bonobo-ui-init-gtk.c:130 ../bonobo/bonobo-ui-init-gtk.c:133 #: ../bonobo/bonobo-ui-init-gtk.c:161 ../bonobo/bonobo-ui-init-gtk.c:164 msgid "FLAGS" msgstr "નિશાનીઓ" #: ../bonobo/bonobo-ui-init-gtk.c:133 msgid "Gdk debugging flags to unset" msgstr "Gdk ભૂલ શોધનાર નિશાની સુયોજીત નથી" #: ../bonobo/bonobo-ui-init-gtk.c:137 msgid "X display to use" msgstr "X પ્રદર્શિત ઊપયોગ માટે " #: ../bonobo/bonobo-ui-init-gtk.c:137 msgid "DISPLAY" msgstr "પ્રદર્શિત" #: ../bonobo/bonobo-ui-init-gtk.c:141 msgid "X screen to use" msgstr " X પડદો ઉપયોગ માટે " #: ../bonobo/bonobo-ui-init-gtk.c:141 msgid "SCREEN" msgstr "સ્ક્રીન" #: ../bonobo/bonobo-ui-init-gtk.c:145 msgid "Make X calls synchronous" msgstr "X કોલ ને એકસમયમાં થાય તે રીતે બનાવો" #: ../bonobo/bonobo-ui-init-gtk.c:151 msgid "Don't use X shared memory extension" msgstr "X ભાગીદાર મેમરી વિસ્તારકને વાપરશો નહી" #: ../bonobo/bonobo-ui-init-gtk.c:155 msgid "Program name as used by the window manager" msgstr "વિન્ડોમેનેજર દ્વારા ઉપયોગમાં આવેલ કાર્યક્રમ નામ" #: ../bonobo/bonobo-ui-init-gtk.c:155 msgid "NAME" msgstr "નામ" #: ../bonobo/bonobo-ui-init-gtk.c:158 msgid "Program class as used by the window manager" msgstr "વિન્ડો મેનેજર દ્વારા ઉપયોગમાં આવેલ કાર્યક્રમ વર્ગ" #: ../bonobo/bonobo-ui-init-gtk.c:158 msgid "CLASS" msgstr "વર્ગ" #: ../bonobo/bonobo-ui-init-gtk.c:161 msgid "Gtk+ debugging flags to set" msgstr "Gtk+ ભૂલ શોધક નિશાની સુયોજીત કરો" #: ../bonobo/bonobo-ui-init-gtk.c:164 msgid "Gtk+ debugging flags to unset" msgstr "Gtk+ ભૂલ શોધક નિશાની સુયોજીત નથી" #: ../bonobo/bonobo-ui-init-gtk.c:167 msgid "Make all warnings fatal" msgstr "બધી ચેતવણીઓ ઘાતક બનાવો" #: ../bonobo/bonobo-ui-init-gtk.c:170 msgid "Load an additional Gtk module" msgstr "વધારાનું Gtk મોડ્યુલ લાવો" #: ../bonobo/bonobo-ui-init-gtk.c:170 msgid "MODULE" msgstr "મોડ્યુલ" #: ../bonobo/bonobo-ui-init-gtk.c:186 msgid "GTK+" msgstr "GTK+" #: ../bonobo/bonobo-ui-main.c:278 msgid "Bonobo GUI support" msgstr "બોનોબો GUI આધાર" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "B_oth" msgstr "બંને (_o)" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "T_ext" msgstr "લખાણ (_e)" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Hide t_ips" msgstr "સંકેત છુપાવો (_i)" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Show t_ips" msgstr "સંકેત દર્શાવો (_i)" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "_Hide toolbar" msgstr "સાધન દર્શક પટ્ટી છુપાવો (_H)" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "Customi_ze" msgstr "વ્યવહરીકરણ (_z)" #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Customize the toolbar" msgstr "સાધન દર્શક પટ્ટી ને વ્યવહારીક બનાવો" #: ../bonobo/bonobo-ui-toolbar.c:1115 msgid "is floating" msgstr "શું ગતિશીલ છે" #: ../bonobo/bonobo-ui-toolbar.c:1116 msgid "whether the toolbar is floating" msgstr "શું સાધન દર્શક પટ્ટી ગતિશીલ છે" #: ../bonobo/bonobo-ui-toolbar.c:1162 msgid "Style of bevel around the toolbar" msgstr "સાધનપટ્ટીના આસપાસ બેવેલની શૈલી" #: ../bonobo/bonobo-ui-util.c:601 msgid "Could not display help for this application" msgstr "આ કાર્યક્રમ માટે મદદ દર્શાવી શક્યા નહિં" #: ../bonobo/bonobo-ui-util.c:643 msgid "_Contents" msgstr "વિષયસુચી (_C)" #: ../bonobo/bonobo-ui-util.c:644 msgid "View help for this application" msgstr "આ કાર્યક્રમ માટે મદદ જુઓ" #: ../bonobo/bonobo-window.c:345 msgid "Name of the window - used for configuration serialization." msgstr "રુપરેખા ક્રમિત કરવા ઉપયોગમાં આવેલ વિન્ડોનું નામ." #: ../bonobo/bonobo-zoomable.c:326 msgid "Zoom level" msgstr "નાનું-મોટું કરવાનું સ્તર" #: ../bonobo/bonobo-zoomable.c:327 msgid "The degree of enlargment" msgstr "આકારવૃદ્ધી નો અંશ" #: ../bonobo/bonobo-zoomable.c:335 msgid "Minimum Zoom level" msgstr "મહત્તમ સ્તર" #: ../bonobo/bonobo-zoomable.c:336 msgid "The minimum degree of enlargment" msgstr "આકાર વૃદ્ધિનું ન્યુનતમ અંશ" #: ../bonobo/bonobo-zoomable.c:344 msgid "Maximum Zoom level" msgstr "મહત્તમ નાનું-મોટું કરવાનું સ્તર" #: ../bonobo/bonobo-zoomable.c:345 msgid "The maximum degree of enlargment" msgstr "મહત્તમ આકારવૃદ્ધિ નો અંશ" #: ../bonobo/bonobo-zoomable.c:353 msgid "Has a minimum Zoom level" msgstr "ન્યુનતમ નાનું-મોટું કરવાનું સ્તર ધરાવે છે" #: ../bonobo/bonobo-zoomable.c:354 msgid "Whether we have a valid minimum zoom level" msgstr "શું આપણી પાસે યોગ્ય ન્યુનતમ નાનું-મોટું કરવાનું સ્તર છે" #: ../bonobo/bonobo-zoomable.c:361 msgid "Has a maximum Zoom level" msgstr "મહત્તમ નાનું-મોટું કરવાનું સ્તર ધરાવે છે" #: ../bonobo/bonobo-zoomable.c:362 msgid "Whether we have a valid maximum zoom level" msgstr "શું આપણી પાસે યોગ્ય મહત્તમ નાનું-મોટું કરવાનું સ્તર છે" #: ../bonobo/bonobo-zoomable.c:369 msgid "Is continuous" msgstr "શું નિરંતર છે" #: ../bonobo/bonobo-zoomable.c:370 msgid "Whether we zoom continuously (as opposed to jumps)" msgstr "શું આપણે નિરંતર નાનું-મોટું કરવાનું કરી શકીએ (કુદકાઓથી વિપરીત)" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:1 msgid "About this application" msgstr "આ કાર્યક્રમ વિશે" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:2 msgid "Select" msgstr "પસંદ કરો" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:3 msgid "_About..." msgstr "વિશે (_A)..." #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:4 msgid "_Edit" msgstr "સંપાદન (_E)" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:5 #: ../tools/browser/bonobo-browser.xml.h:4 msgid "_File" msgstr "ફાઇલ (_F)" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:6 msgid "_Select" msgstr "પસંદ કરો (_S)" #: ../samples/bonoboui/hello.c:63 msgid "This does nothing; it is only a demonstration." msgstr "આ કંઇ જ નથી; કરતું તે ફક્ત નમુનો છે." #: ../samples/bonoboui/hello.c:145 msgid "BonoboUI-Hello." msgstr "BonoboUI- નમસ્તે." #: ../samples/bonoboui/hello.c:217 msgid "Gnome Hello" msgstr "જીનોમ નમસ્તે" #. Create Label and put it in the Button: #: ../samples/bonoboui/hello.c:272 msgid "Hello, World!" msgstr "કેમ છો, દુનિયા!" #: ../samples/bonoboui/hello.c:312 msgid "Cannot init libbonoboui code" msgstr "libbonoboui કોડનો પ્રારંભ કરી શકતો નથી" #: ../samples/controls/bonobo-sample-controls.c:131 msgid "Could not initialize Bonobo UI" msgstr "Bonobo UI નો પ્રારંભ થઈ શકતો નથી" #: ../tools/browser/bonobo-browser.desktop.in.h:1 msgid "Bonobo Component Browser" msgstr "બોનોબો કમ્પોનન્ટ બ્રાઉઝર" #: ../tools/browser/bonobo-browser.desktop.in.h:2 msgid "Shows available Bonobo components" msgstr "ઉપ્લબ્ધ બોનોબો કમ્પોનન્ટો બતાવે છે" #: ../tools/browser/bonobo-browser.xml.h:1 msgid "About this program..." msgstr "આ કાર્યક્રમ વિશે..." #: ../tools/browser/bonobo-browser.xml.h:2 msgid "Close the current window" msgstr "વર્તમાન વિન્ડો બંધ કરો" #: ../tools/browser/bonobo-browser.xml.h:3 msgid "Open a new window" msgstr "નવી વિન્ડો ખોલો" #: ../tools/browser/bonobo-browser.xml.h:5 msgid "_Help" msgstr "મદદ (_H)" #. Build the general tab #: ../tools/browser/component-details.c:109 msgid "General" msgstr "સામાન્ય" #: ../tools/browser/component-details.c:116 #: ../tools/browser/component-list.c:398 msgid "IID" msgstr "IID" #: ../tools/browser/component-details.c:117 msgid "Location" msgstr "જગ્યા" #. Build the details tab #: ../tools/browser/component-details.c:167 msgid "Details" msgstr "વિગતો" #: ../tools/browser/component-details.c:168 msgid "Detailed Information" msgstr "વિગતવાર જાણકારી" #: ../tools/browser/component-list.c:367 ../tools/browser/window.c:283 msgid "Active" msgstr "સક્રિય" #: ../tools/browser/component-list.c:388 msgid "Type" msgstr "પ્રકાર" #: ../tools/browser/window.c:162 msgid "Component Details" msgstr "કમ્પોનન્ટ વિગતો" #: ../tools/browser/window.c:208 msgid "Bonobo Browser" msgstr "બોનોબો બ્રાઉઝર" #: ../tools/browser/window.c:210 msgid "Copyright 2001, The GNOME Foundation" msgstr "Copyright 2001, The GNOME Foundation" #: ../tools/browser/window.c:211 msgid "Bonobo component browser" msgstr "બોનોબો કમ્પોનન્ટ બ્રાઉઝર" #: ../tools/browser/window.c:214 msgid "translator-credits" msgstr "અંકિત પટેલ " #. create the window #: ../tools/browser/window.c:240 msgid "Component Browser" msgstr "કમ્પોનન્ટ બ્રાઉઝર" #. Fill out the tool bar #: ../tools/browser/window.c:280 msgid "All" msgstr "બધું" #: ../tools/browser/window.c:286 msgid "Inactive" msgstr "અસક્રિય" libbonoboui-2.24.5/po/ug.po0000664000076400007640000003622311546334521012445 00000000000000# Uyghur translation for libbonoboui. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # Gheyret Kenji,2010. # Sahran , 2010. # Zeper , 2010. # msgid "" msgstr "" "Project-Id-Version: libbonoboui\n" "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?" "product=bonobo&component=libbonoboui\n" "POT-Creation-Date: 2011-01-02 20:03+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: Gheyret Kenji\n" "Language-Team: Uyghur Computer Science Association \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../bonobo/bonobo-canvas-item.c:680 msgid "corba factory" msgstr "corba زاۋۇتى" #: ../bonobo/bonobo-canvas-item.c:681 msgid "The factory pointer" msgstr "زاۋۇت كۆرسەتكۈچى" #: ../bonobo/bonobo-canvas-item.c:690 msgid "corba UI container" msgstr "corba كۆرۈنمەيۈز قاچىسى" #: ../bonobo/bonobo-canvas-item.c:691 msgid "The User interface container" msgstr "كۆرۈنمەيۈز قاچىسى" #: ../bonobo/bonobo-dock-item-grip.c:254 msgid "Dock the toolbar" msgstr "قورال بالداقنى سىڭدۈرۈش" #: ../bonobo/bonobo-dock-item-grip.c:255 msgid "Undock the toolbar" msgstr "قورال بالداقنى چىقىرىۋېتىش" #: ../bonobo/bonobo-dock-item.c:225 ../bonobo/bonobo-dock-item.c:226 #: ../bonobo/bonobo-ui-toolbar.c:1163 msgid "Shadow type" msgstr "شولا تىپى" #: ../bonobo/bonobo-dock-item.c:236 ../bonobo/bonobo-dock-item.c:237 #: ../bonobo/bonobo-ui-toolbar.c:1107 ../bonobo/bonobo-ui-toolbar.c:1108 msgid "Orientation" msgstr "يۆنىلىش" #: ../bonobo/bonobo-dock-item.c:247 ../bonobo/bonobo-dock-item.c:248 #: ../bonobo/bonobo-ui-toolbar.c:1126 ../bonobo/bonobo-ui-toolbar.c:1127 msgid "Preferred width" msgstr "ئادەتتىكى كەڭلىكى" #: ../bonobo/bonobo-dock-item.c:256 ../bonobo/bonobo-dock-item.c:257 #: ../bonobo/bonobo-ui-toolbar.c:1135 ../bonobo/bonobo-ui-toolbar.c:1136 msgid "Preferred height" msgstr "ئادەتتىكى ئېگىزلىكى" #: ../bonobo/bonobo-file-selector-util.c:350 msgid "Select a file to open" msgstr "ئاچىدىغان ھۆججەتنى تاللاش" #: ../bonobo/bonobo-file-selector-util.c:378 msgid "Select files to open" msgstr "ئاچىدىغان ھۆججەتلەرنى تاللاش" #: ../bonobo/bonobo-file-selector-util.c:407 msgid "Select a filename to save" msgstr "ساقلايدىغان ھۆججەتنى تاللاش" #: ../bonobo/bonobo-plug.c:425 msgid "Event Forwarding" msgstr "ھادىسە يوللاش" #: ../bonobo/bonobo-plug.c:426 msgid "Whether X events should be forwarded" msgstr "X ھادىسىسىنى يوللامدۇ-يوق" #: ../bonobo/bonobo-selector-widget.c:300 ../bonobo/bonobo-window.c:347 #: ../tools/browser/component-details.c:108 #: ../tools/browser/component-list.c:369 msgid "Name" msgstr "ئاتى" #: ../bonobo/bonobo-selector-widget.c:322 #: ../tools/browser/component-details.c:109 msgid "Description" msgstr "چۈشەندۈرۈش" #: ../bonobo/bonobo-selector.c:343 msgid "Interfaces required" msgstr "زۆرۈر ئارايۈزلەر" #: ../bonobo/bonobo-selector.c:344 msgid "" "A NULL-terminated array of interfaces which a server must support in order " "to be listed in the selector. Defaults to \"IDL:Bonobo/Embeddable:1.0\" if " "no interfaces are listed" msgstr "" "مۇلازىمېتىر قوللىمىسا بولمايدىغان ئارايۈزلەر تىزىقى(تېكىست NULL بىلەن " "ئاخىرلىشىدۇ) تاللىغۇچتا كۆرسىتىلىدۇ. ئەگەر بىرمۇ ئارايۈز بولمىسا، \\\"IDL:" "Bonobo/Embeddable:1.0\\\" كۆڭۈلدىكى قىممەت قىلىپ ئىشلىتىلىدۇ." #: ../bonobo/bonobo-selector.c:346 msgid "Interface required entry" msgstr "زۆرۈر ئارايۈز entry" #: ../bonobo/bonobo-selector.c:347 msgid "One of the interfaces that's required" msgstr "تەلەپ قىلىنغان بىز ئارايۈز" #: ../bonobo/bonobo-ui-config-widget.c:267 msgid "Visible" msgstr "كۆرۈنۈشچان" #: ../bonobo/bonobo-ui-config-widget.c:274 msgid "_Show" msgstr "كۆرسەت(_S)" #: ../bonobo/bonobo-ui-config-widget.c:281 msgid "_Hide" msgstr "يوشۇر(_H)" #: ../bonobo/bonobo-ui-config-widget.c:287 msgid "_View tooltips" msgstr "كۆرسەتمە كۆر(_V)" #: ../bonobo/bonobo-ui-config-widget.c:292 msgid "Toolbars" msgstr "قورال بالداق" #: ../bonobo/bonobo-ui-config-widget.c:302 msgid "toolbars" msgstr "قورال بالداق" #: ../bonobo/bonobo-ui-config-widget.c:313 #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "Look" msgstr "كۆرۈنۈش" #: ../bonobo/bonobo-ui-config-widget.c:322 #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "_Icon" msgstr "سىنبەلگە(_I)" #: ../bonobo/bonobo-ui-config-widget.c:328 msgid "_Text and Icon" msgstr "تېكىست ۋە سىنبەلگە(_T)" #: ../bonobo/bonobo-ui-config-widget.c:334 msgid "Text only" msgstr "تېكىستلا" #: ../bonobo/bonobo-ui-config-widget.c:340 msgid "_Priority text only" msgstr "تېكىستنى بىرىنچى ئورۇنغا قوي(_P)" #: ../bonobo/bonobo-ui-engine.c:93 msgid "Debug" msgstr "سازلا" #: ../bonobo/bonobo-ui-engine.c:93 msgid "_Dump XML" msgstr "XML نى تۆكمە قىل(_D)" #: ../bonobo/bonobo-ui-engine.c:94 msgid "Dump the entire UI's XML description to the console" msgstr "پۈتۈن UI(كۆرۈنمەيۈز) نىڭ XML چۈشەندۈرۈشىنى ئېكراندا كۆرسىتىدۇ" #: ../bonobo/bonobo-ui-engine-config.c:524 msgid "Configure UI" msgstr "UI(كۆرۈنمەيۈز)نى تەڭشەش" #: ../bonobo/bonobo-ui-init-gtk.c:131 msgid "Gdk debugging flags to set" msgstr "Gdk سازلاش تەڭشەك بەلگىسى" #: ../bonobo/bonobo-ui-init-gtk.c:131 ../bonobo/bonobo-ui-init-gtk.c:134 #: ../bonobo/bonobo-ui-init-gtk.c:162 ../bonobo/bonobo-ui-init-gtk.c:165 msgid "FLAGS" msgstr "بەلگە" #: ../bonobo/bonobo-ui-init-gtk.c:134 msgid "Gdk debugging flags to unset" msgstr "قالدۇرماقچى بولغان Gdk سازلاش بەلگىسى" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "X display to use" msgstr "X كۆرسىتىش ئېغىزى ئىشلەت" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "DISPLAY" msgstr "كۆرسەت" #: ../bonobo/bonobo-ui-init-gtk.c:142 msgid "X screen to use" msgstr "ئىشلەتكەن X ئېكران" #: ../bonobo/bonobo-ui-init-gtk.c:142 msgid "SCREEN" msgstr "ئېكران" #: ../bonobo/bonobo-ui-init-gtk.c:146 msgid "Make X calls synchronous" msgstr "X نى قەدەمداش قىلىپ ئىشلەت" #: ../bonobo/bonobo-ui-init-gtk.c:152 msgid "Don't use X shared memory extension" msgstr "Xنىڭ ھەمبەھىر ئەسلەك كېڭەيتىلمىسىنى ئىشلەتمە" #: ../bonobo/bonobo-ui-init-gtk.c:156 msgid "Program name as used by the window manager" msgstr "كۆزنەك باشقۇرغۇچ ئىشلەتكەن پروگرامما ئىسمى" #: ../bonobo/bonobo-ui-init-gtk.c:156 msgid "NAME" msgstr "ئاتى" #: ../bonobo/bonobo-ui-init-gtk.c:159 msgid "Program class as used by the window manager" msgstr "كۆزنەك باشقۇرغۇچ ئىشلەتكەن پروگرامما تۈرى" #: ../bonobo/bonobo-ui-init-gtk.c:159 msgid "CLASS" msgstr "تۈر" #: ../bonobo/bonobo-ui-init-gtk.c:162 msgid "Gtk+ debugging flags to set" msgstr "بەلگىلەيدىغان Gtk+ تەڭشەك بەلگىسى" #: ../bonobo/bonobo-ui-init-gtk.c:165 msgid "Gtk+ debugging flags to unset" msgstr "بەلگىلىمەيدىغان Gtk+ تەڭشەك بەلگىسى" #: ../bonobo/bonobo-ui-init-gtk.c:168 msgid "Make all warnings fatal" msgstr "ھەممە ئاگاھلاندۇرۇشنى ئېغىر خاتالىققا ئۆزگەرت" #: ../bonobo/bonobo-ui-init-gtk.c:171 msgid "Load an additional Gtk module" msgstr "قوشۇمچە GTK بۆلىكىنى يۈكلە" #: ../bonobo/bonobo-ui-init-gtk.c:171 msgid "MODULE" msgstr "MODULE" #: ../bonobo/bonobo-ui-init-gtk.c:187 msgid "GTK+" msgstr "GTK+" #: ../bonobo/bonobo-ui-main.c:281 msgid "Bonobo GUI support" msgstr "Bonobo GUI قوللىشى" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "B_oth" msgstr "ئىككىلىسى(_O)" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "T_ext" msgstr "تېكىست(_E)" #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Hide t_ips" msgstr "ھۈنەرلەرنى يوشۇر(_I)" #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Show t_ips" msgstr "ھۈنەرلەرنى كۆرسەت(_I)" #: ../bonobo/bonobo-ui-sync-toolbar.c:570 msgid "_Hide toolbar" msgstr "قورال بالداقنى يوشۇر(_H)" #: ../bonobo/bonobo-ui-sync-toolbar.c:570 msgid "Customi_ze" msgstr "ئۆزلەشتۈر(_Z)" #: ../bonobo/bonobo-ui-sync-toolbar.c:571 msgid "Customize the toolbar" msgstr "قورال بالداقنى ئۆزلەشتۈرىدۇ" #: ../bonobo/bonobo-ui-toolbar.c:1117 msgid "is floating" msgstr "لەيلىتىۋاتىدۇ" #: ../bonobo/bonobo-ui-toolbar.c:1118 msgid "whether the toolbar is floating" msgstr "قورال بالداقنى لەيلىتىۋاتامدۇ-يوق" #: ../bonobo/bonobo-ui-toolbar.c:1164 msgid "Style of bevel around the toolbar" msgstr "قورال بالداقنىڭ چۆرىسىدىكى يانتۇلۇقنىڭ ئۇسلۇبى" #: ../bonobo/bonobo-ui-util.c:602 msgid "Could not display help for this application" msgstr "بۇ پروگراممىنىڭ ياردەم ئۇچۇرىنى كۆرسىتەلمىدى." #: ../bonobo/bonobo-ui-util.c:644 msgid "_Contents" msgstr "مەزمۇنلار(_C)" #: ../bonobo/bonobo-ui-util.c:645 msgid "View help for this application" msgstr "بۇ پروگراممىنىڭ ياردىمىنى كۆرسەت" #: ../bonobo/bonobo-window.c:348 msgid "Name of the window - used for configuration serialization." msgstr "كۆزنەك ئاتى - تەڭشەكنى serialization قىلىشتا ئىشلىتىلىدۇ." #: ../bonobo/bonobo-zoomable.c:326 msgid "Zoom level" msgstr "چوڭايتىش دەرىجىسى" #: ../bonobo/bonobo-zoomable.c:327 msgid "The degree of enlargment" msgstr "قانچىلىك چوڭايتىدۇ" #: ../bonobo/bonobo-zoomable.c:335 msgid "Minimum Zoom level" msgstr "ئەڭ كىچىك چوڭايتىش دەرىجىسى" #: ../bonobo/bonobo-zoomable.c:336 msgid "The minimum degree of enlargment" msgstr "ئەڭ كىچىك بولغاندا قانچىلىك كىچىكلىتىدۇ" #: ../bonobo/bonobo-zoomable.c:344 msgid "Maximum Zoom level" msgstr "ئەڭ چوڭ چوڭايتىش دەرىجىسى" #: ../bonobo/bonobo-zoomable.c:345 msgid "The maximum degree of enlargment" msgstr "ئەڭ چوڭ بولغان قانچىلىك چوڭايتىدۇ" #: ../bonobo/bonobo-zoomable.c:353 msgid "Has a minimum Zoom level" msgstr "ئەڭ كىچىك چوڭايتىش دەرىجىسى بار" #: ../bonobo/bonobo-zoomable.c:354 msgid "Whether we have a valid minimum zoom level" msgstr "ئەڭ كىچىك ئىناۋەتلىك چوڭايتىش دەرىجىسى بارمۇ-يوق" #: ../bonobo/bonobo-zoomable.c:361 msgid "Has a maximum Zoom level" msgstr "ئەڭ چوڭ چوڭايتىش دەرىجىسى بار" #: ../bonobo/bonobo-zoomable.c:362 msgid "Whether we have a valid maximum zoom level" msgstr "ئەڭ چوڭ ئىناۋەتلىك چوڭايتىش دەرىجىسى بارمۇ-يوق" #: ../bonobo/bonobo-zoomable.c:369 msgid "Is continuous" msgstr "ئۈزلۈكسىز" #: ../bonobo/bonobo-zoomable.c:370 msgid "Whether we zoom continuously (as opposed to jumps)" msgstr "ئۈزلۈكسىز(پەلەمپەيسىمان ئەمەس) چوڭايتقىلى بولامدۇ-يوق" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:1 msgid "About this application" msgstr "بۇ پروگرامما ھەققىدە" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:2 msgid "Select" msgstr "تاللاش" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:3 msgid "_About..." msgstr "ھەققىدە(_A)…" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:4 msgid "_Edit" msgstr "تەھرىر(_E)" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:5 #: ../tools/browser/bonobo-browser.xml.h:4 msgid "_File" msgstr "ھۆججەت(_F)" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:6 msgid "_Select" msgstr "تاللا(_S)" #: ../samples/bonoboui/hello.c:65 msgid "This does nothing; it is only a demonstration." msgstr "بۇ ھېچ ئىش قىلمايدۇ. پەقەتلا ئۈلگە كۆرسىتىدۇ." #: ../samples/bonoboui/hello.c:147 msgid "BonoboUI-Hello." msgstr "BonoboUI-Hello." #: ../samples/bonoboui/hello.c:219 msgid "Gnome Hello" msgstr "Gnome Hello" #. Create Label and put it in the Button: #: ../samples/bonoboui/hello.c:274 msgid "Hello, World!" msgstr "سالام دۇنيا!" #: ../samples/bonoboui/hello.c:314 msgid "Cannot init libbonoboui code" msgstr "libbonoboui نىڭ كودىنى دەسلەپلەشتۈرگىلى بولمىدى" #: ../samples/controls/bonobo-sample-controls.c:133 msgid "Could not initialize Bonobo UI" msgstr "Bonobo UI(كۆرۈنمەيۈز)نى دەسلەپلەشتۈرەلمىدى" #: ../tools/browser/bonobo-browser.desktop.in.h:1 msgid "Bonobo Component Browser" msgstr "Bonobo بۆلەك كۆرگۈ" #: ../tools/browser/bonobo-browser.desktop.in.h:2 msgid "Shows available Bonobo components" msgstr "Bonobo دا ئىشلەتكىلى بولىدىغان بۆلەكلەرنى كۆرسىتىدۇ" #: ../tools/browser/bonobo-browser.xml.h:1 msgid "About this program..." msgstr "بۇ پروگرامما ھەققىدە..." #: ../tools/browser/bonobo-browser.xml.h:2 msgid "Close the current window" msgstr "نۆۋەتتىكى كۆزنەكنى ياپىدۇ" #: ../tools/browser/bonobo-browser.xml.h:3 msgid "Open a new window" msgstr "يېڭى كۆزنەكتىن بىرنى ئاچىدۇ" #: ../tools/browser/bonobo-browser.xml.h:5 msgid "_Help" msgstr "ياردەم(_H)" #. Build the general tab #: ../tools/browser/component-details.c:103 msgid "General" msgstr "ئادەتتىكى" #: ../tools/browser/component-details.c:110 #: ../tools/browser/component-list.c:389 msgid "IID" msgstr "IID" #: ../tools/browser/component-details.c:111 msgid "Location" msgstr "ئورنى" #. Build the details tab #: ../tools/browser/component-details.c:161 msgid "Details" msgstr "تەپسىلاتى" #: ../tools/browser/component-details.c:162 msgid "Detailed Information" msgstr "تەپسىلىي ئۇچۇر" #: ../tools/browser/component-list.c:358 ../tools/browser/window.c:283 msgid "Active" msgstr "ئاكتىپ" #: ../tools/browser/component-list.c:379 msgid "Type" msgstr "تىپى" #: ../tools/browser/window.c:162 msgid "Component Details" msgstr "بۆلەك تەپسىلاتى" #: ../tools/browser/window.c:208 msgid "Bonobo Browser" msgstr "Bonobo كۆرگۈ" #: ../tools/browser/window.c:210 msgid "Copyright 2001, The GNOME Foundation" msgstr "Copyright 2001, The GNOME Foundation" #: ../tools/browser/window.c:211 msgid "Bonobo component browser" msgstr "Bonobo بۆلەك كۆرگۈ" #: ../tools/browser/window.c:214 msgid "translator-credits" msgstr "" "Gheyret Kenji \n" "Sahran" #. create the window #: ../tools/browser/window.c:240 msgid "Component Browser" msgstr "بۆلەك كۆرگۈ" #. Fill out the tool bar #: ../tools/browser/window.c:280 msgid "All" msgstr "ھەممىسى" #: ../tools/browser/window.c:286 msgid "Inactive" msgstr "ئاكتىپسىز" libbonoboui-2.24.5/po/ms.po0000644000076400007640000003061511173072741012445 00000000000000# Malay Translation for libbonoboui # Copyright (C) 2002 Free Software Foundation, Inc., Projek Gabai. # 1. Mohamad Afifi Omar (App) ,2002. # 2. Hasbullah Bin Pit , 2002-2004. msgid "" msgstr "" "Project-Id-Version: libbonoboui HEAD\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2005-09-10 18:44+0200\n" "PO-Revision-Date: 2003-01-01 21:23+0800\n" "Last-Translator: Hasbullah Bin Pit \n" "Language-Team: Bahasa Melayu \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../bonobo/bonobo-canvas-item.c:683 msgid "corba factory" msgstr "Kilang corba" #: ../bonobo/bonobo-canvas-item.c:684 msgid "The factory pointer" msgstr "Pentuding kilang" #: ../bonobo/bonobo-canvas-item.c:693 msgid "corba UI container" msgstr "bekas UI corba" #: ../bonobo/bonobo-canvas-item.c:694 msgid "The User interface container" msgstr "Bekas antaramuka pengguna" #: ../bonobo/bonobo-dock-item-grip.c:257 msgid "Dock the toolbar" msgstr "Labuhkan toolbar" #: ../bonobo/bonobo-dock-item-grip.c:258 #, fuzzy msgid "Undock the toolbar" msgstr "Leraikan toolbar" #: ../bonobo/bonobo-dock-item.c:235 ../bonobo/bonobo-dock-item.c:236 #: ../bonobo/bonobo-ui-toolbar.c:1175 msgid "Shadow type" msgstr "Jenis bayang" #: ../bonobo/bonobo-dock-item.c:246 ../bonobo/bonobo-dock-item.c:247 #: ../bonobo/bonobo-ui-toolbar.c:1119 ../bonobo/bonobo-ui-toolbar.c:1120 msgid "Orientation" msgstr "Orientasi" #: ../bonobo/bonobo-dock-item.c:257 ../bonobo/bonobo-dock-item.c:258 #: ../bonobo/bonobo-ui-toolbar.c:1138 ../bonobo/bonobo-ui-toolbar.c:1139 msgid "Preferred width" msgstr "Lebar yang dikehendaki" #: ../bonobo/bonobo-dock-item.c:266 ../bonobo/bonobo-dock-item.c:267 #: ../bonobo/bonobo-ui-toolbar.c:1147 ../bonobo/bonobo-ui-toolbar.c:1148 msgid "Preferred height" msgstr "Tinggi yang dikehendaki" #: ../bonobo/bonobo-file-selector-util.c:357 msgid "Select a file to open" msgstr "Pilih satu fail untuk dibuka" #: ../bonobo/bonobo-file-selector-util.c:385 msgid "Select files to open" msgstr "Pilih beberapa fail untuk dibuka" #: ../bonobo/bonobo-file-selector-util.c:414 msgid "Select a filename to save" msgstr "Pilih satu nama fail untuk disimpan" #: ../bonobo/bonobo-plug.c:425 msgid "Event Forwarding" msgstr "Forward Acara" #: ../bonobo/bonobo-plug.c:426 msgid "Whether X events should be forwarded" msgstr "Samada acara X patut diforwardkan" #: ../bonobo/bonobo-selector-widget.c:302 ../bonobo/bonobo-window.c:346 #: ../tools/browser/component-details.c:114 #: ../tools/browser/component-list.c:381 msgid "Name" msgstr "Nama" #: ../bonobo/bonobo-selector-widget.c:324 #: ../tools/browser/component-details.c:115 msgid "Description" msgstr "Keterangan" #: ../bonobo/bonobo-selector.c:345 msgid "Interfaces required" msgstr "Antaramuka diperkukan" #: ../bonobo/bonobo-selector.c:346 msgid "" "A NULL-terminated array of interfaces which a server must support in order " "to be listed in the selector. Defaults to \"IDL:Bonobo/Embeddable:1.0\" if " "no interfaces are listed" msgstr "" "Array NULL-terminated bagi antaramuka dimana mesti disokongi pelayan supaya " "ia tersenarai pada pemilih. Default ke \"IDL:Bonobo/Embeddable:1.0\" jika " "tiada antaramuka disenaraikan" #: ../bonobo/bonobo-selector.c:348 msgid "Interface required entry" msgstr "Kemasukan antaramuka diperlukan" #: ../bonobo/bonobo-selector.c:349 msgid "One of the interfaces that's required" msgstr "Satu dari antaramuka yang diperlukan" #: ../bonobo/bonobo-ui-config-widget.c:268 msgid "Visible" msgstr "Tampak" #: ../bonobo/bonobo-ui-config-widget.c:275 msgid "_Show" msgstr "_Papar" #: ../bonobo/bonobo-ui-config-widget.c:282 msgid "_Hide" msgstr "_Sembunyi" #: ../bonobo/bonobo-ui-config-widget.c:288 msgid "_View tooltips" msgstr "_Paparkan tooltip" #: ../bonobo/bonobo-ui-config-widget.c:293 msgid "Toolbars" msgstr "Toolbar" #: ../bonobo/bonobo-ui-config-widget.c:303 msgid "toolbars" msgstr "toolbar" #: ../bonobo/bonobo-ui-config-widget.c:314 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "Look" msgstr "Lihat" #: ../bonobo/bonobo-ui-config-widget.c:323 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "_Icon" msgstr "_Ikon" #: ../bonobo/bonobo-ui-config-widget.c:329 msgid "_Text and Icon" msgstr "_Teks dan Ikon" #: ../bonobo/bonobo-ui-config-widget.c:335 msgid "Text only" msgstr "Teks sahaja" #: ../bonobo/bonobo-ui-config-widget.c:341 msgid "_Priority text only" msgstr "Teks yang _penting sahaja" #: ../bonobo/bonobo-ui-engine.c:90 msgid "Debug" msgstr "Nyahpepijat" #: ../bonobo/bonobo-ui-engine.c:90 msgid "_Dump XML" msgstr "_Longgok XML" #: ../bonobo/bonobo-ui-engine.c:91 msgid "Dump the entire UI's XML description to the console" msgstr "Longgok seluruh keterangan XML bagi UI ke konsol" #: ../bonobo/bonobo-ui-engine-config.c:522 msgid "Configure UI" msgstr "Konfigurasikan UI" #: ../bonobo/bonobo-ui-init-gtk.c:113 msgid "Gdk debugging flags to set" msgstr "Flag nyahpepijat Gdk untuk ditetapkan" #: ../bonobo/bonobo-ui-init-gtk.c:113 ../bonobo/bonobo-ui-init-gtk.c:116 #: ../bonobo/bonobo-ui-init-gtk.c:144 ../bonobo/bonobo-ui-init-gtk.c:147 msgid "FLAGS" msgstr "FLAG" #: ../bonobo/bonobo-ui-init-gtk.c:116 msgid "Gdk debugging flags to unset" msgstr "Flag nyahpepijat Gdk untuk dinyahtetapkan" #: ../bonobo/bonobo-ui-init-gtk.c:120 msgid "X display to use" msgstr "Paparan X untuk digunakan" #: ../bonobo/bonobo-ui-init-gtk.c:120 msgid "DISPLAY" msgstr "PAPARAN" #: ../bonobo/bonobo-ui-init-gtk.c:124 msgid "X screen to use" msgstr "Skrin X untuk digunakan" #: ../bonobo/bonobo-ui-init-gtk.c:124 msgid "SCREEN" msgstr "SKRIN" #: ../bonobo/bonobo-ui-init-gtk.c:128 msgid "Make X calls synchronous" msgstr "Jadikan panggilan X synchronous" #: ../bonobo/bonobo-ui-init-gtk.c:134 msgid "Don't use X shared memory extension" msgstr "Jangan guna sambungan memori terkongsi X" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "Program name as used by the window manager" msgstr "Nama program digunakan sebagai pengurus tetingkap" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "NAME" msgstr "NAMA" #: ../bonobo/bonobo-ui-init-gtk.c:141 msgid "Program class as used by the window manager" msgstr "Kelas program digunakan sebagai pengurus tetingkap" #: ../bonobo/bonobo-ui-init-gtk.c:141 msgid "CLASS" msgstr "KELAS" #: ../bonobo/bonobo-ui-init-gtk.c:144 msgid "Gtk+ debugging flags to set" msgstr "Flag nyahpepijat Gtk+ untuk ditetapkan" #: ../bonobo/bonobo-ui-init-gtk.c:147 msgid "Gtk+ debugging flags to unset" msgstr "Flag nyahpepijat Gtk+ untuk dinyahtetapkan" #: ../bonobo/bonobo-ui-init-gtk.c:150 msgid "Make all warnings fatal" msgstr "Jadikan semua amaran fatal" #: ../bonobo/bonobo-ui-init-gtk.c:153 msgid "Load an additional Gtk module" msgstr "Muatkan modul Gtk tambahan" #: ../bonobo/bonobo-ui-init-gtk.c:153 msgid "MODULE" msgstr "MODUL" #: ../bonobo/bonobo-ui-init-gtk.c:162 msgid "GTK+" msgstr "GTK+" #: ../bonobo/bonobo-ui-main.c:278 msgid "Bonobo GUI support" msgstr "Sokongan GUI Bonobo" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "B_oth" msgstr "Ke_dua-dua" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "T_ext" msgstr "T_eks" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Hide t_ips" msgstr "Sembunyikan t_ips" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Show t_ips" msgstr "Paparkan t_ips" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "_Hide toolbar" msgstr "Sembunyikan toolba_r" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "Customi_ze" msgstr "Personali_sasi" #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Customize the toolbar" msgstr "Personalisasikan toolbar" #: ../bonobo/bonobo-ui-toolbar.c:1129 msgid "is floating" msgstr "adalah terapung" #: ../bonobo/bonobo-ui-toolbar.c:1130 msgid "whether the toolbar is floating" msgstr "Samada toolbar adalah terapung" #: ../bonobo/bonobo-ui-toolbar.c:1176 msgid "Style of bevel around the toolbar" msgstr "Gaya bagi bevel sekeliling toolbar" #: ../bonobo/bonobo-ui-util.c:630 msgid "_Contents" msgstr "_Kandungan" #: ../bonobo/bonobo-ui-util.c:631 msgid "View help for this application" msgstr "Lihat bantuan bagi aplikasi ini" #: ../bonobo/bonobo-window.c:347 msgid "Name of the window - used for configuration serialization." msgstr "Nama bagi tetingkap - digunakan untuk menyelaraskan konfigurasi" #: ../bonobo/bonobo-zoomable.c:326 msgid "Zoom level" msgstr "Aras zoom" #: ../bonobo/bonobo-zoomable.c:327 msgid "The degree of enlargment" msgstr "Darjah pembesaran" #: ../bonobo/bonobo-zoomable.c:335 msgid "Minimum Zoom level" msgstr "Aras Zoom Minima" #: ../bonobo/bonobo-zoomable.c:336 msgid "The minimum degree of enlargment" msgstr "Darjah pembesaran minima" #: ../bonobo/bonobo-zoomable.c:344 msgid "Maximum Zoom level" msgstr "Aras Maksima Zoom" #: ../bonobo/bonobo-zoomable.c:345 msgid "The maximum degree of enlargment" msgstr "Aras maksima pembesaran" #: ../bonobo/bonobo-zoomable.c:353 msgid "Has a minimum Zoom level" msgstr "Mempunyai aras zoom minima" #: ../bonobo/bonobo-zoomable.c:354 msgid "Whether we have a valid minimum zoom level" msgstr "Samada kita mempunyai aras zoom minimum yang sah" #: ../bonobo/bonobo-zoomable.c:361 msgid "Has a maximum Zoom level" msgstr "Mempunyai aras maksima zoom" #: ../bonobo/bonobo-zoomable.c:362 msgid "Whether we have a valid maximum zoom level" msgstr "Samada kita mempunyai aras zoom maksimum yang sah" #: ../bonobo/bonobo-zoomable.c:369 msgid "Is continuous" msgstr "adalah berterusan" #: ../bonobo/bonobo-zoomable.c:370 msgid "Whether we zoom continuously (as opposed to jumps)" msgstr "Apakah kita boleh zoom berterusan (berbanding dengan lompatan)" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:1 msgid "About this application" msgstr "Perihal aplikasi ini" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:2 msgid "Select" msgstr "Pilih" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:3 msgid "_About..." msgstr "Perih_al..." #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:4 msgid "_Edit" msgstr "_Edit" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:5 #: ../tools/browser/bonobo-browser.xml.h:4 msgid "_File" msgstr "_Fail" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:6 msgid "_Select" msgstr "_Pilih" #: ../samples/bonoboui/hello.c:63 msgid "This does nothing; it is only a demonstration." msgstr "Tiada apa-apa; Ini hanya demonstrasi" #: ../samples/bonoboui/hello.c:145 msgid "BonoboUI-Hello." msgstr "BonoboUI-Hello." #: ../samples/bonoboui/hello.c:217 msgid "Gnome Hello" msgstr "Gnome Hello" #. Create Label and put it in the Button: #: ../samples/bonoboui/hello.c:272 msgid "Hello, World!" msgstr "Hello, Dunia!" #: ../samples/bonoboui/hello.c:312 msgid "Cannot init libbonoboui code" msgstr "Gagal menginitialisasikan kod libbonoboui" #: ../samples/controls/bonobo-sample-controls.c:131 msgid "Could not initialize Bonobo UI" msgstr "Tak dapat menginitialisasi UI Bonobo" #: ../tools/browser/bonobo-browser.desktop.in.h:1 msgid "Bonobo Component Browser" msgstr "" #: ../tools/browser/bonobo-browser.desktop.in.h:2 msgid "Shows available Bonobo components" msgstr "" #: ../tools/browser/bonobo-browser.xml.h:1 #, fuzzy msgid "About this program..." msgstr "Perihal aplikasi ini" #: ../tools/browser/bonobo-browser.xml.h:2 msgid "Close the current window" msgstr "" #: ../tools/browser/bonobo-browser.xml.h:3 msgid "Open a new window" msgstr "" #: ../tools/browser/bonobo-browser.xml.h:5 #, fuzzy msgid "_Help" msgstr "_Sembunyi" #. Build the general tab #: ../tools/browser/component-details.c:109 msgid "General" msgstr "" #: ../tools/browser/component-details.c:116 #: ../tools/browser/component-list.c:401 msgid "IID" msgstr "" #: ../tools/browser/component-details.c:117 msgid "Location" msgstr "" #. Build the details tab #: ../tools/browser/component-details.c:167 msgid "Details" msgstr "" #: ../tools/browser/component-details.c:168 msgid "Detailed Information" msgstr "" #: ../tools/browser/component-list.c:370 ../tools/browser/window.c:290 msgid "Active" msgstr "" #: ../tools/browser/component-list.c:391 msgid "Type" msgstr "" #: ../tools/browser/window.c:170 msgid "Component Details" msgstr "" #: ../tools/browser/window.c:215 msgid "Bonobo Browser" msgstr "" #: ../tools/browser/window.c:216 msgid "Copyright 2001, The GNOME Foundation" msgstr "" #: ../tools/browser/window.c:217 msgid "Bonobo component browser" msgstr "" #. create the window #: ../tools/browser/window.c:247 msgid "Component Browser" msgstr "" #. Fill out the tool bar #: ../tools/browser/window.c:287 msgid "All" msgstr "" #: ../tools/browser/window.c:293 msgid "Inactive" msgstr "" libbonoboui-2.24.5/po/mk.po0000644000076400007640000003667711173072741012453 00000000000000# translation of mk.po to Macedonian # translation of libbonoboui.HEAD.po to # translation of libbonoboui.HEAD.po to # This file is distributed under the same license as the PACKAGE package. # Copyright (C) 2005 THE PACKAGE'S COPYRIGHT HOLDER, 2003. # # Ivan Stojmirov , 2003. # Vladislav Bidikov , 2003. # Arangel Angov , 2004, 2006, 2008. # Jovan Naumovski , 2006. msgid "" msgstr "" "Project-Id-Version: mk\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2007-11-13 21:46+0000\n" "PO-Revision-Date: 2008-02-09 23:35+0100\n" "Last-Translator: Arangel Angov \n" "Language-Team: Macedonian \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Generator: KBabel 1.11.4\n" #: ../bonobo/bonobo-canvas-item.c:680 msgid "corba factory" msgstr "corba фабрика" #: ../bonobo/bonobo-canvas-item.c:681 msgid "The factory pointer" msgstr "Стандарден покажувач" #: ../bonobo/bonobo-canvas-item.c:690 msgid "corba UI container" msgstr "corba графички објект" #: ../bonobo/bonobo-canvas-item.c:691 msgid "The User interface container" msgstr "Кориснички објект" #: ../bonobo/bonobo-dock-item-grip.c:255 msgid "Dock the toolbar" msgstr "Спушти ја лентата со алатки" #: ../bonobo/bonobo-dock-item-grip.c:256 msgid "Undock the toolbar" msgstr "Подигни ја лентата со алатки" #: ../bonobo/bonobo-dock-item.c:228 ../bonobo/bonobo-dock-item.c:229 #: ../bonobo/bonobo-ui-toolbar.c:1161 msgid "Shadow type" msgstr "Тип на сенка" #: ../bonobo/bonobo-dock-item.c:239 ../bonobo/bonobo-dock-item.c:240 #: ../bonobo/bonobo-ui-toolbar.c:1105 ../bonobo/bonobo-ui-toolbar.c:1106 msgid "Orientation" msgstr "Ориентација" #: ../bonobo/bonobo-dock-item.c:250 ../bonobo/bonobo-dock-item.c:251 #: ../bonobo/bonobo-ui-toolbar.c:1124 ../bonobo/bonobo-ui-toolbar.c:1125 msgid "Preferred width" msgstr "Преферирана ширина" #: ../bonobo/bonobo-dock-item.c:259 ../bonobo/bonobo-dock-item.c:260 #: ../bonobo/bonobo-ui-toolbar.c:1133 ../bonobo/bonobo-ui-toolbar.c:1134 msgid "Preferred height" msgstr "Преферирана висина" #: ../bonobo/bonobo-file-selector-util.c:357 msgid "Select a file to open" msgstr "Одберете датотека за отворање" #: ../bonobo/bonobo-file-selector-util.c:385 msgid "Select files to open" msgstr "Одберете датотеки за отворање" #: ../bonobo/bonobo-file-selector-util.c:414 msgid "Select a filename to save" msgstr "Одберете датотека за снимање" #: ../bonobo/bonobo-plug.c:423 msgid "Event Forwarding" msgstr "Пренесување на настани" #: ../bonobo/bonobo-plug.c:424 msgid "Whether X events should be forwarded" msgstr "Дали X настани да се пренесуваат" #: ../bonobo/bonobo-selector-widget.c:297 ../bonobo/bonobo-window.c:344 #: ../tools/browser/component-details.c:114 #: ../tools/browser/component-list.c:378 msgid "Name" msgstr "Име" #: ../bonobo/bonobo-selector-widget.c:319 #: ../tools/browser/component-details.c:115 msgid "Description" msgstr "Опис" #: ../bonobo/bonobo-selector.c:343 msgid "Interfaces required" msgstr "Потребни интерфејси" #: ../bonobo/bonobo-selector.c:344 msgid "" "A NULL-terminated array of interfaces which a server must support in order " "to be listed in the selector. Defaults to \"IDL:Bonobo/Embeddable:1.0\" if " "no interfaces are listed" msgstr "" "NULL терминирана низа на интерфејси кои серверот мора да ги подржува за да " "биде излистан во менито. Стандардено е IDL:Bonobo/Embeddable:1.0 ако не е " "некој друг избран" #: ../bonobo/bonobo-selector.c:346 msgid "Interface required entry" msgstr "Поле потребно за интерфејсот" #: ../bonobo/bonobo-selector.c:347 msgid "One of the interfaces that's required" msgstr "Еден од интерфејсите кои е потребен" #: ../bonobo/bonobo-ui-config-widget.c:265 msgid "Visible" msgstr "Видлив" #: ../bonobo/bonobo-ui-config-widget.c:272 msgid "_Show" msgstr "_Покажи" #: ../bonobo/bonobo-ui-config-widget.c:279 msgid "_Hide" msgstr "_Сокриј" #: ../bonobo/bonobo-ui-config-widget.c:285 msgid "_View tooltips" msgstr "_Види совети" #: ../bonobo/bonobo-ui-config-widget.c:290 msgid "Toolbars" msgstr "Ленти со алатки" #: ../bonobo/bonobo-ui-config-widget.c:300 msgid "toolbars" msgstr "ленти со алатки" #: ../bonobo/bonobo-ui-config-widget.c:311 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "Look" msgstr "Изглед" #: ../bonobo/bonobo-ui-config-widget.c:320 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "_Icon" msgstr "_Икона" #: ../bonobo/bonobo-ui-config-widget.c:326 msgid "_Text and Icon" msgstr "_Текст и икона" #: ../bonobo/bonobo-ui-config-widget.c:332 msgid "Text only" msgstr "Само текст" #: ../bonobo/bonobo-ui-config-widget.c:338 msgid "_Priority text only" msgstr "Само текст со _приоритет" #: ../bonobo/bonobo-ui-engine.c:91 msgid "Debug" msgstr "Дебагирање" #: ../bonobo/bonobo-ui-engine.c:91 msgid "_Dump XML" msgstr "_Прикажи XML" #: ../bonobo/bonobo-ui-engine.c:92 msgid "Dump the entire UI's XML description to the console" msgstr "Прикажи го целиот XML опис во конзола" #: ../bonobo/bonobo-ui-engine-config.c:522 msgid "Configure UI" msgstr "Поставување на изглед" #: ../bonobo/bonobo-ui-init-gtk.c:130 msgid "Gdk debugging flags to set" msgstr "Поставување на Gdk знамиња за дебагирање" #: ../bonobo/bonobo-ui-init-gtk.c:130 ../bonobo/bonobo-ui-init-gtk.c:133 #: ../bonobo/bonobo-ui-init-gtk.c:161 ../bonobo/bonobo-ui-init-gtk.c:164 msgid "FLAGS" msgstr "ЗНАМИЊА" #: ../bonobo/bonobo-ui-init-gtk.c:133 msgid "Gdk debugging flags to unset" msgstr "Отстранување на Gdk знамиња за дебагирање" #: ../bonobo/bonobo-ui-init-gtk.c:137 msgid "X display to use" msgstr "Приказ за X кој што ќе се користи" #: ../bonobo/bonobo-ui-init-gtk.c:137 msgid "DISPLAY" msgstr "ПРИКАЗ" #: ../bonobo/bonobo-ui-init-gtk.c:141 msgid "X screen to use" msgstr "Екран за X кој што ќе се користи" #: ../bonobo/bonobo-ui-init-gtk.c:141 msgid "SCREEN" msgstr "ЕКРАН" #: ../bonobo/bonobo-ui-init-gtk.c:145 msgid "Make X calls synchronous" msgstr "Направи ги X командите синхрони" #: ../bonobo/bonobo-ui-init-gtk.c:151 msgid "Don't use X shared memory extension" msgstr "Не ја користи заедничката меморија на X" #: ../bonobo/bonobo-ui-init-gtk.c:155 msgid "Program name as used by the window manager" msgstr "Име на програмата која се користи во менаџерот на прозорци" #: ../bonobo/bonobo-ui-init-gtk.c:155 msgid "NAME" msgstr "ИМЕ" #: ../bonobo/bonobo-ui-init-gtk.c:158 msgid "Program class as used by the window manager" msgstr "Класа на програмата која се користи во менаџерот на прозорци" #: ../bonobo/bonobo-ui-init-gtk.c:158 msgid "CLASS" msgstr "КЛАСА" #: ../bonobo/bonobo-ui-init-gtk.c:161 msgid "Gtk+ debugging flags to set" msgstr "Поставување на Gtk+ знамиња за дебагирање" #: ../bonobo/bonobo-ui-init-gtk.c:164 msgid "Gtk+ debugging flags to unset" msgstr "Отстранување на Gtk+ знамиња за дебагирање" #: ../bonobo/bonobo-ui-init-gtk.c:167 msgid "Make all warnings fatal" msgstr "Направи ги сите предупредувања фатални" #: ../bonobo/bonobo-ui-init-gtk.c:170 msgid "Load an additional Gtk module" msgstr "Вчитување на дополнителни Gtk модули" #: ../bonobo/bonobo-ui-init-gtk.c:170 msgid "MODULE" msgstr "МОДУЛ" #: ../bonobo/bonobo-ui-init-gtk.c:186 msgid "GTK+" msgstr "GTK+" #: ../bonobo/bonobo-ui-main.c:278 msgid "Bonobo GUI support" msgstr "Поддршка за bonobo" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "B_oth" msgstr "Д_вете" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "T_ext" msgstr "_Текст" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Hide t_ips" msgstr "Сокриј совет_и" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Show t_ips" msgstr "Покажи совет_и" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "_Hide toolbar" msgstr "_Криење на лентата со алатки" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "Customi_ze" msgstr "Сопстве_но" #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Customize the toolbar" msgstr "Поставување на ова мени со алатки" #: ../bonobo/bonobo-ui-toolbar.c:1115 msgid "is floating" msgstr "ќе лебди" #: ../bonobo/bonobo-ui-toolbar.c:1116 msgid "whether the toolbar is floating" msgstr "дали оваа лента со алатки ќе лебди" #: ../bonobo/bonobo-ui-toolbar.c:1162 msgid "Style of bevel around the toolbar" msgstr "Стил на сенка околу лентата со алатки" #: ../bonobo/bonobo-ui-util.c:601 msgid "Could not display help for this application" msgstr "Не можам да ја прикажам помошта за оваа апликација" #: ../bonobo/bonobo-ui-util.c:643 msgid "_Contents" msgstr "_Содржини" #: ../bonobo/bonobo-ui-util.c:644 msgid "View help for this application" msgstr "Види ја помошта за оваа апликација" #: ../bonobo/bonobo-window.c:345 msgid "Name of the window - used for configuration serialization." msgstr "Името на прозорецот кој се користи за подесување на серијализација." #: ../bonobo/bonobo-zoomable.c:326 msgid "Zoom level" msgstr "Ниво на зголемување" #: ../bonobo/bonobo-zoomable.c:327 msgid "The degree of enlargment" msgstr "Степен на зголемување" #: ../bonobo/bonobo-zoomable.c:335 msgid "Minimum Zoom level" msgstr "Минимално ниво на зголемување" #: ../bonobo/bonobo-zoomable.c:336 msgid "The minimum degree of enlargment" msgstr "Минимален степен на зголемување" #: ../bonobo/bonobo-zoomable.c:344 msgid "Maximum Zoom level" msgstr "Максимално ниво на зголемување" #: ../bonobo/bonobo-zoomable.c:345 msgid "The maximum degree of enlargment" msgstr "Максимален степен на зголемување" #: ../bonobo/bonobo-zoomable.c:353 msgid "Has a minimum Zoom level" msgstr "Има минимално ниво на зголемување" #: ../bonobo/bonobo-zoomable.c:354 msgid "Whether we have a valid minimum zoom level" msgstr "Дали имаме валидно минимално ниво на зголемување" #: ../bonobo/bonobo-zoomable.c:361 msgid "Has a maximum Zoom level" msgstr "Има максимално ниво на зголемување" #: ../bonobo/bonobo-zoomable.c:362 msgid "Whether we have a valid maximum zoom level" msgstr "Дали имаме валидно максимално ниво на зголемување" #: ../bonobo/bonobo-zoomable.c:369 msgid "Is continuous" msgstr "Продолжува" #: ../bonobo/bonobo-zoomable.c:370 msgid "Whether we zoom continuously (as opposed to jumps)" msgstr "Дали зголемување постојано (спротивно на скокови)" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:1 msgid "About this application" msgstr "За оваа апликација" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:2 msgid "Select" msgstr "Одбери" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:3 msgid "_About..." msgstr "_За..." #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:4 msgid "_Edit" msgstr "_Уреди" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:5 #: ../tools/browser/bonobo-browser.xml.h:4 msgid "_File" msgstr "_Датотека" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:6 msgid "_Select" msgstr "_Одбери" #: ../samples/bonoboui/hello.c:63 msgid "This does nothing; it is only a demonstration." msgstr "Ова нема функција и е тука само за демонстрација." #: ../samples/bonoboui/hello.c:145 msgid "BonoboUI-Hello." msgstr "BonoboUI-здраво" #: ../samples/bonoboui/hello.c:217 msgid "Gnome Hello" msgstr "Гном здраво" #. Create Label and put it in the Button: #: ../samples/bonoboui/hello.c:272 msgid "Hello, World!" msgstr "Здраво, свету!" #: ../samples/bonoboui/hello.c:312 msgid "Cannot init libbonoboui code" msgstr "Не можам да го иницијализирам кодот на libbonoboui" #: ../samples/controls/bonobo-sample-controls.c:131 msgid "Could not initialize Bonobo UI" msgstr "Не можам да го иницијализирам графичкиот интерфејс на Bonobo" #: ../tools/browser/bonobo-browser.desktop.in.h:1 msgid "Bonobo Component Browser" msgstr "Бонобо компонента прелистувач" #: ../tools/browser/bonobo-browser.desktop.in.h:2 msgid "Shows available Bonobo components" msgstr "Ги покажува сите достапни Бонобо компоненти" #: ../tools/browser/bonobo-browser.xml.h:1 msgid "About this program..." msgstr "За оваа програма..." #: ../tools/browser/bonobo-browser.xml.h:2 msgid "Close the current window" msgstr "Затвори го тековниот прозорец" #: ../tools/browser/bonobo-browser.xml.h:3 msgid "Open a new window" msgstr "Отвори во нов прозорец" #: ../tools/browser/bonobo-browser.xml.h:5 msgid "_Help" msgstr "_Помош" #. Build the general tab #: ../tools/browser/component-details.c:109 msgid "General" msgstr "Општо" #: ../tools/browser/component-details.c:116 #: ../tools/browser/component-list.c:398 msgid "IID" msgstr "IID" #: ../tools/browser/component-details.c:117 msgid "Location" msgstr "Локација" #. Build the details tab #: ../tools/browser/component-details.c:167 msgid "Details" msgstr "Детали" #: ../tools/browser/component-details.c:168 msgid "Detailed Information" msgstr "Детални информации" #: ../tools/browser/component-list.c:367 ../tools/browser/window.c:283 msgid "Active" msgstr "Активно" #: ../tools/browser/component-list.c:388 msgid "Type" msgstr "Тип" #: ../tools/browser/window.c:162 msgid "Component Details" msgstr "Детали за компонентата" #: ../tools/browser/window.c:208 msgid "Bonobo Browser" msgstr "Бонобо прелистувач" #: ../tools/browser/window.c:210 msgid "Copyright 2001, The GNOME Foundation" msgstr "Copyright 2001, The GNOME Foundation" #: ../tools/browser/window.c:211 msgid "Bonobo component browser" msgstr "Бонобо компонента прелистува" #: ../tools/browser/window.c:214 msgid "translator-credits" msgstr "Арангел Ангов , 2006" #. create the window #: ../tools/browser/window.c:240 msgid "Component Browser" msgstr "Компонента прелистувач" #. Fill out the tool bar #: ../tools/browser/window.c:280 msgid "All" msgstr "Сите" #: ../tools/browser/window.c:286 msgid "Inactive" msgstr "Неактивно" libbonoboui-2.24.5/po/te.po0000644000076400007640000004211511173072741012434 00000000000000# translation of te.po to Telugu # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Krishna Babu K , 2008. msgid "" msgstr "" "Project-Id-Version: te\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2008-09-15 09:47+0000\n" "PO-Revision-Date: 2008-09-16 16:51+0530\n" "Last-Translator: Krishna Babu K \n" "Language-Team: Telugu \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Generator: KBabel 1.11.4\n" "Plural-Forms: nplurals=2; plural=(n!=1);\n\n" "\n" #: ../bonobo/bonobo-canvas-item.c:680 msgid "corba factory" msgstr "కోర్బా ఫాక్టరీ" #: ../bonobo/bonobo-canvas-item.c:681 msgid "The factory pointer" msgstr "ఫాక్టరీ పాయింటర్" #: ../bonobo/bonobo-canvas-item.c:690 msgid "corba UI container" msgstr "కోర్బా UI కంటైనర్" #: ../bonobo/bonobo-canvas-item.c:691 msgid "The User interface container" msgstr "వినియోగదారి ఇంటర్‌ఫేస్ కంటైనర్" #: ../bonobo/bonobo-dock-item-grip.c:255 msgid "Dock the toolbar" msgstr "సాధనపట్టీని డాక్ చేయుము" #: ../bonobo/bonobo-dock-item-grip.c:256 msgid "Undock the toolbar" msgstr "సాధనపట్టీని అన్‌డాక్ చేయుము" #: ../bonobo/bonobo-dock-item.c:228 ../bonobo/bonobo-dock-item.c:229 #: ../bonobo/bonobo-ui-toolbar.c:1161 msgid "Shadow type" msgstr "నీడ రకము" #: ../bonobo/bonobo-dock-item.c:239 ../bonobo/bonobo-dock-item.c:240 #: ../bonobo/bonobo-ui-toolbar.c:1105 ../bonobo/bonobo-ui-toolbar.c:1106 msgid "Orientation" msgstr "సర్దుబాటు" #: ../bonobo/bonobo-dock-item.c:250 ../bonobo/bonobo-dock-item.c:251 #: ../bonobo/bonobo-ui-toolbar.c:1124 ../bonobo/bonobo-ui-toolbar.c:1125 msgid "Preferred width" msgstr "అభీష్ట వెడల్పు" #: ../bonobo/bonobo-dock-item.c:259 ../bonobo/bonobo-dock-item.c:260 #: ../bonobo/bonobo-ui-toolbar.c:1133 ../bonobo/bonobo-ui-toolbar.c:1134 msgid "Preferred height" msgstr "అభీష్ట ఎత్తు" #: ../bonobo/bonobo-file-selector-util.c:355 msgid "Select a file to open" msgstr "తెరుచుటకు వొక దస్త్రమును యెంపికచేయుము" #: ../bonobo/bonobo-file-selector-util.c:383 msgid "Select files to open" msgstr "తెరుచుటకు దస్త్రములను యెంపికచేయుము" #: ../bonobo/bonobo-file-selector-util.c:412 msgid "Select a filename to save" msgstr "భద్రపరచుటకు దస్త్రమునామమును యెంపికచేయుము" #: ../bonobo/bonobo-plug.c:423 msgid "Event Forwarding" msgstr "ఘటనను ముందుకుపంపుట" #: ../bonobo/bonobo-plug.c:424 msgid "Whether X events should be forwarded" msgstr "X ఘటనలు ముందుకు పంపవలెనా" #: ../bonobo/bonobo-selector-widget.c:297 ../bonobo/bonobo-window.c:344 #: ../tools/browser/component-details.c:114 #: ../tools/browser/component-list.c:378 msgid "Name" msgstr "నామము" #: ../bonobo/bonobo-selector-widget.c:319 #: ../tools/browser/component-details.c:115 msgid "Description" msgstr "వివరణ" #: ../bonobo/bonobo-selector.c:343 msgid "Interfaces required" msgstr "ఇంటర్‌ఫేస్‌లు అవసరము" #: ../bonobo/bonobo-selector.c:344 msgid "" "A NULL-terminated array of interfaces which a server must support in order " "to be listed in the selector. Defaults to \"IDL:Bonobo/Embeddable:1.0\" if " "no interfaces are listed" msgstr "" "ఎంపికదారినందు జాబితా అవుటకు సేవిక తప్పక మద్దతీయవలిసిన ఇంటర్‌ఫేస్‌లయొక్క " "NULL-టెర్మినేటెడ్ ఎరే. ఎటువంటి ఇంటర్‌ఫేస్‌లు జాబితా కాకపోతే \"IDL:Bonobo/" "Embeddable:1.0\"కు అప్రమేయమౌతుంది." #: ../bonobo/bonobo-selector.c:346 msgid "Interface required entry" msgstr "ఇంటర్‌ఫేస్‌కు ప్రవేశము అవసరము" #: ../bonobo/bonobo-selector.c:347 msgid "One of the interfaces that's required" msgstr "అవసరమైన ఇంటర్‌ఫేస్‌లలో వొకటి" #: ../bonobo/bonobo-ui-config-widget.c:265 msgid "Visible" msgstr "కనిపించు" #: ../bonobo/bonobo-ui-config-widget.c:272 msgid "_Show" msgstr "చూపుము (_S)" #: ../bonobo/bonobo-ui-config-widget.c:279 msgid "_Hide" msgstr "మరుగుపరుచుము (_H)" #: ../bonobo/bonobo-ui-config-widget.c:285 msgid "_View tooltips" msgstr "సాధనచిట్కాలను దర్శించు (_V)" #: ../bonobo/bonobo-ui-config-widget.c:290 msgid "Toolbars" msgstr "సాధనపట్టీలు" #: ../bonobo/bonobo-ui-config-widget.c:300 msgid "toolbars" msgstr "సాధనపట్టీలు" #: ../bonobo/bonobo-ui-config-widget.c:311 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "Look" msgstr "దృష్టి" #: ../bonobo/bonobo-ui-config-widget.c:320 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "_Icon" msgstr "ప్రతిమ (_I)" #: ../bonobo/bonobo-ui-config-widget.c:326 msgid "_Text and Icon" msgstr "పాఠ్యము మరియు ప్రతిమ (_T)" #: ../bonobo/bonobo-ui-config-widget.c:332 msgid "Text only" msgstr "పాఠ్యము మాత్రమే" #: ../bonobo/bonobo-ui-config-widget.c:338 msgid "_Priority text only" msgstr "ప్రాముఖ్యతా పాఠ్యము మాత్రమే (_P)" #: ../bonobo/bonobo-ui-engine.c:91 msgid "Debug" msgstr "డీబగ్" #: ../bonobo/bonobo-ui-engine.c:91 msgid "_Dump XML" msgstr "XMLను డంప్‌చేయుము (_D)" #: ../bonobo/bonobo-ui-engine.c:92 msgid "Dump the entire UI's XML description to the console" msgstr "మొత్త UIయొక్క XML వివరణను తెర (కన్సోల్‌)కు డంపుచేయుము" #: ../bonobo/bonobo-ui-engine-config.c:522 msgid "Configure UI" msgstr "UIను ఆకృతీకరించుము" #: ../bonobo/bonobo-ui-init-gtk.c:131 msgid "Gdk debugging flags to set" msgstr "అమర్చుటకు Gdk డీబగ్గింగ్ జెండాలు" #: ../bonobo/bonobo-ui-init-gtk.c:131 ../bonobo/bonobo-ui-init-gtk.c:134 #: ../bonobo/bonobo-ui-init-gtk.c:162 ../bonobo/bonobo-ui-init-gtk.c:165 msgid "FLAGS" msgstr "FLAGS" #: ../bonobo/bonobo-ui-init-gtk.c:134 msgid "Gdk debugging flags to unset" msgstr "అమర్పు తీయుటకు Gdk డీబగ్గింగ్ జెండాలు" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "X display to use" msgstr "ఉపయోగించుటకు X ప్రదర్శన" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "DISPLAY" msgstr "DISPLAY" #: ../bonobo/bonobo-ui-init-gtk.c:142 msgid "X screen to use" msgstr "ఉపయోగించుటకు X తెర" #: ../bonobo/bonobo-ui-init-gtk.c:142 msgid "SCREEN" msgstr "SCREEN" #: ../bonobo/bonobo-ui-init-gtk.c:146 msgid "Make X calls synchronous" msgstr "X కాల్స్‍‌ను ఏకకాలం చేయుము" #: ../bonobo/bonobo-ui-init-gtk.c:152 msgid "Don't use X shared memory extension" msgstr "X భాగస్వామ్య మెమోరీ పొడిగింపును వుపయోగించవద్దు" #: ../bonobo/bonobo-ui-init-gtk.c:156 msgid "Program name as used by the window manager" msgstr "విండో నిర్వాహికచేత వుపయోగించబడినట్లుగా ప్రోగ్రామ్ నామము" #: ../bonobo/bonobo-ui-init-gtk.c:156 msgid "NAME" msgstr "NAME" #: ../bonobo/bonobo-ui-init-gtk.c:159 msgid "Program class as used by the window manager" msgstr "విండో నిర్వాహికచేత వుపయోగించబడినట్లుగా ప్రోగ్రామ్ తరగతి" #: ../bonobo/bonobo-ui-init-gtk.c:159 msgid "CLASS" msgstr "CLASS" #: ../bonobo/bonobo-ui-init-gtk.c:162 msgid "Gtk+ debugging flags to set" msgstr "అమర్చుటకు Gtk+ డీబగ్గింగ్ జెండాలు" #: ../bonobo/bonobo-ui-init-gtk.c:165 msgid "Gtk+ debugging flags to unset" msgstr "అమర్పు తీయుటకు Gtk+ డీబగ్గింగ్ జెండాలు" #: ../bonobo/bonobo-ui-init-gtk.c:168 msgid "Make all warnings fatal" msgstr "అన్ని హెచ్చరికలను ఫాటల్‌గా చేయుము" #: ../bonobo/bonobo-ui-init-gtk.c:171 msgid "Load an additional Gtk module" msgstr "అదనపు Gtk మాడ్యూల్‌ను నింపుము" #: ../bonobo/bonobo-ui-init-gtk.c:171 msgid "MODULE" msgstr "MODULE" #: ../bonobo/bonobo-ui-init-gtk.c:187 msgid "GTK+" msgstr "GTK+" #: ../bonobo/bonobo-ui-main.c:278 msgid "Bonobo GUI support" msgstr "బోనోబో GUI మద్దతు" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "B_oth" msgstr "రెండూ (_o)" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "T_ext" msgstr "పాఠ్యము (_e)" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Hide t_ips" msgstr "చిట్కాలను మరుగుపరుచుము (_i)" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Show t_ips" msgstr "చిట్కాలను చూపుము (_i)" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "_Hide toolbar" msgstr "సాధనపట్టీని మరుగుపరచుము (_H)" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "Customi_ze" msgstr "మలచిన (_z)" #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Customize the toolbar" msgstr "సాధనపట్టీని మలుచుము" #: ../bonobo/bonobo-ui-toolbar.c:1115 msgid "is floating" msgstr "ఫ్లోటింగ్" #: ../bonobo/bonobo-ui-toolbar.c:1116 msgid "whether the toolbar is floating" msgstr "సాధనపట్టీ ఫ్లోటింగ్ కావాలా" #: ../bonobo/bonobo-ui-toolbar.c:1162 msgid "Style of bevel around the toolbar" msgstr "సాధనపట్టీ చట్టూ బెవెల్‌యొక్క శైలి" #: ../bonobo/bonobo-ui-util.c:601 msgid "Could not display help for this application" msgstr "ఈ అనువర్తనంకు సహాయంను ప్రదర్శించలేదు" #: ../bonobo/bonobo-ui-util.c:643 msgid "_Contents" msgstr "సారములు (_C)" #: ../bonobo/bonobo-ui-util.c:644 msgid "View help for this application" msgstr "ఈ అనువర్తనముకు సహాయమును దర్శించుము" #: ../bonobo/bonobo-window.c:345 msgid "Name of the window - used for configuration serialization." msgstr "ఆకృతీకరణ వరుసక్రమీకరణకు వుపయోగించిన - విండో నామము." #: ../bonobo/bonobo-zoomable.c:326 msgid "Zoom level" msgstr "జూమ్ స్థాయి" #: ../bonobo/bonobo-zoomable.c:327 msgid "The degree of enlargment" msgstr "పెంపుదలయొక్క ప్రమాణము" #: ../bonobo/bonobo-zoomable.c:335 msgid "Minimum Zoom level" msgstr "కనీస జూమ్ స్థాయి" #: ../bonobo/bonobo-zoomable.c:336 msgid "The minimum degree of enlargment" msgstr "పెంపుదలయొక్క కనీస ప్రమాణము" #: ../bonobo/bonobo-zoomable.c:344 msgid "Maximum Zoom level" msgstr "గరిష్ఠ జూమ్ స్థాయి" #: ../bonobo/bonobo-zoomable.c:345 msgid "The maximum degree of enlargment" msgstr "పెంపుదలయొక్క గరిష్ఠ ప్రమాణము" #: ../bonobo/bonobo-zoomable.c:353 msgid "Has a minimum Zoom level" msgstr "కనిష్ఠ జూమ్ స్థాయిని కలిగివుంది" #: ../bonobo/bonobo-zoomable.c:354 msgid "Whether we have a valid minimum zoom level" msgstr "మనము విలువైన కనీసపు జూమ్ స్థాయిని కలిగివుండాలా" #: ../bonobo/bonobo-zoomable.c:361 msgid "Has a maximum Zoom level" msgstr "గరిష్ఠ జూమ్ స్థాయిని కలిగివుంది" #: ../bonobo/bonobo-zoomable.c:362 msgid "Whether we have a valid maximum zoom level" msgstr "మనము గరిష్ఠ జూమ్ స్థాయిని కలిగివుండాలా" #: ../bonobo/bonobo-zoomable.c:369 msgid "Is continuous" msgstr "కొనసాగింపు" #: ../bonobo/bonobo-zoomable.c:370 msgid "Whether we zoom continuously (as opposed to jumps)" msgstr "మనము వరుసగా జూమ్ చేయాలా (దుమికినట్లు కాకుండా)" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:1 msgid "About this application" msgstr "ఈ అనువర్తనం గురించి" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:2 msgid "Select" msgstr "ఎంపిక" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:3 msgid "_About..." msgstr "గురించి (_A)..." #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:4 msgid "_Edit" msgstr "సరిచేయు (_E)" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:5 #: ../tools/browser/bonobo-browser.xml.h:4 msgid "_File" msgstr "దస్త్రము (_F)" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:6 msgid "_Select" msgstr "ఎంపిక (_S)" #: ../samples/bonoboui/hello.c:63 msgid "This does nothing; it is only a demonstration." msgstr "ఇది యేమి చేయదు; ఇది వివరణిచ్చుట మాత్రమే." #: ../samples/bonoboui/hello.c:145 msgid "BonoboUI-Hello." msgstr "బోనోబోUI-హెల్లో." #: ../samples/bonoboui/hello.c:217 msgid "Gnome Hello" msgstr "గ్నోమ్ హెల్లో" #. Create Label and put it in the Button: #: ../samples/bonoboui/hello.c:272 msgid "Hello, World!" msgstr "హెల్లో, విశ్వమా!" #: ../samples/bonoboui/hello.c:312 msgid "Cannot init libbonoboui code" msgstr "libbonoboui కోడ్‌ను init చేయలేదు" #: ../samples/controls/bonobo-sample-controls.c:131 msgid "Could not initialize Bonobo UI" msgstr "బోనోబో UIను సిద్దము చేయలేకపోయింది" #: ../tools/browser/bonobo-browser.desktop.in.h:1 msgid "Bonobo Component Browser" msgstr "బోనోబో మూలక అన్వేషణి" #: ../tools/browser/bonobo-browser.desktop.in.h:2 msgid "Shows available Bonobo components" msgstr "అందుబాటులోవున్న బోనోబో మూలకాలను చూపుము" #: ../tools/browser/bonobo-browser.xml.h:1 msgid "About this program..." msgstr "ఈ ప్రోగ్రామ్ గురించి..." #: ../tools/browser/bonobo-browser.xml.h:2 msgid "Close the current window" msgstr "ప్రస్తుత విండోను మూయుము" #: ../tools/browser/bonobo-browser.xml.h:3 msgid "Open a new window" msgstr "కొత్త విండోను తెరువుము" #: ../tools/browser/bonobo-browser.xml.h:5 msgid "_Help" msgstr "సహాయము (_H)" #. Build the general tab #: ../tools/browser/component-details.c:109 msgid "General" msgstr "సాదారణ" #: ../tools/browser/component-details.c:116 #: ../tools/browser/component-list.c:398 msgid "IID" msgstr "IID" #: ../tools/browser/component-details.c:117 msgid "Location" msgstr "స్థానము" #. Build the details tab #: ../tools/browser/component-details.c:167 msgid "Details" msgstr "వివరములు" #: ../tools/browser/component-details.c:168 msgid "Detailed Information" msgstr "వివరించివున్న సమాచారం" #: ../tools/browser/component-list.c:367 ../tools/browser/window.c:283 msgid "Active" msgstr "క్రియాశీల" #: ../tools/browser/component-list.c:388 msgid "Type" msgstr "రకము" #: ../tools/browser/window.c:162 msgid "Component Details" msgstr "మూలకపు వివరములు" #: ../tools/browser/window.c:208 msgid "Bonobo Browser" msgstr "బోనోబో అన్వేషణి" #: ../tools/browser/window.c:210 msgid "Copyright 2001, The GNOME Foundation" msgstr "కాపీరైట్ 2001, గ్నోమ్ సంస్థ" #: ../tools/browser/window.c:211 msgid "Bonobo component browser" msgstr "బోనోబో మూలకపు అన్వేషణి" #: ../tools/browser/window.c:214 msgid "translator-credits" msgstr "కృష్ణబాబు క్రొత్తపల్లి " #. create the window #: ../tools/browser/window.c:240 msgid "Component Browser" msgstr "మూలకపు అన్వేషణి" #. Fill out the tool bar #: ../tools/browser/window.c:280 msgid "All" msgstr "అన్ని" #: ../tools/browser/window.c:286 msgid "Inactive" msgstr "క్రియాహీన" libbonoboui-2.24.5/po/en@shaw.po0000664000076400007640000004160111433016366013412 00000000000000# Shavian translation for libbonoboui. # Copyright (C) 2009 The Gnome Foundation. # Thomas Thurman , 2009. msgid "" msgstr "" "Project-Id-Version: metacity\n" "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=bonobo&component=libbonoboui\n" "POT-Creation-Date: 2010-05-11 15:33+0000\n" "PO-Revision-Date: 2010-05-12 18:37 -0400\n" "Last-Translator: Thomas Thurman \n" "Language-Team: Shavian \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n!=1;\n" #, fuzzy #: ../bonobo/bonobo-canvas-item.c:680 msgid "corba factory" msgstr "corba 𐑓𐑨𐑒𐑑𐑼𐑦" #: ../bonobo/bonobo-canvas-item.c:681 msgid "The factory pointer" msgstr "𐑞 𐑓𐑨𐑒𐑑𐑼𐑦 𐑐𐑶𐑯𐑑𐑼" #, fuzzy #: ../bonobo/bonobo-canvas-item.c:690 msgid "corba UI container" msgstr "corba UI 𐑒𐑩𐑯𐑑𐑱𐑯𐑼" #: ../bonobo/bonobo-canvas-item.c:691 msgid "The User interface container" msgstr "𐑞 𐑿𐑟𐑼 𐑦𐑯𐑑𐑼𐑓𐑱𐑕 𐑒𐑩𐑯𐑑𐑱𐑯𐑼" #: ../bonobo/bonobo-dock-item-grip.c:254 msgid "Dock the toolbar" msgstr "𐑛𐑭𐑒 𐑞 𐑑𐑵𐑤𐑚𐑸" #: ../bonobo/bonobo-dock-item-grip.c:255 msgid "Undock the toolbar" msgstr "𐑩𐑯𐑛𐑭𐑒 𐑞 𐑑𐑵𐑤𐑚𐑸" #: ../bonobo/bonobo-dock-item.c:225 ../bonobo/bonobo-dock-item.c:226 #: ../bonobo/bonobo-ui-toolbar.c:1163 msgid "Shadow type" msgstr "𐑖𐑨𐑛𐑴 𐑑𐑲𐑐" #: ../bonobo/bonobo-dock-item.c:236 ../bonobo/bonobo-dock-item.c:237 #: ../bonobo/bonobo-ui-toolbar.c:1107 ../bonobo/bonobo-ui-toolbar.c:1108 msgid "Orientation" msgstr "𐑪𐑮𐑦𐑩𐑯𐑑𐑱𐑖𐑩𐑯" #: ../bonobo/bonobo-dock-item.c:247 ../bonobo/bonobo-dock-item.c:248 #: ../bonobo/bonobo-ui-toolbar.c:1126 ../bonobo/bonobo-ui-toolbar.c:1127 msgid "Preferred width" msgstr "𐑐𐑮𐑦𐑓𐑻𐑛 𐑢𐑦𐑛𐑔" #: ../bonobo/bonobo-dock-item.c:256 ../bonobo/bonobo-dock-item.c:257 #: ../bonobo/bonobo-ui-toolbar.c:1135 ../bonobo/bonobo-ui-toolbar.c:1136 msgid "Preferred height" msgstr "𐑐𐑮𐑦𐑓𐑻𐑛 𐑣𐑲𐑑" #: ../bonobo/bonobo-file-selector-util.c:350 msgid "Select a file to open" msgstr "𐑕𐑩𐑤𐑧𐑒𐑑 𐑩 𐑓𐑲𐑤 𐑑 𐑴𐑐𐑩𐑯" #: ../bonobo/bonobo-file-selector-util.c:378 msgid "Select files to open" msgstr "𐑕𐑩𐑤𐑧𐑒𐑑 𐑓𐑲𐑤𐑟 𐑑 𐑴𐑐𐑩𐑯" #: ../bonobo/bonobo-file-selector-util.c:407 msgid "Select a filename to save" msgstr "𐑕𐑩𐑤𐑧𐑒𐑑 𐑩 𐑓𐑲𐑤𐑯𐑱𐑥 𐑑 𐑕𐑱𐑝" #: ../bonobo/bonobo-plug.c:425 msgid "Event Forwarding" msgstr "𐑦𐑝𐑧𐑯𐑑 𐑓𐑪𐑮𐑢𐑻𐑛𐑦𐑙" #: ../bonobo/bonobo-plug.c:426 msgid "Whether X events should be forwarded" msgstr "𐑢𐑧𐑞𐑼 X 𐑦𐑝𐑧𐑯𐑑𐑕 𐑖𐑫𐑛 𐑚𐑰 𐑓𐑪𐑮𐑢𐑻𐑛𐑦𐑛" #: ../bonobo/bonobo-selector-widget.c:300 ../bonobo/bonobo-window.c:347 #: ../tools/browser/component-details.c:108 #: ../tools/browser/component-list.c:369 msgid "Name" msgstr "𐑯𐑱𐑥" #: ../bonobo/bonobo-selector-widget.c:322 #: ../tools/browser/component-details.c:109 msgid "Description" msgstr "𐑛𐑦𐑕𐑒𐑮𐑦𐑐𐑖𐑩𐑯" #: ../bonobo/bonobo-selector.c:343 msgid "Interfaces required" msgstr "𐑦𐑯𐑑𐑼𐑓𐑱𐑕𐑩𐑟 𐑮𐑦𐑒𐑢𐑲𐑼𐑛" #, fuzzy #: ../bonobo/bonobo-selector.c:344 msgid "" "A NULL-terminated array of interfaces which a server must support in order to " "be listed in the selector. Defaults to \"IDL:Bonobo/Embeddable:1.0\" if no " "interfaces are listed" msgstr "" "𐑩 𐑯𐑳𐑤-𐑑𐑻𐑥𐑩𐑯𐑱𐑑𐑩𐑛 𐑼𐑱 𐑝 𐑦𐑯𐑑𐑼𐑓𐑱𐑕𐑩𐑟 𐑢𐑦𐑗 𐑩 𐑕𐑻𐑝𐑼 𐑥𐑳𐑕𐑑 𐑕𐑩𐑐𐑹𐑑 𐑦𐑯 𐑹𐑛𐑼 𐑑 𐑚𐑰 𐑤𐑦𐑕𐑑𐑩𐑛 𐑦𐑯 𐑞 " "selector. 𐑛𐑦𐑓𐑷𐑤𐑑𐑕 𐑑 \"IDL:𐑚𐑭𐑯𐑭𐑚𐑴/Embeddable:1.0\" 𐑦𐑓 𐑯𐑴 𐑦𐑯𐑑𐑼𐑓𐑱𐑕𐑩𐑟 𐑸 𐑤𐑦𐑕𐑑𐑩𐑛" #: ../bonobo/bonobo-selector.c:346 msgid "Interface required entry" msgstr "𐑦𐑯𐑑𐑼𐑓𐑱𐑕 𐑮𐑦𐑒𐑢𐑲𐑼𐑛 𐑧𐑯𐑑𐑮𐑦" #: ../bonobo/bonobo-selector.c:347 msgid "One of the interfaces that's required" msgstr "𐑢𐑳𐑯 𐑝 𐑞 𐑦𐑯𐑑𐑼𐑓𐑱𐑕𐑩𐑟 𐑞𐑨𐑑'𐑕 𐑮𐑦𐑒𐑢𐑲𐑼𐑛" #: ../bonobo/bonobo-ui-config-widget.c:267 msgid "Visible" msgstr "𐑝𐑦𐑕𐑦𐑚𐑩𐑤" #: ../bonobo/bonobo-ui-config-widget.c:274 msgid "_Show" msgstr "_𐑖𐑴" #: ../bonobo/bonobo-ui-config-widget.c:281 msgid "_Hide" msgstr "_𐑣𐑲𐑛" #, fuzzy #: ../bonobo/bonobo-ui-config-widget.c:287 msgid "_View tooltips" msgstr "_View tooltips" #: ../bonobo/bonobo-ui-config-widget.c:292 msgid "Toolbars" msgstr "𐑑𐑵𐑤𐑚𐑸𐑟" #: ../bonobo/bonobo-ui-config-widget.c:302 msgid "toolbars" msgstr "𐑑𐑵𐑤𐑚𐑸𐑟" #: ../bonobo/bonobo-ui-config-widget.c:313 #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "Look" msgstr "𐑤𐑫𐑒" #: ../bonobo/bonobo-ui-config-widget.c:322 #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "_Icon" msgstr "_𐑲𐑒𐑪𐑯" #: ../bonobo/bonobo-ui-config-widget.c:328 msgid "_Text and Icon" msgstr "_𐑑𐑧𐑒𐑕𐑑 𐑯 𐑲𐑒𐑪𐑯" #: ../bonobo/bonobo-ui-config-widget.c:334 msgid "Text only" msgstr "𐑑𐑧𐑒𐑕𐑑 𐑴𐑯𐑤𐑦" #: ../bonobo/bonobo-ui-config-widget.c:340 msgid "_Priority text only" msgstr "_𐑐𐑮𐑲𐑪𐑮𐑦𐑑𐑦 𐑑𐑧𐑒𐑕𐑑 𐑴𐑯𐑤𐑦" #: ../bonobo/bonobo-ui-engine.c:93 msgid "Debug" msgstr "𐑛𐑰𐑚𐑳𐑜" #: ../bonobo/bonobo-ui-engine.c:93 msgid "_Dump XML" msgstr "_𐑛𐑳𐑥𐑐 XML" #, fuzzy #: ../bonobo/bonobo-ui-engine.c:94 msgid "Dump the entire UI's XML description to the console" msgstr "𐑛𐑳𐑥𐑐 𐑞 𐑧𐑯𐑑𐑲𐑼 UI's ·𐑦·𐑥·𐑤 𐑛𐑦𐑕𐑒𐑮𐑦𐑐𐑖𐑩𐑯 𐑑 𐑞 𐑒𐑪𐑯𐑕𐑴𐑤" #, fuzzy #: ../bonobo/bonobo-ui-engine-config.c:524 msgid "Configure UI" msgstr "𐑒𐑩𐑯𐑓𐑦𐑜𐑘𐑼 UI" #, fuzzy #: ../bonobo/bonobo-ui-init-gtk.c:131 msgid "Gdk debugging flags to set" msgstr "Gdk 𐑛𐑰𐑚𐑳𐑜𐑦𐑙 𐑓𐑤𐑨𐑜𐑟 𐑑 𐑕𐑧𐑑" #: ../bonobo/bonobo-ui-init-gtk.c:131 ../bonobo/bonobo-ui-init-gtk.c:134 #: ../bonobo/bonobo-ui-init-gtk.c:162 ../bonobo/bonobo-ui-init-gtk.c:165 msgid "FLAGS" msgstr "𐑓𐑤𐑨𐑜𐑟" #, fuzzy #: ../bonobo/bonobo-ui-init-gtk.c:134 msgid "Gdk debugging flags to unset" msgstr "Gdk 𐑛𐑰𐑚𐑳𐑜𐑦𐑙 𐑓𐑤𐑨𐑜𐑟 𐑑 𐑩𐑯𐑕𐑧𐑑" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "X display to use" msgstr "X 𐑛𐑩𐑕𐑐𐑤𐑱 𐑑 𐑿𐑕" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "DISPLAY" msgstr "𐑛𐑩𐑕𐑐𐑤𐑱" #: ../bonobo/bonobo-ui-init-gtk.c:142 msgid "X screen to use" msgstr "X 𐑕𐑒𐑮𐑰𐑯 𐑑 𐑿𐑕" #: ../bonobo/bonobo-ui-init-gtk.c:142 msgid "SCREEN" msgstr "𐑕𐑒𐑮𐑰𐑯" #, fuzzy #: ../bonobo/bonobo-ui-init-gtk.c:146 msgid "Make X calls synchronous" msgstr "𐑥𐑱𐑒 𐑧𐑒𐑕 𐑒𐑷𐑤𐑟 synchronous" #: ../bonobo/bonobo-ui-init-gtk.c:152 msgid "Don't use X shared memory extension" msgstr "𐑛𐑴𐑯𐑑 𐑿𐑟 X 𐑖𐑺𐑛 𐑥𐑧𐑥𐑼𐑦 𐑩𐑒𐑕𐑑𐑧𐑯𐑖𐑩𐑯" #: ../bonobo/bonobo-ui-init-gtk.c:156 msgid "Program name as used by the window manager" msgstr "𐑐𐑮𐑴𐑜𐑮𐑨𐑥 𐑯𐑱𐑥 𐑨𐑟 𐑿𐑕𐑑 𐑚𐑲 𐑞 𐑢𐑦𐑯𐑛𐑴 𐑥𐑨𐑯𐑩𐑡𐑼" #: ../bonobo/bonobo-ui-init-gtk.c:156 msgid "NAME" msgstr "𐑯𐑱𐑥" #: ../bonobo/bonobo-ui-init-gtk.c:159 msgid "Program class as used by the window manager" msgstr "𐑐𐑮𐑴𐑜𐑮𐑨𐑥 𐑒𐑤𐑭𐑕 𐑨𐑟 𐑿𐑕𐑑 𐑚𐑲 𐑞 𐑢𐑦𐑯𐑛𐑴 𐑥𐑨𐑯𐑩𐑡𐑼" #: ../bonobo/bonobo-ui-init-gtk.c:159 msgid "CLASS" msgstr "𐑒𐑤𐑭𐑕" #, fuzzy #: ../bonobo/bonobo-ui-init-gtk.c:162 msgid "Gtk+ debugging flags to set" msgstr "Gtk+ 𐑛𐑰𐑚𐑳𐑜𐑦𐑙 𐑓𐑤𐑨𐑜𐑟 𐑑 𐑕𐑧𐑑" #, fuzzy #: ../bonobo/bonobo-ui-init-gtk.c:165 msgid "Gtk+ debugging flags to unset" msgstr "Gtk+ 𐑛𐑰𐑚𐑳𐑜𐑦𐑙 𐑓𐑤𐑨𐑜𐑟 𐑑 𐑩𐑯𐑕𐑧𐑑" #: ../bonobo/bonobo-ui-init-gtk.c:168 msgid "Make all warnings fatal" msgstr "𐑥𐑱𐑒 𐑷𐑤 𐑢𐑪𐑮𐑯𐑦𐑙𐑟 𐑓𐑱𐑑𐑩𐑤" #, fuzzy #: ../bonobo/bonobo-ui-init-gtk.c:171 msgid "Load an additional Gtk module" msgstr "𐑤𐑴𐑛 𐑩𐑯 𐑩𐑛𐑦𐑖𐑩𐑯𐑩𐑤 Gtk 𐑥𐑪𐑛𐑿𐑤" #: ../bonobo/bonobo-ui-init-gtk.c:171 msgid "MODULE" msgstr "𐑥𐑪𐑛𐑿𐑤" #, fuzzy #: ../bonobo/bonobo-ui-init-gtk.c:187 msgid "GTK+" msgstr "GTK+" #: ../bonobo/bonobo-ui-main.c:281 msgid "Bonobo GUI support" msgstr "·𐑚𐑭𐑯𐑭𐑚𐑴 GUI 𐑕𐑩𐑐𐑹𐑑" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "B_oth" msgstr "𐑝_𐑴𐑔" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "T_ext" msgstr "𐑑_𐑧𐑒𐑕𐑑" #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Hide t_ips" msgstr "𐑣𐑲𐑛 𐑑_𐑦𐑐𐑕" #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Show t_ips" msgstr "𐑖𐑴 𐑑_𐑦𐑐𐑕" #: ../bonobo/bonobo-ui-sync-toolbar.c:570 msgid "_Hide toolbar" msgstr "_𐑣𐑲𐑛 𐑑𐑵𐑤𐑚𐑸" #: ../bonobo/bonobo-ui-sync-toolbar.c:570 msgid "Customi_ze" msgstr "𐑒𐑩𐑕𐑑𐑩𐑥𐑲_𐑟" #: ../bonobo/bonobo-ui-sync-toolbar.c:571 msgid "Customize the toolbar" msgstr "𐑒𐑩𐑕𐑑𐑩𐑥𐑲𐑟 𐑞 𐑑𐑵𐑤𐑚𐑸" #: ../bonobo/bonobo-ui-toolbar.c:1117 msgid "is floating" msgstr "𐑦𐑟 𐑓𐑤𐑴𐑑𐑦𐑙" #: ../bonobo/bonobo-ui-toolbar.c:1118 msgid "whether the toolbar is floating" msgstr "𐑢𐑧𐑞𐑼 𐑞 𐑑𐑵𐑤𐑚𐑸 𐑦𐑟 𐑓𐑤𐑴𐑑𐑦𐑙" #: ../bonobo/bonobo-ui-toolbar.c:1164 msgid "Style of bevel around the toolbar" msgstr "𐑕𐑑𐑲𐑤 𐑝 𐑚𐑧𐑝𐑩𐑤 𐑼𐑬𐑯𐑛 𐑞 𐑑𐑵𐑤𐑚𐑸" #: ../bonobo/bonobo-ui-util.c:602 msgid "Could not display help for this application" msgstr "𐑒𐑫𐑛 𐑯𐑪𐑑 𐑛𐑩𐑕𐑐𐑤𐑱 𐑣𐑧𐑤𐑐 𐑓𐑹 𐑞𐑦𐑕 𐑩𐑐𐑤𐑦𐑒𐑱𐑕𐑩𐑯" #: ../bonobo/bonobo-ui-util.c:644 msgid "_Contents" msgstr "_𐑒𐑪𐑯𐑑𐑩𐑯𐑑𐑕" #: ../bonobo/bonobo-ui-util.c:645 msgid "View help for this application" msgstr "𐑝𐑿 𐑣𐑧𐑤𐑐 𐑓𐑹 𐑞𐑦𐑕 𐑩𐑐𐑤𐑦𐑒𐑱𐑕𐑩𐑯" #, fuzzy #: ../bonobo/bonobo-window.c:348 msgid "Name of the window - used for configuration serialization." msgstr "𐑯𐑱𐑥 𐑝 𐑞 𐑢𐑦𐑯𐑛𐑴 - 𐑿𐑕𐑑 𐑓𐑹 𐑒𐑩𐑯𐑓𐑦𐑜𐑘𐑼𐑱𐑖𐑩𐑯 serialization." #: ../bonobo/bonobo-zoomable.c:326 msgid "Zoom level" msgstr "𐑟𐑵𐑥 𐑤𐑧𐑝𐑩𐑤" #, fuzzy #: ../bonobo/bonobo-zoomable.c:327 msgid "The degree of enlargment" msgstr "𐑞 𐑛𐑦𐑜𐑮𐑰 𐑝 enlargment" #: ../bonobo/bonobo-zoomable.c:335 msgid "Minimum Zoom level" msgstr "𐑥𐑦𐑯𐑩𐑥𐑩𐑥 𐑟𐑵𐑥 𐑤𐑧𐑝𐑩𐑤" #, fuzzy #: ../bonobo/bonobo-zoomable.c:336 msgid "The minimum degree of enlargment" msgstr "𐑞 𐑥𐑦𐑯𐑩𐑥𐑩𐑥 𐑛𐑦𐑜𐑮𐑰 𐑝 enlargment" #: ../bonobo/bonobo-zoomable.c:344 msgid "Maximum Zoom level" msgstr "𐑥𐑨𐑒𐑕𐑦𐑥𐑩𐑥 𐑟𐑵𐑥 𐑤𐑧𐑝𐑩𐑤" #, fuzzy #: ../bonobo/bonobo-zoomable.c:345 msgid "The maximum degree of enlargment" msgstr "𐑞 𐑥𐑨𐑒𐑕𐑦𐑥𐑩𐑥 𐑛𐑦𐑜𐑮𐑰 𐑝 enlargment" #: ../bonobo/bonobo-zoomable.c:353 msgid "Has a minimum Zoom level" msgstr "𐑣𐑨𐑟 𐑩 𐑥𐑦𐑯𐑩𐑥𐑩𐑥 𐑟𐑵𐑥 𐑤𐑧𐑝𐑩𐑤" #: ../bonobo/bonobo-zoomable.c:354 msgid "Whether we have a valid minimum zoom level" msgstr "𐑢𐑧𐑞𐑼 𐑢𐑰 𐑣𐑨𐑝 𐑩 𐑝𐑨𐑤𐑦𐑛 𐑥𐑦𐑯𐑩𐑥𐑩𐑥 𐑟𐑵𐑥 𐑤𐑧𐑝𐑩𐑤" #: ../bonobo/bonobo-zoomable.c:361 msgid "Has a maximum Zoom level" msgstr "𐑣𐑨𐑟 𐑩 𐑥𐑨𐑒𐑕𐑦𐑥𐑩𐑥 𐑟𐑵𐑥 𐑤𐑧𐑝𐑩𐑤" #: ../bonobo/bonobo-zoomable.c:362 msgid "Whether we have a valid maximum zoom level" msgstr "𐑢𐑧𐑞𐑼 𐑢𐑰 𐑣𐑨𐑝 𐑩 𐑝𐑨𐑤𐑦𐑛 𐑥𐑨𐑒𐑕𐑦𐑥𐑩𐑥 𐑟𐑵𐑥 𐑤𐑧𐑝𐑩𐑤" #: ../bonobo/bonobo-zoomable.c:369 msgid "Is continuous" msgstr "𐑦𐑟 𐑒𐑩𐑯𐑑𐑦𐑯𐑿𐑩𐑕" #: ../bonobo/bonobo-zoomable.c:370 msgid "Whether we zoom continuously (as opposed to jumps)" msgstr "𐑢𐑧𐑞𐑼 𐑢𐑰 𐑟𐑵𐑥 𐑒𐑩𐑯𐑑𐑦𐑯𐑿𐑩𐑕𐑤𐑦 (𐑨𐑟 𐑩𐑐𐑴𐑟𐑛 𐑑 𐑡𐑳𐑥𐑐𐑕)" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:1 msgid "About this application" msgstr "𐑩𐑚𐑬𐑑 𐑞𐑦𐑕 𐑩𐑐𐑤𐑦𐑒𐑱𐑕𐑩𐑯" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:2 msgid "Select" msgstr "𐑕𐑩𐑤𐑧𐑒𐑑" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:3 msgid "_About..." msgstr "_𐑩𐑚𐑬𐑑..." #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:4 msgid "_Edit" msgstr "_𐑧𐑛𐑦𐑑" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:5 #: ../tools/browser/bonobo-browser.xml.h:4 msgid "_File" msgstr "_𐑓𐑲𐑤" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:6 msgid "_Select" msgstr "_𐑕𐑩𐑤𐑧𐑒𐑑" #: ../samples/bonoboui/hello.c:65 msgid "This does nothing; it is only a demonstration." msgstr "𐑞𐑦𐑕 𐑛𐑴𐑟 𐑯𐑳𐑔𐑦𐑙; 𐑦𐑑 𐑦𐑟 𐑴𐑯𐑤𐑦 𐑩 𐑛𐑧𐑥𐑩𐑯𐑕𐑑𐑮𐑱𐑖𐑩𐑯." #, fuzzy #: ../samples/bonoboui/hello.c:147 msgid "BonoboUI-Hello." msgstr "BonoboUI-𐑣𐑩𐑤𐑴." #: ../samples/bonoboui/hello.c:219 msgid "Gnome Hello" msgstr "·𐑜𐑯𐑴𐑥 𐑣𐑩𐑤𐑴" #. Create Label and put it in the Button: #: ../samples/bonoboui/hello.c:274 msgid "Hello, World!" msgstr "𐑣𐑩𐑤𐑴, 𐑢𐑻𐑤𐑛!" #, fuzzy #: ../samples/bonoboui/hello.c:314 msgid "Cannot init libbonoboui code" msgstr "𐑒𐑨𐑯𐑪𐑑 init libbonoboui 𐑒𐑴𐑛" #, fuzzy #: ../samples/controls/bonobo-sample-controls.c:133 msgid "Could not initialize Bonobo UI" msgstr "𐑒𐑫𐑛 𐑯𐑪𐑑 𐑦𐑯𐑦𐑖𐑩𐑤𐑲𐑟 𐑚𐑭𐑯𐑭𐑚𐑴 UI" #: ../tools/browser/bonobo-browser.desktop.in.h:1 msgid "Bonobo Component Browser" msgstr "·𐑚𐑭𐑯𐑭𐑚𐑴 𐑒𐑩𐑥𐑐𐑴𐑯𐑩𐑯𐑑 𐑚𐑮𐑬𐑟𐑼" #: ../tools/browser/bonobo-browser.desktop.in.h:2 msgid "Shows available Bonobo components" msgstr "𐑖𐑴𐑟 𐑩𐑝𐑱𐑤𐑩𐑚𐑩𐑤 ·𐑚𐑭𐑯𐑭𐑚𐑴 𐑒𐑩𐑥𐑐𐑴𐑯𐑩𐑯𐑑𐑕" #: ../tools/browser/bonobo-browser.xml.h:1 msgid "About this program..." msgstr "𐑩𐑚𐑬𐑑 𐑞𐑦𐑕 𐑐𐑮𐑴𐑜𐑮𐑨𐑥..." #: ../tools/browser/bonobo-browser.xml.h:2 msgid "Close the current window" msgstr "𐑒𐑤𐑴𐑟 𐑞 𐑒𐑳𐑮𐑩𐑯𐑑 𐑢𐑦𐑯𐑛𐑴" #: ../tools/browser/bonobo-browser.xml.h:3 msgid "Open a new window" msgstr "𐑴𐑐𐑩𐑯 𐑩 𐑯𐑿 𐑢𐑦𐑯𐑛𐑴" #: ../tools/browser/bonobo-browser.xml.h:5 msgid "_Help" msgstr "_𐑣𐑧𐑤𐑐" #. Build the general tab #: ../tools/browser/component-details.c:103 msgid "General" msgstr "𐑡𐑧𐑯𐑼𐑩𐑤" #, fuzzy #: ../tools/browser/component-details.c:110 #: ../tools/browser/component-list.c:389 msgid "IID" msgstr "IID" #: ../tools/browser/component-details.c:111 msgid "Location" msgstr "𐑤𐑴𐑒𐑱𐑖𐑩𐑯" #. Build the details tab #: ../tools/browser/component-details.c:161 msgid "Details" msgstr "𐑛𐑰𐑑𐑱𐑤𐑟" #: ../tools/browser/component-details.c:162 msgid "Detailed Information" msgstr "𐑛𐑰𐑑𐑱𐑤𐑛 𐑦𐑯𐑓𐑼𐑥𐑱𐑖𐑩𐑯" #: ../tools/browser/component-list.c:358 ../tools/browser/window.c:283 msgid "Active" msgstr "𐑨𐑒𐑑𐑦𐑝" #: ../tools/browser/component-list.c:379 msgid "Type" msgstr "𐑑𐑲𐑐" #: ../tools/browser/window.c:162 msgid "Component Details" msgstr "𐑒𐑩𐑥𐑐𐑴𐑯𐑩𐑯𐑑 𐑛𐑰𐑑𐑱𐑤𐑟" #: ../tools/browser/window.c:208 msgid "Bonobo Browser" msgstr "·𐑚𐑭𐑯𐑭𐑚𐑴 𐑚𐑮𐑬𐑟𐑼" #: ../tools/browser/window.c:210 msgid "Copyright 2001, The GNOME Foundation" msgstr "𐑒𐑪𐑐𐑦𐑮𐑲𐑑 2001, 𐑞 ·𐑜𐑯𐑴𐑥 𐑓𐑬𐑯𐑛𐑱𐑖𐑩𐑯" #: ../tools/browser/window.c:211 msgid "Bonobo component browser" msgstr "·𐑚𐑭𐑯𐑭𐑚𐑴 𐑒𐑩𐑥𐑐𐑴𐑯𐑩𐑯𐑑 𐑚𐑮𐑬𐑟𐑼" #: ../tools/browser/window.c:214 msgid "translator-credits" msgstr "𐑑𐑮𐑩𐑯𐑕𐑤𐑱𐑑𐑼-𐑒𐑮𐑧𐑛𐑦𐑑𐑕" #. create the window #: ../tools/browser/window.c:240 msgid "Component Browser" msgstr "𐑒𐑩𐑥𐑐𐑴𐑯𐑩𐑯𐑑 𐑚𐑮𐑬𐑟𐑼" #. Fill out the tool bar #: ../tools/browser/window.c:280 msgid "All" msgstr "𐑷𐑤" #: ../tools/browser/window.c:286 msgid "Inactive" msgstr "𐑦𐑯𐑨𐑒𐑑𐑦𐑝" libbonoboui-2.24.5/po/mai.po0000644000076400007640000004033511173072741012574 00000000000000# translation to libbonoboui to Maithili # Copyright (C) 2006 The GNOME Foundation # This file is distributed under the same license as the PACKAGE package. # BOSS GNU/Linux , 2008. msgid "" msgstr "" "Project-Id-Version: gedit.HEAD\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2008-08-19 13:02+0000\n" "PO-Revision-Date: 2008-01-25 13:49+0530\n" "Last-Translator: Sangeeta Kumari\n" "Language-Team: \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Generator: KBabel 1.11.4\n" "Plural-Forms: nplurals=2; plural=(n!=1);\n\n\n" #: ../bonobo/bonobo-canvas-item.c:680 msgid "corba factory" msgstr "कोरबा फैक्ट्री" #: ../bonobo/bonobo-canvas-item.c:681 msgid "The factory pointer" msgstr "फैक्ट्री पाइंटर" #: ../bonobo/bonobo-canvas-item.c:690 msgid "corba UI container" msgstr "कोरबा यूआई धारक" #: ../bonobo/bonobo-canvas-item.c:691 msgid "The User interface container" msgstr "यूजर इंटरफेस धारणकएनिहार" #: ../bonobo/bonobo-dock-item-grip.c:255 msgid "Dock the toolbar" msgstr "अओजार-पट्टी डाक करू" #: ../bonobo/bonobo-dock-item-grip.c:256 msgid "Undock the toolbar" msgstr "अओजार-पट्टी अन डाक करू" #: ../bonobo/bonobo-dock-item.c:228 ../bonobo/bonobo-dock-item.c:229 #: ../bonobo/bonobo-ui-toolbar.c:1161 msgid "Shadow type" msgstr "छाया क' प्रकार" #: ../bonobo/bonobo-dock-item.c:239 ../bonobo/bonobo-dock-item.c:240 #: ../bonobo/bonobo-ui-toolbar.c:1105 ../bonobo/bonobo-ui-toolbar.c:1106 msgid "Orientation" msgstr "दिशा" #: ../bonobo/bonobo-dock-item.c:250 ../bonobo/bonobo-dock-item.c:251 #: ../bonobo/bonobo-ui-toolbar.c:1124 ../bonobo/bonobo-ui-toolbar.c:1125 msgid "Preferred width" msgstr "मान्य चओड़ाइ" #: ../bonobo/bonobo-dock-item.c:259 ../bonobo/bonobo-dock-item.c:260 #: ../bonobo/bonobo-ui-toolbar.c:1133 ../bonobo/bonobo-ui-toolbar.c:1134 msgid "Preferred height" msgstr "मान्य उँचाइ" #: ../bonobo/bonobo-file-selector-util.c:355 msgid "Select a file to open" msgstr "खोलबाक लेल एकटा फाइल चुनू" #: ../bonobo/bonobo-file-selector-util.c:383 msgid "Select files to open" msgstr "खोलबाक लेल फाइलसभ चुनू" #: ../bonobo/bonobo-file-selector-util.c:412 msgid "Select a filename to save" msgstr "सहेजबाक लेल एकटा फाइल नाम चुनू" #: ../bonobo/bonobo-plug.c:423 msgid "Event Forwarding" msgstr "घटना अग्रसारण" #: ../bonobo/bonobo-plug.c:424 msgid "Whether X events should be forwarded" msgstr "की एक्स घटनासभकेँ अग्रेषित कएल जएनाइ चाही" #: ../bonobo/bonobo-selector-widget.c:297 ../bonobo/bonobo-window.c:344 #: ../tools/browser/component-details.c:114 #: ../tools/browser/component-list.c:378 msgid "Name" msgstr "नाम" #: ../bonobo/bonobo-selector-widget.c:319 #: ../tools/browser/component-details.c:115 msgid "Description" msgstr "विवरण" #: ../bonobo/bonobo-selector.c:343 msgid "Interfaces required" msgstr "इंटरफेससभ जरूरी" #: ../bonobo/bonobo-selector.c:344 msgid "" "A NULL-terminated array of interfaces which a server must support in order " "to be listed in the selector. Defaults to \"IDL:Bonobo/Embeddable:1.0\" if " "no interfaces are listed" msgstr "" "अंतरफलक क' एकटा NULL-terminated सरणी जकरा एकटा सर्वरकेँ जरूर समर्थन कएनाइ चाही चयनक " "क' सूचीमे शामिल हएबाक लेल. \"IDL:Bonobo/Embeddable:1.0\" मे मूलभूत जँ कोनो " "अंतरफलक सूचीबद्ध नहि अछि." #: ../bonobo/bonobo-selector.c:346 msgid "Interface required entry" msgstr "इंटरफेस वांछित प्रविष्टि" #: ../bonobo/bonobo-selector.c:347 msgid "One of the interfaces that's required" msgstr "जे वांछित अछि. ओकरामे सँ एकटा इंटरफेस" #: ../bonobo/bonobo-ui-config-widget.c:265 msgid "Visible" msgstr "दृष्टिगोचर" #: ../bonobo/bonobo-ui-config-widget.c:272 msgid "_Show" msgstr "देखाबू (_S)" #: ../bonobo/bonobo-ui-config-widget.c:279 msgid "_Hide" msgstr "नुकाबू (_H)" #: ../bonobo/bonobo-ui-config-widget.c:285 msgid "_View tooltips" msgstr "अओजार-युक्तिसभ देखू (_V)" #: ../bonobo/bonobo-ui-config-widget.c:290 msgid "Toolbars" msgstr "टूलबार" #: ../bonobo/bonobo-ui-config-widget.c:300 msgid "toolbars" msgstr "अओजार-पट्टीसभ" #: ../bonobo/bonobo-ui-config-widget.c:311 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "Look" msgstr "देखू" #: ../bonobo/bonobo-ui-config-widget.c:320 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "_Icon" msgstr "प्रतीक (_I)" #: ../bonobo/bonobo-ui-config-widget.c:326 msgid "_Text and Icon" msgstr "पाठ आओर चिह्न (_T)" #: ../bonobo/bonobo-ui-config-widget.c:332 msgid "Text only" msgstr "सिर्फ पाठ" #: ../bonobo/bonobo-ui-config-widget.c:338 msgid "_Priority text only" msgstr "सिर्फ प्राथमिकता पाठ (_P)" #: ../bonobo/bonobo-ui-engine.c:91 msgid "Debug" msgstr "डिबग" #: ../bonobo/bonobo-ui-engine.c:91 msgid "_Dump XML" msgstr "एक्सएमएल डंप करू (_D)" #: ../bonobo/bonobo-ui-engine.c:92 msgid "Dump the entire UI's XML description to the console" msgstr "सम्पूर्ण यूआई क' एक्सएमएल वर्णन कँसोलमे डंप करू" #: ../bonobo/bonobo-ui-engine-config.c:522 msgid "Configure UI" msgstr "यूआई बिन्यस्त करू" #: ../bonobo/bonobo-ui-init-gtk.c:131 msgid "Gdk debugging flags to set" msgstr "Gdk डिबगिंग फ्लैग सेट करबाक लेल" #: ../bonobo/bonobo-ui-init-gtk.c:131 ../bonobo/bonobo-ui-init-gtk.c:134 #: ../bonobo/bonobo-ui-init-gtk.c:162 ../bonobo/bonobo-ui-init-gtk.c:165 msgid "FLAGS" msgstr "पताका" #: ../bonobo/bonobo-ui-init-gtk.c:134 msgid "Gdk debugging flags to unset" msgstr "अनसेट करबाक लेल Gdk डिबगिंग" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "X display to use" msgstr "उपयोग मे एक्स प्रदर्शक" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "DISPLAY" msgstr "प्रदर्शक" #: ../bonobo/bonobo-ui-init-gtk.c:142 msgid "X screen to use" msgstr "उपयोग क' लेल X स्क्रीन" #: ../bonobo/bonobo-ui-init-gtk.c:142 msgid "SCREEN" msgstr "स्क्रीन" #: ../bonobo/bonobo-ui-init-gtk.c:146 msgid "Make X calls synchronous" msgstr "X कालकेँ समतुल्यकालिक बनाबू" #: ../bonobo/bonobo-ui-init-gtk.c:152 msgid "Don't use X shared memory extension" msgstr "एक्स साझा मेमोरी विस्तारक क' उपयोग नहि करू" #: ../bonobo/bonobo-ui-init-gtk.c:156 msgid "Program name as used by the window manager" msgstr "विंडो प्रबंधक क' द्वारा प्रयुक्त प्रोग्राम नाम" #: ../bonobo/bonobo-ui-init-gtk.c:156 msgid "NAME" msgstr "नाम" #: ../bonobo/bonobo-ui-init-gtk.c:159 msgid "Program class as used by the window manager" msgstr "विंडो प्रबंधक क' द्वारा प्रयुक्त प्रोग्राम वर्ग" #: ../bonobo/bonobo-ui-init-gtk.c:159 msgid "CLASS" msgstr "वर्ग" #: ../bonobo/bonobo-ui-init-gtk.c:162 msgid "Gtk+ debugging flags to set" msgstr "जीटीके+ डिबगिंग ध्वज सेट करबा लेल" #: ../bonobo/bonobo-ui-init-gtk.c:165 msgid "Gtk+ debugging flags to unset" msgstr "जीटीके+ डिबगिंग ध्वज सेट नहि करबा लेल" #: ../bonobo/bonobo-ui-init-gtk.c:168 msgid "Make all warnings fatal" msgstr "सभटा चेतावनीकेँ गंभीर बनाबू" #: ../bonobo/bonobo-ui-init-gtk.c:171 msgid "Load an additional Gtk module" msgstr "एकटा बाइली जीटीके मोड्यूल लोड करू" #: ../bonobo/bonobo-ui-init-gtk.c:171 msgid "MODULE" msgstr "मोड्यूल" #: ../bonobo/bonobo-ui-init-gtk.c:187 msgid "GTK+" msgstr "जीटीके+" #: ../bonobo/bonobo-ui-main.c:278 msgid "Bonobo GUI support" msgstr "बोनोबो जीयूआई समर्थन" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "B_oth" msgstr "दुनू (_o)" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "T_ext" msgstr "पाठ (_e)" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Hide t_ips" msgstr "युक्तिसभ नुकाबू (_i)" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Show t_ips" msgstr "युक्तिसभ देखाबू (_i)" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "_Hide toolbar" msgstr "अओजार-पट्टी नुकाबू (_H)" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "Customi_ze" msgstr "अनुकूलित करू (_z)" #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Customize the toolbar" msgstr "अओजार-पट्टी अनुकूलित करू" #: ../bonobo/bonobo-ui-toolbar.c:1115 msgid "is floating" msgstr "फ्लोटिंग अछि" #: ../bonobo/bonobo-ui-toolbar.c:1116 msgid "whether the toolbar is floating" msgstr "की अओजार-पट्टी फ्लोटिंग अछि?" #: ../bonobo/bonobo-ui-toolbar.c:1162 msgid "Style of bevel around the toolbar" msgstr "अओजार-पट्टी क' चारू दिसक उठाव क' प्रकार" #: ../bonobo/bonobo-ui-util.c:601 msgid "Could not display help for this application" msgstr "" #: ../bonobo/bonobo-ui-util.c:643 msgid "_Contents" msgstr "विषय सूची (_C)" #: ../bonobo/bonobo-ui-util.c:644 msgid "View help for this application" msgstr "ई अनुप्रयोग लेल मद्दति देखू" #: ../bonobo/bonobo-window.c:345 msgid "Name of the window - used for configuration serialization." msgstr "विंडो क' नाम - बिन्यास सीरियलाएजेशन लेल उपयोगमे" #: ../bonobo/bonobo-zoomable.c:326 msgid "Zoom level" msgstr "जूम स्तर" #: ../bonobo/bonobo-zoomable.c:327 msgid "The degree of enlargment" msgstr "आकार वृद्धि क' अंश" #: ../bonobo/bonobo-zoomable.c:335 msgid "Minimum Zoom level" msgstr "न्यूनतम जूम स्तर" #: ../bonobo/bonobo-zoomable.c:336 msgid "The minimum degree of enlargment" msgstr "न्यूनतम आकार वृद्धि क' अंश" #: ../bonobo/bonobo-zoomable.c:344 msgid "Maximum Zoom level" msgstr "अधिकतम जूम स्तर" #: ../bonobo/bonobo-zoomable.c:345 msgid "The maximum degree of enlargment" msgstr "आकार वृद्धि क' अधिकतम अंश" #: ../bonobo/bonobo-zoomable.c:353 msgid "Has a minimum Zoom level" msgstr "न्यूनतम जूम स्तर अछि" #: ../bonobo/bonobo-zoomable.c:354 msgid "Whether we have a valid minimum zoom level" msgstr "की हमरा पास वैध न्यूनतम जूम स्तर अछि" #: ../bonobo/bonobo-zoomable.c:361 msgid "Has a maximum Zoom level" msgstr "अधिकतम जूम स्तर अछि" #: ../bonobo/bonobo-zoomable.c:362 msgid "Whether we have a valid maximum zoom level" msgstr "की हमरा पास वैध अधिकतम जूम स्तर अछि" #: ../bonobo/bonobo-zoomable.c:369 msgid "Is continuous" msgstr "लगातार अछि" #: ../bonobo/bonobo-zoomable.c:370 msgid "Whether we zoom continuously (as opposed to jumps)" msgstr "की हम लगातार जूम करै छी (चरणबद्ध क' विरूद्ध)" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:1 msgid "About this application" msgstr "एहि अनुप्रयोग क' बारेमे" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:2 msgid "Select" msgstr "चुनू" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:3 msgid "_About..." msgstr "क' संबंधमे... (_A)" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:4 msgid "_Edit" msgstr "संपादन (_E)" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:5 #: ../tools/browser/bonobo-browser.xml.h:4 msgid "_File" msgstr "फाइल (_F)" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:6 msgid "_Select" msgstr "चुनू (_S)" #: ../samples/bonoboui/hello.c:63 msgid "This does nothing; it is only a demonstration." msgstr "ई किछु नहि करैत अछि. ई सिर्फ एकटा प्रदर्शन अछि." #: ../samples/bonoboui/hello.c:145 msgid "BonoboUI-Hello." msgstr "बोनोबोयूआई-नमस्कार" #: ../samples/bonoboui/hello.c:217 msgid "Gnome Hello" msgstr "गनोम नमस्कार" #. Create Label and put it in the Button: #: ../samples/bonoboui/hello.c:272 msgid "Hello, World!" msgstr "सभलोकिनकेँ नमस्कार!" #: ../samples/bonoboui/hello.c:312 msgid "Cannot init libbonoboui code" msgstr "libbonoboui कोड केँ प्रारंभ नहि कएल जाए सकल" #: ../samples/controls/bonobo-sample-controls.c:131 msgid "Could not initialize Bonobo UI" msgstr "बोनोबो यूआई केँ प्रारंभ नहि कएल जाए सकल" #: ../tools/browser/bonobo-browser.desktop.in.h:1 msgid "Bonobo Component Browser" msgstr "Bonobo घटक ब्राउजर" #: ../tools/browser/bonobo-browser.desktop.in.h:2 msgid "Shows available Bonobo components" msgstr "मोजुद Bonobo घटक सहेजू" #: ../tools/browser/bonobo-browser.xml.h:1 msgid "About this program..." msgstr "ई प्रोग्राम क' संबंधमे..." #: ../tools/browser/bonobo-browser.xml.h:2 msgid "Close the current window" msgstr "मोजुदा विंडोकेँ बन्न करू" #: ../tools/browser/bonobo-browser.xml.h:3 msgid "Open a new window" msgstr "नवीन विंडो खोलू" #: ../tools/browser/bonobo-browser.xml.h:5 msgid "_Help" msgstr "मद्दति (_H)" #. Build the general tab #: ../tools/browser/component-details.c:109 msgid "General" msgstr "सामान्य" #: ../tools/browser/component-details.c:116 #: ../tools/browser/component-list.c:398 msgid "IID" msgstr "IID" #: ../tools/browser/component-details.c:117 msgid "Location" msgstr "स्थान" #. Build the details tab #: ../tools/browser/component-details.c:167 msgid "Details" msgstr "विवरण" #: ../tools/browser/component-details.c:168 msgid "Detailed Information" msgstr "विस्तृत सूचना" #: ../tools/browser/component-list.c:367 ../tools/browser/window.c:283 msgid "Active" msgstr "सक्रिय" #: ../tools/browser/component-list.c:388 msgid "Type" msgstr "प्रकार" #: ../tools/browser/window.c:162 msgid "Component Details" msgstr "घटक विवरण" #: ../tools/browser/window.c:208 msgid "Bonobo Browser" msgstr "Bonobo ब्राउजर" #: ../tools/browser/window.c:210 msgid "Copyright 2001, The GNOME Foundation" msgstr "Copyright 2001, GNOME न्यास" #: ../tools/browser/window.c:211 msgid "Bonobo component browser" msgstr "Bonobo घटक ब्राउजर" #: ../tools/browser/window.c:214 msgid "translator-credits" msgstr "संगीता कुमारी (sangeeta09@gmail.com)" #. create the window #: ../tools/browser/window.c:240 msgid "Component Browser" msgstr "घटक ब्राउजर" #. Fill out the tool bar #: ../tools/browser/window.c:280 msgid "All" msgstr "सभ" #: ../tools/browser/window.c:286 msgid "Inactive" msgstr "निष्क्रिय" libbonoboui-2.24.5/po/nso.po0000644000076400007640000003216611173072741012630 00000000000000# Northern Sotho translation of libbonoboui. # Copyright (C) 2004 Zuza Software Foundation # This file is distributed under the same license as the libbonoboui package. # # Zuza Software Foundation , 2004 # msgid "" msgstr "" "Project-Id-Version: libbonoboui 2.8-branch\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2005-09-10 18:44+0200\n" "PO-Revision-Date: 2004-11-15 22:06+0200\n" "Last-Translator: Zuza Software Foundation \n" "Language-Team: Northern Sotho \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../bonobo/bonobo-canvas-item.c:683 msgid "corba factory" msgstr "feketori ya corba" #: ../bonobo/bonobo-canvas-item.c:684 msgid "The factory pointer" msgstr "Sešupetši sa feketori" #: ../bonobo/bonobo-canvas-item.c:693 msgid "corba UI container" msgstr "seswaro sa UI sa corba" #: ../bonobo/bonobo-canvas-item.c:694 msgid "The User interface container" msgstr "Seswaro sa Poledisašo ya Modiriši" #: ../bonobo/bonobo-dock-item-grip.c:257 msgid "Dock the toolbar" msgstr "Khutsofatša bara ya sedirišwa" #: ../bonobo/bonobo-dock-item-grip.c:258 #, fuzzy msgid "Undock the toolbar" msgstr "O seke wa khutsofatša bara ya sedirišwa" #: ../bonobo/bonobo-dock-item.c:235 ../bonobo/bonobo-dock-item.c:236 #: ../bonobo/bonobo-ui-toolbar.c:1175 msgid "Shadow type" msgstr "Mohuta wa go fifatša" #: ../bonobo/bonobo-dock-item.c:246 ../bonobo/bonobo-dock-item.c:247 #: ../bonobo/bonobo-ui-toolbar.c:1119 ../bonobo/bonobo-ui-toolbar.c:1120 msgid "Orientation" msgstr "Thulaganyo" #: ../bonobo/bonobo-dock-item.c:257 ../bonobo/bonobo-dock-item.c:258 #: ../bonobo/bonobo-ui-toolbar.c:1138 ../bonobo/bonobo-ui-toolbar.c:1139 msgid "Preferred width" msgstr "Bophara bjo bo ratwago" #: ../bonobo/bonobo-dock-item.c:266 ../bonobo/bonobo-dock-item.c:267 #: ../bonobo/bonobo-ui-toolbar.c:1147 ../bonobo/bonobo-ui-toolbar.c:1148 msgid "Preferred height" msgstr "Bophagamo bjo bo ratwago" #: ../bonobo/bonobo-file-selector-util.c:357 msgid "Select a file to open" msgstr "Kgetha faele yeo e swanetšego go bulega" #: ../bonobo/bonobo-file-selector-util.c:385 msgid "Select files to open" msgstr "Kgetha difaele tšeo di swanetšego go bulega" #: ../bonobo/bonobo-file-selector-util.c:414 msgid "Select a filename to save" msgstr "Kgetha leina la faele leo le swanetšego go bolokwa" #: ../bonobo/bonobo-plug.c:425 msgid "Event Forwarding" msgstr "Go Fetišetšwa pele ga Tiragalo" #: ../bonobo/bonobo-plug.c:426 msgid "Whether X events should be forwarded" msgstr "Ge eba ditiragalo tša X di swanetše go fetišetšwa pele" #: ../bonobo/bonobo-selector-widget.c:302 ../bonobo/bonobo-window.c:346 #: ../tools/browser/component-details.c:114 #: ../tools/browser/component-list.c:381 msgid "Name" msgstr "Leina" #: ../bonobo/bonobo-selector-widget.c:324 #: ../tools/browser/component-details.c:115 msgid "Description" msgstr "Tlhaloso" #: ../bonobo/bonobo-selector.c:345 msgid "Interfaces required" msgstr "Dipoledišano tšeo di nyakwago" #: ../bonobo/bonobo-selector.c:346 msgid "" "A NULL-terminated array of interfaces which a server must support in order " "to be listed in the selector. Defaults to \"IDL:Bonobo/Embeddable:1.0\" if " "no interfaces are listed" msgstr "" "NULL-e fedišitše peakanyo ya dipoledišano tšeo seabi se swanetšego go di " "thekga gore di lokeletšwe sekgething. Ditlhaelelo go \"IDL:Bonobo/" "Embeddable:1.0\" ge eba go se na dipoledišano tšeo di lokeleditšwego" #: ../bonobo/bonobo-selector.c:348 msgid "Interface required entry" msgstr "Tsenyo ya poledišano yeo e nyakwago" #: ../bonobo/bonobo-selector.c:349 msgid "One of the interfaces that's required" msgstr "E tee ya dipoledišano tšeo di nyakwago" #: ../bonobo/bonobo-ui-config-widget.c:268 msgid "Visible" msgstr "Bonagalago" #: ../bonobo/bonobo-ui-config-widget.c:275 msgid "_Show" msgstr "_Bontšha" #: ../bonobo/bonobo-ui-config-widget.c:282 msgid "_Hide" msgstr "_Uta" #: ../bonobo/bonobo-ui-config-widget.c:288 msgid "_View tooltips" msgstr "_Lebelela maele a sedirišwa" #: ../bonobo/bonobo-ui-config-widget.c:293 msgid "Toolbars" msgstr "Bara ya didirišwa" #: ../bonobo/bonobo-ui-config-widget.c:303 msgid "toolbars" msgstr "bara ya didirišwa" #: ../bonobo/bonobo-ui-config-widget.c:314 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "Look" msgstr "Lebelela" #: ../bonobo/bonobo-ui-config-widget.c:323 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "_Icon" msgstr "_Leswao" #: ../bonobo/bonobo-ui-config-widget.c:329 msgid "_Text and Icon" msgstr "_Sengwalwa le Leswao" #: ../bonobo/bonobo-ui-config-widget.c:335 msgid "Text only" msgstr "Sengwalwa feela" #: ../bonobo/bonobo-ui-config-widget.c:341 msgid "_Priority text only" msgstr "_Sengwalwa se tlago pele feela" #: ../bonobo/bonobo-ui-engine.c:90 msgid "Debug" msgstr "Fokotša diphošo" #: ../bonobo/bonobo-ui-engine.c:90 msgid "_Dump XML" msgstr "_Lahla XML" #: ../bonobo/bonobo-ui-engine.c:91 msgid "Dump the entire UI's XML description to the console" msgstr "" "Lahla tlhaloso ka moka ya XML ya UI go ya go sedirišwa se tswakago tšeo di " "bontšhwago" #: ../bonobo/bonobo-ui-engine-config.c:522 msgid "Configure UI" msgstr "Fetola sebopego sa UI" #: ../bonobo/bonobo-ui-init-gtk.c:113 msgid "Gdk debugging flags to set" msgstr "Difolaga tša go fokotša diphošo tša Gdk go peakanyo" #: ../bonobo/bonobo-ui-init-gtk.c:113 ../bonobo/bonobo-ui-init-gtk.c:116 #: ../bonobo/bonobo-ui-init-gtk.c:144 ../bonobo/bonobo-ui-init-gtk.c:147 msgid "FLAGS" msgstr "DIFOLAGA" #: ../bonobo/bonobo-ui-init-gtk.c:116 msgid "Gdk debugging flags to unset" msgstr "Difolaga tša go fokotša diphošo tša Gdk go go beakanyolla" #: ../bonobo/bonobo-ui-init-gtk.c:120 msgid "X display to use" msgstr "go bontšha ga X mo go tla dirišwago" #: ../bonobo/bonobo-ui-init-gtk.c:120 msgid "DISPLAY" msgstr "BONTŠHA" #: ../bonobo/bonobo-ui-init-gtk.c:124 msgid "X screen to use" msgstr "sekirini sa X se tla dirišwago" #: ../bonobo/bonobo-ui-init-gtk.c:124 msgid "SCREEN" msgstr "SEKIRINI" #: ../bonobo/bonobo-ui-init-gtk.c:128 msgid "Make X calls synchronous" msgstr "Dira gore go letša mogala ga X go dirwe sammaletee" #: ../bonobo/bonobo-ui-init-gtk.c:134 msgid "Don't use X shared memory extension" msgstr "O seke wa diriša koketšo e abelanwago ya X ya kgopolo" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "Program name as used by the window manager" msgstr "Leina la lenaneo go ya kamoo le dirišwago ke molaodi wa lefesetere" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "NAME" msgstr "LEINA" #: ../bonobo/bonobo-ui-init-gtk.c:141 msgid "Program class as used by the window manager" msgstr "Legoro la lenaneo go ya kamoo le dirišwago ke molaodi wa lefesetere" #: ../bonobo/bonobo-ui-init-gtk.c:141 msgid "CLASS" msgstr "LEGORO" #: ../bonobo/bonobo-ui-init-gtk.c:144 msgid "Gtk+ debugging flags to set" msgstr "Difolaga tša go fokotša diphošo tša Gtk+ go peakanyo" #: ../bonobo/bonobo-ui-init-gtk.c:147 msgid "Gtk+ debugging flags to unset" msgstr "Difolaga tša go fokotša diphošo tša Gtk+ go go beakanyolla" #: ../bonobo/bonobo-ui-init-gtk.c:150 msgid "Make all warnings fatal" msgstr "Dira gore ditemošo ka moka di be kotsi" #: ../bonobo/bonobo-ui-init-gtk.c:153 msgid "Load an additional Gtk module" msgstr "Laiša tekanyo e oketšegilego ya Gtk" #: ../bonobo/bonobo-ui-init-gtk.c:153 msgid "MODULE" msgstr "TEKANYO" #: ../bonobo/bonobo-ui-init-gtk.c:162 msgid "GTK+" msgstr "GTK+" #: ../bonobo/bonobo-ui-main.c:278 msgid "Bonobo GUI support" msgstr "Thekgo ya GUI ya Bonobo" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "B_oth" msgstr "B_obedi" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "T_ext" msgstr "S_engwalwa" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Hide t_ips" msgstr "Uta m_aele" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Show t_ips" msgstr "Bontšha m_aele" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "_Hide toolbar" msgstr "_Uta bara ya sedirišwa" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "Customi_ze" msgstr "Tlwaelan_ya" #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Customize the toolbar" msgstr "Tlwaelanya bara ya sedirišwa" #: ../bonobo/bonobo-ui-toolbar.c:1129 msgid "is floating" msgstr "e kgokagantšwe ka tsela e sa tiago" #: ../bonobo/bonobo-ui-toolbar.c:1130 msgid "whether the toolbar is floating" msgstr "ge eba bara ya sedirišwa e kgokagantšwe ka tsela e sa tiago" #: ../bonobo/bonobo-ui-toolbar.c:1176 msgid "Style of bevel around the toolbar" msgstr "Mokgwa wa sethadi sa diswantšho go dikologa bara ya sedirišwa" #: ../bonobo/bonobo-ui-util.c:630 msgid "_Contents" msgstr "_Dikagare" #: ../bonobo/bonobo-ui-util.c:631 msgid "View help for this application" msgstr "Lebelela thušo bakeng sa tirišo ye" #: ../bonobo/bonobo-window.c:347 msgid "Name of the window - used for configuration serialization." msgstr "" "Leina la lefesetere - leo le dirišitšwego go tatelano ya go fetola sebopego." #: ../bonobo/bonobo-zoomable.c:326 msgid "Zoom level" msgstr "Mogato wa Kgodišo" #: ../bonobo/bonobo-zoomable.c:327 msgid "The degree of enlargment" msgstr "Tekanyo ya kgodišo" #: ../bonobo/bonobo-zoomable.c:335 msgid "Minimum Zoom level" msgstr "Bonyenyane bja mogato wa Kgodišo" #: ../bonobo/bonobo-zoomable.c:336 msgid "The minimum degree of enlargment" msgstr "Bonyenyane bja tekanyo ya kgodišo" #: ../bonobo/bonobo-zoomable.c:344 msgid "Maximum Zoom level" msgstr "Bogolo bja mogato wa Kgodišo" #: ../bonobo/bonobo-zoomable.c:345 msgid "The maximum degree of enlargment" msgstr "Bogolo bja tekanyo ya kgodišo" #: ../bonobo/bonobo-zoomable.c:353 msgid "Has a minimum Zoom level" msgstr "E na le mogato wa Kgodišo o monyenyane" #: ../bonobo/bonobo-zoomable.c:354 msgid "Whether we have a valid minimum zoom level" msgstr "Ge e ba re nale mogato wa kgodišo o monyenyane wo e lego wa kgonthe" #: ../bonobo/bonobo-zoomable.c:361 msgid "Has a maximum Zoom level" msgstr "E na le mogato wa Kgodišo o mogolo" #: ../bonobo/bonobo-zoomable.c:362 msgid "Whether we have a valid maximum zoom level" msgstr "Ge eba re na le mogato wa kgodišo o mogolo wo e lego wa kgonthe" #: ../bonobo/bonobo-zoomable.c:369 msgid "Is continuous" msgstr "E tšwela pele" #: ../bonobo/bonobo-zoomable.c:370 msgid "Whether we zoom continuously (as opposed to jumps)" msgstr "Ge eba re godiša ka mo go tšwelago pele (go fapana le go tshela)" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:1 msgid "About this application" msgstr "Ka ga tirišo ye" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:2 msgid "Select" msgstr "Kgetha" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:3 msgid "_About..." msgstr "_Ka ga..." #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:4 msgid "_Edit" msgstr "_Lokiša" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:5 #: ../tools/browser/bonobo-browser.xml.h:4 msgid "_File" msgstr "_Faele" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:6 msgid "_Select" msgstr "_Kgetha" #: ../samples/bonoboui/hello.c:63 msgid "This does nothing; it is only a demonstration." msgstr "Se ga se dire selo; ke pontšho feela." #: ../samples/bonoboui/hello.c:145 msgid "BonoboUI-Hello." msgstr "BonoboUI-Dumela." #: ../samples/bonoboui/hello.c:217 msgid "Gnome Hello" msgstr "Gnome Dumela" #. Create Label and put it in the Button: #: ../samples/bonoboui/hello.c:272 msgid "Hello, World!" msgstr "Dumela, Lefase!" #: ../samples/bonoboui/hello.c:312 msgid "Cannot init libbonoboui code" msgstr "Ga e kgone go beakanya khoutu ya libbonoboui" #: ../samples/controls/bonobo-sample-controls.c:131 msgid "Could not initialize Bonobo UI" msgstr "Ga e kgone go beakanya UI ya Bonobo" #: ../tools/browser/bonobo-browser.desktop.in.h:1 msgid "Bonobo Component Browser" msgstr "" #: ../tools/browser/bonobo-browser.desktop.in.h:2 msgid "Shows available Bonobo components" msgstr "" #: ../tools/browser/bonobo-browser.xml.h:1 msgid "About this program..." msgstr "" #: ../tools/browser/bonobo-browser.xml.h:2 msgid "Close the current window" msgstr "" #: ../tools/browser/bonobo-browser.xml.h:3 msgid "Open a new window" msgstr "" #: ../tools/browser/bonobo-browser.xml.h:5 msgid "_Help" msgstr "" #. Build the general tab #: ../tools/browser/component-details.c:109 msgid "General" msgstr "" #: ../tools/browser/component-details.c:116 #: ../tools/browser/component-list.c:401 msgid "IID" msgstr "" #: ../tools/browser/component-details.c:117 msgid "Location" msgstr "" #. Build the details tab #: ../tools/browser/component-details.c:167 msgid "Details" msgstr "" #: ../tools/browser/component-details.c:168 msgid "Detailed Information" msgstr "" #: ../tools/browser/component-list.c:370 ../tools/browser/window.c:290 msgid "Active" msgstr "" #: ../tools/browser/component-list.c:391 msgid "Type" msgstr "" #: ../tools/browser/window.c:170 msgid "Component Details" msgstr "" #: ../tools/browser/window.c:215 msgid "Bonobo Browser" msgstr "" #: ../tools/browser/window.c:216 msgid "Copyright 2001, The GNOME Foundation" msgstr "" #: ../tools/browser/window.c:217 msgid "Bonobo component browser" msgstr "" #. create the window #: ../tools/browser/window.c:247 msgid "Component Browser" msgstr "" #. Fill out the tool bar #: ../tools/browser/window.c:287 msgid "All" msgstr "" #: ../tools/browser/window.c:293 msgid "Inactive" msgstr "" libbonoboui-2.24.5/po/yi.po0000644000076400007640000003434311173072741012451 00000000000000# Yiddish version # Copyright (C) 2003 Free Software Foundation, Inc. # Raphael Finkel , 2003. # msgid "" msgstr "" "Project-Id-Version: 1.0\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2005-09-10 18:44+0200\n" "PO-Revision-Date: 2003-03-19\n" "Last-Translator: Raphael Finkel \n" "Language-Team: Yiddish \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../bonobo/bonobo-canvas-item.c:683 msgid "corba factory" msgstr "קאָרבאַ־פֿאַבריק" #: ../bonobo/bonobo-canvas-item.c:684 msgid "The factory pointer" msgstr "די פֿאַבריק־יד" #: ../bonobo/bonobo-canvas-item.c:693 msgid "corba UI container" msgstr "קאָרבאַ UI פּעקל" #: ../bonobo/bonobo-canvas-item.c:694 msgid "The User interface container" msgstr "דאָס ניצער־צובינד פּעקל" #: ../bonobo/bonobo-dock-item-grip.c:257 msgid "Dock the toolbar" msgstr "דאָקיר דעם מכשיר־װײַזער" #: ../bonobo/bonobo-dock-item-grip.c:258 #, fuzzy msgid "Undock the toolbar" msgstr "אױסדאָקיר דעם מכשיר־װײַזער" #: ../bonobo/bonobo-dock-item.c:235 ../bonobo/bonobo-dock-item.c:236 #: ../bonobo/bonobo-ui-toolbar.c:1175 msgid "Shadow type" msgstr "שאָטן־סאָרט" #: ../bonobo/bonobo-dock-item.c:246 ../bonobo/bonobo-dock-item.c:247 #: ../bonobo/bonobo-ui-toolbar.c:1119 ../bonobo/bonobo-ui-toolbar.c:1120 msgid "Orientation" msgstr "אָריִענטירונג" #: ../bonobo/bonobo-dock-item.c:257 ../bonobo/bonobo-dock-item.c:258 #: ../bonobo/bonobo-ui-toolbar.c:1138 ../bonobo/bonobo-ui-toolbar.c:1139 msgid "Preferred width" msgstr "געװוּנטשענע ברײט" #: ../bonobo/bonobo-dock-item.c:266 ../bonobo/bonobo-dock-item.c:267 #: ../bonobo/bonobo-ui-toolbar.c:1147 ../bonobo/bonobo-ui-toolbar.c:1148 msgid "Preferred height" msgstr "געװוּנטשענע הײך" #: ../bonobo/bonobo-file-selector-util.c:357 msgid "Select a file to open" msgstr "סעלעקטיר אַ טעקע צו עפֿענען" #: ../bonobo/bonobo-file-selector-util.c:385 msgid "Select files to open" msgstr "סעלעקטיר טעקעס צו עפֿענען" #: ../bonobo/bonobo-file-selector-util.c:414 msgid "Select a filename to save" msgstr "סעלעקטיר אַ טעקע־נאָמען אױפֿצוהיטן" #: ../bonobo/bonobo-plug.c:425 msgid "Event Forwarding" msgstr "טרעפֿעניש־װײַטערשיקן" #: ../bonobo/bonobo-plug.c:426 msgid "Whether X events should be forwarded" msgstr "צי X־טרעפֿענישן זאָלן זיך װײַטער שיקן" #: ../bonobo/bonobo-selector-widget.c:302 ../bonobo/bonobo-window.c:346 #: ../tools/browser/component-details.c:114 #: ../tools/browser/component-list.c:381 msgid "Name" msgstr "נאָמען" #: ../bonobo/bonobo-selector-widget.c:324 #: ../tools/browser/component-details.c:115 msgid "Description" msgstr "באַשרײַבונג" #: ../bonobo/bonobo-selector.c:345 msgid "Interfaces required" msgstr "צובינדן זײַנען נױטיק" #: ../bonobo/bonobo-selector.c:346 #, fuzzy msgid "" "A NULL-terminated array of interfaces which a server must support in order " "to be listed in the selector. Defaults to \"IDL:Bonobo/Embeddable:1.0\" if " "no interfaces are listed" msgstr "" "אַ נול־געענדיקטע רײע פֿון צובינדן װאָס אַ סערװירער מוז זײ שטיצן כּדי דער " "סעלעקטירער זאָל זײ װײַזן. װערט, לכּל־הפּחות, \"IDL:Bonobo/Embeddable:1.0\" אױב " "קײן צובינדן זײַנען ניט אין דער רשימה" #: ../bonobo/bonobo-selector.c:348 msgid "Interface required entry" msgstr "צובינד נײטיקט זיך אין אַן אײנס" #: ../bonobo/bonobo-selector.c:349 msgid "One of the interfaces that's required" msgstr "אײנער פֿון די נױטיקע צובינדן" #: ../bonobo/bonobo-ui-config-widget.c:268 msgid "Visible" msgstr "זעעװדיק" #: ../bonobo/bonobo-ui-config-widget.c:275 msgid "_Show" msgstr "װײַז" #: ../bonobo/bonobo-ui-config-widget.c:282 msgid "_Hide" msgstr "באַהאַלט" #: ../bonobo/bonobo-ui-config-widget.c:288 msgid "_View tooltips" msgstr "זע מכשיר־פּינטלעך" #: ../bonobo/bonobo-ui-config-widget.c:293 msgid "Toolbars" msgstr "מכשיר־װירעס" #: ../bonobo/bonobo-ui-config-widget.c:303 msgid "toolbars" msgstr "מכשיר־װירעס" #: ../bonobo/bonobo-ui-config-widget.c:314 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "Look" msgstr "זע" #: ../bonobo/bonobo-ui-config-widget.c:323 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "_Icon" msgstr "בילדל" #: ../bonobo/bonobo-ui-config-widget.c:329 msgid "_Text and Icon" msgstr "טעקסט און בילדל" #: ../bonobo/bonobo-ui-config-widget.c:335 msgid "Text only" msgstr "בלױז טעקסט" #: ../bonobo/bonobo-ui-config-widget.c:341 msgid "_Priority text only" msgstr "בלױז פּריִאָריטעט־טעקסט" #: ../bonobo/bonobo-ui-engine.c:90 msgid "Debug" msgstr "באַזײַטיק פֿעלערן" #: ../bonobo/bonobo-ui-engine.c:90 msgid "_Dump XML" msgstr "װײַז XML באַריכות" #: ../bonobo/bonobo-ui-engine.c:91 msgid "Dump the entire UI's XML description to the console" msgstr "װײַז באַריכות דעם גאַנצן UIס XML באַשרײַבונג צום עקראַן" #: ../bonobo/bonobo-ui-engine-config.c:522 msgid "Configure UI" msgstr "פּאַס UI צו" #: ../bonobo/bonobo-ui-init-gtk.c:113 msgid "Gdk debugging flags to set" msgstr "Gdk פֿעלער־באַזײַטיקונג אָפּציעס צו באַשטעטיקן" #: ../bonobo/bonobo-ui-init-gtk.c:113 ../bonobo/bonobo-ui-init-gtk.c:116 #: ../bonobo/bonobo-ui-init-gtk.c:144 ../bonobo/bonobo-ui-init-gtk.c:147 msgid "FLAGS" msgstr "FLAGS" #: ../bonobo/bonobo-ui-init-gtk.c:116 msgid "Gdk debugging flags to unset" msgstr "Gdk פֿעלער־באַשטעטיקן אָפּציעס מבֿטל צו זײַן" #: ../bonobo/bonobo-ui-init-gtk.c:120 msgid "X display to use" msgstr "X עקראַן צו ניצן" #: ../bonobo/bonobo-ui-init-gtk.c:120 msgid "DISPLAY" msgstr "DISPLAY" #: ../bonobo/bonobo-ui-init-gtk.c:124 msgid "X screen to use" msgstr "X אונטער־עקראַן צו ניצן" #: ../bonobo/bonobo-ui-init-gtk.c:124 msgid "SCREEN" msgstr "SCREEN" #: ../bonobo/bonobo-ui-init-gtk.c:128 msgid "Make X calls synchronous" msgstr "סינכראָניזיר X־אַרױסרופֿן" #: ../bonobo/bonobo-ui-init-gtk.c:134 msgid "Don't use X shared memory extension" msgstr "ניץ ניט די X זכּרון־מיטטײל פֿעיִקײט" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "Program name as used by the window manager" msgstr "פּראָגראַם־נאָמען, װי דער פֿענצטער־אַדמיניסטראַטאָר ניצט אים" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "NAME" msgstr "NAME" #: ../bonobo/bonobo-ui-init-gtk.c:141 msgid "Program class as used by the window manager" msgstr "פּראָגראַם־קלאַס, װי דער פֿענצטער־אַדמיניסטראַטאָר ניצט אים" #: ../bonobo/bonobo-ui-init-gtk.c:141 msgid "CLASS" msgstr "CLASS" #: ../bonobo/bonobo-ui-init-gtk.c:144 msgid "Gtk+ debugging flags to set" msgstr "Gtk פֿעלער־באַזײַטיקונג אָפּציעס צו באַשטעטיקן" #: ../bonobo/bonobo-ui-init-gtk.c:147 msgid "Gtk+ debugging flags to unset" msgstr "Gtk פֿעלער־באַזײַטיקונג אָפּציעס מבֿטל צו זײַן" #: ../bonobo/bonobo-ui-init-gtk.c:150 msgid "Make all warnings fatal" msgstr "אַלע װאָרענונגען װערן טױטפֿאַלן" #: ../bonobo/bonobo-ui-init-gtk.c:153 msgid "Load an additional Gtk module" msgstr "שטעל אַרײַן אַ צוגעבלעכן Gtk מאָדול" #: ../bonobo/bonobo-ui-init-gtk.c:153 msgid "MODULE" msgstr "MODULE" #: ../bonobo/bonobo-ui-init-gtk.c:162 msgid "GTK+" msgstr "GTK+" #: ../bonobo/bonobo-ui-main.c:278 msgid "Bonobo GUI support" msgstr "באָנאָבאָ גראַפֿישע ניצער־צובינד שטיץ" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "B_oth" msgstr "בײדע" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "T_ext" msgstr "טעקסט" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Hide t_ips" msgstr "װײַז מכשיר־פּינטלעך" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Show t_ips" msgstr "באַהאַלט מכשיר־פּינטלעך" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "_Hide toolbar" msgstr "באַהאַלט מכשיר־װירע" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "Customi_ze" msgstr "פֿאַראײגן" #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Customize the toolbar" msgstr "פֿאַראײגן די מכשיר־װירע" #: ../bonobo/bonobo-ui-toolbar.c:1129 msgid "is floating" msgstr "שװימט" #: ../bonobo/bonobo-ui-toolbar.c:1130 msgid "whether the toolbar is floating" msgstr "צי די מכשיר־װירע שװימט" #: ../bonobo/bonobo-ui-toolbar.c:1176 msgid "Style of bevel around the toolbar" msgstr "" #: ../bonobo/bonobo-ui-util.c:630 msgid "_Contents" msgstr "אינהאַלט" #: ../bonobo/bonobo-ui-util.c:631 msgid "View help for this application" msgstr "זע געהילף פֿאַר דער אַפּליקאַציע" #: ../bonobo/bonobo-window.c:347 msgid "Name of the window - used for configuration serialization." msgstr "פֿענצטער־נאָמען, גענוצט צוליב צופּאַס־סעריאַליזאַציע" #: ../bonobo/bonobo-zoomable.c:326 msgid "Zoom level" msgstr "פֿאַרגרעסער־מדרגה" #: ../bonobo/bonobo-zoomable.c:327 msgid "The degree of enlargment" msgstr "װיפֿל פֿאַרגרעסערונג" #: ../bonobo/bonobo-zoomable.c:335 msgid "Minimum Zoom level" msgstr "קלענסטע פֿאַרגרעסער־מדרגה" #: ../bonobo/bonobo-zoomable.c:336 msgid "The minimum degree of enlargment" msgstr "װיפֿל פֿאַרגרעסערונג, אַם קלענסטן" #: ../bonobo/bonobo-zoomable.c:344 msgid "Maximum Zoom level" msgstr "גרעסטע פֿאַרגרעסערונג־מדרגה" #: ../bonobo/bonobo-zoomable.c:345 msgid "The maximum degree of enlargment" msgstr "װיפֿל פֿאַרגרעסערונג, אַם גרעסטן" #: ../bonobo/bonobo-zoomable.c:353 msgid "Has a minimum Zoom level" msgstr "האָט אַ קלענסטע פֿאַרגרעסערונג־מדרגה" #: ../bonobo/bonobo-zoomable.c:354 msgid "Whether we have a valid minimum zoom level" msgstr "צי די קלענסטע פֿאַרגרעסערונג־מדרגה איז לעקסיק" #: ../bonobo/bonobo-zoomable.c:361 msgid "Has a maximum Zoom level" msgstr "האָט אַ גרעסטע פֿאַרגרעסערונג־מדרגה" #: ../bonobo/bonobo-zoomable.c:362 msgid "Whether we have a valid maximum zoom level" msgstr "צי די גרעסטע פֿאַרגרעסערונג־מדרגה איז לעקסיק" #: ../bonobo/bonobo-zoomable.c:369 msgid "Is continuous" msgstr "איז כּסדרדיק" #: ../bonobo/bonobo-zoomable.c:370 msgid "Whether we zoom continuously (as opposed to jumps)" msgstr "צי מיר פֿאַרגרעסערן כּסדרדיק (ניט שפּרינגענדיק)" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:1 msgid "About this application" msgstr "װעגן דער אַפּליקאַציע" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:2 msgid "Select" msgstr "קלײַב אױס" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:3 msgid "_About..." msgstr "װעגן..." #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:4 msgid "_Edit" msgstr "רעדאַגיר" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:5 #: ../tools/browser/bonobo-browser.xml.h:4 msgid "_File" msgstr "טעקע" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:6 msgid "_Select" msgstr "סעלעקטיר" #: ../samples/bonoboui/hello.c:63 msgid "This does nothing; it is only a demonstration." msgstr "טוט גאָרניט; ס'איז בלױז אַ דעמאָנסטראַציע" #: ../samples/bonoboui/hello.c:145 msgid "BonoboUI-Hello." msgstr "באָנאָבאָ ניצער־צובינד „שלום־עליכם“" #: ../samples/bonoboui/hello.c:217 msgid "Gnome Hello" msgstr "Gnome „שלום־עליכם“" #. Create Label and put it in the Button: #: ../samples/bonoboui/hello.c:272 msgid "Hello, World!" msgstr "שלום עליכם!" #: ../samples/bonoboui/hello.c:312 msgid "Cannot init libbonoboui code" msgstr "ניט געקענט איניציאַליזירן libbonoboui פּראָגראַמװאַרג" #: ../samples/controls/bonobo-sample-controls.c:131 msgid "Could not initialize Bonobo UI" msgstr "ניט געקענט איניציאַליזירן באָנאָבאָ ניצער־צובינד" #: ../tools/browser/bonobo-browser.desktop.in.h:1 msgid "Bonobo Component Browser" msgstr "" #: ../tools/browser/bonobo-browser.desktop.in.h:2 msgid "Shows available Bonobo components" msgstr "" #: ../tools/browser/bonobo-browser.xml.h:1 #, fuzzy msgid "About this program..." msgstr "װעגן דער אַפּליקאַציע" #: ../tools/browser/bonobo-browser.xml.h:2 msgid "Close the current window" msgstr "" #: ../tools/browser/bonobo-browser.xml.h:3 msgid "Open a new window" msgstr "" #: ../tools/browser/bonobo-browser.xml.h:5 #, fuzzy msgid "_Help" msgstr "באַהאַלט" #. Build the general tab #: ../tools/browser/component-details.c:109 msgid "General" msgstr "" #: ../tools/browser/component-details.c:116 #: ../tools/browser/component-list.c:401 msgid "IID" msgstr "" #: ../tools/browser/component-details.c:117 msgid "Location" msgstr "" #. Build the details tab #: ../tools/browser/component-details.c:167 msgid "Details" msgstr "" #: ../tools/browser/component-details.c:168 msgid "Detailed Information" msgstr "" #: ../tools/browser/component-list.c:370 ../tools/browser/window.c:290 msgid "Active" msgstr "" #: ../tools/browser/component-list.c:391 msgid "Type" msgstr "" #: ../tools/browser/window.c:170 msgid "Component Details" msgstr "" #: ../tools/browser/window.c:215 msgid "Bonobo Browser" msgstr "" #: ../tools/browser/window.c:216 msgid "Copyright 2001, The GNOME Foundation" msgstr "" #: ../tools/browser/window.c:217 msgid "Bonobo component browser" msgstr "" #. create the window #: ../tools/browser/window.c:247 msgid "Component Browser" msgstr "" #. Fill out the tool bar #: ../tools/browser/window.c:287 msgid "All" msgstr "" #: ../tools/browser/window.c:293 msgid "Inactive" msgstr "" libbonoboui-2.24.5/po/am.po0000644000076400007640000002646211173072741012430 00000000000000# Translations into the Amharic Language. # Copyright (C) 2002 Free Software Foundation, Inc. # This file is distributed under the same license as the libbonoboui package. # Ge'ez Frontier Foundation , 2002. # # msgid "" msgstr "" "Project-Id-Version: libbonoboui\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2005-09-10 18:44+0200\n" "PO-Revision-Date: 2003-02-03 10:16+EDT\n" "Last-Translator: Ge'ez Frontier Foundation \n" "Language-Team: Amharic \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../bonobo/bonobo-canvas-item.c:683 msgid "corba factory" msgstr "የcorba ፋብሪካ" #: ../bonobo/bonobo-canvas-item.c:684 msgid "The factory pointer" msgstr "" #: ../bonobo/bonobo-canvas-item.c:693 msgid "corba UI container" msgstr "" #: ../bonobo/bonobo-canvas-item.c:694 msgid "The User interface container" msgstr "" #: ../bonobo/bonobo-dock-item-grip.c:257 msgid "Dock the toolbar" msgstr "" #: ../bonobo/bonobo-dock-item-grip.c:258 #, fuzzy msgid "Undock the toolbar" msgstr "ቱልባሩን ደብቅ (_H)" #: ../bonobo/bonobo-dock-item.c:235 ../bonobo/bonobo-dock-item.c:236 #: ../bonobo/bonobo-ui-toolbar.c:1175 msgid "Shadow type" msgstr "" #: ../bonobo/bonobo-dock-item.c:246 ../bonobo/bonobo-dock-item.c:247 #: ../bonobo/bonobo-ui-toolbar.c:1119 ../bonobo/bonobo-ui-toolbar.c:1120 msgid "Orientation" msgstr "አቀማመጥ" #: ../bonobo/bonobo-dock-item.c:257 ../bonobo/bonobo-dock-item.c:258 #: ../bonobo/bonobo-ui-toolbar.c:1138 ../bonobo/bonobo-ui-toolbar.c:1139 msgid "Preferred width" msgstr "" #: ../bonobo/bonobo-dock-item.c:266 ../bonobo/bonobo-dock-item.c:267 #: ../bonobo/bonobo-ui-toolbar.c:1147 ../bonobo/bonobo-ui-toolbar.c:1148 msgid "Preferred height" msgstr "" #: ../bonobo/bonobo-file-selector-util.c:357 msgid "Select a file to open" msgstr "" #: ../bonobo/bonobo-file-selector-util.c:385 msgid "Select files to open" msgstr "" #: ../bonobo/bonobo-file-selector-util.c:414 msgid "Select a filename to save" msgstr "ለማስቀመጥ የፋይል ስም ምረጡ" #: ../bonobo/bonobo-plug.c:425 msgid "Event Forwarding" msgstr "" #: ../bonobo/bonobo-plug.c:426 msgid "Whether X events should be forwarded" msgstr "" #: ../bonobo/bonobo-selector-widget.c:302 ../bonobo/bonobo-window.c:346 #: ../tools/browser/component-details.c:114 #: ../tools/browser/component-list.c:381 msgid "Name" msgstr "ስም" #: ../bonobo/bonobo-selector-widget.c:324 #: ../tools/browser/component-details.c:115 msgid "Description" msgstr "መግለጫ" #: ../bonobo/bonobo-selector.c:345 msgid "Interfaces required" msgstr "" #: ../bonobo/bonobo-selector.c:346 msgid "" "A NULL-terminated array of interfaces which a server must support in order " "to be listed in the selector. Defaults to \"IDL:Bonobo/Embeddable:1.0\" if " "no interfaces are listed" msgstr "" #: ../bonobo/bonobo-selector.c:348 msgid "Interface required entry" msgstr "" #: ../bonobo/bonobo-selector.c:349 msgid "One of the interfaces that's required" msgstr "" #: ../bonobo/bonobo-ui-config-widget.c:268 msgid "Visible" msgstr "የሚታይ" #: ../bonobo/bonobo-ui-config-widget.c:275 msgid "_Show" msgstr "አሳይ (_S)" #: ../bonobo/bonobo-ui-config-widget.c:282 msgid "_Hide" msgstr "ደብቅ (_H)" #: ../bonobo/bonobo-ui-config-widget.c:288 msgid "_View tooltips" msgstr "የመስሪያውን ፍንጭ አሳይ" #: ../bonobo/bonobo-ui-config-widget.c:293 msgid "Toolbars" msgstr "ቱልባሮች" #: ../bonobo/bonobo-ui-config-widget.c:303 msgid "toolbars" msgstr "ቱልባሮች" #: ../bonobo/bonobo-ui-config-widget.c:314 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "Look" msgstr "" #: ../bonobo/bonobo-ui-config-widget.c:323 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "_Icon" msgstr "ምልክት (_I)" #: ../bonobo/bonobo-ui-config-widget.c:329 msgid "_Text and Icon" msgstr "ጽሑፍና ምልክት (_T)" #: ../bonobo/bonobo-ui-config-widget.c:335 msgid "Text only" msgstr "ጽሑፉን ብቻ" #: ../bonobo/bonobo-ui-config-widget.c:341 msgid "_Priority text only" msgstr "" #: ../bonobo/bonobo-ui-engine.c:90 msgid "Debug" msgstr "አስተካክል" #: ../bonobo/bonobo-ui-engine.c:90 msgid "_Dump XML" msgstr "_XML አስወጣ" #: ../bonobo/bonobo-ui-engine.c:91 msgid "Dump the entire UI's XML description to the console" msgstr "" #: ../bonobo/bonobo-ui-engine-config.c:522 msgid "Configure UI" msgstr "UIን ለወጡ" #: ../bonobo/bonobo-ui-init-gtk.c:113 msgid "Gdk debugging flags to set" msgstr "" #: ../bonobo/bonobo-ui-init-gtk.c:113 ../bonobo/bonobo-ui-init-gtk.c:116 #: ../bonobo/bonobo-ui-init-gtk.c:144 ../bonobo/bonobo-ui-init-gtk.c:147 msgid "FLAGS" msgstr "" #: ../bonobo/bonobo-ui-init-gtk.c:116 msgid "Gdk debugging flags to unset" msgstr "" #: ../bonobo/bonobo-ui-init-gtk.c:120 msgid "X display to use" msgstr "Xን ለመጠቀም አሳይ" #: ../bonobo/bonobo-ui-init-gtk.c:120 msgid "DISPLAY" msgstr "አሳይ" #: ../bonobo/bonobo-ui-init-gtk.c:124 msgid "X screen to use" msgstr "" #: ../bonobo/bonobo-ui-init-gtk.c:124 msgid "SCREEN" msgstr "እስክሪን" #: ../bonobo/bonobo-ui-init-gtk.c:128 msgid "Make X calls synchronous" msgstr "" #: ../bonobo/bonobo-ui-init-gtk.c:134 msgid "Don't use X shared memory extension" msgstr "" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "Program name as used by the window manager" msgstr "" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "NAME" msgstr "ስም" #: ../bonobo/bonobo-ui-init-gtk.c:141 msgid "Program class as used by the window manager" msgstr "" #: ../bonobo/bonobo-ui-init-gtk.c:141 msgid "CLASS" msgstr "መደብ" #: ../bonobo/bonobo-ui-init-gtk.c:144 msgid "Gtk+ debugging flags to set" msgstr "" #: ../bonobo/bonobo-ui-init-gtk.c:147 msgid "Gtk+ debugging flags to unset" msgstr "" #: ../bonobo/bonobo-ui-init-gtk.c:150 msgid "Make all warnings fatal" msgstr "" #: ../bonobo/bonobo-ui-init-gtk.c:153 msgid "Load an additional Gtk module" msgstr "" #: ../bonobo/bonobo-ui-init-gtk.c:153 msgid "MODULE" msgstr "አቅድ" #: ../bonobo/bonobo-ui-init-gtk.c:162 msgid "GTK+" msgstr "GTK+" #: ../bonobo/bonobo-ui-main.c:278 msgid "Bonobo GUI support" msgstr "" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "B_oth" msgstr "ሁለትም (_o)" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "T_ext" msgstr "ጽሑፍ (_e)" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Hide t_ips" msgstr "ፍንጮችን ደብቅ (_i)" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Show t_ips" msgstr "ፍንጮች አሳይ (_i)" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "_Hide toolbar" msgstr "ቱልባሩን ደብቅ (_H)" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "Customi_ze" msgstr "አስተካክል (_z)" #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Customize the toolbar" msgstr "" #: ../bonobo/bonobo-ui-toolbar.c:1129 msgid "is floating" msgstr "" #: ../bonobo/bonobo-ui-toolbar.c:1130 msgid "whether the toolbar is floating" msgstr "" #: ../bonobo/bonobo-ui-toolbar.c:1176 msgid "Style of bevel around the toolbar" msgstr "" #: ../bonobo/bonobo-ui-util.c:630 msgid "_Contents" msgstr "ይዞታዎች (_C)" #: ../bonobo/bonobo-ui-util.c:631 msgid "View help for this application" msgstr "ለእዚህ መጠቀሚያ ፕሮግራም መረጃ አሳይ" #: ../bonobo/bonobo-window.c:347 msgid "Name of the window - used for configuration serialization." msgstr "" #: ../bonobo/bonobo-zoomable.c:326 msgid "Zoom level" msgstr "የቅርበትና ርቀት ደረጃ" #: ../bonobo/bonobo-zoomable.c:327 msgid "The degree of enlargment" msgstr "" #: ../bonobo/bonobo-zoomable.c:335 msgid "Minimum Zoom level" msgstr "በተቻለ መጠን የቅርበትና ርቀት ደረጃ" #: ../bonobo/bonobo-zoomable.c:336 msgid "The minimum degree of enlargment" msgstr "" #: ../bonobo/bonobo-zoomable.c:344 msgid "Maximum Zoom level" msgstr "ከፍተኛ መጠን የቅርበትና ርቀት ደረጃ" #: ../bonobo/bonobo-zoomable.c:345 msgid "The maximum degree of enlargment" msgstr "" #: ../bonobo/bonobo-zoomable.c:353 msgid "Has a minimum Zoom level" msgstr "" #: ../bonobo/bonobo-zoomable.c:354 msgid "Whether we have a valid minimum zoom level" msgstr "" #: ../bonobo/bonobo-zoomable.c:361 msgid "Has a maximum Zoom level" msgstr "" #: ../bonobo/bonobo-zoomable.c:362 msgid "Whether we have a valid maximum zoom level" msgstr "" #: ../bonobo/bonobo-zoomable.c:369 msgid "Is continuous" msgstr "" #: ../bonobo/bonobo-zoomable.c:370 msgid "Whether we zoom continuously (as opposed to jumps)" msgstr "" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:1 msgid "About this application" msgstr "ስለዚህ ፕሮግራም" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:2 msgid "Select" msgstr "ምረጥ" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:3 msgid "_About..." msgstr "ስለ... (_A)" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:4 msgid "_Edit" msgstr "አስተካክል (_E)" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:5 #: ../tools/browser/bonobo-browser.xml.h:4 msgid "_File" msgstr "_ፋይል (_F)" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:6 msgid "_Select" msgstr "ምረጥ (_S)" #: ../samples/bonoboui/hello.c:63 msgid "This does nothing; it is only a demonstration." msgstr "" #: ../samples/bonoboui/hello.c:145 msgid "BonoboUI-Hello." msgstr "የBonoboUI ሰላምታ" #: ../samples/bonoboui/hello.c:217 msgid "Gnome Hello" msgstr "የኖም ሰላምታ" #. Create Label and put it in the Button: #: ../samples/bonoboui/hello.c:272 msgid "Hello, World!" msgstr "ሠላም ዓለም!" #: ../samples/bonoboui/hello.c:312 msgid "Cannot init libbonoboui code" msgstr "" #: ../samples/controls/bonobo-sample-controls.c:131 msgid "Could not initialize Bonobo UI" msgstr "" #: ../tools/browser/bonobo-browser.desktop.in.h:1 msgid "Bonobo Component Browser" msgstr "" #: ../tools/browser/bonobo-browser.desktop.in.h:2 msgid "Shows available Bonobo components" msgstr "" #: ../tools/browser/bonobo-browser.xml.h:1 #, fuzzy msgid "About this program..." msgstr "ስለዚህ ፕሮግራም" #: ../tools/browser/bonobo-browser.xml.h:2 msgid "Close the current window" msgstr "" #: ../tools/browser/bonobo-browser.xml.h:3 msgid "Open a new window" msgstr "" #: ../tools/browser/bonobo-browser.xml.h:5 #, fuzzy msgid "_Help" msgstr "ደብቅ (_H)" #. Build the general tab #: ../tools/browser/component-details.c:109 msgid "General" msgstr "" #: ../tools/browser/component-details.c:116 #: ../tools/browser/component-list.c:401 msgid "IID" msgstr "" #: ../tools/browser/component-details.c:117 msgid "Location" msgstr "" #. Build the details tab #: ../tools/browser/component-details.c:167 msgid "Details" msgstr "" #: ../tools/browser/component-details.c:168 msgid "Detailed Information" msgstr "" #: ../tools/browser/component-list.c:370 ../tools/browser/window.c:290 msgid "Active" msgstr "" #: ../tools/browser/component-list.c:391 msgid "Type" msgstr "" #: ../tools/browser/window.c:170 msgid "Component Details" msgstr "" #: ../tools/browser/window.c:215 msgid "Bonobo Browser" msgstr "" #: ../tools/browser/window.c:216 msgid "Copyright 2001, The GNOME Foundation" msgstr "" #: ../tools/browser/window.c:217 msgid "Bonobo component browser" msgstr "" #. create the window #: ../tools/browser/window.c:247 msgid "Component Browser" msgstr "" #. Fill out the tool bar #: ../tools/browser/window.c:287 msgid "All" msgstr "" #: ../tools/browser/window.c:293 msgid "Inactive" msgstr "" libbonoboui-2.24.5/po/az.po0000644000076400007640000003131411173072741012435 00000000000000# libbonoboui faylınınn Azərbaycan dilinə tərcüməsi # Copyright (C) 2001 Free Software Foundation, Inc. # Mətin Əmirov , 2001. # msgid "" msgstr "" "Project-Id-Version: libbonoboui 1.107.0\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2005-09-10 18:44+0200\n" "PO-Revision-Date: 2003-06-22 17:52+0200\n" "Last-Translator: Mətin Əmirov \n" "Language-Team: Azerbaijani Turkic \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../bonobo/bonobo-canvas-item.c:683 msgid "corba factory" msgstr "cobra e'malatxanası" #: ../bonobo/bonobo-canvas-item.c:684 msgid "The factory pointer" msgstr "e'malatxana oxu" #: ../bonobo/bonobo-canvas-item.c:693 msgid "corba UI container" msgstr "corba UI daşıyıcısı" #: ../bonobo/bonobo-canvas-item.c:694 msgid "The User interface container" msgstr "İstifadəçi ara üzü daşıyıcısı" #: ../bonobo/bonobo-dock-item-grip.c:257 msgid "Dock the toolbar" msgstr "Ləvazimat çubuğunu yapışdır" #: ../bonobo/bonobo-dock-item-grip.c:258 #, fuzzy msgid "Undock the toolbar" msgstr "Ləvazimat çubuğunu qopart" #: ../bonobo/bonobo-dock-item.c:235 ../bonobo/bonobo-dock-item.c:236 #: ../bonobo/bonobo-ui-toolbar.c:1175 msgid "Shadow type" msgstr "Kölgələmə növü" #: ../bonobo/bonobo-dock-item.c:246 ../bonobo/bonobo-dock-item.c:247 #: ../bonobo/bonobo-ui-toolbar.c:1119 ../bonobo/bonobo-ui-toolbar.c:1120 msgid "Orientation" msgstr "İstiqamət" #: ../bonobo/bonobo-dock-item.c:257 ../bonobo/bonobo-dock-item.c:258 #: ../bonobo/bonobo-ui-toolbar.c:1138 ../bonobo/bonobo-ui-toolbar.c:1139 msgid "Preferred width" msgstr "Seçilən en" #: ../bonobo/bonobo-dock-item.c:266 ../bonobo/bonobo-dock-item.c:267 #: ../bonobo/bonobo-ui-toolbar.c:1147 ../bonobo/bonobo-ui-toolbar.c:1148 msgid "Preferred height" msgstr "Seçilən hündürlük" #: ../bonobo/bonobo-file-selector-util.c:357 msgid "Select a file to open" msgstr "Açılacaq faylı seçin" #: ../bonobo/bonobo-file-selector-util.c:385 msgid "Select files to open" msgstr "Açılacaq faylları seçin" #: ../bonobo/bonobo-file-selector-util.c:414 msgid "Select a filename to save" msgstr "Qeyd ediləcək fayl adlarını seçin" #: ../bonobo/bonobo-plug.c:425 msgid "Event Forwarding" msgstr "Hadisə Ötürmə" #: ../bonobo/bonobo-plug.c:426 msgid "Whether X events should be forwarded" msgstr "X hadisələri ötürülsün ya yox" #: ../bonobo/bonobo-selector-widget.c:302 ../bonobo/bonobo-window.c:346 #: ../tools/browser/component-details.c:114 #: ../tools/browser/component-list.c:381 msgid "Name" msgstr "Ad" #: ../bonobo/bonobo-selector-widget.c:324 #: ../tools/browser/component-details.c:115 msgid "Description" msgstr "İzahat" #: ../bonobo/bonobo-selector.c:345 msgid "Interfaces required" msgstr "Ara üz məcburidir" #: ../bonobo/bonobo-selector.c:346 msgid "" "A NULL-terminated array of interfaces which a server must support in order " "to be listed in the selector. Defaults to \"IDL:Bonobo/Embeddable:1.0\" if " "no interfaces are listed" msgstr "" "Vericinin seçicidəki siyahıda olması üçün dəstəkləməsi məcbur olan ara üzlər " "qatarını NULL - sonlandırıb. Əgər heç bir ara üz siyahıda yoxdursa əsas " "\"IDL:Bonobo/Embeddable:1.0\" -a dəyiş" #: ../bonobo/bonobo-selector.c:348 msgid "Interface required entry" msgstr "Ara üz girişi məcbur qıldı" #: ../bonobo/bonobo-selector.c:349 msgid "One of the interfaces that's required" msgstr "Məcburi olan ara üzlərdən biri" #: ../bonobo/bonobo-ui-config-widget.c:268 msgid "Visible" msgstr "Görünən" #: ../bonobo/bonobo-ui-config-widget.c:275 msgid "_Show" msgstr "_Göstər" #: ../bonobo/bonobo-ui-config-widget.c:282 msgid "_Hide" msgstr "_Gizlət" #: ../bonobo/bonobo-ui-config-widget.c:288 msgid "_View tooltips" msgstr "_İpuclarını göstər" #: ../bonobo/bonobo-ui-config-widget.c:293 msgid "Toolbars" msgstr "Ləvazimat çubuqları" #: ../bonobo/bonobo-ui-config-widget.c:303 msgid "toolbars" msgstr "Ləvazimat çubuqları" #: ../bonobo/bonobo-ui-config-widget.c:314 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "Look" msgstr "Bax" #: ../bonobo/bonobo-ui-config-widget.c:323 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "_Icon" msgstr "_Timsal" #: ../bonobo/bonobo-ui-config-widget.c:329 msgid "_Text and Icon" msgstr "_Mətn və Timsal" #: ../bonobo/bonobo-ui-config-widget.c:335 msgid "Text only" msgstr "Ancaq mətn" #: ../bonobo/bonobo-ui-config-widget.c:341 msgid "_Priority text only" msgstr "Təkcə _üstünlük mətni" #: ../bonobo/bonobo-ui-engine.c:90 msgid "Debug" msgstr "Xəta Ayıqlama" #: ../bonobo/bonobo-ui-engine.c:90 msgid "_Dump XML" msgstr "XML _Nüsxəsi" #: ../bonobo/bonobo-ui-engine.c:91 msgid "Dump the entire UI's XML description to the console" msgstr "Bütün Qrafiki Ara Üzün XML nüsxəsini konsola yaz" #: ../bonobo/bonobo-ui-engine-config.c:522 msgid "Configure UI" msgstr "UIni Quraşdır" #: ../bonobo/bonobo-ui-init-gtk.c:113 msgid "Gdk debugging flags to set" msgstr "Seçiləcək Gtk xəta alqılama bayraqları" #: ../bonobo/bonobo-ui-init-gtk.c:113 ../bonobo/bonobo-ui-init-gtk.c:116 #: ../bonobo/bonobo-ui-init-gtk.c:144 ../bonobo/bonobo-ui-init-gtk.c:147 msgid "FLAGS" msgstr "BAYRAQLAR" #: ../bonobo/bonobo-ui-init-gtk.c:116 msgid "Gdk debugging flags to unset" msgstr "Seçimi geri alınacaq Gtk xəta alqılama bayraqları" #: ../bonobo/bonobo-ui-init-gtk.c:120 msgid "X display to use" msgstr "İstifadə ediləcək X displeyi" #: ../bonobo/bonobo-ui-init-gtk.c:120 msgid "DISPLAY" msgstr "EKRAN" #: ../bonobo/bonobo-ui-init-gtk.c:124 msgid "X screen to use" msgstr "İstifadə ediləcək X ekranı" #: ../bonobo/bonobo-ui-init-gtk.c:124 msgid "SCREEN" msgstr "EKRAN" #: ../bonobo/bonobo-ui-init-gtk.c:128 msgid "Make X calls synchronous" msgstr "X çağrılarını sinxronlaşdır" #: ../bonobo/bonobo-ui-init-gtk.c:134 msgid "Don't use X shared memory extension" msgstr "Paylaştırılmış X yaddaşı genişlənməsini işlədmə" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "Program name as used by the window manager" msgstr "Pəncərə idarəçisi tərəfindən işlədilən şəkildə proqram adı" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "NAME" msgstr "AD" #: ../bonobo/bonobo-ui-init-gtk.c:141 msgid "Program class as used by the window manager" msgstr "Pəncərə idarəçisi tərəfindən işlədilən şəkildə proqram sinifi" #: ../bonobo/bonobo-ui-init-gtk.c:141 msgid "CLASS" msgstr "SİNİF" #: ../bonobo/bonobo-ui-init-gtk.c:144 msgid "Gtk+ debugging flags to set" msgstr "Seçiləcək Gtk+ xəta alqılama bayraqları" #: ../bonobo/bonobo-ui-init-gtk.c:147 msgid "Gtk+ debugging flags to unset" msgstr "Seçimi geri alınacaq Gtk+ xəta alqılama bayraqları" #: ../bonobo/bonobo-ui-init-gtk.c:150 msgid "Make all warnings fatal" msgstr "Bütün xətaları ölümcül et" #: ../bonobo/bonobo-ui-init-gtk.c:153 msgid "Load an additional Gtk module" msgstr "Əlavə Gtk modulu yüklə" #: ../bonobo/bonobo-ui-init-gtk.c:153 msgid "MODULE" msgstr "MODUL" #: ../bonobo/bonobo-ui-init-gtk.c:162 msgid "GTK+" msgstr "GTK+" #: ../bonobo/bonobo-ui-main.c:278 msgid "Bonobo GUI support" msgstr "Bonobo GUI dəstəyi" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "B_oth" msgstr "_Hər İkisi" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "T_ext" msgstr "M_ətn" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Hide t_ips" msgstr "İ_puclarını gizlət" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Show t_ips" msgstr "İ_puclarını göstər" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "_Hide toolbar" msgstr "Ləvazimat çubuğunu _Gizlət" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "Customi_ze" msgstr "Xü_susiləşdir" #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Customize the toolbar" msgstr "Ləvazimat çubuğunu xüsusiləşdir" #: ../bonobo/bonobo-ui-toolbar.c:1129 msgid "is floating" msgstr "üzür" #: ../bonobo/bonobo-ui-toolbar.c:1130 msgid "whether the toolbar is floating" msgstr "Ləvazimat çubuğu üzsün ya yox" #: ../bonobo/bonobo-ui-toolbar.c:1176 msgid "Style of bevel around the toolbar" msgstr "Ləvazimat çubuğunun ətrafındakı qabartma tərzi" #: ../bonobo/bonobo-ui-util.c:630 msgid "_Contents" msgstr "_Məzmun" #: ../bonobo/bonobo-ui-util.c:631 msgid "View help for this application" msgstr "Bu proqram üçün yardımı göstər" #: ../bonobo/bonobo-window.c:347 msgid "Name of the window - used for configuration serialization." msgstr "Pəncərə adı - quraşdırma seriallaşdırması üçün işlədilir." #: ../bonobo/bonobo-zoomable.c:326 msgid "Zoom level" msgstr "Yaxınlıq səviyyəsi" #: ../bonobo/bonobo-zoomable.c:327 msgid "The degree of enlargment" msgstr "Böyütmə dərəcəsi" #: ../bonobo/bonobo-zoomable.c:335 msgid "Minimum Zoom level" msgstr "Ən Az Yaxınlıq səviyyəsi" #: ../bonobo/bonobo-zoomable.c:336 msgid "The minimum degree of enlargment" msgstr "Böyütmənin ən az dərəcəsi" #: ../bonobo/bonobo-zoomable.c:344 msgid "Maximum Zoom level" msgstr "Ən Çox Yaxınlıq səviyyəsi" #: ../bonobo/bonobo-zoomable.c:345 msgid "The maximum degree of enlargment" msgstr "Böyütmənin ən böyük dərəcəsi" #: ../bonobo/bonobo-zoomable.c:353 msgid "Has a minimum Zoom level" msgstr "Ən az yaxınlıq səviyyəsinə malikdir" #: ../bonobo/bonobo-zoomable.c:354 msgid "Whether we have a valid minimum zoom level" msgstr "Hökmlü ən kiçik yaxınlıq səviyyəsi yeri" #: ../bonobo/bonobo-zoomable.c:361 msgid "Has a maximum Zoom level" msgstr "Ən Çox Yaxınlıq səviyyəsinə malikdir" #: ../bonobo/bonobo-zoomable.c:362 msgid "Whether we have a valid maximum zoom level" msgstr "Hökmlü ən böyük yaxınlıq səviyyəsi yeri" #: ../bonobo/bonobo-zoomable.c:369 msgid "Is continuous" msgstr "Davamlıdır" #: ../bonobo/bonobo-zoomable.c:370 msgid "Whether we zoom continuously (as opposed to jumps)" msgstr "Yaxlnlığın davamiyyəti" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:1 msgid "About this application" msgstr "Bu proqram haqqında" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:2 msgid "Select" msgstr "Seç" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:3 msgid "_About..." msgstr "_Haqqında..." #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:4 msgid "_Edit" msgstr "_Düzəlt" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:5 #: ../tools/browser/bonobo-browser.xml.h:4 msgid "_File" msgstr "_Fayl" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:6 msgid "_Select" msgstr "_Seç" #: ../samples/bonoboui/hello.c:63 msgid "This does nothing; it is only a demonstration." msgstr "Bir şey etmir; təkcə nümayişdir." #: ../samples/bonoboui/hello.c:145 msgid "BonoboUI-Hello." msgstr "BonoboUI-Hello." #: ../samples/bonoboui/hello.c:217 msgid "Gnome Hello" msgstr "Gnome Hello" #. Create Label and put it in the Button: #: ../samples/bonoboui/hello.c:272 msgid "Hello, World!" msgstr "Xoş Gördük, Dünya!" #: ../samples/bonoboui/hello.c:312 msgid "Cannot init libbonoboui code" msgstr "libbononoui kodu init edilə bilmir" #: ../samples/controls/bonobo-sample-controls.c:131 msgid "Could not initialize Bonobo UI" msgstr "Bonobo UI başladıla bilmədi" #: ../tools/browser/bonobo-browser.desktop.in.h:1 msgid "Bonobo Component Browser" msgstr "" #: ../tools/browser/bonobo-browser.desktop.in.h:2 msgid "Shows available Bonobo components" msgstr "" #: ../tools/browser/bonobo-browser.xml.h:1 #, fuzzy msgid "About this program..." msgstr "Bu proqram haqqında" #: ../tools/browser/bonobo-browser.xml.h:2 msgid "Close the current window" msgstr "" #: ../tools/browser/bonobo-browser.xml.h:3 msgid "Open a new window" msgstr "" #: ../tools/browser/bonobo-browser.xml.h:5 #, fuzzy msgid "_Help" msgstr "_Gizlət" #. Build the general tab #: ../tools/browser/component-details.c:109 msgid "General" msgstr "" #: ../tools/browser/component-details.c:116 #: ../tools/browser/component-list.c:401 msgid "IID" msgstr "" #: ../tools/browser/component-details.c:117 msgid "Location" msgstr "" #. Build the details tab #: ../tools/browser/component-details.c:167 msgid "Details" msgstr "" #: ../tools/browser/component-details.c:168 msgid "Detailed Information" msgstr "" #: ../tools/browser/component-list.c:370 ../tools/browser/window.c:290 msgid "Active" msgstr "" #: ../tools/browser/component-list.c:391 msgid "Type" msgstr "" #: ../tools/browser/window.c:170 msgid "Component Details" msgstr "" #: ../tools/browser/window.c:215 msgid "Bonobo Browser" msgstr "" #: ../tools/browser/window.c:216 msgid "Copyright 2001, The GNOME Foundation" msgstr "" #: ../tools/browser/window.c:217 msgid "Bonobo component browser" msgstr "" #. create the window #: ../tools/browser/window.c:247 msgid "Component Browser" msgstr "" #. Fill out the tool bar #: ../tools/browser/window.c:287 msgid "All" msgstr "" #: ../tools/browser/window.c:293 msgid "Inactive" msgstr "" libbonoboui-2.24.5/po/sr@ije.po0000644000076400007640000003502411173072741013241 00000000000000# Serbian translation of libbonoboui # Courtesy of Prevod.org team (http://www.prevod.org/) -- 2003, 2004. # # This file is distributed under the same license as the libbonoboui package. # # Maintainer: Вељко М. Станојевић # Reviewed on 2004-02-03 by: Данило Шеган # msgid "" msgstr "" "Project-Id-Version: libbonoboui\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2005-09-10 18:44+0200\n" "PO-Revision-Date: 2004-02-16 19:48+0100\n" "Last-Translator: Bojan Suzic \n" "Language-Team: Serbian (sr) \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../bonobo/bonobo-canvas-item.c:683 msgid "corba factory" msgstr "corba творница" #: ../bonobo/bonobo-canvas-item.c:684 msgid "The factory pointer" msgstr "Показивач творнице" #: ../bonobo/bonobo-canvas-item.c:693 msgid "corba UI container" msgstr "садржалац corba корисничког сучеља" #: ../bonobo/bonobo-canvas-item.c:694 msgid "The User interface container" msgstr "Садржалац корисничког сучеља" #: ../bonobo/bonobo-dock-item-grip.c:257 msgid "Dock the toolbar" msgstr "Прикачи траку са алатима" #: ../bonobo/bonobo-dock-item-grip.c:258 #, fuzzy msgid "Undock the toolbar" msgstr "Откачи траку са алатима" #: ../bonobo/bonobo-dock-item.c:235 ../bonobo/bonobo-dock-item.c:236 #: ../bonobo/bonobo-ui-toolbar.c:1175 msgid "Shadow type" msgstr "Врста сјенке" #: ../bonobo/bonobo-dock-item.c:246 ../bonobo/bonobo-dock-item.c:247 #: ../bonobo/bonobo-ui-toolbar.c:1119 ../bonobo/bonobo-ui-toolbar.c:1120 msgid "Orientation" msgstr "Усмерење" #: ../bonobo/bonobo-dock-item.c:257 ../bonobo/bonobo-dock-item.c:258 #: ../bonobo/bonobo-ui-toolbar.c:1138 ../bonobo/bonobo-ui-toolbar.c:1139 msgid "Preferred width" msgstr "Жељена ширина" #: ../bonobo/bonobo-dock-item.c:266 ../bonobo/bonobo-dock-item.c:267 #: ../bonobo/bonobo-ui-toolbar.c:1147 ../bonobo/bonobo-ui-toolbar.c:1148 msgid "Preferred height" msgstr "Жељена висина" #: ../bonobo/bonobo-file-selector-util.c:357 msgid "Select a file to open" msgstr "Одаберите датотеку за отварање" #: ../bonobo/bonobo-file-selector-util.c:385 msgid "Select files to open" msgstr "Одаберите датотеке за отварање" #: ../bonobo/bonobo-file-selector-util.c:414 msgid "Select a filename to save" msgstr "Одаберите име датотеке за снимање" #: ../bonobo/bonobo-plug.c:425 msgid "Event Forwarding" msgstr "Прослеђивање догађаја" #: ../bonobo/bonobo-plug.c:426 msgid "Whether X events should be forwarded" msgstr "Да ли треба проследити Икс догађаје" #: ../bonobo/bonobo-selector-widget.c:302 ../bonobo/bonobo-window.c:346 #: ../tools/browser/component-details.c:114 #: ../tools/browser/component-list.c:381 msgid "Name" msgstr "Име" #: ../bonobo/bonobo-selector-widget.c:324 #: ../tools/browser/component-details.c:115 msgid "Description" msgstr "Опис" #: ../bonobo/bonobo-selector.c:345 msgid "Interfaces required" msgstr "Неопходне спреге" #: ../bonobo/bonobo-selector.c:346 msgid "" "A NULL-terminated array of interfaces which a server must support in order " "to be listed in the selector. Defaults to \"IDL:Bonobo/Embeddable:1.0\" if " "no interfaces are listed" msgstr "" "Празном ниском (NULL) завршени низ спрега које сервер мора подржавати да би " "био наведен у избирачу. Подразумјевана вриједност је „IDL:Bonobo/" "Embeddable:1.0“ уколико ниједна спрега није наведена" #: ../bonobo/bonobo-selector.c:348 msgid "Interface required entry" msgstr "Упис неопходне спреге" #: ../bonobo/bonobo-selector.c:349 msgid "One of the interfaces that's required" msgstr "Једна од неопходних спрега" #: ../bonobo/bonobo-ui-config-widget.c:268 msgid "Visible" msgstr "Видљиво" #: ../bonobo/bonobo-ui-config-widget.c:275 msgid "_Show" msgstr "_Прикажи" #: ../bonobo/bonobo-ui-config-widget.c:282 msgid "_Hide" msgstr "_Сакриј" # tooltip -> облачић #: ../bonobo/bonobo-ui-config-widget.c:288 msgid "_View tooltips" msgstr "По_гледај савјете" #: ../bonobo/bonobo-ui-config-widget.c:293 msgid "Toolbars" msgstr "Траке са алатима" #: ../bonobo/bonobo-ui-config-widget.c:303 msgid "toolbars" msgstr "траке са алатима" #: ../bonobo/bonobo-ui-config-widget.c:314 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "Look" msgstr "Изглед" #: ../bonobo/bonobo-ui-config-widget.c:323 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "_Icon" msgstr "_Икона" #: ../bonobo/bonobo-ui-config-widget.c:329 msgid "_Text and Icon" msgstr "_Текст и икона" #: ../bonobo/bonobo-ui-config-widget.c:335 msgid "Text only" msgstr "Само текст" #: ../bonobo/bonobo-ui-config-widget.c:341 msgid "_Priority text only" msgstr "Само _важан текст" #: ../bonobo/bonobo-ui-engine.c:90 msgid "Debug" msgstr "Отклањање грешака" #: ../bonobo/bonobo-ui-engine.c:90 msgid "_Dump XML" msgstr "Из_баци XML" #: ../bonobo/bonobo-ui-engine.c:91 msgid "Dump the entire UI's XML description to the console" msgstr "Избаци сав опис корисничког сучеља као XML на конзолу" #: ../bonobo/bonobo-ui-engine-config.c:522 msgid "Configure UI" msgstr "Подешавање корисничког сучеља" #: ../bonobo/bonobo-ui-init-gtk.c:113 msgid "Gdk debugging flags to set" msgstr "Које Гдк заставице за отклањање грешки поставити" #: ../bonobo/bonobo-ui-init-gtk.c:113 ../bonobo/bonobo-ui-init-gtk.c:116 #: ../bonobo/bonobo-ui-init-gtk.c:144 ../bonobo/bonobo-ui-init-gtk.c:147 msgid "FLAGS" msgstr "АРГУМЕНТИ" #: ../bonobo/bonobo-ui-init-gtk.c:116 msgid "Gdk debugging flags to unset" msgstr "Које Гдк аргументе за отклањање грешки склонити" #: ../bonobo/bonobo-ui-init-gtk.c:120 msgid "X display to use" msgstr "Који Икс монитор користити" #: ../bonobo/bonobo-ui-init-gtk.c:120 msgid "DISPLAY" msgstr "МОНИТОР" #: ../bonobo/bonobo-ui-init-gtk.c:124 msgid "X screen to use" msgstr "Икс екран који ће се користити" #: ../bonobo/bonobo-ui-init-gtk.c:124 msgid "SCREEN" msgstr "ЕКРАН" #: ../bonobo/bonobo-ui-init-gtk.c:128 msgid "Make X calls synchronous" msgstr "Усклади Икс позиве" #: ../bonobo/bonobo-ui-init-gtk.c:134 msgid "Don't use X shared memory extension" msgstr "Не користи проширење за дијељену меморију Икса" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "Program name as used by the window manager" msgstr "Назив програма који користи управљач прозорима" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "NAME" msgstr "НАЗИВ" #: ../bonobo/bonobo-ui-init-gtk.c:141 msgid "Program class as used by the window manager" msgstr "Класа програма коју користи управљач прозорима" #: ../bonobo/bonobo-ui-init-gtk.c:141 msgid "CLASS" msgstr "КЛАСА" #: ../bonobo/bonobo-ui-init-gtk.c:144 msgid "Gtk+ debugging flags to set" msgstr "Које Гтк+ заставице за отклањање грешки поставити" #: ../bonobo/bonobo-ui-init-gtk.c:147 msgid "Gtk+ debugging flags to unset" msgstr "Које Гтк+ заставице за отклањање грешки склонити" #: ../bonobo/bonobo-ui-init-gtk.c:150 msgid "Make all warnings fatal" msgstr "Учини сва упозорења кобним" #: ../bonobo/bonobo-ui-init-gtk.c:153 msgid "Load an additional Gtk module" msgstr "Учитај додатни Гтк модул" #: ../bonobo/bonobo-ui-init-gtk.c:153 msgid "MODULE" msgstr "МОДУЛ" #: ../bonobo/bonobo-ui-init-gtk.c:162 msgid "GTK+" msgstr "ГТК+" #: ../bonobo/bonobo-ui-main.c:278 msgid "Bonobo GUI support" msgstr "Бонобо подршка за графичко корисничко сучеље" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "B_oth" msgstr "_Оба" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "T_ext" msgstr "Т_екст" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Hide t_ips" msgstr "Сакриј с_авјете" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Show t_ips" msgstr "Прикажи са_вјете" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "_Hide toolbar" msgstr "_Сакриј траку са алатима" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "Customi_ze" msgstr "Прила_годи" #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Customize the toolbar" msgstr "Прилагоди траку са алатима" #: ../bonobo/bonobo-ui-toolbar.c:1129 msgid "is floating" msgstr "је плутајућа" #: ../bonobo/bonobo-ui-toolbar.c:1130 msgid "whether the toolbar is floating" msgstr "да ли је трака са алатима плутајућа" #: ../bonobo/bonobo-ui-toolbar.c:1176 msgid "Style of bevel around the toolbar" msgstr "Изглед косе ивице око траке са алатима" #: ../bonobo/bonobo-ui-util.c:630 msgid "_Contents" msgstr "_Садржај" #: ../bonobo/bonobo-ui-util.c:631 msgid "View help for this application" msgstr "Погледај помоћ за овај програм" #: ../bonobo/bonobo-window.c:347 msgid "Name of the window - used for configuration serialization." msgstr "Назив прозора — користи се за серијализацију подешавања." #: ../bonobo/bonobo-zoomable.c:326 msgid "Zoom level" msgstr "Ниво увећања" #: ../bonobo/bonobo-zoomable.c:327 msgid "The degree of enlargment" msgstr "Степен увећања" #: ../bonobo/bonobo-zoomable.c:335 msgid "Minimum Zoom level" msgstr "Најмањи ниво увећања" #: ../bonobo/bonobo-zoomable.c:336 msgid "The minimum degree of enlargment" msgstr "Најмањи степен увећања" #: ../bonobo/bonobo-zoomable.c:344 msgid "Maximum Zoom level" msgstr "Највећи ниво увећања" #: ../bonobo/bonobo-zoomable.c:345 msgid "The maximum degree of enlargment" msgstr "Највећи степен увећања" #: ../bonobo/bonobo-zoomable.c:353 msgid "Has a minimum Zoom level" msgstr "Има најнижи ниво увеличања" #: ../bonobo/bonobo-zoomable.c:354 msgid "Whether we have a valid minimum zoom level" msgstr "Да ли имамо исправан најмањи ниво увећања" #: ../bonobo/bonobo-zoomable.c:361 msgid "Has a maximum Zoom level" msgstr "Има највећи ниво увећања" #: ../bonobo/bonobo-zoomable.c:362 msgid "Whether we have a valid maximum zoom level" msgstr "Да ли имамо исправан највећи ниво увећања" #: ../bonobo/bonobo-zoomable.c:369 msgid "Is continuous" msgstr "Непрекидан је" #: ../bonobo/bonobo-zoomable.c:370 msgid "Whether we zoom continuously (as opposed to jumps)" msgstr "Да ли непрекидно увећавамо и умањујемо (насупрот по корацима)" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:1 msgid "About this application" msgstr "О овом програму" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:2 msgid "Select" msgstr "Одабери" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:3 msgid "_About..." msgstr "_О програму..." #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:4 msgid "_Edit" msgstr "_Уређивање" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:5 #: ../tools/browser/bonobo-browser.xml.h:4 msgid "_File" msgstr "_Датотека" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:6 msgid "_Select" msgstr "Ода_бери" # Свиђа ми се „пука“, свака част Вељко ;) — Данило #: ../samples/bonoboui/hello.c:63 msgid "This does nothing; it is only a demonstration." msgstr "Ово не ради ништа, пука демонстрација." #: ../samples/bonoboui/hello.c:145 msgid "BonoboUI-Hello." msgstr "BonoboUI поздрав" #: ../samples/bonoboui/hello.c:217 msgid "Gnome Hello" msgstr "Поздрав Гнома" #. Create Label and put it in the Button: #: ../samples/bonoboui/hello.c:272 msgid "Hello, World!" msgstr "Здраво свијете!" #: ../samples/bonoboui/hello.c:312 msgid "Cannot init libbonoboui code" msgstr "Не могу да покренем код libbonoboui-а" #: ../samples/controls/bonobo-sample-controls.c:131 msgid "Could not initialize Bonobo UI" msgstr "Неуспјело покретање Бонобо графичког сучеља" #: ../tools/browser/bonobo-browser.desktop.in.h:1 msgid "Bonobo Component Browser" msgstr "" #: ../tools/browser/bonobo-browser.desktop.in.h:2 msgid "Shows available Bonobo components" msgstr "" #: ../tools/browser/bonobo-browser.xml.h:1 #, fuzzy msgid "About this program..." msgstr "О овом програму" #: ../tools/browser/bonobo-browser.xml.h:2 msgid "Close the current window" msgstr "" #: ../tools/browser/bonobo-browser.xml.h:3 msgid "Open a new window" msgstr "" #: ../tools/browser/bonobo-browser.xml.h:5 #, fuzzy msgid "_Help" msgstr "_Сакриј" #. Build the general tab #: ../tools/browser/component-details.c:109 msgid "General" msgstr "" #: ../tools/browser/component-details.c:116 #: ../tools/browser/component-list.c:401 msgid "IID" msgstr "" #: ../tools/browser/component-details.c:117 msgid "Location" msgstr "" #. Build the details tab #: ../tools/browser/component-details.c:167 msgid "Details" msgstr "" #: ../tools/browser/component-details.c:168 msgid "Detailed Information" msgstr "" #: ../tools/browser/component-list.c:370 ../tools/browser/window.c:290 msgid "Active" msgstr "" #: ../tools/browser/component-list.c:391 msgid "Type" msgstr "" #: ../tools/browser/window.c:170 msgid "Component Details" msgstr "" #: ../tools/browser/window.c:215 msgid "Bonobo Browser" msgstr "" #: ../tools/browser/window.c:216 msgid "Copyright 2001, The GNOME Foundation" msgstr "" #: ../tools/browser/window.c:217 msgid "Bonobo component browser" msgstr "" #. create the window #: ../tools/browser/window.c:247 msgid "Component Browser" msgstr "" #. Fill out the tool bar #: ../tools/browser/window.c:287 msgid "All" msgstr "" #: ../tools/browser/window.c:293 msgid "Inactive" msgstr "" libbonoboui-2.24.5/po/as.po0000644000076400007640000004230311173072741012426 00000000000000# translation of as.po to Assamese # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # # Amitakhya Phukan , 2008. msgid "" msgstr "" "Project-Id-Version: as\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2008-02-05 03:49+0000\n" "PO-Revision-Date: 2008-02-05 17:13+0530\n" "Last-Translator: Amitakhya Phukan \n" "Language-Team: Assamese\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Generator: KBabel 1.11.4\n" "Plural-Forms: nplurals=2; plural=(n!=1)\n" #: ../bonobo/bonobo-canvas-item.c:680 msgid "corba factory" msgstr "corba কলঘৰ" #: ../bonobo/bonobo-canvas-item.c:681 msgid "The factory pointer" msgstr "কলঘৰ নিৰ্দেশক" #: ../bonobo/bonobo-canvas-item.c:690 msgid "corba UI container" msgstr "corba UI ধাৰণকাৰী" #: ../bonobo/bonobo-canvas-item.c:691 msgid "The User interface container" msgstr "ইউজাৰ ইন্টাৰফেস ধাৰণকাৰী" #: ../bonobo/bonobo-dock-item-grip.c:255 msgid "Dock the toolbar" msgstr "টুল-বাৰ সংযুক্ত কৰা হ'ব" #: ../bonobo/bonobo-dock-item-grip.c:256 msgid "Undock the toolbar" msgstr "টুল-বাৰ মুক্ত কৰা হ'ব" #: ../bonobo/bonobo-dock-item.c:228 ../bonobo/bonobo-dock-item.c:229 #: ../bonobo/bonobo-ui-toolbar.c:1161 msgid "Shadow type" msgstr "ছায়াৰ ধৰন" #: ../bonobo/bonobo-dock-item.c:239 ../bonobo/bonobo-dock-item.c:240 #: ../bonobo/bonobo-ui-toolbar.c:1105 ../bonobo/bonobo-ui-toolbar.c:1106 msgid "Orientation" msgstr "দিশ" #: ../bonobo/bonobo-dock-item.c:250 ../bonobo/bonobo-dock-item.c:251 #: ../bonobo/bonobo-ui-toolbar.c:1124 ../bonobo/bonobo-ui-toolbar.c:1125 msgid "Preferred width" msgstr "বাঞ্ছনীয় প্ৰস্থ" #: ../bonobo/bonobo-dock-item.c:259 ../bonobo/bonobo-dock-item.c:260 #: ../bonobo/bonobo-ui-toolbar.c:1133 ../bonobo/bonobo-ui-toolbar.c:1134 msgid "Preferred height" msgstr "বাঞ্ছনীয় উচ্চতা" #: ../bonobo/bonobo-file-selector-util.c:357 msgid "Select a file to open" msgstr "খোলা উদ্দেশ্যে নথিপত্ৰ নিৰ্ব্বাচন কৰক" #: ../bonobo/bonobo-file-selector-util.c:385 msgid "Select files to open" msgstr "খোলা উদ্দেশ্যে একাধিক নথিপত্ৰ নিৰ্ব্বাচন কৰক" #: ../bonobo/bonobo-file-selector-util.c:414 msgid "Select a filename to save" msgstr "সংৰক্ষণৰ বাবে নথিপত্ৰৰ নাম নিৰ্ব্বাচন কৰক" #: ../bonobo/bonobo-plug.c:423 msgid "Event Forwarding" msgstr "ইভেন্ট অনুবৰ্তন" #: ../bonobo/bonobo-plug.c:424 msgid "Whether X events should be forwarded" msgstr "X ইভেন্ট অনুবৰ্তন কৰা হ'ব নে নহয়" #: ../bonobo/bonobo-selector-widget.c:297 ../bonobo/bonobo-window.c:344 #: ../tools/browser/component-details.c:114 #: ../tools/browser/component-list.c:378 msgid "Name" msgstr "নাম" #: ../bonobo/bonobo-selector-widget.c:319 #: ../tools/browser/component-details.c:115 msgid "Description" msgstr "বিৱৰণ" #: ../bonobo/bonobo-selector.c:343 msgid "Interfaces required" msgstr "আৱশ্যক প্ৰেক্ষাপট" #: ../bonobo/bonobo-selector.c:344 msgid "" "A NULL-terminated array of interfaces which a server must support in order " "to be listed in the selector. Defaults to \"IDL:Bonobo/Embeddable:1.0\" if " "no interfaces are listed" msgstr "" "নিৰ্ব্বাচনৰ উদ্দেশ্যে তালিকাভুক্ত হোৱাৰ উদ্দেশ্যে সেৱকৰ দ্বাৰা সমৰ্থিত NULL-" "টাৰ্মিনেশন সহ ইন্টাৰফেসেৰ অ্যাৰে। কোনো ইন্টাৰফেসেৰ তালিকা উপস্থিত না থাকলে \"IDL:" "Bonobo/Embeddable:1.0\" ডিফল্ট মান প্ৰয়োগ কৰা হয়" #: ../bonobo/bonobo-selector.c:346 msgid "Interface required entry" msgstr "ইন্টাৰফেসেৰ ক্ষেত্ৰেৰ আৱশ্যক এন্ট্ৰি" #: ../bonobo/bonobo-selector.c:347 msgid "One of the interfaces that's required" msgstr "আৱশ্যক ইন্টাৰফেসেৰ মধ্যে একটি" #: ../bonobo/bonobo-ui-config-widget.c:265 msgid "Visible" msgstr "দৃশ্যমান" #: ../bonobo/bonobo-ui-config-widget.c:272 msgid "_Show" msgstr "প্ৰদৰ্শন কৰা হ'ব (_S)" #: ../bonobo/bonobo-ui-config-widget.c:279 msgid "_Hide" msgstr "আড়াল কৰা হ'ব (_H)" #: ../bonobo/bonobo-ui-config-widget.c:285 msgid "_View tooltips" msgstr "টুল-টিপ প্ৰদৰ্শন কৰা হ'ব (_V)" #: ../bonobo/bonobo-ui-config-widget.c:290 msgid "Toolbars" msgstr "টুলবাৰ" #: ../bonobo/bonobo-ui-config-widget.c:300 msgid "toolbars" msgstr "টুল-বাৰ" #: ../bonobo/bonobo-ui-config-widget.c:311 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "Look" msgstr "চেহাৰাছবি" #: ../bonobo/bonobo-ui-config-widget.c:320 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "_Icon" msgstr "প্ৰতীক (_I)" #: ../bonobo/bonobo-ui-config-widget.c:326 msgid "_Text and Icon" msgstr "টেক্সট ও প্ৰতীক (_T)" #: ../bonobo/bonobo-ui-config-widget.c:332 msgid "Text only" msgstr "শুধুমাত্ৰ টেক্সট" #: ../bonobo/bonobo-ui-config-widget.c:338 msgid "_Priority text only" msgstr "শুধুমাত্ৰ গুৰুত্বপূৰ্ণ টেক্সট (_P)" #: ../bonobo/bonobo-ui-engine.c:91 msgid "Debug" msgstr "ডিবাগ" #: ../bonobo/bonobo-ui-engine.c:91 msgid "_Dump XML" msgstr "XML ডাম্প কৰা হ'ব (_D)" #: ../bonobo/bonobo-ui-engine.c:92 msgid "Dump the entire UI's XML description to the console" msgstr "UI'ৰ সম্পূৰ্ণ XML বিবৰণ কনসোলে ডাম্প কৰা হ'ব" #: ../bonobo/bonobo-ui-engine-config.c:522 msgid "Configure UI" msgstr "UI কনফিগাৰ কৰক" #: ../bonobo/bonobo-ui-init-gtk.c:131 msgid "Gdk debugging flags to set" msgstr "Gdk ডিবাগ সংক্ৰান্ত নিৰ্ধাৰণযোগ্য ফ্ল্যাগ" #: ../bonobo/bonobo-ui-init-gtk.c:131 ../bonobo/bonobo-ui-init-gtk.c:134 #: ../bonobo/bonobo-ui-init-gtk.c:162 ../bonobo/bonobo-ui-init-gtk.c:165 msgid "FLAGS" msgstr "FLAGS" #: ../bonobo/bonobo-ui-init-gtk.c:134 msgid "Gdk debugging flags to unset" msgstr "Gdk ডিবাগ সংক্ৰান্ত যে সমস্ত ফ্ল্যাগেৰ মান বাতিল কৰা হ'ব" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "X display to use" msgstr "ব্যবহাৰেৰ উদ্দেশ্যে X ডিসপ্লে" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "DISPLAY" msgstr "DISPLAY" #: ../bonobo/bonobo-ui-init-gtk.c:142 msgid "X screen to use" msgstr "ব্যবহাৰেৰ উদ্দেশ্যে চিহ্নিত X পৰ্দা" #: ../bonobo/bonobo-ui-init-gtk.c:142 msgid "SCREEN" msgstr "SCREEN" #: ../bonobo/bonobo-ui-init-gtk.c:146 msgid "Make X calls synchronous" msgstr "X'এ সিঙ্ক্ৰোনাস কল কৰা হ'ব" #: ../bonobo/bonobo-ui-init-gtk.c:152 msgid "Don't use X shared memory extension" msgstr "X'ৰ শেয়াৰ্ড মেমৰি এক্সটেনশন ব্যবহাৰ কৰা হ'ব না" #: ../bonobo/bonobo-ui-init-gtk.c:156 msgid "Program name as used by the window manager" msgstr "উইন্ডো পৰিচালনব্যবস্থাৰ দ্বাৰা ব্যবহৃত প্ৰোগ্ৰামেৰ নাম" #: ../bonobo/bonobo-ui-init-gtk.c:156 msgid "NAME" msgstr "নাম" #: ../bonobo/bonobo-ui-init-gtk.c:159 msgid "Program class as used by the window manager" msgstr "উইন্ডো পৰিচালনব্যবস্থাৰ দ্বাৰা ব্যবহৃত প্ৰোগ্ৰামেৰ শ্ৰেণী" #: ../bonobo/bonobo-ui-init-gtk.c:159 msgid "CLASS" msgstr "CLASS" #: ../bonobo/bonobo-ui-init-gtk.c:162 msgid "Gtk+ debugging flags to set" msgstr "Gtk+ ডিবাগ সংক্ৰান্ত নিৰ্ধাৰণযোগ্য ফ্ল্যাগ" #: ../bonobo/bonobo-ui-init-gtk.c:165 msgid "Gtk+ debugging flags to unset" msgstr "Gtk+ ডিবাগ সংক্ৰান্ত যে সমস্ত ফ্ল্যাগেৰ মান বাতিল কৰা হ'ব" #: ../bonobo/bonobo-ui-init-gtk.c:168 msgid "Make all warnings fatal" msgstr "সকল সতৰ্কবাৰ্তা গুৰুগৰ ৰূপে চিহ্নিত হ'ব" #: ../bonobo/bonobo-ui-init-gtk.c:171 msgid "Load an additional Gtk module" msgstr "একটি অতিৰিক্ত Gtk মডিউল লোড কৰা হ'ব" #: ../bonobo/bonobo-ui-init-gtk.c:171 msgid "MODULE" msgstr "MODULE" #: ../bonobo/bonobo-ui-init-gtk.c:187 msgid "GTK+" msgstr "GTK+" #: ../bonobo/bonobo-ui-main.c:278 msgid "Bonobo GUI support" msgstr "Bonobo GUI সমৰ্থন ব্যবস্থা" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "B_oth" msgstr "উভয় (_o)" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "T_ext" msgstr "টেক্সট (_e)" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Hide t_ips" msgstr "টিপ আড়াল কৰা হ'ব (_i)" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Show t_ips" msgstr "টিপ প্ৰদৰ্শন কৰা হ'ব (_i)" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "_Hide toolbar" msgstr "টুল-বাৰ আড়াল কৰা হ'ব (_H)" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "Customi_ze" msgstr "স্বনিৰ্বাচিত বৈশিষ্ট্য (_z)" #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Customize the toolbar" msgstr "টুল-বাৰেৰ স্বনিৰ্বাচিত বৈশিষ্ট্য নিৰ্ধাৰণ" #: ../bonobo/bonobo-ui-toolbar.c:1115 msgid "is floating" msgstr "ভাসমান" #: ../bonobo/bonobo-ui-toolbar.c:1116 msgid "whether the toolbar is floating" msgstr "টুল-বাৰ ভাসমান নে নহয়" #: ../bonobo/bonobo-ui-toolbar.c:1162 msgid "Style of bevel around the toolbar" msgstr "টুল-বাৰেৰ চাৰপাশে বিভেলেৰ বিন্যাস" #: ../bonobo/bonobo-ui-util.c:601 msgid "Could not display help for this application" msgstr "উল্লিখিত সময় অবধি" #: ../bonobo/bonobo-ui-util.c:643 msgid "_Contents" msgstr "বিষয়বস্তু (_C)" #: ../bonobo/bonobo-ui-util.c:644 msgid "View help for this application" msgstr "অ্যাপ্লিকেশনেৰ সহায়তা দেখুন" #: ../bonobo/bonobo-window.c:345 msgid "Name of the window - used for configuration serialization." msgstr "উইন্ডোৰ নাম - ধাৰাবাহিক কনফিগাৰেশনেৰ ক্ষেত্ৰে ব্যবহৃত।" #: ../bonobo/bonobo-zoomable.c:326 msgid "Zoom level" msgstr "বড় কৰে প্ৰদৰ্শনেৰ মাত্ৰা" #: ../bonobo/bonobo-zoomable.c:327 msgid "The degree of enlargment" msgstr "সম্প্ৰসাৰণেৰ মাত্ৰা" #: ../bonobo/bonobo-zoomable.c:335 msgid "Minimum Zoom level" msgstr "প্ৰদৰ্শনেৰ সৰ্বনিম্ন মাপ" #: ../bonobo/bonobo-zoomable.c:336 msgid "The minimum degree of enlargment" msgstr "সম্প্ৰসাৰণেৰ সৰ্বনিম্ন মাত্ৰা" #: ../bonobo/bonobo-zoomable.c:344 msgid "Maximum Zoom level" msgstr "প্ৰদৰ্শনেৰ সৰ্বোচ্চ মাপ" #: ../bonobo/bonobo-zoomable.c:345 msgid "The maximum degree of enlargment" msgstr "সম্প্ৰসাৰণেৰ সৰ্বোচ্চ মাত্ৰা" #: ../bonobo/bonobo-zoomable.c:353 msgid "Has a minimum Zoom level" msgstr "সৰ্বনিম্ন প্ৰদৰ্শনেৰ মাত্ৰা উপস্থিত" #: ../bonobo/bonobo-zoomable.c:354 msgid "Whether we have a valid minimum zoom level" msgstr "প্ৰদৰ্শনেৰ সৰ্বনিম্ন বৈধ মাপ উপস্থিত ৰয়েছে নে নহয়" #: ../bonobo/bonobo-zoomable.c:361 msgid "Has a maximum Zoom level" msgstr "সৰ্বোচ্চ প্ৰদৰ্শনেৰ মাত্ৰা উপস্থিত" #: ../bonobo/bonobo-zoomable.c:362 msgid "Whether we have a valid maximum zoom level" msgstr "প্ৰদৰ্শনেৰ সৰ্বোচ্চ বৈধ মাপ উপস্থিত ৰয়েছে নে নহয়" #: ../bonobo/bonobo-zoomable.c:369 msgid "Is continuous" msgstr "ধাৰাবাহিক" #: ../bonobo/bonobo-zoomable.c:370 msgid "Whether we zoom continuously (as opposed to jumps)" msgstr "" "ধাৰাবাহিকৰূপে প্ৰদৰ্শনেৰ মাত্ৰা বৃদ্ধি কৰা হ'ব কি না (একযোগে অধিক পৰিমাণ বৃদ্ধিৰ " "পৰিবৰ্তে)" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:1 msgid "About this application" msgstr "অ্যাপ্লিকেশন পৰিচিতি" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:2 msgid "Select" msgstr "নিৰ্ব্বাচন কৰক" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:3 msgid "_About..." msgstr "পৰিচিতি...(_A)" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:4 msgid "_Edit" msgstr "সম্পাদনা (_E)" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:5 #: ../tools/browser/bonobo-browser.xml.h:4 msgid "_File" msgstr "নথিপত্ৰ (_F)" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:6 msgid "_Select" msgstr "নিৰ্ব্বাচন কৰক (_S)" #: ../samples/bonoboui/hello.c:63 msgid "This does nothing; it is only a demonstration." msgstr "এৰ দ্বাৰা কোনো কৰ্ম সঞ্চালিত হয় না; এটি মূলত মহড়া।" #: ../samples/bonoboui/hello.c:145 msgid "BonoboUI-Hello." msgstr "BonoboUI-Hello." #: ../samples/bonoboui/hello.c:217 msgid "Gnome Hello" msgstr "Gnome Hello" #. Create Label and put it in the Button: #: ../samples/bonoboui/hello.c:272 msgid "Hello, World!" msgstr "Hello, World!" #: ../samples/bonoboui/hello.c:312 msgid "Cannot init libbonoboui code" msgstr "libbonoboui কোড init কৰতে ব্যৰ্থ" #: ../samples/controls/bonobo-sample-controls.c:131 msgid "Could not initialize Bonobo UI" msgstr "Bonobo UI আৰম্ভ কৰতে ব্যৰ্থ" #: ../tools/browser/bonobo-browser.desktop.in.h:1 msgid "Bonobo Component Browser" msgstr "Bonobo Component Browser" #: ../tools/browser/bonobo-browser.desktop.in.h:2 msgid "Shows available Bonobo components" msgstr "উপলব্ধ Bonobo বস্তু প্ৰদৰ্শন কৰা হয়" #: ../tools/browser/bonobo-browser.xml.h:1 msgid "About this program..." msgstr "প্ৰোগ্ৰাম পৰিচিতি..." #: ../tools/browser/bonobo-browser.xml.h:2 msgid "Close the current window" msgstr "বৰ্তমান উইন্ডো বন্ধ কৰক" #: ../tools/browser/bonobo-browser.xml.h:3 msgid "Open a new window" msgstr "নতুন উইন্ডোতে খুলুন" #: ../tools/browser/bonobo-browser.xml.h:5 msgid "_Help" msgstr "সাহায্য (_H)" #. Build the general tab #: ../tools/browser/component-details.c:109 msgid "General" msgstr "সাধাৰণ" #: ../tools/browser/component-details.c:116 #: ../tools/browser/component-list.c:398 msgid "IID" msgstr "IID" #: ../tools/browser/component-details.c:117 msgid "Location" msgstr "অৱস্থান" #. Build the details tab #: ../tools/browser/component-details.c:167 msgid "Details" msgstr "বিবৰণ" #: ../tools/browser/component-details.c:168 msgid "Detailed Information" msgstr "বিস্তাৰিত তথ্য" #: ../tools/browser/component-list.c:367 ../tools/browser/window.c:283 msgid "Active" msgstr "সক্ৰিয়" #: ../tools/browser/component-list.c:388 msgid "Type" msgstr "ধৰন" #: ../tools/browser/window.c:162 msgid "Component Details" msgstr "বস্তুৰ বিবৰণ" #: ../tools/browser/window.c:208 msgid "Bonobo Browser" msgstr "Bonobo Browser" #: ../tools/browser/window.c:210 msgid "Copyright 2001, The GNOME Foundation" msgstr "স্বত্বাধিকাৰ ২০০১, GNOME Foundation" #: ../tools/browser/window.c:211 msgid "Bonobo component browser" msgstr "Bonobo component browser" #: ../tools/browser/window.c:214 msgid "translator-credits" msgstr "অমিতাক্ষ ফুকন (aphukan@fedoraproject.org)" #. create the window #: ../tools/browser/window.c:240 msgid "Component Browser" msgstr "Component Browser" #. Fill out the tool bar #: ../tools/browser/window.c:280 msgid "All" msgstr "সকল" #: ../tools/browser/window.c:286 msgid "Inactive" msgstr "নিষ্ক্ৰিয়" libbonoboui-2.24.5/po/dz.po0000644000076400007640000004730111173072741012443 00000000000000# Dzongkha translation of libbonoboui # Copyright @ 2006 Free Software Foundation, Inc. # Mindu Dorji. # msgid "" msgstr "" "Project-Id-Version: libbonoboui.HEAD.dz\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2007-11-13 21:46+0000\n" "PO-Revision-Date: 2008-10-29 09:28+0530\n" "Last-Translator: Dawa pemo \n" "Language-Team: DZONGKHA \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2;plural=(n!=1);\n" "X-Poedit-Language: Dzongkha\n" "X-Poedit-Country: BHUTAN\n" "X-Poedit-SourceCharset: utf-8\n" #: ../bonobo/bonobo-canvas-item.c:680 msgid "corba factory" msgstr "ཀོར་བ་ འཕྲུལ་ཁང༌།" #: ../bonobo/bonobo-canvas-item.c:681 msgid "The factory pointer" msgstr "འཕྲུལ་ཁང་གི་དཔག་བྱེད།" #: ../bonobo/bonobo-canvas-item.c:690 msgid "corba UI container" msgstr "ཀོར་བ་ ཡུ་ཨའི་འཛིན་སྣོད།" #: ../bonobo/bonobo-canvas-item.c:691 msgid "The User interface container" msgstr "ལག་ལེན་པའི་ ངོས་འདྲ་བའི་འཛིན་སྣོད།" #: ../bonobo/bonobo-dock-item-grip.c:255 msgid "Dock the toolbar" msgstr "ལག་ཆས་ཕྲ་རིང་ཌོཀ་འབད།" #: ../bonobo/bonobo-dock-item-grip.c:256 msgid "Undock the toolbar" msgstr "ལག་ཆས་ཕྲ་རིང་ ཌོཀ་འབད་ནི་བཤོལ།" #: ../bonobo/bonobo-dock-item.c:228 #: ../bonobo/bonobo-dock-item.c:229 #: ../bonobo/bonobo-ui-toolbar.c:1161 msgid "Shadow type" msgstr "གྱིབ་མའི་དབྱེ་བ།" #: ../bonobo/bonobo-dock-item.c:239 #: ../bonobo/bonobo-dock-item.c:240 #: ../bonobo/bonobo-ui-toolbar.c:1105 #: ../bonobo/bonobo-ui-toolbar.c:1106 msgid "Orientation" msgstr "ཕྱོགས།" #: ../bonobo/bonobo-dock-item.c:250 #: ../bonobo/bonobo-dock-item.c:251 #: ../bonobo/bonobo-ui-toolbar.c:1124 #: ../bonobo/bonobo-ui-toolbar.c:1125 msgid "Preferred width" msgstr "དགའ་གདམ་ཅན་གྱི་རྒྱ་ཚད།" #: ../bonobo/bonobo-dock-item.c:259 #: ../bonobo/bonobo-dock-item.c:260 #: ../bonobo/bonobo-ui-toolbar.c:1133 #: ../bonobo/bonobo-ui-toolbar.c:1134 msgid "Preferred height" msgstr "དགའ་གདམ་ཅན་གྱི་མཐོ་ཚད།" #: ../bonobo/bonobo-file-selector-util.c:357 msgid "Select a file to open" msgstr "ཁ་ཕྱེ་ནིའི་ཡིག་སྣོད་ཅིག་ སེལ་འཐུ་འབད།" #: ../bonobo/bonobo-file-selector-util.c:385 msgid "Select files to open" msgstr "ཁ་ཕྱེ་ནིའི་ཡིག་སྣོད་ཚུ་ སེལ་འཐུ་འབད།" #: ../bonobo/bonobo-file-selector-util.c:414 msgid "Select a filename to save" msgstr "བསྲུང་ནིའི་ཡིག་སྣོད་ཀྱི་མིང་ཅིག་ སེལ་འཐུ་འབད།" #: ../bonobo/bonobo-plug.c:423 msgid "Event Forwarding" msgstr "བྱུང་ལས་གདོང་བསྐྱོད་འབད་དོ༌།" #: ../bonobo/bonobo-plug.c:424 msgid "Whether X events should be forwarded" msgstr "ཨེགསི་བྱུང་ལས་ཚུ་ གདོང་བསྐྱོད་འབད་དགོཔ་ཨིན་ན།" #: ../bonobo/bonobo-selector-widget.c:297 #: ../bonobo/bonobo-window.c:344 #: ../tools/browser/component-details.c:114 #: ../tools/browser/component-list.c:378 msgid "Name" msgstr "མིང༌།" #: ../bonobo/bonobo-selector-widget.c:319 #: ../tools/browser/component-details.c:115 msgid "Description" msgstr "འགྲེལ་བཤད།" #: ../bonobo/bonobo-selector.c:343 msgid "Interfaces required" msgstr "ངོས་འདྲ་བ་ཚུ་དགོ་པས།" #: ../bonobo/bonobo-selector.c:344 msgid "A NULL-terminated array of interfaces which a server must support in order to be listed in the selector. Defaults to \"IDL:Bonobo/Embeddable:1.0\" if no interfaces are listed" msgstr "སེལ་བྱེད་ནང་ ཐོ་བཀོད་འབད་ནིའི་དོན་ལུ་ སར་བར་གྱིས་ རྒྱབ་སྐྱོར་འབད་དགོ་མི་ ངོས་འདྲ་བ་ཚུ་གི་ སྟོང་པ་གིས་རྩ་གྲོལ་འབད་བའི་ ཨེ་རེ་ཅིག གལ་སྲིད་ངོས་འདྲ་བ་ ཐོ་བཀོད་འབད་འབདཝ་མེད་པ་ཅིན་ \"IDL:Bonobo/Embeddable:1.0\" ལུ་ སྔོན་སྒྲིག་འབད།" #: ../bonobo/bonobo-selector.c:346 msgid "Interface required entry" msgstr "ངོས་འདྲ་བ་ལུ་ ཐོ་བཀོད་དགོ་པས།" #: ../bonobo/bonobo-selector.c:347 msgid "One of the interfaces that's required" msgstr "དགོས་མཁོ་ཡོད་པའི་ ངོས་འདྲ་བ་གཅིག" #: ../bonobo/bonobo-ui-config-widget.c:265 msgid "Visible" msgstr "མཐོང་ཚུགསཔ།" #: ../bonobo/bonobo-ui-config-widget.c:272 msgid "_Show" msgstr "སྟོན།(_S)" #: ../bonobo/bonobo-ui-config-widget.c:279 msgid "_Hide" msgstr "སྦ།(_H)" #: ../bonobo/bonobo-ui-config-widget.c:285 msgid "_View tooltips" msgstr "ལག་ཆས་ཕན་བསླབ་སྟོན།(_V)" #: ../bonobo/bonobo-ui-config-widget.c:290 msgid "Toolbars" msgstr "ལག་ཆས་ཕྲ་རིང་ཚུ།" #: ../bonobo/bonobo-ui-config-widget.c:300 msgid "toolbars" msgstr "ལག་ཆས་ཕྲ་རིང་ཚུ།" #: ../bonobo/bonobo-ui-config-widget.c:311 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "Look" msgstr "བལྟ།" #: ../bonobo/bonobo-ui-config-widget.c:320 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "_Icon" msgstr "ངོས་དཔར།(_S))" #: ../bonobo/bonobo-ui-config-widget.c:326 msgid "_Text and Icon" msgstr "ཚིག་ཡིག་དང་ངོས་དཔར།(_T)" #: ../bonobo/bonobo-ui-config-widget.c:332 msgid "Text only" msgstr "ཚིག་ཡིག་རྐྱང་པོ།" #: ../bonobo/bonobo-ui-config-widget.c:338 msgid "_Priority text only" msgstr "གཙོ་རིམ་ཅན་གྱི་ ཚིག་ཡིག་རྐྱང་པོ།(_P)" #: ../bonobo/bonobo-ui-engine.c:91 msgid "Debug" msgstr "རྐྱེན་སེལ།" #: ../bonobo/bonobo-ui-engine.c:91 msgid "_Dump XML" msgstr "ཨེགསི་ཨེམ་ཨེལ་ བཀོག་བཞག(_D)" #: ../bonobo/bonobo-ui-engine.c:92 msgid "Dump the entire UI's XML description to the console" msgstr "ཡུ་ཨའི་གི་ ཨེགསི་ཨེམ་ཨེལ་ འགྲེལ་བཤད་ཧྲིལ་བུ་ མ་སྒྲོམ་ནང་བཀོག་བཞག༌།" #: ../bonobo/bonobo-ui-engine-config.c:522 msgid "Configure UI" msgstr "ཡུ་ཨའི་རིམ་སྒྲིག་འབད།" #: ../bonobo/bonobo-ui-init-gtk.c:130 msgid "Gdk debugging flags to set" msgstr "གཞི་སྒྲིག་འབད་ནིའི་ ཇི་ཌི་ཀེ་ རྐྱེན་སེལ་གྱི་ ཟུར་རྟགས་ཚུ།" #: ../bonobo/bonobo-ui-init-gtk.c:130 #: ../bonobo/bonobo-ui-init-gtk.c:133 #: ../bonobo/bonobo-ui-init-gtk.c:161 #: ../bonobo/bonobo-ui-init-gtk.c:164 msgid "FLAGS" msgstr "ཟུར་རྟགས།" #: ../bonobo/bonobo-ui-init-gtk.c:133 msgid "Gdk debugging flags to unset" msgstr "སྒྲིག་བཤོལ་འབད་ནིའི་ ཇི་ཌི་ཀེ་ རྐྱེན་སེལ་གྱི་ཟུར་རྟགས།" #: ../bonobo/bonobo-ui-init-gtk.c:137 msgid "X display to use" msgstr "ལག་ལེན་འཐབ་ནིའི་ ཨེགསི་བཀྲམ་སྟོན།" #: ../bonobo/bonobo-ui-init-gtk.c:137 msgid "DISPLAY" msgstr "བཀྲམ་སྟོན།" #: ../bonobo/bonobo-ui-init-gtk.c:141 msgid "X screen to use" msgstr "ལག་ལེན་འཐབ་ནིའི་ ཨེགསི་གསལ་གཞི།" #: ../bonobo/bonobo-ui-init-gtk.c:141 msgid "SCREEN" msgstr "གསལ་གཞི།" #: ../bonobo/bonobo-ui-init-gtk.c:145 msgid "Make X calls synchronous" msgstr "ཨེགསི་གི་ བོད་བརྡ་ཚུ་ མཉམ་འབྱུང་ཅན་བཟོ།" #: ../bonobo/bonobo-ui-init-gtk.c:151 msgid "Don't use X shared memory extension" msgstr "ཨེགསི་རུབ་སྤྱོད་ཀྱི་ དྲན་ཚད་རྒྱ་བསྐྱེད་ ལག་ལེན་མ་འཐབ།" #: ../bonobo/bonobo-ui-init-gtk.c:155 msgid "Program name as used by the window manager" msgstr "ལས་རིམ་གྱི་མིང་ སྒོ་སྒྲིག་འཛིན་སྐྱོང་པ་གིས་ ལག་ལེན་འཐབ་དོ་བཟུམ།" #: ../bonobo/bonobo-ui-init-gtk.c:155 msgid "NAME" msgstr "མིང༌།" #: ../bonobo/bonobo-ui-init-gtk.c:158 msgid "Program class as used by the window manager" msgstr "ལས་རིམ་དབྱེ་རིགས་ སྒོ་སྒྲིག་འཛིན་སྐྱོང་པ་གིས་ ལག་ལེན་འཐབ་དོ་བཟུམ།" #: ../bonobo/bonobo-ui-init-gtk.c:158 msgid "CLASS" msgstr "དབྱེ་རིགས།" #: ../bonobo/bonobo-ui-init-gtk.c:161 msgid "Gtk+ debugging flags to set" msgstr "གཞི་སྒྲིག་འབད་ནིའི་ ཇི་ཊི་ཀེ་+ རྐྱེན་སེལ་གྱི་ཟུར་རྟགས།" #: ../bonobo/bonobo-ui-init-gtk.c:164 msgid "Gtk+ debugging flags to unset" msgstr "སྒྲིག་བཤོལ་འབད་ནིའི་ ཇི་ཊི་ཀེ་+ རྐྱེན་སེལ་གྱི་ཟུར་རྟགས།" #: ../bonobo/bonobo-ui-init-gtk.c:167 msgid "Make all warnings fatal" msgstr "ཉེན་བརྡ་ཆ་མཉམ་ ཚབས་ཆེན་བཟོ།" #: ../bonobo/bonobo-ui-init-gtk.c:170 msgid "Load an additional Gtk module" msgstr "ཇི་ཊི་ཀེ་གི་ ཚད་གཞི་ཁ་སྐོང་ཅིག་ མངོན་གསལ་འབད།" #: ../bonobo/bonobo-ui-init-gtk.c:170 msgid "MODULE" msgstr "ཚད་གཞི།" #: ../bonobo/bonobo-ui-init-gtk.c:186 msgid "GTK+" msgstr "ཇི་ཊི་ཀེ་+" #: ../bonobo/bonobo-ui-main.c:278 msgid "Bonobo GUI support" msgstr "བཱོ་ནོ་བཱོ་ ཇི་ཡུ་ཨའི་ རྒྱབ་སྐྱོར།" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "B_oth" msgstr "གཉིས་ཆ་རང༌།(_o)" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "T_ext" msgstr "ཚིག་ཡིག(_e)" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Hide t_ips" msgstr "ཕན་བསླབ་སྦ།(_i)" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Show t_ips" msgstr "ཕན་བསླབ་སྟོན།(_i)" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "_Hide toolbar" msgstr "ལག་ཆས་ཕྲ་རིང་སྦ།(_H)" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "Customi_ze" msgstr "སྲོལ་སྒྲིག་འབད།(_z)" #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Customize the toolbar" msgstr "ལག་ཆས་ཕྲ་རིང་དེ་ སྲོལ་སྒྲིག་འབད།" #: ../bonobo/bonobo-ui-toolbar.c:1115 msgid "is floating" msgstr "ལྡིང་དོ།" #: ../bonobo/bonobo-ui-toolbar.c:1116 msgid "whether the toolbar is floating" msgstr "ལག་ཆས་ཕྲ་རིང་དེ ལྡིང་བའི་བསྒང་ཨིན་ན།" #: ../bonobo/bonobo-ui-toolbar.c:1162 msgid "Style of bevel around the toolbar" msgstr "ལག་ཆས་ཕྲ་རིང་གི་ མཐའ་སྐོར་ལུ་ སེར་ཁའི་བཟོ་རྣམ།" #: ../bonobo/bonobo-ui-util.c:601 msgid "Could not display help for this application" msgstr "གློག་རིམ་འདི་གི་དོན་ལུ་ གྲོགས་རམ་ བཀྲམ་སྟོན་འབད་མ་ཚུགས་ " #: ../bonobo/bonobo-ui-util.c:643 msgid "_Contents" msgstr "ནང་དོན་ཚུ།(_C)" #: ../bonobo/bonobo-ui-util.c:644 msgid "View help for this application" msgstr "གློག་རིམ་འདི་གི་དོན་ལུ་ གྲོགས་རམ་སྟོན།" #: ../bonobo/bonobo-window.c:345 msgid "Name of the window - used for configuration serialization." msgstr "སྒོ་སྒྲིག་གི་མིང༌- རིམ་སྒྲིག་ཨང་རིམ་གྱི་དོན་ལས་ ལག་ལེན་འཐབ་ནི།" #: ../bonobo/bonobo-zoomable.c:326 msgid "Zoom level" msgstr "རྒྱས་ཟུམ་གྱི་གནས་རིམ།" #: ../bonobo/bonobo-zoomable.c:327 msgid "The degree of enlargment" msgstr "ཆེར་བསྐྱེད་ཀྱི་དབྱེ་རིམ།" #: ../bonobo/bonobo-zoomable.c:335 msgid "Minimum Zoom level" msgstr "རྒྱས་ཟུམ་གྱི་གནས་རིམ་ཉུང་མཐའ།" #: ../bonobo/bonobo-zoomable.c:336 msgid "The minimum degree of enlargment" msgstr "ཆེར་བསྐྱེད་ཀྱི་ དབྱེ་རིམ་ཉུང་མཐའ།" #: ../bonobo/bonobo-zoomable.c:344 msgid "Maximum Zoom level" msgstr "རྒྱས་ཟུམ་གནས་རིམ་མང་མཐའ།" #: ../bonobo/bonobo-zoomable.c:345 msgid "The maximum degree of enlargment" msgstr "ཆེར་བསྐྱེད་དབྱེ་རིམ་མང་མཐའ།" #: ../bonobo/bonobo-zoomable.c:353 msgid "Has a minimum Zoom level" msgstr "རྒྱས་ཟུམ་གྱི་གནས་རིམ་ ཉུང་མཐའ་ཅིག་ཡོད།" #: ../bonobo/bonobo-zoomable.c:354 msgid "Whether we have a valid minimum zoom level" msgstr "ང་བཅས་ལུ་ ནུས་ཅན་ཉུང་མཐའི་རྒྱས་ཟུམ་ གནས་རིམ་ཅིག་ཡོད་ག" #: ../bonobo/bonobo-zoomable.c:361 msgid "Has a maximum Zoom level" msgstr "རྒྱས་ཟུམ་གནས་རིམ་གྱི་ མང་མཐའ་ཅིག་ཡོད།" #: ../bonobo/bonobo-zoomable.c:362 msgid "Whether we have a valid maximum zoom level" msgstr "ང་བཅས་ལུ་ ནུས་ཅན་མང་མཐའི་རྒྱས་ཟུམ་གནས་རིམ་ཅིག་ཡོད་ག" #: ../bonobo/bonobo-zoomable.c:369 msgid "Is continuous" msgstr "འཕྲོ་མཐུད་ཅན་ཨིན། " #: ../bonobo/bonobo-zoomable.c:370 msgid "Whether we zoom continuously (as opposed to jumps)" msgstr "ང་བཅས་ཀྱིས་ འཕྲོ་མཐུད་དེ་རང་ རྒྱས་ཟུམའབད་ནི་ཨིན་ན། (མཆོང་ནི་དང་མ་འདྲཝ་འབད)" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:1 msgid "About this application" msgstr "གློག་རིམ་འདི་གི་སྐོར་ལས།" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:2 msgid "Select" msgstr "སེལ་འཐུ་འབད།" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:3 msgid "_About..." msgstr "སྐོར་ལས་...(_A)" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:4 msgid "_Edit" msgstr "ཞུན་དག(_E)" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:5 #: ../tools/browser/bonobo-browser.xml.h:4 msgid "_File" msgstr "ཡིག་སྣོད།(_F)" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:6 msgid "_Select" msgstr "སེལ་འཐུ་འབད།(_S)" #: ../samples/bonoboui/hello.c:63 msgid "This does nothing; it is only a demonstration." msgstr "འདི་གིས་ག་ནི་ཡང་མི་འབད། འདི་འགྲེམ་སྟོན་ཙམ་ཅིག་ཨིན།" #: ../samples/bonoboui/hello.c:145 msgid "BonoboUI-Hello." msgstr "བཱོ་ནོ་བཱོ་ ཡུ་ཨའི་-ཧེ་ལོ།" #: ../samples/bonoboui/hello.c:217 msgid "Gnome Hello" msgstr "ཇི་ནོམ་ ཧེ་ལོ།" #. Create Label and put it in the Button: #: ../samples/bonoboui/hello.c:272 msgid "Hello, World!" msgstr "ཧེ་ལོ་ འཛམ་གླིང་།" #: ../samples/bonoboui/hello.c:312 msgid "Cannot init libbonoboui code" msgstr "ལི་བོ་ནོ་བོ་ཡུ་ཨའི་ཀོཌི་ འགོ་འབྱེད་འབད་མི་ཚུགས་པས།" #: ../samples/controls/bonobo-sample-controls.c:131 msgid "Could not initialize Bonobo UI" msgstr "བཱོ་ནོ་བཱོ་ ཡུ་ཨའི་འགོ་འབྱེད་འབད་མ་ཚུགས།" #: ../tools/browser/bonobo-browser.desktop.in.h:1 msgid "Bonobo Component Browser" msgstr "བཱོ་ནོ་བཱོ་གི་ཆ་ཤས་ བརའུ་ཟར།" #: ../tools/browser/bonobo-browser.desktop.in.h:2 msgid "Shows available Bonobo components" msgstr "བཱོ་ནོ་བཱོ་གི་ཆ་ཤས་ཡོད་མི་ཚུ་སྟོནམ་ཨིན།" #: ../tools/browser/bonobo-browser.xml.h:1 msgid "About this program..." msgstr "ལས་རིམ་འདི་གི་སྐོར།" #: ../tools/browser/bonobo-browser.xml.h:2 msgid "Close the current window" msgstr "ད་ལྟོའི་སྒོ་སྒྲིག་དེ་ ཁ་བསྡམས།" #: ../tools/browser/bonobo-browser.xml.h:3 msgid "Open a new window" msgstr "སྒོ་སྒྲིག་གསརཔ་ཅིག་ཁ་ཕྱེ།" #: ../tools/browser/bonobo-browser.xml.h:5 msgid "_Help" msgstr "གྲོགས་རམ།(_H)" #. Build the general tab #: ../tools/browser/component-details.c:109 msgid "General" msgstr "ཡོངས་ཁྱབ།" #: ../tools/browser/component-details.c:116 #: ../tools/browser/component-list.c:398 msgid "IID" msgstr "ཨའི་ཨའི་ཌི།" #: ../tools/browser/component-details.c:117 msgid "Location" msgstr "གནས་ཁོངས། " #. Build the details tab #: ../tools/browser/component-details.c:167 msgid "Details" msgstr "རྒྱས་བཤད།" #: ../tools/browser/component-details.c:168 msgid "Detailed Information" msgstr "བརྡ་དོན་རྒྱས་བཤད།" #: ../tools/browser/component-list.c:367 #: ../tools/browser/window.c:283 msgid "Active" msgstr "ཤུགས་ལྡན།" #: ../tools/browser/component-list.c:388 msgid "Type" msgstr "དབྱེ་བ།" #: ../tools/browser/window.c:162 msgid "Component Details" msgstr "ཆ་ཤས་ཀྱི་རྒྱས་བཤད།" #: ../tools/browser/window.c:208 msgid "Bonobo Browser" msgstr "བཱོ་ནོ་བཱོ་ བརའུ་ཟར།" #: ../tools/browser/window.c:210 msgid "Copyright 2001, The GNOME Foundation" msgstr "འདྲ་བཤུས་དབང་ཆ་ ༢༠༠༡ ཇི་ནོམ་གཞི་ཚོགས།" #: ../tools/browser/window.c:211 msgid "Bonobo component browser" msgstr "བཱོ་ནོ་བཱོ་གི་ཆ་ཤས་ བརའུ་ཟར།" #: ../tools/browser/window.c:214 msgid "translator-credits" msgstr "ཨའི་ཌི་ཨར་སི་གི་མ་དངུལ་རྒྱབ་སྐྱོར་ཐོག་ལས་ བརྡ་དོན་འཕྲུལ་རིག་ལས་ཁུངས་ནང་ སྐད་བསྒྱུར་འབད་ཡི། ཁ་གསལ་གྱི་དོན་ལུ་ འབྲེལ་བ་འཐབ་ས་: " #. create the window #: ../tools/browser/window.c:240 msgid "Component Browser" msgstr "ཆ་ཤས་བརའུ་ཟར།" #. Fill out the tool bar #: ../tools/browser/window.c:280 msgid "All" msgstr "ཆ་མཉམ།" #: ../tools/browser/window.c:286 msgid "Inactive" msgstr "ཤུགས་མེད།" libbonoboui-2.24.5/po/he.po0000644000076400007640000003330511173072741012421 00000000000000# translation of libbonoboui.HEAD.he.po to Hebrew # translation of libbonoboui.HEAD.po to Hebrew # This file is distributed under the same license as the PACKAGE package. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # Gil 'Dolfin' Osher , 2002,2003 # Yair Hershkovitz , 2006. # msgid "" msgstr "" "Project-Id-Version: libbonoboui.HEAD.he\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2007-11-13 21:46+0000\n" "PO-Revision-Date: 2003-06-21 10:58+0300\n" "Last-Translator: Yair Hershkovitz \n" "Language-Team: Hebrew \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Generator: KBabel 1.0.1\n" #: ../bonobo/bonobo-canvas-item.c:680 msgid "corba factory" msgstr "יצרן קורבה" #: ../bonobo/bonobo-canvas-item.c:681 msgid "The factory pointer" msgstr "מצביע היצרן" #: ../bonobo/bonobo-canvas-item.c:690 msgid "corba UI container" msgstr "מכיל ממשק משתמש של קוברה" #: ../bonobo/bonobo-canvas-item.c:691 msgid "The User interface container" msgstr "מיכל ממשק המשתמש" #: ../bonobo/bonobo-dock-item-grip.c:255 msgid "Dock the toolbar" msgstr "הצמד את סרגל הכלים" #: ../bonobo/bonobo-dock-item-grip.c:256 msgid "Undock the toolbar" msgstr "הפרד את סרגל הכלים" #: ../bonobo/bonobo-dock-item.c:228 ../bonobo/bonobo-dock-item.c:229 #: ../bonobo/bonobo-ui-toolbar.c:1161 msgid "Shadow type" msgstr "סוג צל" #: ../bonobo/bonobo-dock-item.c:239 ../bonobo/bonobo-dock-item.c:240 #: ../bonobo/bonobo-ui-toolbar.c:1105 ../bonobo/bonobo-ui-toolbar.c:1106 msgid "Orientation" msgstr "יישור" #: ../bonobo/bonobo-dock-item.c:250 ../bonobo/bonobo-dock-item.c:251 #: ../bonobo/bonobo-ui-toolbar.c:1124 ../bonobo/bonobo-ui-toolbar.c:1125 msgid "Preferred width" msgstr "עובי מועדף" #: ../bonobo/bonobo-dock-item.c:259 ../bonobo/bonobo-dock-item.c:260 #: ../bonobo/bonobo-ui-toolbar.c:1133 ../bonobo/bonobo-ui-toolbar.c:1134 msgid "Preferred height" msgstr "גובה מועדף" #: ../bonobo/bonobo-file-selector-util.c:357 msgid "Select a file to open" msgstr "בחר קובץ לפתיחה" #: ../bonobo/bonobo-file-selector-util.c:385 msgid "Select files to open" msgstr "בחר קבצים לפתיחה" #: ../bonobo/bonobo-file-selector-util.c:414 msgid "Select a filename to save" msgstr "בחר שם קובץ לשמירה" #: ../bonobo/bonobo-plug.c:423 msgid "Event Forwarding" msgstr "העברת אירוע" #: ../bonobo/bonobo-plug.c:424 msgid "Whether X events should be forwarded" msgstr "האם אירוע X צריך להיות מועבר הלאה" #: ../bonobo/bonobo-selector-widget.c:297 ../bonobo/bonobo-window.c:344 #: ../tools/browser/component-details.c:114 #: ../tools/browser/component-list.c:378 msgid "Name" msgstr "שם" #: ../bonobo/bonobo-selector-widget.c:319 #: ../tools/browser/component-details.c:115 msgid "Description" msgstr "תיאור" #: ../bonobo/bonobo-selector.c:343 msgid "Interfaces required" msgstr "ממשקים נדרשים" #: ../bonobo/bonobo-selector.c:344 msgid "" "A NULL-terminated array of interfaces which a server must support in order " "to be listed in the selector. Defaults to \"IDL:Bonobo/Embeddable:1.0\" if " "no interfaces are listed" msgstr "" "מערך המסתיים ב NULL של ממשקים שבו השרת חייב לתמוך כדי להיות רשום בבוחר. חוזר " "לברירת המחדל \"IDL:Bonobo/Embeddable:1.0\" אם אין ממשקים רשומים" #: ../bonobo/bonobo-selector.c:346 msgid "Interface required entry" msgstr "ערך ממשק נדרש" #: ../bonobo/bonobo-selector.c:347 msgid "One of the interfaces that's required" msgstr "אחד מהממשקים שנדרשים" #: ../bonobo/bonobo-ui-config-widget.c:265 msgid "Visible" msgstr "נראה" #: ../bonobo/bonobo-ui-config-widget.c:272 msgid "_Show" msgstr "_הצג" #: ../bonobo/bonobo-ui-config-widget.c:279 msgid "_Hide" msgstr "_החבא" #: ../bonobo/bonobo-ui-config-widget.c:285 msgid "_View tooltips" msgstr "הראה _סרגל כלים" #: ../bonobo/bonobo-ui-config-widget.c:290 msgid "Toolbars" msgstr "סרגלי כלים" #: ../bonobo/bonobo-ui-config-widget.c:300 msgid "toolbars" msgstr "סרגלי כלים" #: ../bonobo/bonobo-ui-config-widget.c:311 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "Look" msgstr "מראה" #: ../bonobo/bonobo-ui-config-widget.c:320 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "_Icon" msgstr "_סמל" #: ../bonobo/bonobo-ui-config-widget.c:326 msgid "_Text and Icon" msgstr "_טקסט וסמל" #: ../bonobo/bonobo-ui-config-widget.c:332 msgid "Text only" msgstr "טקסט בלבד" #: ../bonobo/bonobo-ui-config-widget.c:338 msgid "_Priority text only" msgstr "טקסט _עדיפות בלבד" #: ../bonobo/bonobo-ui-engine.c:91 msgid "Debug" msgstr "ניפוי" #: ../bonobo/bonobo-ui-engine.c:91 msgid "_Dump XML" msgstr "ה_טלת XML" #: ../bonobo/bonobo-ui-engine.c:92 msgid "Dump the entire UI's XML description to the console" msgstr "הטל את כל תיאור ממשק המשתמש של ה-XML למסוף" #: ../bonobo/bonobo-ui-engine-config.c:522 msgid "Configure UI" msgstr "הגדר ממשק משתמש" #: ../bonobo/bonobo-ui-init-gtk.c:130 msgid "Gdk debugging flags to set" msgstr "דגלי ניפוי של Gdk לקביעה" #: ../bonobo/bonobo-ui-init-gtk.c:130 ../bonobo/bonobo-ui-init-gtk.c:133 #: ../bonobo/bonobo-ui-init-gtk.c:161 ../bonobo/bonobo-ui-init-gtk.c:164 msgid "FLAGS" msgstr "דגלים" #: ../bonobo/bonobo-ui-init-gtk.c:133 msgid "Gdk debugging flags to unset" msgstr "דגלי ניפוי של Gdk לביטול" #: ../bonobo/bonobo-ui-init-gtk.c:137 msgid "X display to use" msgstr "תצוגת X לשימוש" #: ../bonobo/bonobo-ui-init-gtk.c:137 msgid "DISPLAY" msgstr "תצוגה" #: ../bonobo/bonobo-ui-init-gtk.c:141 msgid "X screen to use" msgstr "צג X לשימוש" #: ../bonobo/bonobo-ui-init-gtk.c:141 msgid "SCREEN" msgstr "צג" #: ../bonobo/bonobo-ui-init-gtk.c:145 msgid "Make X calls synchronous" msgstr "סנכרן קריאות X" #: ../bonobo/bonobo-ui-init-gtk.c:151 msgid "Don't use X shared memory extension" msgstr "אל תשתמש בהרחבת הזיכרון של X" #: ../bonobo/bonobo-ui-init-gtk.c:155 msgid "Program name as used by the window manager" msgstr "שם התוכנית כפי שמופיע במנהל החלונות" #: ../bonobo/bonobo-ui-init-gtk.c:155 msgid "NAME" msgstr "שם" #: ../bonobo/bonobo-ui-init-gtk.c:158 msgid "Program class as used by the window manager" msgstr "מחלקת התוכנית שבשימוש על-ידי מנהל החלונות" #: ../bonobo/bonobo-ui-init-gtk.c:158 msgid "CLASS" msgstr "מחלקה" #: ../bonobo/bonobo-ui-init-gtk.c:161 msgid "Gtk+ debugging flags to set" msgstr "דגלי ניפוי של Gtk+ לקביעה" #: ../bonobo/bonobo-ui-init-gtk.c:164 msgid "Gtk+ debugging flags to unset" msgstr "דגלי ניפוי של Gtk+ לביטול" #: ../bonobo/bonobo-ui-init-gtk.c:167 msgid "Make all warnings fatal" msgstr "עשה את כל האזהרות קטלניות" #: ../bonobo/bonobo-ui-init-gtk.c:170 msgid "Load an additional Gtk module" msgstr "טען מודול GTK נוסף" #: ../bonobo/bonobo-ui-init-gtk.c:170 msgid "MODULE" msgstr "מודול" #: ../bonobo/bonobo-ui-init-gtk.c:186 msgid "GTK+" msgstr "GTK+" #: ../bonobo/bonobo-ui-main.c:278 msgid "Bonobo GUI support" msgstr "תמיכת ממשק משתמש של Bonobo" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "B_oth" msgstr "_שניהם" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "T_ext" msgstr "_טקסט" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Hide t_ips" msgstr "הסתר _עצות" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Show t_ips" msgstr "הצג _עצות" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "_Hide toolbar" msgstr "_הסתר סרגל כלים" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "Customi_ze" msgstr "התאם _אישית" #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Customize the toolbar" msgstr "התאם אישית את סרגל הכלים" #: ../bonobo/bonobo-ui-toolbar.c:1115 msgid "is floating" msgstr "צף" #: ../bonobo/bonobo-ui-toolbar.c:1116 msgid "whether the toolbar is floating" msgstr "האם סרגל הכלים צף" #: ../bonobo/bonobo-ui-toolbar.c:1162 msgid "Style of bevel around the toolbar" msgstr "סגנון השיפוע סביב סרגל הכלים" #: ../bonobo/bonobo-ui-util.c:601 msgid "Could not display help for this application" msgstr "לא ניתן להציג עזרה עבור יישום זה" #: ../bonobo/bonobo-ui-util.c:643 msgid "_Contents" msgstr "_תכנים" #: ../bonobo/bonobo-ui-util.c:644 msgid "View help for this application" msgstr "מציג עזרה עבור יישום זה" #: ../bonobo/bonobo-window.c:345 msgid "Name of the window - used for configuration serialization." msgstr "שם החלון - בשימוש עבור סידוריות ההגדרות." #: ../bonobo/bonobo-zoomable.c:326 msgid "Zoom level" msgstr "רמת קירוב" #: ../bonobo/bonobo-zoomable.c:327 msgid "The degree of enlargment" msgstr "רמת הקירוב" #: ../bonobo/bonobo-zoomable.c:335 msgid "Minimum Zoom level" msgstr "רמת קירוב מינימלית" #: ../bonobo/bonobo-zoomable.c:336 msgid "The minimum degree of enlargment" msgstr "רמת הקירוב המינימלית" #: ../bonobo/bonobo-zoomable.c:344 msgid "Maximum Zoom level" msgstr "רמת קירוב מקסימלית" #: ../bonobo/bonobo-zoomable.c:345 msgid "The maximum degree of enlargment" msgstr "רמת הקירוב המקסימלית" #: ../bonobo/bonobo-zoomable.c:353 msgid "Has a minimum Zoom level" msgstr "יש רמת קירוב מינימלית" #: ../bonobo/bonobo-zoomable.c:354 msgid "Whether we have a valid minimum zoom level" msgstr "האם יש לנו רמת קירוב מינימלית תקנית" #: ../bonobo/bonobo-zoomable.c:361 msgid "Has a maximum Zoom level" msgstr "יש רמת קירוב מקסימלית" #: ../bonobo/bonobo-zoomable.c:362 msgid "Whether we have a valid maximum zoom level" msgstr "האם יש לנו רמת קירוב מקסימלית תקנית" #: ../bonobo/bonobo-zoomable.c:369 msgid "Is continuous" msgstr "המשכי" #: ../bonobo/bonobo-zoomable.c:370 msgid "Whether we zoom continuously (as opposed to jumps)" msgstr "האם יש לנו קירוב המשכי (הפכי לקפיצות)" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:1 msgid "About this application" msgstr "אודות יישום זה" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:2 msgid "Select" msgstr "בחר" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:3 msgid "_About..." msgstr "_אודות..." #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:4 msgid "_Edit" msgstr "_עריכה" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:5 #: ../tools/browser/bonobo-browser.xml.h:4 msgid "_File" msgstr "_קובץ" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:6 msgid "_Select" msgstr "_בחירה" #: ../samples/bonoboui/hello.c:63 msgid "This does nothing; it is only a demonstration." msgstr "זה לא עושה כלום; זוהי רק הדגמה." #: ../samples/bonoboui/hello.c:145 msgid "BonoboUI-Hello." msgstr "שלום BonoboUI." #: ../samples/bonoboui/hello.c:217 msgid "Gnome Hello" msgstr "שלום Gnome" #. Create Label and put it in the Button: #: ../samples/bonoboui/hello.c:272 msgid "Hello, World!" msgstr "שלום, עולם!" #: ../samples/bonoboui/hello.c:312 msgid "Cannot init libbonoboui code" msgstr "לא ניתן לאתחל קוד libbonoboui" #: ../samples/controls/bonobo-sample-controls.c:131 msgid "Could not initialize Bonobo UI" msgstr "לא ניתן לאתחל את ממשק המשתמש Bonobo" #: ../tools/browser/bonobo-browser.desktop.in.h:1 msgid "Bonobo Component Browser" msgstr "דפדפן הרכיבים של Bonobo" #: ../tools/browser/bonobo-browser.desktop.in.h:2 msgid "Shows available Bonobo components" msgstr "מציג את כל רכיבי Bonobo הקיימים" #: ../tools/browser/bonobo-browser.xml.h:1 msgid "About this program..." msgstr "אודות יישום זה..." #: ../tools/browser/bonobo-browser.xml.h:2 msgid "Close the current window" msgstr "סגור את החלון הנוכחי" #: ../tools/browser/bonobo-browser.xml.h:3 msgid "Open a new window" msgstr "פתח חלון חדש" #: ../tools/browser/bonobo-browser.xml.h:5 msgid "_Help" msgstr "_עזרה" #. Build the general tab #: ../tools/browser/component-details.c:109 msgid "General" msgstr "כללי" #: ../tools/browser/component-details.c:116 #: ../tools/browser/component-list.c:398 msgid "IID" msgstr "IID" #: ../tools/browser/component-details.c:117 msgid "Location" msgstr "מיקום" #. Build the details tab #: ../tools/browser/component-details.c:167 msgid "Details" msgstr "פרטים" #: ../tools/browser/component-details.c:168 msgid "Detailed Information" msgstr "מידע מפורט" #: ../tools/browser/component-list.c:367 ../tools/browser/window.c:283 msgid "Active" msgstr "פעיל" #: ../tools/browser/component-list.c:388 msgid "Type" msgstr "סוג" #: ../tools/browser/window.c:162 msgid "Component Details" msgstr "פרטי רכיב" #: ../tools/browser/window.c:208 msgid "Bonobo Browser" msgstr "דפדפן Bonobo" #: ../tools/browser/window.c:210 msgid "Copyright 2001, The GNOME Foundation" msgstr "Copyright 2001, The GNOME Foundation" #: ../tools/browser/window.c:211 msgid "Bonobo component browser" msgstr "דפדפן הרכיבים של Bonobo" #: ../tools/browser/window.c:214 msgid "translator-credits" msgstr "יאיר הרשקוביץ " #. create the window #: ../tools/browser/window.c:240 msgid "Component Browser" msgstr "דפדפן רכיבים" #. Fill out the tool bar #: ../tools/browser/window.c:280 msgid "All" msgstr "הכל" #: ../tools/browser/window.c:286 msgid "Inactive" msgstr "לא פעיל" libbonoboui-2.24.5/po/mr.po0000644000076400007640000004013411173072741012441 00000000000000# translation of libbonoboui.HEAD.mr.po to marathi # Copyright (C) 2003 Jitendra Shah # # Swapnil Hajare , 2003. # sandeep shedmake , 2008. msgid "" msgstr "" "Project-Id-Version: libbonoboui.HEAD.mr\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2007-11-13 21:46+0000\n" "PO-Revision-Date: 2008-02-19 14:41+0530\n" "Last-Translator: sandeep shedmake \n" "Language-Team: marathi\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Generator: KBabel 1.11.4\n" "Plural-Forms: nplurals=2; plural=(n!=1);\n\n" #: ../bonobo/bonobo-canvas-item.c:680 msgid "corba factory" msgstr "कोरबा कारखाना" #: ../bonobo/bonobo-canvas-item.c:681 msgid "The factory pointer" msgstr "कारखाना संकेतक" #: ../bonobo/bonobo-canvas-item.c:690 msgid "corba UI container" msgstr "कोरबा UI कन्टेनर (धारक)" #: ../bonobo/bonobo-canvas-item.c:691 msgid "The User interface container" msgstr "यूजर इंटरफेस धारक" #: ../bonobo/bonobo-dock-item-grip.c:255 msgid "Dock the toolbar" msgstr "साधनपट्टी डॉक करा" #: ../bonobo/bonobo-dock-item-grip.c:256 msgid "Undock the toolbar" msgstr "साधनपट्टी डॉक पासून बाहेर काढा" #: ../bonobo/bonobo-dock-item.c:228 ../bonobo/bonobo-dock-item.c:229 #: ../bonobo/bonobo-ui-toolbar.c:1161 msgid "Shadow type" msgstr "छाया प्रकार" #: ../bonobo/bonobo-dock-item.c:239 ../bonobo/bonobo-dock-item.c:240 #: ../bonobo/bonobo-ui-toolbar.c:1105 ../bonobo/bonobo-ui-toolbar.c:1106 msgid "Orientation" msgstr "दिशा" #: ../bonobo/bonobo-dock-item.c:250 ../bonobo/bonobo-dock-item.c:251 #: ../bonobo/bonobo-ui-toolbar.c:1124 ../bonobo/bonobo-ui-toolbar.c:1125 msgid "Preferred width" msgstr "मान्यता रुंदी " #: ../bonobo/bonobo-dock-item.c:259 ../bonobo/bonobo-dock-item.c:260 #: ../bonobo/bonobo-ui-toolbar.c:1133 ../bonobo/bonobo-ui-toolbar.c:1134 msgid "Preferred height" msgstr "मान्यता ऊंची " #: ../bonobo/bonobo-file-selector-util.c:357 msgid "Select a file to open" msgstr "उघडण्यासाठी एक फाइल निवडा " #: ../bonobo/bonobo-file-selector-util.c:385 msgid "Select files to open" msgstr "उघडण्यासाठी फाइल्स निवडा" #: ../bonobo/bonobo-file-selector-util.c:414 msgid "Select a filename to save" msgstr "संग्रहित करण्यासाठी एक फाइल नाव निवडा " #: ../bonobo/bonobo-plug.c:423 msgid "Event Forwarding" msgstr "घटना पुढे ढकला " #: ../bonobo/bonobo-plug.c:424 msgid "Whether X events should be forwarded" msgstr "x घटनाला पुढे ढकलायचे आहे का " #: ../bonobo/bonobo-selector-widget.c:297 ../bonobo/bonobo-window.c:344 #: ../tools/browser/component-details.c:114 #: ../tools/browser/component-list.c:378 msgid "Name" msgstr "नाव " #: ../bonobo/bonobo-selector-widget.c:319 #: ../tools/browser/component-details.c:115 msgid "Description" msgstr "वर्णन" #: ../bonobo/bonobo-selector.c:343 msgid "Interfaces required" msgstr " इंटरफ़ेस हवा आहे " #: ../bonobo/bonobo-selector.c:344 msgid "" "A NULL-terminated array of interfaces which a server must support in order " "to be listed in the selector. Defaults to \"IDL:Bonobo/Embeddable:1.0\" if " "no interfaces are listed" msgstr "निवडकर्ता यादी मध्ये दर्शविण्याकरीता सर्वरद्वारे समर्थीत NULL-समाप्ती संवाद श्रृंखला. संवाद यादीत दर्शविले नसल्यास \"IDL:Bonobo/Embeddable:1.0\" करीता मुलभूतरित्या निर्देशीत केले जाते" #: ../bonobo/bonobo-selector.c:346 msgid "Interface required entry" msgstr "इंटरफ़ेस एंट्री पाहिजे " #: ../bonobo/bonobo-selector.c:347 msgid "One of the interfaces that's required" msgstr " एखादे इंटरफ़ेस पाहिजे" #: ../bonobo/bonobo-ui-config-widget.c:265 msgid "Visible" msgstr "पाहता येणारा " #: ../bonobo/bonobo-ui-config-widget.c:272 msgid "_Show" msgstr "दाखवा (_S)" #: ../bonobo/bonobo-ui-config-widget.c:279 msgid "_Hide" msgstr "लपवा (_H)" #: ../bonobo/bonobo-ui-config-widget.c:285 msgid "_View tooltips" msgstr "टूलटिप्स दाखवा (_V)" #: ../bonobo/bonobo-ui-config-widget.c:290 msgid "Toolbars" msgstr "टूलबार" #: ../bonobo/bonobo-ui-config-widget.c:300 msgid "toolbars" msgstr "टूलबार" #: ../bonobo/bonobo-ui-config-widget.c:311 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "Look" msgstr "लुक" #: ../bonobo/bonobo-ui-config-widget.c:320 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "_Icon" msgstr "आइकान (_I)" #: ../bonobo/bonobo-ui-config-widget.c:326 msgid "_Text and Icon" msgstr "पाठ्य आणि आइकान (_T)" #: ../bonobo/bonobo-ui-config-widget.c:332 msgid "Text only" msgstr "फ़क्त पाठ्य" #: ../bonobo/bonobo-ui-config-widget.c:338 msgid "_Priority text only" msgstr " फ़क्त पाठ्यची प्राथमिकता (_P)" #: ../bonobo/bonobo-ui-engine.c:91 msgid "Debug" msgstr "डिबग" #: ../bonobo/bonobo-ui-engine.c:91 msgid "_Dump XML" msgstr "XML काढा " #: ../bonobo/bonobo-ui-engine.c:92 msgid "Dump the entire UI's XML description to the console" msgstr "पुर्ण UI चा XML विवरण कन्सोल वर काढा " #: ../bonobo/bonobo-ui-engine-config.c:522 msgid "Configure UI" msgstr "UI कानफिगर करा " #: ../bonobo/bonobo-ui-init-gtk.c:130 msgid "Gdk debugging flags to set" msgstr "Gdk डिबगिंग फ्लैगला समायोजित करा " #: ../bonobo/bonobo-ui-init-gtk.c:130 ../bonobo/bonobo-ui-init-gtk.c:133 #: ../bonobo/bonobo-ui-init-gtk.c:161 ../bonobo/bonobo-ui-init-gtk.c:164 msgid "FLAGS" msgstr "संकेत चिन्ह" #: ../bonobo/bonobo-ui-init-gtk.c:133 msgid "Gdk debugging flags to unset" msgstr "Gdk त्रुटि (दोष) संकेत चिन्ह असमायोजित करा " #: ../bonobo/bonobo-ui-init-gtk.c:137 msgid "X display to use" msgstr "X डिस्प्ले चा प्रयोग करा " #: ../bonobo/bonobo-ui-init-gtk.c:137 msgid "DISPLAY" msgstr "डिस्प्ले" #: ../bonobo/bonobo-ui-init-gtk.c:141 msgid "X screen to use" msgstr "प्रयोग करिता X सक्रीन्" #: ../bonobo/bonobo-ui-init-gtk.c:141 msgid "SCREEN" msgstr "सक्रीन्" #: ../bonobo/bonobo-ui-init-gtk.c:145 msgid "Make X calls synchronous" msgstr "X कोल एकाच वेळी घडवा " #: ../bonobo/bonobo-ui-init-gtk.c:151 msgid "Don't use X shared memory extension" msgstr "X भागीदारी मेमोरी विस्तारकचा प्रयोग करू नका " #: ../bonobo/bonobo-ui-init-gtk.c:155 msgid "Program name as used by the window manager" msgstr "विन्डो प्रबंधक द्वारे प्रयुक्त प्रोग्राम नाव आहे " #: ../bonobo/bonobo-ui-init-gtk.c:155 msgid "NAME" msgstr "नाव " #: ../bonobo/bonobo-ui-init-gtk.c:158 msgid "Program class as used by the window manager" msgstr "विन्डो प्रबंधक द्वारे प्रयुक्त प्रोग्राम वर्ग आहे " #: ../bonobo/bonobo-ui-init-gtk.c:158 msgid "CLASS" msgstr "वर्ग" #: ../bonobo/bonobo-ui-init-gtk.c:161 msgid "Gtk+ debugging flags to set" msgstr "Gtk+ डिबगिंग फ्लैगला समायोजित करा " #: ../bonobo/bonobo-ui-init-gtk.c:164 msgid "Gtk+ debugging flags to unset" msgstr "Gdk+ डिबगिंग फ्लैगला असमायोजित करा" #: ../bonobo/bonobo-ui-init-gtk.c:167 msgid "Make all warnings fatal" msgstr "सर्व चेतावनिंना महत्वपूर्ण बनवा " #: ../bonobo/bonobo-ui-init-gtk.c:170 msgid "Load an additional Gtk module" msgstr "एक अतिरिक्त Gtk माड्यूल ला लोड करा " #: ../bonobo/bonobo-ui-init-gtk.c:170 msgid "MODULE" msgstr "माड्यूल" #: ../bonobo/bonobo-ui-init-gtk.c:186 msgid "GTK+" msgstr "जिटिके +" #: ../bonobo/bonobo-ui-main.c:278 msgid "Bonobo GUI support" msgstr "बोनबो GUI चा पाठिंबा " #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "B_oth" msgstr "दोन्ही (_o)" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "T_ext" msgstr "पाठ्य (_e)" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Hide t_ips" msgstr "टिप्स ला लपवा (_i)" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Show t_ips" msgstr "टिप्स ला दाखवा (_i)" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "_Hide toolbar" msgstr "टूलबार लपवा (_H)" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "Customi_ze" msgstr "आवशक्यतानुसार बनवा (_z)" #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Customize the toolbar" msgstr "टूलबार ला आवश्यकतानुसार बनवा" #: ../bonobo/bonobo-ui-toolbar.c:1115 msgid "is floating" msgstr "तरंगती आहे" #: ../bonobo/bonobo-ui-toolbar.c:1116 msgid "whether the toolbar is floating" msgstr "साधनपट्टी तरंगती आहे का" #: ../bonobo/bonobo-ui-toolbar.c:1162 msgid "Style of bevel around the toolbar" msgstr "साधनपट्टी भोवती bevel ची शैली" #: ../bonobo/bonobo-ui-util.c:601 msgid "Could not display help for this application" msgstr "या अनुप्रयोगत करीता मदत दर्शवू शकते नाही" #: ../bonobo/bonobo-ui-util.c:643 msgid "_Contents" msgstr "तत्व (_C)" #: ../bonobo/bonobo-ui-util.c:644 msgid "View help for this application" msgstr "ह्या अर्जा बद्दल मदत " #: ../bonobo/bonobo-window.c:345 msgid "Name of the window - used for configuration serialization." msgstr "चौकटचे नाव - करीता वापरण्याजोगी संयोजना श्रृंखला." #: ../bonobo/bonobo-zoomable.c:326 msgid "Zoom level" msgstr "प्रमाणित स्तर" #: ../bonobo/bonobo-zoomable.c:327 msgid "The degree of enlargment" msgstr "आकार वृद्धि चा अंश" #: ../bonobo/bonobo-zoomable.c:335 msgid "Minimum Zoom level" msgstr "किमान झूम स्तर" #: ../bonobo/bonobo-zoomable.c:336 msgid "The minimum degree of enlargment" msgstr " आकार वृद्धि चा किमान अंश" #: ../bonobo/bonobo-zoomable.c:344 msgid "Maximum Zoom level" msgstr "कमाल झूम स्तर" #: ../bonobo/bonobo-zoomable.c:345 msgid "The maximum degree of enlargment" msgstr "आकार वृद्धि चा कमाल अंश" #: ../bonobo/bonobo-zoomable.c:353 msgid "Has a minimum Zoom level" msgstr "किमान झूम स्तर आहे " #: ../bonobo/bonobo-zoomable.c:354 msgid "Whether we have a valid minimum zoom level" msgstr "किमान झूम स्थिती समाविष्टीत आहे का" #: ../bonobo/bonobo-zoomable.c:361 msgid "Has a maximum Zoom level" msgstr "कमाल झूम स्तर आहे " #: ../bonobo/bonobo-zoomable.c:362 msgid "Whether we have a valid maximum zoom level" msgstr "काय आपल्या जवळ वैध कमाल झूम स्तर आहे" #: ../bonobo/bonobo-zoomable.c:369 msgid "Is continuous" msgstr "काय सलगपणा आहे" #: ../bonobo/bonobo-zoomable.c:370 msgid "Whether we zoom continuously (as opposed to jumps)" msgstr "काय सलगपणे झूम करायचे आहे " #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:1 msgid "About this application" msgstr "ह्या अर्जा बद्दल " #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:2 msgid "Select" msgstr "निवडा " #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:3 msgid "_About..." msgstr "विषयी (_A)..." #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:4 msgid "_Edit" msgstr "संशोधित करा " #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:5 #: ../tools/browser/bonobo-browser.xml.h:4 msgid "_File" msgstr "फाइल " #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:6 msgid "_Select" msgstr "निवडा" #: ../samples/bonoboui/hello.c:63 msgid "This does nothing; it is only a demonstration." msgstr "हे काही करत नाही , हे फक्त प्रात्यक्षिक आहे." #: ../samples/bonoboui/hello.c:145 msgid "BonoboUI-Hello." msgstr "BonoboUI-Hello." #: ../samples/bonoboui/hello.c:217 msgid "Gnome Hello" msgstr "Gnome हैलो" #. Create Label and put it in the Button: #: ../samples/bonoboui/hello.c:272 msgid "Hello, World!" msgstr "नमस्कार, जग !" #: ../samples/bonoboui/hello.c:312 msgid "Cannot init libbonoboui code" msgstr "libbonoboui कोड चा प्रारंभ नाहीं करू शकत " #: ../samples/controls/bonobo-sample-controls.c:131 msgid "Could not initialize Bonobo UI" msgstr "Bonobo UI चा प्रारंभ नाहीं करू शकत" #: ../tools/browser/bonobo-browser.desktop.in.h:1 msgid "Bonobo Component Browser" msgstr "Bonobo घटक ब्राउजर" #: ../tools/browser/bonobo-browser.desktop.in.h:2 msgid "Shows available Bonobo components" msgstr "उपलब्ध Bonobo घटक दर्शवा" #: ../tools/browser/bonobo-browser.xml.h:1 msgid "About this program..." msgstr "या क्रार्यक्रम विषयी..." #: ../tools/browser/bonobo-browser.xml.h:2 msgid "Close the current window" msgstr "सद्याचे चौकट बंद करा" #: ../tools/browser/bonobo-browser.xml.h:3 msgid "Open a new window" msgstr "नविन चौकट उघडा" #: ../tools/browser/bonobo-browser.xml.h:5 msgid "_Help" msgstr "मदत (_H)" #. Build the general tab #: ../tools/browser/component-details.c:109 msgid "General" msgstr "सर्वसाधारण" #: ../tools/browser/component-details.c:116 #: ../tools/browser/component-list.c:398 msgid "IID" msgstr "IID" #: ../tools/browser/component-details.c:117 msgid "Location" msgstr "स्थान" #. Build the details tab #: ../tools/browser/component-details.c:167 msgid "Details" msgstr "तपशील" #: ../tools/browser/component-details.c:168 msgid "Detailed Information" msgstr "तपशील माहिती" #: ../tools/browser/component-list.c:367 ../tools/browser/window.c:283 msgid "Active" msgstr "सक्रीय" #: ../tools/browser/component-list.c:388 msgid "Type" msgstr "प्रकार" #: ../tools/browser/window.c:162 msgid "Component Details" msgstr "घटक तपशील" #: ../tools/browser/window.c:208 msgid "Bonobo Browser" msgstr "Bonobo ब्राउजर" #: ../tools/browser/window.c:210 msgid "Copyright 2001, The GNOME Foundation" msgstr "सर्वहक्कअधिकार 2001, The GNOME Foundation" #: ../tools/browser/window.c:211 msgid "Bonobo component browser" msgstr "Bonobo घटक ब्राउजर" #: ../tools/browser/window.c:214 msgid "translator-credits" msgstr "Sandeep Shedmake , 2008" #. create the window #: ../tools/browser/window.c:240 msgid "Component Browser" msgstr "घटक ब्राउजर" #. Fill out the tool bar #: ../tools/browser/window.c:280 msgid "All" msgstr "सर्व" #: ../tools/browser/window.c:286 msgid "Inactive" msgstr "निषक्रीय" libbonoboui-2.24.5/po/zh_TW.po0000664000076400007640000003211411546334521013060 00000000000000# Chinese (Taiwan) translation of libbonoboui. # Copyright (C) 2001, 02, 03, 06 Free Software Foundation, Inc. # Joe Man , 2001. # Abel Cheung , 2002-03, 06. # Chao-Hsiung Liao , 2009. # Wei-Lun Chao , 2010. # msgid "" msgstr "" "Project-Id-Version: libbonoboui 2.24.0\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2010-12-09 20:18+0800\n" "PO-Revision-Date: 2010-10-16 12:00+0800\n" "Last-Translator: Wei-Lun Chao \n" "Language-Team: Chinese (Taiwan) \n" "Language: \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../bonobo/bonobo-canvas-item.c:680 msgid "corba factory" msgstr "corba 工廠" #: ../bonobo/bonobo-canvas-item.c:681 msgid "The factory pointer" msgstr "表示工廠的 pointer" #: ../bonobo/bonobo-canvas-item.c:690 msgid "corba UI container" msgstr "corba 界面容器元件" #: ../bonobo/bonobo-canvas-item.c:691 msgid "The User interface container" msgstr "用戶界面容器元件" #: ../bonobo/bonobo-dock-item-grip.c:254 msgid "Dock the toolbar" msgstr "嵌入工具列" #: ../bonobo/bonobo-dock-item-grip.c:255 msgid "Undock the toolbar" msgstr "卸離工具列" #: ../bonobo/bonobo-dock-item.c:225 ../bonobo/bonobo-dock-item.c:226 #: ../bonobo/bonobo-ui-toolbar.c:1163 msgid "Shadow type" msgstr "陰影類型" #: ../bonobo/bonobo-dock-item.c:236 ../bonobo/bonobo-dock-item.c:237 #: ../bonobo/bonobo-ui-toolbar.c:1107 ../bonobo/bonobo-ui-toolbar.c:1108 msgid "Orientation" msgstr "方向" #: ../bonobo/bonobo-dock-item.c:247 ../bonobo/bonobo-dock-item.c:248 #: ../bonobo/bonobo-ui-toolbar.c:1126 ../bonobo/bonobo-ui-toolbar.c:1127 msgid "Preferred width" msgstr "偏好的寬度" #: ../bonobo/bonobo-dock-item.c:256 ../bonobo/bonobo-dock-item.c:257 #: ../bonobo/bonobo-ui-toolbar.c:1135 ../bonobo/bonobo-ui-toolbar.c:1136 msgid "Preferred height" msgstr "偏好的高度" #: ../bonobo/bonobo-file-selector-util.c:350 msgid "Select a file to open" msgstr "選取準備開啟的檔案" #: ../bonobo/bonobo-file-selector-util.c:378 msgid "Select files to open" msgstr "選取多個要開啟的檔案" #: ../bonobo/bonobo-file-selector-util.c:407 msgid "Select a filename to save" msgstr "選取準備儲存的檔案" #: ../bonobo/bonobo-plug.c:425 msgid "Event Forwarding" msgstr "傳遞動作" #: ../bonobo/bonobo-plug.c:426 msgid "Whether X events should be forwarded" msgstr "輸入裝置發出的動作應否直接傳遞至 X" #: ../bonobo/bonobo-selector-widget.c:300 ../bonobo/bonobo-window.c:347 #: ../tools/browser/component-details.c:108 #: ../tools/browser/component-list.c:369 msgid "Name" msgstr "名稱" #: ../bonobo/bonobo-selector-widget.c:322 #: ../tools/browser/component-details.c:109 msgid "Description" msgstr "描述" #: ../bonobo/bonobo-selector.c:343 msgid "Interfaces required" msgstr "需要的 interface" #: ../bonobo/bonobo-selector.c:344 msgid "" "A NULL-terminated array of interfaces which a server must support in order " "to be listed in the selector. Defaults to \"IDL:Bonobo/Embeddable:1.0\" if " "no interfaces are listed" msgstr "" "一個以 NULL 作為最後一個元素的 CORBA interface 陣列,如果 server 想在 " "selector 中出現,就必須支援這些 interface。如果沒有列出任何 interface,預設值" "為 \"IDL:Bonobo/Embeddable:1.0\"。" #: ../bonobo/bonobo-selector.c:346 msgid "Interface required entry" msgstr "必須存在的 interface 項目" #: ../bonobo/bonobo-selector.c:347 msgid "One of the interfaces that's required" msgstr "其中一個必須存在的 interface" #: ../bonobo/bonobo-ui-config-widget.c:267 msgid "Visible" msgstr "可見的" #: ../bonobo/bonobo-ui-config-widget.c:274 msgid "_Show" msgstr "顯示(_S)" #: ../bonobo/bonobo-ui-config-widget.c:281 msgid "_Hide" msgstr "隱藏(_H)" #: ../bonobo/bonobo-ui-config-widget.c:287 msgid "_View tooltips" msgstr "顯示工具列提示(_V)" #: ../bonobo/bonobo-ui-config-widget.c:292 msgid "Toolbars" msgstr "工具列" #: ../bonobo/bonobo-ui-config-widget.c:302 msgid "toolbars" msgstr "工具列" #: ../bonobo/bonobo-ui-config-widget.c:313 #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "Look" msgstr "外觀" #: ../bonobo/bonobo-ui-config-widget.c:322 #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "_Icon" msgstr "圖示(_I)" #: ../bonobo/bonobo-ui-config-widget.c:328 msgid "_Text and Icon" msgstr "圖示及文字(_T)" #: ../bonobo/bonobo-ui-config-widget.c:334 msgid "Text only" msgstr "只有文字" #: ../bonobo/bonobo-ui-config-widget.c:340 msgid "_Priority text only" msgstr "部份圖示旁邊顯示文字(_P)" #: ../bonobo/bonobo-ui-engine.c:93 msgid "Debug" msgstr "偵錯" #: ../bonobo/bonobo-ui-engine.c:93 msgid "_Dump XML" msgstr "傾印 _XML" #: ../bonobo/bonobo-ui-engine.c:94 msgid "Dump the entire UI's XML description to the console" msgstr "傾印整個用戶界面的 XML 描述資料" #: ../bonobo/bonobo-ui-engine-config.c:524 msgid "Configure UI" msgstr "設定用戶界面" #: ../bonobo/bonobo-ui-init-gtk.c:131 msgid "Gdk debugging flags to set" msgstr "準備設定的 Gdk 偵錯旗標" #: ../bonobo/bonobo-ui-init-gtk.c:131 ../bonobo/bonobo-ui-init-gtk.c:134 #: ../bonobo/bonobo-ui-init-gtk.c:162 ../bonobo/bonobo-ui-init-gtk.c:165 msgid "FLAGS" msgstr "旗標" #: ../bonobo/bonobo-ui-init-gtk.c:134 msgid "Gdk debugging flags to unset" msgstr "準備去除的 Gdk 偵錯旗標" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "X display to use" msgstr "使用的 X 畫面" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "DISPLAY" msgstr "畫面" #: ../bonobo/bonobo-ui-init-gtk.c:142 msgid "X screen to use" msgstr "使用的 X 螢幕" #: ../bonobo/bonobo-ui-init-gtk.c:142 msgid "SCREEN" msgstr "螢幕" #: ../bonobo/bonobo-ui-init-gtk.c:146 msgid "Make X calls synchronous" msgstr "使用同步方式調用 X 函式" #: ../bonobo/bonobo-ui-init-gtk.c:152 msgid "Don't use X shared memory extension" msgstr "不使用 X 分享記憶體延伸功能" #: ../bonobo/bonobo-ui-init-gtk.c:156 msgid "Program name as used by the window manager" msgstr "視窗總管中使用的程式名稱" #: ../bonobo/bonobo-ui-init-gtk.c:156 msgid "NAME" msgstr "名稱" #: ../bonobo/bonobo-ui-init-gtk.c:159 msgid "Program class as used by the window manager" msgstr "視窗總管所需的程式類別名稱" #: ../bonobo/bonobo-ui-init-gtk.c:159 msgid "CLASS" msgstr "類別" #: ../bonobo/bonobo-ui-init-gtk.c:162 msgid "Gtk+ debugging flags to set" msgstr "準備設定的 Gtk+ 偵錯旗標" #: ../bonobo/bonobo-ui-init-gtk.c:165 msgid "Gtk+ debugging flags to unset" msgstr "準備去除的 Gtk+ 偵錯旗標" #: ../bonobo/bonobo-ui-init-gtk.c:168 msgid "Make all warnings fatal" msgstr "把所有的警告訊息都當成嚴重錯誤" #: ../bonobo/bonobo-ui-init-gtk.c:171 msgid "Load an additional Gtk module" msgstr "載入額外的 Gtk 模組" #: ../bonobo/bonobo-ui-init-gtk.c:171 msgid "MODULE" msgstr "模組" #: ../bonobo/bonobo-ui-init-gtk.c:187 msgid "GTK+" msgstr "GTK+" #: ../bonobo/bonobo-ui-main.c:281 msgid "Bonobo GUI support" msgstr "Bonobo 圖形界面支援" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "B_oth" msgstr "圖文(_O)" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "T_ext" msgstr "文字(_E)" #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Hide t_ips" msgstr "隱藏提示(_I)" #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Show t_ips" msgstr "顯示提示(_I)" #: ../bonobo/bonobo-ui-sync-toolbar.c:570 msgid "_Hide toolbar" msgstr "隱藏工具列(_H)" #: ../bonobo/bonobo-ui-sync-toolbar.c:570 msgid "Customi_ze" msgstr "自選(_Z)" #: ../bonobo/bonobo-ui-sync-toolbar.c:571 msgid "Customize the toolbar" msgstr "自選工具列" #: ../bonobo/bonobo-ui-toolbar.c:1117 msgid "is floating" msgstr "是浮動" #: ../bonobo/bonobo-ui-toolbar.c:1118 msgid "whether the toolbar is floating" msgstr "工具列是否浮動" #: ../bonobo/bonobo-ui-toolbar.c:1164 msgid "Style of bevel around the toolbar" msgstr "工具列邊緣的斜邊樣式" #: ../bonobo/bonobo-ui-util.c:602 msgid "Could not display help for this application" msgstr "無法顯示有關本程式的說明文件" #: ../bonobo/bonobo-ui-util.c:644 msgid "_Contents" msgstr "內容(_C)" #: ../bonobo/bonobo-ui-util.c:645 msgid "View help for this application" msgstr "顯示有關本程式的說明文件" #: ../bonobo/bonobo-window.c:348 msgid "Name of the window - used for configuration serialization." msgstr "視窗名稱" #: ../bonobo/bonobo-zoomable.c:326 msgid "Zoom level" msgstr "縮放倍率" #: ../bonobo/bonobo-zoomable.c:327 msgid "The degree of enlargment" msgstr "放大縮小的程度" #: ../bonobo/bonobo-zoomable.c:335 msgid "Minimum Zoom level" msgstr "縮放倍率下限" #: ../bonobo/bonobo-zoomable.c:336 msgid "The minimum degree of enlargment" msgstr "最低的縮放倍率" #: ../bonobo/bonobo-zoomable.c:344 msgid "Maximum Zoom level" msgstr "縮放倍率上限" #: ../bonobo/bonobo-zoomable.c:345 msgid "The maximum degree of enlargment" msgstr "最高的縮放倍率" #: ../bonobo/bonobo-zoomable.c:353 msgid "Has a minimum Zoom level" msgstr "有縮放倍率下限" #: ../bonobo/bonobo-zoomable.c:354 msgid "Whether we have a valid minimum zoom level" msgstr "是否有有效的縮放倍率下限" #: ../bonobo/bonobo-zoomable.c:361 msgid "Has a maximum Zoom level" msgstr "有縮放倍率上限" #: ../bonobo/bonobo-zoomable.c:362 msgid "Whether we have a valid maximum zoom level" msgstr "是否有有效的縮放倍率上限" #: ../bonobo/bonobo-zoomable.c:369 msgid "Is continuous" msgstr "是連續" #: ../bonobo/bonobo-zoomable.c:370 msgid "Whether we zoom continuously (as opposed to jumps)" msgstr "可否連續放大或縮小 (不同於只有個別的縮放倍率)" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:1 msgid "About this application" msgstr "關於此程式" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:2 msgid "Select" msgstr "選擇" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:3 msgid "_About..." msgstr "關於(_A)…" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:4 msgid "_Edit" msgstr "編輯(_E)" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:5 #: ../tools/browser/bonobo-browser.xml.h:4 msgid "_File" msgstr "檔案(_F)" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:6 msgid "_Select" msgstr "選擇(_S)" #: ../samples/bonoboui/hello.c:65 msgid "This does nothing; it is only a demonstration." msgstr "這個只是示範程式。" #: ../samples/bonoboui/hello.c:147 msgid "BonoboUI-Hello." msgstr "BonoboUI-Hello." #: ../samples/bonoboui/hello.c:219 msgid "Gnome Hello" msgstr "GNOME 示範" #. Create Label and put it in the Button: #: ../samples/bonoboui/hello.c:274 msgid "Hello, World!" msgstr "您好!" #: ../samples/bonoboui/hello.c:314 msgid "Cannot init libbonoboui code" msgstr "無法初始化 libbonoboui 的源代碼" #: ../samples/controls/bonobo-sample-controls.c:133 msgid "Could not initialize Bonobo UI" msgstr "無法初始化 Bonobo 圖形界面" #: ../tools/browser/bonobo-browser.desktop.in.h:1 msgid "Bonobo Component Browser" msgstr "Bonobo 元件瀏覽器" #: ../tools/browser/bonobo-browser.desktop.in.h:2 msgid "Shows available Bonobo components" msgstr "顯示現有的 Bonobo 元件" #: ../tools/browser/bonobo-browser.xml.h:1 msgid "About this program..." msgstr "關於本程式…" #: ../tools/browser/bonobo-browser.xml.h:2 msgid "Close the current window" msgstr "關閉目前的視窗" #: ../tools/browser/bonobo-browser.xml.h:3 msgid "Open a new window" msgstr "開啟新視窗" #: ../tools/browser/bonobo-browser.xml.h:5 msgid "_Help" msgstr "求助(_H)" #. Build the general tab #: ../tools/browser/component-details.c:103 msgid "General" msgstr "一般" #: ../tools/browser/component-details.c:110 #: ../tools/browser/component-list.c:389 msgid "IID" msgstr "IID" #: ../tools/browser/component-details.c:111 msgid "Location" msgstr "位置" #. Build the details tab #: ../tools/browser/component-details.c:161 msgid "Details" msgstr "詳細資料" #: ../tools/browser/component-details.c:162 msgid "Detailed Information" msgstr "詳細資料" #: ../tools/browser/component-list.c:358 ../tools/browser/window.c:283 msgid "Active" msgstr "使用中" #: ../tools/browser/component-list.c:379 msgid "Type" msgstr "類型" #: ../tools/browser/window.c:162 msgid "Component Details" msgstr "元件的詳細資料" #: ../tools/browser/window.c:208 msgid "Bonobo Browser" msgstr "Bonobo 瀏覽器" #: ../tools/browser/window.c:210 msgid "Copyright 2001, The GNOME Foundation" msgstr "版權所有 2001, The GNOME Foundation" #: ../tools/browser/window.c:211 msgid "Bonobo component browser" msgstr "Bonobo 元件瀏覽器" #: ../tools/browser/window.c:214 msgid "translator-credits" msgstr "" "如對翻譯有任何意見,請送一封電子郵件給\n" "以下地址,GNOME 翻譯團隊會儘快回覆您:\n" "zh-l10n@lists.linux.org.tw\n" "\n" "Abel Cheung , 2002-03, 06\n" "Joe Man , 2001" #. create the window #: ../tools/browser/window.c:240 msgid "Component Browser" msgstr "元件瀏覽器" #. Fill out the tool bar #: ../tools/browser/window.c:280 msgid "All" msgstr "全部" #: ../tools/browser/window.c:286 msgid "Inactive" msgstr "不使用" libbonoboui-2.24.5/po/ar.po0000644000076400007640000003507011173072741012430 00000000000000# translation of libbonoboui.HEAD.ar.po to Arabic # translation of libbonoboui.HEAD.ar.po to # translation of libbonoboui.po to # This file is distributed under the same license as the PACKAGE package. # Copyright (C) 2003 THE PACKAGE'S COPYRIGHT HOLDER # # Isam Bayazidi , 2002. # Arafat Medini , 2003, 2004. # Khaled Hosny , 2006, 2007, 2008. msgid "" msgstr "" "Project-Id-Version: libbonoboui.HEAD.ar\n" "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?" "product=libbonoboui&component=general\n" "POT-Creation-Date: 2009-03-16 02:38+0000\n" "PO-Revision-Date: 2008-01-11 14:50+0200\n" "Last-Translator: Khaled Hosny \n" "Language-Team: Arabic \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Generator: KBabel 1.11.4\n" "Plural-Forms: nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n>=3 && " "n<=10 ? 3 : n>=11 && n<=99 ? 4 : 5;\n" #: ../bonobo/bonobo-canvas-item.c:680 msgid "corba factory" msgstr "مصنع corba" #: ../bonobo/bonobo-canvas-item.c:681 msgid "The factory pointer" msgstr "مؤشر المصنع" #: ../bonobo/bonobo-canvas-item.c:690 msgid "corba UI container" msgstr "حاوي واجهة مستخدم Corba" #: ../bonobo/bonobo-canvas-item.c:691 msgid "The User interface container" msgstr "حاوي واجهة المستخدم" #: ../bonobo/bonobo-dock-item-grip.c:254 msgid "Dock the toolbar" msgstr "ارساء شريط الأدوات" #: ../bonobo/bonobo-dock-item-grip.c:255 msgid "Undock the toolbar" msgstr "إلغاء ارساء شريط الأدوات" #: ../bonobo/bonobo-dock-item.c:225 ../bonobo/bonobo-dock-item.c:226 #: ../bonobo/bonobo-ui-toolbar.c:1163 msgid "Shadow type" msgstr "نوع الظل" #: ../bonobo/bonobo-dock-item.c:236 ../bonobo/bonobo-dock-item.c:237 #: ../bonobo/bonobo-ui-toolbar.c:1107 ../bonobo/bonobo-ui-toolbar.c:1108 msgid "Orientation" msgstr "الاتجاه" #: ../bonobo/bonobo-dock-item.c:247 ../bonobo/bonobo-dock-item.c:248 #: ../bonobo/bonobo-ui-toolbar.c:1126 ../bonobo/bonobo-ui-toolbar.c:1127 msgid "Preferred width" msgstr "العرض المفضّل" #: ../bonobo/bonobo-dock-item.c:256 ../bonobo/bonobo-dock-item.c:257 #: ../bonobo/bonobo-ui-toolbar.c:1135 ../bonobo/bonobo-ui-toolbar.c:1136 msgid "Preferred height" msgstr "الارتفاع المفضّل" #: ../bonobo/bonobo-file-selector-util.c:350 msgid "Select a file to open" msgstr "اختر ملفّا لفتحه" #: ../bonobo/bonobo-file-selector-util.c:378 msgid "Select files to open" msgstr "اختر ملفّات لفتحها" #: ../bonobo/bonobo-file-selector-util.c:407 msgid "Select a filename to save" msgstr "اختر اسم ملف للحفظ" #: ../bonobo/bonobo-plug.c:425 msgid "Event Forwarding" msgstr "تمرير الأحداث" #: ../bonobo/bonobo-plug.c:426 msgid "Whether X events should be forwarded" msgstr "فيما إذا وجب تمرير أحداث س" #: ../bonobo/bonobo-selector-widget.c:300 ../bonobo/bonobo-window.c:347 #: ../tools/browser/component-details.c:108 #: ../tools/browser/component-list.c:369 msgid "Name" msgstr "الاسم" #: ../bonobo/bonobo-selector-widget.c:322 #: ../tools/browser/component-details.c:109 msgid "Description" msgstr "الوصف" #: ../bonobo/bonobo-selector.c:343 msgid "Interfaces required" msgstr "الواجهات مطلوبة" #: ../bonobo/bonobo-selector.c:344 msgid "" "A NULL-terminated array of interfaces which a server must support in order " "to be listed in the selector. Defaults to \"IDL:Bonobo/Embeddable:1.0\" if " "no interfaces are listed" msgstr "" "مصفوفة منتهية بـNULL للواجهات التي يجب على الخادوم أن يدعمها حتى يتم سرْدها " "في أداة الإختيار. الخيار المبدئي هو \"IDL:Bonobo/Embeddable:1.0\" إذا لم " "تُسْرد أية واجهات" #: ../bonobo/bonobo-selector.c:346 msgid "Interface required entry" msgstr "خانة تطلُبها الواجهة" #: ../bonobo/bonobo-selector.c:347 msgid "One of the interfaces that's required" msgstr "إحدى الواجهات المطلوبة" #: ../bonobo/bonobo-ui-config-widget.c:267 msgid "Visible" msgstr "مرئي" #: ../bonobo/bonobo-ui-config-widget.c:274 msgid "_Show" msgstr "ا_عرض" #: ../bonobo/bonobo-ui-config-widget.c:281 msgid "_Hide" msgstr "ا_خفِ" #: ../bonobo/bonobo-ui-config-widget.c:287 msgid "_View tooltips" msgstr "ا_عرض تلميحات الأدوات" #: ../bonobo/bonobo-ui-config-widget.c:292 msgid "Toolbars" msgstr "أشرطة الأدوات" #: ../bonobo/bonobo-ui-config-widget.c:302 msgid "toolbars" msgstr "أشرطة الأدوات" #: ../bonobo/bonobo-ui-config-widget.c:313 #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "Look" msgstr "المظهر" #: ../bonobo/bonobo-ui-config-widget.c:322 #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "_Icon" msgstr "أ_يقونة" #: ../bonobo/bonobo-ui-config-widget.c:328 msgid "_Text and Icon" msgstr "_نص و أيقونة" #: ../bonobo/bonobo-ui-config-widget.c:334 msgid "Text only" msgstr "نص فقط" #: ../bonobo/bonobo-ui-config-widget.c:340 msgid "_Priority text only" msgstr "النص ال_مهم فقط" #: ../bonobo/bonobo-ui-engine.c:93 msgid "Debug" msgstr "نقِّح" #: ../bonobo/bonobo-ui-engine.c:93 msgid "_Dump XML" msgstr "ا_طرح XML" #: ../bonobo/bonobo-ui-engine.c:94 msgid "Dump the entire UI's XML description to the console" msgstr "اطرح كامل وصف XML لواجهة المستخدم إلى الشاشة الطرفية" #: ../bonobo/bonobo-ui-engine-config.c:524 msgid "Configure UI" msgstr "اضبط واجهة المستخدم" #: ../bonobo/bonobo-ui-init-gtk.c:131 msgid "Gdk debugging flags to set" msgstr "شارات تنقيح Gdk التي ستُضبط" #: ../bonobo/bonobo-ui-init-gtk.c:131 ../bonobo/bonobo-ui-init-gtk.c:134 #: ../bonobo/bonobo-ui-init-gtk.c:162 ../bonobo/bonobo-ui-init-gtk.c:165 msgid "FLAGS" msgstr "شارات" #: ../bonobo/bonobo-ui-init-gtk.c:134 msgid "Gdk debugging flags to unset" msgstr "شارات تنقيح Gdk التي ستُصفّر" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "X display to use" msgstr "مِعراض س الذي سيُستعمل" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "DISPLAY" msgstr "مِعراض" #: ../bonobo/bonobo-ui-init-gtk.c:142 msgid "X screen to use" msgstr "شاشة س التي ستُستعمل" #: ../bonobo/bonobo-ui-init-gtk.c:142 msgid "SCREEN" msgstr "شاشة" #: ../bonobo/bonobo-ui-init-gtk.c:146 msgid "Make X calls synchronous" msgstr "اجعل نداءات س متزامنة" #: ../bonobo/bonobo-ui-init-gtk.c:152 msgid "Don't use X shared memory extension" msgstr "لا تستخدم امتداد ذاكرة س المشتركة" #: ../bonobo/bonobo-ui-init-gtk.c:156 msgid "Program name as used by the window manager" msgstr "اسم البرنامج كما يستخدمه مدير النوافذ" #: ../bonobo/bonobo-ui-init-gtk.c:156 msgid "NAME" msgstr "اسم" #: ../bonobo/bonobo-ui-init-gtk.c:159 msgid "Program class as used by the window manager" msgstr "صنف البرنامج كما يستخدمه مدير النوافذ" #: ../bonobo/bonobo-ui-init-gtk.c:159 msgid "CLASS" msgstr "صنف" #: ../bonobo/bonobo-ui-init-gtk.c:162 msgid "Gtk+ debugging flags to set" msgstr "شارات تنقيح ج‌ت‌ك+ التي ستُضبط" #: ../bonobo/bonobo-ui-init-gtk.c:165 msgid "Gtk+ debugging flags to unset" msgstr "شارات تنقيح ج‌ت‌ك+ التي ستُصفّر" #: ../bonobo/bonobo-ui-init-gtk.c:168 msgid "Make all warnings fatal" msgstr "اجعل جميع التحذيرات قاتلة" #: ../bonobo/bonobo-ui-init-gtk.c:171 msgid "Load an additional Gtk module" msgstr "حمِّل وحدة ج‌ت‌ك إضافية" #: ../bonobo/bonobo-ui-init-gtk.c:171 msgid "MODULE" msgstr "وحدة" #: ../bonobo/bonobo-ui-init-gtk.c:187 msgid "GTK+" msgstr "ج‌ت‌ك+" #: ../bonobo/bonobo-ui-main.c:281 msgid "Bonobo GUI support" msgstr "دعم بونوبو لواجهة المستخدم" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "B_oth" msgstr "_كلاهما" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "T_ext" msgstr "_نص" #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Hide t_ips" msgstr "اخفِ الت_لميحات" #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Show t_ips" msgstr "اظهر الت_لميحات" #: ../bonobo/bonobo-ui-sync-toolbar.c:570 msgid "_Hide toolbar" msgstr "اخفِ _شريط الأدوات" #: ../bonobo/bonobo-ui-sync-toolbar.c:570 msgid "Customi_ze" msgstr "_خصِّص" #: ../bonobo/bonobo-ui-sync-toolbar.c:571 msgid "Customize the toolbar" msgstr "خصِّص شريط الأدوات" #: ../bonobo/bonobo-ui-toolbar.c:1117 msgid "is floating" msgstr "يطفو" #: ../bonobo/bonobo-ui-toolbar.c:1118 msgid "whether the toolbar is floating" msgstr "ما إذا كان شريط الأدوات يطفو" #: ../bonobo/bonobo-ui-toolbar.c:1164 msgid "Style of bevel around the toolbar" msgstr "أسلوب تحسين الحواف حول شريط الأدوات" #: ../bonobo/bonobo-ui-util.c:602 msgid "Could not display help for this application" msgstr "تعذّر عرض المساعدة لهذا التطبيق" #: ../bonobo/bonobo-ui-util.c:644 msgid "_Contents" msgstr "الم_حتويات" #: ../bonobo/bonobo-ui-util.c:645 msgid "View help for this application" msgstr "اعرض مساعدة هذا التطبيق" #: ../bonobo/bonobo-window.c:348 msgid "Name of the window - used for configuration serialization." msgstr "اسم النافذة - يستعمل لتنسيق الإعدادات." #: ../bonobo/bonobo-zoomable.c:326 msgid "Zoom level" msgstr "مستوى التقريب" #: ../bonobo/bonobo-zoomable.c:327 msgid "The degree of enlargment" msgstr "درجة التكبير" #: ../bonobo/bonobo-zoomable.c:335 msgid "Minimum Zoom level" msgstr "مستوى التقريب الأدنى" #: ../bonobo/bonobo-zoomable.c:336 msgid "The minimum degree of enlargment" msgstr "أدنى درجة للتكبير" #: ../bonobo/bonobo-zoomable.c:344 msgid "Maximum Zoom level" msgstr "مستوى التقريب الأقصى" #: ../bonobo/bonobo-zoomable.c:345 msgid "The maximum degree of enlargment" msgstr "أقصى درجة للتكبير" #: ../bonobo/bonobo-zoomable.c:353 msgid "Has a minimum Zoom level" msgstr "له مستوى تقريب أدنى" #: ../bonobo/bonobo-zoomable.c:354 msgid "Whether we have a valid minimum zoom level" msgstr "فيما إذا كان لنا مستوى تقريب أدنى سليم" #: ../bonobo/bonobo-zoomable.c:361 msgid "Has a maximum Zoom level" msgstr "له متسوى تقريب أقصى" #: ../bonobo/bonobo-zoomable.c:362 msgid "Whether we have a valid maximum zoom level" msgstr "فيما إذا كان لنا مستوى تقريب أقصى سليم" #: ../bonobo/bonobo-zoomable.c:369 msgid "Is continuous" msgstr "مستمر" #: ../bonobo/bonobo-zoomable.c:370 msgid "Whether we zoom continuously (as opposed to jumps)" msgstr "فيما إذا سنقرب باستمرار (عكس التقريب المتدرج)" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:1 msgid "About this application" msgstr "عنْ هذا التطبيق" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:2 msgid "Select" msgstr "اختر" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:3 msgid "_About..." msgstr "_عنْ..." #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:4 msgid "_Edit" msgstr "_حرِّر" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:5 #: ../tools/browser/bonobo-browser.xml.h:4 msgid "_File" msgstr "_ملف" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:6 msgid "_Select" msgstr "ا_ختر" #: ../samples/bonoboui/hello.c:65 msgid "This does nothing; it is only a demonstration." msgstr "هذا لا يفعل شيئًا، للعرض فقط." #: ../samples/bonoboui/hello.c:147 msgid "BonoboUI-Hello." msgstr "BonoboUI-Hello." #: ../samples/bonoboui/hello.c:219 msgid "Gnome Hello" msgstr "أهلا جنوم" #. Create Label and put it in the Button: #: ../samples/bonoboui/hello.c:274 msgid "Hello, World!" msgstr "أهلا، يا عالم!" #: ../samples/bonoboui/hello.c:314 msgid "Cannot init libbonoboui code" msgstr "تعذّر تشغيل شفرة libbonoboui" #: ../samples/controls/bonobo-sample-controls.c:133 msgid "Could not initialize Bonobo UI" msgstr "تعذّر تشغيل واجهة مستخدم بونوبو" #: ../tools/browser/bonobo-browser.desktop.in.h:1 msgid "Bonobo Component Browser" msgstr "متصفحّ مكوّنات بونوبو" #: ../tools/browser/bonobo-browser.desktop.in.h:2 msgid "Shows available Bonobo components" msgstr "يعرض مكوّنات بونوبو المتوفّرة" #: ../tools/browser/bonobo-browser.xml.h:1 msgid "About this program..." msgstr "عنْ هذا البرنامج..." #: ../tools/browser/bonobo-browser.xml.h:2 msgid "Close the current window" msgstr "اغلق النّافذة الحاليّة" #: ../tools/browser/bonobo-browser.xml.h:3 msgid "Open a new window" msgstr "افتح نافذة جديدة" #: ../tools/browser/bonobo-browser.xml.h:5 msgid "_Help" msgstr "_مساعدة" #. Build the general tab #: ../tools/browser/component-details.c:103 msgid "General" msgstr "عامّ" #: ../tools/browser/component-details.c:110 #: ../tools/browser/component-list.c:389 msgid "IID" msgstr "IID" #: ../tools/browser/component-details.c:111 msgid "Location" msgstr "المكان" #. Build the details tab #: ../tools/browser/component-details.c:161 msgid "Details" msgstr "التّفاصيل" #: ../tools/browser/component-details.c:162 msgid "Detailed Information" msgstr "معلومات مفصّلة" #: ../tools/browser/component-list.c:358 ../tools/browser/window.c:283 msgid "Active" msgstr "نشط" #: ../tools/browser/component-list.c:379 msgid "Type" msgstr "النّوع" #: ../tools/browser/window.c:162 msgid "Component Details" msgstr "تفاصيل المكوّن" #: ../tools/browser/window.c:208 msgid "Bonobo Browser" msgstr "متصفّح بونوبو" #: ../tools/browser/window.c:210 msgid "Copyright 2001, The GNOME Foundation" msgstr "حقوق النشر 2001، مؤسّسة جنوم" #: ../tools/browser/window.c:211 msgid "Bonobo component browser" msgstr "متصفّح مكوّنات بونوبو" #: ../tools/browser/window.c:214 msgid "translator-credits" msgstr "" "فريق عرب آيز للترجمة http://www.arabeyes.org:\n" "جهاد عفيفي\t\n" "خالد حسني\t" #. create the window #: ../tools/browser/window.c:240 msgid "Component Browser" msgstr "متصفّح المكوّنات" #. Fill out the tool bar #: ../tools/browser/window.c:280 msgid "All" msgstr "الكل" #: ../tools/browser/window.c:286 msgid "Inactive" msgstr "غير نشط" libbonoboui-2.24.5/po/bg.po0000644000076400007640000004036011173072741012414 00000000000000# Bulgarian translation of libbonoboui po-file. # Copyright (C) 2002, 2004, 2005, 2006, 2008 Free Software Foundation, Inc. # Alexander Shopov , 2002, 2005, 2006, 2008. # Yanko Kaneti , 2002. # Vladimir Petkov , 2004. # Rostislav Raykov , 2004. # # # msgid "" msgstr "" "Project-Id-Version: libbonoboui trunk\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2008-09-29 23:16+0300\n" "PO-Revision-Date: 2008-09-29 23:14+0300\n" "Last-Translator: Alexander Shopov \n" "Language-Team: Bulgarian \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" #: ../bonobo/bonobo-canvas-item.c:680 msgid "corba factory" msgstr "фабрика corba" #: ../bonobo/bonobo-canvas-item.c:681 msgid "The factory pointer" msgstr "Указателят на фабриката" #: ../bonobo/bonobo-canvas-item.c:690 msgid "corba UI container" msgstr "контейнер на corba на потр. интерфейс" #: ../bonobo/bonobo-canvas-item.c:691 msgid "The User interface container" msgstr "Контейнер на потребителския интерфейс" #: ../bonobo/bonobo-dock-item-grip.c:255 msgid "Dock the toolbar" msgstr "Залепване на лентата с инструменти" #: ../bonobo/bonobo-dock-item-grip.c:256 msgid "Undock the toolbar" msgstr "Отлепване на лентата с инструменти" #: ../bonobo/bonobo-dock-item.c:228 ../bonobo/bonobo-dock-item.c:229 #: ../bonobo/bonobo-ui-toolbar.c:1161 msgid "Shadow type" msgstr "Тип сянка" #: ../bonobo/bonobo-dock-item.c:239 ../bonobo/bonobo-dock-item.c:240 #: ../bonobo/bonobo-ui-toolbar.c:1105 ../bonobo/bonobo-ui-toolbar.c:1106 msgid "Orientation" msgstr "Ориентация" #: ../bonobo/bonobo-dock-item.c:250 ../bonobo/bonobo-dock-item.c:251 #: ../bonobo/bonobo-ui-toolbar.c:1124 ../bonobo/bonobo-ui-toolbar.c:1125 msgid "Preferred width" msgstr "Предпочитана ширина" #: ../bonobo/bonobo-dock-item.c:259 ../bonobo/bonobo-dock-item.c:260 #: ../bonobo/bonobo-ui-toolbar.c:1133 ../bonobo/bonobo-ui-toolbar.c:1134 msgid "Preferred height" msgstr "Предпочитана височина" #: ../bonobo/bonobo-file-selector-util.c:355 msgid "Select a file to open" msgstr "Избор на файл за отваряне" #: ../bonobo/bonobo-file-selector-util.c:383 msgid "Select files to open" msgstr "Избор на файлове за отваряне" #: ../bonobo/bonobo-file-selector-util.c:412 msgid "Select a filename to save" msgstr "Избор на име на файл за запис" #: ../bonobo/bonobo-plug.c:423 msgid "Event Forwarding" msgstr "Препредаване на събития" #: ../bonobo/bonobo-plug.c:424 msgid "Whether X events should be forwarded" msgstr "Дали X събитията да се препредават" #: ../bonobo/bonobo-selector-widget.c:297 ../bonobo/bonobo-window.c:344 #: ../tools/browser/component-details.c:114 #: ../tools/browser/component-list.c:378 msgid "Name" msgstr "Име" #: ../bonobo/bonobo-selector-widget.c:319 #: ../tools/browser/component-details.c:115 msgid "Description" msgstr "Описание" #: ../bonobo/bonobo-selector.c:343 msgid "Interfaces required" msgstr "Необходими интерфейси" #: ../bonobo/bonobo-selector.c:344 msgid "" "A NULL-terminated array of interfaces which a server must support in order " "to be listed in the selector. Defaults to \"IDL:Bonobo/Embeddable:1.0\" if " "no interfaces are listed" msgstr "" "Списък от интерфейси завършван с NULL, които един сървър трябва да поддържа, " "за да бъде включен в списъка. По подразбиране при празен списък е „IDL:" "Bonobo/Embeddable:1.0“" #: ../bonobo/bonobo-selector.c:346 msgid "Interface required entry" msgstr "Поле за необходим интерфейс" #: ../bonobo/bonobo-selector.c:347 msgid "One of the interfaces that's required" msgstr "Един от интерфейсите, които са необходими" #: ../bonobo/bonobo-ui-config-widget.c:265 msgid "Visible" msgstr "Видим" #: ../bonobo/bonobo-ui-config-widget.c:272 msgid "_Show" msgstr "_Показване" #: ../bonobo/bonobo-ui-config-widget.c:279 msgid "_Hide" msgstr "_Скриване" #: ../bonobo/bonobo-ui-config-widget.c:285 msgid "_View tooltips" msgstr "П_реглед на подсказките" #: ../bonobo/bonobo-ui-config-widget.c:290 msgid "Toolbars" msgstr "Ленти с инструменти" #: ../bonobo/bonobo-ui-config-widget.c:300 msgid "toolbars" msgstr "ленти с инструменти" #: ../bonobo/bonobo-ui-config-widget.c:311 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "Look" msgstr "Изглед" #: ../bonobo/bonobo-ui-config-widget.c:320 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "_Icon" msgstr "_Икона" #: ../bonobo/bonobo-ui-config-widget.c:326 msgid "_Text and Icon" msgstr "_Текст и икони" #: ../bonobo/bonobo-ui-config-widget.c:332 msgid "Text only" msgstr "Те_кст" #: ../bonobo/bonobo-ui-config-widget.c:338 msgid "_Priority text only" msgstr "Само важ_ния текст" #: ../bonobo/bonobo-ui-engine.c:91 msgid "Debug" msgstr "Изчистване на грешки" #: ../bonobo/bonobo-ui-engine.c:91 msgid "_Dump XML" msgstr "_Показване на XML" #: ../bonobo/bonobo-ui-engine.c:92 msgid "Dump the entire UI's XML description to the console" msgstr "" "Показване на цялото описание на потребителския интерфейс в XML на конзолата" #: ../bonobo/bonobo-ui-engine-config.c:522 msgid "Configure UI" msgstr "Настройки на потребителски интерфейс" #: ../bonobo/bonobo-ui-init-gtk.c:131 msgid "Gdk debugging flags to set" msgstr "Флагове за изчистване на грешки на gdk, който да се включат" #: ../bonobo/bonobo-ui-init-gtk.c:131 ../bonobo/bonobo-ui-init-gtk.c:134 #: ../bonobo/bonobo-ui-init-gtk.c:162 ../bonobo/bonobo-ui-init-gtk.c:165 msgid "FLAGS" msgstr "ФЛАГОВЕ" #: ../bonobo/bonobo-ui-init-gtk.c:134 msgid "Gdk debugging flags to unset" msgstr "Флагове за изчистване на грешки на gdk, който да се изключат" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "X display to use" msgstr "X дисплей, който да се използва" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "DISPLAY" msgstr "ДИСПЛЕЙ" #: ../bonobo/bonobo-ui-init-gtk.c:142 msgid "X screen to use" msgstr "X екран, който да се използва" #: ../bonobo/bonobo-ui-init-gtk.c:142 msgid "SCREEN" msgstr "ЕКРАН" #: ../bonobo/bonobo-ui-init-gtk.c:146 msgid "Make X calls synchronous" msgstr "Синхронни X извиквания" #: ../bonobo/bonobo-ui-init-gtk.c:152 msgid "Don't use X shared memory extension" msgstr "Забрана на използването на X разширението за споделена памет" #: ../bonobo/bonobo-ui-init-gtk.c:156 msgid "Program name as used by the window manager" msgstr "Име на програмата, както е използвано от мениджъра на прозорци" #: ../bonobo/bonobo-ui-init-gtk.c:156 msgid "NAME" msgstr "ИМЕ" #: ../bonobo/bonobo-ui-init-gtk.c:159 msgid "Program class as used by the window manager" msgstr "Клас на програмата, както е използван от мениджъра на прозорци" #: ../bonobo/bonobo-ui-init-gtk.c:159 msgid "CLASS" msgstr "КЛАС" #: ../bonobo/bonobo-ui-init-gtk.c:162 msgid "Gtk+ debugging flags to set" msgstr "Флагове за за изчистване на грешки на gtk+, който да се включат" #: ../bonobo/bonobo-ui-init-gtk.c:165 msgid "Gtk+ debugging flags to unset" msgstr "Флагове за за изчистване на грешки на gtk+, който да се изключат" #: ../bonobo/bonobo-ui-init-gtk.c:168 msgid "Make all warnings fatal" msgstr "Всички предупреждения да са фатални" #: ../bonobo/bonobo-ui-init-gtk.c:171 msgid "Load an additional Gtk module" msgstr "Зареждане на допълнителен модул на gtk+" #: ../bonobo/bonobo-ui-init-gtk.c:171 msgid "MODULE" msgstr "МОДУЛ" #: ../bonobo/bonobo-ui-init-gtk.c:187 msgid "GTK+" msgstr "GTK+" #: ../bonobo/bonobo-ui-main.c:278 msgid "Bonobo GUI support" msgstr "Поддръжка на потребителски интерфейс за Bonobo" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "B_oth" msgstr "_Двете" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "T_ext" msgstr "Т_екст" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Hide t_ips" msgstr "_Скриване на подсказки" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Show t_ips" msgstr "Показване на по_дсказки" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "_Hide toolbar" msgstr "С_криване на лентата с инструменти" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "Customi_ze" msgstr "Настро_йки" #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Customize the toolbar" msgstr "Настройки на лентата с инструменти" #: ../bonobo/bonobo-ui-toolbar.c:1115 msgid "is floating" msgstr "е свободна" #: ../bonobo/bonobo-ui-toolbar.c:1116 msgid "whether the toolbar is floating" msgstr "дали лентата с инструменти е свободна" #: ../bonobo/bonobo-ui-toolbar.c:1162 msgid "Style of bevel around the toolbar" msgstr "Стилът на повдигането около лентата с инструменти" #: ../bonobo/bonobo-ui-util.c:601 msgid "Could not display help for this application" msgstr "Помощта за това приложение не може да бъде показана" #: ../bonobo/bonobo-ui-util.c:643 msgid "_Contents" msgstr "_Ръководство" #: ../bonobo/bonobo-ui-util.c:644 msgid "View help for this application" msgstr "Показване на помощ за това приложение" #: ../bonobo/bonobo-window.c:345 msgid "Name of the window - used for configuration serialization." msgstr "Име на прозореца - използва се за сериализация на конфигурацията." #: ../bonobo/bonobo-zoomable.c:326 msgid "Zoom level" msgstr "Увеличение" #: ../bonobo/bonobo-zoomable.c:327 msgid "The degree of enlargment" msgstr "Процент увеличение" #: ../bonobo/bonobo-zoomable.c:335 msgid "Minimum Zoom level" msgstr "Минимално увеличение" #: ../bonobo/bonobo-zoomable.c:336 msgid "The minimum degree of enlargment" msgstr "Минимален процент увеличение" #: ../bonobo/bonobo-zoomable.c:344 msgid "Maximum Zoom level" msgstr "Максимално увеличение" #: ../bonobo/bonobo-zoomable.c:345 msgid "The maximum degree of enlargment" msgstr "Максимален процент увеличение" #: ../bonobo/bonobo-zoomable.c:353 msgid "Has a minimum Zoom level" msgstr "Има минимално ниво на увеличение" #: ../bonobo/bonobo-zoomable.c:354 msgid "Whether we have a valid minimum zoom level" msgstr "Дали има валидно минимално ниво на увеличение" #: ../bonobo/bonobo-zoomable.c:361 msgid "Has a maximum Zoom level" msgstr "Има максимално ниво на увеличение" #: ../bonobo/bonobo-zoomable.c:362 msgid "Whether we have a valid maximum zoom level" msgstr "Дали има валидно максимално ниво на увеличение" #: ../bonobo/bonobo-zoomable.c:369 msgid "Is continuous" msgstr "Непрекъснато е" #: ../bonobo/bonobo-zoomable.c:370 msgid "Whether we zoom continuously (as opposed to jumps)" msgstr "Дали увеличаваме непрекъснато (не с дискретни стойности)" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:1 msgid "About this application" msgstr "Информация за приложението" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:2 msgid "Select" msgstr "Избор" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:3 msgid "_About..." msgstr "Информ_ация…" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:4 msgid "_Edit" msgstr "Р_едактиране" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:5 #: ../tools/browser/bonobo-browser.xml.h:4 msgid "_File" msgstr "_Файл" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:6 msgid "_Select" msgstr "_Избор" #: ../samples/bonoboui/hello.c:63 msgid "This does nothing; it is only a demonstration." msgstr "Не прави нищо, това е само демонстрация." #: ../samples/bonoboui/hello.c:145 msgid "BonoboUI-Hello." msgstr "BonoboUI-Здравей" #: ../samples/bonoboui/hello.c:217 msgid "Gnome Hello" msgstr "Здравей на Gnome" #. Create Label and put it in the Button: #: ../samples/bonoboui/hello.c:272 msgid "Hello, World!" msgstr "Здравей, Свят!" #: ../samples/bonoboui/hello.c:312 msgid "Cannot init libbonoboui code" msgstr "Не може да се инициализира кода на libbonoboui" #: ../samples/controls/bonobo-sample-controls.c:131 msgid "Could not initialize Bonobo UI" msgstr "Грешка при инициализацията на Bonobo UI" #: ../tools/browser/bonobo-browser.desktop.in.h:1 msgid "Bonobo Component Browser" msgstr "Компонент за браузър на Bonobo" #: ../tools/browser/bonobo-browser.desktop.in.h:2 msgid "Shows available Bonobo components" msgstr "Показване на наличните компоненти на Bonobo" #: ../tools/browser/bonobo-browser.xml.h:1 msgid "About this program..." msgstr "Относно тази програма…" #: ../tools/browser/bonobo-browser.xml.h:2 msgid "Close the current window" msgstr "Затваряне на текущия прозорец" #: ../tools/browser/bonobo-browser.xml.h:3 msgid "Open a new window" msgstr "Отваряне на нов прозорец" #: ../tools/browser/bonobo-browser.xml.h:5 msgid "_Help" msgstr "Помо_щ" #. Build the general tab #: ../tools/browser/component-details.c:109 msgid "General" msgstr "Основен" #: ../tools/browser/component-details.c:116 #: ../tools/browser/component-list.c:398 msgid "IID" msgstr "IID" #: ../tools/browser/component-details.c:117 msgid "Location" msgstr "Местоположение" #. Build the details tab #: ../tools/browser/component-details.c:167 msgid "Details" msgstr "Подробности" #: ../tools/browser/component-details.c:168 msgid "Detailed Information" msgstr "Подробна информация" #: ../tools/browser/component-list.c:367 ../tools/browser/window.c:283 msgid "Active" msgstr "Активен" #: ../tools/browser/component-list.c:388 msgid "Type" msgstr "Тип" #: ../tools/browser/window.c:162 msgid "Component Details" msgstr "Подробности за компонента" #: ../tools/browser/window.c:208 msgid "Bonobo Browser" msgstr "Браузър на Bonobo" #: ../tools/browser/window.c:210 msgid "Copyright 2001, The GNOME Foundation" msgstr "Copyright 2001, The GNOME Foundation" #: ../tools/browser/window.c:211 msgid "Bonobo component browser" msgstr "Компонент за браузър на Bonobo" #: ../tools/browser/window.c:214 msgid "translator-credits" msgstr "" "Александър Шопов \n" "Янко Канети \n" "Владимир Петков \n" "Ростислав Райков \n" "\n" "Проектът за превод на GNOME има нужда от подкрепа.\n" "Научете повече за нас на http://gnome.cult.bg\n" "Докладвайте за грешки на http://gnome.cult.bg/bugs" #. create the window #: ../tools/browser/window.c:240 msgid "Component Browser" msgstr "Браузър за компоненти" #. Fill out the tool bar #: ../tools/browser/window.c:280 msgid "All" msgstr "Всички" #: ../tools/browser/window.c:286 msgid "Inactive" msgstr "Неактивен" libbonoboui-2.24.5/po/nl.po0000644000076400007640000003232711173072741012441 00000000000000# Dutch translation of libbonoboui. # Nederlandse vertaling van libbonboui. # # Copyright (C) 2002 Free Software Foundation, Inc. # This file is distributed under the same license as the libbonoboUI package. # # Huib Kleinhout , 2002, 2003. # Tino Meinen , 2005. # msgid "" msgstr "" "Project-Id-Version: libbonoboui 2.0\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2008-01-24 00:02+0100\n" "PO-Revision-Date: 2006-08-14 09:15+0200 \n" "Last-Translator: Vincent van Adrighem \n" "Language-Team: Dutch \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../bonobo/bonobo-canvas-item.c:680 msgid "corba factory" msgstr "corba-fabriek" #: ../bonobo/bonobo-canvas-item.c:681 msgid "The factory pointer" msgstr "De fabriekpointer" #: ../bonobo/bonobo-canvas-item.c:690 msgid "corba UI container" msgstr "corba UI-container" #: ../bonobo/bonobo-canvas-item.c:691 msgid "The User interface container" msgstr "De Gebruikersinterface-container" #: ../bonobo/bonobo-dock-item-grip.c:255 msgid "Dock the toolbar" msgstr "Werkbalk vastzetten" #: ../bonobo/bonobo-dock-item-grip.c:256 msgid "Undock the toolbar" msgstr "Werkbalk vrijmaken" #: ../bonobo/bonobo-dock-item.c:228 ../bonobo/bonobo-dock-item.c:229 #: ../bonobo/bonobo-ui-toolbar.c:1161 msgid "Shadow type" msgstr "Type schaduw" #: ../bonobo/bonobo-dock-item.c:239 ../bonobo/bonobo-dock-item.c:240 #: ../bonobo/bonobo-ui-toolbar.c:1105 ../bonobo/bonobo-ui-toolbar.c:1106 msgid "Orientation" msgstr "Oriëntatie" #: ../bonobo/bonobo-dock-item.c:250 ../bonobo/bonobo-dock-item.c:251 #: ../bonobo/bonobo-ui-toolbar.c:1124 ../bonobo/bonobo-ui-toolbar.c:1125 msgid "Preferred width" msgstr "Gewenste breedte" #: ../bonobo/bonobo-dock-item.c:259 ../bonobo/bonobo-dock-item.c:260 #: ../bonobo/bonobo-ui-toolbar.c:1133 ../bonobo/bonobo-ui-toolbar.c:1134 msgid "Preferred height" msgstr "Gewenste hoogte" #: ../bonobo/bonobo-file-selector-util.c:357 msgid "Select a file to open" msgstr "Selecteer het te openen bestand" #: ../bonobo/bonobo-file-selector-util.c:385 msgid "Select files to open" msgstr "Selecteer de te openen bestanden" #: ../bonobo/bonobo-file-selector-util.c:414 msgid "Select a filename to save" msgstr "Selecteer het bestand om op te slaan" #: ../bonobo/bonobo-plug.c:423 msgid "Event Forwarding" msgstr "Gebeurtenissen Doorsturen" #: ../bonobo/bonobo-plug.c:424 msgid "Whether X events should be forwarded" msgstr "Of gebeurtenissen van X doorgestuurd moeten worden" #: ../bonobo/bonobo-selector-widget.c:297 ../bonobo/bonobo-window.c:344 #: ../tools/browser/component-details.c:114 #: ../tools/browser/component-list.c:378 msgid "Name" msgstr "Naam" #: ../bonobo/bonobo-selector-widget.c:319 #: ../tools/browser/component-details.c:115 msgid "Description" msgstr "Beschrijving" #: ../bonobo/bonobo-selector.c:343 msgid "Interfaces required" msgstr "Interfaces benodigd" #: ../bonobo/bonobo-selector.c:344 msgid "" "A NULL-terminated array of interfaces which a server must support in order " "to be listed in the selector. Defaults to \"IDL:Bonobo/Embeddable:1.0\" if " "no interfaces are listed" msgstr "" "Een met NULL afgesloten array van interfaces die een server moet " "ondersteunen teneinde in de selector te kunnen worden opgesomd. Staat " "standaard op \"IDL:Bonobo/Embeddable:1.0\" als er geen interfaces worden " "genoemd." #: ../bonobo/bonobo-selector.c:346 msgid "Interface required entry" msgstr "Interface benodigd veld" #: ../bonobo/bonobo-selector.c:347 msgid "One of the interfaces that's required" msgstr "Een van de interfaces die benodigd zijn" #: ../bonobo/bonobo-ui-config-widget.c:265 msgid "Visible" msgstr "Zichtbaar" #: ../bonobo/bonobo-ui-config-widget.c:272 msgid "_Show" msgstr "_Tonen" #: ../bonobo/bonobo-ui-config-widget.c:279 msgid "_Hide" msgstr "_Verbergen" #: ../bonobo/bonobo-ui-config-widget.c:285 msgid "_View tooltips" msgstr "T_oon tooltips" #: ../bonobo/bonobo-ui-config-widget.c:290 msgid "Toolbars" msgstr "Werkbalken" #: ../bonobo/bonobo-ui-config-widget.c:300 msgid "toolbars" msgstr "werkbalken" #: ../bonobo/bonobo-ui-config-widget.c:311 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "Look" msgstr "Uiterlijk" #: ../bonobo/bonobo-ui-config-widget.c:320 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "_Icon" msgstr "_Pictogram" #: ../bonobo/bonobo-ui-config-widget.c:326 msgid "_Text and Icon" msgstr "_Tekst en Pictogram" #: ../bonobo/bonobo-ui-config-widget.c:332 msgid "Text only" msgstr "Alleen tekst" #: ../bonobo/bonobo-ui-config-widget.c:338 msgid "_Priority text only" msgstr "Alleen _belangrijke tekst" #: ../bonobo/bonobo-ui-engine.c:91 msgid "Debug" msgstr "Debuggen" #: ../bonobo/bonobo-ui-engine.c:91 msgid "_Dump XML" msgstr "XML _dumpen" #: ../bonobo/bonobo-ui-engine.c:92 msgid "Dump the entire UI's XML description to the console" msgstr "De gehele XML-beschrijving van de UI in de console dumpen" #: ../bonobo/bonobo-ui-engine-config.c:522 msgid "Configure UI" msgstr "Gebruikersinterface instellen" #: ../bonobo/bonobo-ui-init-gtk.c:130 msgid "Gdk debugging flags to set" msgstr "Aan te zetten Gdk debugmarkeringen " #: ../bonobo/bonobo-ui-init-gtk.c:130 ../bonobo/bonobo-ui-init-gtk.c:133 #: ../bonobo/bonobo-ui-init-gtk.c:161 ../bonobo/bonobo-ui-init-gtk.c:164 msgid "FLAGS" msgstr "MARKERINGEN" #: ../bonobo/bonobo-ui-init-gtk.c:133 msgid "Gdk debugging flags to unset" msgstr "Uit te zetten Gdk debugmarkeringen" #: ../bonobo/bonobo-ui-init-gtk.c:137 msgid "X display to use" msgstr "Te gebruiken X-display" #: ../bonobo/bonobo-ui-init-gtk.c:137 msgid "DISPLAY" msgstr "DISPLAY" #: ../bonobo/bonobo-ui-init-gtk.c:141 msgid "X screen to use" msgstr "Te gebruiken X-scherm" #: ../bonobo/bonobo-ui-init-gtk.c:141 msgid "SCREEN" msgstr "SCHERM" #: ../bonobo/bonobo-ui-init-gtk.c:145 msgid "Make X calls synchronous" msgstr "X-calls synchroon maken" #: ../bonobo/bonobo-ui-init-gtk.c:151 msgid "Don't use X shared memory extension" msgstr "Geen gebruik maken van X shared memory extension" #: ../bonobo/bonobo-ui-init-gtk.c:155 msgid "Program name as used by the window manager" msgstr "Programmanaam zoals de windowmanager deze gebruikt" #: ../bonobo/bonobo-ui-init-gtk.c:155 msgid "NAME" msgstr "NAAM" #: ../bonobo/bonobo-ui-init-gtk.c:158 msgid "Program class as used by the window manager" msgstr "Pragrammaklasse zoals de windowmanager deze gebruikt" #: ../bonobo/bonobo-ui-init-gtk.c:158 msgid "CLASS" msgstr "KLASSE" #: ../bonobo/bonobo-ui-init-gtk.c:161 msgid "Gtk+ debugging flags to set" msgstr "Aan te zetten Gtk+ debugmarkeringen" #: ../bonobo/bonobo-ui-init-gtk.c:164 msgid "Gtk+ debugging flags to unset" msgstr "Uit te zetten Gtk+ debugmarkeringen" #: ../bonobo/bonobo-ui-init-gtk.c:167 msgid "Make all warnings fatal" msgstr "Laat alle waarschuwingen fataal zijn" #: ../bonobo/bonobo-ui-init-gtk.c:170 msgid "Load an additional Gtk module" msgstr "Laad een extra Gtk module" #: ../bonobo/bonobo-ui-init-gtk.c:170 msgid "MODULE" msgstr "MODULE" #: ../bonobo/bonobo-ui-init-gtk.c:186 msgid "GTK+" msgstr "GTK+" #: ../bonobo/bonobo-ui-main.c:278 msgid "Bonobo GUI support" msgstr "Bonobo GUI ondersteuning" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "B_oth" msgstr "_Beide" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "T_ext" msgstr "T_ekst" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Hide t_ips" msgstr "Verberg t_ips" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Show t_ips" msgstr "Toon _tips" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "_Hide toolbar" msgstr "Werkbalk _verbergen" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "Customi_ze" msgstr "_Aanpassen" #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Customize the toolbar" msgstr "Werkbalk aanpassen" #: ../bonobo/bonobo-ui-toolbar.c:1115 msgid "is floating" msgstr "is zwevend" #: ../bonobo/bonobo-ui-toolbar.c:1116 msgid "whether the toolbar is floating" msgstr "of de werkbalk zwevend is" #: ../bonobo/bonobo-ui-toolbar.c:1162 msgid "Style of bevel around the toolbar" msgstr "Stijl van de schuine rand om de werkbalk" #: ../bonobo/bonobo-ui-util.c:601 msgid "Could not display help for this application" msgstr "Kon de hulp voor dit programma niet tonen" #: ../bonobo/bonobo-ui-util.c:643 msgid "_Contents" msgstr "_Inhoud" #: ../bonobo/bonobo-ui-util.c:644 msgid "View help for this application" msgstr "Toon de hulp voor dit programma" #: ../bonobo/bonobo-window.c:345 msgid "Name of the window - used for configuration serialization." msgstr "Naam van het venster - gebruikt voor configuratieserialisatie." #: ../bonobo/bonobo-zoomable.c:326 msgid "Zoom level" msgstr "Standaard zoomniveau" #: ../bonobo/bonobo-zoomable.c:327 msgid "The degree of enlargment" msgstr "Mate van vergrooting" #: ../bonobo/bonobo-zoomable.c:335 msgid "Minimum Zoom level" msgstr "Minimale zoomniveau" #: ../bonobo/bonobo-zoomable.c:336 msgid "The minimum degree of enlargment" msgstr "Minimale mate van vergrooting" #: ../bonobo/bonobo-zoomable.c:344 msgid "Maximum Zoom level" msgstr "Maximale zoomniveau" #: ../bonobo/bonobo-zoomable.c:345 msgid "The maximum degree of enlargment" msgstr "Maximale mate van vergrooting" #: ../bonobo/bonobo-zoomable.c:353 msgid "Has a minimum Zoom level" msgstr "Heeft een minimaal Zoom niveau" #: ../bonobo/bonobo-zoomable.c:354 msgid "Whether we have a valid minimum zoom level" msgstr "Of er een geldig minimaal zoomniveau is" #: ../bonobo/bonobo-zoomable.c:361 msgid "Has a maximum Zoom level" msgstr "Heeft een maximaal Zoomniveau" #: ../bonobo/bonobo-zoomable.c:362 msgid "Whether we have a valid maximum zoom level" msgstr "Of er een geldig maximaal zoomniveau is" #: ../bonobo/bonobo-zoomable.c:369 msgid "Is continuous" msgstr "Verloopt vloeiend" #: ../bonobo/bonobo-zoomable.c:370 msgid "Whether we zoom continuously (as opposed to jumps)" msgstr "Of er vloeiend gezoomd wordt (in plaats van met stappen)" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:1 msgid "About this application" msgstr "Info over deze toepassing" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:2 msgid "Select" msgstr "Selecteren" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:3 msgid "_About..." msgstr "_Info..." #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:4 msgid "_Edit" msgstr "Be_werken" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:5 #: ../tools/browser/bonobo-browser.xml.h:4 msgid "_File" msgstr "_Bestand" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:6 msgid "_Select" msgstr "_Selecteren" #: ../samples/bonoboui/hello.c:63 msgid "This does nothing; it is only a demonstration." msgstr "Hier gebeurt niets; Dit is alleen maar een demonstratie." #: ../samples/bonoboui/hello.c:145 msgid "BonoboUI-Hello." msgstr "BonoboUI-Hallo." #: ../samples/bonoboui/hello.c:217 msgid "Gnome Hello" msgstr "Gnome Hallo" #. Create Label and put it in the Button: #: ../samples/bonoboui/hello.c:272 msgid "Hello, World!" msgstr "Hallo, Wereld!" #: ../samples/bonoboui/hello.c:312 msgid "Cannot init libbonoboui code" msgstr "De libbonoboui code kan niet geïnitialiseerd worden" #: ../samples/controls/bonobo-sample-controls.c:131 msgid "Could not initialize Bonobo UI" msgstr "Kon Bonobo UI niet initialiseren" #: ../tools/browser/bonobo-browser.desktop.in.h:1 msgid "Bonobo Component Browser" msgstr "Bonobo componentverkenner" #: ../tools/browser/bonobo-browser.desktop.in.h:2 msgid "Shows available Bonobo components" msgstr "Toont beschikbare Bonobo-componenten" #: ../tools/browser/bonobo-browser.xml.h:1 msgid "About this program..." msgstr "Info over dit programma..." #: ../tools/browser/bonobo-browser.xml.h:2 msgid "Close the current window" msgstr "Het huidige venster sluiten" #: ../tools/browser/bonobo-browser.xml.h:3 msgid "Open a new window" msgstr "Een nieuw venster openen" #: ../tools/browser/bonobo-browser.xml.h:5 msgid "_Help" msgstr "_Hulp" #. Build the general tab #: ../tools/browser/component-details.c:109 msgid "General" msgstr "Algemeen" #: ../tools/browser/component-details.c:116 #: ../tools/browser/component-list.c:398 msgid "IID" msgstr "IID" #: ../tools/browser/component-details.c:117 msgid "Location" msgstr "Lokatie" #. Build the details tab #: ../tools/browser/component-details.c:167 msgid "Details" msgstr "Details" #: ../tools/browser/component-details.c:168 msgid "Detailed Information" msgstr "Gedetailleerde informatie" #: ../tools/browser/component-list.c:367 ../tools/browser/window.c:283 msgid "Active" msgstr "Actief" #: ../tools/browser/component-list.c:388 msgid "Type" msgstr "Type" #: ../tools/browser/window.c:162 msgid "Component Details" msgstr "Component-details" #: ../tools/browser/window.c:208 msgid "Bonobo Browser" msgstr "Bonobo-verkenner" #: ../tools/browser/window.c:210 msgid "Copyright 2001, The GNOME Foundation" msgstr "Copyright 2001, De GNOME Foundation" #: ../tools/browser/window.c:211 msgid "Bonobo component browser" msgstr "Bonobo componentverkenner" #: ../tools/browser/window.c:214 msgid "translator-credits" msgstr "" "Huib Kleinhout\n" "Tino Meinen\n" "Vincent van Adrighem\n" "\n" "Kijk voor meer info op http://nl.gnome.org/" #. create the window #: ../tools/browser/window.c:240 msgid "Component Browser" msgstr "Componentverkenner" # alles/geheel/allemaal/allen #. Fill out the tool bar #: ../tools/browser/window.c:280 msgid "All" msgstr "Alles" # niet actief #: ../tools/browser/window.c:286 msgid "Inactive" msgstr "Inactief" libbonoboui-2.24.5/po/sl.po0000664000076400007640000003255611433016366012454 00000000000000# Slovenian translation of libbonoboui. # Copyright (C) 1999-2007 Free Software Foundation, Inc. # This file is distributed under the same license as the libbonoboui package. # # Matjaž Horvat , 2006. # Matej Urbančič , 2007 - 2010. # msgid "" msgstr "" "Project-Id-Version: libbonoboui master\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2007-01-17 13:38+0000\n" "PO-Revision-Date: 2010-04-22 15:09+0100\n" "Last-Translator: Matej Urbančič \n" "Language-Team: Slovenian GNOME Translation Team \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=4; plural=(n%100==1 ? 1 : n%100==2 ? 2 : n%100==3 || n%100==4 ? 3 : 0);\n" "X-Poedit-Country: SLOVENIA\n" "X-Poedit-Language: Slovenian\n" "X-Poedit-SourceCharset: utf-8\n" #: ../bonobo/bonobo-canvas-item.c:680 msgid "corba factory" msgstr "tovarna corba" #: ../bonobo/bonobo-canvas-item.c:681 msgid "The factory pointer" msgstr "Kazalnik tovarne" #: ../bonobo/bonobo-canvas-item.c:690 msgid "corba UI container" msgstr "vsebovalnik uporabniškega vmesnika corba" #: ../bonobo/bonobo-canvas-item.c:691 msgid "The User interface container" msgstr "Vsebovalnik uporabniškega vmesnika" #: ../bonobo/bonobo-dock-item-grip.c:255 msgid "Dock the toolbar" msgstr "Zasidraj orodno vrstico" #: ../bonobo/bonobo-dock-item-grip.c:256 msgid "Undock the toolbar" msgstr "Odsidraj orodno vrstico" #: ../bonobo/bonobo-dock-item.c:228 #: ../bonobo/bonobo-dock-item.c:229 #: ../bonobo/bonobo-ui-toolbar.c:1161 msgid "Shadow type" msgstr "Vrsta sence" #: ../bonobo/bonobo-dock-item.c:239 #: ../bonobo/bonobo-dock-item.c:240 #: ../bonobo/bonobo-ui-toolbar.c:1105 #: ../bonobo/bonobo-ui-toolbar.c:1106 msgid "Orientation" msgstr "Usmerjenost" #: ../bonobo/bonobo-dock-item.c:250 #: ../bonobo/bonobo-dock-item.c:251 #: ../bonobo/bonobo-ui-toolbar.c:1124 #: ../bonobo/bonobo-ui-toolbar.c:1125 msgid "Preferred width" msgstr "Želena širina" #: ../bonobo/bonobo-dock-item.c:259 #: ../bonobo/bonobo-dock-item.c:260 #: ../bonobo/bonobo-ui-toolbar.c:1133 #: ../bonobo/bonobo-ui-toolbar.c:1134 msgid "Preferred height" msgstr "Želena višina" #: ../bonobo/bonobo-file-selector-util.c:357 msgid "Select a file to open" msgstr "Izbor datoteke za odpiranje" #: ../bonobo/bonobo-file-selector-util.c:385 msgid "Select files to open" msgstr "Izberite datoteke, ki jih želite odprti" #: ../bonobo/bonobo-file-selector-util.c:414 msgid "Select a filename to save" msgstr "Izberite ime datoteke za shranjevanje" #: ../bonobo/bonobo-plug.c:423 msgid "Event Forwarding" msgstr "Posredovanje dogodkov" #: ../bonobo/bonobo-plug.c:424 msgid "Whether X events should be forwarded" msgstr "Ali naj bodo dogodki X posredovani" #: ../bonobo/bonobo-selector-widget.c:297 #: ../bonobo/bonobo-window.c:344 #: ../tools/browser/component-details.c:114 #: ../tools/browser/component-list.c:378 msgid "Name" msgstr "Ime" #: ../bonobo/bonobo-selector-widget.c:319 #: ../tools/browser/component-details.c:115 msgid "Description" msgstr "Opis" #: ../bonobo/bonobo-selector.c:343 msgid "Interfaces required" msgstr "Zahtevani vmesniki" #: ../bonobo/bonobo-selector.c:344 msgid "A NULL-terminated array of interfaces which a server must support in order to be listed in the selector. Defaults to \"IDL:Bonobo/Embeddable:1.0\" if no interfaces are listed" msgstr "Seznam vmesnikov zaključenih z NULL, ki jih mora podpirati strežnik, da je naveden v izbirniku. V primeru, da ni navedenega vmesnika, je privzeto uporabljen \"IDL:Bonobo/Embeddable:1.0\"." #: ../bonobo/bonobo-selector.c:346 msgid "Interface required entry" msgstr "Vnos zahtevanih vmesnikov" #: ../bonobo/bonobo-selector.c:347 msgid "One of the interfaces that's required" msgstr "Eden od zahtevanih vmesnikov" #: ../bonobo/bonobo-ui-config-widget.c:265 msgid "Visible" msgstr "Vidno" #: ../bonobo/bonobo-ui-config-widget.c:272 msgid "_Show" msgstr "_Pokaži" #: ../bonobo/bonobo-ui-config-widget.c:279 msgid "_Hide" msgstr "_Skrij" #: ../bonobo/bonobo-ui-config-widget.c:285 msgid "_View tooltips" msgstr "_Prikaži orodne namige" #: ../bonobo/bonobo-ui-config-widget.c:290 msgid "Toolbars" msgstr "Orodne vrstice" #: ../bonobo/bonobo-ui-config-widget.c:300 msgid "toolbars" msgstr "orodne vrstice" #: ../bonobo/bonobo-ui-config-widget.c:311 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "Look" msgstr "Videz" #: ../bonobo/bonobo-ui-config-widget.c:320 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "_Icon" msgstr "_Ikona" #: ../bonobo/bonobo-ui-config-widget.c:326 msgid "_Text and Icon" msgstr "_Besedilo in ikone" #: ../bonobo/bonobo-ui-config-widget.c:332 msgid "Text only" msgstr "Le besedilo" #: ../bonobo/bonobo-ui-config-widget.c:338 msgid "_Priority text only" msgstr "Le _prednostno besedilo" #: ../bonobo/bonobo-ui-engine.c:91 msgid "Debug" msgstr "Razhroščevanje" #: ../bonobo/bonobo-ui-engine.c:91 msgid "_Dump XML" msgstr "_Odloži XML" #: ../bonobo/bonobo-ui-engine.c:92 msgid "Dump the entire UI's XML description to the console" msgstr "Odloži opis XML celotnega uporabniškega vmesnika v konzolo" #: ../bonobo/bonobo-ui-engine-config.c:522 msgid "Configure UI" msgstr "Nastavi uporabniški vmesnik" #: ../bonobo/bonobo-ui-init-gtk.c:130 msgid "Gdk debugging flags to set" msgstr "Zastavice razhroščevanja GDK, ki naj bodo nastavljene" #: ../bonobo/bonobo-ui-init-gtk.c:130 #: ../bonobo/bonobo-ui-init-gtk.c:133 #: ../bonobo/bonobo-ui-init-gtk.c:161 #: ../bonobo/bonobo-ui-init-gtk.c:164 msgid "FLAGS" msgstr "ZASTAVICE" #: ../bonobo/bonobo-ui-init-gtk.c:133 msgid "Gdk debugging flags to unset" msgstr "Zastavice razhroščevanja GDK, ki naj ne bodo nastavljene" #: ../bonobo/bonobo-ui-init-gtk.c:137 msgid "X display to use" msgstr "Zaslon X, ki naj se uporabi" #: ../bonobo/bonobo-ui-init-gtk.c:137 msgid "DISPLAY" msgstr "ZASLON" #: ../bonobo/bonobo-ui-init-gtk.c:141 msgid "X screen to use" msgstr "Zaslon X, ki naj se uporabi" #: ../bonobo/bonobo-ui-init-gtk.c:141 msgid "SCREEN" msgstr "ZASLON" #: ../bonobo/bonobo-ui-init-gtk.c:145 msgid "Make X calls synchronous" msgstr "Naredi klice X usklajene" #: ../bonobo/bonobo-ui-init-gtk.c:151 msgid "Don't use X shared memory extension" msgstr "Ne uporabi dodatka za deljen pomnilnik X" #: ../bonobo/bonobo-ui-init-gtk.c:155 msgid "Program name as used by the window manager" msgstr "Ime programa kot ga uporablja upravljalnik oken" #: ../bonobo/bonobo-ui-init-gtk.c:155 msgid "NAME" msgstr "IME" #: ../bonobo/bonobo-ui-init-gtk.c:158 msgid "Program class as used by the window manager" msgstr "Razred programa kot ga uporablja upravljalnik oken" #: ../bonobo/bonobo-ui-init-gtk.c:158 msgid "CLASS" msgstr "RAZRED" #: ../bonobo/bonobo-ui-init-gtk.c:161 msgid "Gtk+ debugging flags to set" msgstr "Zastavice razhroščevanja GTK+, ki naj bodo nastavljene" #: ../bonobo/bonobo-ui-init-gtk.c:164 msgid "Gtk+ debugging flags to unset" msgstr "Zastavice razhroščevanja GTK+, ki naj ne bodo nastavljene" #: ../bonobo/bonobo-ui-init-gtk.c:167 msgid "Make all warnings fatal" msgstr "Privzemi vsa opozorila kot usodna" #: ../bonobo/bonobo-ui-init-gtk.c:170 msgid "Load an additional Gtk module" msgstr "Naloži dodatni modul Gtk" #: ../bonobo/bonobo-ui-init-gtk.c:170 msgid "MODULE" msgstr "MODUL" #: ../bonobo/bonobo-ui-init-gtk.c:186 msgid "GTK+" msgstr "GTK+" #: ../bonobo/bonobo-ui-main.c:278 msgid "Bonobo GUI support" msgstr "Podpora grafičnega vmesnika Bonobo" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "B_oth" msgstr "_Oba" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "T_ext" msgstr "_Besedilo" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Hide t_ips" msgstr "Skrij _namige" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Show t_ips" msgstr "Prikaži _namige" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "_Hide toolbar" msgstr "_Skrij orodno vrstico" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "Customi_ze" msgstr "Prilag_odi" #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Customize the toolbar" msgstr "Prilagodi orodno vrstico" #: ../bonobo/bonobo-ui-toolbar.c:1115 msgid "is floating" msgstr "je lebdeča" #: ../bonobo/bonobo-ui-toolbar.c:1116 msgid "whether the toolbar is floating" msgstr "ali orodna vrstica lebdi" #: ../bonobo/bonobo-ui-toolbar.c:1162 msgid "Style of bevel around the toolbar" msgstr "Slog obrobe okoli orodne vrstice" #: ../bonobo/bonobo-ui-util.c:601 msgid "Could not display help for this application" msgstr "Ni mogoče prikazati pomoči programa" #: ../bonobo/bonobo-ui-util.c:643 msgid "_Contents" msgstr "_Vsebina" #: ../bonobo/bonobo-ui-util.c:644 msgid "View help for this application" msgstr "Poglej pomoč programa" #: ../bonobo/bonobo-window.c:345 msgid "Name of the window - used for configuration serialization." msgstr "Ime okna - uporabljeno za nastavitve." #: ../bonobo/bonobo-zoomable.c:326 msgid "Zoom level" msgstr "Raven približanja" #: ../bonobo/bonobo-zoomable.c:327 msgid "The degree of enlargment" msgstr "Raven približanja" #: ../bonobo/bonobo-zoomable.c:335 msgid "Minimum Zoom level" msgstr "Najmanjša raven približanja" #: ../bonobo/bonobo-zoomable.c:336 msgid "The minimum degree of enlargment" msgstr "Najmanjša raven približanja" #: ../bonobo/bonobo-zoomable.c:344 msgid "Maximum Zoom level" msgstr "Največja raven približanja" #: ../bonobo/bonobo-zoomable.c:345 msgid "The maximum degree of enlargment" msgstr "Največja raven približanja" #: ../bonobo/bonobo-zoomable.c:353 msgid "Has a minimum Zoom level" msgstr "Ima najmanjšo raven približanja" #: ../bonobo/bonobo-zoomable.c:354 msgid "Whether we have a valid minimum zoom level" msgstr "Ali je določena veljavna najmanjša raven približanja" #: ../bonobo/bonobo-zoomable.c:361 msgid "Has a maximum Zoom level" msgstr "Ima največjo raven približanja" #: ../bonobo/bonobo-zoomable.c:362 msgid "Whether we have a valid maximum zoom level" msgstr "Ali je določena največja raven približanja" #: ../bonobo/bonobo-zoomable.c:369 msgid "Is continuous" msgstr "Je zvezno" #: ../bonobo/bonobo-zoomable.c:370 msgid "Whether we zoom continuously (as opposed to jumps)" msgstr "Ali je približanje zvezno (nasprotno od skočno)" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:1 msgid "About this application" msgstr "O programu" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:2 msgid "Select" msgstr "Izberi" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:3 msgid "_About..." msgstr "_O programu ..." #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:4 msgid "_Edit" msgstr "_Uredi" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:5 #: ../tools/browser/bonobo-browser.xml.h:4 msgid "_File" msgstr "_Datoteka" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:6 msgid "_Select" msgstr "_Izberi" #: ../samples/bonoboui/hello.c:63 msgid "This does nothing; it is only a demonstration." msgstr "Ukaz ne naredi ničesar; je le demonstracija." #: ../samples/bonoboui/hello.c:145 msgid "BonoboUI-Hello." msgstr "BonoboUI-Pozdrav." #: ../samples/bonoboui/hello.c:217 msgid "Gnome Hello" msgstr "Pozdrav Gnome" #. Create Label and put it in the Button: #: ../samples/bonoboui/hello.c:272 msgid "Hello, World!" msgstr "Pozdravljen svet!" #: ../samples/bonoboui/hello.c:312 msgid "Cannot init libbonoboui code" msgstr "Ni mogoče zagnati kode libbonoboui" #: ../samples/controls/bonobo-sample-controls.c:131 msgid "Could not initialize Bonobo UI" msgstr "Ni mogoče začeti uporabniškega vmesnika Bonoba" #: ../tools/browser/bonobo-browser.desktop.in.h:1 msgid "Bonobo Component Browser" msgstr "Brskalnik komponent Bonobo" #: ../tools/browser/bonobo-browser.desktop.in.h:2 msgid "Shows available Bonobo components" msgstr "Pokaže razpoložljive enote Bonobo" #: ../tools/browser/bonobo-browser.xml.h:1 msgid "About this program..." msgstr "O tem programu ..." #: ../tools/browser/bonobo-browser.xml.h:2 msgid "Close the current window" msgstr "Zapri trenutno okno" #: ../tools/browser/bonobo-browser.xml.h:3 msgid "Open a new window" msgstr "Odpri novo okno" #: ../tools/browser/bonobo-browser.xml.h:5 msgid "_Help" msgstr "Pomo_č" #. Build the general tab #: ../tools/browser/component-details.c:109 msgid "General" msgstr "Splošno" #: ../tools/browser/component-details.c:116 #: ../tools/browser/component-list.c:398 msgid "IID" msgstr "IID" #: ../tools/browser/component-details.c:117 msgid "Location" msgstr "Mesto" #. Build the details tab #: ../tools/browser/component-details.c:167 msgid "Details" msgstr "Podrobnosti" #: ../tools/browser/component-details.c:168 msgid "Detailed Information" msgstr "Podrobni podatki" #: ../tools/browser/component-list.c:367 #: ../tools/browser/window.c:283 msgid "Active" msgstr "Dejaven" #: ../tools/browser/component-list.c:388 msgid "Type" msgstr "Vrsta" #: ../tools/browser/window.c:162 msgid "Component Details" msgstr "Podrobnosti sestavine" #: ../tools/browser/window.c:208 msgid "Bonobo Browser" msgstr "Brskalnik Bonobo" #: ../tools/browser/window.c:210 msgid "Copyright 2001, The GNOME Foundation" msgstr "Avtorske pravice 2001, The GNOME Foundation" #: ../tools/browser/window.c:211 msgid "Bonobo component browser" msgstr "Brskalnik komponent Bonobo" #: ../tools/browser/window.c:214 msgid "translator-credits" msgstr "" "Matjaž Horvat \n" "Matej Urbančič " #. create the window #: ../tools/browser/window.c:240 msgid "Component Browser" msgstr "Brskalnik sestavin" #. Fill out the tool bar #: ../tools/browser/window.c:280 msgid "All" msgstr "Vse" #: ../tools/browser/window.c:286 msgid "Inactive" msgstr "Nedejaven" libbonoboui-2.24.5/po/ast.po0000664000076400007640000003255211433016366012621 00000000000000# Asturian translation for libbonoboui. # Copyright (C) 2010 libbonoboui's COPYRIGHT HOLDER # This file is distributed under the same license as the libbonoboui package. # FIRST AUTHOR , YEAR. # msgid "" msgstr "" "Project-Id-Version: libbonoboui master\n" "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=libbonoboui&component=general\n" "POT-Creation-Date: 2010-01-05 16:41+0000\n" "PO-Revision-Date: 2010-01-06 17:44+0100\n" "Last-Translator: astur \n" "Language-Team: Asturian \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" "X-Poedit-Language: asturian\n" #: ../bonobo/bonobo-canvas-item.c:680 msgid "corba factory" msgstr "fábrica corba" #: ../bonobo/bonobo-canvas-item.c:681 msgid "The factory pointer" msgstr "El punteru de la fábrica" #: ../bonobo/bonobo-canvas-item.c:690 msgid "corba UI container" msgstr "contenedor corba UI" #: ../bonobo/bonobo-canvas-item.c:691 msgid "The User interface container" msgstr "El contenedor de la interface d'usuariu" #: ../bonobo/bonobo-dock-item-grip.c:254 msgid "Dock the toolbar" msgstr "Acoplar la barra de ferramientes" #: ../bonobo/bonobo-dock-item-grip.c:255 msgid "Undock the toolbar" msgstr "Desempotrar la barra de ferramientes" #: ../bonobo/bonobo-dock-item.c:225 #: ../bonobo/bonobo-dock-item.c:226 #: ../bonobo/bonobo-ui-toolbar.c:1163 msgid "Shadow type" msgstr "Triba de solombra" #: ../bonobo/bonobo-dock-item.c:236 #: ../bonobo/bonobo-dock-item.c:237 #: ../bonobo/bonobo-ui-toolbar.c:1107 #: ../bonobo/bonobo-ui-toolbar.c:1108 msgid "Orientation" msgstr "Orientación" #: ../bonobo/bonobo-dock-item.c:247 #: ../bonobo/bonobo-dock-item.c:248 #: ../bonobo/bonobo-ui-toolbar.c:1126 #: ../bonobo/bonobo-ui-toolbar.c:1127 msgid "Preferred width" msgstr "Anchor preferíu" #: ../bonobo/bonobo-dock-item.c:256 #: ../bonobo/bonobo-dock-item.c:257 #: ../bonobo/bonobo-ui-toolbar.c:1135 #: ../bonobo/bonobo-ui-toolbar.c:1136 msgid "Preferred height" msgstr "Altor preferíu" #: ../bonobo/bonobo-file-selector-util.c:350 msgid "Select a file to open" msgstr "Esbille un ficheru a abrir" #: ../bonobo/bonobo-file-selector-util.c:378 msgid "Select files to open" msgstr "Esbille los ficheros a abrir" #: ../bonobo/bonobo-file-selector-util.c:407 msgid "Select a filename to save" msgstr "Esbille un nome de ficheru pa guardar" #: ../bonobo/bonobo-plug.c:425 msgid "Event Forwarding" msgstr "Redireición d'eventos" #: ../bonobo/bonobo-plug.c:426 msgid "Whether X events should be forwarded" msgstr "Si se tienen de redirixir los eventos de X" #: ../bonobo/bonobo-selector-widget.c:300 #: ../bonobo/bonobo-window.c:347 #: ../tools/browser/component-details.c:108 #: ../tools/browser/component-list.c:369 msgid "Name" msgstr "Nome" #: ../bonobo/bonobo-selector-widget.c:322 #: ../tools/browser/component-details.c:109 msgid "Description" msgstr "Descripción" #: ../bonobo/bonobo-selector.c:343 msgid "Interfaces required" msgstr "Interfaces requeríes" #: ../bonobo/bonobo-selector.c:344 msgid "A NULL-terminated array of interfaces which a server must support in order to be listed in the selector. Defaults to \"IDL:Bonobo/Embeddable:1.0\" if no interfaces are listed" msgstr "Pa qu'un sirvidor se lliste nel seleutor, tien de sofitar un array d'interfaces termináu en nulu. De mou predetermináu ye «IDL:Bonobo/Embeddable:1.0» si nun se llista denguna interface" #: ../bonobo/bonobo-selector.c:346 msgid "Interface required entry" msgstr "Entrada requería pola interface" #: ../bonobo/bonobo-selector.c:347 msgid "One of the interfaces that's required" msgstr "Unu de los interfaces que se necesiten" #: ../bonobo/bonobo-ui-config-widget.c:267 msgid "Visible" msgstr "Visible" #: ../bonobo/bonobo-ui-config-widget.c:274 msgid "_Show" msgstr "_Amosar" #: ../bonobo/bonobo-ui-config-widget.c:281 msgid "_Hide" msgstr "_Anubrir" #: ../bonobo/bonobo-ui-config-widget.c:287 msgid "_View tooltips" msgstr "_Ver conseyos" #: ../bonobo/bonobo-ui-config-widget.c:292 msgid "Toolbars" msgstr "Barra de ferramientes" #: ../bonobo/bonobo-ui-config-widget.c:302 msgid "toolbars" msgstr "barres de ferramientes" #: ../bonobo/bonobo-ui-config-widget.c:313 #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "Look" msgstr "Aspeutu" #: ../bonobo/bonobo-ui-config-widget.c:322 #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "_Icon" msgstr "_Iconu" #: ../bonobo/bonobo-ui-config-widget.c:328 msgid "_Text and Icon" msgstr "_Testu ya iconu" #: ../bonobo/bonobo-ui-config-widget.c:334 msgid "Text only" msgstr "Namái testu" #: ../bonobo/bonobo-ui-config-widget.c:340 msgid "_Priority text only" msgstr "Namái testu _prioritariu" #: ../bonobo/bonobo-ui-engine.c:93 msgid "Debug" msgstr "Depuración" #: ../bonobo/bonobo-ui-engine.c:93 msgid "_Dump XML" msgstr "_Volcar XML" #: ../bonobo/bonobo-ui-engine.c:94 msgid "Dump the entire UI's XML description to the console" msgstr "Volcar la descripción completa del XML de la UI a la consola" #: ../bonobo/bonobo-ui-engine-config.c:524 msgid "Configure UI" msgstr "Configurar UI" #: ../bonobo/bonobo-ui-init-gtk.c:131 msgid "Gdk debugging flags to set" msgstr "Etiquetes de depuración Gdk habilitaes" #: ../bonobo/bonobo-ui-init-gtk.c:131 #: ../bonobo/bonobo-ui-init-gtk.c:134 #: ../bonobo/bonobo-ui-init-gtk.c:162 #: ../bonobo/bonobo-ui-init-gtk.c:165 msgid "FLAGS" msgstr "ETIQUETES" #: ../bonobo/bonobo-ui-init-gtk.c:134 msgid "Gdk debugging flags to unset" msgstr "Etiquetes de depuración Gdk deshabilitaes" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "X display to use" msgstr "Visualizador X pa usar" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "DISPLAY" msgstr "VISOR" #: ../bonobo/bonobo-ui-init-gtk.c:142 msgid "X screen to use" msgstr "Pantalla X a usar" #: ../bonobo/bonobo-ui-init-gtk.c:142 msgid "SCREEN" msgstr "PANTALLA" #: ../bonobo/bonobo-ui-init-gtk.c:146 msgid "Make X calls synchronous" msgstr "Facer llamaes X sincronizaes" #: ../bonobo/bonobo-ui-init-gtk.c:152 msgid "Don't use X shared memory extension" msgstr "Nun usar la estensión de memoria compartida de X" #: ../bonobo/bonobo-ui-init-gtk.c:156 msgid "Program name as used by the window manager" msgstr "Nome de programa como l'usáu pol xestor de ventanes" #: ../bonobo/bonobo-ui-init-gtk.c:156 msgid "NAME" msgstr "NOME" #: ../bonobo/bonobo-ui-init-gtk.c:159 msgid "Program class as used by the window manager" msgstr "Clas de programa como l'usáu pol xestor de ventanes" #: ../bonobo/bonobo-ui-init-gtk.c:159 msgid "CLASS" msgstr "CLAS" #: ../bonobo/bonobo-ui-init-gtk.c:162 msgid "Gtk+ debugging flags to set" msgstr "Etiquetes de depuración de GTK+ a fixar" #: ../bonobo/bonobo-ui-init-gtk.c:165 msgid "Gtk+ debugging flags to unset" msgstr "Etiquetes de depuración de GTK+ a desactivar" #: ../bonobo/bonobo-ui-init-gtk.c:168 msgid "Make all warnings fatal" msgstr "Facer que toles alvertencies seyan fatales" #: ../bonobo/bonobo-ui-init-gtk.c:171 msgid "Load an additional Gtk module" msgstr "Cargar un módulo GTK adicional" #: ../bonobo/bonobo-ui-init-gtk.c:171 msgid "MODULE" msgstr "MÓDULU" #: ../bonobo/bonobo-ui-init-gtk.c:187 msgid "GTK+" msgstr "GTK+" #: ../bonobo/bonobo-ui-main.c:281 msgid "Bonobo GUI support" msgstr "Soporte de interface de Bonobo" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "B_oth" msgstr "Damb_os" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "T_ext" msgstr "T_estu" #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Hide t_ips" msgstr "Anubrir c_onseyos" #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Show t_ips" msgstr "Amosar c_onseyos" #: ../bonobo/bonobo-ui-sync-toolbar.c:570 msgid "_Hide toolbar" msgstr "_Anubrir barra de ferramientes" #: ../bonobo/bonobo-ui-sync-toolbar.c:570 msgid "Customi_ze" msgstr "Personali_zar" #: ../bonobo/bonobo-ui-sync-toolbar.c:571 msgid "Customize the toolbar" msgstr "Personalizar la barra de ferramientes" #: ../bonobo/bonobo-ui-toolbar.c:1117 msgid "is floating" msgstr "flotante" #: ../bonobo/bonobo-ui-toolbar.c:1118 msgid "whether the toolbar is floating" msgstr "si la barra de ferramientes ye flotante" #: ../bonobo/bonobo-ui-toolbar.c:1164 msgid "Style of bevel around the toolbar" msgstr "Estilu del bisel al rodiu de la barra de ferramientes" #: ../bonobo/bonobo-ui-util.c:602 msgid "Could not display help for this application" msgstr "Nun pudo amosase l'aida pa esta aplicación" #: ../bonobo/bonobo-ui-util.c:644 msgid "_Contents" msgstr "_Conteníos" #: ../bonobo/bonobo-ui-util.c:645 msgid "View help for this application" msgstr "Ver aida d'esta aplicación" #: ../bonobo/bonobo-window.c:348 msgid "Name of the window - used for configuration serialization." msgstr "Nome de la ventana - usáu pa serialización de configuración." #: ../bonobo/bonobo-zoomable.c:326 msgid "Zoom level" msgstr "Nivel d'ampliación" #: ../bonobo/bonobo-zoomable.c:327 msgid "The degree of enlargment" msgstr "Grau d'allargamientu" #: ../bonobo/bonobo-zoomable.c:335 msgid "Minimum Zoom level" msgstr "Nivel d'ampliación mínimu" #: ../bonobo/bonobo-zoomable.c:336 msgid "The minimum degree of enlargment" msgstr "El mínimu grau d'allargamientu" #: ../bonobo/bonobo-zoomable.c:344 msgid "Maximum Zoom level" msgstr "Máximu nivel d'ampliación" #: ../bonobo/bonobo-zoomable.c:345 msgid "The maximum degree of enlargment" msgstr "El máximu grau d'allargamientu" #: ../bonobo/bonobo-zoomable.c:353 msgid "Has a minimum Zoom level" msgstr "Tien un nivel mínimu d'ampliación" #: ../bonobo/bonobo-zoomable.c:354 msgid "Whether we have a valid minimum zoom level" msgstr "Si se tien un nivel mínimu d'ampliación válidu" #: ../bonobo/bonobo-zoomable.c:361 msgid "Has a maximum Zoom level" msgstr "Tien un nivel d'ampliación máximu" #: ../bonobo/bonobo-zoomable.c:362 msgid "Whether we have a valid maximum zoom level" msgstr "Si tien un nivel máximu d'ampliación válidu" #: ../bonobo/bonobo-zoomable.c:369 msgid "Is continuous" msgstr "Ye continuu" #: ../bonobo/bonobo-zoomable.c:370 msgid "Whether we zoom continuously (as opposed to jumps)" msgstr "Si se fai ampliación de mou continuu (opuestu a facelo a saltos)" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:1 msgid "About this application" msgstr "Tocante a esta aplicación" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:2 msgid "Select" msgstr "Esbillar" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:3 msgid "_About..." msgstr "T_ocante a..." #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:4 msgid "_Edit" msgstr "_Editar" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:5 #: ../tools/browser/bonobo-browser.xml.h:4 msgid "_File" msgstr "_Ficheru" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:6 msgid "_Select" msgstr "_Esbillar" #: ../samples/bonoboui/hello.c:65 msgid "This does nothing; it is only a demonstration." msgstr "Esto nun fai denguna aición; namái ye una demostración." #: ../samples/bonoboui/hello.c:147 msgid "BonoboUI-Hello." msgstr "BonoboUI-Hello." #: ../samples/bonoboui/hello.c:219 msgid "Gnome Hello" msgstr "Hola Gnome" #. Create Label and put it in the Button: #: ../samples/bonoboui/hello.c:274 msgid "Hello, World!" msgstr "¡Hola mundu!" #: ../samples/bonoboui/hello.c:314 msgid "Cannot init libbonoboui code" msgstr "Nun puede anicializase'l códigu de libbonoboui" #: ../samples/controls/bonobo-sample-controls.c:133 msgid "Could not initialize Bonobo UI" msgstr "Nun puede anicializase la interface de Bonobo" #: ../tools/browser/bonobo-browser.desktop.in.h:1 msgid "Bonobo Component Browser" msgstr "Desaminador de componentes Bonobo" #: ../tools/browser/bonobo-browser.desktop.in.h:2 msgid "Shows available Bonobo components" msgstr "Amuesa los componentes Bonobo disponibles" #: ../tools/browser/bonobo-browser.xml.h:1 msgid "About this program..." msgstr "Tocante a esti programa..." #: ../tools/browser/bonobo-browser.xml.h:2 msgid "Close the current window" msgstr "Zarrar la ventana actual" #: ../tools/browser/bonobo-browser.xml.h:3 msgid "Open a new window" msgstr "Abrir una ventana nueva" #: ../tools/browser/bonobo-browser.xml.h:5 msgid "_Help" msgstr "Ai_da" #. Build the general tab #: ../tools/browser/component-details.c:103 msgid "General" msgstr "Xeneral" #: ../tools/browser/component-details.c:110 #: ../tools/browser/component-list.c:389 msgid "IID" msgstr "IID" #: ../tools/browser/component-details.c:111 msgid "Location" msgstr "Llocalización" #. Build the details tab #: ../tools/browser/component-details.c:161 msgid "Details" msgstr "Detalles" #: ../tools/browser/component-details.c:162 msgid "Detailed Information" msgstr "Información detallada" #: ../tools/browser/component-list.c:358 #: ../tools/browser/window.c:283 msgid "Active" msgstr "Activu" #: ../tools/browser/component-list.c:379 msgid "Type" msgstr "Triba" #: ../tools/browser/window.c:162 msgid "Component Details" msgstr "Detalles del componente" #: ../tools/browser/window.c:208 msgid "Bonobo Browser" msgstr "Restolador Bonobo" #: ../tools/browser/window.c:210 msgid "Copyright 2001, The GNOME Foundation" msgstr "Copyright 2001, The GNOME Foundation" #: ../tools/browser/window.c:211 msgid "Bonobo component browser" msgstr "Restolador de componentes Bonobo" #: ../tools/browser/window.c:214 msgid "translator-credits" msgstr "iñigo varela" #. create the window #: ../tools/browser/window.c:240 msgid "Component Browser" msgstr "Restolador de componentes" #. Fill out the tool bar #: ../tools/browser/window.c:280 msgid "All" msgstr "Too" #: ../tools/browser/window.c:286 msgid "Inactive" msgstr "Inactivu" libbonoboui-2.24.5/po/wa.po0000644000076400007640000002746611173072741012447 00000000000000# Translation into the walloon language. # # Si vos voloz donner on côp di spale pol ratournaedje di Gnome (ou des # ôtes libes programes) sicrijhoz mu a l' adresse emile # ; nos avans co bråmint di l' ovraedje a fé. # # Copyright (C) 2001 Free Software Foundation, Inc. # Pablo Saratxaga 2001 # Pablo Saratxaga , 2003. # msgid "" msgstr "" "Project-Id-Version: libbonoboui 1.97.0\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2005-09-10 18:44+0200\n" "PO-Revision-Date: 2003-07-07 23:27+0200\n" "Last-Translator: Pablo Saratxaga \n" "Language-Team: walon \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../bonobo/bonobo-canvas-item.c:683 msgid "corba factory" msgstr "oujhene corba" #: ../bonobo/bonobo-canvas-item.c:684 msgid "The factory pointer" msgstr "" #: ../bonobo/bonobo-canvas-item.c:693 msgid "corba UI container" msgstr "" #: ../bonobo/bonobo-canvas-item.c:694 msgid "The User interface container" msgstr "" #: ../bonobo/bonobo-dock-item-grip.c:257 msgid "Dock the toolbar" msgstr "" #: ../bonobo/bonobo-dock-item-grip.c:258 #, fuzzy msgid "Undock the toolbar" msgstr "Apontyî l' bår ås usteyes a vosse môde" #: ../bonobo/bonobo-dock-item.c:235 ../bonobo/bonobo-dock-item.c:236 #: ../bonobo/bonobo-ui-toolbar.c:1175 msgid "Shadow type" msgstr "Sôre d' ombion" #: ../bonobo/bonobo-dock-item.c:246 ../bonobo/bonobo-dock-item.c:247 #: ../bonobo/bonobo-ui-toolbar.c:1119 ../bonobo/bonobo-ui-toolbar.c:1120 msgid "Orientation" msgstr "Plaeçmint" #: ../bonobo/bonobo-dock-item.c:257 ../bonobo/bonobo-dock-item.c:258 #: ../bonobo/bonobo-ui-toolbar.c:1138 ../bonobo/bonobo-ui-toolbar.c:1139 msgid "Preferred width" msgstr "Preferêye lårdjeu" #: ../bonobo/bonobo-dock-item.c:266 ../bonobo/bonobo-dock-item.c:267 #: ../bonobo/bonobo-ui-toolbar.c:1147 ../bonobo/bonobo-ui-toolbar.c:1148 msgid "Preferred height" msgstr "Preferêye hôteu" #: ../bonobo/bonobo-file-selector-util.c:357 msgid "Select a file to open" msgstr "Tchoezixhoz li fitchî a drovi" #: ../bonobo/bonobo-file-selector-util.c:385 msgid "Select files to open" msgstr "Tchoezixhoz les fitchîs a drovi" #: ../bonobo/bonobo-file-selector-util.c:414 msgid "Select a filename to save" msgstr "Tchoezixhoz on no d' fitchî po schaper" #: ../bonobo/bonobo-plug.c:425 msgid "Event Forwarding" msgstr "" #: ../bonobo/bonobo-plug.c:426 msgid "Whether X events should be forwarded" msgstr "" #: ../bonobo/bonobo-selector-widget.c:302 ../bonobo/bonobo-window.c:346 #: ../tools/browser/component-details.c:114 #: ../tools/browser/component-list.c:381 msgid "Name" msgstr "No" #: ../bonobo/bonobo-selector-widget.c:324 #: ../tools/browser/component-details.c:115 msgid "Description" msgstr "Discrijhaedje" #: ../bonobo/bonobo-selector.c:345 msgid "Interfaces required" msgstr "" #: ../bonobo/bonobo-selector.c:346 msgid "" "A NULL-terminated array of interfaces which a server must support in order " "to be listed in the selector. Defaults to \"IDL:Bonobo/Embeddable:1.0\" if " "no interfaces are listed" msgstr "" #: ../bonobo/bonobo-selector.c:348 msgid "Interface required entry" msgstr "" #: ../bonobo/bonobo-selector.c:349 msgid "One of the interfaces that's required" msgstr "" #: ../bonobo/bonobo-ui-config-widget.c:268 msgid "Visible" msgstr "Veyåve" #: ../bonobo/bonobo-ui-config-widget.c:275 msgid "_Show" msgstr "_Vey" #: ../bonobo/bonobo-ui-config-widget.c:282 msgid "_Hide" msgstr "_Catchî" #: ../bonobo/bonobo-ui-config-widget.c:288 msgid "_View tooltips" msgstr "_Vey racsegnes" #: ../bonobo/bonobo-ui-config-widget.c:293 msgid "Toolbars" msgstr "Bårs ås usteyes" #: ../bonobo/bonobo-ui-config-widget.c:303 msgid "toolbars" msgstr "bårs ås usteyes" #: ../bonobo/bonobo-ui-config-widget.c:314 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "Look" msgstr "Rivnance" #: ../bonobo/bonobo-ui-config-widget.c:323 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "_Icon" msgstr "_Imådjete" #: ../bonobo/bonobo-ui-config-widget.c:329 msgid "_Text and Icon" msgstr "_Tecse et imådjete" #: ../bonobo/bonobo-ui-config-widget.c:335 msgid "Text only" msgstr "Tecse seulmint" #: ../bonobo/bonobo-ui-config-widget.c:341 msgid "_Priority text only" msgstr "Seulmint les tecses di _prumiristé" #: ../bonobo/bonobo-ui-engine.c:90 msgid "Debug" msgstr "Disbugaedje" #: ../bonobo/bonobo-ui-engine.c:90 msgid "_Dump XML" msgstr "" #: ../bonobo/bonobo-ui-engine.c:91 msgid "Dump the entire UI's XML description to the console" msgstr "" #: ../bonobo/bonobo-ui-engine-config.c:522 msgid "Configure UI" msgstr "Apontyî l' eterface uzeu" #: ../bonobo/bonobo-ui-init-gtk.c:113 msgid "Gdk debugging flags to set" msgstr "Drapeas di disbugaedje di Gdk a mete" #: ../bonobo/bonobo-ui-init-gtk.c:113 ../bonobo/bonobo-ui-init-gtk.c:116 #: ../bonobo/bonobo-ui-init-gtk.c:144 ../bonobo/bonobo-ui-init-gtk.c:147 msgid "FLAGS" msgstr "DRAPEAS" #: ../bonobo/bonobo-ui-init-gtk.c:116 msgid "Gdk debugging flags to unset" msgstr "Drapeas di disbugaedje di Gdk a dismete" #: ../bonobo/bonobo-ui-init-gtk.c:120 msgid "X display to use" msgstr "Håynaedje X a eployî" #: ../bonobo/bonobo-ui-init-gtk.c:120 msgid "DISPLAY" msgstr "HÅYNAEDJE" #: ../bonobo/bonobo-ui-init-gtk.c:124 msgid "X screen to use" msgstr "" #: ../bonobo/bonobo-ui-init-gtk.c:124 msgid "SCREEN" msgstr "WAITROÛLE" #: ../bonobo/bonobo-ui-init-gtk.c:128 msgid "Make X calls synchronous" msgstr "Rinde les houcaedjes di X sincrones" #: ../bonobo/bonobo-ui-init-gtk.c:134 msgid "Don't use X shared memory extension" msgstr "Èn nén eployî li stindowe pårteye memwere di X" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "Program name as used by the window manager" msgstr "No do programe té kel manaedjeu di purnea s' endè sievrè" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "NAME" msgstr "NO" #: ../bonobo/bonobo-ui-init-gtk.c:141 msgid "Program class as used by the window manager" msgstr "Classe do programe té kel manaedjeu di purnea s' endè sievrè" #: ../bonobo/bonobo-ui-init-gtk.c:141 msgid "CLASS" msgstr "CLASSE" #: ../bonobo/bonobo-ui-init-gtk.c:144 msgid "Gtk+ debugging flags to set" msgstr "Drapeas di disbugaedje di Gtk+ a mete" #: ../bonobo/bonobo-ui-init-gtk.c:147 msgid "Gtk+ debugging flags to unset" msgstr "Drapeas di disbugaedje di Gtk+ a dismete" #: ../bonobo/bonobo-ui-init-gtk.c:150 msgid "Make all warnings fatal" msgstr "Tos les adviertixhmints dvèt esse fatås" #: ../bonobo/bonobo-ui-init-gtk.c:153 msgid "Load an additional Gtk module" msgstr "Tcherdjî eco on module Gtk did pus" #: ../bonobo/bonobo-ui-init-gtk.c:153 msgid "MODULE" msgstr "MODULE" #: ../bonobo/bonobo-ui-init-gtk.c:162 msgid "GTK+" msgstr "GTK+" #: ../bonobo/bonobo-ui-main.c:278 msgid "Bonobo GUI support" msgstr "" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "B_oth" msgstr "Les _deus" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "T_ext" msgstr "_Tecse" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Hide t_ips" msgstr "Catchî les _racsegnes" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Show t_ips" msgstr "Mostrer les _racsegnes" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "_Hide toolbar" msgstr "_Catchî l' bår ås usteyes" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "Customi_ze" msgstr "A _vosse môde" #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Customize the toolbar" msgstr "Apontyî l' bår ås usteyes a vosse môde" #: ../bonobo/bonobo-ui-toolbar.c:1129 msgid "is floating" msgstr "" #: ../bonobo/bonobo-ui-toolbar.c:1130 msgid "whether the toolbar is floating" msgstr "" #: ../bonobo/bonobo-ui-toolbar.c:1176 msgid "Style of bevel around the toolbar" msgstr "" #: ../bonobo/bonobo-ui-util.c:630 msgid "_Contents" msgstr "Å d_vins" #: ../bonobo/bonobo-ui-util.c:631 msgid "View help for this application" msgstr "" #: ../bonobo/bonobo-window.c:347 msgid "Name of the window - used for configuration serialization." msgstr "" #: ../bonobo/bonobo-zoomable.c:326 msgid "Zoom level" msgstr "Zoumaedje" #: ../bonobo/bonobo-zoomable.c:327 msgid "The degree of enlargment" msgstr "" #: ../bonobo/bonobo-zoomable.c:335 msgid "Minimum Zoom level" msgstr "Zoumaedje minimom" #: ../bonobo/bonobo-zoomable.c:336 msgid "The minimum degree of enlargment" msgstr "" #: ../bonobo/bonobo-zoomable.c:344 msgid "Maximum Zoom level" msgstr "Zoumaedje macsimom" #: ../bonobo/bonobo-zoomable.c:345 msgid "The maximum degree of enlargment" msgstr "" #: ../bonobo/bonobo-zoomable.c:353 msgid "Has a minimum Zoom level" msgstr "" #: ../bonobo/bonobo-zoomable.c:354 msgid "Whether we have a valid minimum zoom level" msgstr "" #: ../bonobo/bonobo-zoomable.c:361 msgid "Has a maximum Zoom level" msgstr "" #: ../bonobo/bonobo-zoomable.c:362 msgid "Whether we have a valid maximum zoom level" msgstr "" #: ../bonobo/bonobo-zoomable.c:369 msgid "Is continuous" msgstr "" #: ../bonobo/bonobo-zoomable.c:370 msgid "Whether we zoom continuously (as opposed to jumps)" msgstr "" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:1 msgid "About this application" msgstr "Å dfait di ci programe chal" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:2 msgid "Select" msgstr "Tchoezi" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:3 msgid "_About..." msgstr "Å _dfait..." #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:4 msgid "_Edit" msgstr "_Candjî" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:5 #: ../tools/browser/bonobo-browser.xml.h:4 msgid "_File" msgstr "_Fitchî" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:6 msgid "_Select" msgstr "_Tchoezi" #: ../samples/bonoboui/hello.c:63 msgid "This does nothing; it is only a demonstration." msgstr "Çouchal ni fwait rén; c' est djusse on egzimpe." #: ../samples/bonoboui/hello.c:145 msgid "BonoboUI-Hello." msgstr "BonoboUI-Bondjoû." #: ../samples/bonoboui/hello.c:217 msgid "Gnome Hello" msgstr "GnomeBondjoû" #. Create Label and put it in the Button: #: ../samples/bonoboui/hello.c:272 msgid "Hello, World!" msgstr "Bondjoû, Daegn!" #: ../samples/bonoboui/hello.c:312 msgid "Cannot init libbonoboui code" msgstr "Dji n' pout nén enonder li côde libbonoboui" #: ../samples/controls/bonobo-sample-controls.c:131 msgid "Could not initialize Bonobo UI" msgstr "" #: ../tools/browser/bonobo-browser.desktop.in.h:1 msgid "Bonobo Component Browser" msgstr "" #: ../tools/browser/bonobo-browser.desktop.in.h:2 msgid "Shows available Bonobo components" msgstr "" #: ../tools/browser/bonobo-browser.xml.h:1 #, fuzzy msgid "About this program..." msgstr "Å dfait di ci programe chal" #: ../tools/browser/bonobo-browser.xml.h:2 msgid "Close the current window" msgstr "" #: ../tools/browser/bonobo-browser.xml.h:3 msgid "Open a new window" msgstr "" #: ../tools/browser/bonobo-browser.xml.h:5 #, fuzzy msgid "_Help" msgstr "_Catchî" #. Build the general tab #: ../tools/browser/component-details.c:109 msgid "General" msgstr "" #: ../tools/browser/component-details.c:116 #: ../tools/browser/component-list.c:401 msgid "IID" msgstr "" #: ../tools/browser/component-details.c:117 msgid "Location" msgstr "" #. Build the details tab #: ../tools/browser/component-details.c:167 msgid "Details" msgstr "" #: ../tools/browser/component-details.c:168 msgid "Detailed Information" msgstr "" #: ../tools/browser/component-list.c:370 ../tools/browser/window.c:290 msgid "Active" msgstr "" #: ../tools/browser/component-list.c:391 msgid "Type" msgstr "" #: ../tools/browser/window.c:170 msgid "Component Details" msgstr "" #: ../tools/browser/window.c:215 msgid "Bonobo Browser" msgstr "" #: ../tools/browser/window.c:216 msgid "Copyright 2001, The GNOME Foundation" msgstr "" #: ../tools/browser/window.c:217 msgid "Bonobo component browser" msgstr "" #. create the window #: ../tools/browser/window.c:247 msgid "Component Browser" msgstr "" #. Fill out the tool bar #: ../tools/browser/window.c:287 msgid "All" msgstr "" #: ../tools/browser/window.c:293 msgid "Inactive" msgstr "" libbonoboui-2.24.5/po/sk.po0000644000076400007640000003200511173072741012436 00000000000000# libbonoboui sk.po # Copyright (C) 2001, 2002, 2003, 2004, 2005, 2008 Free Software Foundation, Inc. # Marcel Telka , 2001, 2002, 2003, 2004, 2005, 2008. # msgid "" msgstr "" "Project-Id-Version: libbonoboui\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2008-03-06 22:04+0100\n" "PO-Revision-Date: 2008-03-06 22:04+0100\n" "Last-Translator: Marcel Telka \n" "Language-Team: Slovak \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../bonobo/bonobo-canvas-item.c:680 msgid "corba factory" msgstr "továreň corba" #: ../bonobo/bonobo-canvas-item.c:681 msgid "The factory pointer" msgstr "Smerník na továreň" #: ../bonobo/bonobo-canvas-item.c:690 msgid "corba UI container" msgstr "kontajner UI corba" #: ../bonobo/bonobo-canvas-item.c:691 msgid "The User interface container" msgstr "Kontajner používateľského rozhrania" #: ../bonobo/bonobo-dock-item-grip.c:255 msgid "Dock the toolbar" msgstr "Zaparkovať lištu nástrojov" #: ../bonobo/bonobo-dock-item-grip.c:256 msgid "Undock the toolbar" msgstr "Oddeliť lištu nástrojov" #: ../bonobo/bonobo-dock-item.c:228 ../bonobo/bonobo-dock-item.c:229 #: ../bonobo/bonobo-ui-toolbar.c:1161 msgid "Shadow type" msgstr "Typ tieňa" #: ../bonobo/bonobo-dock-item.c:239 ../bonobo/bonobo-dock-item.c:240 #: ../bonobo/bonobo-ui-toolbar.c:1105 ../bonobo/bonobo-ui-toolbar.c:1106 msgid "Orientation" msgstr "Orientácia" #: ../bonobo/bonobo-dock-item.c:250 ../bonobo/bonobo-dock-item.c:251 #: ../bonobo/bonobo-ui-toolbar.c:1124 ../bonobo/bonobo-ui-toolbar.c:1125 msgid "Preferred width" msgstr "Preferovaná šírka" #: ../bonobo/bonobo-dock-item.c:259 ../bonobo/bonobo-dock-item.c:260 #: ../bonobo/bonobo-ui-toolbar.c:1133 ../bonobo/bonobo-ui-toolbar.c:1134 msgid "Preferred height" msgstr "Preferovaná výška" #: ../bonobo/bonobo-file-selector-util.c:357 msgid "Select a file to open" msgstr "Vybrať súbor na otvorenie" #: ../bonobo/bonobo-file-selector-util.c:385 msgid "Select files to open" msgstr "Vybrať súbory na otvorenie" #: ../bonobo/bonobo-file-selector-util.c:414 msgid "Select a filename to save" msgstr "Vybrať meno súboru na uloženie" #: ../bonobo/bonobo-plug.c:423 msgid "Event Forwarding" msgstr "Preposielanie udalostí" #: ../bonobo/bonobo-plug.c:424 msgid "Whether X events should be forwarded" msgstr "Či majú byť udalosti X preposielané" #: ../bonobo/bonobo-selector-widget.c:297 ../bonobo/bonobo-window.c:344 #: ../tools/browser/component-details.c:114 #: ../tools/browser/component-list.c:378 msgid "Name" msgstr "Meno" #: ../bonobo/bonobo-selector-widget.c:319 #: ../tools/browser/component-details.c:115 msgid "Description" msgstr "Popis" #: ../bonobo/bonobo-selector.c:343 msgid "Interfaces required" msgstr "Vyžadované rozhrania" #: ../bonobo/bonobo-selector.c:344 msgid "" "A NULL-terminated array of interfaces which a server must support in order " "to be listed in the selector. Defaults to \"IDL:Bonobo/Embeddable:1.0\" if " "no interfaces are listed" msgstr "" "Pole rozhraní ukončené NULL, ktoré musí podporovať server aby bol zaradený " "do výberu. Ak nie sú zadané žiadne rozhrania, použije sa predvolená hodnota " "\"IDL:Bonobo/Embeddable:1.0\"" #: ../bonobo/bonobo-selector.c:346 msgid "Interface required entry" msgstr "Vyžadovaná položka rozhrania" #: ../bonobo/bonobo-selector.c:347 msgid "One of the interfaces that's required" msgstr "Jedno z rozhraní, ktoré je vyžadované" #: ../bonobo/bonobo-ui-config-widget.c:265 msgid "Visible" msgstr "Viditeľný" #: ../bonobo/bonobo-ui-config-widget.c:272 msgid "_Show" msgstr "_Ukázať" #: ../bonobo/bonobo-ui-config-widget.c:279 msgid "_Hide" msgstr "S_kryť" #: ../bonobo/bonobo-ui-config-widget.c:285 msgid "_View tooltips" msgstr "Ukázať _nástrojové tipy" #: ../bonobo/bonobo-ui-config-widget.c:290 msgid "Toolbars" msgstr "Lišty nástrojov" #: ../bonobo/bonobo-ui-config-widget.c:300 msgid "toolbars" msgstr "lišty nástrojov" #: ../bonobo/bonobo-ui-config-widget.c:311 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "Look" msgstr "Vzhľad" #: ../bonobo/bonobo-ui-config-widget.c:320 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "_Icon" msgstr "_Ikona" #: ../bonobo/bonobo-ui-config-widget.c:326 msgid "_Text and Icon" msgstr "_Text a ikona" #: ../bonobo/bonobo-ui-config-widget.c:332 msgid "Text only" msgstr "Len text" #: ../bonobo/bonobo-ui-config-widget.c:338 msgid "_Priority text only" msgstr "Len _prioritný text" #: ../bonobo/bonobo-ui-engine.c:91 msgid "Debug" msgstr "Ladenie" #: ../bonobo/bonobo-ui-engine.c:91 msgid "_Dump XML" msgstr "_Vypísať XML" #: ../bonobo/bonobo-ui-engine.c:92 msgid "Dump the entire UI's XML description to the console" msgstr "Vypísať kompletný XML popis používateľského rozhrania na konzolu" #: ../bonobo/bonobo-ui-engine-config.c:522 msgid "Configure UI" msgstr "Konfigurovať používateľské rozhranie" #: ../bonobo/bonobo-ui-init-gtk.c:131 msgid "Gdk debugging flags to set" msgstr "Nastaviť ladiace príznaky Gdk" #: ../bonobo/bonobo-ui-init-gtk.c:131 ../bonobo/bonobo-ui-init-gtk.c:134 #: ../bonobo/bonobo-ui-init-gtk.c:162 ../bonobo/bonobo-ui-init-gtk.c:165 msgid "FLAGS" msgstr "PRÍZNAKY" #: ../bonobo/bonobo-ui-init-gtk.c:134 msgid "Gdk debugging flags to unset" msgstr "Zrušiť ladiace príznaky Gdk" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "X display to use" msgstr "Pužiť tento X displej" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "DISPLAY" msgstr "DISPLEJ" #: ../bonobo/bonobo-ui-init-gtk.c:142 msgid "X screen to use" msgstr "Použiť túto X obrazovku" #: ../bonobo/bonobo-ui-init-gtk.c:142 msgid "SCREEN" msgstr "OBRAZOVKA" #: ../bonobo/bonobo-ui-init-gtk.c:146 msgid "Make X calls synchronous" msgstr "Používať synchrónne volania X" #: ../bonobo/bonobo-ui-init-gtk.c:152 msgid "Don't use X shared memory extension" msgstr "Nepoužívať rozšírenie zdieľanej pamäte X" #: ../bonobo/bonobo-ui-init-gtk.c:156 msgid "Program name as used by the window manager" msgstr "Názov programu, ako je používaný správcom okien" #: ../bonobo/bonobo-ui-init-gtk.c:156 msgid "NAME" msgstr "NÁZOV" #: ../bonobo/bonobo-ui-init-gtk.c:159 msgid "Program class as used by the window manager" msgstr "Trieda programu, ako je používaný správcom okien" #: ../bonobo/bonobo-ui-init-gtk.c:159 msgid "CLASS" msgstr "TRIEDA" #: ../bonobo/bonobo-ui-init-gtk.c:162 msgid "Gtk+ debugging flags to set" msgstr "Nastaviť ladiace príznaky Gtk+" #: ../bonobo/bonobo-ui-init-gtk.c:165 msgid "Gtk+ debugging flags to unset" msgstr "Zrušiť ladiace príznaky Gtk+" #: ../bonobo/bonobo-ui-init-gtk.c:168 msgid "Make all warnings fatal" msgstr "Brať všetky upozornenia ako fatálne" #: ../bonobo/bonobo-ui-init-gtk.c:171 msgid "Load an additional Gtk module" msgstr "Nahrať prídavný modul Gtk" #: ../bonobo/bonobo-ui-init-gtk.c:171 msgid "MODULE" msgstr "MODUL" #: ../bonobo/bonobo-ui-init-gtk.c:187 msgid "GTK+" msgstr "GTK+" #: ../bonobo/bonobo-ui-main.c:278 msgid "Bonobo GUI support" msgstr "Podpora Bonobo GUI" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "B_oth" msgstr "_Obidvoje" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "T_ext" msgstr "T_ext" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Hide t_ips" msgstr "Skryť t_ipy" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Show t_ips" msgstr "Ukázať t_ipy" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "_Hide toolbar" msgstr "S_kryť lištu nástrojov" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "Customi_ze" msgstr "Prispôso_biť" #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Customize the toolbar" msgstr "Prispôsobiť lištu nástrojov" #: ../bonobo/bonobo-ui-toolbar.c:1115 msgid "is floating" msgstr "je plávajúca" #: ../bonobo/bonobo-ui-toolbar.c:1116 msgid "whether the toolbar is floating" msgstr "či je lišta nástrojov plávajúca" #: ../bonobo/bonobo-ui-toolbar.c:1162 msgid "Style of bevel around the toolbar" msgstr "Štýl sklonu okolo lišty nástrojov" #: ../bonobo/bonobo-ui-util.c:601 msgid "Could not display help for this application" msgstr "Nepodarilo sa zobraziť pomocníka pre túto aplikáciu" #: ../bonobo/bonobo-ui-util.c:643 msgid "_Contents" msgstr "_Obsah" #: ../bonobo/bonobo-ui-util.c:644 msgid "View help for this application" msgstr "Pozrieť pomocníka pre túto aplikáciu" #: ../bonobo/bonobo-window.c:345 msgid "Name of the window - used for configuration serialization." msgstr "Názov okna - použité pre konfiguráciu serializácie." #: ../bonobo/bonobo-zoomable.c:326 msgid "Zoom level" msgstr "Priblíženie" #: ../bonobo/bonobo-zoomable.c:327 msgid "The degree of enlargment" msgstr "Uhol zväčšenia" #: ../bonobo/bonobo-zoomable.c:335 msgid "Minimum Zoom level" msgstr "Minimálne priblíženie" #: ../bonobo/bonobo-zoomable.c:336 msgid "The minimum degree of enlargment" msgstr "Minimálny uhol zväčšenia" #: ../bonobo/bonobo-zoomable.c:344 msgid "Maximum Zoom level" msgstr "Maximálne priblíženie" #: ../bonobo/bonobo-zoomable.c:345 msgid "The maximum degree of enlargment" msgstr "Maximálny uhol zväčšenia" #: ../bonobo/bonobo-zoomable.c:353 msgid "Has a minimum Zoom level" msgstr "Má minimálne priblíženie" #: ../bonobo/bonobo-zoomable.c:354 msgid "Whether we have a valid minimum zoom level" msgstr "Či máme platné minimálne priblíženie" #: ../bonobo/bonobo-zoomable.c:361 msgid "Has a maximum Zoom level" msgstr "Má maximálne priblíženie" #: ../bonobo/bonobo-zoomable.c:362 msgid "Whether we have a valid maximum zoom level" msgstr "Či máme platné maximálne priblíženie" #: ../bonobo/bonobo-zoomable.c:369 msgid "Is continuous" msgstr "Je spojitý" #: ../bonobo/bonobo-zoomable.c:370 msgid "Whether we zoom continuously (as opposed to jumps)" msgstr "Či budeme približovať spojito (nie skokom)" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:1 msgid "About this application" msgstr "O tejto aplikácii" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:2 msgid "Select" msgstr "Vybrať" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:3 msgid "_About..." msgstr "O progr_ame..." #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:4 msgid "_Edit" msgstr "_Upraviť" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:5 #: ../tools/browser/bonobo-browser.xml.h:4 msgid "_File" msgstr "_Súbor" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:6 msgid "_Select" msgstr "_Vybrať" #: ../samples/bonoboui/hello.c:63 msgid "This does nothing; it is only a demonstration." msgstr "Toto nerobí nič, je to len ukážka." #: ../samples/bonoboui/hello.c:145 msgid "BonoboUI-Hello." msgstr "BonoboUI-Ahoj." #: ../samples/bonoboui/hello.c:217 msgid "Gnome Hello" msgstr "Gnome Ahoj" #. Create Label and put it in the Button: #: ../samples/bonoboui/hello.c:272 msgid "Hello, World!" msgstr "Ahoj, svet!" #: ../samples/bonoboui/hello.c:312 msgid "Cannot init libbonoboui code" msgstr "Nemôžem inicializovať kód libbonoboui" #: ../samples/controls/bonobo-sample-controls.c:131 msgid "Could not initialize Bonobo UI" msgstr "Nemôžem inicializovať Bonobo UI" #: ../tools/browser/bonobo-browser.desktop.in.h:1 msgid "Bonobo Component Browser" msgstr "Prehliadač súčastí bonobo" #: ../tools/browser/bonobo-browser.desktop.in.h:2 msgid "Shows available Bonobo components" msgstr "Zobraziť dostupné súčasti bonobo" #: ../tools/browser/bonobo-browser.xml.h:1 msgid "About this program..." msgstr "O tomto programe..." #: ../tools/browser/bonobo-browser.xml.h:2 msgid "Close the current window" msgstr "Zatvoriť aktuálne okno" #: ../tools/browser/bonobo-browser.xml.h:3 msgid "Open a new window" msgstr "Otvoriť nové okno" #: ../tools/browser/bonobo-browser.xml.h:5 msgid "_Help" msgstr "_Pomocník" #. Build the general tab #: ../tools/browser/component-details.c:109 msgid "General" msgstr "Všeobecné" #: ../tools/browser/component-details.c:116 #: ../tools/browser/component-list.c:398 msgid "IID" msgstr "IID" #: ../tools/browser/component-details.c:117 msgid "Location" msgstr "Umiestnenie" #. Build the details tab #: ../tools/browser/component-details.c:167 msgid "Details" msgstr "Podrobnosti" #: ../tools/browser/component-details.c:168 msgid "Detailed Information" msgstr "Podrobné informácie" #: ../tools/browser/component-list.c:367 ../tools/browser/window.c:283 msgid "Active" msgstr "Aktívne" #: ../tools/browser/component-list.c:388 msgid "Type" msgstr "Typ" #: ../tools/browser/window.c:162 msgid "Component Details" msgstr "Podrobnosti súčasti" #: ../tools/browser/window.c:208 msgid "Bonobo Browser" msgstr "Prehliadač bonobo" #: ../tools/browser/window.c:210 msgid "Copyright 2001, The GNOME Foundation" msgstr "Autorské práva 2001, The GNOME Foundation" #: ../tools/browser/window.c:211 msgid "Bonobo component browser" msgstr "Prehliadač súčastí bonobo" #: ../tools/browser/window.c:214 msgid "translator-credits" msgstr "Marcel Telka " #. create the window #: ../tools/browser/window.c:240 msgid "Component Browser" msgstr "Prehliadač súčastí" #. Fill out the tool bar #: ../tools/browser/window.c:280 msgid "All" msgstr "Všetko" #: ../tools/browser/window.c:286 msgid "Inactive" msgstr "Neaktívne" libbonoboui-2.24.5/po/xh.po0000644000076400007640000003234611173072741012450 00000000000000# Xhosa translation of libbonoboui # Copyright (C) 2005 Canonical Ltd. # This file is distributed under the same license as the libbonoboui package. # Translation by Canonical Ltd with thanks to # Translation World CC in South Africa, 2005. # msgid "" msgstr "" "Project-Id-Version: libbonoboui\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2005-09-10 18:44+0200\n" "PO-Revision-Date: 2005-02-17 09:55+0200\n" "Last-Translator: Canonical Ltd \n" "Language-Team: Xhosa \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../bonobo/bonobo-canvas-item.c:683 msgid "corba factory" msgstr "ifektri ye-corba" #: ../bonobo/bonobo-canvas-item.c:684 msgid "The factory pointer" msgstr "Isikhombisi sefektri" #: ../bonobo/bonobo-canvas-item.c:693 msgid "corba UI container" msgstr "isiqulathi se-corba UI" #: ../bonobo/bonobo-canvas-item.c:694 msgid "The User interface container" msgstr "Isiqulathi somdibaniso wemida woMsebenzisi" #: ../bonobo/bonobo-dock-item-grip.c:257 msgid "Dock the toolbar" msgstr "Nciphisa isixhobo samaqhosha emiyalezo" #: ../bonobo/bonobo-dock-item-grip.c:258 msgid "Undock the toolbar" msgstr "Yeka ukunciphisa isixhobo samaqhosha emiyalezo" #: ../bonobo/bonobo-dock-item.c:235 ../bonobo/bonobo-dock-item.c:236 #: ../bonobo/bonobo-ui-toolbar.c:1175 msgid "Shadow type" msgstr "Uhlobo lwesithunzi" #: ../bonobo/bonobo-dock-item.c:246 ../bonobo/bonobo-dock-item.c:247 #: ../bonobo/bonobo-ui-toolbar.c:1119 ../bonobo/bonobo-ui-toolbar.c:1120 msgid "Orientation" msgstr "Ukuziqhelanisa" #: ../bonobo/bonobo-dock-item.c:257 ../bonobo/bonobo-dock-item.c:258 #: ../bonobo/bonobo-ui-toolbar.c:1138 ../bonobo/bonobo-ui-toolbar.c:1139 msgid "Preferred width" msgstr "Ububanzi obukhethwayo" #: ../bonobo/bonobo-dock-item.c:266 ../bonobo/bonobo-dock-item.c:267 #: ../bonobo/bonobo-ui-toolbar.c:1147 ../bonobo/bonobo-ui-toolbar.c:1148 msgid "Preferred height" msgstr "Ubude obukhethwayo" #: ../bonobo/bonobo-file-selector-util.c:357 msgid "Select a file to open" msgstr "Khetha ifayili emayivulwe" #: ../bonobo/bonobo-file-selector-util.c:385 msgid "Select files to open" msgstr "Khetha iifayili emazivulwe" #: ../bonobo/bonobo-file-selector-util.c:414 msgid "Select a filename to save" msgstr "Khetha igama lefayili emayigcinwe" #: ../bonobo/bonobo-plug.c:425 msgid "Event Forwarding" msgstr "Ukuthumela isiPhumo" #: ../bonobo/bonobo-plug.c:426 msgid "Whether X events should be forwarded" msgstr "Ukuba iziphumo ezingu-X kufuneka zithunyelwe" #: ../bonobo/bonobo-selector-widget.c:302 ../bonobo/bonobo-window.c:346 #: ../tools/browser/component-details.c:114 #: ../tools/browser/component-list.c:381 msgid "Name" msgstr "Igama" #: ../bonobo/bonobo-selector-widget.c:324 #: ../tools/browser/component-details.c:115 msgid "Description" msgstr "Inkcazelo" #: ../bonobo/bonobo-selector.c:345 msgid "Interfaces required" msgstr "Imidibaniso yemida efunekayo" #: ../bonobo/bonobo-selector.c:346 msgid "" "A NULL-terminated array of interfaces which a server must support in order " "to be listed in the selector. Defaults to \"IDL:Bonobo/Embeddable:1.0\" if " "no interfaces are listed" msgstr "" "Uludwe lwemidibaniso yemida epheliswe nge-NULL ekufuneka iseva iluxhase " "ukuze ludweliswe kwisikhethi. Okumiselweyo kwi \"IDL:Bonobo/Embeddable:1.0\" " "ukuba akukho mdibaniso wemida udwelisiweyo" #: ../bonobo/bonobo-selector.c:348 msgid "Interface required entry" msgstr "Umdibaniso womda ufune ukungena" #: ../bonobo/bonobo-selector.c:349 msgid "One of the interfaces that's required" msgstr "Enye yemidibaniso yemida efunwayo" #: ../bonobo/bonobo-ui-config-widget.c:268 msgid "Visible" msgstr "Bonakalayo" #: ../bonobo/bonobo-ui-config-widget.c:275 msgid "_Show" msgstr "_Bonisa" #: ../bonobo/bonobo-ui-config-widget.c:282 msgid "_Hide" msgstr "_Fihla" #: ../bonobo/bonobo-ui-config-widget.c:288 msgid "_View tooltips" msgstr "_Iingcebiso zesixhobo zokubonakalayo" #: ../bonobo/bonobo-ui-config-widget.c:293 msgid "Toolbars" msgstr "I-Toolbars" #: ../bonobo/bonobo-ui-config-widget.c:303 msgid "toolbars" msgstr "i-toolbars" #: ../bonobo/bonobo-ui-config-widget.c:314 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "Look" msgstr "Jonga" #: ../bonobo/bonobo-ui-config-widget.c:323 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "_Icon" msgstr "_Umfanekiso ongumqondiso" #: ../bonobo/bonobo-ui-config-widget.c:329 msgid "_Text and Icon" msgstr "_Umbhalo nomfanekiso ongumqondiso" #: ../bonobo/bonobo-ui-config-widget.c:335 msgid "Text only" msgstr "Umbhalo kuphela" #: ../bonobo/bonobo-ui-config-widget.c:341 msgid "_Priority text only" msgstr "_Umbhalo ophambili kuphela" #: ../bonobo/bonobo-ui-engine.c:90 msgid "Debug" msgstr "Sombulula ingxaki yekhompyutha" #: ../bonobo/bonobo-ui-engine.c:90 msgid "_Dump XML" msgstr "_Faka i-XML" #: ../bonobo/bonobo-ui-engine.c:91 msgid "Dump the entire UI's XML description to the console" msgstr "Faka yonke inkcazelo i-UI's XML kwisakhelo" #: ../bonobo/bonobo-ui-engine-config.c:522 msgid "Configure UI" msgstr "Misela inkqubo i-UI" #: ../bonobo/bonobo-ui-init-gtk.c:113 msgid "Gdk debugging flags to set" msgstr "Iiflegi i-Gdk zokusombulula ingxaki ziza kumiselwa" #: ../bonobo/bonobo-ui-init-gtk.c:113 ../bonobo/bonobo-ui-init-gtk.c:116 #: ../bonobo/bonobo-ui-init-gtk.c:144 ../bonobo/bonobo-ui-init-gtk.c:147 msgid "FLAGS" msgstr "II-FLEGI" #: ../bonobo/bonobo-ui-init-gtk.c:116 msgid "Gdk debugging flags to unset" msgstr "Iiflegi zokusombulula ingxaki ziza kuyekwa ukumiselwa" #: ../bonobo/bonobo-ui-init-gtk.c:120 msgid "X display to use" msgstr "Umboniso u-X emawusetyenziswe" #: ../bonobo/bonobo-ui-init-gtk.c:120 msgid "DISPLAY" msgstr "UMBONISO" #: ../bonobo/bonobo-ui-init-gtk.c:124 msgid "X screen to use" msgstr "Iskrini u-X emasisetyenziswe" #: ../bonobo/bonobo-ui-init-gtk.c:124 msgid "SCREEN" msgstr "ISKRINI" #: ../bonobo/bonobo-ui-init-gtk.c:128 msgid "Make X calls synchronous" msgstr "Yenza i-X calls zihambe ngexesha elinye" #: ../bonobo/bonobo-ui-init-gtk.c:134 msgid "Don't use X shared memory extension" msgstr "Sukusebenzisa uvimba wolwabelwano u-X owandisiweyo" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "Program name as used by the window manager" msgstr "Lungisa igama njengoko lisetyenzisiwe ngumlawuli wefestile" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "NAME" msgstr "IGAMA" #: ../bonobo/bonobo-ui-init-gtk.c:141 msgid "Program class as used by the window manager" msgstr "Lungisa ihlelo njengoko lisetyenzisiwe ngumlawuli wefestile" #: ../bonobo/bonobo-ui-init-gtk.c:141 msgid "CLASS" msgstr "IHLELO" #: ../bonobo/bonobo-ui-init-gtk.c:144 msgid "Gtk+ debugging flags to set" msgstr "Iiflegi zokusombulula ingxaki i-Gtk+ ziza kumiselwa" #: ../bonobo/bonobo-ui-init-gtk.c:147 msgid "Gtk+ debugging flags to unset" msgstr "Iiflegi zokusombulula ingxaki i-Gtk+ ziza kuyekwa ukumiselwa" #: ../bonobo/bonobo-ui-init-gtk.c:150 msgid "Make all warnings fatal" msgstr "Yenza zonke izilumkiso zimiselwe" #: ../bonobo/bonobo-ui-init-gtk.c:153 msgid "Load an additional Gtk module" msgstr "Yongeza enye imodyuli i-Gtk" #: ../bonobo/bonobo-ui-init-gtk.c:153 msgid "MODULE" msgstr "IMODYULI" #: ../bonobo/bonobo-ui-init-gtk.c:162 msgid "GTK+" msgstr "I-GTK+" #: ../bonobo/bonobo-ui-main.c:278 msgid "Bonobo GUI support" msgstr "Inkxaso i-Bonobo GUI" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "B_oth" msgstr "Z_ombini" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "T_ext" msgstr "U_mbhalo" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Hide t_ips" msgstr "Fihla ii_ngcebiso" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Show t_ips" msgstr "Bonisa ii_ngcebiso" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "_Hide toolbar" msgstr "_Fihla i-toolbar" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "Customi_ze" msgstr "Zilungise_lele ngendlela oyithandayo" #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Customize the toolbar" msgstr "Zilungiselele i-toolbar ngendlela oyithandayo" #: ../bonobo/bonobo-ui-toolbar.c:1129 msgid "is floating" msgstr "iyazula" #: ../bonobo/bonobo-ui-toolbar.c:1130 msgid "whether the toolbar is floating" msgstr "ukuba ngaba i-toolbar iyazula" #: ../bonobo/bonobo-ui-toolbar.c:1176 msgid "Style of bevel around the toolbar" msgstr "Isimbo se-bevel ngokujikeleze i-toolbar" #: ../bonobo/bonobo-ui-util.c:630 msgid "_Contents" msgstr "_Iziqulatho" #: ../bonobo/bonobo-ui-util.c:631 msgid "View help for this application" msgstr "Jonga uncedo ngale nkqubo" #: ../bonobo/bonobo-window.c:347 msgid "Name of the window - used for configuration serialization." msgstr "" "Igama lefestile - lisetyenziselwa ukumiselwa kwenkqubo ngokulandelelanayo." #: ../bonobo/bonobo-zoomable.c:326 msgid "Zoom level" msgstr "Inqanaba loKwandisa" #: ../bonobo/bonobo-zoomable.c:327 msgid "The degree of enlargment" msgstr "Iqondo lokwandisa" #: ../bonobo/bonobo-zoomable.c:335 msgid "Minimum Zoom level" msgstr "Elona nqanaba loKwandisa lincinci" #: ../bonobo/bonobo-zoomable.c:336 msgid "The minimum degree of enlargment" msgstr "Elona qondo lokwandisa lincinci" #: ../bonobo/bonobo-zoomable.c:344 msgid "Maximum Zoom level" msgstr "Elona nqanaba loKwandisa liphezulu" #: ../bonobo/bonobo-zoomable.c:345 msgid "The maximum degree of enlargment" msgstr "Elona qondo lokwandisa liphezulu" #: ../bonobo/bonobo-zoomable.c:353 msgid "Has a minimum Zoom level" msgstr "Inenqanaba loKwandisa elilelona lincinci" #: ../bonobo/bonobo-zoomable.c:354 msgid "Whether we have a valid minimum zoom level" msgstr "Ukuba ngaba sinenqanaba lokwandisa elilelona lincinci elilungileyo" #: ../bonobo/bonobo-zoomable.c:361 msgid "Has a maximum Zoom level" msgstr "Inenqanaba loKwandisa elilelona liphezulu" #: ../bonobo/bonobo-zoomable.c:362 msgid "Whether we have a valid maximum zoom level" msgstr "Nokuba sinenqanaba lokwandisa elilelona liphezulu" #: ../bonobo/bonobo-zoomable.c:369 msgid "Is continuous" msgstr "Iyaqhubeka" #: ../bonobo/bonobo-zoomable.c:370 msgid "Whether we zoom continuously (as opposed to jumps)" msgstr "Ukuba ngaba sandisa ngokuqhubekayo (ngokuchaseneyo neejampu)" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:1 msgid "About this application" msgstr "Malunga nale nkqubo" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:2 msgid "Select" msgstr "Khetha" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:3 msgid "_About..." msgstr "_Malunga..." #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:4 msgid "_Edit" msgstr "_Hlela" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:5 #: ../tools/browser/bonobo-browser.xml.h:4 msgid "_File" msgstr "i_Fayili" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:6 msgid "_Select" msgstr "_Khetha" #: ../samples/bonoboui/hello.c:63 msgid "This does nothing; it is only a demonstration." msgstr "Oku akwenzi nto; kukubonisa nje kuphela." #: ../samples/bonoboui/hello.c:145 msgid "BonoboUI-Hello." msgstr "UMbuliso-we-BonoboUI." #: ../samples/bonoboui/hello.c:217 msgid "Gnome Hello" msgstr "UMbuliso we-Gnome" #. Create Label and put it in the Button: #: ../samples/bonoboui/hello.c:272 msgid "Hello, World!" msgstr "Molo, mHlobo wam!" #: ../samples/bonoboui/hello.c:312 msgid "Cannot init libbonoboui code" msgstr "Akunakwabiwa maxabiso eenkcukacha ngekhowudi ye-libbonoboui" #: ../samples/controls/bonobo-sample-controls.c:131 msgid "Could not initialize Bonobo UI" msgstr "Akukwazekanga ukwaba amaxabiso eenkcukacha e-Bonobo UI" #: ../tools/browser/bonobo-browser.desktop.in.h:1 msgid "Bonobo Component Browser" msgstr "IsiKhangeli seLungu le-Bonobo" #: ../tools/browser/bonobo-browser.desktop.in.h:2 msgid "Shows available Bonobo components" msgstr "Ibonisa amalungu e-Bonobo akhoyo" #: ../tools/browser/bonobo-browser.xml.h:1 msgid "About this program..." msgstr "Malunga nale nkqubo..." #: ../tools/browser/bonobo-browser.xml.h:2 msgid "Close the current window" msgstr "Vala ifestile evuliweyo ngoku" #: ../tools/browser/bonobo-browser.xml.h:3 msgid "Open a new window" msgstr "Vula ifestile entsha" #: ../tools/browser/bonobo-browser.xml.h:5 msgid "_Help" msgstr "_Uncedo" #. Build the general tab #: ../tools/browser/component-details.c:109 msgid "General" msgstr "Jikelele" #: ../tools/browser/component-details.c:116 #: ../tools/browser/component-list.c:401 msgid "IID" msgstr "i-IID" #: ../tools/browser/component-details.c:117 msgid "Location" msgstr "Indawo" #. Build the details tab #: ../tools/browser/component-details.c:167 msgid "Details" msgstr "Iinkcukacha" #: ../tools/browser/component-details.c:168 msgid "Detailed Information" msgstr "Ulwazi oluziiNkcukacha" #: ../tools/browser/component-list.c:370 ../tools/browser/window.c:290 msgid "Active" msgstr "Esebenzayo" #: ../tools/browser/component-list.c:391 msgid "Type" msgstr "Uhlobo" #: ../tools/browser/window.c:170 msgid "Component Details" msgstr "Iinkcukacha zelungu" #: ../tools/browser/window.c:215 msgid "Bonobo Browser" msgstr "IsiKhangeli se-Bonobo" #: ../tools/browser/window.c:216 msgid "Copyright 2001, The GNOME Foundation" msgstr "Amalungelo omqulunqi 2001, The GNOME Foundation" #: ../tools/browser/window.c:217 msgid "Bonobo component browser" msgstr "Isikhangeli selungu le-Bonobo" #. create the window #: ../tools/browser/window.c:247 msgid "Component Browser" msgstr "IsiKhangeli seLungu" #. Fill out the tool bar #: ../tools/browser/window.c:287 msgid "All" msgstr "" #: ../tools/browser/window.c:293 #, fuzzy msgid "Inactive" msgstr "Esebenzayo" libbonoboui-2.24.5/po/ta.po0000644000076400007640000004300211173072741012424 00000000000000# translation of libbonoboui.HEAD.ta.po to Tamil # Tamil translation of libbonoboui2. # Copyright (C) 2004, 2006, 2008 Free Software Foundation, Inc. # # Balaji Narayanan , 2001. # Dinesh Nadarajah , 2004. # Jayaradha N , 2004. # Felix , 2006. # தங்கம் அருண் , 2007. # I. Felix , 2008. msgid "" msgstr "" "Project-Id-Version: libbonoboui.HEAD.ta\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2008-01-03 07:59+0000\n" "PO-Revision-Date: 2008-09-18 22:29+0530\n" "Last-Translator: I. Felix \n" "Language-Team: Tamil \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Generator: KBabel 1.11.4\n" "Plural-Forms: nplurals=2; plural=(n!=1);\\n\n" "\n" "\n" "\n" #: ../bonobo/bonobo-canvas-item.c:680 msgid "corba factory" msgstr "கோர்பா (corba) தொழிற்சாலை" #: ../bonobo/bonobo-canvas-item.c:681 msgid "The factory pointer" msgstr "தொழிற்சாலை சுட்டி" #: ../bonobo/bonobo-canvas-item.c:690 msgid "corba UI container" msgstr "கோர்பா UI தாங்கி" #: ../bonobo/bonobo-canvas-item.c:691 msgid "The User interface container" msgstr "பயனர் இடைமுகப் தாங்கி" #: ../bonobo/bonobo-dock-item-grip.c:255 msgid "Dock the toolbar" msgstr "கருவிப்பட்டையை ஒட்டுக" #: ../bonobo/bonobo-dock-item-grip.c:256 msgid "Undock the toolbar" msgstr "கருவிப்பட்டையை நீக்குக" #: ../bonobo/bonobo-dock-item.c:228 ../bonobo/bonobo-dock-item.c:229 #: ../bonobo/bonobo-ui-toolbar.c:1161 msgid "Shadow type" msgstr "நிழல் வகை" #: ../bonobo/bonobo-dock-item.c:239 ../bonobo/bonobo-dock-item.c:240 #: ../bonobo/bonobo-ui-toolbar.c:1105 ../bonobo/bonobo-ui-toolbar.c:1106 msgid "Orientation" msgstr "திசை அமைவு" #: ../bonobo/bonobo-dock-item.c:250 ../bonobo/bonobo-dock-item.c:251 #: ../bonobo/bonobo-ui-toolbar.c:1124 ../bonobo/bonobo-ui-toolbar.c:1125 msgid "Preferred width" msgstr "விருப்பமான அகலம்" #: ../bonobo/bonobo-dock-item.c:259 ../bonobo/bonobo-dock-item.c:260 #: ../bonobo/bonobo-ui-toolbar.c:1133 ../bonobo/bonobo-ui-toolbar.c:1134 msgid "Preferred height" msgstr "விருப்பமான உயரம்" #: ../bonobo/bonobo-file-selector-util.c:357 msgid "Select a file to open" msgstr "திறப்பதற்கு ஒர் கோப்பு தெரிவு செய்யவும்" #: ../bonobo/bonobo-file-selector-util.c:385 msgid "Select files to open" msgstr "திறப்பதற்கு கோப்புகளை தெரிவு செய்யவும்" #: ../bonobo/bonobo-file-selector-util.c:414 msgid "Select a filename to save" msgstr "சேமிற்பதற்கு ஓர் கோப்பு பெயரை தெரிவு செய்யவும்" #: ../bonobo/bonobo-plug.c:423 msgid "Event Forwarding" msgstr "நிகழ்வு முன்செலுத்துதல்" #: ../bonobo/bonobo-plug.c:424 msgid "Whether X events should be forwarded" msgstr "X நிகழ்வுகளை முன்செலுத்த வேண்டுமா" #: ../bonobo/bonobo-selector-widget.c:297 ../bonobo/bonobo-window.c:344 #: ../tools/browser/component-details.c:114 #: ../tools/browser/component-list.c:378 msgid "Name" msgstr "பெயர்" #: ../bonobo/bonobo-selector-widget.c:319 #: ../tools/browser/component-details.c:115 msgid "Description" msgstr "விவரிப்பு" #: ../bonobo/bonobo-selector.c:343 msgid "Interfaces required" msgstr "இடைமுகங்கள் வேண்டும்" #: ../bonobo/bonobo-selector.c:344 msgid "" "A NULL-terminated array of interfaces which a server must support in order " "to be listed in the selector. Defaults to \"IDL:Bonobo/Embeddable:1.0\" if " "no interfaces are listed" msgstr "" "தேர்வு பட்டியால் தேர்வு செய்யப்பட எதுவுமில்லாமல் செயல்முடியும் இடைமுகத்திற்கு ஆதரவு " "வேண்டும். பொதுவாக \"IDL:Bonobo/Embeddable:1.0\" இடைமுகம் காட்டப்படும்" #: ../bonobo/bonobo-selector.c:346 msgid "Interface required entry" msgstr "இடைமுகத்திற்கு தேவையான நுளைவு" #: ../bonobo/bonobo-selector.c:347 msgid "One of the interfaces that's required" msgstr "தேவையான ஓர் இடைமுகம்" #: ../bonobo/bonobo-ui-config-widget.c:265 msgid "Visible" msgstr "பார்க்கக்க்கூடியது" #: ../bonobo/bonobo-ui-config-widget.c:272 msgid "_Show" msgstr "_காண்பி" #: ../bonobo/bonobo-ui-config-widget.c:279 msgid "_Hide" msgstr "_மறை" #: ../bonobo/bonobo-ui-config-widget.c:285 msgid "_View tooltips" msgstr "_கருவி உதவிகளை காண்பி" #: ../bonobo/bonobo-ui-config-widget.c:290 msgid "Toolbars" msgstr "கருவிப் பலகைகள்" #: ../bonobo/bonobo-ui-config-widget.c:300 msgid "toolbars" msgstr "கருவிப்பட்டைகள்" #: ../bonobo/bonobo-ui-config-widget.c:311 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "Look" msgstr "பார்" #: ../bonobo/bonobo-ui-config-widget.c:320 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "_Icon" msgstr "_குரும்படம்" #: ../bonobo/bonobo-ui-config-widget.c:326 msgid "_Text and Icon" msgstr "_உரையும் குரும்படமும்" #: ../bonobo/bonobo-ui-config-widget.c:332 msgid "Text only" msgstr "உரை மட்டும்" #: ../bonobo/bonobo-ui-config-widget.c:338 msgid "_Priority text only" msgstr "_முன்னுரிமை உரை மட்டும்" #: ../bonobo/bonobo-ui-engine.c:91 msgid "Debug" msgstr "பிழை நீக்குக" #: ../bonobo/bonobo-ui-engine.c:91 msgid "_Dump XML" msgstr "XML கொட்டுக" #: ../bonobo/bonobo-ui-engine.c:92 msgid "Dump the entire UI's XML description to the console" msgstr "UIஇன் முழு XML விவரணத்தை முனையத்தில் போடுக" #: ../bonobo/bonobo-ui-engine-config.c:522 msgid "Configure UI" msgstr "UIஐ உருவாக்கு" #: ../bonobo/bonobo-ui-init-gtk.c:130 msgid "Gdk debugging flags to set" msgstr "அமைக்கவேண்டிய Gdk பிழை நீக்கல் கொடிகள்" #: ../bonobo/bonobo-ui-init-gtk.c:130 ../bonobo/bonobo-ui-init-gtk.c:133 #: ../bonobo/bonobo-ui-init-gtk.c:161 ../bonobo/bonobo-ui-init-gtk.c:164 msgid "FLAGS" msgstr "கொடிகள்" #: ../bonobo/bonobo-ui-init-gtk.c:133 msgid "Gdk debugging flags to unset" msgstr "நீக்க வேண்டிய Gdk பிழை-நீக்கல் கொடிகள்" #: ../bonobo/bonobo-ui-init-gtk.c:137 msgid "X display to use" msgstr "பயன்படுத்த வேண்டிய X காட்சி" #: ../bonobo/bonobo-ui-init-gtk.c:137 msgid "DISPLAY" msgstr "காட்சி" #: ../bonobo/bonobo-ui-init-gtk.c:141 msgid "X screen to use" msgstr "பயன்படுத்த வேண்டிய X திரை" #: ../bonobo/bonobo-ui-init-gtk.c:141 msgid "SCREEN" msgstr "திரை" #: ../bonobo/bonobo-ui-init-gtk.c:145 msgid "Make X calls synchronous" msgstr "X அழைப்புகளை ஒத்தியக்கமாக ஆக்குக" #: ../bonobo/bonobo-ui-init-gtk.c:151 msgid "Don't use X shared memory extension" msgstr "Xஇன் பகிர் நினைவக நீட்டிப்புகளை புழங்கவேண்டாம்" #: ../bonobo/bonobo-ui-init-gtk.c:155 msgid "Program name as used by the window manager" msgstr "சாளரமேலாளர் பயன்படுத்தும் நிரலின் பெயர்" #: ../bonobo/bonobo-ui-init-gtk.c:155 msgid "NAME" msgstr "பெயர்" #: ../bonobo/bonobo-ui-init-gtk.c:158 msgid "Program class as used by the window manager" msgstr "சாளரமேலாளர் பயன்படுத்தும் நிரல் வகுப்பு" #: ../bonobo/bonobo-ui-init-gtk.c:158 msgid "CLASS" msgstr "வகுப்பு" #: ../bonobo/bonobo-ui-init-gtk.c:161 msgid "Gtk+ debugging flags to set" msgstr "அமைக்க வேண்டிய் Gtk+ பிழை-நீக்கல் கொடிகள்" #: ../bonobo/bonobo-ui-init-gtk.c:164 msgid "Gtk+ debugging flags to unset" msgstr "நீக்க வேண்டிய் Gtk+ பிழை-நீக்கல் கொடிகள்" #: ../bonobo/bonobo-ui-init-gtk.c:167 msgid "Make all warnings fatal" msgstr "அனைத்து எச்சரிக்கைகளையும் கொல் பிழைகளாக்குக" #: ../bonobo/bonobo-ui-init-gtk.c:170 msgid "Load an additional Gtk module" msgstr "இன்னுமோர் Gtk கூறு ஏற்றவும்" #: ../bonobo/bonobo-ui-init-gtk.c:170 msgid "MODULE" msgstr "கூறு" #: ../bonobo/bonobo-ui-init-gtk.c:186 msgid "GTK+" msgstr "ஜிடிகே+" #: ../bonobo/bonobo-ui-main.c:278 msgid "Bonobo GUI support" msgstr "போனபோ GUI ஆதரவு" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "B_oth" msgstr "_இரண்டும்" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "T_ext" msgstr "உ_ரை" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Hide t_ips" msgstr "உத_விகளை மறை" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Show t_ips" msgstr "உ_தவிகளை காண்பி" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "_Hide toolbar" msgstr "கருவிப் _பலகையை மறை" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "Customi_ze" msgstr "_தனிப்பயனாக்கு" #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Customize the toolbar" msgstr "கருவிப் பலகையை தனிப்பயனாக்கு" #: ../bonobo/bonobo-ui-toolbar.c:1115 msgid "is floating" msgstr "மிதக்கின்றது" #: ../bonobo/bonobo-ui-toolbar.c:1116 msgid "whether the toolbar is floating" msgstr "கருவிப் பட்டை மிதக்கின்றதா" #: ../bonobo/bonobo-ui-toolbar.c:1162 msgid "Style of bevel around the toolbar" msgstr "கருவிப்பட்டை நிழலின் பாணி" #: ../bonobo/bonobo-ui-util.c:601 msgid "Could not display help for this application" msgstr "இந்த நிரலுக்கான உதவியைக் காட்ட முடியவில்லை" #: ../bonobo/bonobo-ui-util.c:643 msgid "_Contents" msgstr "_உள்ளடங்கிகள்" #: ../bonobo/bonobo-ui-util.c:644 msgid "View help for this application" msgstr "இன்நிரலுக்கான உதவியைப் பார்க்கவும்" #: ../bonobo/bonobo-window.c:345 msgid "Name of the window - used for configuration serialization." msgstr "இச்சாளரத்தின் பெயர் - தொடர்நிலை அமைவுக்காக பயன்படுத்தப்படும்." #: ../bonobo/bonobo-zoomable.c:326 msgid "Zoom level" msgstr "அளவுமாற்றம் அளவு" #: ../bonobo/bonobo-zoomable.c:327 msgid "The degree of enlargment" msgstr "பெரிதாக்குதல் அளவு" #: ../bonobo/bonobo-zoomable.c:335 msgid "Minimum Zoom level" msgstr "ஆகக்குறைந்த பெரிதாக்குதல் அளவு" #: ../bonobo/bonobo-zoomable.c:336 msgid "The minimum degree of enlargment" msgstr "ஆகக்குறைந்த பெரிதாக்குதல் அளவு" #: ../bonobo/bonobo-zoomable.c:344 msgid "Maximum Zoom level" msgstr "ஆகக்கூடிய பெரிதாக்கல் அளவு" #: ../bonobo/bonobo-zoomable.c:345 msgid "The maximum degree of enlargment" msgstr "ஆகக்கூடிய பெரிதாக்குதல் அளவு" #: ../bonobo/bonobo-zoomable.c:353 msgid "Has a minimum Zoom level" msgstr "ஆகக்குறைந்த பெரிதாக்குதல் அளவு உண்டு" #: ../bonobo/bonobo-zoomable.c:354 msgid "Whether we have a valid minimum zoom level" msgstr "செல்லுபடியான ஆகக்குறைந்த பெரிதாக்குதல் அளவு உண்டா" #: ../bonobo/bonobo-zoomable.c:361 msgid "Has a maximum Zoom level" msgstr "ஆகக்கூடிய பெரிதாக்குதல் அளவு உண்டு" #: ../bonobo/bonobo-zoomable.c:362 msgid "Whether we have a valid maximum zoom level" msgstr "செல்லுபடியான ஆகக்கூடிய பெரிதாக்குதல் அளவு உண்டா" #: ../bonobo/bonobo-zoomable.c:369 msgid "Is continuous" msgstr "தொடர்ந்தது" #: ../bonobo/bonobo-zoomable.c:370 msgid "Whether we zoom continuously (as opposed to jumps)" msgstr "(பிரிநிலை þல்லாமல்) தொடர்ந்த முறையில் அளவு மாற்றம்" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:1 msgid "About this application" msgstr "இன்நிரலைப்பற்றி" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:2 msgid "Select" msgstr "தெரிவுசெய்க" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:3 msgid "_About..." msgstr "_பற்றி..." #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:4 msgid "_Edit" msgstr "_தொகு" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:5 #: ../tools/browser/bonobo-browser.xml.h:4 msgid "_File" msgstr "_கோப்பு" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:6 msgid "_Select" msgstr "_தெரிவுசெய்க" #: ../samples/bonoboui/hello.c:63 msgid "This does nothing; it is only a demonstration." msgstr "இது ஓர் எடுத்துக்காட்டல் மட்டுமே; வேரேதும் செய்யாது." #: ../samples/bonoboui/hello.c:145 msgid "BonoboUI-Hello." msgstr "போனபோ UI-வணக்கம்." #: ../samples/bonoboui/hello.c:217 msgid "Gnome Hello" msgstr "கனோம் வணக்கம்" #. Create Label and put it in the Button: #: ../samples/bonoboui/hello.c:272 msgid "Hello, World!" msgstr "அனைவருக்கும், வணக்கம்!" #: ../samples/bonoboui/hello.c:312 msgid "Cannot init libbonoboui code" msgstr "போனபோ UI குறிமுறையை தொடக்க இயலவில்லை" #: ../samples/controls/bonobo-sample-controls.c:131 msgid "Could not initialize Bonobo UI" msgstr "போனபோ UI துவக்க முடியவில்லை" #: ../tools/browser/bonobo-browser.desktop.in.h:1 msgid "Bonobo Component Browser" msgstr "போனபோ கூறு உலாவி" #: ../tools/browser/bonobo-browser.desktop.in.h:2 msgid "Shows available Bonobo components" msgstr "இருக்கும் போனபோ கூறுகளை காட்டுகிறது" #: ../tools/browser/bonobo-browser.xml.h:1 msgid "About this program..." msgstr "இந்த நிரலைப் பற்றி..." #: ../tools/browser/bonobo-browser.xml.h:2 msgid "Close the current window" msgstr "நடப்பு சாளரத்தை மூடவும்" #: ../tools/browser/bonobo-browser.xml.h:3 msgid "Open a new window" msgstr "ஒரு புதிய சாளரத்தை திற" #: ../tools/browser/bonobo-browser.xml.h:5 msgid "_Help" msgstr "உதவி (_H)" #. Build the general tab #: ../tools/browser/component-details.c:109 msgid "General" msgstr "பொது" #: ../tools/browser/component-details.c:116 #: ../tools/browser/component-list.c:398 msgid "IID" msgstr "Iஎண்" #: ../tools/browser/component-details.c:117 msgid "Location" msgstr "இடம்" #. Build the details tab #: ../tools/browser/component-details.c:167 msgid "Details" msgstr "விவரங்கள்" #: ../tools/browser/component-details.c:168 msgid "Detailed Information" msgstr "விளக்கமான தகவல்" #: ../tools/browser/component-list.c:367 ../tools/browser/window.c:283 msgid "Active" msgstr "செயல்படுத்து" #: ../tools/browser/component-list.c:388 msgid "Type" msgstr "வகை" #: ../tools/browser/window.c:162 msgid "Component Details" msgstr "கூறு விவரங்கள்" #: ../tools/browser/window.c:208 msgid "Bonobo Browser" msgstr "போனபோ உலாவி" #: ../tools/browser/window.c:210 msgid "Copyright 2001, The GNOME Foundation" msgstr "காப்புரிமை 2001, கனோம்(GNOME) அமைப்பு" #: ../tools/browser/window.c:211 msgid "Bonobo component browser" msgstr "போனபோ கூறு உலாவி" #: ../tools/browser/window.c:214 msgid "translator-credits" msgstr "மொழிபெயர்ப்பாளர்-சன்மானம்" #. create the window #: ../tools/browser/window.c:240 msgid "Component Browser" msgstr "கூறு உலாவி" #. Fill out the tool bar #: ../tools/browser/window.c:280 msgid "All" msgstr "அனைத்தும்" #: ../tools/browser/window.c:286 msgid "Inactive" msgstr "செயலற்ற" libbonoboui-2.24.5/po/fa.po0000644000076400007640000003371511173072741012420 00000000000000# Persian translation of libbonoboui. # Copyright (C) 2003, 2005 Sharif FarsiWeb, Inc. # This file is distributed under the same license as the libbonoboui package. # Roozbeh Pournader , 2003, 2005. # Meelad Zakaria , 2005. # msgid "" msgstr "" "Project-Id-Version: libbonoboui HEAD\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2005-09-10 18:44+0200\n" "PO-Revision-Date: 2005-08-20 19:27+0430\n" "Last-Translator: Roozbeh Pournader \n" "Language-Team: Persian \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../bonobo/bonobo-canvas-item.c:683 msgid "corba factory" msgstr "کارخانه‌ی کوربا" #: ../bonobo/bonobo-canvas-item.c:684 msgid "The factory pointer" msgstr "نشانگر کارخانه" #: ../bonobo/bonobo-canvas-item.c:693 msgid "corba UI container" msgstr "" #: ../bonobo/bonobo-canvas-item.c:694 msgid "The User interface container" msgstr "" #: ../bonobo/bonobo-dock-item-grip.c:257 msgid "Dock the toolbar" msgstr "الحاق به نوار ابزار" #: ../bonobo/bonobo-dock-item-grip.c:258 msgid "Undock the toolbar" msgstr "جدا شدن از نوار ابزار" #: ../bonobo/bonobo-dock-item.c:235 ../bonobo/bonobo-dock-item.c:236 #: ../bonobo/bonobo-ui-toolbar.c:1175 msgid "Shadow type" msgstr "نوع سایه" #: ../bonobo/bonobo-dock-item.c:246 ../bonobo/bonobo-dock-item.c:247 #: ../bonobo/bonobo-ui-toolbar.c:1119 ../bonobo/bonobo-ui-toolbar.c:1120 msgid "Orientation" msgstr "جهت" #: ../bonobo/bonobo-dock-item.c:257 ../bonobo/bonobo-dock-item.c:258 #: ../bonobo/bonobo-ui-toolbar.c:1138 ../bonobo/bonobo-ui-toolbar.c:1139 msgid "Preferred width" msgstr "عرض مرجح" #: ../bonobo/bonobo-dock-item.c:266 ../bonobo/bonobo-dock-item.c:267 #: ../bonobo/bonobo-ui-toolbar.c:1147 ../bonobo/bonobo-ui-toolbar.c:1148 msgid "Preferred height" msgstr "ارتفاع مرجح" #: ../bonobo/bonobo-file-selector-util.c:357 msgid "Select a file to open" msgstr "پرونده‌ای برای باز کردن انتخاب کنید" #: ../bonobo/bonobo-file-selector-util.c:385 msgid "Select files to open" msgstr "پرونده‌هایی برای باز کردن انتخاب کنید" #: ../bonobo/bonobo-file-selector-util.c:414 msgid "Select a filename to save" msgstr "نام پرونده‌ای برای ذخیره کردن انتخاب کنید" #: ../bonobo/bonobo-plug.c:425 msgid "Event Forwarding" msgstr "ارجاع رویداد" #: ../bonobo/bonobo-plug.c:426 msgid "Whether X events should be forwarded" msgstr "این که رویدادهای X ارجاع شوند یا نه" #: ../bonobo/bonobo-selector-widget.c:302 ../bonobo/bonobo-window.c:346 #: ../tools/browser/component-details.c:114 #: ../tools/browser/component-list.c:381 msgid "Name" msgstr "نام" #: ../bonobo/bonobo-selector-widget.c:324 #: ../tools/browser/component-details.c:115 msgid "Description" msgstr "شرح" #: ../bonobo/bonobo-selector.c:345 msgid "Interfaces required" msgstr "واسط‌های لازم" #: ../bonobo/bonobo-selector.c:346 msgid "" "A NULL-terminated array of interfaces which a server must support in order " "to be listed in the selector. Defaults to \"IDL:Bonobo/Embeddable:1.0\" if " "no interfaces are listed" msgstr "" #: ../bonobo/bonobo-selector.c:348 msgid "Interface required entry" msgstr "مدخل مورد نیاز واسط" #: ../bonobo/bonobo-selector.c:349 msgid "One of the interfaces that's required" msgstr "یکی از واسط‌های مورد نیاز" #: ../bonobo/bonobo-ui-config-widget.c:268 msgid "Visible" msgstr "مرئی" #: ../bonobo/bonobo-ui-config-widget.c:275 msgid "_Show" msgstr "_نشان دادن" #: ../bonobo/bonobo-ui-config-widget.c:282 msgid "_Hide" msgstr "_مخفی کردن" #: ../bonobo/bonobo-ui-config-widget.c:288 msgid "_View tooltips" msgstr "_نمایش راهنما‌های آنی" #: ../bonobo/bonobo-ui-config-widget.c:293 msgid "Toolbars" msgstr "نوارهای ابزار" #: ../bonobo/bonobo-ui-config-widget.c:303 msgid "toolbars" msgstr "نوار ابزار" #: ../bonobo/bonobo-ui-config-widget.c:314 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "Look" msgstr "ظاهر" #: ../bonobo/bonobo-ui-config-widget.c:323 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "_Icon" msgstr "_شمایل" #: ../bonobo/bonobo-ui-config-widget.c:329 msgid "_Text and Icon" msgstr "_متن و شمایل" #: ../bonobo/bonobo-ui-config-widget.c:335 msgid "Text only" msgstr "فقط متن" #: ../bonobo/bonobo-ui-config-widget.c:341 msgid "_Priority text only" msgstr "فقط متن _اولویت‌دار" #: ../bonobo/bonobo-ui-engine.c:90 msgid "Debug" msgstr "اشکال‌زدایی" #: ../bonobo/bonobo-ui-engine.c:90 msgid "_Dump XML" msgstr "_تخلیه‌ی XML" #: ../bonobo/bonobo-ui-engine.c:91 msgid "Dump the entire UI's XML description to the console" msgstr "تخلیه‌ی سراسر شرح XML واسط کاربر در پیشانه" #: ../bonobo/bonobo-ui-engine-config.c:522 msgid "Configure UI" msgstr "پیکربندی واسط کاربر" #: ../bonobo/bonobo-ui-init-gtk.c:113 msgid "Gdk debugging flags to set" msgstr "پرچم‌های اشکال‌زدایی Gdk که یک شوند" #: ../bonobo/bonobo-ui-init-gtk.c:113 ../bonobo/bonobo-ui-init-gtk.c:116 #: ../bonobo/bonobo-ui-init-gtk.c:144 ../bonobo/bonobo-ui-init-gtk.c:147 msgid "FLAGS" msgstr "پرچم‌ها" #: ../bonobo/bonobo-ui-init-gtk.c:116 msgid "Gdk debugging flags to unset" msgstr "پرچم‌های اشکال‌زدایی Gdk که صفر شوند" #: ../bonobo/bonobo-ui-init-gtk.c:120 msgid "X display to use" msgstr "نمایش X که استفاده شود" #: ../bonobo/bonobo-ui-init-gtk.c:120 msgid "DISPLAY" msgstr "نمایش" #: ../bonobo/bonobo-ui-init-gtk.c:124 msgid "X screen to use" msgstr "صفحه‌ی X که استفاده شود" #: ../bonobo/bonobo-ui-init-gtk.c:124 msgid "SCREEN" msgstr "صفحه" #: ../bonobo/bonobo-ui-init-gtk.c:128 msgid "Make X calls synchronous" msgstr "همگام‌سازی فراخوانی‌های X" #: ../bonobo/bonobo-ui-init-gtk.c:134 msgid "Don't use X shared memory extension" msgstr "عدم استفاده از ضمیمه‌ی حافظه‌ی مشترک X" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "Program name as used by the window manager" msgstr "نام برنامه همان طور که مدیر پنجره‌ها استفاده می‌کند" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "NAME" msgstr "نام" #: ../bonobo/bonobo-ui-init-gtk.c:141 msgid "Program class as used by the window manager" msgstr "رده‌ی برنامه همان طور که مدیر پنجره‌ها استفاده می‌کند" #: ../bonobo/bonobo-ui-init-gtk.c:141 msgid "CLASS" msgstr "رده" #: ../bonobo/bonobo-ui-init-gtk.c:144 msgid "Gtk+ debugging flags to set" msgstr "پرچم‌های اشکال‌زدایی Gtk+ که یک شوند" #: ../bonobo/bonobo-ui-init-gtk.c:147 msgid "Gtk+ debugging flags to unset" msgstr "پرچم‌های اشکال‌زدایی Gtk+ که صفر شوند" #: ../bonobo/bonobo-ui-init-gtk.c:150 msgid "Make all warnings fatal" msgstr "مهلک کردن همه‌ی اخطارها" #: ../bonobo/bonobo-ui-init-gtk.c:153 msgid "Load an additional Gtk module" msgstr "بار کردن یک پیمانه‌ی اضافی Gtk" #: ../bonobo/bonobo-ui-init-gtk.c:153 msgid "MODULE" msgstr "پیمانه" #: ../bonobo/bonobo-ui-init-gtk.c:162 msgid "GTK+" msgstr "GTK+" #: ../bonobo/bonobo-ui-main.c:278 msgid "Bonobo GUI support" msgstr "پشتیبانی واسط گرافیکی کاربر بونوبو" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "B_oth" msgstr "_هردو" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "T_ext" msgstr "_متن" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Hide t_ips" msgstr "مخفی کردن _راهنمایی‌ها" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Show t_ips" msgstr "نشان دادن _راهنمایی‌ها" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "_Hide toolbar" msgstr "_مخفی کردن نوار ابزار" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "Customi_ze" msgstr "_سفارشی کردن" #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Customize the toolbar" msgstr "سفارشی کردن نوار ابزار" #: ../bonobo/bonobo-ui-toolbar.c:1129 msgid "is floating" msgstr "شناور است" #: ../bonobo/bonobo-ui-toolbar.c:1130 msgid "whether the toolbar is floating" msgstr "این که نوار ابزار شناور باشد یا نه" #: ../bonobo/bonobo-ui-toolbar.c:1176 msgid "Style of bevel around the toolbar" msgstr "سبک سایه‌ی دور نوار ابزار" #: ../bonobo/bonobo-ui-util.c:630 msgid "_Contents" msgstr "_محتویات" #: ../bonobo/bonobo-ui-util.c:631 msgid "View help for this application" msgstr "نمایش راهنمای این برنامه" #: ../bonobo/bonobo-window.c:347 msgid "Name of the window - used for configuration serialization." msgstr "نام پنجره ـ برای سریال‌سازی پیکربندی به کار می‌رود." #: ../bonobo/bonobo-zoomable.c:326 msgid "Zoom level" msgstr "سطح زوم" #: ../bonobo/bonobo-zoomable.c:327 msgid "The degree of enlargment" msgstr "میزان بزرگ‌نمایی" #: ../bonobo/bonobo-zoomable.c:335 msgid "Minimum Zoom level" msgstr "حداقل سطح زوم" #: ../bonobo/bonobo-zoomable.c:336 msgid "The minimum degree of enlargment" msgstr "حداقل میزان بزرگ‌نمایی" #: ../bonobo/bonobo-zoomable.c:344 msgid "Maximum Zoom level" msgstr "حداکثر سطح زوم" #: ../bonobo/bonobo-zoomable.c:345 msgid "The maximum degree of enlargment" msgstr "حداکثر میزان بزرگ‌نمایی" #: ../bonobo/bonobo-zoomable.c:353 msgid "Has a minimum Zoom level" msgstr "حداقلی برای سطح زوم دارد" #: ../bonobo/bonobo-zoomable.c:354 msgid "Whether we have a valid minimum zoom level" msgstr "این که حداقل سطح زوم معتبری داریم یا نه" #: ../bonobo/bonobo-zoomable.c:361 msgid "Has a maximum Zoom level" msgstr "حداکثری برای سطح زوم دارد" #: ../bonobo/bonobo-zoomable.c:362 msgid "Whether we have a valid maximum zoom level" msgstr "این که حداکثر سطح زوم معتبری داریم یا نه" #: ../bonobo/bonobo-zoomable.c:369 msgid "Is continuous" msgstr "پیوسته است" #: ../bonobo/bonobo-zoomable.c:370 msgid "Whether we zoom continuously (as opposed to jumps)" msgstr "این که به طور پیوسته زوم شود یا نه (یا این که جهش شود)" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:1 msgid "About this application" msgstr "درباره‌ی این برنامه" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:2 msgid "Select" msgstr "انتخاب" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:3 msgid "_About..." msgstr "_درباره..." #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:4 msgid "_Edit" msgstr "_ویرایش" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:5 #: ../tools/browser/bonobo-browser.xml.h:4 msgid "_File" msgstr "_پرونده" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:6 msgid "_Select" msgstr "_انتخاب" #: ../samples/bonoboui/hello.c:63 msgid "This does nothing; it is only a demonstration." msgstr "هیچ کاری نمی‌کند؛ فقط نمایشی است." #: ../samples/bonoboui/hello.c:145 msgid "BonoboUI-Hello." msgstr "BonoboUI-Hello." #: ../samples/bonoboui/hello.c:217 msgid "Gnome Hello" msgstr "سلام گنوم" #. Create Label and put it in the Button: #: ../samples/bonoboui/hello.c:272 msgid "Hello, World!" msgstr "سلام بر همه!" #: ../samples/bonoboui/hello.c:312 msgid "Cannot init libbonoboui code" msgstr "نمی‌توان کد libbonoboui را راه‌اندازی کرد" #: ../samples/controls/bonobo-sample-controls.c:131 msgid "Could not initialize Bonobo UI" msgstr "نمی‌توان واسط کاربر بونوبو را راه‌اندازی کرد" #: ../tools/browser/bonobo-browser.desktop.in.h:1 msgid "Bonobo Component Browser" msgstr "مرورگر مؤلفه‌های بونوبو" #: ../tools/browser/bonobo-browser.desktop.in.h:2 msgid "Shows available Bonobo components" msgstr "مؤلفه‌های موجود بونوبو را نمایش می‌دهد" #: ../tools/browser/bonobo-browser.xml.h:1 msgid "About this program..." msgstr "درباره‌ی این برنامه..." #: ../tools/browser/bonobo-browser.xml.h:2 msgid "Close the current window" msgstr "بستن پنجره‌ی فعلی" #: ../tools/browser/bonobo-browser.xml.h:3 msgid "Open a new window" msgstr "باز کردن یک پنجره‌ی جدید" #: ../tools/browser/bonobo-browser.xml.h:5 msgid "_Help" msgstr "_راهنما" #. Build the general tab #: ../tools/browser/component-details.c:109 msgid "General" msgstr "کلیات" #: ../tools/browser/component-details.c:116 #: ../tools/browser/component-list.c:401 msgid "IID" msgstr "" #: ../tools/browser/component-details.c:117 msgid "Location" msgstr "مکان" #. Build the details tab #: ../tools/browser/component-details.c:167 msgid "Details" msgstr "جزئیات" #: ../tools/browser/component-details.c:168 msgid "Detailed Information" msgstr "اطلاعات مشروح" #: ../tools/browser/component-list.c:370 ../tools/browser/window.c:290 msgid "Active" msgstr "فعال" #: ../tools/browser/component-list.c:391 msgid "Type" msgstr "نوع" #: ../tools/browser/window.c:170 msgid "Component Details" msgstr "جزئیات مؤلفه" #: ../tools/browser/window.c:215 msgid "Bonobo Browser" msgstr "مرورگر بونوبو" #: ../tools/browser/window.c:216 msgid "Copyright 2001, The GNOME Foundation" msgstr "Copyright 2001, The GNOME Foundation" #: ../tools/browser/window.c:217 msgid "Bonobo component browser" msgstr "مرورگر مؤلفه‌های بونوبو" #. create the window #: ../tools/browser/window.c:247 msgid "Component Browser" msgstr "مرورگر بونوبو" #. Fill out the tool bar #: ../tools/browser/window.c:287 msgid "All" msgstr "همه" #: ../tools/browser/window.c:293 msgid "Inactive" msgstr "غیر فعال" libbonoboui-2.24.5/po/id.po0000644000076400007640000003201311261745451012417 00000000000000# Indonesia translation of libbonoboui. # Copyright (C) 2005 THE libbonoboui's COPYRIGHT HOLDER # This file is distributed under the same license as the libbonoboui package. # Mohammad DAMT , 2005. # Andika Triwidada , 2009. msgid "" msgstr "" "Project-Id-Version: libbonoboui HEAD\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2009-09-16 11:21+0300\n" "PO-Revision-Date: 2009-08-29 17:14+0700\n" "Last-Translator: Andika Triwidada \n" "Language-Team: Indonesian \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../bonobo/bonobo-canvas-item.c:680 msgid "corba factory" msgstr "factory corba" #: ../bonobo/bonobo-canvas-item.c:681 msgid "The factory pointer" msgstr "Pointer factory" #: ../bonobo/bonobo-canvas-item.c:690 msgid "corba UI container" msgstr "Kontainer UI corba" #: ../bonobo/bonobo-canvas-item.c:691 msgid "The User interface container" msgstr "Kontainer interface user" #: ../bonobo/bonobo-dock-item-grip.c:254 msgid "Dock the toolbar" msgstr "Tempelkan toolbar" #: ../bonobo/bonobo-dock-item-grip.c:255 msgid "Undock the toolbar" msgstr "Cabut toolbar" #: ../bonobo/bonobo-dock-item.c:225 ../bonobo/bonobo-dock-item.c:226 #: ../bonobo/bonobo-ui-toolbar.c:1163 msgid "Shadow type" msgstr "Tipe shadow" #: ../bonobo/bonobo-dock-item.c:236 ../bonobo/bonobo-dock-item.c:237 #: ../bonobo/bonobo-ui-toolbar.c:1107 ../bonobo/bonobo-ui-toolbar.c:1108 msgid "Orientation" msgstr "Arah" #: ../bonobo/bonobo-dock-item.c:247 ../bonobo/bonobo-dock-item.c:248 #: ../bonobo/bonobo-ui-toolbar.c:1126 ../bonobo/bonobo-ui-toolbar.c:1127 msgid "Preferred width" msgstr "Lebar yang diinginkan" #: ../bonobo/bonobo-dock-item.c:256 ../bonobo/bonobo-dock-item.c:257 #: ../bonobo/bonobo-ui-toolbar.c:1135 ../bonobo/bonobo-ui-toolbar.c:1136 msgid "Preferred height" msgstr "Tinggi yang diinginkan" #: ../bonobo/bonobo-file-selector-util.c:350 msgid "Select a file to open" msgstr "Pilih file yang hendak dibuka" #: ../bonobo/bonobo-file-selector-util.c:378 msgid "Select files to open" msgstr "Pilih file-file yang hendak dibuka" #: ../bonobo/bonobo-file-selector-util.c:407 msgid "Select a filename to save" msgstr "Berikan nama file untuk menyimpan file ini" #: ../bonobo/bonobo-plug.c:425 msgid "Event Forwarding" msgstr "Event Forwarding" #: ../bonobo/bonobo-plug.c:426 msgid "Whether X events should be forwarded" msgstr "Menentukan apakah event-event X harus diforward atau tidak" #: ../bonobo/bonobo-selector-widget.c:300 ../bonobo/bonobo-window.c:347 #: ../tools/browser/component-details.c:108 #: ../tools/browser/component-list.c:369 msgid "Name" msgstr "Nama" #: ../bonobo/bonobo-selector-widget.c:322 #: ../tools/browser/component-details.c:109 msgid "Description" msgstr "Keterangan" #: ../bonobo/bonobo-selector.c:343 msgid "Interfaces required" msgstr "Nama interface yang harus ada" #: ../bonobo/bonobo-selector.c:344 msgid "" "A NULL-terminated array of interfaces which a server must support in order " "to be listed in the selector. Defaults to \"IDL:Bonobo/Embeddable:1.0\" if " "no interfaces are listed" msgstr "" "Array (NULL-terminated) berisi interface yang hendak digunakan oleh server " "agar bisa didaftar pada selektor. Jika belum ada isinya, maka defaultnya " "bernilai \"IDL:Bonobo/Embeddable:1.0\"" #: ../bonobo/bonobo-selector.c:346 msgid "Interface required entry" msgstr "Entri untuk nama interface" #: ../bonobo/bonobo-selector.c:347 msgid "One of the interfaces that's required" msgstr "Salah satu nama interface yang harus ada" #: ../bonobo/bonobo-ui-config-widget.c:267 msgid "Visible" msgstr "Terlihat" #: ../bonobo/bonobo-ui-config-widget.c:274 msgid "_Show" msgstr "_Tampilkan" #: ../bonobo/bonobo-ui-config-widget.c:281 msgid "_Hide" msgstr "_Sembunyikan" #: ../bonobo/bonobo-ui-config-widget.c:287 msgid "_View tooltips" msgstr "_Lihat tooltips" #: ../bonobo/bonobo-ui-config-widget.c:292 msgid "Toolbars" msgstr "Toolbar" #: ../bonobo/bonobo-ui-config-widget.c:302 msgid "toolbars" msgstr "toolbar" #: ../bonobo/bonobo-ui-config-widget.c:313 #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "Look" msgstr "Lihat" #: ../bonobo/bonobo-ui-config-widget.c:322 #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "_Icon" msgstr "_Ikon" #: ../bonobo/bonobo-ui-config-widget.c:328 msgid "_Text and Icon" msgstr "_Teks dan Ikon" #: ../bonobo/bonobo-ui-config-widget.c:334 msgid "Text only" msgstr "Teks saja" #: ../bonobo/bonobo-ui-config-widget.c:340 msgid "_Priority text only" msgstr "Teks yang menjadi _prioritas saja" #: ../bonobo/bonobo-ui-engine.c:93 msgid "Debug" msgstr "Debug" #: ../bonobo/bonobo-ui-engine.c:93 msgid "_Dump XML" msgstr "_Dump XML" #: ../bonobo/bonobo-ui-engine.c:94 msgid "Dump the entire UI's XML description to the console" msgstr "Perlihatkan semua deskripsi UI ke konsol" #: ../bonobo/bonobo-ui-engine-config.c:524 msgid "Configure UI" msgstr "Konfigurasikan UI" #: ../bonobo/bonobo-ui-init-gtk.c:131 msgid "Gdk debugging flags to set" msgstr "Flag debug Gdk yang hendak diset" #: ../bonobo/bonobo-ui-init-gtk.c:131 ../bonobo/bonobo-ui-init-gtk.c:134 #: ../bonobo/bonobo-ui-init-gtk.c:162 ../bonobo/bonobo-ui-init-gtk.c:165 msgid "FLAGS" msgstr "FLAG" #: ../bonobo/bonobo-ui-init-gtk.c:134 msgid "Gdk debugging flags to unset" msgstr "Flag debug Gdk yang hendak dihapus" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "X display to use" msgstr "Display X yang hendak digunakan" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "DISPLAY" msgstr "DISPLAY" #: ../bonobo/bonobo-ui-init-gtk.c:142 msgid "X screen to use" msgstr "Layar X yang hendak digunakan" #: ../bonobo/bonobo-ui-init-gtk.c:142 msgid "SCREEN" msgstr "SCREEN" #: ../bonobo/bonobo-ui-init-gtk.c:146 msgid "Make X calls synchronous" msgstr "Buat call X sinkoronus" #: ../bonobo/bonobo-ui-init-gtk.c:152 msgid "Don't use X shared memory extension" msgstr "Jangan pakai shared memory X" #: ../bonobo/bonobo-ui-init-gtk.c:156 msgid "Program name as used by the window manager" msgstr "Nama program yang akan digunakan window manager" #: ../bonobo/bonobo-ui-init-gtk.c:156 msgid "NAME" msgstr "NAMA" #: ../bonobo/bonobo-ui-init-gtk.c:159 msgid "Program class as used by the window manager" msgstr "Kelas program yang akan digunakan window manager" #: ../bonobo/bonobo-ui-init-gtk.c:159 msgid "CLASS" msgstr "KELAS" #: ../bonobo/bonobo-ui-init-gtk.c:162 msgid "Gtk+ debugging flags to set" msgstr "Flag debug Gtk+ yang hendak diset" #: ../bonobo/bonobo-ui-init-gtk.c:165 msgid "Gtk+ debugging flags to unset" msgstr "Flag Gtk+ yang hendak dihapus" #: ../bonobo/bonobo-ui-init-gtk.c:168 msgid "Make all warnings fatal" msgstr "Jadikan semua pesan warning menjadi pesan fatal" #: ../bonobo/bonobo-ui-init-gtk.c:171 msgid "Load an additional Gtk module" msgstr "Load modul tambahan Gtk lainnya" #: ../bonobo/bonobo-ui-init-gtk.c:171 msgid "MODULE" msgstr "MODULE" #: ../bonobo/bonobo-ui-init-gtk.c:187 msgid "GTK+" msgstr "GTK+" #: ../bonobo/bonobo-ui-main.c:281 msgid "Bonobo GUI support" msgstr "Dukungan GUI Bonobo" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "B_oth" msgstr "_Dua-duanya" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "T_ext" msgstr "T_eks" #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Hide t_ips" msgstr "Sembuny_ikan tips" #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Show t_ips" msgstr "Tampilkan t_ips" #: ../bonobo/bonobo-ui-sync-toolbar.c:570 msgid "_Hide toolbar" msgstr "Sembunyi_kan toolbar" #: ../bonobo/bonobo-ui-sync-toolbar.c:570 msgid "Customi_ze" msgstr "Konfigurasi" #: ../bonobo/bonobo-ui-sync-toolbar.c:571 msgid "Customize the toolbar" msgstr "Konfigurasikan toolbar" #: ../bonobo/bonobo-ui-toolbar.c:1117 msgid "is floating" msgstr "mengambang" #: ../bonobo/bonobo-ui-toolbar.c:1118 msgid "whether the toolbar is floating" msgstr "pilih apakah toolbar harus mengambang atau tidak" #: ../bonobo/bonobo-ui-toolbar.c:1164 msgid "Style of bevel around the toolbar" msgstr "Gaya bevel disekeliling toolbar" #: ../bonobo/bonobo-ui-util.c:602 msgid "Could not display help for this application" msgstr "Tak bisa tampilkan bantuan bagi aplikasi ini" #: ../bonobo/bonobo-ui-util.c:644 msgid "_Contents" msgstr "_Isi" #: ../bonobo/bonobo-ui-util.c:645 msgid "View help for this application" msgstr "Lihat layar bantu aplikasi ini" #: ../bonobo/bonobo-window.c:348 msgid "Name of the window - used for configuration serialization." msgstr "Nama window - digunakan untuk serialization konfigurasi" #: ../bonobo/bonobo-zoomable.c:326 msgid "Zoom level" msgstr "Tingkat pembesaran" #: ../bonobo/bonobo-zoomable.c:327 msgid "The degree of enlargment" msgstr "Tingkat pembesaran" #: ../bonobo/bonobo-zoomable.c:335 msgid "Minimum Zoom level" msgstr "Tingkat pembesaran terkecil" #: ../bonobo/bonobo-zoomable.c:336 msgid "The minimum degree of enlargment" msgstr "Tingkat pembesaran terkecil" #: ../bonobo/bonobo-zoomable.c:344 msgid "Maximum Zoom level" msgstr "Tingkat pembesaran terbesar" #: ../bonobo/bonobo-zoomable.c:345 msgid "The maximum degree of enlargment" msgstr "Tingkat pembesaran terbesar" #: ../bonobo/bonobo-zoomable.c:353 msgid "Has a minimum Zoom level" msgstr "Ada nilai tingkat pembesaran terkecil" #: ../bonobo/bonobo-zoomable.c:354 msgid "Whether we have a valid minimum zoom level" msgstr "Menentukan apakah ada nilai tingkat pembesaran terkecil" #: ../bonobo/bonobo-zoomable.c:361 msgid "Has a maximum Zoom level" msgstr "Ada nilai tingkat pembesaran terbesar" #: ../bonobo/bonobo-zoomable.c:362 msgid "Whether we have a valid maximum zoom level" msgstr "Menentukan apakah ada nilai tingkat pembesaran terbesar" #: ../bonobo/bonobo-zoomable.c:369 msgid "Is continuous" msgstr "Kontinyu" #: ../bonobo/bonobo-zoomable.c:370 msgid "Whether we zoom continuously (as opposed to jumps)" msgstr "Menentukan apakah pembesaran bersifat kontinyu (tidak lompat)" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:1 msgid "About this application" msgstr "Keterangan tentang aplikasi" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:2 msgid "Select" msgstr "Pilih" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:3 msgid "_About..." msgstr "_Keterangan..." #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:4 msgid "_Edit" msgstr "_Edit" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:5 #: ../tools/browser/bonobo-browser.xml.h:4 msgid "_File" msgstr "_File" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:6 msgid "_Select" msgstr "_Pilih" #: ../samples/bonoboui/hello.c:65 msgid "This does nothing; it is only a demonstration." msgstr "Tidak ada apa-apa. Cuma demo saja." #: ../samples/bonoboui/hello.c:147 msgid "BonoboUI-Hello." msgstr "BonoboUI-Hello." #: ../samples/bonoboui/hello.c:219 msgid "Gnome Hello" msgstr "Gnome Hello" #. Create Label and put it in the Button: #: ../samples/bonoboui/hello.c:274 msgid "Hello, World!" msgstr "Hello, World!" #: ../samples/bonoboui/hello.c:314 msgid "Cannot init libbonoboui code" msgstr "Tidak dapat menginisialisasi kode libbonoboui" #: ../samples/controls/bonobo-sample-controls.c:133 msgid "Could not initialize Bonobo UI" msgstr "Tidak dapat menginisialisasi UI Bonobo" #: ../tools/browser/bonobo-browser.desktop.in.h:1 msgid "Bonobo Component Browser" msgstr "Pencari Komponen Bonobo" #: ../tools/browser/bonobo-browser.desktop.in.h:2 msgid "Shows available Bonobo components" msgstr "Tampilkan komponen Bonobo yang tersedia" #: ../tools/browser/bonobo-browser.xml.h:1 msgid "About this program..." msgstr "Keterangan tentang aplikasi..." #: ../tools/browser/bonobo-browser.xml.h:2 msgid "Close the current window" msgstr "Tutup jendela ini" #: ../tools/browser/bonobo-browser.xml.h:3 msgid "Open a new window" msgstr "Buka sebuah jendela" #: ../tools/browser/bonobo-browser.xml.h:5 msgid "_Help" msgstr "_Bantuan" #. Build the general tab #: ../tools/browser/component-details.c:103 msgid "General" msgstr "Umum" #: ../tools/browser/component-details.c:110 #: ../tools/browser/component-list.c:389 msgid "IID" msgstr "IID" #: ../tools/browser/component-details.c:111 msgid "Location" msgstr "Lokasi" #. Build the details tab #: ../tools/browser/component-details.c:161 msgid "Details" msgstr "Rinci" #: ../tools/browser/component-details.c:162 msgid "Detailed Information" msgstr "Informasi Rinci" #: ../tools/browser/component-list.c:358 ../tools/browser/window.c:283 msgid "Active" msgstr "Aktif" #: ../tools/browser/component-list.c:379 msgid "Type" msgstr "Tipe" #: ../tools/browser/window.c:162 msgid "Component Details" msgstr "Rincian Komponen" #: ../tools/browser/window.c:208 msgid "Bonobo Browser" msgstr "Pencari Bonobo" #: ../tools/browser/window.c:210 msgid "Copyright 2001, The GNOME Foundation" msgstr "Hakcipta 2001, Yayasan GNOME" #: ../tools/browser/window.c:211 msgid "Bonobo component browser" msgstr "Pencari komponen Bonobo" #: ../tools/browser/window.c:214 msgid "translator-credits" msgstr "" "Mohammad DAMT , 2005.\n" "Andika Triwidada , 2009." #. create the window #: ../tools/browser/window.c:240 msgid "Component Browser" msgstr "Pencari Komponen" #. Fill out the tool bar #: ../tools/browser/window.c:280 msgid "All" msgstr "Semua" #: ../tools/browser/window.c:286 msgid "Inactive" msgstr "Tak Aktif" libbonoboui-2.24.5/po/POTFILES.skip0000644000076400007640000000121711173072741013577 00000000000000doc/api/ui-faq.xml doc/std-ui.xml samples/canvdemo/CanvDemo.server.in.in samples/canvdemo/CanvDemo.server.in samples/canvdemo/circle.c samples/canvdemo/main.c samples/canvdemo/square.c samples/compound-doc/bonobo-hello/Bonobo_Sample_Hello.server.in.in samples/compound-doc/Bonobo_Sample_CanvasItem.server.in.in samples/compound-doc/Bonobo_Sample_Paint.server.in.in samples/compound-doc/container/embeddable-io.c samples/container/Bonobo_Sample_Container-ui.xml tests/control/test-control.c tests/test-events.c tests/test-filesel.c tests/test-focus.c tests/test-selector.c tests/test-sensitivity.c tests/test-toolbar.c tests/test-ui-auto.c tests/test-ui.c libbonoboui-2.24.5/po/pt.po0000644000076400007640000003227411173072741012454 00000000000000# libbonoboui's Portuguese Translation # Copyright © 2001,2002,2003,2004,2005, 2006, 2008 libbonoboui # Distributed under the same licence as the libbonoboui package # Duarte Loreto , 2001, 2002, 2003, 2004, 2005, 2006, 2008. # msgid "" msgstr "" "Project-Id-Version: 2.24\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2008-09-12 01:02+0100\n" "PO-Revision-Date: 2008-09-12 01:05+0000\n" "Last-Translator: Duarte Loreto \n" "Language-Team: Portuguese \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../bonobo/bonobo-canvas-item.c:680 msgid "corba factory" msgstr "fábrica corba" #: ../bonobo/bonobo-canvas-item.c:681 msgid "The factory pointer" msgstr "O apontador de fábrica" #: ../bonobo/bonobo-canvas-item.c:690 msgid "corba UI container" msgstr "contentor UI corba" #: ../bonobo/bonobo-canvas-item.c:691 msgid "The User interface container" msgstr "O contentor do interface de utilizador" #: ../bonobo/bonobo-dock-item-grip.c:255 msgid "Dock the toolbar" msgstr "Anexar a barra de ferramentas" #: ../bonobo/bonobo-dock-item-grip.c:256 msgid "Undock the toolbar" msgstr "Desanexar a barra de ferramentas" #: ../bonobo/bonobo-dock-item.c:228 ../bonobo/bonobo-dock-item.c:229 #: ../bonobo/bonobo-ui-toolbar.c:1161 msgid "Shadow type" msgstr "Tipo de sombra" #: ../bonobo/bonobo-dock-item.c:239 ../bonobo/bonobo-dock-item.c:240 #: ../bonobo/bonobo-ui-toolbar.c:1105 ../bonobo/bonobo-ui-toolbar.c:1106 msgid "Orientation" msgstr "Orientação" #: ../bonobo/bonobo-dock-item.c:250 ../bonobo/bonobo-dock-item.c:251 #: ../bonobo/bonobo-ui-toolbar.c:1124 ../bonobo/bonobo-ui-toolbar.c:1125 msgid "Preferred width" msgstr "Largura preferida" #: ../bonobo/bonobo-dock-item.c:259 ../bonobo/bonobo-dock-item.c:260 #: ../bonobo/bonobo-ui-toolbar.c:1133 ../bonobo/bonobo-ui-toolbar.c:1134 msgid "Preferred height" msgstr "Altura preferida" #: ../bonobo/bonobo-file-selector-util.c:355 msgid "Select a file to open" msgstr "Seleccione um ficheiro a abrir" #: ../bonobo/bonobo-file-selector-util.c:383 msgid "Select files to open" msgstr "Seleccione ficheiros a abrir" #: ../bonobo/bonobo-file-selector-util.c:412 msgid "Select a filename to save" msgstr "Seleccione um nome de ficheiro a gravar" #: ../bonobo/bonobo-plug.c:423 msgid "Event Forwarding" msgstr "Reencaminhamento de Eventos" #: ../bonobo/bonobo-plug.c:424 msgid "Whether X events should be forwarded" msgstr "Se eventos X deverão ser reencaminhados" #: ../bonobo/bonobo-selector-widget.c:297 ../bonobo/bonobo-window.c:344 #: ../tools/browser/component-details.c:114 #: ../tools/browser/component-list.c:378 msgid "Name" msgstr "Nome" #: ../bonobo/bonobo-selector-widget.c:319 #: ../tools/browser/component-details.c:115 msgid "Description" msgstr "Descrição" #: ../bonobo/bonobo-selector.c:343 msgid "Interfaces required" msgstr "Interfaces requeridas" #: ../bonobo/bonobo-selector.c:344 msgid "" "A NULL-terminated array of interfaces which a server must support in order " "to be listed in the selector. Defaults to \"IDL:Bonobo/Embeddable:1.0\" if " "no interfaces are listed" msgstr "" "Um array de interfaces, terminado em NULL, que um servidor tem de suportar " "por forma a ser listado no selector. Por omissão é \"IDL:Bonobo/" "Embeddable:1.0\" caso não seja listado nenhum interface" #: ../bonobo/bonobo-selector.c:346 msgid "Interface required entry" msgstr "Entrada de interface requerido" #: ../bonobo/bonobo-selector.c:347 msgid "One of the interfaces that's required" msgstr "Um dos interfaces que é requerido" #: ../bonobo/bonobo-ui-config-widget.c:265 msgid "Visible" msgstr "Visível" #: ../bonobo/bonobo-ui-config-widget.c:272 msgid "_Show" msgstr "Apre_sentar" #: ../bonobo/bonobo-ui-config-widget.c:279 msgid "_Hide" msgstr "_Esconder" #: ../bonobo/bonobo-ui-config-widget.c:285 msgid "_View tooltips" msgstr "_Ver dicas" #: ../bonobo/bonobo-ui-config-widget.c:290 msgid "Toolbars" msgstr "Barras de Ferramentas" #: ../bonobo/bonobo-ui-config-widget.c:300 msgid "toolbars" msgstr "barras de ferramentas" #: ../bonobo/bonobo-ui-config-widget.c:311 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "Look" msgstr "Aspecto" #: ../bonobo/bonobo-ui-config-widget.c:320 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "_Icon" msgstr "Í_cone" #: ../bonobo/bonobo-ui-config-widget.c:326 msgid "_Text and Icon" msgstr "_Texto e Ícone" #: ../bonobo/bonobo-ui-config-widget.c:332 msgid "Text only" msgstr "Apenas texto" #: ../bonobo/bonobo-ui-config-widget.c:338 msgid "_Priority text only" msgstr "Apenas texto _prioritário" #: ../bonobo/bonobo-ui-engine.c:91 msgid "Debug" msgstr "Depurar" #: ../bonobo/bonobo-ui-engine.c:91 msgid "_Dump XML" msgstr "_Despejar XML" #: ../bonobo/bonobo-ui-engine.c:92 msgid "Dump the entire UI's XML description to the console" msgstr "Despejar a descrição XML do UI completa na consola" #: ../bonobo/bonobo-ui-engine-config.c:522 msgid "Configure UI" msgstr "Configurar UI" #: ../bonobo/bonobo-ui-init-gtk.c:131 msgid "Gdk debugging flags to set" msgstr "Parâmetros de depuração Gdk a definir" #: ../bonobo/bonobo-ui-init-gtk.c:131 ../bonobo/bonobo-ui-init-gtk.c:134 #: ../bonobo/bonobo-ui-init-gtk.c:162 ../bonobo/bonobo-ui-init-gtk.c:165 msgid "FLAGS" msgstr "PARÂMETROS" #: ../bonobo/bonobo-ui-init-gtk.c:134 msgid "Gdk debugging flags to unset" msgstr "Parâmetros de depuração Gdk a remover" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "X display to use" msgstr "Ecrã X a utilizar" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "DISPLAY" msgstr "ECRÃ" #: ../bonobo/bonobo-ui-init-gtk.c:142 msgid "X screen to use" msgstr "Ecrã X a utilizar" #: ../bonobo/bonobo-ui-init-gtk.c:142 msgid "SCREEN" msgstr "ECRÃ" #: ../bonobo/bonobo-ui-init-gtk.c:146 msgid "Make X calls synchronous" msgstr "Fazer chamadas X sincronamente" #: ../bonobo/bonobo-ui-init-gtk.c:152 msgid "Don't use X shared memory extension" msgstr "Não utilizar extensão de memória partilhada X" #: ../bonobo/bonobo-ui-init-gtk.c:156 msgid "Program name as used by the window manager" msgstr "Nome de aplicação tal como utilizado pelo gestor de janelas" #: ../bonobo/bonobo-ui-init-gtk.c:156 msgid "NAME" msgstr "NOME" #: ../bonobo/bonobo-ui-init-gtk.c:159 msgid "Program class as used by the window manager" msgstr "Classe de aplicação tal como utilizada pelo gestor de janelas" #: ../bonobo/bonobo-ui-init-gtk.c:159 msgid "CLASS" msgstr "CLASSE" #: ../bonobo/bonobo-ui-init-gtk.c:162 msgid "Gtk+ debugging flags to set" msgstr "Parâmetros de depuração Gtk+ a definir" #: ../bonobo/bonobo-ui-init-gtk.c:165 msgid "Gtk+ debugging flags to unset" msgstr "Parâmetros de depuração Gtk+ a remover" #: ../bonobo/bonobo-ui-init-gtk.c:168 msgid "Make all warnings fatal" msgstr "Tornar todos os avisos fatais" #: ../bonobo/bonobo-ui-init-gtk.c:171 msgid "Load an additional Gtk module" msgstr "Ler um módulo Gtk adicional" #: ../bonobo/bonobo-ui-init-gtk.c:171 msgid "MODULE" msgstr "MÓDULO" #: ../bonobo/bonobo-ui-init-gtk.c:187 msgid "GTK+" msgstr "GTK+" #: ../bonobo/bonobo-ui-main.c:278 msgid "Bonobo GUI support" msgstr "Suporte GUI Bonobo" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "B_oth" msgstr "Amb_os" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "T_ext" msgstr "T_exto" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Hide t_ips" msgstr "Esconder d_icas" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Show t_ips" msgstr "Apresentar d_icas" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "_Hide toolbar" msgstr "_Esconder barra de ferramentas" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "Customi_ze" msgstr "Personali_zar" #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Customize the toolbar" msgstr "Personalizar a barra de ferramentas" #: ../bonobo/bonobo-ui-toolbar.c:1115 msgid "is floating" msgstr "está a flutuar" #: ../bonobo/bonobo-ui-toolbar.c:1116 msgid "whether the toolbar is floating" msgstr "se a barra de ferramentas está ou não a flutuar" #: ../bonobo/bonobo-ui-toolbar.c:1162 msgid "Style of bevel around the toolbar" msgstr "Estilo de relevo em torno da barra de ferramentas" #: ../bonobo/bonobo-ui-util.c:601 msgid "Could not display help for this application" msgstr "Incapaz de apresentar a ajuda desta aplicação" #: ../bonobo/bonobo-ui-util.c:643 msgid "_Contents" msgstr "_Conteúdo" #: ../bonobo/bonobo-ui-util.c:644 msgid "View help for this application" msgstr "Consultar a ajuda desta aplicação" #: ../bonobo/bonobo-window.c:345 msgid "Name of the window - used for configuration serialization." msgstr "Nome da janela - utilizado para serialização da configuração." #: ../bonobo/bonobo-zoomable.c:326 msgid "Zoom level" msgstr "Nível de zoom" #: ../bonobo/bonobo-zoomable.c:327 msgid "The degree of enlargment" msgstr "O grau de ampliação" #: ../bonobo/bonobo-zoomable.c:335 msgid "Minimum Zoom level" msgstr "Nível mínimo de Zoom" #: ../bonobo/bonobo-zoomable.c:336 msgid "The minimum degree of enlargment" msgstr "O grau mínimo de ampliação" #: ../bonobo/bonobo-zoomable.c:344 msgid "Maximum Zoom level" msgstr "Nível máximo de Zoom" #: ../bonobo/bonobo-zoomable.c:345 msgid "The maximum degree of enlargment" msgstr "O grau máximo de ampliação" #: ../bonobo/bonobo-zoomable.c:353 msgid "Has a minimum Zoom level" msgstr "Tem um nível mínimo de Zoom" #: ../bonobo/bonobo-zoomable.c:354 msgid "Whether we have a valid minimum zoom level" msgstr "Se existe ou não um nível mínimo de zoom válido" #: ../bonobo/bonobo-zoomable.c:361 msgid "Has a maximum Zoom level" msgstr "Tem um nível máximo de Zoom" #: ../bonobo/bonobo-zoomable.c:362 msgid "Whether we have a valid maximum zoom level" msgstr "Se existe ou não um nível máximo de zoom válido" #: ../bonobo/bonobo-zoomable.c:369 msgid "Is continuous" msgstr "É contínuo" #: ../bonobo/bonobo-zoomable.c:370 msgid "Whether we zoom continuously (as opposed to jumps)" msgstr "Se o zoom é ou não contínuo (oposto a intervalos)" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:1 msgid "About this application" msgstr "Sobre esta aplicação" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:2 msgid "Select" msgstr "Seleccionar" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:3 msgid "_About..." msgstr "_Sobre..." #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:4 msgid "_Edit" msgstr "_Editar" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:5 #: ../tools/browser/bonobo-browser.xml.h:4 msgid "_File" msgstr "_Ficheiro" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:6 msgid "_Select" msgstr "_Seleccionar" #: ../samples/bonoboui/hello.c:63 msgid "This does nothing; it is only a demonstration." msgstr "Isto não faz nada; é apenas uma demonstração." #: ../samples/bonoboui/hello.c:145 msgid "BonoboUI-Hello." msgstr "Olá-BonoboUI." #: ../samples/bonoboui/hello.c:217 msgid "Gnome Hello" msgstr "Olá Gnome" #. Create Label and put it in the Button: #: ../samples/bonoboui/hello.c:272 msgid "Hello, World!" msgstr "Olá, Mundo!" #: ../samples/bonoboui/hello.c:312 msgid "Cannot init libbonoboui code" msgstr "Incapaz de inicializar código libbonoboui" #: ../samples/controls/bonobo-sample-controls.c:131 msgid "Could not initialize Bonobo UI" msgstr "Incapaz de inicializar UI Bonobo" #: ../tools/browser/bonobo-browser.desktop.in.h:1 msgid "Bonobo Component Browser" msgstr "Navegador de Componentes Bonobo" #: ../tools/browser/bonobo-browser.desktop.in.h:2 msgid "Shows available Bonobo components" msgstr "Apresenta componentes Bonobo disponíveis" #: ../tools/browser/bonobo-browser.xml.h:1 msgid "About this program..." msgstr "Sobre esta aplicação..." #: ../tools/browser/bonobo-browser.xml.h:2 msgid "Close the current window" msgstr "Fechar a janela actual" #: ../tools/browser/bonobo-browser.xml.h:3 msgid "Open a new window" msgstr "Abrir uma nova janela" #: ../tools/browser/bonobo-browser.xml.h:5 msgid "_Help" msgstr "A_juda" #. Build the general tab #: ../tools/browser/component-details.c:109 msgid "General" msgstr "Geral" #: ../tools/browser/component-details.c:116 #: ../tools/browser/component-list.c:398 msgid "IID" msgstr "IID" #: ../tools/browser/component-details.c:117 msgid "Location" msgstr "Localização" #. Build the details tab #: ../tools/browser/component-details.c:167 msgid "Details" msgstr "Detalhes" #: ../tools/browser/component-details.c:168 msgid "Detailed Information" msgstr "Informação Detalhada" #: ../tools/browser/component-list.c:367 ../tools/browser/window.c:283 msgid "Active" msgstr "Activo" #: ../tools/browser/component-list.c:388 msgid "Type" msgstr "Tipo" #: ../tools/browser/window.c:162 msgid "Component Details" msgstr "Detalhes de Componente" #: ../tools/browser/window.c:208 msgid "Bonobo Browser" msgstr "Navegador Bonobo" #: ../tools/browser/window.c:210 msgid "Copyright 2001, The GNOME Foundation" msgstr "Copyright 2001, The GNOME Foundation" #: ../tools/browser/window.c:211 msgid "Bonobo component browser" msgstr "Navegador de componentes Bonobo" #: ../tools/browser/window.c:214 msgid "translator-credits" msgstr "Duarte Loreto " #. create the window #: ../tools/browser/window.c:240 msgid "Component Browser" msgstr "Navegador de Componentes" #. Fill out the tool bar #: ../tools/browser/window.c:280 msgid "All" msgstr "Todos" #: ../tools/browser/window.c:286 msgid "Inactive" msgstr "Inactivo" libbonoboui-2.24.5/po/ro.po0000644000076400007640000003203211173072741012441 00000000000000# Romanian translation for libbonoboui # Copyright (C) 2003 - 2009 Free Software Foundation, Inc. # Mișu Moldovan , 2003 - 2009. # msgid "" msgstr "" "Project-Id-Version: libbonoboui\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2009-03-07 23:55+0200\n" "PO-Revision-Date: 2009-03-07 23:58+0200\n" "Last-Translator: Mișu Moldovan \n" "Language-Team: Romanian \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../bonobo/bonobo-canvas-item.c:680 msgid "corba factory" msgstr "fabrică Corba" #: ../bonobo/bonobo-canvas-item.c:681 msgid "The factory pointer" msgstr "Pointer fabrică" #: ../bonobo/bonobo-canvas-item.c:690 msgid "corba UI container" msgstr "container de interfață Corba" #: ../bonobo/bonobo-canvas-item.c:691 msgid "The User interface container" msgstr "Containerul interfeței utilizator" #: ../bonobo/bonobo-dock-item-grip.c:254 msgid "Dock the toolbar" msgstr "Atașare bara de unelte" #: ../bonobo/bonobo-dock-item-grip.c:255 msgid "Undock the toolbar" msgstr "Detașare bara de unelte" #: ../bonobo/bonobo-dock-item.c:225 ../bonobo/bonobo-dock-item.c:226 #: ../bonobo/bonobo-ui-toolbar.c:1161 msgid "Shadow type" msgstr "Tipul umbrei" #: ../bonobo/bonobo-dock-item.c:236 ../bonobo/bonobo-dock-item.c:237 #: ../bonobo/bonobo-ui-toolbar.c:1105 ../bonobo/bonobo-ui-toolbar.c:1106 msgid "Orientation" msgstr "Orientare" #: ../bonobo/bonobo-dock-item.c:247 ../bonobo/bonobo-dock-item.c:248 #: ../bonobo/bonobo-ui-toolbar.c:1124 ../bonobo/bonobo-ui-toolbar.c:1125 msgid "Preferred width" msgstr "Lățime preferată" #: ../bonobo/bonobo-dock-item.c:256 ../bonobo/bonobo-dock-item.c:257 #: ../bonobo/bonobo-ui-toolbar.c:1133 ../bonobo/bonobo-ui-toolbar.c:1134 msgid "Preferred height" msgstr "Înălțime preferată" #: ../bonobo/bonobo-file-selector-util.c:350 msgid "Select a file to open" msgstr "Alegeți un fișier de deschis" #: ../bonobo/bonobo-file-selector-util.c:378 msgid "Select files to open" msgstr "Alegeți fișierele de deschis" #: ../bonobo/bonobo-file-selector-util.c:407 msgid "Select a filename to save" msgstr "Alegeți un nume de fișier pentru salvare" #: ../bonobo/bonobo-plug.c:423 msgid "Event Forwarding" msgstr "Înaintare evenimente" #: ../bonobo/bonobo-plug.c:424 msgid "Whether X events should be forwarded" msgstr "Dacă evenimentele X trebuie înaintate" #: ../bonobo/bonobo-selector-widget.c:297 ../bonobo/bonobo-window.c:344 #: ../tools/browser/component-details.c:108 #: ../tools/browser/component-list.c:369 msgid "Name" msgstr "Nume" #: ../bonobo/bonobo-selector-widget.c:319 #: ../tools/browser/component-details.c:109 msgid "Description" msgstr "Descriere" #: ../bonobo/bonobo-selector.c:343 msgid "Interfaces required" msgstr "Interfețe cerute" #: ../bonobo/bonobo-selector.c:344 msgid "" "A NULL-terminated array of interfaces which a server must support in order " "to be listed in the selector. Defaults to \"IDL:Bonobo/Embeddable:1.0\" if " "no interfaces are listed" msgstr "" "O matrice de interfețe terminate în NULL pe care un server trebuie să le " "suporte pentru a fi incluse în lista selectorului. Implicit este „IDL:Bonobo/" "Embeddable:1.0”, dacă nici o altă interfață nu este listată" #: ../bonobo/bonobo-selector.c:346 msgid "Interface required entry" msgstr "Intrare necesară de interfață" #: ../bonobo/bonobo-selector.c:347 msgid "One of the interfaces that's required" msgstr "Una dintre interfețele necesare" #: ../bonobo/bonobo-ui-config-widget.c:265 msgid "Visible" msgstr "Vizibil" #: ../bonobo/bonobo-ui-config-widget.c:272 msgid "_Show" msgstr "_Arată" #: ../bonobo/bonobo-ui-config-widget.c:279 msgid "_Hide" msgstr "A_scunde" #: ../bonobo/bonobo-ui-config-widget.c:285 msgid "_View tooltips" msgstr "Arată _indicii" #: ../bonobo/bonobo-ui-config-widget.c:290 msgid "Toolbars" msgstr "Bare cu unelte" #: ../bonobo/bonobo-ui-config-widget.c:300 msgid "toolbars" msgstr "bare cu unelte" #: ../bonobo/bonobo-ui-config-widget.c:311 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "Look" msgstr "Aspect" #: ../bonobo/bonobo-ui-config-widget.c:320 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "_Icon" msgstr "_Iconiță" #: ../bonobo/bonobo-ui-config-widget.c:326 msgid "_Text and Icon" msgstr "_Text și iconițe" #: ../bonobo/bonobo-ui-config-widget.c:332 msgid "Text only" msgstr "Doar text" #: ../bonobo/bonobo-ui-config-widget.c:338 msgid "_Priority text only" msgstr "_Doar text prioritar" #: ../bonobo/bonobo-ui-engine.c:91 msgid "Debug" msgstr "Depanare" #: ../bonobo/bonobo-ui-engine.c:91 msgid "_Dump XML" msgstr "_Ieșire XML" #: ../bonobo/bonobo-ui-engine.c:92 msgid "Dump the entire UI's XML description to the console" msgstr "Listează întreaga descriere XML a interfeței în consolă" #: ../bonobo/bonobo-ui-engine-config.c:522 msgid "Configure UI" msgstr "Configurare UI" #: ../bonobo/bonobo-ui-init-gtk.c:131 msgid "Gdk debugging flags to set" msgstr "Indicatoare de depanare Gdk de setat" #: ../bonobo/bonobo-ui-init-gtk.c:131 ../bonobo/bonobo-ui-init-gtk.c:134 #: ../bonobo/bonobo-ui-init-gtk.c:162 ../bonobo/bonobo-ui-init-gtk.c:165 msgid "FLAGS" msgstr "INDICATORI" #: ../bonobo/bonobo-ui-init-gtk.c:134 msgid "Gdk debugging flags to unset" msgstr "Indicatori de depanare Gdk de resetat" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "X display to use" msgstr "Display X de folosit" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "DISPLAY" msgstr "DISPLAY" #: ../bonobo/bonobo-ui-init-gtk.c:142 msgid "X screen to use" msgstr "Ecran X de folosit" #: ../bonobo/bonobo-ui-init-gtk.c:142 msgid "SCREEN" msgstr "ECRAN" #: ../bonobo/bonobo-ui-init-gtk.c:146 msgid "Make X calls synchronous" msgstr "Sincronizează apelurile X" #: ../bonobo/bonobo-ui-init-gtk.c:152 msgid "Don't use X shared memory extension" msgstr "Nu utiliza extensia X de memorie partajată" #: ../bonobo/bonobo-ui-init-gtk.c:156 msgid "Program name as used by the window manager" msgstr "Numele programului pentru managerul de ferestre" #: ../bonobo/bonobo-ui-init-gtk.c:156 msgid "NAME" msgstr "NUME" #: ../bonobo/bonobo-ui-init-gtk.c:159 msgid "Program class as used by the window manager" msgstr "Clasa programului pentru managerul de ferestre" #: ../bonobo/bonobo-ui-init-gtk.c:159 msgid "CLASS" msgstr "CLASĂ" #: ../bonobo/bonobo-ui-init-gtk.c:162 msgid "Gtk+ debugging flags to set" msgstr "Indicatoare de depanare Gtk+ de activat" #: ../bonobo/bonobo-ui-init-gtk.c:165 msgid "Gtk+ debugging flags to unset" msgstr "Indicatoare de depanare Gtk+ de dezactivat" #: ../bonobo/bonobo-ui-init-gtk.c:168 msgid "Make all warnings fatal" msgstr "Setează toate avertizările ca fiind fatale" #: ../bonobo/bonobo-ui-init-gtk.c:171 msgid "Load an additional Gtk module" msgstr "Încarcă un modul adițional Gtk" #: ../bonobo/bonobo-ui-init-gtk.c:171 msgid "MODULE" msgstr "MODUL" #: ../bonobo/bonobo-ui-init-gtk.c:187 msgid "GTK+" msgstr "GTK+" #: ../bonobo/bonobo-ui-main.c:278 msgid "Bonobo GUI support" msgstr "Suportul GUI Bonobo" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "B_oth" msgstr "_Ambele" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "T_ext" msgstr "_Text" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Hide t_ips" msgstr "Ascunde _indiciile" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Show t_ips" msgstr "Arată in_diciile" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "_Hide toolbar" msgstr "Ascunde _bara cu unelte" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "Customi_ze" msgstr "Personali_zare" #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Customize the toolbar" msgstr "Personalizați bara cu unelte" #: ../bonobo/bonobo-ui-toolbar.c:1115 msgid "is floating" msgstr "este flotantă" #: ../bonobo/bonobo-ui-toolbar.c:1116 msgid "whether the toolbar is floating" msgstr "dacă bara cu unelte este flotantă" #: ../bonobo/bonobo-ui-toolbar.c:1162 msgid "Style of bevel around the toolbar" msgstr "Stilul dungii din marginea barei cu unelte" #: ../bonobo/bonobo-ui-util.c:599 msgid "Could not display help for this application" msgstr "Nu s-a putut deschide manualul acestei aplicații" #: ../bonobo/bonobo-ui-util.c:641 msgid "_Contents" msgstr "_Conținut" #: ../bonobo/bonobo-ui-util.c:642 msgid "View help for this application" msgstr "Consultați manualul acestei aplicații" #: ../bonobo/bonobo-window.c:345 msgid "Name of the window - used for configuration serialization." msgstr "Numele ferestrei - folosit la serializarea configurației." #: ../bonobo/bonobo-zoomable.c:326 msgid "Zoom level" msgstr "Nivel de zoom" #: ../bonobo/bonobo-zoomable.c:327 msgid "The degree of enlargment" msgstr "Gradul de mărire" #: ../bonobo/bonobo-zoomable.c:335 msgid "Minimum Zoom level" msgstr "Nivel minim de zoom" #: ../bonobo/bonobo-zoomable.c:336 msgid "The minimum degree of enlargment" msgstr "Gradul minim de mărire" #: ../bonobo/bonobo-zoomable.c:344 msgid "Maximum Zoom level" msgstr "Nivel maxim de zoom" #: ../bonobo/bonobo-zoomable.c:345 msgid "The maximum degree of enlargment" msgstr "Gradul maxim de mărire" #: ../bonobo/bonobo-zoomable.c:353 msgid "Has a minimum Zoom level" msgstr "Are un nivel minim de zoom" #: ../bonobo/bonobo-zoomable.c:354 msgid "Whether we have a valid minimum zoom level" msgstr "Specifică existența unui nivel minim valid de zoom" #: ../bonobo/bonobo-zoomable.c:361 msgid "Has a maximum Zoom level" msgstr "Are un nivel maxim de zoom" #: ../bonobo/bonobo-zoomable.c:362 msgid "Whether we have a valid maximum zoom level" msgstr "Specifică existența unui nivel maxim valid de zoom" #: ../bonobo/bonobo-zoomable.c:369 msgid "Is continuous" msgstr "Este continuu" #: ../bonobo/bonobo-zoomable.c:370 msgid "Whether we zoom continuously (as opposed to jumps)" msgstr "Dacă se modifică nivelul de zoom continuu (și nu prin salturi)" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:1 msgid "About this application" msgstr "Despre această aplicație" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:2 msgid "Select" msgstr "Selectați" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:3 msgid "_About..." msgstr "_Despre" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:4 msgid "_Edit" msgstr "_Editare" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:5 #: ../tools/browser/bonobo-browser.xml.h:4 msgid "_File" msgstr "_Fișier" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:6 msgid "_Select" msgstr "_Selectare" #: ../samples/bonoboui/hello.c:63 msgid "This does nothing; it is only a demonstration." msgstr "Nu face nimic, este doar o demonstrație." #: ../samples/bonoboui/hello.c:145 msgid "BonoboUI-Hello." msgstr "Interfață Bonobo - Hello" #: ../samples/bonoboui/hello.c:217 msgid "Gnome Hello" msgstr "Salut Gnome" #. Create Label and put it in the Button: #: ../samples/bonoboui/hello.c:272 msgid "Hello, World!" msgstr "Hello World!" #: ../samples/bonoboui/hello.c:312 msgid "Cannot init libbonoboui code" msgstr "Nu s-a putut inițializa codul libbonoboui" #: ../samples/controls/bonobo-sample-controls.c:131 msgid "Could not initialize Bonobo UI" msgstr "Nu s-a putut inițializa interfața Bonobo" #: ../tools/browser/bonobo-browser.desktop.in.h:1 msgid "Bonobo Component Browser" msgstr "Navigator componente Bonobo" #: ../tools/browser/bonobo-browser.desktop.in.h:2 msgid "Shows available Bonobo components" msgstr "Arată componentele Bonobo disponibile" #: ../tools/browser/bonobo-browser.xml.h:1 msgid "About this program..." msgstr "Despre această aplicație..." #: ../tools/browser/bonobo-browser.xml.h:2 msgid "Close the current window" msgstr "Închide fereastra curentă" #: ../tools/browser/bonobo-browser.xml.h:3 msgid "Open a new window" msgstr "Deschide o nouă fereastră" #: ../tools/browser/bonobo-browser.xml.h:5 msgid "_Help" msgstr "_Ajutor" #. Build the general tab #: ../tools/browser/component-details.c:103 msgid "General" msgstr "Generale" #: ../tools/browser/component-details.c:110 #: ../tools/browser/component-list.c:389 msgid "IID" msgstr "IID" #: ../tools/browser/component-details.c:111 msgid "Location" msgstr "Locație" #. Build the details tab #: ../tools/browser/component-details.c:161 msgid "Details" msgstr "Detalii" #: ../tools/browser/component-details.c:162 msgid "Detailed Information" msgstr "Informații detaliate" #: ../tools/browser/component-list.c:358 ../tools/browser/window.c:283 msgid "Active" msgstr "Activă" #: ../tools/browser/component-list.c:379 msgid "Type" msgstr "Tip" #: ../tools/browser/window.c:162 msgid "Component Details" msgstr "Detalii componente" #: ../tools/browser/window.c:208 msgid "Bonobo Browser" msgstr "Navigator Bonobo" #: ../tools/browser/window.c:210 msgid "Copyright 2001, The GNOME Foundation" msgstr "© Drepturi de autor 2001, The GNOME Foundation" #: ../tools/browser/window.c:211 msgid "Bonobo component browser" msgstr "Navigator componente Bonobo" #: ../tools/browser/window.c:214 msgid "translator-credits" msgstr "Mișu Moldovan " #. create the window #: ../tools/browser/window.c:240 msgid "Component Browser" msgstr "Navigator componente" #. Fill out the tool bar #: ../tools/browser/window.c:280 msgid "All" msgstr "Toate" #: ../tools/browser/window.c:286 msgid "Inactive" msgstr "Inactive" libbonoboui-2.24.5/po/ps.po0000644000076400007640000003217411261745451012455 00000000000000# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # FIRST AUTHOR , YEAR. # msgid "" msgstr "" "Project-Id-Version: libbonoboui.head\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2009-07-29 12:37+0200\n" "PO-Revision-Date: 2009-04-21 18:00-0800\n" "Last-Translator: \n" "Language-Team: Pashto \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Poedit-Language: Pashto, Pushto\n" "X-Poedit-Country: AFGHANISTAN\n" #: ../bonobo/bonobo-canvas-item.c:680 msgid "corba factory" msgstr "کوربا فېکټري" #: ../bonobo/bonobo-canvas-item.c:681 msgid "The factory pointer" msgstr "فېکټري نغوتګر" #: ../bonobo/bonobo-canvas-item.c:690 msgid "corba UI container" msgstr "کوربا کارن برسېر لرونکی" #: ../bonobo/bonobo-canvas-item.c:691 msgid "The User interface container" msgstr "د کارن برسېر لرونکی" #: ../bonobo/bonobo-dock-item-grip.c:254 msgid "Dock the toolbar" msgstr "توکپټه لنګرول" #: ../bonobo/bonobo-dock-item-grip.c:255 msgid "Undock the toolbar" msgstr "توکپټه نالنګرول" #: ../bonobo/bonobo-dock-item.c:225 ../bonobo/bonobo-dock-item.c:226 #: ../bonobo/bonobo-ui-toolbar.c:1163 msgid "Shadow type" msgstr "د سيوري ډول" #: ../bonobo/bonobo-dock-item.c:236 ../bonobo/bonobo-dock-item.c:237 #: ../bonobo/bonobo-ui-toolbar.c:1107 ../bonobo/bonobo-ui-toolbar.c:1108 msgid "Orientation" msgstr "لورموندنه" #: ../bonobo/bonobo-dock-item.c:247 ../bonobo/bonobo-dock-item.c:248 #: ../bonobo/bonobo-ui-toolbar.c:1126 ../bonobo/bonobo-ui-toolbar.c:1127 msgid "Preferred width" msgstr "د خوښې پلنوالی" #: ../bonobo/bonobo-dock-item.c:256 ../bonobo/bonobo-dock-item.c:257 #: ../bonobo/bonobo-ui-toolbar.c:1135 ../bonobo/bonobo-ui-toolbar.c:1136 msgid "Preferred height" msgstr "د خوښې اوږدوالی" #: ../bonobo/bonobo-file-selector-util.c:350 msgid "Select a file to open" msgstr "د پرانيستلو لپاره يوه دوتنه وټاکﺉ" #: ../bonobo/bonobo-file-selector-util.c:378 msgid "Select files to open" msgstr "د پرانيستلو لپاره دوتنې وټاکﺉ" #: ../bonobo/bonobo-file-selector-util.c:407 msgid "Select a filename to save" msgstr "يو دوتنه نوم وټاکﺉ چې وساتل شي" #: ../bonobo/bonobo-plug.c:425 msgid "Event Forwarding" msgstr "پېښه وړاندېينه" #: ../bonobo/bonobo-plug.c:426 msgid "Whether X events should be forwarded" msgstr "" #: ../bonobo/bonobo-selector-widget.c:300 ../bonobo/bonobo-window.c:347 #: ../tools/browser/component-details.c:108 #: ../tools/browser/component-list.c:369 msgid "Name" msgstr "نوم" #: ../bonobo/bonobo-selector-widget.c:322 #: ../tools/browser/component-details.c:109 msgid "Description" msgstr "سپړاوی" #: ../bonobo/bonobo-selector.c:343 msgid "Interfaces required" msgstr "اړين برسېرونه" #: ../bonobo/bonobo-selector.c:344 msgid "" "A NULL-terminated array of interfaces which a server must support in order " "to be listed in the selector. Defaults to \"IDL:Bonobo/Embeddable:1.0\" if " "no interfaces are listed" msgstr "" #: ../bonobo/bonobo-selector.c:346 msgid "Interface required entry" msgstr "د اړين برسيرونه ننوت" #: ../bonobo/bonobo-selector.c:347 msgid "One of the interfaces that's required" msgstr "" #: ../bonobo/bonobo-ui-config-widget.c:267 msgid "Visible" msgstr "ښکارېدونکی" #: ../bonobo/bonobo-ui-config-widget.c:274 msgid "_Show" msgstr "ښودل_" #: ../bonobo/bonobo-ui-config-widget.c:281 msgid "_Hide" msgstr "پټول_" #: ../bonobo/bonobo-ui-config-widget.c:287 msgid "_View tooltips" msgstr "توک نکتې ليدل_" #: ../bonobo/bonobo-ui-config-widget.c:292 msgid "Toolbars" msgstr "توکپټې" #: ../bonobo/bonobo-ui-config-widget.c:302 msgid "toolbars" msgstr "توکپټې" #: ../bonobo/bonobo-ui-config-widget.c:313 #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "Look" msgstr "ښکارېدنه" #: ../bonobo/bonobo-ui-config-widget.c:322 #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "_Icon" msgstr "انځورن_" #: ../bonobo/bonobo-ui-config-widget.c:328 msgid "_Text and Icon" msgstr "ليکنه او انځورن_" #: ../bonobo/bonobo-ui-config-widget.c:334 msgid "Text only" msgstr "يوازې ليکنه_" #: ../bonobo/bonobo-ui-config-widget.c:340 msgid "_Priority text only" msgstr "" #: ../bonobo/bonobo-ui-engine.c:93 msgid "Debug" msgstr "کړاوتمبونه" #: ../bonobo/bonobo-ui-engine.c:93 msgid "_Dump XML" msgstr "" #: ../bonobo/bonobo-ui-engine.c:94 msgid "Dump the entire UI's XML description to the console" msgstr "" #: ../bonobo/bonobo-ui-engine-config.c:524 msgid "Configure UI" msgstr "کارن برسېر سازول" #: ../bonobo/bonobo-ui-init-gtk.c:131 msgid "Gdk debugging flags to set" msgstr "" #: ../bonobo/bonobo-ui-init-gtk.c:131 ../bonobo/bonobo-ui-init-gtk.c:134 #: ../bonobo/bonobo-ui-init-gtk.c:162 ../bonobo/bonobo-ui-init-gtk.c:165 msgid "FLAGS" msgstr "جنډې" #: ../bonobo/bonobo-ui-init-gtk.c:134 msgid "Gdk debugging flags to unset" msgstr "" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "X display to use" msgstr "ښوون X د کارولو لپاره" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "DISPLAY" msgstr "ښوون" #: ../bonobo/bonobo-ui-init-gtk.c:142 msgid "X screen to use" msgstr "پرده X د کارولو لپاره" #: ../bonobo/bonobo-ui-init-gtk.c:142 msgid "SCREEN" msgstr "پرده" #: ../bonobo/bonobo-ui-init-gtk.c:146 msgid "Make X calls synchronous" msgstr "" #: ../bonobo/bonobo-ui-init-gtk.c:152 msgid "Don't use X shared memory extension" msgstr "" #: ../bonobo/bonobo-ui-init-gtk.c:156 msgid "Program name as used by the window manager" msgstr "د کړنلارې نوم لکه څنګه چې يې کړکۍ سمبالګر کاروي" #: ../bonobo/bonobo-ui-init-gtk.c:156 msgid "NAME" msgstr "نوم" #: ../bonobo/bonobo-ui-init-gtk.c:159 msgid "Program class as used by the window manager" msgstr "د کړنلارې پاړکی لکه څنګه چې يې کړکۍ سمبالګر کاروي" #: ../bonobo/bonobo-ui-init-gtk.c:159 msgid "CLASS" msgstr "پاړکی" #: ../bonobo/bonobo-ui-init-gtk.c:162 msgid "Gtk+ debugging flags to set" msgstr "" #: ../bonobo/bonobo-ui-init-gtk.c:165 msgid "Gtk+ debugging flags to unset" msgstr "" #: ../bonobo/bonobo-ui-init-gtk.c:168 msgid "Make all warnings fatal" msgstr "ټولې خبرتياوې وژونکې کول" #: ../bonobo/bonobo-ui-init-gtk.c:171 msgid "Load an additional Gtk module" msgstr "رغبېلګه لېښل Gtk کومه زياتي" #: ../bonobo/bonobo-ui-init-gtk.c:171 msgid "MODULE" msgstr "رغبېلګه" #: ../bonobo/bonobo-ui-init-gtk.c:187 msgid "GTK+" msgstr "GTK+" #: ../bonobo/bonobo-ui-main.c:281 msgid "Bonobo GUI support" msgstr "د بونوبو کښنيز کارن برسېر ملاتړ" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "B_oth" msgstr "د_واړه" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "T_ext" msgstr "ل_يکنه" #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Hide t_ips" msgstr "ن_کتې پټول" #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Show t_ips" msgstr "ن_کتې ښودل" #: ../bonobo/bonobo-ui-sync-toolbar.c:570 msgid "_Hide toolbar" msgstr "توکپټه پټول_" #: ../bonobo/bonobo-ui-sync-toolbar.c:570 msgid "Customi_ze" msgstr "دوديز_ول" #: ../bonobo/bonobo-ui-sync-toolbar.c:571 msgid "Customize the toolbar" msgstr "توکپټه دوديزول" #: ../bonobo/bonobo-ui-toolbar.c:1117 msgid "is floating" msgstr "لامبوځن دی" #: ../bonobo/bonobo-ui-toolbar.c:1118 msgid "whether the toolbar is floating" msgstr "که چېرې توکپټه لامبوځنه وي" #: ../bonobo/bonobo-ui-toolbar.c:1164 msgid "Style of bevel around the toolbar" msgstr "د توکپټې شاوخوا د لښتي ډول" #: ../bonobo/bonobo-ui-util.c:602 msgid "Could not display help for this application" msgstr "د دې کاريال مرسته نه شي ښودلی" #: ../bonobo/bonobo-ui-util.c:644 msgid "_Contents" msgstr "منځپانګې_" #: ../bonobo/bonobo-ui-util.c:645 msgid "View help for this application" msgstr "د دې کاريال مرسته ښودل" #: ../bonobo/bonobo-window.c:348 msgid "Name of the window - used for configuration serialization." msgstr "" #: ../bonobo/bonobo-zoomable.c:326 msgid "Zoom level" msgstr "د لويوالي کچ" #: ../bonobo/bonobo-zoomable.c:327 msgid "The degree of enlargment" msgstr "د لويوالي پوړ" #: ../bonobo/bonobo-zoomable.c:335 msgid "Minimum Zoom level" msgstr "ټولولږه لويوالي کچ" #: ../bonobo/bonobo-zoomable.c:336 msgid "The minimum degree of enlargment" msgstr "د لويوالي تر ټولو لږ پوړ" #: ../bonobo/bonobo-zoomable.c:344 msgid "Maximum Zoom level" msgstr "ټولوجګه لويوالي کچ" #: ../bonobo/bonobo-zoomable.c:345 msgid "The maximum degree of enlargment" msgstr "د لويوالي تر ټولو جګ پوړ" #: ../bonobo/bonobo-zoomable.c:353 msgid "Has a minimum Zoom level" msgstr "ټولولږه لويوالي کچ لري" #: ../bonobo/bonobo-zoomable.c:354 msgid "Whether we have a valid minimum zoom level" msgstr "" #: ../bonobo/bonobo-zoomable.c:361 msgid "Has a maximum Zoom level" msgstr "ټولوجګه لويوالي کچ لري" #: ../bonobo/bonobo-zoomable.c:362 msgid "Whether we have a valid maximum zoom level" msgstr "" #: ../bonobo/bonobo-zoomable.c:369 msgid "Is continuous" msgstr "پرمختلونکی دی" #: ../bonobo/bonobo-zoomable.c:370 msgid "Whether we zoom continuously (as opposed to jumps)" msgstr "" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:1 msgid "About this application" msgstr "د دې کاريال په اړه" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:2 msgid "Select" msgstr "ټاکل" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:3 msgid "_About..." msgstr "...په اړه_" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:4 msgid "_Edit" msgstr "سمون_" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:5 #: ../tools/browser/bonobo-browser.xml.h:4 msgid "_File" msgstr "دوتنه_" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:6 msgid "_Select" msgstr "ټاکل_" #: ../samples/bonoboui/hello.c:65 msgid "This does nothing; it is only a demonstration." msgstr ".دا هېڅ هم نه کوي؛ دا يوازې يوه ښودنه ده" #: ../samples/bonoboui/hello.c:147 msgid "BonoboUI-Hello." msgstr "بونوبو کارن برسېر-هلو" #: ../samples/bonoboui/hello.c:219 msgid "Gnome Hello" msgstr "د ګنوم هلو" #. Create Label and put it in the Button: #: ../samples/bonoboui/hello.c:274 msgid "Hello, World!" msgstr "هلو، نړۍ!" #: ../samples/bonoboui/hello.c:314 msgid "Cannot init libbonoboui code" msgstr "د لېببونوبو کارن برسېر کوډ نه شي پېلولی" #: ../samples/controls/bonobo-sample-controls.c:133 msgid "Could not initialize Bonobo UI" msgstr "د بونوبو کارن برسېر نه شي پېلولی" #: ../tools/browser/bonobo-browser.desktop.in.h:1 msgid "Bonobo Component Browser" msgstr "بونوبو رغتوک لټوونی" #: ../tools/browser/bonobo-browser.desktop.in.h:2 msgid "Shows available Bonobo components" msgstr "شته بونوبو رغتوکي ښيي" #: ../tools/browser/bonobo-browser.xml.h:1 msgid "About this program..." msgstr "...د دې کړنلار په اړه" #: ../tools/browser/bonobo-browser.xml.h:2 msgid "Close the current window" msgstr "اوسنۍ کړکې بندول" #: ../tools/browser/bonobo-browser.xml.h:3 msgid "Open a new window" msgstr "نوې کړکۍ پرانيستل" #: ../tools/browser/bonobo-browser.xml.h:5 msgid "_Help" msgstr "مرسته_" #. Build the general tab #: ../tools/browser/component-details.c:103 msgid "General" msgstr "ټولګړي" #: ../tools/browser/component-details.c:110 #: ../tools/browser/component-list.c:389 msgid "IID" msgstr "پېژند" #: ../tools/browser/component-details.c:111 msgid "Location" msgstr "ځای" #. Build the details tab #: ../tools/browser/component-details.c:161 msgid "Details" msgstr "خبرتياوې" #: ../tools/browser/component-details.c:162 msgid "Detailed Information" msgstr "بشپړې خبرتياوې" #: ../tools/browser/component-list.c:358 ../tools/browser/window.c:283 msgid "Active" msgstr "چارند" #: ../tools/browser/component-list.c:379 msgid "Type" msgstr "ډول" #: ../tools/browser/window.c:162 msgid "Component Details" msgstr "رغتوک سپړاوي" #: ../tools/browser/window.c:208 msgid "Bonobo Browser" msgstr "بونوبو لټوونی" #: ../tools/browser/window.c:210 msgid "Copyright 2001, The GNOME Foundation" msgstr "چاپرښتې ۲۰۰۱، د ګنوم بنسټ" #: ../tools/browser/window.c:211 msgid "Bonobo component browser" msgstr "بونوبو رغتوک لټوونی" #: ../tools/browser/window.c:214 msgid "translator-credits" msgstr "" "Zabeeh Khan \n" "\n" "" #. create the window #: ../tools/browser/window.c:240 msgid "Component Browser" msgstr "رغتوک لټوونی" #. Fill out the tool bar #: ../tools/browser/window.c:280 msgid "All" msgstr "ټول" #: ../tools/browser/window.c:286 msgid "Inactive" msgstr "ناچارند" libbonoboui-2.24.5/po/ca@valencia.po0000664000076400007640000003267011546334521014222 00000000000000# libbonoboui translation to Catalan. # Copyright © 2001, 2002, 2003, 2005, 2006 Free Software Foundation, Inc. # Softcatalà , 2001, 2002. # Jordi Mallach , 2003, 2005, 2006. # msgid "" msgstr "" "Project-Id-Version: libbonoboui 2.11.92\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2010-10-29 21:24+0100\n" "PO-Revision-Date: 2009-09-22 17:00+0200\n" "Last-Translator: Jordi Mallach \n" "Language-Team: Catalan \n" "Language: ca\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../bonobo/bonobo-canvas-item.c:680 msgid "corba factory" msgstr "fàbrica de CORBA" #: ../bonobo/bonobo-canvas-item.c:681 msgid "The factory pointer" msgstr "El punter de la fàbrica" #: ../bonobo/bonobo-canvas-item.c:690 msgid "corba UI container" msgstr "El contenidor UI de CORBA" #: ../bonobo/bonobo-canvas-item.c:691 msgid "The User interface container" msgstr "El contenidor de la interfície d'usuari" #: ../bonobo/bonobo-dock-item-grip.c:254 msgid "Dock the toolbar" msgstr "Acobla la barra d'eines" #: ../bonobo/bonobo-dock-item-grip.c:255 msgid "Undock the toolbar" msgstr "Separa la barra d'eines" #: ../bonobo/bonobo-dock-item.c:225 ../bonobo/bonobo-dock-item.c:226 #: ../bonobo/bonobo-ui-toolbar.c:1163 msgid "Shadow type" msgstr "Tipus d'ombra" #: ../bonobo/bonobo-dock-item.c:236 ../bonobo/bonobo-dock-item.c:237 #: ../bonobo/bonobo-ui-toolbar.c:1107 ../bonobo/bonobo-ui-toolbar.c:1108 msgid "Orientation" msgstr "Orientació" #: ../bonobo/bonobo-dock-item.c:247 ../bonobo/bonobo-dock-item.c:248 #: ../bonobo/bonobo-ui-toolbar.c:1126 ../bonobo/bonobo-ui-toolbar.c:1127 msgid "Preferred width" msgstr "Amplada preferida" #: ../bonobo/bonobo-dock-item.c:256 ../bonobo/bonobo-dock-item.c:257 #: ../bonobo/bonobo-ui-toolbar.c:1135 ../bonobo/bonobo-ui-toolbar.c:1136 msgid "Preferred height" msgstr "Alçada preferida" #: ../bonobo/bonobo-file-selector-util.c:350 msgid "Select a file to open" msgstr "Seleccioneu un fitxer a obrir" #: ../bonobo/bonobo-file-selector-util.c:378 msgid "Select files to open" msgstr "Seleccioneu els fitxers a obrir" #: ../bonobo/bonobo-file-selector-util.c:407 msgid "Select a filename to save" msgstr "Seleccioneu un nom de fitxer per a alçar" #: ../bonobo/bonobo-plug.c:425 msgid "Event Forwarding" msgstr "Reenviament de l'esdeveniment" #: ../bonobo/bonobo-plug.c:426 msgid "Whether X events should be forwarded" msgstr "Si s'haurien de reenviar els esdeveniments X" #: ../bonobo/bonobo-selector-widget.c:300 ../bonobo/bonobo-window.c:347 #: ../tools/browser/component-details.c:108 #: ../tools/browser/component-list.c:369 msgid "Name" msgstr "Nom" #: ../bonobo/bonobo-selector-widget.c:322 #: ../tools/browser/component-details.c:109 msgid "Description" msgstr "Descripció" #: ../bonobo/bonobo-selector.c:343 msgid "Interfaces required" msgstr "Interfícies requerides" #: ../bonobo/bonobo-selector.c:344 msgid "" "A NULL-terminated array of interfaces which a server must support in order " "to be listed in the selector. Defaults to \"IDL:Bonobo/Embeddable:1.0\" if " "no interfaces are listed" msgstr "" "Una matriu d'interfícies acabada en NULL que un servidor ha de saber " "gestionar per ser llistada en el selector. Si no es llista cap interfície " "s'utilitzarà la «IDL:Bonobo/Embeddable:1.0» com a predeterminada" #: ../bonobo/bonobo-selector.c:346 msgid "Interface required entry" msgstr "Entrada d'interfície requerida" #: ../bonobo/bonobo-selector.c:347 msgid "One of the interfaces that's required" msgstr "Una de les interfícies que es requereix" #: ../bonobo/bonobo-ui-config-widget.c:267 msgid "Visible" msgstr "Visible" #: ../bonobo/bonobo-ui-config-widget.c:274 msgid "_Show" msgstr "Mo_stra" #: ../bonobo/bonobo-ui-config-widget.c:281 msgid "_Hide" msgstr "_Oculta" #: ../bonobo/bonobo-ui-config-widget.c:287 msgid "_View tooltips" msgstr "_Mostra els indicadors de funcions" #: ../bonobo/bonobo-ui-config-widget.c:292 msgid "Toolbars" msgstr "Barres d'eines" #: ../bonobo/bonobo-ui-config-widget.c:302 msgid "toolbars" msgstr "barres d'eines" #: ../bonobo/bonobo-ui-config-widget.c:313 #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "Look" msgstr "Aspecte" #: ../bonobo/bonobo-ui-config-widget.c:322 #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "_Icon" msgstr "_Icona" #: ../bonobo/bonobo-ui-config-widget.c:328 msgid "_Text and Icon" msgstr "_Text i icona" #: ../bonobo/bonobo-ui-config-widget.c:334 msgid "Text only" msgstr "Només text" #: ../bonobo/bonobo-ui-config-widget.c:340 msgid "_Priority text only" msgstr "Només els textos _prioritaris" #: ../bonobo/bonobo-ui-engine.c:93 msgid "Debug" msgstr "Depuració" #: ../bonobo/bonobo-ui-engine.c:93 msgid "_Dump XML" msgstr "_Bolca en XML" #: ../bonobo/bonobo-ui-engine.c:94 msgid "Dump the entire UI's XML description to the console" msgstr "" "Bolca la descripció sencera de la interfície d'usuari en XML a la consola" #: ../bonobo/bonobo-ui-engine-config.c:524 msgid "Configure UI" msgstr "Configura la interfície d'usuari" #: ../bonobo/bonobo-ui-init-gtk.c:131 msgid "Gdk debugging flags to set" msgstr "Senyaladors de depuració del Gdk a definir" #: ../bonobo/bonobo-ui-init-gtk.c:131 ../bonobo/bonobo-ui-init-gtk.c:134 #: ../bonobo/bonobo-ui-init-gtk.c:162 ../bonobo/bonobo-ui-init-gtk.c:165 msgid "FLAGS" msgstr "SENYALADORS" #: ../bonobo/bonobo-ui-init-gtk.c:134 msgid "Gdk debugging flags to unset" msgstr "Senyaladors de depuració del Gdk dels quals desfer-ne la definició" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "X display to use" msgstr "Visualització X a utilitzar" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "DISPLAY" msgstr "VISUALITZACIÓ" #: ../bonobo/bonobo-ui-init-gtk.c:142 msgid "X screen to use" msgstr "Pantalla X a utilitzar" #: ../bonobo/bonobo-ui-init-gtk.c:142 msgid "SCREEN" msgstr "PANTALLA" #: ../bonobo/bonobo-ui-init-gtk.c:146 msgid "Make X calls synchronous" msgstr "Fes les crides X síncrones" #: ../bonobo/bonobo-ui-init-gtk.c:152 msgid "Don't use X shared memory extension" msgstr "No utilitzes l'extensió de memòria compartida X" #: ../bonobo/bonobo-ui-init-gtk.c:156 msgid "Program name as used by the window manager" msgstr "Nom del programa utilitzat pel gestor de finestres" #: ../bonobo/bonobo-ui-init-gtk.c:156 msgid "NAME" msgstr "NOM" #: ../bonobo/bonobo-ui-init-gtk.c:159 msgid "Program class as used by the window manager" msgstr "Classe de programa utilitzat pel gestor de finestres" #: ../bonobo/bonobo-ui-init-gtk.c:159 msgid "CLASS" msgstr "CLASSE" #: ../bonobo/bonobo-ui-init-gtk.c:162 msgid "Gtk+ debugging flags to set" msgstr "Senyaladors de depuració de Gtk+ a definir" #: ../bonobo/bonobo-ui-init-gtk.c:165 msgid "Gtk+ debugging flags to unset" msgstr "Senyaladors de depuració de Gtk+ dels quals desfer-ne la definició" #: ../bonobo/bonobo-ui-init-gtk.c:168 msgid "Make all warnings fatal" msgstr "Fes que totes les advertències siguen fatals" #: ../bonobo/bonobo-ui-init-gtk.c:171 msgid "Load an additional Gtk module" msgstr "Carrega un mòdul Gtk addicional" #: ../bonobo/bonobo-ui-init-gtk.c:171 msgid "MODULE" msgstr "MÒDUL" #: ../bonobo/bonobo-ui-init-gtk.c:187 msgid "GTK+" msgstr "GTK+" #: ../bonobo/bonobo-ui-main.c:281 msgid "Bonobo GUI support" msgstr "Funcionalitat d'interfície gràfica del Bonobo" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "B_oth" msgstr "A_mbdues" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "T_ext" msgstr "T_ext" #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Hide t_ips" msgstr "Oculta els c_onsells" #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Show t_ips" msgstr "Mostra els c_onsells" #: ../bonobo/bonobo-ui-sync-toolbar.c:570 msgid "_Hide toolbar" msgstr "_Oculta la barra d'eines" #: ../bonobo/bonobo-ui-sync-toolbar.c:570 msgid "Customi_ze" msgstr "Personalit_za" #: ../bonobo/bonobo-ui-sync-toolbar.c:571 msgid "Customize the toolbar" msgstr "Personalitza la barra d'eines" #: ../bonobo/bonobo-ui-toolbar.c:1117 msgid "is floating" msgstr "és flotant" #: ../bonobo/bonobo-ui-toolbar.c:1118 msgid "whether the toolbar is floating" msgstr "si la barra d'eines és flotant" #: ../bonobo/bonobo-ui-toolbar.c:1164 msgid "Style of bevel around the toolbar" msgstr "Estil del bisell que envolta la barra d'eines" #: ../bonobo/bonobo-ui-util.c:602 msgid "Could not display help for this application" msgstr "No s'ha pogut mostrar l'ajuda per a esta aplicació" #: ../bonobo/bonobo-ui-util.c:644 msgid "_Contents" msgstr "_Continguts" #: ../bonobo/bonobo-ui-util.c:645 msgid "View help for this application" msgstr "Visualitza l'ajuda per a esta aplicació" #: ../bonobo/bonobo-window.c:348 msgid "Name of the window - used for configuration serialization." msgstr "" "Nom de la finestra - utilitzat per a la serialització de la configuració." #: ../bonobo/bonobo-zoomable.c:326 msgid "Zoom level" msgstr "Nivell d'ampliació" #: ../bonobo/bonobo-zoomable.c:327 msgid "The degree of enlargment" msgstr "El grau d'ampliació" #: ../bonobo/bonobo-zoomable.c:335 msgid "Minimum Zoom level" msgstr "Nivell d'ampliació mínim" #: ../bonobo/bonobo-zoomable.c:336 msgid "The minimum degree of enlargment" msgstr "El nivell d'ampliació mínim" #: ../bonobo/bonobo-zoomable.c:344 msgid "Maximum Zoom level" msgstr "Nivell d'ampliació màxim" #: ../bonobo/bonobo-zoomable.c:345 msgid "The maximum degree of enlargment" msgstr "El nivell d'ampliació màxim" #: ../bonobo/bonobo-zoomable.c:353 msgid "Has a minimum Zoom level" msgstr "Té un nivell d'ampliació mínim" #: ../bonobo/bonobo-zoomable.c:354 msgid "Whether we have a valid minimum zoom level" msgstr "Si tenim un nivell d'ampliació mínim vàlid" #: ../bonobo/bonobo-zoomable.c:361 msgid "Has a maximum Zoom level" msgstr "Té un nivell d'ampliació màxim" #: ../bonobo/bonobo-zoomable.c:362 msgid "Whether we have a valid maximum zoom level" msgstr "Si tenim un nivell d'ampliació màxim vàlid" #: ../bonobo/bonobo-zoomable.c:369 msgid "Is continuous" msgstr "És continu" #: ../bonobo/bonobo-zoomable.c:370 msgid "Whether we zoom continuously (as opposed to jumps)" msgstr "Si ampliem contínuament (en comparació als salts)" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:1 msgid "About this application" msgstr "Quant a esta aplicació" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:2 msgid "Select" msgstr "Selecciona" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:3 msgid "_About..." msgstr "_Quant a..." #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:4 msgid "_Edit" msgstr "_Edita" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:5 #: ../tools/browser/bonobo-browser.xml.h:4 msgid "_File" msgstr "_Fitxer" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:6 msgid "_Select" msgstr "_Selecciona" #: ../samples/bonoboui/hello.c:65 msgid "This does nothing; it is only a demonstration." msgstr "Això no fa res; només és una demostració." #: ../samples/bonoboui/hello.c:147 msgid "BonoboUI-Hello." msgstr "Hola, BonoboUI." #: ../samples/bonoboui/hello.c:219 msgid "Gnome Hello" msgstr "Hola, GNOME" #. Create Label and put it in the Button: #: ../samples/bonoboui/hello.c:274 msgid "Hello, World!" msgstr "Hola, món!" #: ../samples/bonoboui/hello.c:314 msgid "Cannot init libbonoboui code" msgstr "No es pot inicialitzar el codi de la libbonoboui" #: ../samples/controls/bonobo-sample-controls.c:133 msgid "Could not initialize Bonobo UI" msgstr "No es pot inicialitzar la interfície d'usuari del Bonobo" #: ../tools/browser/bonobo-browser.desktop.in.h:1 msgid "Bonobo Component Browser" msgstr "Navegador de components Bonobo" #: ../tools/browser/bonobo-browser.desktop.in.h:2 msgid "Shows available Bonobo components" msgstr "Mostra els components Bonobo disponibles" #: ../tools/browser/bonobo-browser.xml.h:1 msgid "About this program..." msgstr "Quant a esta aplicació..." #: ../tools/browser/bonobo-browser.xml.h:2 msgid "Close the current window" msgstr "Tanca la finestra actual" #: ../tools/browser/bonobo-browser.xml.h:3 msgid "Open a new window" msgstr "Obri una finestra nova" #: ../tools/browser/bonobo-browser.xml.h:5 msgid "_Help" msgstr "A_juda" #. Build the general tab #: ../tools/browser/component-details.c:103 msgid "General" msgstr "General" #: ../tools/browser/component-details.c:110 #: ../tools/browser/component-list.c:389 msgid "IID" msgstr "IID" #: ../tools/browser/component-details.c:111 msgid "Location" msgstr "Ubicació" #. Build the details tab #: ../tools/browser/component-details.c:161 msgid "Details" msgstr "Detalls" #: ../tools/browser/component-details.c:162 msgid "Detailed Information" msgstr "Informació detallada" #: ../tools/browser/component-list.c:358 ../tools/browser/window.c:283 msgid "Active" msgstr "Actiu" #: ../tools/browser/component-list.c:379 msgid "Type" msgstr "Tipus" #: ../tools/browser/window.c:162 msgid "Component Details" msgstr "Detalls del component" #: ../tools/browser/window.c:208 msgid "Bonobo Browser" msgstr "Navegador del Bonobo" #: ../tools/browser/window.c:210 msgid "Copyright 2001, The GNOME Foundation" msgstr "Copyright © 2001 La Fundació GNOME" #: ../tools/browser/window.c:211 msgid "Bonobo component browser" msgstr "Navegador de components Bonobo" #: ../tools/browser/window.c:214 msgid "translator-credits" msgstr "" "Jordi Mallach \n" "Gil Forcada " #. create the window #: ../tools/browser/window.c:240 msgid "Component Browser" msgstr "Navegador de components" #. Fill out the tool bar #: ../tools/browser/window.c:280 msgid "All" msgstr "Tots" #: ../tools/browser/window.c:286 msgid "Inactive" msgstr "Inactiu" libbonoboui-2.24.5/po/lt.po0000664000076400007640000003251111433016366012444 00000000000000# translation of lt.po to Lithuanian # Lithuanian translation of libbonoboui # Copyright (C) 2003-2006, 2008 Free Software Foundation, Inc. # # # Tomas Kuliavas , 2003-2004. # Žygimantas Beručka , 2003-2006. # Gintautas Miliauskas , 2008. msgid "" msgstr "" "Project-Id-Version: lt\n" "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?" "product=libbonoboui&component=general\n" "POT-Creation-Date: 2009-05-02 13:08+0000\n" "PO-Revision-Date: 2008-03-02 14:08+0200\n" "Last-Translator: Žygimantas Beručka \n" "Language-Team: Lithuanian \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Generator: KBabel 1.11.4\n" "Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && (n%" "100<10 || n%100>=20) ? 1 : 2);\n" #: ../bonobo/bonobo-canvas-item.c:680 msgid "corba factory" msgstr "corba gamykla" #: ../bonobo/bonobo-canvas-item.c:681 msgid "The factory pointer" msgstr "Gamyklos nuoroda" #: ../bonobo/bonobo-canvas-item.c:690 msgid "corba UI container" msgstr "corba vartototo sąsajos konteineris" #: ../bonobo/bonobo-canvas-item.c:691 msgid "The User interface container" msgstr "Vartotojo sąsajos konteineris" #: ../bonobo/bonobo-dock-item-grip.c:254 msgid "Dock the toolbar" msgstr "Prisegti įrankių juostą" #: ../bonobo/bonobo-dock-item-grip.c:255 msgid "Undock the toolbar" msgstr "Atkabinti įrankių juostą" #: ../bonobo/bonobo-dock-item.c:225 ../bonobo/bonobo-dock-item.c:226 #: ../bonobo/bonobo-ui-toolbar.c:1163 msgid "Shadow type" msgstr "Šešėlio tipas" #: ../bonobo/bonobo-dock-item.c:236 ../bonobo/bonobo-dock-item.c:237 #: ../bonobo/bonobo-ui-toolbar.c:1107 ../bonobo/bonobo-ui-toolbar.c:1108 msgid "Orientation" msgstr "Orientacija" #: ../bonobo/bonobo-dock-item.c:247 ../bonobo/bonobo-dock-item.c:248 #: ../bonobo/bonobo-ui-toolbar.c:1126 ../bonobo/bonobo-ui-toolbar.c:1127 msgid "Preferred width" msgstr "Pageidautinas plotis" #: ../bonobo/bonobo-dock-item.c:256 ../bonobo/bonobo-dock-item.c:257 #: ../bonobo/bonobo-ui-toolbar.c:1135 ../bonobo/bonobo-ui-toolbar.c:1136 msgid "Preferred height" msgstr "Pageidautinas aukštis" #: ../bonobo/bonobo-file-selector-util.c:350 msgid "Select a file to open" msgstr "Pasirinkite atvertiną failą" #: ../bonobo/bonobo-file-selector-util.c:378 msgid "Select files to open" msgstr "Pasirinkite atvertinus failus" #: ../bonobo/bonobo-file-selector-util.c:407 msgid "Select a filename to save" msgstr "Pasirinkite failo išsaugojimui pavadinimą" #: ../bonobo/bonobo-plug.c:425 msgid "Event Forwarding" msgstr "Įvykio persiuntimas" #: ../bonobo/bonobo-plug.c:426 msgid "Whether X events should be forwarded" msgstr "Ar X įvykiai turėtų būti persiunčiami" #: ../bonobo/bonobo-selector-widget.c:300 ../bonobo/bonobo-window.c:347 #: ../tools/browser/component-details.c:108 #: ../tools/browser/component-list.c:369 msgid "Name" msgstr "Vardas" #: ../bonobo/bonobo-selector-widget.c:322 #: ../tools/browser/component-details.c:109 msgid "Description" msgstr "Aprašymas" #: ../bonobo/bonobo-selector.c:343 msgid "Interfaces required" msgstr "Būtinos sąsajos" #: ../bonobo/bonobo-selector.c:344 msgid "" "A NULL-terminated array of interfaces which a server must support in order " "to be listed in the selector. Defaults to \"IDL:Bonobo/Embeddable:1.0\" if " "no interfaces are listed" msgstr "" "Nuliais uždaromas sąsajų masyvas, kurias serveris turi palaikyti tam, kad " "būtų rodomas pasirinkimo juostoje. Jei jokia sąsaja nenurodyta, naudojamas " "standartinis „IDL:Bonobo/Embenddable:1.0“" #: ../bonobo/bonobo-selector.c:346 msgid "Interface required entry" msgstr "Sąsajos būtinas įrašas" #: ../bonobo/bonobo-selector.c:347 msgid "One of the interfaces that's required" msgstr "Viena iš būtinų sąsajų" #: ../bonobo/bonobo-ui-config-widget.c:267 msgid "Visible" msgstr "Matomas" #: ../bonobo/bonobo-ui-config-widget.c:274 msgid "_Show" msgstr "_Rodyti" #: ../bonobo/bonobo-ui-config-widget.c:281 msgid "_Hide" msgstr "_Slėpti" #: ../bonobo/bonobo-ui-config-widget.c:287 msgid "_View tooltips" msgstr "_Rodyti patarimus" #: ../bonobo/bonobo-ui-config-widget.c:292 msgid "Toolbars" msgstr "Įrankių juostos" #: ../bonobo/bonobo-ui-config-widget.c:302 msgid "toolbars" msgstr "įrankių juostos" #: ../bonobo/bonobo-ui-config-widget.c:313 #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "Look" msgstr "Vaizdas" #: ../bonobo/bonobo-ui-config-widget.c:322 #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "_Icon" msgstr "_Piktograma" #: ../bonobo/bonobo-ui-config-widget.c:328 msgid "_Text and Icon" msgstr "_Tekstas ir piktogramos" #: ../bonobo/bonobo-ui-config-widget.c:334 msgid "Text only" msgstr "Tik tekstas" #: ../bonobo/bonobo-ui-config-widget.c:340 msgid "_Priority text only" msgstr "Tik _svarbus tekstas" #: ../bonobo/bonobo-ui-engine.c:93 msgid "Debug" msgstr "Testavimas" #: ../bonobo/bonobo-ui-engine.c:93 msgid "_Dump XML" msgstr "_Išvesti XML" #: ../bonobo/bonobo-ui-engine.c:94 msgid "Dump the entire UI's XML description to the console" msgstr "Išvesti visą sąsajos XML aprašymą į terminalą" #: ../bonobo/bonobo-ui-engine-config.c:524 msgid "Configure UI" msgstr "Nustatyti sąsają" #: ../bonobo/bonobo-ui-init-gtk.c:131 msgid "Gdk debugging flags to set" msgstr "Nustatomi gdk tikrinimo požymiai" #: ../bonobo/bonobo-ui-init-gtk.c:131 ../bonobo/bonobo-ui-init-gtk.c:134 #: ../bonobo/bonobo-ui-init-gtk.c:162 ../bonobo/bonobo-ui-init-gtk.c:165 msgid "FLAGS" msgstr "POŽYMIAI" #: ../bonobo/bonobo-ui-init-gtk.c:134 msgid "Gdk debugging flags to unset" msgstr "Atjungiami gdk testavimo požymiai" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "X display to use" msgstr "Naudotinas X vaizduoklis" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "DISPLAY" msgstr "VAIZDUOKLIS" #: ../bonobo/bonobo-ui-init-gtk.c:142 msgid "X screen to use" msgstr "Naudotinas X ekranas" #: ../bonobo/bonobo-ui-init-gtk.c:142 msgid "SCREEN" msgstr "EKRANAS" #: ../bonobo/bonobo-ui-init-gtk.c:146 msgid "Make X calls synchronous" msgstr "Vykdyti X užklausas sinchroniškai" #: ../bonobo/bonobo-ui-init-gtk.c:152 msgid "Don't use X shared memory extension" msgstr "Nenaudoti X bendrosios atminties išplėtimo" #: ../bonobo/bonobo-ui-init-gtk.c:156 msgid "Program name as used by the window manager" msgstr "Programos vardas naudojamas langų tvarkyklės" #: ../bonobo/bonobo-ui-init-gtk.c:156 msgid "NAME" msgstr "VARDAS" #: ../bonobo/bonobo-ui-init-gtk.c:159 msgid "Program class as used by the window manager" msgstr "Programos klasė naudoja langų tvarkyklšs" #: ../bonobo/bonobo-ui-init-gtk.c:159 msgid "CLASS" msgstr "KLASĖ" #: ../bonobo/bonobo-ui-init-gtk.c:162 msgid "Gtk+ debugging flags to set" msgstr "Nustatomi Gtk+ testavimo požymiai" #: ../bonobo/bonobo-ui-init-gtk.c:165 msgid "Gtk+ debugging flags to unset" msgstr "Atšaukiami Gtk+ testavimo požymiai" #: ../bonobo/bonobo-ui-init-gtk.c:168 msgid "Make all warnings fatal" msgstr "Visi perspėjimai bus kritiniai" #: ../bonobo/bonobo-ui-init-gtk.c:171 msgid "Load an additional Gtk module" msgstr "Paleisti papildomą Gtk modulį" #: ../bonobo/bonobo-ui-init-gtk.c:171 msgid "MODULE" msgstr "MODULIS" #: ../bonobo/bonobo-ui-init-gtk.c:187 msgid "GTK+" msgstr "GTK+" #: ../bonobo/bonobo-ui-main.c:281 msgid "Bonobo GUI support" msgstr "Bonobo grafinės sąsajos palaikymas" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "B_oth" msgstr "_Abu" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "T_ext" msgstr "T_ekstas" #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Hide t_ips" msgstr "Slėpt_i patarimus" #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Show t_ips" msgstr "Rodyt_i patarimus" #: ../bonobo/bonobo-ui-sync-toolbar.c:570 msgid "_Hide toolbar" msgstr "_Slėpti įrankių juostą" #: ../bonobo/bonobo-ui-sync-toolbar.c:570 msgid "Customi_ze" msgstr "_Tinkinti" #: ../bonobo/bonobo-ui-sync-toolbar.c:571 msgid "Customize the toolbar" msgstr "Tinkinti įrankių juostą" #: ../bonobo/bonobo-ui-toolbar.c:1117 msgid "is floating" msgstr "yra slanki" #: ../bonobo/bonobo-ui-toolbar.c:1118 msgid "whether the toolbar is floating" msgstr "ar įrankių juostą yra slanki" #: ../bonobo/bonobo-ui-toolbar.c:1164 msgid "Style of bevel around the toolbar" msgstr "Įrankių juostos rėmelio stilius" #: ../bonobo/bonobo-ui-util.c:602 msgid "Could not display help for this application" msgstr "Nepavyko parodyti šios programos žinyno" #: ../bonobo/bonobo-ui-util.c:644 msgid "_Contents" msgstr "_Turinys" #: ../bonobo/bonobo-ui-util.c:645 msgid "View help for this application" msgstr "Peržiūrėti programos žinyną" #: ../bonobo/bonobo-window.c:348 msgid "Name of the window - used for configuration serialization." msgstr "Lango vardas - naudojamas nustatymų standartizavimui" #: ../bonobo/bonobo-zoomable.c:326 msgid "Zoom level" msgstr "Mąstelis" #: ../bonobo/bonobo-zoomable.c:327 msgid "The degree of enlargment" msgstr "Mąstelio keitimas" #: ../bonobo/bonobo-zoomable.c:335 msgid "Minimum Zoom level" msgstr "Mažinimo riba" #: ../bonobo/bonobo-zoomable.c:336 msgid "The minimum degree of enlargment" msgstr "Mažiausia mastelio reikšmė" #: ../bonobo/bonobo-zoomable.c:344 msgid "Maximum Zoom level" msgstr "Didinimo riba" #: ../bonobo/bonobo-zoomable.c:345 msgid "The maximum degree of enlargment" msgstr "Didžiausias padidinimo lygis" #: ../bonobo/bonobo-zoomable.c:353 msgid "Has a minimum Zoom level" msgstr "Turi mažiausią mastelio lygį" #: ../bonobo/bonobo-zoomable.c:354 msgid "Whether we have a valid minimum zoom level" msgstr "Ar yra tinkamas miniminalaus mastelio lygis" #: ../bonobo/bonobo-zoomable.c:361 msgid "Has a maximum Zoom level" msgstr "Turi maksimalaus mastelio lygį" #: ../bonobo/bonobo-zoomable.c:362 msgid "Whether we have a valid maximum zoom level" msgstr "Ar yra tinkamas maksimalaus mastelio lygis" #: ../bonobo/bonobo-zoomable.c:369 msgid "Is continuous" msgstr "Yra tęstinis" #: ../bonobo/bonobo-zoomable.c:370 msgid "Whether we zoom continuously (as opposed to jumps)" msgstr "Ar galima didinti laipsniškai (nešokinėjant tarp didinimo reikšmių)" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:1 msgid "About this application" msgstr "Apie šią programą" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:2 msgid "Select" msgstr "Pasirinkti" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:3 msgid "_About..." msgstr "_Apie" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:4 msgid "_Edit" msgstr "_Keisi" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:5 #: ../tools/browser/bonobo-browser.xml.h:4 msgid "_File" msgstr "_Failas" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:6 msgid "_Select" msgstr "_Pasirinkti" #: ../samples/bonoboui/hello.c:65 msgid "This does nothing; it is only a demonstration." msgstr "Tai nieko nedaro; tik galimybių parodymas" #: ../samples/bonoboui/hello.c:147 msgid "BonoboUI-Hello." msgstr "BonoboUI-Pasisveikinimas." #: ../samples/bonoboui/hello.c:219 msgid "Gnome Hello" msgstr "Gnome pasisveikinimas" #. Create Label and put it in the Button: #: ../samples/bonoboui/hello.c:274 msgid "Hello, World!" msgstr "Labas, pasauli!" #: ../samples/bonoboui/hello.c:314 msgid "Cannot init libbonoboui code" msgstr "Nepavyko paleisti libbonoboui funkcijų" #: ../samples/controls/bonobo-sample-controls.c:133 msgid "Could not initialize Bonobo UI" msgstr "Nepavyko paleisti Bonobo sąsajos" #: ../tools/browser/bonobo-browser.desktop.in.h:1 msgid "Bonobo Component Browser" msgstr "Bonobo komponentų naršyklė" #: ../tools/browser/bonobo-browser.desktop.in.h:2 msgid "Shows available Bonobo components" msgstr "Rodo prieinamus Bonobo komponentus" #: ../tools/browser/bonobo-browser.xml.h:1 msgid "About this program..." msgstr "Apie šią programą..." #: ../tools/browser/bonobo-browser.xml.h:2 msgid "Close the current window" msgstr "Užverti šį langą" #: ../tools/browser/bonobo-browser.xml.h:3 msgid "Open a new window" msgstr "Atverti naują langą" #: ../tools/browser/bonobo-browser.xml.h:5 msgid "_Help" msgstr "_Žinynas" #. Build the general tab #: ../tools/browser/component-details.c:103 msgid "General" msgstr "Esmė" #: ../tools/browser/component-details.c:110 #: ../tools/browser/component-list.c:389 msgid "IID" msgstr "IID" #: ../tools/browser/component-details.c:111 msgid "Location" msgstr "Vieta" #. Build the details tab #: ../tools/browser/component-details.c:161 msgid "Details" msgstr "Detalės" #: ../tools/browser/component-details.c:162 msgid "Detailed Information" msgstr "Detali informacija" #: ../tools/browser/component-list.c:358 ../tools/browser/window.c:283 msgid "Active" msgstr "Aktyvuota" #: ../tools/browser/component-list.c:379 msgid "Type" msgstr "Tipas" #: ../tools/browser/window.c:162 msgid "Component Details" msgstr "Komponento detalės" #: ../tools/browser/window.c:208 msgid "Bonobo Browser" msgstr "Bonobo naršyklė" #: ../tools/browser/window.c:210 msgid "Copyright 2001, The GNOME Foundation" msgstr "Autorinės teisės 2001, GNOME organizacija" #: ../tools/browser/window.c:211 msgid "Bonobo component browser" msgstr "Bonobo komponentų naršyklė" #: ../tools/browser/window.c:214 msgid "translator-credits" msgstr "Žygimantas Beručka " #. create the window #: ../tools/browser/window.c:240 msgid "Component Browser" msgstr "Komponentų naršyklė" #. Fill out the tool bar #: ../tools/browser/window.c:280 msgid "All" msgstr "Visas" #: ../tools/browser/window.c:286 msgid "Inactive" msgstr "Neaktyvus" libbonoboui-2.24.5/po/ko.po0000644000076400007640000003242711173072741012442 00000000000000# Korean messages for libbonoboui # Changwoo Ryu , 2002-2006, 2008. # msgid "" msgstr "" "Project-Id-Version: libbonoboui\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2008-02-15 10:25+0900\n" "PO-Revision-Date: 2008-02-15 10:29+0900\n" "Last-Translator: Changwoo Ryu \n" "Language-Team: GNOME Korea \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\n" #: ../bonobo/bonobo-canvas-item.c:680 msgid "corba factory" msgstr "코바 팩토리" #: ../bonobo/bonobo-canvas-item.c:681 msgid "The factory pointer" msgstr "팩토리 포인터" #: ../bonobo/bonobo-canvas-item.c:690 msgid "corba UI container" msgstr "코바 UI 컨테이너" #: ../bonobo/bonobo-canvas-item.c:691 msgid "The User interface container" msgstr "사용자 인터페이스 컨테이너" #: ../bonobo/bonobo-dock-item-grip.c:255 msgid "Dock the toolbar" msgstr "도구 모음 고정" #: ../bonobo/bonobo-dock-item-grip.c:256 msgid "Undock the toolbar" msgstr "도구 모음 고정 해제" #: ../bonobo/bonobo-dock-item.c:228 ../bonobo/bonobo-dock-item.c:229 #: ../bonobo/bonobo-ui-toolbar.c:1161 msgid "Shadow type" msgstr "그림자 종류" #: ../bonobo/bonobo-dock-item.c:239 ../bonobo/bonobo-dock-item.c:240 #: ../bonobo/bonobo-ui-toolbar.c:1105 ../bonobo/bonobo-ui-toolbar.c:1106 msgid "Orientation" msgstr "방향" #: ../bonobo/bonobo-dock-item.c:250 ../bonobo/bonobo-dock-item.c:251 #: ../bonobo/bonobo-ui-toolbar.c:1124 ../bonobo/bonobo-ui-toolbar.c:1125 msgid "Preferred width" msgstr "너비 선택" #: ../bonobo/bonobo-dock-item.c:259 ../bonobo/bonobo-dock-item.c:260 #: ../bonobo/bonobo-ui-toolbar.c:1133 ../bonobo/bonobo-ui-toolbar.c:1134 msgid "Preferred height" msgstr "높이 선택" #: ../bonobo/bonobo-file-selector-util.c:357 msgid "Select a file to open" msgstr "열 파일을 선택하십시오" #: ../bonobo/bonobo-file-selector-util.c:385 msgid "Select files to open" msgstr "열 파일을 선택하십시오" #: ../bonobo/bonobo-file-selector-util.c:414 msgid "Select a filename to save" msgstr "저장할 파일이름을 선택하십시오" #: ../bonobo/bonobo-plug.c:423 msgid "Event Forwarding" msgstr "이벤트 전달하기" #: ../bonobo/bonobo-plug.c:424 msgid "Whether X events should be forwarded" msgstr "X 이벤트를 전달할 지 여부" #: ../bonobo/bonobo-selector-widget.c:297 ../bonobo/bonobo-window.c:344 #: ../tools/browser/component-details.c:114 #: ../tools/browser/component-list.c:378 msgid "Name" msgstr "이름" #: ../bonobo/bonobo-selector-widget.c:319 #: ../tools/browser/component-details.c:115 msgid "Description" msgstr "설명" #: ../bonobo/bonobo-selector.c:343 msgid "Interfaces required" msgstr "필요한 인터페이스" #: ../bonobo/bonobo-selector.c:344 msgid "" "A NULL-terminated array of interfaces which a server must support in order " "to be listed in the selector. Defaults to \"IDL:Bonobo/Embeddable:1.0\" if " "no interfaces are listed" msgstr "셀렉터에 열거되려면 서버가 지원해야 할 인터페이스의 NULL로 끝나는 배열. 열거한 인터페이스가 없을 때 기본값은 \"IDL:Bonobo/Embeddable:1.0\"" #: ../bonobo/bonobo-selector.c:346 msgid "Interface required entry" msgstr "필요한 인터페이스 엔트리" #: ../bonobo/bonobo-selector.c:347 msgid "One of the interfaces that's required" msgstr "필요한 인터페이스 중 하나" #: ../bonobo/bonobo-ui-config-widget.c:265 msgid "Visible" msgstr "표시" #: ../bonobo/bonobo-ui-config-widget.c:272 msgid "_Show" msgstr "보이기(_S)" #: ../bonobo/bonobo-ui-config-widget.c:279 msgid "_Hide" msgstr "숨기기(_H)" #: ../bonobo/bonobo-ui-config-widget.c:285 msgid "_View tooltips" msgstr "도구 설명 보기(_V)" #: ../bonobo/bonobo-ui-config-widget.c:290 msgid "Toolbars" msgstr "도구 모음" #: ../bonobo/bonobo-ui-config-widget.c:300 msgid "toolbars" msgstr "도구 모음" #: ../bonobo/bonobo-ui-config-widget.c:311 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "Look" msgstr "보기" #: ../bonobo/bonobo-ui-config-widget.c:320 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "_Icon" msgstr "아이콘(_I)" #: ../bonobo/bonobo-ui-config-widget.c:326 msgid "_Text and Icon" msgstr "텍스트와 아이콘(_T)" #: ../bonobo/bonobo-ui-config-widget.c:332 msgid "Text only" msgstr "텍스트만" #: ../bonobo/bonobo-ui-config-widget.c:338 msgid "_Priority text only" msgstr "우선 순위 글자만(_P)" #: ../bonobo/bonobo-ui-engine.c:91 msgid "Debug" msgstr "디버그" #: ../bonobo/bonobo-ui-engine.c:91 msgid "_Dump XML" msgstr "XML 덤프(_D)" #: ../bonobo/bonobo-ui-engine.c:92 msgid "Dump the entire UI's XML description to the console" msgstr "전체 UI의 XML 표현을 콘솔로 덤프합니다" #: ../bonobo/bonobo-ui-engine-config.c:522 msgid "Configure UI" msgstr "UI 설정" #: ../bonobo/bonobo-ui-init-gtk.c:131 msgid "Gdk debugging flags to set" msgstr "GDK 디버깅 사용 플래그" #: ../bonobo/bonobo-ui-init-gtk.c:131 ../bonobo/bonobo-ui-init-gtk.c:134 #: ../bonobo/bonobo-ui-init-gtk.c:162 ../bonobo/bonobo-ui-init-gtk.c:165 msgid "FLAGS" msgstr "<플래그>" #: ../bonobo/bonobo-ui-init-gtk.c:134 msgid "Gdk debugging flags to unset" msgstr "GDK 디버깅 사용하지 않을 플래그" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "X display to use" msgstr "사용할 X 디스플레이" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "DISPLAY" msgstr "<디스플레이>" #: ../bonobo/bonobo-ui-init-gtk.c:142 msgid "X screen to use" msgstr "사용할 X 스크린" #: ../bonobo/bonobo-ui-init-gtk.c:142 msgid "SCREEN" msgstr "<스크린>" #: ../bonobo/bonobo-ui-init-gtk.c:146 msgid "Make X calls synchronous" msgstr "동기(synchronous) X 호출" #: ../bonobo/bonobo-ui-init-gtk.c:152 msgid "Don't use X shared memory extension" msgstr "X 공유 메모리 확장 기능을 사용하지 않음" #: ../bonobo/bonobo-ui-init-gtk.c:156 msgid "Program name as used by the window manager" msgstr "창 관리자가 사용할 프로그램 이름" #: ../bonobo/bonobo-ui-init-gtk.c:156 msgid "NAME" msgstr "<이름>" #: ../bonobo/bonobo-ui-init-gtk.c:159 msgid "Program class as used by the window manager" msgstr "창 관리자가 사용할 프로그램 클래스" #: ../bonobo/bonobo-ui-init-gtk.c:159 msgid "CLASS" msgstr "<클래스>" #: ../bonobo/bonobo-ui-init-gtk.c:162 msgid "Gtk+ debugging flags to set" msgstr "GTK+ 디버깅 사용 플래그" #: ../bonobo/bonobo-ui-init-gtk.c:165 msgid "Gtk+ debugging flags to unset" msgstr "GTK+ 디버깅 사용하지 않을 플래그" #: ../bonobo/bonobo-ui-init-gtk.c:168 msgid "Make all warnings fatal" msgstr "모든 경고를 치명적인 오류로 취급합니다" #: ../bonobo/bonobo-ui-init-gtk.c:171 msgid "Load an additional Gtk module" msgstr "GTK 모듈을 더 읽어들입니다" #: ../bonobo/bonobo-ui-init-gtk.c:171 msgid "MODULE" msgstr "<모듈>" #: ../bonobo/bonobo-ui-init-gtk.c:187 msgid "GTK+" msgstr "GTK+" #: ../bonobo/bonobo-ui-main.c:278 msgid "Bonobo GUI support" msgstr "보노보 GUI 지원 기능" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "B_oth" msgstr "둘 다(_O)" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "T_ext" msgstr "텍스트(_E)" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Hide t_ips" msgstr "설명 숨기기(_I)" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Show t_ips" msgstr "설명 보이기(_I)" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "_Hide toolbar" msgstr "도구 모음 숨기기(_H)" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "Customi_ze" msgstr "사용자 설정(_Z)" #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Customize the toolbar" msgstr "도구 모음 사용자 설정" #: ../bonobo/bonobo-ui-toolbar.c:1115 msgid "is floating" msgstr "움직이기" #: ../bonobo/bonobo-ui-toolbar.c:1116 msgid "whether the toolbar is floating" msgstr "도구 모음을 움직일 수 있는지" #: ../bonobo/bonobo-ui-toolbar.c:1162 msgid "Style of bevel around the toolbar" msgstr "도구 모음의 3D 효과 스타일" #: ../bonobo/bonobo-ui-util.c:601 msgid "Could not display help for this application" msgstr "이 프로그램에 대한 도움말을 표시할 수 없습니다" #: ../bonobo/bonobo-ui-util.c:643 msgid "_Contents" msgstr "차례(_C)" #: ../bonobo/bonobo-ui-util.c:644 msgid "View help for this application" msgstr "이 프로그램에 대한 도움말을 봅니다" #: ../bonobo/bonobo-window.c:345 msgid "Name of the window - used for configuration serialization." msgstr "창의 이름 - 설정 직렬화에 사용됩니다." #: ../bonobo/bonobo-zoomable.c:326 msgid "Zoom level" msgstr "확대/축소 단계" #: ../bonobo/bonobo-zoomable.c:327 msgid "The degree of enlargment" msgstr "확대 정도" #: ../bonobo/bonobo-zoomable.c:335 msgid "Minimum Zoom level" msgstr "최소 확대/축소 단계" #: ../bonobo/bonobo-zoomable.c:336 msgid "The minimum degree of enlargment" msgstr "최소의 확대/축소 정도" #: ../bonobo/bonobo-zoomable.c:344 msgid "Maximum Zoom level" msgstr "최대 확대/축소 단계" #: ../bonobo/bonobo-zoomable.c:345 msgid "The maximum degree of enlargment" msgstr "최대의 확대/축소 정도" #: ../bonobo/bonobo-zoomable.c:353 msgid "Has a minimum Zoom level" msgstr "최소 확대/축소 단계 사용" #: ../bonobo/bonobo-zoomable.c:354 msgid "Whether we have a valid minimum zoom level" msgstr "최소 확대/축소 단계를 사용할 것인지 여부" #: ../bonobo/bonobo-zoomable.c:361 msgid "Has a maximum Zoom level" msgstr "최대 확대/축소 단계 사용" #: ../bonobo/bonobo-zoomable.c:362 msgid "Whether we have a valid maximum zoom level" msgstr "최대 확대/축소 단계를 사용할 것인지 여부" #: ../bonobo/bonobo-zoomable.c:369 msgid "Is continuous" msgstr "연속적" #: ../bonobo/bonobo-zoomable.c:370 msgid "Whether we zoom continuously (as opposed to jumps)" msgstr "연속적으로 (각 단계로 점프하지 않고) 확대/축소를 할 것인지 여부" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:1 msgid "About this application" msgstr "프로그램 정보" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:2 msgid "Select" msgstr "선택" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:3 msgid "_About..." msgstr "정보(_A)..." #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:4 msgid "_Edit" msgstr "편집(_E)" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:5 #: ../tools/browser/bonobo-browser.xml.h:4 msgid "_File" msgstr "파일(_F)" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:6 msgid "_Select" msgstr "선택(_S)" #: ../samples/bonoboui/hello.c:63 msgid "This does nothing; it is only a demonstration." msgstr "아무 것도 아닙니다; 이 프로그램은 데모입니다." #: ../samples/bonoboui/hello.c:145 msgid "BonoboUI-Hello." msgstr "보노보UI-헬로우." #: ../samples/bonoboui/hello.c:217 msgid "Gnome Hello" msgstr "그놈 헬로우" #. Create Label and put it in the Button: #: ../samples/bonoboui/hello.c:272 msgid "Hello, World!" msgstr "안녕하세요, 여러분!" #: ../samples/bonoboui/hello.c:312 msgid "Cannot init libbonoboui code" msgstr "libbonoboui 코드를 초기화할 수 없습니다" #: ../samples/controls/bonobo-sample-controls.c:131 msgid "Could not initialize Bonobo UI" msgstr "보노보 UI를 초기화할 수 없습니다" #: ../tools/browser/bonobo-browser.desktop.in.h:1 msgid "Bonobo Component Browser" msgstr "보노보 컴포넌트 브라우저" #: ../tools/browser/bonobo-browser.desktop.in.h:2 msgid "Shows available Bonobo components" msgstr "사용할 수 있는 보노보 컴포넌트를 표시합니다" #: ../tools/browser/bonobo-browser.xml.h:1 msgid "About this program..." msgstr "이 프로그램 정보..." #: ../tools/browser/bonobo-browser.xml.h:2 msgid "Close the current window" msgstr "현재 창을 닫습니다" #: ../tools/browser/bonobo-browser.xml.h:3 msgid "Open a new window" msgstr "새 창을 엽니다" #: ../tools/browser/bonobo-browser.xml.h:5 msgid "_Help" msgstr "도움말(_H)" #. Build the general tab #: ../tools/browser/component-details.c:109 msgid "General" msgstr "일반" #: ../tools/browser/component-details.c:116 #: ../tools/browser/component-list.c:398 msgid "IID" msgstr "IID" #: ../tools/browser/component-details.c:117 msgid "Location" msgstr "위치" #. Build the details tab #: ../tools/browser/component-details.c:167 msgid "Details" msgstr "상세 정보" #: ../tools/browser/component-details.c:168 msgid "Detailed Information" msgstr "상세 정보" #: ../tools/browser/component-list.c:367 ../tools/browser/window.c:283 msgid "Active" msgstr "활성화" #: ../tools/browser/component-list.c:388 msgid "Type" msgstr "종류" #: ../tools/browser/window.c:162 msgid "Component Details" msgstr "컴포넌트 상세 정보" #: ../tools/browser/window.c:208 msgid "Bonobo Browser" msgstr "보노보 브라우저" #: ../tools/browser/window.c:210 msgid "Copyright 2001, The GNOME Foundation" msgstr "Copyright 2001, The GNOME Foundation" #: ../tools/browser/window.c:211 msgid "Bonobo component browser" msgstr "보노보 컴포넌트 브라우저" #: ../tools/browser/window.c:214 msgid "translator-credits" msgstr "류창우 " #. create the window #: ../tools/browser/window.c:240 msgid "Component Browser" msgstr "컴포넌트 브라우저" #. Fill out the tool bar #: ../tools/browser/window.c:280 msgid "All" msgstr "모두" #: ../tools/browser/window.c:286 msgid "Inactive" msgstr "비활성화" libbonoboui-2.24.5/po/cs.po0000664000076400007640000003207611433016366012440 00000000000000# Czech translation of libbonoboui. # Copyright (C) 2002 Free Software Foundation, Inc. # Copyright (C) 2004, 2005, 2006 Miloslav Trmac . # Miloslav Trmac , 2002, 2004, 2005, 2006. # Lucas Lommer , 2008, 2010. # msgid "" msgstr "" "Project-Id-Version: libbonoboui\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2010-03-29 01:15+0200\n" "PO-Revision-Date: 2010-03-28 17:04+0100\n" "Last-Translator: Lucas Lommer \n" "Language-Team: Czech \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../bonobo/bonobo-canvas-item.c:680 msgid "corba factory" msgstr "factory corba" #: ../bonobo/bonobo-canvas-item.c:681 msgid "The factory pointer" msgstr "Ukazatel na factory" #: ../bonobo/bonobo-canvas-item.c:690 msgid "corba UI container" msgstr "rámec corba UI" #: ../bonobo/bonobo-canvas-item.c:691 msgid "The User interface container" msgstr "Rámec uživatelského rozhraní" #: ../bonobo/bonobo-dock-item-grip.c:254 msgid "Dock the toolbar" msgstr "Dokovat nástrojovou lištu" #: ../bonobo/bonobo-dock-item-grip.c:255 msgid "Undock the toolbar" msgstr "Oddokovat nástrojovou lištu" #: ../bonobo/bonobo-dock-item.c:225 ../bonobo/bonobo-dock-item.c:226 #: ../bonobo/bonobo-ui-toolbar.c:1163 msgid "Shadow type" msgstr "Typ stínu" #: ../bonobo/bonobo-dock-item.c:236 ../bonobo/bonobo-dock-item.c:237 #: ../bonobo/bonobo-ui-toolbar.c:1107 ../bonobo/bonobo-ui-toolbar.c:1108 msgid "Orientation" msgstr "Orientace" #: ../bonobo/bonobo-dock-item.c:247 ../bonobo/bonobo-dock-item.c:248 #: ../bonobo/bonobo-ui-toolbar.c:1126 ../bonobo/bonobo-ui-toolbar.c:1127 msgid "Preferred width" msgstr "Preferovaná šířka" #: ../bonobo/bonobo-dock-item.c:256 ../bonobo/bonobo-dock-item.c:257 #: ../bonobo/bonobo-ui-toolbar.c:1135 ../bonobo/bonobo-ui-toolbar.c:1136 msgid "Preferred height" msgstr "Preferovaná výška" #: ../bonobo/bonobo-file-selector-util.c:350 msgid "Select a file to open" msgstr "Zvolte soubor pro otevření" #: ../bonobo/bonobo-file-selector-util.c:378 msgid "Select files to open" msgstr "Zvolte soubory pro otevření" #: ../bonobo/bonobo-file-selector-util.c:407 msgid "Select a filename to save" msgstr "Zvolte název souboru pro uložení" #: ../bonobo/bonobo-plug.c:425 msgid "Event Forwarding" msgstr "Přeposílání událostí" #: ../bonobo/bonobo-plug.c:426 msgid "Whether X events should be forwarded" msgstr "Jestli mají být přeposílány události X" #: ../bonobo/bonobo-selector-widget.c:300 ../bonobo/bonobo-window.c:347 #: ../tools/browser/component-details.c:108 #: ../tools/browser/component-list.c:369 msgid "Name" msgstr "Název" #: ../bonobo/bonobo-selector-widget.c:322 #: ../tools/browser/component-details.c:109 msgid "Description" msgstr "Popis" #: ../bonobo/bonobo-selector.c:343 msgid "Interfaces required" msgstr "Požadovaná rozhraní" #: ../bonobo/bonobo-selector.c:344 msgid "" "A NULL-terminated array of interfaces which a server must support in order " "to be listed in the selector. Defaults to \"IDL:Bonobo/Embeddable:1.0\" if " "no interfaces are listed" msgstr "" "Pole ukončené NULL obsahující rozhraní, které musí server podporovat, aby " "byl uveden ve výběru. Nejsou-li požadována žádná rozhraní, ve výchozím " "nastavení se bere „IDL:Bonobo/Embeddable:1.0“" #: ../bonobo/bonobo-selector.c:346 msgid "Interface required entry" msgstr "Vložení požadovaného rozhraní" #: ../bonobo/bonobo-selector.c:347 msgid "One of the interfaces that's required" msgstr "Jedno z požadovaných rozhraní" #: ../bonobo/bonobo-ui-config-widget.c:267 msgid "Visible" msgstr "Viditelné" #: ../bonobo/bonobo-ui-config-widget.c:274 msgid "_Show" msgstr "_Zobrazit" #: ../bonobo/bonobo-ui-config-widget.c:281 msgid "_Hide" msgstr "_Skrýt" #: ../bonobo/bonobo-ui-config-widget.c:287 msgid "_View tooltips" msgstr "_Zobrazit tipy" #: ../bonobo/bonobo-ui-config-widget.c:292 msgid "Toolbars" msgstr "Nástrojové lišty" #: ../bonobo/bonobo-ui-config-widget.c:302 msgid "toolbars" msgstr "nástrojové lišty" #: ../bonobo/bonobo-ui-config-widget.c:313 #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "Look" msgstr "Vzhled" #: ../bonobo/bonobo-ui-config-widget.c:322 #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "_Icon" msgstr "_Ikona" #: ../bonobo/bonobo-ui-config-widget.c:328 msgid "_Text and Icon" msgstr "_Text a ikona" #: ../bonobo/bonobo-ui-config-widget.c:334 msgid "Text only" msgstr "Jen text" #: ../bonobo/bonobo-ui-config-widget.c:340 msgid "_Priority text only" msgstr "Jen _důležitý text" #: ../bonobo/bonobo-ui-engine.c:93 msgid "Debug" msgstr "Ladit" #: ../bonobo/bonobo-ui-engine.c:93 msgid "_Dump XML" msgstr "_Vypsat XML" #: ../bonobo/bonobo-ui-engine.c:94 msgid "Dump the entire UI's XML description to the console" msgstr "Vypsat celý XML popis UI na konzolu" #: ../bonobo/bonobo-ui-engine-config.c:524 msgid "Configure UI" msgstr "Nastavit UI" #: ../bonobo/bonobo-ui-init-gtk.c:131 msgid "Gdk debugging flags to set" msgstr "Nastavit ladicí volby Gdk" #: ../bonobo/bonobo-ui-init-gtk.c:131 ../bonobo/bonobo-ui-init-gtk.c:134 #: ../bonobo/bonobo-ui-init-gtk.c:162 ../bonobo/bonobo-ui-init-gtk.c:165 msgid "FLAGS" msgstr "VOLBY" #: ../bonobo/bonobo-ui-init-gtk.c:134 msgid "Gdk debugging flags to unset" msgstr "Zrušit ladicí volby Gdk" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "X display to use" msgstr "Použít X displej" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "DISPLAY" msgstr "DISPLAY" #: ../bonobo/bonobo-ui-init-gtk.c:142 msgid "X screen to use" msgstr "Použít X obrazovku" #: ../bonobo/bonobo-ui-init-gtk.c:142 msgid "SCREEN" msgstr "OBRAZOVKA" #: ../bonobo/bonobo-ui-init-gtk.c:146 msgid "Make X calls synchronous" msgstr "Použít synchronní volání X" #: ../bonobo/bonobo-ui-init-gtk.c:152 msgid "Don't use X shared memory extension" msgstr "Nepoužívat rozšířené X o sdílenou paměť" #: ../bonobo/bonobo-ui-init-gtk.c:156 msgid "Program name as used by the window manager" msgstr "Název programu, jak je používá manažer oken" #: ../bonobo/bonobo-ui-init-gtk.c:156 msgid "NAME" msgstr "NÁZEV" #: ../bonobo/bonobo-ui-init-gtk.c:159 msgid "Program class as used by the window manager" msgstr "Třída programu, jak ji používá manažer oken" #: ../bonobo/bonobo-ui-init-gtk.c:159 msgid "CLASS" msgstr "TŘÍDA" #: ../bonobo/bonobo-ui-init-gtk.c:162 msgid "Gtk+ debugging flags to set" msgstr "Nastavit ladicí volby Gtk+" #: ../bonobo/bonobo-ui-init-gtk.c:165 msgid "Gtk+ debugging flags to unset" msgstr "Zrušit ladicí volby Gtk+" #: ../bonobo/bonobo-ui-init-gtk.c:168 msgid "Make all warnings fatal" msgstr "Všechna varování považovat za fatální" #: ../bonobo/bonobo-ui-init-gtk.c:171 msgid "Load an additional Gtk module" msgstr "Nahrát přídavný modul Gtk" #: ../bonobo/bonobo-ui-init-gtk.c:171 msgid "MODULE" msgstr "MODUL" #: ../bonobo/bonobo-ui-init-gtk.c:187 msgid "GTK+" msgstr "GTK+" #: ../bonobo/bonobo-ui-main.c:281 msgid "Bonobo GUI support" msgstr "Podpora GUI Bonobo" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "B_oth" msgstr "_Obojí" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "T_ext" msgstr "T_ext" #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Hide t_ips" msgstr "Skrýt t_ipy" #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Show t_ips" msgstr "Zobrazit t_ipy" #: ../bonobo/bonobo-ui-sync-toolbar.c:570 msgid "_Hide toolbar" msgstr "_Skrýt lištu nástrojů" #: ../bonobo/bonobo-ui-sync-toolbar.c:570 msgid "Customi_ze" msgstr "_Upravit" #: ../bonobo/bonobo-ui-sync-toolbar.c:571 msgid "Customize the toolbar" msgstr "Upravit lištu nástrojů" #: ../bonobo/bonobo-ui-toolbar.c:1117 msgid "is floating" msgstr "je plovoucí" #: ../bonobo/bonobo-ui-toolbar.c:1118 msgid "whether the toolbar is floating" msgstr "jestli je lišta nástrojů plovoucí" #: ../bonobo/bonobo-ui-toolbar.c:1164 msgid "Style of bevel around the toolbar" msgstr "Velikost okrajů okolo lišty nástrojů" #: ../bonobo/bonobo-ui-util.c:602 msgid "Could not display help for this application" msgstr "Nelze zobrazit nápovědu pro tuto aplikaci" #: ../bonobo/bonobo-ui-util.c:644 msgid "_Contents" msgstr "_Obsah" #: ../bonobo/bonobo-ui-util.c:645 msgid "View help for this application" msgstr "Zobrazit nápovědu pro tuto aplikaci" #: ../bonobo/bonobo-window.c:348 msgid "Name of the window - used for configuration serialization." msgstr "Název okna - používané pro serializaci konfigurace." #: ../bonobo/bonobo-zoomable.c:326 msgid "Zoom level" msgstr "Úroveň zvětšení" #: ../bonobo/bonobo-zoomable.c:327 msgid "The degree of enlargment" msgstr "Stupeň zvětšení" #: ../bonobo/bonobo-zoomable.c:335 msgid "Minimum Zoom level" msgstr "Minimální úroveň zvětšení" #: ../bonobo/bonobo-zoomable.c:336 msgid "The minimum degree of enlargment" msgstr "Minimální úroveň zvětšení" #: ../bonobo/bonobo-zoomable.c:344 msgid "Maximum Zoom level" msgstr "Maximální úroveň zvětšení" #: ../bonobo/bonobo-zoomable.c:345 msgid "The maximum degree of enlargment" msgstr "Maximální úroveň zvětšení" #: ../bonobo/bonobo-zoomable.c:353 msgid "Has a minimum Zoom level" msgstr "Má minimální úroveň zvětšení" #: ../bonobo/bonobo-zoomable.c:354 msgid "Whether we have a valid minimum zoom level" msgstr "Jestli máme platnou minimální úroveň zvětšení" #: ../bonobo/bonobo-zoomable.c:361 msgid "Has a maximum Zoom level" msgstr "Má maximální úroveň zvětšení" #: ../bonobo/bonobo-zoomable.c:362 msgid "Whether we have a valid maximum zoom level" msgstr "Jestli máme platnou maximální úroveň zvětšení" #: ../bonobo/bonobo-zoomable.c:369 msgid "Is continuous" msgstr "Je souvislý" #: ../bonobo/bonobo-zoomable.c:370 msgid "Whether we zoom continuously (as opposed to jumps)" msgstr "Jestli zvětšujeme souvisle (ne skokem)" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:1 msgid "About this application" msgstr "O této aplikaci" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:2 msgid "Select" msgstr "Vybrat" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:3 msgid "_About..." msgstr "O _aplikaci…" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:4 msgid "_Edit" msgstr "Ú_pravy" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:5 #: ../tools/browser/bonobo-browser.xml.h:4 msgid "_File" msgstr "_Soubor" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:6 msgid "_Select" msgstr "_Vybrat" #: ../samples/bonoboui/hello.c:65 msgid "This does nothing; it is only a demonstration." msgstr "Toto nic nedělá; je to jen ukázka." #: ../samples/bonoboui/hello.c:147 msgid "BonoboUI-Hello." msgstr "BonoboUI-Hello." #: ../samples/bonoboui/hello.c:219 msgid "Gnome Hello" msgstr "Gnome Hello" #. Create Label and put it in the Button: #: ../samples/bonoboui/hello.c:274 msgid "Hello, World!" msgstr "Ahoj, světe!" #: ../samples/bonoboui/hello.c:314 msgid "Cannot init libbonoboui code" msgstr "Nemohu inicializovat kód libbonoboui" #: ../samples/controls/bonobo-sample-controls.c:133 msgid "Could not initialize Bonobo UI" msgstr "Nemohu inicializovat Bonobo UI" #: ../tools/browser/bonobo-browser.desktop.in.h:1 msgid "Bonobo Component Browser" msgstr "Prohlížeč komponent Bonobo" #: ../tools/browser/bonobo-browser.desktop.in.h:2 msgid "Shows available Bonobo components" msgstr "Zobrazí dostupné komponenty Bonobo" #: ../tools/browser/bonobo-browser.xml.h:1 msgid "About this program..." msgstr "O tomto programu…" #: ../tools/browser/bonobo-browser.xml.h:2 msgid "Close the current window" msgstr "Zavřít aktuální okno" #: ../tools/browser/bonobo-browser.xml.h:3 msgid "Open a new window" msgstr "Otevřít nové okno" #: ../tools/browser/bonobo-browser.xml.h:5 msgid "_Help" msgstr "_Nápověda" #. Build the general tab #: ../tools/browser/component-details.c:103 msgid "General" msgstr "Obecné" #: ../tools/browser/component-details.c:110 #: ../tools/browser/component-list.c:389 msgid "IID" msgstr "IID" #: ../tools/browser/component-details.c:111 msgid "Location" msgstr "Umístění" #. Build the details tab #: ../tools/browser/component-details.c:161 msgid "Details" msgstr "Podrobnosti" #: ../tools/browser/component-details.c:162 msgid "Detailed Information" msgstr "Podrobné informace" #: ../tools/browser/component-list.c:358 ../tools/browser/window.c:283 msgid "Active" msgstr "Aktivní" #: ../tools/browser/component-list.c:379 msgid "Type" msgstr "Typ" #: ../tools/browser/window.c:162 msgid "Component Details" msgstr "Podrobnosti o komponentě" #: ../tools/browser/window.c:208 msgid "Bonobo Browser" msgstr "Prohlížeč Bonobo" #: ../tools/browser/window.c:210 msgid "Copyright 2001, The GNOME Foundation" msgstr "Copyright 2001 The GNOME Foundation" #: ../tools/browser/window.c:211 msgid "Bonobo component browser" msgstr "Prohlížeč komponent Bonobo" #: ../tools/browser/window.c:214 msgid "translator-credits" msgstr "" "Miloslav Trmač \n" "Lucas Lommer " #. create the window #: ../tools/browser/window.c:240 msgid "Component Browser" msgstr "Prohlížeč komponent" #. Fill out the tool bar #: ../tools/browser/window.c:280 msgid "All" msgstr "Vše" #: ../tools/browser/window.c:286 msgid "Inactive" msgstr "Neaktivní" libbonoboui-2.24.5/po/sv.po0000644000076400007640000003570711173072741012465 00000000000000# Swedish messages for libbonoboui. # Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007 Free Software Foundation, Inc. # Daniel Nylander , 2006, 2007. # Christian Rose , 2001, 2002, 2003, 2004, 2005. # # $Id: sv.po,v 1.59 2006/08/14 11:24:13 dnylande Exp $ # msgid "" msgstr "" "Project-Id-Version: libbonoboui\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2007-11-30 09:23+0100\n" "PO-Revision-Date: 2007-11-30 09:24+0100\n" "Last-Translator: Daniel Nylander \n" "Language-Team: Swedish \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../bonobo/bonobo-canvas-item.c:680 msgid "corba factory" msgstr "corba-fabrik" #: ../bonobo/bonobo-canvas-item.c:681 msgid "The factory pointer" msgstr "Fabrikspekaren" #: ../bonobo/bonobo-canvas-item.c:690 msgid "corba UI container" msgstr "corba-användargränssnittsbehållare" #: ../bonobo/bonobo-canvas-item.c:691 msgid "The User interface container" msgstr "Användargränssnittsbehållaren" #: ../bonobo/bonobo-dock-item-grip.c:255 msgid "Dock the toolbar" msgstr "Docka verktygsraden" #: ../bonobo/bonobo-dock-item-grip.c:256 msgid "Undock the toolbar" msgstr "Lösgör verktygsraden" #: ../bonobo/bonobo-dock-item.c:228 #: ../bonobo/bonobo-dock-item.c:229 #: ../bonobo/bonobo-ui-toolbar.c:1161 msgid "Shadow type" msgstr "Skuggtyp" #: ../bonobo/bonobo-dock-item.c:239 #: ../bonobo/bonobo-dock-item.c:240 #: ../bonobo/bonobo-ui-toolbar.c:1105 #: ../bonobo/bonobo-ui-toolbar.c:1106 msgid "Orientation" msgstr "Orientering" #: ../bonobo/bonobo-dock-item.c:250 #: ../bonobo/bonobo-dock-item.c:251 #: ../bonobo/bonobo-ui-toolbar.c:1124 #: ../bonobo/bonobo-ui-toolbar.c:1125 msgid "Preferred width" msgstr "Föredragen bredd" #: ../bonobo/bonobo-dock-item.c:259 #: ../bonobo/bonobo-dock-item.c:260 #: ../bonobo/bonobo-ui-toolbar.c:1133 #: ../bonobo/bonobo-ui-toolbar.c:1134 msgid "Preferred height" msgstr "Föredragen höjd" # SUN CHANGED MESSAGE #: ../bonobo/bonobo-file-selector-util.c:357 msgid "Select a file to open" msgstr "Välj en fil att öppna" #: ../bonobo/bonobo-file-selector-util.c:385 msgid "Select files to open" msgstr "Välj filer att öppna" #: ../bonobo/bonobo-file-selector-util.c:414 msgid "Select a filename to save" msgstr "Välj ett filnamn att spara" #: ../bonobo/bonobo-plug.c:423 msgid "Event Forwarding" msgstr "Händelsevidarebefordran" #: ../bonobo/bonobo-plug.c:424 msgid "Whether X events should be forwarded" msgstr "Huruvida X-händelser ska vidarebefordras" #: ../bonobo/bonobo-selector-widget.c:297 #: ../bonobo/bonobo-window.c:344 #: ../tools/browser/component-details.c:114 #: ../tools/browser/component-list.c:378 msgid "Name" msgstr "Namn" #: ../bonobo/bonobo-selector-widget.c:319 #: ../tools/browser/component-details.c:115 msgid "Description" msgstr "Beskrivning" #: ../bonobo/bonobo-selector.c:343 msgid "Interfaces required" msgstr "Gränssnitt som krävs" #: ../bonobo/bonobo-selector.c:344 msgid "A NULL-terminated array of interfaces which a server must support in order to be listed in the selector. Defaults to \"IDL:Bonobo/Embeddable:1.0\" if no interfaces are listed" msgstr "En NULL-avslutad vektor med gränssnitt som en server måste stöda för att visas i väljaren. Är som standard \"IDL:Bonobo/Embeddable:1.0\" om inga gränssnitt visas" #: ../bonobo/bonobo-selector.c:346 msgid "Interface required entry" msgstr "Fält med gränssnitt som krävs" #: ../bonobo/bonobo-selector.c:347 msgid "One of the interfaces that's required" msgstr "En av de gränssnitt som krävs" #: ../bonobo/bonobo-ui-config-widget.c:265 msgid "Visible" msgstr "Synlig" #: ../bonobo/bonobo-ui-config-widget.c:272 msgid "_Show" msgstr "_Visa" #: ../bonobo/bonobo-ui-config-widget.c:279 msgid "_Hide" msgstr "_Dölj" #: ../bonobo/bonobo-ui-config-widget.c:285 msgid "_View tooltips" msgstr "V_isa verktygstips" #: ../bonobo/bonobo-ui-config-widget.c:290 msgid "Toolbars" msgstr "Verktygsrader" #: ../bonobo/bonobo-ui-config-widget.c:300 msgid "toolbars" msgstr "verktygsrader" #: ../bonobo/bonobo-ui-config-widget.c:311 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "Look" msgstr "Utseende" #: ../bonobo/bonobo-ui-config-widget.c:320 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "_Icon" msgstr "_Ikon" #: ../bonobo/bonobo-ui-config-widget.c:326 msgid "_Text and Icon" msgstr "_Text och ikon" #: ../bonobo/bonobo-ui-config-widget.c:332 msgid "Text only" msgstr "Endast text" #: ../bonobo/bonobo-ui-config-widget.c:338 msgid "_Priority text only" msgstr "_Endast prioritetstext" #: ../bonobo/bonobo-ui-engine.c:91 msgid "Debug" msgstr "Felsök" #: ../bonobo/bonobo-ui-engine.c:91 msgid "_Dump XML" msgstr "_Dumpa XML" #: ../bonobo/bonobo-ui-engine.c:92 msgid "Dump the entire UI's XML description to the console" msgstr "Dumpa hela användargränssnittets XML-beskrivning till konsollen" #: ../bonobo/bonobo-ui-engine-config.c:522 msgid "Configure UI" msgstr "Konfigurera användargränssnitt" #: ../bonobo/bonobo-ui-init-gtk.c:130 msgid "Gdk debugging flags to set" msgstr "Gdk-felsökningsflaggor att ställa in" #: ../bonobo/bonobo-ui-init-gtk.c:130 #: ../bonobo/bonobo-ui-init-gtk.c:133 #: ../bonobo/bonobo-ui-init-gtk.c:161 #: ../bonobo/bonobo-ui-init-gtk.c:164 msgid "FLAGS" msgstr "FLAGGOR" #: ../bonobo/bonobo-ui-init-gtk.c:133 msgid "Gdk debugging flags to unset" msgstr "Gdk-felsökningsflaggor att nollställa" #: ../bonobo/bonobo-ui-init-gtk.c:137 msgid "X display to use" msgstr "X-display att använda" #: ../bonobo/bonobo-ui-init-gtk.c:137 msgid "DISPLAY" msgstr "DISPLAY" #: ../bonobo/bonobo-ui-init-gtk.c:141 msgid "X screen to use" msgstr "X-skärm att använda" #: ../bonobo/bonobo-ui-init-gtk.c:141 msgid "SCREEN" msgstr "SKÄRM" #: ../bonobo/bonobo-ui-init-gtk.c:145 msgid "Make X calls synchronous" msgstr "Gör X-anrop synkrona" #: ../bonobo/bonobo-ui-init-gtk.c:151 msgid "Don't use X shared memory extension" msgstr "Använd inte X-tillägg för delat minne" #: ../bonobo/bonobo-ui-init-gtk.c:155 msgid "Program name as used by the window manager" msgstr "Programnamn som fönsterhanteraren använder" #: ../bonobo/bonobo-ui-init-gtk.c:155 msgid "NAME" msgstr "NAMN" #: ../bonobo/bonobo-ui-init-gtk.c:158 msgid "Program class as used by the window manager" msgstr "Programklass som fönsterhanteraren använder" #: ../bonobo/bonobo-ui-init-gtk.c:158 msgid "CLASS" msgstr "KLASS" #: ../bonobo/bonobo-ui-init-gtk.c:161 msgid "Gtk+ debugging flags to set" msgstr "Gdk+-felsökningsflaggor att ställa in" #: ../bonobo/bonobo-ui-init-gtk.c:164 msgid "Gtk+ debugging flags to unset" msgstr "Gtk+-felsökningsflaggor att nollställa" #: ../bonobo/bonobo-ui-init-gtk.c:167 msgid "Make all warnings fatal" msgstr "Gör alla varningar ödesdigra" #: ../bonobo/bonobo-ui-init-gtk.c:170 msgid "Load an additional Gtk module" msgstr "Läs in en ytterligare Gtk-modul" #: ../bonobo/bonobo-ui-init-gtk.c:170 msgid "MODULE" msgstr "MODUL" #: ../bonobo/bonobo-ui-init-gtk.c:186 msgid "GTK+" msgstr "GTK+" #: ../bonobo/bonobo-ui-main.c:278 msgid "Bonobo GUI support" msgstr "GUI-stöd i Bonobo" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "B_oth" msgstr "B_åda" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "T_ext" msgstr "Te_xt" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Hide t_ips" msgstr "Dölj t_ips" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Show t_ips" msgstr "Visa t_ips" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "_Hide toolbar" msgstr "_Dölj verktygsrad" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "Customi_ze" msgstr "Anpa_ssa" #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Customize the toolbar" msgstr "Anpassa verktygsraden" #: ../bonobo/bonobo-ui-toolbar.c:1115 msgid "is floating" msgstr "flyter" #: ../bonobo/bonobo-ui-toolbar.c:1116 msgid "whether the toolbar is floating" msgstr "huruvida verktygsraden flyter" # Osäker #: ../bonobo/bonobo-ui-toolbar.c:1162 msgid "Style of bevel around the toolbar" msgstr "Stil på avfasningen runt verktygsraden" #: ../bonobo/bonobo-ui-util.c:601 msgid "Could not display help for this application" msgstr "Kunde inte visa hjälp för detta program" #: ../bonobo/bonobo-ui-util.c:643 msgid "_Contents" msgstr "_Innehåll" #: ../bonobo/bonobo-ui-util.c:644 msgid "View help for this application" msgstr "Visa hjälp för detta program" #: ../bonobo/bonobo-window.c:345 msgid "Name of the window - used for configuration serialization." msgstr "Namn på fönstret - används för konfigurationsserialisering." #: ../bonobo/bonobo-zoomable.c:326 msgid "Zoom level" msgstr "Zoomnivå" #: ../bonobo/bonobo-zoomable.c:327 msgid "The degree of enlargment" msgstr "Graden av förstoring" #: ../bonobo/bonobo-zoomable.c:335 msgid "Minimum Zoom level" msgstr "Minsta zoomnivån" #: ../bonobo/bonobo-zoomable.c:336 msgid "The minimum degree of enlargment" msgstr "Minsta graden av förstoring" #: ../bonobo/bonobo-zoomable.c:344 msgid "Maximum Zoom level" msgstr "Största zoomnivån" #: ../bonobo/bonobo-zoomable.c:345 msgid "The maximum degree of enlargment" msgstr "Största graden av förstoring" #: ../bonobo/bonobo-zoomable.c:353 msgid "Has a minimum Zoom level" msgstr "Har en minsta zoomnivå" #: ../bonobo/bonobo-zoomable.c:354 msgid "Whether we have a valid minimum zoom level" msgstr "Huruvida vi har en giltig minsta zoomnivå" #: ../bonobo/bonobo-zoomable.c:361 msgid "Has a maximum Zoom level" msgstr "Har en största zoomnivå" #: ../bonobo/bonobo-zoomable.c:362 msgid "Whether we have a valid maximum zoom level" msgstr "Huruvida vi har en giltig största zoomnivå" #: ../bonobo/bonobo-zoomable.c:369 msgid "Is continuous" msgstr "Är kontinuerlig" #: ../bonobo/bonobo-zoomable.c:370 msgid "Whether we zoom continuously (as opposed to jumps)" msgstr "Huruvida vi zoomar kontinuerligt (i motsats till hopp)" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:1 msgid "About this application" msgstr "Om detta program" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:2 msgid "Select" msgstr "Markera" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:3 msgid "_About..." msgstr "_Om..." #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:4 msgid "_Edit" msgstr "_Redigera" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:5 #: ../tools/browser/bonobo-browser.xml.h:4 msgid "_File" msgstr "_Arkiv" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:6 msgid "_Select" msgstr "_Markera" #: ../samples/bonoboui/hello.c:63 msgid "This does nothing; it is only a demonstration." msgstr "Detta gör ingenting; det är bara en demonstration." #: ../samples/bonoboui/hello.c:145 msgid "BonoboUI-Hello." msgstr "BonoboUI-hej." #: ../samples/bonoboui/hello.c:217 msgid "Gnome Hello" msgstr "Gnome-hej" #. Create Label and put it in the Button: #: ../samples/bonoboui/hello.c:272 msgid "Hello, World!" msgstr "Hej världen!" #: ../samples/bonoboui/hello.c:312 msgid "Cannot init libbonoboui code" msgstr "Kan inte initiera libbonoboui-koden" #: ../samples/controls/bonobo-sample-controls.c:131 msgid "Could not initialize Bonobo UI" msgstr "Kunde inte initiera Bonobo-användargränssnitt" #: ../tools/browser/bonobo-browser.desktop.in.h:1 msgid "Bonobo Component Browser" msgstr "Bonobo-komponentbläddrare" #: ../tools/browser/bonobo-browser.desktop.in.h:2 msgid "Shows available Bonobo components" msgstr "Visar tillgängliga Bonobo-komponenter" #: ../tools/browser/bonobo-browser.xml.h:1 msgid "About this program..." msgstr "Om detta program..." #: ../tools/browser/bonobo-browser.xml.h:2 msgid "Close the current window" msgstr "Stäng det aktuella fönstret" #: ../tools/browser/bonobo-browser.xml.h:3 msgid "Open a new window" msgstr "Öppna ett nytt fönster" #: ../tools/browser/bonobo-browser.xml.h:5 msgid "_Help" msgstr "_Hjälp" #. Build the general tab #: ../tools/browser/component-details.c:109 msgid "General" msgstr "Allmänt" #: ../tools/browser/component-details.c:116 #: ../tools/browser/component-list.c:398 msgid "IID" msgstr "IID" #: ../tools/browser/component-details.c:117 msgid "Location" msgstr "Plats" #. Build the details tab #: ../tools/browser/component-details.c:167 msgid "Details" msgstr "Detaljer" #: ../tools/browser/component-details.c:168 msgid "Detailed Information" msgstr "Detaljerad information" #: ../tools/browser/component-list.c:367 #: ../tools/browser/window.c:283 msgid "Active" msgstr "Aktiv" #: ../tools/browser/component-list.c:388 msgid "Type" msgstr "Typ" #: ../tools/browser/window.c:162 msgid "Component Details" msgstr "Komponentdetaljer" #: ../tools/browser/window.c:208 msgid "Bonobo Browser" msgstr "Bonobo-bläddrare" #: ../tools/browser/window.c:210 msgid "Copyright 2001, The GNOME Foundation" msgstr "Copyright 2001, GNOME Foundation" #: ../tools/browser/window.c:211 msgid "Bonobo component browser" msgstr "Bonobo-komponentbläddrare" #: ../tools/browser/window.c:214 msgid "translator-credits" msgstr "" "Daniel Nylander\n" "Christian Rose\n" "\n" "Skicka synpunkter på översättningen till\n" "tp-sv@listor.tp-sv.se" #. create the window #: ../tools/browser/window.c:240 msgid "Component Browser" msgstr "Komponentbläddrare" #. Fill out the tool bar #: ../tools/browser/window.c:280 msgid "All" msgstr "Alla" #: ../tools/browser/window.c:286 msgid "Inactive" msgstr "Inaktiv" #~ msgid "Un dock the toolbar" #~ msgstr "Lösgör verktygsraden" #~ msgid "About this program" #~ msgstr "Om detta program" #~ msgid "Component" #~ msgstr "Komponent" #~ msgid "HOST" #~ msgstr "VÄRD" #~ msgid "PORT" #~ msgstr "PORT" #~ msgid "STYLE" #~ msgstr "STIL" #~ msgid "Has a minumum Zoom level" #~ msgstr "Har en minsta zoomnivå" #~ msgid "Extra Moniker factory" #~ msgstr "Extra monikerfabrik" #~ msgid "GConf moniker" #~ msgstr "GConf-moniker" #~ msgid "config indirect moniker" #~ msgstr "konfigurera indirekt moniker" #~ msgid "Unknown type" #~ msgstr "Okänd typ" #~ msgid "Key %s not found in configuration" #~ msgstr "Nycklen %s hittades inte i konfigurationen" #~ msgid "" #~ "An exception occured while trying to load data into the component with " #~ "PersistStorage" #~ msgstr "" #~ "Ett undantag inträffade vid försök att läsa in data i komponenten med " #~ "PersistStorage" #~ msgid "" #~ "An exception occured while trying to save data from the component with " #~ "PersistStorage" #~ msgstr "" #~ "Ett undantag inträffade vid försök att spara data från komponenten med " #~ "PersistStorage" #~ msgid "Can not bonobo_ui_init" #~ msgstr "Kan inte utföra bonobo_ui_init" #~ msgid "Select an object" #~ msgstr "Välj ett objekt" #~ msgid "Can not activate object_server" #~ msgstr "Kan inte aktivera objekt_server" #~ msgid "Can not bind object server to client_site" #~ msgstr "Kan inte binda objektserver till klient_sajt" #~ msgid "Can not activate server" #~ msgstr "Kan inte aktivera server" #~ msgid "Could not launch bonobo object." #~ msgstr "Kunde inte starta bonobo-objektet." #~ msgid "Could not launch Embeddable." #~ msgstr "Kunde inte starta Embeddable." #~ msgid "Could not launch Control." #~ msgstr "Kunde inte starta kontroll." #~ msgid "Can not bonobo_init" #~ msgstr "Kan inte utföra bonobo_init" #~ msgid "Cannot bonobo UI code" #~ msgstr "Kan inte bonobo-UI-kod" libbonoboui-2.24.5/po/sr@latin.po0000644000076400007640000003271311173072741013603 00000000000000# Serbian translation of libbonoboui # Courtesy of Prevod.org team (http://www.prevod.org/) -- 2003, 2004, 2005. # # This file is distributed under the same license as the libbonoboui package. # # Maintainer: Veljko M. Stanojević # Reviewed on 2004-02-03 by: Danilo Šegan # msgid "" msgstr "" "Project-Id-Version: libbonoboui\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2008-09-14 18:01+0200\n" "PO-Revision-Date: 2005-07-09 11:21+0200\n" "Last-Translator: Veljko M. Stanojevic \n" "Language-Team: Serbian (sr) \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && " "n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n" #: ../bonobo/bonobo-canvas-item.c:680 msgid "corba factory" msgstr "corba tvornica" #: ../bonobo/bonobo-canvas-item.c:681 msgid "The factory pointer" msgstr "Pokazivač tvornice" #: ../bonobo/bonobo-canvas-item.c:690 msgid "corba UI container" msgstr "sadržalac corba korisničkog sučelja" #: ../bonobo/bonobo-canvas-item.c:691 msgid "The User interface container" msgstr "Sadržalac korisničkog sučelja" #: ../bonobo/bonobo-dock-item-grip.c:255 msgid "Dock the toolbar" msgstr "Prikači traku sa alatima" #: ../bonobo/bonobo-dock-item-grip.c:256 msgid "Undock the toolbar" msgstr "Otkači traku sa alatima" #: ../bonobo/bonobo-dock-item.c:228 ../bonobo/bonobo-dock-item.c:229 #: ../bonobo/bonobo-ui-toolbar.c:1161 msgid "Shadow type" msgstr "Vrsta senke" #: ../bonobo/bonobo-dock-item.c:239 ../bonobo/bonobo-dock-item.c:240 #: ../bonobo/bonobo-ui-toolbar.c:1105 ../bonobo/bonobo-ui-toolbar.c:1106 msgid "Orientation" msgstr "Usmerenje" #: ../bonobo/bonobo-dock-item.c:250 ../bonobo/bonobo-dock-item.c:251 #: ../bonobo/bonobo-ui-toolbar.c:1124 ../bonobo/bonobo-ui-toolbar.c:1125 msgid "Preferred width" msgstr "Željena širina" #: ../bonobo/bonobo-dock-item.c:259 ../bonobo/bonobo-dock-item.c:260 #: ../bonobo/bonobo-ui-toolbar.c:1133 ../bonobo/bonobo-ui-toolbar.c:1134 msgid "Preferred height" msgstr "Željena visina" #: ../bonobo/bonobo-file-selector-util.c:355 msgid "Select a file to open" msgstr "Odaberite datoteku za otvaranje" #: ../bonobo/bonobo-file-selector-util.c:383 msgid "Select files to open" msgstr "Odaberite datoteke za otvaranje" #: ../bonobo/bonobo-file-selector-util.c:412 msgid "Select a filename to save" msgstr "Odaberite ime datoteke za snimanje" #: ../bonobo/bonobo-plug.c:423 msgid "Event Forwarding" msgstr "Prosleđivanje događaja" #: ../bonobo/bonobo-plug.c:424 msgid "Whether X events should be forwarded" msgstr "Da li treba proslediti Iks događaje" #: ../bonobo/bonobo-selector-widget.c:297 ../bonobo/bonobo-window.c:344 #: ../tools/browser/component-details.c:114 #: ../tools/browser/component-list.c:378 msgid "Name" msgstr "Ime" #: ../bonobo/bonobo-selector-widget.c:319 #: ../tools/browser/component-details.c:115 msgid "Description" msgstr "Opis" #: ../bonobo/bonobo-selector.c:343 msgid "Interfaces required" msgstr "Neophodne sprege" #: ../bonobo/bonobo-selector.c:344 msgid "" "A NULL-terminated array of interfaces which a server must support in order " "to be listed in the selector. Defaults to \"IDL:Bonobo/Embeddable:1.0\" if " "no interfaces are listed" msgstr "" "Praznom niskom (NULL) završeni niz sprega koje server mora podržavati da bi " "bio naveden u izbiraču. Podrazumevana vrednost je „IDL:Bonobo/" "Embeddable:1.0“ ukoliko nijedna sprega nije navedena" #: ../bonobo/bonobo-selector.c:346 msgid "Interface required entry" msgstr "Upis neophodne sprege" #: ../bonobo/bonobo-selector.c:347 msgid "One of the interfaces that's required" msgstr "Jedna od neophodnih sprega" #: ../bonobo/bonobo-ui-config-widget.c:265 msgid "Visible" msgstr "Vidljivo" #: ../bonobo/bonobo-ui-config-widget.c:272 msgid "_Show" msgstr "_Prikaži" #: ../bonobo/bonobo-ui-config-widget.c:279 msgid "_Hide" msgstr "_Sakrij" # tooltip -> oblačić #: ../bonobo/bonobo-ui-config-widget.c:285 msgid "_View tooltips" msgstr "Po_gledaj savete" #: ../bonobo/bonobo-ui-config-widget.c:290 msgid "Toolbars" msgstr "Trake sa alatima" #: ../bonobo/bonobo-ui-config-widget.c:300 msgid "toolbars" msgstr "trake sa alatima" #: ../bonobo/bonobo-ui-config-widget.c:311 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "Look" msgstr "Izgled" #: ../bonobo/bonobo-ui-config-widget.c:320 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "_Icon" msgstr "_Ikona" #: ../bonobo/bonobo-ui-config-widget.c:326 msgid "_Text and Icon" msgstr "_Tekst i ikona" #: ../bonobo/bonobo-ui-config-widget.c:332 msgid "Text only" msgstr "Samo tekst" #: ../bonobo/bonobo-ui-config-widget.c:338 msgid "_Priority text only" msgstr "Samo _važan tekst" #: ../bonobo/bonobo-ui-engine.c:91 msgid "Debug" msgstr "Otklanjanje grešaka" #: ../bonobo/bonobo-ui-engine.c:91 msgid "_Dump XML" msgstr "Iz_baci XML" #: ../bonobo/bonobo-ui-engine.c:92 msgid "Dump the entire UI's XML description to the console" msgstr "Izbaci sav opis korisničkog sučelja kao XML na konzolu" #: ../bonobo/bonobo-ui-engine-config.c:522 msgid "Configure UI" msgstr "Podešavanje korisničkog sučelja" #: ../bonobo/bonobo-ui-init-gtk.c:131 msgid "Gdk debugging flags to set" msgstr "Koje Gdk zastavice za otklanjanje greški postaviti" #: ../bonobo/bonobo-ui-init-gtk.c:131 ../bonobo/bonobo-ui-init-gtk.c:134 #: ../bonobo/bonobo-ui-init-gtk.c:162 ../bonobo/bonobo-ui-init-gtk.c:165 msgid "FLAGS" msgstr "ARGUMENTI" #: ../bonobo/bonobo-ui-init-gtk.c:134 msgid "Gdk debugging flags to unset" msgstr "Koje Gdk argumente za otklanjanje greški skloniti" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "X display to use" msgstr "Koji Iks monitor koristiti" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "DISPLAY" msgstr "MONITOR" #: ../bonobo/bonobo-ui-init-gtk.c:142 msgid "X screen to use" msgstr "Iks ekran koji će se koristiti" #: ../bonobo/bonobo-ui-init-gtk.c:142 msgid "SCREEN" msgstr "EKRAN" #: ../bonobo/bonobo-ui-init-gtk.c:146 msgid "Make X calls synchronous" msgstr "Uskladi Iks pozive" #: ../bonobo/bonobo-ui-init-gtk.c:152 msgid "Don't use X shared memory extension" msgstr "Ne koristi proširenje za deljenu memoriju Iksa" #: ../bonobo/bonobo-ui-init-gtk.c:156 msgid "Program name as used by the window manager" msgstr "Naziv programa koji koristi upravljač prozorima" #: ../bonobo/bonobo-ui-init-gtk.c:156 msgid "NAME" msgstr "NAZIV" #: ../bonobo/bonobo-ui-init-gtk.c:159 msgid "Program class as used by the window manager" msgstr "Klasa programa koju koristi upravljač prozorima" #: ../bonobo/bonobo-ui-init-gtk.c:159 msgid "CLASS" msgstr "KLASA" #: ../bonobo/bonobo-ui-init-gtk.c:162 msgid "Gtk+ debugging flags to set" msgstr "Koje Gtk+ zastavice za otklanjanje greški postaviti" #: ../bonobo/bonobo-ui-init-gtk.c:165 msgid "Gtk+ debugging flags to unset" msgstr "Koje Gtk+ zastavice za otklanjanje greški skloniti" #: ../bonobo/bonobo-ui-init-gtk.c:168 msgid "Make all warnings fatal" msgstr "Učini sva upozorenja kobnim" #: ../bonobo/bonobo-ui-init-gtk.c:171 msgid "Load an additional Gtk module" msgstr "Učitaj dodatni Gtk modul" #: ../bonobo/bonobo-ui-init-gtk.c:171 msgid "MODULE" msgstr "MODUL" #: ../bonobo/bonobo-ui-init-gtk.c:187 msgid "GTK+" msgstr "GTK+" #: ../bonobo/bonobo-ui-main.c:278 msgid "Bonobo GUI support" msgstr "Bonobo podrška za grafičko korisničko sučelje" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "B_oth" msgstr "_Oba" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "T_ext" msgstr "T_ekst" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Hide t_ips" msgstr "Sakrij s_avete" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Show t_ips" msgstr "Prikaži sa_vete" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "_Hide toolbar" msgstr "_Sakrij traku sa alatima" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "Customi_ze" msgstr "Prila_godi" #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Customize the toolbar" msgstr "Prilagodi traku sa alatima" #: ../bonobo/bonobo-ui-toolbar.c:1115 msgid "is floating" msgstr "je plutajuća" #: ../bonobo/bonobo-ui-toolbar.c:1116 msgid "whether the toolbar is floating" msgstr "da li je traka sa alatima plutajuća" #: ../bonobo/bonobo-ui-toolbar.c:1162 msgid "Style of bevel around the toolbar" msgstr "Izgled kose ivice oko trake sa alatima" #: ../bonobo/bonobo-ui-util.c:601 msgid "Could not display help for this application" msgstr "Ne mogu da prikažem pomoć za ovaj program" #: ../bonobo/bonobo-ui-util.c:643 msgid "_Contents" msgstr "_Sadržaj" #: ../bonobo/bonobo-ui-util.c:644 msgid "View help for this application" msgstr "Pogledaj pomoć za ovaj program" #: ../bonobo/bonobo-window.c:345 msgid "Name of the window - used for configuration serialization." msgstr "Naziv prozora — koristi se za serijalizaciju podešavanja." #: ../bonobo/bonobo-zoomable.c:326 msgid "Zoom level" msgstr "Nivo uvećanja" #: ../bonobo/bonobo-zoomable.c:327 msgid "The degree of enlargment" msgstr "Stepen uvećanja" #: ../bonobo/bonobo-zoomable.c:335 msgid "Minimum Zoom level" msgstr "Najmanji nivo uvećanja" #: ../bonobo/bonobo-zoomable.c:336 msgid "The minimum degree of enlargment" msgstr "Najmanji stepen uvećanja" #: ../bonobo/bonobo-zoomable.c:344 msgid "Maximum Zoom level" msgstr "Najveći nivo uvećanja" #: ../bonobo/bonobo-zoomable.c:345 msgid "The maximum degree of enlargment" msgstr "Najveći stepen uvećanja" #: ../bonobo/bonobo-zoomable.c:353 msgid "Has a minimum Zoom level" msgstr "Ima najniži nivo uveličanja" #: ../bonobo/bonobo-zoomable.c:354 msgid "Whether we have a valid minimum zoom level" msgstr "Da li imamo ispravan najmanji nivo uvećanja" #: ../bonobo/bonobo-zoomable.c:361 msgid "Has a maximum Zoom level" msgstr "Ima najveći nivo uvećanja" #: ../bonobo/bonobo-zoomable.c:362 msgid "Whether we have a valid maximum zoom level" msgstr "Da li imamo ispravan najveći nivo uvećanja" #: ../bonobo/bonobo-zoomable.c:369 msgid "Is continuous" msgstr "Neprekidan je" #: ../bonobo/bonobo-zoomable.c:370 msgid "Whether we zoom continuously (as opposed to jumps)" msgstr "Da li neprekidno uvećavamo i umanjujemo (nasuprot po koracima)" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:1 msgid "About this application" msgstr "O ovom programu" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:2 msgid "Select" msgstr "Odaberi" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:3 msgid "_About..." msgstr "_O programu..." #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:4 msgid "_Edit" msgstr "_Uređivanje" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:5 #: ../tools/browser/bonobo-browser.xml.h:4 msgid "_File" msgstr "_Datoteka" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:6 msgid "_Select" msgstr "Oda_beri" # Sviđa mi se „puka“, svaka čast Veljko ;) — Danilo #: ../samples/bonoboui/hello.c:63 msgid "This does nothing; it is only a demonstration." msgstr "Ovo ne radi ništa, puka demonstracija." #: ../samples/bonoboui/hello.c:145 msgid "BonoboUI-Hello." msgstr "BonoboUI pozdrav" #: ../samples/bonoboui/hello.c:217 msgid "Gnome Hello" msgstr "Pozdrav Gnoma" #. Create Label and put it in the Button: #: ../samples/bonoboui/hello.c:272 msgid "Hello, World!" msgstr "Zdravo svete!" #: ../samples/bonoboui/hello.c:312 msgid "Cannot init libbonoboui code" msgstr "Ne mogu da pokrenem kod libbonoboui-a" #: ../samples/controls/bonobo-sample-controls.c:131 msgid "Could not initialize Bonobo UI" msgstr "Neuspelo pokretanje Bonobo grafičkog sučelja" #: ../tools/browser/bonobo-browser.desktop.in.h:1 msgid "Bonobo Component Browser" msgstr "Razgledač Bonobo komponenti" #: ../tools/browser/bonobo-browser.desktop.in.h:2 msgid "Shows available Bonobo components" msgstr "Prikaži dostupne Bonobo komponente" #: ../tools/browser/bonobo-browser.xml.h:1 msgid "About this program..." msgstr "O ovom programu..." #: ../tools/browser/bonobo-browser.xml.h:2 msgid "Close the current window" msgstr "Zatvori tekući prozor" #: ../tools/browser/bonobo-browser.xml.h:3 msgid "Open a new window" msgstr "Otvori novi prozor" #: ../tools/browser/bonobo-browser.xml.h:5 msgid "_Help" msgstr "_Pomoć" #. Build the general tab #: ../tools/browser/component-details.c:109 msgid "General" msgstr "Opšte" #: ../tools/browser/component-details.c:116 #: ../tools/browser/component-list.c:398 msgid "IID" msgstr "IID" #: ../tools/browser/component-details.c:117 msgid "Location" msgstr "Putanja" #. Build the details tab #: ../tools/browser/component-details.c:167 msgid "Details" msgstr "Detalji" #: ../tools/browser/component-details.c:168 msgid "Detailed Information" msgstr "Detaljni podaci" #: ../tools/browser/component-list.c:367 ../tools/browser/window.c:283 msgid "Active" msgstr "Aktivna" #: ../tools/browser/component-list.c:388 msgid "Type" msgstr "Vrsta" #: ../tools/browser/window.c:162 msgid "Component Details" msgstr "Detalji o komponenti" #: ../tools/browser/window.c:208 msgid "Bonobo Browser" msgstr "Bonobo razgledač" #: ../tools/browser/window.c:210 msgid "Copyright 2001, The GNOME Foundation" msgstr "Sva prava zadržana 2001, Gnom Zadužbina" #: ../tools/browser/window.c:211 msgid "Bonobo component browser" msgstr "Razgledač Bonobo komponenti" #: ../tools/browser/window.c:214 msgid "translator-credits" msgstr "" "Veljko M. Stanojević \n" "\n" "http://prevod.org — prevod na srpski jezik." #. create the window #: ../tools/browser/window.c:240 msgid "Component Browser" msgstr "Razgledač komponenti" #. Fill out the tool bar #: ../tools/browser/window.c:280 msgid "All" msgstr "Sve" #: ../tools/browser/window.c:286 msgid "Inactive" msgstr "Neaktivna" libbonoboui-2.24.5/po/is.po0000644000076400007640000003036511173072741012443 00000000000000# Icelandic translation of libbonoboui # Copyright (C) 2003 Free Software Foundation, Inc. # This file is distributed under the same license as the libbonoboui package. # Richard Allen , 2003 # msgid "" msgstr "" "Project-Id-Version: libbonoboui 2.4\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2005-09-10 18:44+0200\n" "PO-Revision-Date: 2003-08-18 17:10+0000\n" "Last-Translator: Richard Allen \n" "Language-Team: is \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../bonobo/bonobo-canvas-item.c:683 msgid "corba factory" msgstr "corba verksmiðja" #: ../bonobo/bonobo-canvas-item.c:684 msgid "The factory pointer" msgstr "Bendilsverksmiðja" #: ../bonobo/bonobo-canvas-item.c:693 msgid "corba UI container" msgstr "corba UI gámur" #: ../bonobo/bonobo-canvas-item.c:694 msgid "The User interface container" msgstr "Notandaviðmótsgámurinn" #: ../bonobo/bonobo-dock-item-grip.c:257 msgid "Dock the toolbar" msgstr "Setja tækjastikuna á spjaldið" #: ../bonobo/bonobo-dock-item-grip.c:258 #, fuzzy msgid "Undock the toolbar" msgstr "Taka tækjastikuna af spjaldinu" #: ../bonobo/bonobo-dock-item.c:235 ../bonobo/bonobo-dock-item.c:236 #: ../bonobo/bonobo-ui-toolbar.c:1175 msgid "Shadow type" msgstr "Skuggagerð" #: ../bonobo/bonobo-dock-item.c:246 ../bonobo/bonobo-dock-item.c:247 #: ../bonobo/bonobo-ui-toolbar.c:1119 ../bonobo/bonobo-ui-toolbar.c:1120 msgid "Orientation" msgstr "Snúningur" #: ../bonobo/bonobo-dock-item.c:257 ../bonobo/bonobo-dock-item.c:258 #: ../bonobo/bonobo-ui-toolbar.c:1138 ../bonobo/bonobo-ui-toolbar.c:1139 msgid "Preferred width" msgstr "Umbeðin breydd" #: ../bonobo/bonobo-dock-item.c:266 ../bonobo/bonobo-dock-item.c:267 #: ../bonobo/bonobo-ui-toolbar.c:1147 ../bonobo/bonobo-ui-toolbar.c:1148 msgid "Preferred height" msgstr "Umbeðin hæð" #: ../bonobo/bonobo-file-selector-util.c:357 msgid "Select a file to open" msgstr "Veldu skrá til að opna" #: ../bonobo/bonobo-file-selector-util.c:385 msgid "Select files to open" msgstr "Veldu skrár til að opna" #: ../bonobo/bonobo-file-selector-util.c:414 msgid "Select a filename to save" msgstr "Veldu skráarheiti til að vista í" #: ../bonobo/bonobo-plug.c:425 msgid "Event Forwarding" msgstr "Framsenda atburði" #: ../bonobo/bonobo-plug.c:426 msgid "Whether X events should be forwarded" msgstr "Hvort framsenda skuli X viðburðum" #: ../bonobo/bonobo-selector-widget.c:302 ../bonobo/bonobo-window.c:346 #: ../tools/browser/component-details.c:114 #: ../tools/browser/component-list.c:381 msgid "Name" msgstr "Heiti" #: ../bonobo/bonobo-selector-widget.c:324 #: ../tools/browser/component-details.c:115 msgid "Description" msgstr "Lýsing" #: ../bonobo/bonobo-selector.c:345 msgid "Interfaces required" msgstr "Viðmót nauðsynlegt" #: ../bonobo/bonobo-selector.c:346 msgid "" "A NULL-terminated array of interfaces which a server must support in order " "to be listed in the selector. Defaults to \"IDL:Bonobo/Embeddable:1.0\" if " "no interfaces are listed" msgstr "" "Listi af tækjum sem er endaður á NULL sem þjónn verður að styðja til þess að " "fá að komast á listann. Sjálfgefið er \"IDL:Bonobo/Embeddable:1.0\" ef engin " "tæki eru á listanum." #: ../bonobo/bonobo-selector.c:348 msgid "Interface required entry" msgstr "Tæki er nauðsynlegt færsla" #: ../bonobo/bonobo-selector.c:349 msgid "One of the interfaces that's required" msgstr "Eitt af tækjunum sem þarf" #: ../bonobo/bonobo-ui-config-widget.c:268 msgid "Visible" msgstr "Sýnilegt" #: ../bonobo/bonobo-ui-config-widget.c:275 msgid "_Show" msgstr "_Sýna" #: ../bonobo/bonobo-ui-config-widget.c:282 msgid "_Hide" msgstr "_Fela" #: ../bonobo/bonobo-ui-config-widget.c:288 msgid "_View tooltips" msgstr "_Sjá ábendingar" #: ../bonobo/bonobo-ui-config-widget.c:293 msgid "Toolbars" msgstr "Tækjastikur" #: ../bonobo/bonobo-ui-config-widget.c:303 msgid "toolbars" msgstr "tækjastikur" #: ../bonobo/bonobo-ui-config-widget.c:314 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "Look" msgstr "Skoða" #: ../bonobo/bonobo-ui-config-widget.c:323 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "_Icon" msgstr "_Táknmynd" #: ../bonobo/bonobo-ui-config-widget.c:329 msgid "_Text and Icon" msgstr "Tákn_mynd og texti" #: ../bonobo/bonobo-ui-config-widget.c:335 msgid "Text only" msgstr "Bara texti" #: ../bonobo/bonobo-ui-config-widget.c:341 msgid "_Priority text only" msgstr "_Forgangstexti eingöngu" #: ../bonobo/bonobo-ui-engine.c:90 msgid "Debug" msgstr "Aflúsa" #: ../bonobo/bonobo-ui-engine.c:90 msgid "_Dump XML" msgstr "_Rita XML" #: ../bonobo/bonobo-ui-engine.c:91 msgid "Dump the entire UI's XML description to the console" msgstr "Rita allann XML kóðann úr viðmótinu á stjórnskjáinn" #: ../bonobo/bonobo-ui-engine-config.c:522 msgid "Configure UI" msgstr "Stilla viðmótið" #: ../bonobo/bonobo-ui-init-gtk.c:113 msgid "Gdk debugging flags to set" msgstr "Setja Gdk aflúsunarrofa" #: ../bonobo/bonobo-ui-init-gtk.c:113 ../bonobo/bonobo-ui-init-gtk.c:116 #: ../bonobo/bonobo-ui-init-gtk.c:144 ../bonobo/bonobo-ui-init-gtk.c:147 msgid "FLAGS" msgstr "FLAGS" #: ../bonobo/bonobo-ui-init-gtk.c:116 msgid "Gdk debugging flags to unset" msgstr "Fjarlægja Gdk aflúsunarrofa" #: ../bonobo/bonobo-ui-init-gtk.c:120 msgid "X display to use" msgstr "X stöð sem nota skal" #: ../bonobo/bonobo-ui-init-gtk.c:120 msgid "DISPLAY" msgstr "DISPLAY" #: ../bonobo/bonobo-ui-init-gtk.c:124 msgid "X screen to use" msgstr "X skjár sem nota skal" #: ../bonobo/bonobo-ui-init-gtk.c:124 msgid "SCREEN" msgstr "SCREEN" #: ../bonobo/bonobo-ui-init-gtk.c:128 msgid "Make X calls synchronous" msgstr "Gera X köllin samhæfð" #: ../bonobo/bonobo-ui-init-gtk.c:134 msgid "Don't use X shared memory extension" msgstr "Ekki nota deilt minni í X" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "Program name as used by the window manager" msgstr "Heiti forrita eru notuð af gluggastjóranum" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "NAME" msgstr "HEITI" #: ../bonobo/bonobo-ui-init-gtk.c:141 msgid "Program class as used by the window manager" msgstr "Flokkar forrita eru notaðir af gluggastjóranum" #: ../bonobo/bonobo-ui-init-gtk.c:141 msgid "CLASS" msgstr "FLOKKUR" #: ../bonobo/bonobo-ui-init-gtk.c:144 msgid "Gtk+ debugging flags to set" msgstr "Setja Gtk+ aflúsunarrofa" #: ../bonobo/bonobo-ui-init-gtk.c:147 msgid "Gtk+ debugging flags to unset" msgstr "Fjarlægja Gtk+ aflúsunarrofa" #: ../bonobo/bonobo-ui-init-gtk.c:150 msgid "Make all warnings fatal" msgstr "Gera allar aðvaranir banvænar" #: ../bonobo/bonobo-ui-init-gtk.c:153 msgid "Load an additional Gtk module" msgstr "Lesa inn Gtk einingu til viðbótar" #: ../bonobo/bonobo-ui-init-gtk.c:153 msgid "MODULE" msgstr "EINING" #: ../bonobo/bonobo-ui-init-gtk.c:162 msgid "GTK+" msgstr "GTK+" #: ../bonobo/bonobo-ui-main.c:278 msgid "Bonobo GUI support" msgstr "Bonobo GUI stuðningur" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "B_oth" msgstr "_Bæði" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "T_ext" msgstr "T_exti" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Hide t_ips" msgstr "_Fela ábendingar" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Show t_ips" msgstr "_Sýna ábendingar" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "_Hide toolbar" msgstr "_Felt tækjastiku" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "Customi_ze" msgstr "Sérs_níða" #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Customize the toolbar" msgstr "Sérsníða tækjastikuna" #: ../bonobo/bonobo-ui-toolbar.c:1129 msgid "is floating" msgstr "flýtur" #: ../bonobo/bonobo-ui-toolbar.c:1130 msgid "whether the toolbar is floating" msgstr "hvort tækjastikan flýtur" #: ../bonobo/bonobo-ui-toolbar.c:1176 msgid "Style of bevel around the toolbar" msgstr "Stíll rammans utanum tækjastikuna" #: ../bonobo/bonobo-ui-util.c:630 msgid "_Contents" msgstr "_Innihald" #: ../bonobo/bonobo-ui-util.c:631 msgid "View help for this application" msgstr "Sjá hlálp þessa forrits" #: ../bonobo/bonobo-window.c:347 msgid "Name of the window - used for configuration serialization." msgstr "Heiti gluggans - notað til að raða stillingum" #: ../bonobo/bonobo-zoomable.c:326 msgid "Zoom level" msgstr "Rennistig" #: ../bonobo/bonobo-zoomable.c:327 msgid "The degree of enlargment" msgstr "Umfang stækkunar" #: ../bonobo/bonobo-zoomable.c:335 msgid "Minimum Zoom level" msgstr "Lágmarks rennistig" #: ../bonobo/bonobo-zoomable.c:336 msgid "The minimum degree of enlargment" msgstr "Lágmarks umfang stækkunar" #: ../bonobo/bonobo-zoomable.c:344 msgid "Maximum Zoom level" msgstr "Hámarks rennistig" #: ../bonobo/bonobo-zoomable.c:345 msgid "The maximum degree of enlargment" msgstr "Hámarks umfang stækkunar" #: ../bonobo/bonobo-zoomable.c:353 msgid "Has a minimum Zoom level" msgstr "Hefur lágmarksrennigildi" #: ../bonobo/bonobo-zoomable.c:354 msgid "Whether we have a valid minimum zoom level" msgstr "Hvort við erum með gilt lágmarksrennigildi" #: ../bonobo/bonobo-zoomable.c:361 msgid "Has a maximum Zoom level" msgstr "Hefur hámarksrennigildi" #: ../bonobo/bonobo-zoomable.c:362 msgid "Whether we have a valid maximum zoom level" msgstr "Hvort við erum með gilt hámarksrennigildi" #: ../bonobo/bonobo-zoomable.c:369 msgid "Is continuous" msgstr "er mjúklegt" #: ../bonobo/bonobo-zoomable.c:370 msgid "Whether we zoom continuously (as opposed to jumps)" msgstr "Hvort við rennum að mjúklega (en ekki í hoppum)" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:1 msgid "About this application" msgstr "Um þetta forrit" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:2 msgid "Select" msgstr "Velja" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:3 msgid "_About..." msgstr "_Um..." #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:4 msgid "_Edit" msgstr "_Sýsla" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:5 #: ../tools/browser/bonobo-browser.xml.h:4 msgid "_File" msgstr "_Skrá" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:6 msgid "_Select" msgstr "_Velja" #: ../samples/bonoboui/hello.c:63 msgid "This does nothing; it is only a demonstration." msgstr "Þetta er bara sýnishorn og gerir ekkert." #: ../samples/bonoboui/hello.c:145 msgid "BonoboUI-Hello." msgstr "Halló BonoboUI" #: ../samples/bonoboui/hello.c:217 msgid "Gnome Hello" msgstr "Halló Gnome" #. Create Label and put it in the Button: #: ../samples/bonoboui/hello.c:272 msgid "Hello, World!" msgstr "Hæ heimur!" #: ../samples/bonoboui/hello.c:312 msgid "Cannot init libbonoboui code" msgstr "Gat ekki frumstilt libbonoboui-kóðann" #: ../samples/controls/bonobo-sample-controls.c:131 msgid "Could not initialize Bonobo UI" msgstr "Gat ekki frumstilt Bonobo viðmótið" #: ../tools/browser/bonobo-browser.desktop.in.h:1 msgid "Bonobo Component Browser" msgstr "" #: ../tools/browser/bonobo-browser.desktop.in.h:2 msgid "Shows available Bonobo components" msgstr "" #: ../tools/browser/bonobo-browser.xml.h:1 #, fuzzy msgid "About this program..." msgstr "Um þetta forrit" #: ../tools/browser/bonobo-browser.xml.h:2 msgid "Close the current window" msgstr "" #: ../tools/browser/bonobo-browser.xml.h:3 msgid "Open a new window" msgstr "" #: ../tools/browser/bonobo-browser.xml.h:5 #, fuzzy msgid "_Help" msgstr "_Fela" #. Build the general tab #: ../tools/browser/component-details.c:109 msgid "General" msgstr "" #: ../tools/browser/component-details.c:116 #: ../tools/browser/component-list.c:401 msgid "IID" msgstr "" #: ../tools/browser/component-details.c:117 msgid "Location" msgstr "" #. Build the details tab #: ../tools/browser/component-details.c:167 msgid "Details" msgstr "" #: ../tools/browser/component-details.c:168 msgid "Detailed Information" msgstr "" #: ../tools/browser/component-list.c:370 ../tools/browser/window.c:290 msgid "Active" msgstr "" #: ../tools/browser/component-list.c:391 msgid "Type" msgstr "" #: ../tools/browser/window.c:170 msgid "Component Details" msgstr "" #: ../tools/browser/window.c:215 msgid "Bonobo Browser" msgstr "" #: ../tools/browser/window.c:216 msgid "Copyright 2001, The GNOME Foundation" msgstr "" #: ../tools/browser/window.c:217 msgid "Bonobo component browser" msgstr "" #. create the window #: ../tools/browser/window.c:247 msgid "Component Browser" msgstr "" #. Fill out the tool bar #: ../tools/browser/window.c:287 msgid "All" msgstr "" #: ../tools/browser/window.c:293 msgid "Inactive" msgstr "" libbonoboui-2.24.5/po/el.po0000644000076400007640000004330711173072741012430 00000000000000# translation of el.po to Greek # Greek translation of libbonoboui. # Copyright (C) 2003 Simos Xenitellis. # # kostas : 05Jan2003 updated translation for Gnome 2.1x # # simos: 71 messages, 16Aug2002, initial translation. # simos: 92 messages, 05Nov2002, completed translation.. # kostas : 03Sep2003, 96 messages,updated translation for Gnome 2.4. # Simos Xenitellis , 2002,2003. # Kostas Papadimas , 2003. # Jennie Petoumenou , 2009. msgid "" msgstr "" "Project-Id-Version: el\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2009-03-14 18:22+0200\n" "PO-Revision-Date: 2009-03-01 15:33+0100\n" "Last-Translator: Jennie Petoumenou \n" "Language-Team: Greek \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Generator: Lokalize 0.2\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" # #: ../bonobo/bonobo-canvas-item.c:680 msgid "corba factory" msgstr "εργοστάσιο CORBA" #: ../bonobo/bonobo-canvas-item.c:681 msgid "The factory pointer" msgstr "Ο δείκτης εργοστασίου" #: ../bonobo/bonobo-canvas-item.c:690 msgid "corba UI container" msgstr "δοχείο γραφικής διασύνδεσης (UI) CORBA" #: ../bonobo/bonobo-canvas-item.c:691 msgid "The User interface container" msgstr "Το δοχείο γραφικής διασύνδεσης" #: ../bonobo/bonobo-dock-item-grip.c:254 msgid "Dock the toolbar" msgstr "Αγκύρωση της εργαλειοθήκης" #: ../bonobo/bonobo-dock-item-grip.c:255 msgid "Undock the toolbar" msgstr "Απαγκύρωση εργαλειοθήκης" #: ../bonobo/bonobo-dock-item.c:225 ../bonobo/bonobo-dock-item.c:226 #: ../bonobo/bonobo-ui-toolbar.c:1163 msgid "Shadow type" msgstr "Τύπος σκιάς" #: ../bonobo/bonobo-dock-item.c:236 ../bonobo/bonobo-dock-item.c:237 #: ../bonobo/bonobo-ui-toolbar.c:1107 ../bonobo/bonobo-ui-toolbar.c:1108 msgid "Orientation" msgstr "Προσανατολισμός" #: ../bonobo/bonobo-dock-item.c:247 ../bonobo/bonobo-dock-item.c:248 #: ../bonobo/bonobo-ui-toolbar.c:1126 ../bonobo/bonobo-ui-toolbar.c:1127 msgid "Preferred width" msgstr "Επιθυμητό πλάτος" #: ../bonobo/bonobo-dock-item.c:256 ../bonobo/bonobo-dock-item.c:257 #: ../bonobo/bonobo-ui-toolbar.c:1135 ../bonobo/bonobo-ui-toolbar.c:1136 msgid "Preferred height" msgstr "Επιθυμητό ύψος" #: ../bonobo/bonobo-file-selector-util.c:350 msgid "Select a file to open" msgstr "Επιλογή αρχείου προς ανάγνωση" #: ../bonobo/bonobo-file-selector-util.c:378 msgid "Select files to open" msgstr "Επιλογή αρχείων για άνοιγμα" #: ../bonobo/bonobo-file-selector-util.c:407 msgid "Select a filename to save" msgstr "Επιλογή ονόματος αρχείου για αποθήκευση" #: ../bonobo/bonobo-plug.c:425 msgid "Event Forwarding" msgstr "Προώθηση Γεγονότων" #: ../bonobo/bonobo-plug.c:426 msgid "Whether X events should be forwarded" msgstr "Πότε τα γεγονότα Χ πρέπει να προωθούνται" # #-#-#-#-# bonobo.HEAD.el.po (bonobo 0.34) #-#-#-#-# # # #-#-#-#-# bug-buddy.bug-buddy-2-0.el.po (bug-buddy 2.0.6) #-#-#-#-# # # #-#-#-#-# gnome-libs.gnome-libs-1-0.el.po (gnome-libs 1.2.12) #-#-#-#-# # # #-#-#-#-# nautilus.nautilus-gnome-1.el.po (nautilus 0.8.3) #-#-#-#-# # #: ../bonobo/bonobo-selector-widget.c:300 ../bonobo/bonobo-window.c:347 #: ../tools/browser/component-details.c:108 #: ../tools/browser/component-list.c:369 msgid "Name" msgstr "Όνομα" # #-#-#-#-# gnome-1.4-core-compendium.po (bonobo 0.34) #-#-#-#-# # #-#-#-#-# bonobo.HEAD.el.po (bonobo 0.34) #-#-#-#-# # # #-#-#-#-# bug-buddy.bug-buddy-2-0.el.po (bug-buddy 2.0.6) #-#-#-#-# # #: ../bonobo/bonobo-selector-widget.c:322 #: ../tools/browser/component-details.c:109 msgid "Description" msgstr "Περιγραφή" #: ../bonobo/bonobo-selector.c:343 msgid "Interfaces required" msgstr "Διασυνδέσεις που απαιτούνται" #: ../bonobo/bonobo-selector.c:344 msgid "" "A NULL-terminated array of interfaces which a server must support in order " "to be listed in the selector. Defaults to \"IDL:Bonobo/Embeddable:1.0\" if " "no interfaces are listed" msgstr "" "Ένας πίνακας διασυνδέσεων διαχωριζόμενος με χαρακτήρες NULL που ο " "εξυπηρετητής πρέπει να υποστηρίζει για να εμφανίζεται στον επιλογέα. Εξ " "ορισμού το \"IDL:Bonobo/Embeddable:1.0\" αν δεν εμφανίζονται άλλες " "διασυνδέσεις" #: ../bonobo/bonobo-selector.c:346 msgid "Interface required entry" msgstr "Καταχώρηση απαίτησης διασύνδεσης" #: ../bonobo/bonobo-selector.c:347 msgid "One of the interfaces that's required" msgstr "Μία από τις διασυνδέσεις που απαιτούνται" #: ../bonobo/bonobo-ui-config-widget.c:267 msgid "Visible" msgstr "Ορατό" # #: ../bonobo/bonobo-ui-config-widget.c:274 msgid "_Show" msgstr "_Εμφάνιση" #: ../bonobo/bonobo-ui-config-widget.c:281 msgid "_Hide" msgstr "_Απόκρυψη" #: ../bonobo/bonobo-ui-config-widget.c:287 msgid "_View tooltips" msgstr "_Εμφάνιση υποδείξεων" # #: ../bonobo/bonobo-ui-config-widget.c:292 msgid "Toolbars" msgstr "Εργαλειοθήκες" # #: ../bonobo/bonobo-ui-config-widget.c:302 msgid "toolbars" msgstr "εργαλειοθήκες" #: ../bonobo/bonobo-ui-config-widget.c:313 #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "Look" msgstr "Εμφάνιση" #: ../bonobo/bonobo-ui-config-widget.c:322 #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "_Icon" msgstr "_Εικονίδιο" #: ../bonobo/bonobo-ui-config-widget.c:328 msgid "_Text and Icon" msgstr "_Κείμενο και Εικονίδια" #: ../bonobo/bonobo-ui-config-widget.c:334 msgid "Text only" msgstr "Μόνο κείμενο" #: ../bonobo/bonobo-ui-config-widget.c:340 msgid "_Priority text only" msgstr "Μόνο κείμενο _προτεραιότητας" #: ../bonobo/bonobo-ui-engine.c:93 msgid "Debug" msgstr "Αποσφαλμάτωση" #: ../bonobo/bonobo-ui-engine.c:93 msgid "_Dump XML" msgstr "_Απόρριψη XML" #: ../bonobo/bonobo-ui-engine.c:94 msgid "Dump the entire UI's XML description to the console" msgstr "Απόρριψη ολόκληρης της περιγραφής UI's XML στην κονσόλα" #: ../bonobo/bonobo-ui-engine-config.c:524 msgid "Configure UI" msgstr "Ρύθμιση Διασύνδεσης Χρήστη" # #: ../bonobo/bonobo-ui-init-gtk.c:131 msgid "Gdk debugging flags to set" msgstr "Διακόπτες αποσφαλμάτωσης του Gdk για ενεργοποίηση" # #: ../bonobo/bonobo-ui-init-gtk.c:131 ../bonobo/bonobo-ui-init-gtk.c:134 #: ../bonobo/bonobo-ui-init-gtk.c:162 ../bonobo/bonobo-ui-init-gtk.c:165 msgid "FLAGS" msgstr "FLAGS" # #: ../bonobo/bonobo-ui-init-gtk.c:134 msgid "Gdk debugging flags to unset" msgstr "Διακόπτες αποσφαλμάτωσης του Gdk για απενεργοποίηση" # #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "X display to use" msgstr "Επιλογή οθόνης X προς χρήση" # #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "DISPLAY" msgstr "ΟΘΌΝΗ" # #: ../bonobo/bonobo-ui-init-gtk.c:142 msgid "X screen to use" msgstr "Οθόνη X προς χρήση" #: ../bonobo/bonobo-ui-init-gtk.c:142 msgid "SCREEN" msgstr "ΟΘΌΝΗ" # #: ../bonobo/bonobo-ui-init-gtk.c:146 msgid "Make X calls synchronous" msgstr "Χρήση σύγχρονων κλήσεων X" # #: ../bonobo/bonobo-ui-init-gtk.c:152 msgid "Don't use X shared memory extension" msgstr "Απενεργοποίηση επεκτασης χρήσης κοινής μνήμης στα X" # #: ../bonobo/bonobo-ui-init-gtk.c:156 msgid "Program name as used by the window manager" msgstr "Όνομα προγράμματος όπως δηλώνεται από το διαχειριστή παραθύρων" #: ../bonobo/bonobo-ui-init-gtk.c:156 msgid "NAME" msgstr "ΌΝΟΜΑ" # #: ../bonobo/bonobo-ui-init-gtk.c:159 msgid "Program class as used by the window manager" msgstr "Τάξη προγράμματος όπως δηλώνεται από το διαχειριστή παραθύρων" # #: ../bonobo/bonobo-ui-init-gtk.c:159 msgid "CLASS" msgstr "ΤΑΞΗ" # #: ../bonobo/bonobo-ui-init-gtk.c:162 msgid "Gtk+ debugging flags to set" msgstr "Διακόπτες αποσφαλμάτωσης του Gtk+ για ενεργοποίηση" # #: ../bonobo/bonobo-ui-init-gtk.c:165 msgid "Gtk+ debugging flags to unset" msgstr "Διακόπτες αποσφαλμάτωσης του Gtk+ για απενεργοποίηση" # #: ../bonobo/bonobo-ui-init-gtk.c:168 msgid "Make all warnings fatal" msgstr "Όλες οι προειδοποιήσεις ολέθριες" # #: ../bonobo/bonobo-ui-init-gtk.c:171 msgid "Load an additional Gtk module" msgstr "Φόρτωση επιπρόσθετου συστατικού Gtk" # #: ../bonobo/bonobo-ui-init-gtk.c:171 msgid "MODULE" msgstr "ΣΥΣΤΑΤΙΚΌ" #: ../bonobo/bonobo-ui-init-gtk.c:187 msgid "GTK+" msgstr "GTK+" # #: ../bonobo/bonobo-ui-main.c:281 msgid "Bonobo GUI support" msgstr "Υποστήριξη Γραφικού Περιβάλλοντος Διασύνδεσης (ΓΠΔ) Bonobo" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "B_oth" msgstr "_Και τα δύο" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "T_ext" msgstr "_Κείμενο" #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Hide t_ips" msgstr "Απόκρυ_ψη υποδείξεων" #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Show t_ips" msgstr "Εμ_φάνιση υποδείξεων" #: ../bonobo/bonobo-ui-sync-toolbar.c:570 msgid "_Hide toolbar" msgstr "_Απόκρυψη εργαλειοθήκης" #: ../bonobo/bonobo-ui-sync-toolbar.c:570 msgid "Customi_ze" msgstr "Παραμετρο_ποίηση" #: ../bonobo/bonobo-ui-sync-toolbar.c:571 msgid "Customize the toolbar" msgstr "Παραμετροποίηση γραμμής εντολών" #: ../bonobo/bonobo-ui-toolbar.c:1117 msgid "is floating" msgstr "αιωρείται" #: ../bonobo/bonobo-ui-toolbar.c:1118 msgid "whether the toolbar is floating" msgstr "αν η εργαλειοθήκη αιωρήται" #: ../bonobo/bonobo-ui-toolbar.c:1164 msgid "Style of bevel around the toolbar" msgstr "Στυλ γωνίας γύρω από την εργαλειοθήκη" # #-#-#-#-# gnome-libs.gnome-libs-1-0.el.po (gnome-libs 1.2.12) #-#-#-#-#: ../bonobo/bonobo-ui-util.c:599 #: ../bonobo/bonobo-ui-util.c:602 msgid "Could not display help for this application" msgstr "Δεν είναι δυνατή η εμφάνιση βοήθειας για την εφαρμογή" #: ../bonobo/bonobo-ui-util.c:644 msgid "_Contents" msgstr "Περιε_χόμενα" # #-#-#-#-# gnome-libs.gnome-libs-1-0.el.po (gnome-libs 1.2.12) #-#-#-#-# # #: ../bonobo/bonobo-ui-util.c:645 msgid "View help for this application" msgstr "Εμφάνιση βοήθειας για την εφαρμογή" #: ../bonobo/bonobo-window.c:348 msgid "Name of the window - used for configuration serialization." msgstr "" "Το όνομα του παραθύρου - για χρήση στη μετατροπή κατ' αλληλουχία των " "ρυθμίσεων." #: ../bonobo/bonobo-zoomable.c:326 msgid "Zoom level" msgstr "Επίπεδο εστίασης" #: ../bonobo/bonobo-zoomable.c:327 msgid "The degree of enlargment" msgstr "Ο βαθμός μεγέθυνσης" #: ../bonobo/bonobo-zoomable.c:335 msgid "Minimum Zoom level" msgstr "Ελάχιστο επίπεδο Εστίασης" #: ../bonobo/bonobo-zoomable.c:336 msgid "The minimum degree of enlargment" msgstr "Ο ελάχιστος βαθμός μεγέθυνσης" #: ../bonobo/bonobo-zoomable.c:344 msgid "Maximum Zoom level" msgstr "Μέγιστο επίπεδο Εστίασης" #: ../bonobo/bonobo-zoomable.c:345 msgid "The maximum degree of enlargment" msgstr "Ο μέγιστος βαθμός μεγέθυνσης" #: ../bonobo/bonobo-zoomable.c:353 msgid "Has a minimum Zoom level" msgstr "Έχει ελάχιστο επίπεδο Εστίασης" #: ../bonobo/bonobo-zoomable.c:354 msgid "Whether we have a valid minimum zoom level" msgstr "Αν έχει ένα έγκυρο ελάχιστο επίπεδο εστίασης" #: ../bonobo/bonobo-zoomable.c:361 msgid "Has a maximum Zoom level" msgstr "Έχει μέγιστο επίπεδο εστίασης" #: ../bonobo/bonobo-zoomable.c:362 msgid "Whether we have a valid maximum zoom level" msgstr "Αν έχει ένα έγκυρο μέγιστο επίπεδο εστίασης" #: ../bonobo/bonobo-zoomable.c:369 msgid "Is continuous" msgstr "Είναι συνεχές" #: ../bonobo/bonobo-zoomable.c:370 msgid "Whether we zoom continuously (as opposed to jumps)" msgstr "Αν η εστίαση γίνεται συνεχώς (σε αντίθεση τμηματικά)" # #-#-#-#-# gnome-libs.gnome-libs-1-0.el.po (gnome-libs 1.2.12) #-#-#-#-# # #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:1 msgid "About this application" msgstr "Περί της εφαρμογής" # #-#-#-#-# gnome-1.4-core-compendium.po (bonobo 0.34) #-#-#-#-# # #-#-#-#-# gnome-libs.gnome-libs-1-0.el.po (gnome-libs 1.2.12) #-#-#-#-# # #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:2 msgid "Select" msgstr "Επιλογή" # #-#-#-#-# gnome-libs.gnome-libs-1-0.el.po (gnome-libs 1.2.12) #-#-#-#-# # #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:3 msgid "_About..." msgstr "_Περί..." # #-#-#-#-# gnome-libs.gnome-libs-1-0.el.po (gnome-libs 1.2.12) #-#-#-#-# # #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:4 msgid "_Edit" msgstr "_Επεξεργασία" # #-#-#-#-# bonobo.HEAD.el.po (bonobo 0.34) #-#-#-#-# # # #-#-#-#-# gnome-libs.gnome-libs-1-0.el.po (gnome-libs 1.2.12) #-#-#-#-# # # #-#-#-#-# gnome-print.gnome-1-4-branch.el.po (gnome-print 0.26pre) #-#-#-#-# # # #-#-#-#-# nautilus.nautilus-gnome-1.el.po (nautilus 0.8.3) #-#-#-#-# # #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:5 #: ../tools/browser/bonobo-browser.xml.h:4 msgid "_File" msgstr "_Αρχείο" # #-#-#-#-# gnome-1.4-core-compendium.po (bonobo 0.34) #-#-#-#-# # #-#-#-#-# gnome-libs.gnome-libs-1-0.el.po (gnome-libs 1.2.12) #-#-#-#-# # #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:6 msgid "_Select" msgstr "Επιλο_γή" #: ../samples/bonoboui/hello.c:65 msgid "This does nothing; it is only a demonstration." msgstr "Δεν κάνει κάτι, είναι μόνο για παρουσίαση." #: ../samples/bonoboui/hello.c:147 msgid "BonoboUI-Hello." msgstr "BonoboUI-Hello." # #: ../samples/bonoboui/hello.c:219 msgid "Gnome Hello" msgstr "Καλημέρα Gnome" #. Create Label and put it in the Button: #: ../samples/bonoboui/hello.c:274 msgid "Hello, World!" msgstr "Καλημέρα, Κόσμε!" #: ../samples/bonoboui/hello.c:314 msgid "Cannot init libbonoboui code" msgstr "Αποτυχία αρχικοποίησης κώδικα libbonoboui" #: ../samples/controls/bonobo-sample-controls.c:133 msgid "Could not initialize Bonobo UI" msgstr "Αδύνατη η αρχικοποίηση της γραφικής διασύνδεσης του Bonobo " #: ../tools/browser/bonobo-browser.desktop.in.h:1 msgid "Bonobo Component Browser" msgstr " Περιηγητής συστατικού Bonobo" #: ../tools/browser/bonobo-browser.desktop.in.h:2 msgid "Shows available Bonobo components" msgstr "Εμφανίζει τα διαθέσιμα συστατικά Bonobo" # #-#-#-#-# gnome-libs.gnome-libs-1-0.el.po (gnome-libs 1.2.12) #-#-#-#-# # #: ../tools/browser/bonobo-browser.xml.h:1 msgid "About this program..." msgstr "Περί της εφαρμογής..." #: ../tools/browser/bonobo-browser.xml.h:2 msgid "Close the current window" msgstr "Κλείσιμο του τρέχοντος παραθύρου" #: ../tools/browser/bonobo-browser.xml.h:3 msgid "Open a new window" msgstr "Άνοιγμα ενός νέου παραθύρου" #: ../tools/browser/bonobo-browser.xml.h:5 msgid "_Help" msgstr "_Βοήθεια" #. Build the general tab #: ../tools/browser/component-details.c:103 msgid "General" msgstr "Γενικά" #: ../tools/browser/component-details.c:110 #: ../tools/browser/component-list.c:389 msgid "IID" msgstr "IID" #: ../tools/browser/component-details.c:111 msgid "Location" msgstr "Τοποθεσία" #. Build the details tab #: ../tools/browser/component-details.c:161 msgid "Details" msgstr "Λεπτομέρειες" #: ../tools/browser/component-details.c:162 msgid "Detailed Information" msgstr "Λεπτομερείς πληροφορίες" #: ../tools/browser/component-list.c:358 ../tools/browser/window.c:283 msgid "Active" msgstr "Ενεργό" #: ../tools/browser/component-list.c:379 msgid "Type" msgstr "Τύπος" #: ../tools/browser/window.c:162 msgid "Component Details" msgstr "Λεπτομέρειες συστατικού" #: ../tools/browser/window.c:208 msgid "Bonobo Browser" msgstr "Περιηγητής Bonobo" #: ../tools/browser/window.c:210 msgid "Copyright 2001, The GNOME Foundation" msgstr "Πνευματικά δικαιώματα 2001, The GNOME Foundation" #: ../tools/browser/window.c:211 msgid "Bonobo component browser" msgstr " Περιηγητής συστατικού Bonobo" #: ../tools/browser/window.c:214 msgid "translator-credits" msgstr "Κώστας Παπαδήμας " #. create the window #: ../tools/browser/window.c:240 msgid "Component Browser" msgstr "Περιηγητής συστατικού" #. Fill out the tool bar #: ../tools/browser/window.c:280 msgid "All" msgstr "Όλα" #: ../tools/browser/window.c:286 msgid "Inactive" msgstr "Ανενεργό" # #~ msgid "HOST" #~ msgstr "ΣΥΣΤΗΜΑ" #~ msgid "PORT" #~ msgstr "ΘΥΡΑ" # #~ msgid "STYLE" #~ msgstr "ΣΤΥΛ" libbonoboui-2.24.5/po/zh_CN.po0000644000076400007640000003244611173072741013033 00000000000000# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR Free Software Foundation, Inc. # Wang Jian , 2001 # Funda Wang , 2003 # msgid "" msgstr "" "Project-Id-Version: bonobo\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2007-11-13 21:46+0000\n" "PO-Revision-Date: 2008-01-17 23:22+0800\n" "Last-Translator: Funda Wang \n" "Language-Team: zh_CN \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" # SUN CHANGED MESSAGE #: ../bonobo/bonobo-canvas-item.c:680 msgid "corba factory" msgstr "Corba 车间" # SUN CHANGED MESSAGE #: ../bonobo/bonobo-canvas-item.c:681 msgid "The factory pointer" msgstr "车间指针" #: ../bonobo/bonobo-canvas-item.c:690 msgid "corba UI container" msgstr "Corba UI 容器" #: ../bonobo/bonobo-canvas-item.c:691 msgid "The User interface container" msgstr "用户界面容器" # SUN CHANGED MESSAGE #: ../bonobo/bonobo-dock-item-grip.c:255 msgid "Dock the toolbar" msgstr "停靠工具栏" # SUN CHANGED MESSAGE #: ../bonobo/bonobo-dock-item-grip.c:256 msgid "Undock the toolbar" msgstr "取消停靠工具栏" #: ../bonobo/bonobo-dock-item.c:228 ../bonobo/bonobo-dock-item.c:229 #: ../bonobo/bonobo-ui-toolbar.c:1161 msgid "Shadow type" msgstr "阴影类型" #: ../bonobo/bonobo-dock-item.c:239 ../bonobo/bonobo-dock-item.c:240 #: ../bonobo/bonobo-ui-toolbar.c:1105 ../bonobo/bonobo-ui-toolbar.c:1106 msgid "Orientation" msgstr "方向" #: ../bonobo/bonobo-dock-item.c:250 ../bonobo/bonobo-dock-item.c:251 #: ../bonobo/bonobo-ui-toolbar.c:1124 ../bonobo/bonobo-ui-toolbar.c:1125 msgid "Preferred width" msgstr "首选宽度" #: ../bonobo/bonobo-dock-item.c:259 ../bonobo/bonobo-dock-item.c:260 #: ../bonobo/bonobo-ui-toolbar.c:1133 ../bonobo/bonobo-ui-toolbar.c:1134 msgid "Preferred height" msgstr "首选高度" #: ../bonobo/bonobo-file-selector-util.c:357 msgid "Select a file to open" msgstr "选择要打开的文件" #: ../bonobo/bonobo-file-selector-util.c:385 msgid "Select files to open" msgstr "选择要打开的文件" #: ../bonobo/bonobo-file-selector-util.c:414 msgid "Select a filename to save" msgstr "选择要保存的文件名" #: ../bonobo/bonobo-plug.c:423 msgid "Event Forwarding" msgstr "事件转发" #: ../bonobo/bonobo-plug.c:424 msgid "Whether X events should be forwarded" msgstr "是否应转发 X 事件" #: ../bonobo/bonobo-selector-widget.c:297 ../bonobo/bonobo-window.c:344 #: ../tools/browser/component-details.c:114 #: ../tools/browser/component-list.c:378 msgid "Name" msgstr "名字" #: ../bonobo/bonobo-selector-widget.c:319 #: ../tools/browser/component-details.c:115 msgid "Description" msgstr "描述" # SUN NEW TRANSLATION #: ../bonobo/bonobo-selector.c:343 msgid "Interfaces required" msgstr "必需的界面" # SUN NEW TRANSLATION #: ../bonobo/bonobo-selector.c:344 msgid "" "A NULL-terminated array of interfaces which a server must support in order " "to be listed in the selector. Defaults to \"IDL:Bonobo/Embeddable:1.0\" if " "no interfaces are listed" msgstr "" "界面以 NULL 结尾的数组,服务器必须支持该数组才能列在选择器中。如果没有列出界" "面,默认值为“IDL:Bonobo/Embeddable:1.0”" # SUN NEW TRANSLATION #: ../bonobo/bonobo-selector.c:346 msgid "Interface required entry" msgstr "界面需要输入" # SUN NEW TRANSLATION #: ../bonobo/bonobo-selector.c:347 msgid "One of the interfaces that's required" msgstr "其中一个必需的界面" #: ../bonobo/bonobo-ui-config-widget.c:265 msgid "Visible" msgstr "可见" #: ../bonobo/bonobo-ui-config-widget.c:272 msgid "_Show" msgstr "显示(_S)" #: ../bonobo/bonobo-ui-config-widget.c:279 msgid "_Hide" msgstr "隐藏(_H)" #: ../bonobo/bonobo-ui-config-widget.c:285 msgid "_View tooltips" msgstr "查看工具提示(_V)" #: ../bonobo/bonobo-ui-config-widget.c:290 msgid "Toolbars" msgstr "工具栏" #: ../bonobo/bonobo-ui-config-widget.c:300 msgid "toolbars" msgstr "工具栏" #: ../bonobo/bonobo-ui-config-widget.c:311 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "Look" msgstr "外观" #: ../bonobo/bonobo-ui-config-widget.c:320 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "_Icon" msgstr "图标(_I)" # SUN CHANGED MESSAGE #: ../bonobo/bonobo-ui-config-widget.c:326 msgid "_Text and Icon" msgstr "文本和图标(_T)" # SUN CHANGED MESSAGE #: ../bonobo/bonobo-ui-config-widget.c:332 msgid "Text only" msgstr "仅有文本" # SUN CHANGED MESSAGE #: ../bonobo/bonobo-ui-config-widget.c:338 msgid "_Priority text only" msgstr "仅优先级文本(_P)" #: ../bonobo/bonobo-ui-engine.c:91 msgid "Debug" msgstr "调试" #: ../bonobo/bonobo-ui-engine.c:91 msgid "_Dump XML" msgstr "转存 XML(_D)" #: ../bonobo/bonobo-ui-engine.c:92 msgid "Dump the entire UI's XML description to the console" msgstr "将全部 UI 的 XML 描述转存到控制台" #: ../bonobo/bonobo-ui-engine-config.c:522 msgid "Configure UI" msgstr "配置 UI" # SUN NEW TRANSLATION #: ../bonobo/bonobo-ui-init-gtk.c:130 msgid "Gdk debugging flags to set" msgstr "设置 Gdk 调试标记" # SUN NEW TRANSLATION #: ../bonobo/bonobo-ui-init-gtk.c:130 ../bonobo/bonobo-ui-init-gtk.c:133 #: ../bonobo/bonobo-ui-init-gtk.c:161 ../bonobo/bonobo-ui-init-gtk.c:164 msgid "FLAGS" msgstr "标记" # SUN NEW TRANSLATION #: ../bonobo/bonobo-ui-init-gtk.c:133 msgid "Gdk debugging flags to unset" msgstr "取消 Gdk 调试标记的设置" # SUN NEW TRANSLATION #: ../bonobo/bonobo-ui-init-gtk.c:137 msgid "X display to use" msgstr "使用的 X 显示" # SUN NEW TRANSLATION #: ../bonobo/bonobo-ui-init-gtk.c:137 msgid "DISPLAY" msgstr "显示" # SUN NEW TRANSLATION #: ../bonobo/bonobo-ui-init-gtk.c:141 msgid "X screen to use" msgstr "使用的 X 屏幕" # SUN NEW TRANSLATION #: ../bonobo/bonobo-ui-init-gtk.c:141 msgid "SCREEN" msgstr "屏幕" # SUN NEW TRANSLATION #: ../bonobo/bonobo-ui-init-gtk.c:145 msgid "Make X calls synchronous" msgstr "使 X 调用同步" # SUN NEW TRANSLATION #: ../bonobo/bonobo-ui-init-gtk.c:151 msgid "Don't use X shared memory extension" msgstr "不使用 X 共享内存扩展技术" # SUN NEW TRANSLATION #: ../bonobo/bonobo-ui-init-gtk.c:155 msgid "Program name as used by the window manager" msgstr "由窗口管理器使用的程序名" # SUN NEW TRANSLATION #: ../bonobo/bonobo-ui-init-gtk.c:155 msgid "NAME" msgstr "名称" # SUN NEW TRANSLATION #: ../bonobo/bonobo-ui-init-gtk.c:158 msgid "Program class as used by the window manager" msgstr "由窗口管理器使用的程序类" # SUN NEW TRANSLATION #: ../bonobo/bonobo-ui-init-gtk.c:158 msgid "CLASS" msgstr "类" # SUN NEW TRANSLATION #: ../bonobo/bonobo-ui-init-gtk.c:161 msgid "Gtk+ debugging flags to set" msgstr "设置 Gtk+ 调试标记" # SUN NEW TRANSLATION #: ../bonobo/bonobo-ui-init-gtk.c:164 msgid "Gtk+ debugging flags to unset" msgstr "取消 Gtk+ 调试标记的设置" # SUN NEW TRANSLATION #: ../bonobo/bonobo-ui-init-gtk.c:167 msgid "Make all warnings fatal" msgstr "使所有的警告消息成为致命错误" # SUN NEW TRANSLATION #: ../bonobo/bonobo-ui-init-gtk.c:170 msgid "Load an additional Gtk module" msgstr "载入一个附加的 Gtk 模块" # SUN NEW TRANSLATION #: ../bonobo/bonobo-ui-init-gtk.c:170 msgid "MODULE" msgstr "模块" # SUN NEW TRANSLATION #: ../bonobo/bonobo-ui-init-gtk.c:186 msgid "GTK+" msgstr "GTK+" # SUN NEW TRANSLATION #: ../bonobo/bonobo-ui-main.c:278 msgid "Bonobo GUI support" msgstr "Bonobo GUI 支持" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "B_oth" msgstr "二者(_O)" # SUN CHANGED MESSAGE #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "T_ext" msgstr "文本(_E)" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Hide t_ips" msgstr "隐藏提示(_I)" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Show t_ips" msgstr "显示提示(_I)" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "_Hide toolbar" msgstr "隐藏工具栏(_H)" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "Customi_ze" msgstr "自定义(_Z)" #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Customize the toolbar" msgstr "自定义工具栏" #: ../bonobo/bonobo-ui-toolbar.c:1115 msgid "is floating" msgstr "是浮动的" #: ../bonobo/bonobo-ui-toolbar.c:1116 msgid "whether the toolbar is floating" msgstr "工具栏是否浮动" #: ../bonobo/bonobo-ui-toolbar.c:1162 msgid "Style of bevel around the toolbar" msgstr "工具栏立体效果的样式" # SUN CHANGED MESSAGE #: ../bonobo/bonobo-ui-util.c:601 msgid "Could not display help for this application" msgstr "无法显示此应用程序的帮助" # SUN NEW TRANSLATION #: ../bonobo/bonobo-ui-util.c:643 msgid "_Contents" msgstr "目录(_C)" # SUN CHANGED MESSAGE #: ../bonobo/bonobo-ui-util.c:644 msgid "View help for this application" msgstr "查看此应用程序的帮助" # SUN NEW TRANSLATION #: ../bonobo/bonobo-window.c:345 msgid "Name of the window - used for configuration serialization." msgstr "窗口的名称 - 用于配置串行化。" #: ../bonobo/bonobo-zoomable.c:326 msgid "Zoom level" msgstr "缩放级别" #: ../bonobo/bonobo-zoomable.c:327 msgid "The degree of enlargment" msgstr "缩放程度" #: ../bonobo/bonobo-zoomable.c:335 msgid "Minimum Zoom level" msgstr "最小缩放级别" #: ../bonobo/bonobo-zoomable.c:336 msgid "The minimum degree of enlargment" msgstr "最小缩放程度" #: ../bonobo/bonobo-zoomable.c:344 msgid "Maximum Zoom level" msgstr "最大缩放级别" #: ../bonobo/bonobo-zoomable.c:345 msgid "The maximum degree of enlargment" msgstr "最大缩放级别" #: ../bonobo/bonobo-zoomable.c:353 msgid "Has a minimum Zoom level" msgstr "有最小缩放级别" #: ../bonobo/bonobo-zoomable.c:354 msgid "Whether we have a valid minimum zoom level" msgstr "是否有有效的最小缩放级别" #: ../bonobo/bonobo-zoomable.c:361 msgid "Has a maximum Zoom level" msgstr "有最大缩放级别" #: ../bonobo/bonobo-zoomable.c:362 msgid "Whether we have a valid maximum zoom level" msgstr "是否有有效的最大缩放级别" #: ../bonobo/bonobo-zoomable.c:369 msgid "Is continuous" msgstr "是否连续" #: ../bonobo/bonobo-zoomable.c:370 msgid "Whether we zoom continuously (as opposed to jumps)" msgstr "是否可连续缩放(和跳跃式相反)" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:1 msgid "About this application" msgstr "关于本程序" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:2 msgid "Select" msgstr "选择" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:3 msgid "_About..." msgstr "关于(_A)..." #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:4 msgid "_Edit" msgstr "编辑(_E)" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:5 #: ../tools/browser/bonobo-browser.xml.h:4 msgid "_File" msgstr "文件(_F)" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:6 msgid "_Select" msgstr "选择(_S)" #: ../samples/bonoboui/hello.c:63 msgid "This does nothing; it is only a demonstration." msgstr "不做任何事;它仅仅是个演示。" #: ../samples/bonoboui/hello.c:145 msgid "BonoboUI-Hello." msgstr "BonoboUI-Hello。" #: ../samples/bonoboui/hello.c:217 msgid "Gnome Hello" msgstr "Gnome Hello" #. Create Label and put it in the Button: #: ../samples/bonoboui/hello.c:272 msgid "Hello, World!" msgstr "Hello,World!" #: ../samples/bonoboui/hello.c:312 msgid "Cannot init libbonoboui code" msgstr "无法初始化 libbonoboui 代码" # SUN NEW TRANSLATION #: ../samples/controls/bonobo-sample-controls.c:131 msgid "Could not initialize Bonobo UI" msgstr "无法初始化 Bonobo UI" #: ../tools/browser/bonobo-browser.desktop.in.h:1 msgid "Bonobo Component Browser" msgstr "Bonobo 组件浏览器" #: ../tools/browser/bonobo-browser.desktop.in.h:2 msgid "Shows available Bonobo components" msgstr "显示可用的 Bonobo 组件" #: ../tools/browser/bonobo-browser.xml.h:1 msgid "About this program..." msgstr "关于本程序..." #: ../tools/browser/bonobo-browser.xml.h:2 msgid "Close the current window" msgstr "关闭当前窗口" #: ../tools/browser/bonobo-browser.xml.h:3 msgid "Open a new window" msgstr "打开新窗口" #: ../tools/browser/bonobo-browser.xml.h:5 msgid "_Help" msgstr "帮助(_H)" #. Build the general tab #: ../tools/browser/component-details.c:109 msgid "General" msgstr "常规" #: ../tools/browser/component-details.c:116 #: ../tools/browser/component-list.c:398 msgid "IID" msgstr "IID" #: ../tools/browser/component-details.c:117 msgid "Location" msgstr "位置" #. Build the details tab #: ../tools/browser/component-details.c:167 msgid "Details" msgstr "细节" #: ../tools/browser/component-details.c:168 msgid "Detailed Information" msgstr "细节信息" #: ../tools/browser/component-list.c:367 ../tools/browser/window.c:283 msgid "Active" msgstr "激活" #: ../tools/browser/component-list.c:388 msgid "Type" msgstr "类型" #: ../tools/browser/window.c:162 msgid "Component Details" msgstr "组件细节" #: ../tools/browser/window.c:208 msgid "Bonobo Browser" msgstr "Bonobo 浏览器" #: ../tools/browser/window.c:210 msgid "Copyright 2001, The GNOME Foundation" msgstr "版权 2001,GNOME 基金会" #: ../tools/browser/window.c:211 msgid "Bonobo component browser" msgstr "Bonobo 组件浏览器" #: ../tools/browser/window.c:214 msgid "translator-credits" msgstr "开源软件国际化之简体中文组,http://i18n.linux.net.cn" #. create the window #: ../tools/browser/window.c:240 msgid "Component Browser" msgstr "组件浏览器" #. Fill out the tool bar #: ../tools/browser/window.c:280 msgid "All" msgstr "全部" #: ../tools/browser/window.c:286 msgid "Inactive" msgstr "非激活" libbonoboui-2.24.5/po/nn.po0000644000076400007640000003220611173072741012437 00000000000000# translation of nn.po to Norwegian Nynorsk # Norwegian (Nynorsk) GNOME translation # Copyright 2000-2002, The Free Software Foundation # # Kjartan Maraas , 2001, 2006. # Roy-Magne Mo , 2002. # Åsmund Skjæveland , 2003-2008. msgid "" msgstr "" "Project-Id-Version: nn\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2008-02-29 14:37+0100\n" "PO-Revision-Date: 2008-02-29 14:36+0100\n" "Last-Translator: Åsmund Skjæveland \n" "Language-Team: Norwegian Nynorsk \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Generator: KBabel 1.11.4\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" #: ../bonobo/bonobo-canvas-item.c:680 msgid "corba factory" msgstr "corba-fabrikk" #: ../bonobo/bonobo-canvas-item.c:681 msgid "The factory pointer" msgstr "Fabrikkpeikar" #: ../bonobo/bonobo-canvas-item.c:690 msgid "corba UI container" msgstr "corba UI-haldar" #: ../bonobo/bonobo-canvas-item.c:691 msgid "The User interface container" msgstr "Haldar for brukargrensesnitt" #: ../bonobo/bonobo-dock-item-grip.c:255 msgid "Dock the toolbar" msgstr "Fest verktøylinja" #: ../bonobo/bonobo-dock-item-grip.c:256 msgid "Undock the toolbar" msgstr "Løys verktøylinja" #: ../bonobo/bonobo-dock-item.c:228 ../bonobo/bonobo-dock-item.c:229 #: ../bonobo/bonobo-ui-toolbar.c:1161 msgid "Shadow type" msgstr "Skuggetype" #: ../bonobo/bonobo-dock-item.c:239 ../bonobo/bonobo-dock-item.c:240 #: ../bonobo/bonobo-ui-toolbar.c:1105 ../bonobo/bonobo-ui-toolbar.c:1106 msgid "Orientation" msgstr "Retning" #: ../bonobo/bonobo-dock-item.c:250 ../bonobo/bonobo-dock-item.c:251 #: ../bonobo/bonobo-ui-toolbar.c:1124 ../bonobo/bonobo-ui-toolbar.c:1125 msgid "Preferred width" msgstr "Ønska breidde" #: ../bonobo/bonobo-dock-item.c:259 ../bonobo/bonobo-dock-item.c:260 #: ../bonobo/bonobo-ui-toolbar.c:1133 ../bonobo/bonobo-ui-toolbar.c:1134 msgid "Preferred height" msgstr "Ønska høgde" #: ../bonobo/bonobo-file-selector-util.c:357 msgid "Select a file to open" msgstr "Vel ei fil å opna" #: ../bonobo/bonobo-file-selector-util.c:385 msgid "Select files to open" msgstr "Vel filer som skal opnast" #: ../bonobo/bonobo-file-selector-util.c:414 msgid "Select a filename to save" msgstr "Vel eit filnamn å lagra" #: ../bonobo/bonobo-plug.c:423 msgid "Event Forwarding" msgstr "Hendingsvidaresending" #: ../bonobo/bonobo-plug.c:424 msgid "Whether X events should be forwarded" msgstr "Om X hendingar skal vidaresendast" #: ../bonobo/bonobo-selector-widget.c:297 ../bonobo/bonobo-window.c:344 #: ../tools/browser/component-details.c:114 #: ../tools/browser/component-list.c:378 msgid "Name" msgstr "Namn" #: ../bonobo/bonobo-selector-widget.c:319 #: ../tools/browser/component-details.c:115 msgid "Description" msgstr "Skildring" #: ../bonobo/bonobo-selector.c:343 msgid "Interfaces required" msgstr "Naudsynte grensesnitt" #: ../bonobo/bonobo-selector.c:344 msgid "" "A NULL-terminated array of interfaces which a server must support in order " "to be listed in the selector. Defaults to \"IDL:Bonobo/Embeddable:1.0\" if " "no interfaces are listed" msgstr "" "Ein NULL-terminert tabell med grensesnitt som ein tenar må støtta for å vera " "lista i veljaren. Standardverdi er «IDL:Bonobo/Embeddable:1.0» dersom det " "ikkje er lista nokon grensesnitt" #: ../bonobo/bonobo-selector.c:346 msgid "Interface required entry" msgstr "Oppføring som vert kravd av grensesnittet" #: ../bonobo/bonobo-selector.c:347 msgid "One of the interfaces that's required" msgstr "Eit av grensesnitta som vert kravd" #: ../bonobo/bonobo-ui-config-widget.c:265 msgid "Visible" msgstr "Synleg" #: ../bonobo/bonobo-ui-config-widget.c:272 msgid "_Show" msgstr "Vi_s" #: ../bonobo/bonobo-ui-config-widget.c:279 msgid "_Hide" msgstr "_Gøym" #: ../bonobo/bonobo-ui-config-widget.c:285 msgid "_View tooltips" msgstr "_Vis verktøytips" #: ../bonobo/bonobo-ui-config-widget.c:290 msgid "Toolbars" msgstr "Verktøylinjer" #: ../bonobo/bonobo-ui-config-widget.c:300 msgid "toolbars" msgstr "Verktøylinjer" #: ../bonobo/bonobo-ui-config-widget.c:311 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "Look" msgstr "Sjå" #: ../bonobo/bonobo-ui-config-widget.c:320 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "_Icon" msgstr "_Ikon" #: ../bonobo/bonobo-ui-config-widget.c:326 msgid "_Text and Icon" msgstr "_Tekst og ikon" #: ../bonobo/bonobo-ui-config-widget.c:332 msgid "Text only" msgstr "Berre tekst" #: ../bonobo/bonobo-ui-config-widget.c:338 msgid "_Priority text only" msgstr "Kun _prioritert tekst" #: ../bonobo/bonobo-ui-engine.c:91 msgid "Debug" msgstr "Søk etter feil" #: ../bonobo/bonobo-ui-engine.c:91 msgid "_Dump XML" msgstr "_Vis XML" #: ../bonobo/bonobo-ui-engine.c:92 msgid "Dump the entire UI's XML description to the console" msgstr "Skriv heile XML-skildringa til konsollet" #: ../bonobo/bonobo-ui-engine-config.c:522 msgid "Configure UI" msgstr "Konfigurer brukargrensesnitt" #: ../bonobo/bonobo-ui-init-gtk.c:131 msgid "Gdk debugging flags to set" msgstr "Gdk-feilsøkingsflagg som skal setjast" #: ../bonobo/bonobo-ui-init-gtk.c:131 ../bonobo/bonobo-ui-init-gtk.c:134 #: ../bonobo/bonobo-ui-init-gtk.c:162 ../bonobo/bonobo-ui-init-gtk.c:165 msgid "FLAGS" msgstr "FLAGG" #: ../bonobo/bonobo-ui-init-gtk.c:134 msgid "Gdk debugging flags to unset" msgstr "Gdk-feilsøkingsflagg som skal nullstillast" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "X display to use" msgstr "X-display som skal brukast" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "DISPLAY" msgstr "DISPLAY" #: ../bonobo/bonobo-ui-init-gtk.c:142 msgid "X screen to use" msgstr "X-skjerm som skal brukast" #: ../bonobo/bonobo-ui-init-gtk.c:142 msgid "SCREEN" msgstr "SKJERM" #: ../bonobo/bonobo-ui-init-gtk.c:146 msgid "Make X calls synchronous" msgstr "Gjer X-kall synkrone" #: ../bonobo/bonobo-ui-init-gtk.c:152 msgid "Don't use X shared memory extension" msgstr "Ikkje bruk X-utvidingar for delt minne" #: ../bonobo/bonobo-ui-init-gtk.c:156 msgid "Program name as used by the window manager" msgstr "Programnamn som skal brukast av vindaugshandsamaren" #: ../bonobo/bonobo-ui-init-gtk.c:156 msgid "NAME" msgstr "NAMN" #: ../bonobo/bonobo-ui-init-gtk.c:159 msgid "Program class as used by the window manager" msgstr "Programklasse som skal brukast av vindaugshandsamaren" #: ../bonobo/bonobo-ui-init-gtk.c:159 msgid "CLASS" msgstr "KLASSE" #: ../bonobo/bonobo-ui-init-gtk.c:162 msgid "Gtk+ debugging flags to set" msgstr "Gtk+-feilsøkingsflagg som skal setjast" #: ../bonobo/bonobo-ui-init-gtk.c:165 msgid "Gtk+ debugging flags to unset" msgstr "Gtk+-feilsøkingsflagg som skal nullstillast" #: ../bonobo/bonobo-ui-init-gtk.c:168 msgid "Make all warnings fatal" msgstr "Gjer alle åtvaringar fatale" #: ../bonobo/bonobo-ui-init-gtk.c:171 msgid "Load an additional Gtk module" msgstr "Last inn ein ekstra Gtk+-modul" #: ../bonobo/bonobo-ui-init-gtk.c:171 msgid "MODULE" msgstr "MODUL" #: ../bonobo/bonobo-ui-init-gtk.c:187 msgid "GTK+" msgstr "GTK+" #: ../bonobo/bonobo-ui-main.c:278 msgid "Bonobo GUI support" msgstr "Støtte for Bonobo-GUI" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "B_oth" msgstr "Be_gge" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "T_ext" msgstr "T_ekst" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Hide t_ips" msgstr "Skjul t_ips" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Show t_ips" msgstr "Vis t_ips" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "_Hide toolbar" msgstr "_Gøym verktøylinje" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "Customi_ze" msgstr "_Skreddarsy" #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Customize the toolbar" msgstr "Skreddarsy verktøylinja" #: ../bonobo/bonobo-ui-toolbar.c:1115 msgid "is floating" msgstr "er flytande" #: ../bonobo/bonobo-ui-toolbar.c:1116 msgid "whether the toolbar is floating" msgstr "om verktøylinja er flytande" #: ../bonobo/bonobo-ui-toolbar.c:1162 msgid "Style of bevel around the toolbar" msgstr "Stil på kanten rundt verktøylinja" #: ../bonobo/bonobo-ui-util.c:601 msgid "Could not display help for this application" msgstr "Klarte ikkje å visa hjelpeteksten til dette programmet" #: ../bonobo/bonobo-ui-util.c:643 msgid "_Contents" msgstr "_Innhald" #: ../bonobo/bonobo-ui-util.c:644 msgid "View help for this application" msgstr "Vis hjelpeteksten til dette programmet" #: ../bonobo/bonobo-window.c:345 msgid "Name of the window - used for configuration serialization." msgstr "Namn på vindauget - vert brukt for serialisering av oppsett." #: ../bonobo/bonobo-zoomable.c:326 msgid "Zoom level" msgstr "Forstørringsnivå" #: ../bonobo/bonobo-zoomable.c:327 msgid "The degree of enlargment" msgstr "Graden av forstørring" #: ../bonobo/bonobo-zoomable.c:335 msgid "Minimum Zoom level" msgstr "Minimums forstørringsnivå" #: ../bonobo/bonobo-zoomable.c:336 msgid "The minimum degree of enlargment" msgstr "Minimum grad av forstørring" #: ../bonobo/bonobo-zoomable.c:344 msgid "Maximum Zoom level" msgstr "Maksimalt forstørringsnivå" #: ../bonobo/bonobo-zoomable.c:345 msgid "The maximum degree of enlargment" msgstr "Maksimum grad av forstørring" #: ../bonobo/bonobo-zoomable.c:353 msgid "Has a minimum Zoom level" msgstr "Har eit minste forstørringsnivå" #: ../bonobo/bonobo-zoomable.c:354 msgid "Whether we have a valid minimum zoom level" msgstr "Om vi har eit gyldig minimum forstørringsnivå" #: ../bonobo/bonobo-zoomable.c:361 msgid "Has a maximum Zoom level" msgstr "Har ei maksimalt forstørringsnivå" #: ../bonobo/bonobo-zoomable.c:362 msgid "Whether we have a valid maximum zoom level" msgstr "Om vi har eit gyldig maksimum forstørringsnivå" #: ../bonobo/bonobo-zoomable.c:369 msgid "Is continuous" msgstr "er kontinuerleg" #: ../bonobo/bonobo-zoomable.c:370 msgid "Whether we zoom continuously (as opposed to jumps)" msgstr "Om vi forstørrar kontinuerleg (i motsetnad til i steg)" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:1 msgid "About this application" msgstr "Om dette programmet" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:2 msgid "Select" msgstr "Vel" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:3 msgid "_About..." msgstr "_Om ..." #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:4 msgid "_Edit" msgstr "R_edigér" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:5 #: ../tools/browser/bonobo-browser.xml.h:4 msgid "_File" msgstr "_Fil" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:6 msgid "_Select" msgstr "_Vel" #: ../samples/bonoboui/hello.c:63 msgid "This does nothing; it is only a demonstration." msgstr "Dette gjer ingenting; det er kun ein demostrasjon." #: ../samples/bonoboui/hello.c:145 msgid "BonoboUI-Hello." msgstr "BonoboUI-Hallo." #: ../samples/bonoboui/hello.c:217 msgid "Gnome Hello" msgstr "GNOME Hallo" #. Create Label and put it in the Button: #: ../samples/bonoboui/hello.c:272 msgid "Hello, World!" msgstr "Hallo, Verd!" #: ../samples/bonoboui/hello.c:312 msgid "Cannot init libbonoboui code" msgstr "Klarar ikkje å initiere libbonoboui-kode" #: ../samples/controls/bonobo-sample-controls.c:131 msgid "Could not initialize Bonobo UI" msgstr "Kunne ikkje starta Bonobo-UI" #: ../tools/browser/bonobo-browser.desktop.in.h:1 msgid "Bonobo Component Browser" msgstr "Bonobo komponentvisar" #: ../tools/browser/bonobo-browser.desktop.in.h:2 msgid "Shows available Bonobo components" msgstr "Visar tilgjengelege Bonobo-komponentar" #: ../tools/browser/bonobo-browser.xml.h:1 msgid "About this program..." msgstr "Om dette programmet..." #: ../tools/browser/bonobo-browser.xml.h:2 msgid "Close the current window" msgstr "Lukkar dette vindauget" #: ../tools/browser/bonobo-browser.xml.h:3 msgid "Open a new window" msgstr "Opne eit nytt vindauge" #: ../tools/browser/bonobo-browser.xml.h:5 msgid "_Help" msgstr "_Hjelp" #. Build the general tab #: ../tools/browser/component-details.c:109 msgid "General" msgstr "Generelt" #: ../tools/browser/component-details.c:116 #: ../tools/browser/component-list.c:398 msgid "IID" msgstr "IID" #: ../tools/browser/component-details.c:117 msgid "Location" msgstr "Plassering" #. Build the details tab #: ../tools/browser/component-details.c:167 msgid "Details" msgstr "Detaljar" #: ../tools/browser/component-details.c:168 msgid "Detailed Information" msgstr "Detaljert informasjon" #: ../tools/browser/component-list.c:367 ../tools/browser/window.c:283 msgid "Active" msgstr "Aktiv" #: ../tools/browser/component-list.c:388 msgid "Type" msgstr "Type" #: ../tools/browser/window.c:162 msgid "Component Details" msgstr "Detaljar for komponent" #: ../tools/browser/window.c:208 msgid "Bonobo Browser" msgstr "Bonobo-visar" #: ../tools/browser/window.c:210 msgid "Copyright 2001, The GNOME Foundation" msgstr "Opphavsrett 2001, The GNOME Foundation" #: ../tools/browser/window.c:211 msgid "Bonobo component browser" msgstr "Bonobo komponentvisar" #: ../tools/browser/window.c:214 msgid "translator-credits" msgstr "" "Åsmund Skjæveland \n" "\n" "Send feilmeldingar og kommentarar til " #. create the window #: ../tools/browser/window.c:240 msgid "Component Browser" msgstr "Komponentvisar" #. Fill out the tool bar #: ../tools/browser/window.c:280 msgid "All" msgstr "Alle" #: ../tools/browser/window.c:286 msgid "Inactive" msgstr "Ikkje aktiv" libbonoboui-2.24.5/po/pl.po0000644000076400007640000003257011173072741012443 00000000000000# translation of libbonoboui.HEAD.pl.po to Polish # Artur Flinta , 2006. # Artur Flinta , 2008. # Copyright (C) 2001-2005, 2006, 2008 Free Software Foundation, Inc. msgid "" msgstr "" "Project-Id-Version: libbonoboui.HEAD.pl\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2008-02-16 18:05+0100\n" "PO-Revision-Date: 2008-02-16 18:04+0100\n" "Last-Translator: Artur Flinta \n" "Language-Team: Polish \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Generator: KBabel 1.11.4\n" "Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%" "100<10 || n%100>=20) ? 1 : 2);\n" #: ../bonobo/bonobo-canvas-item.c:680 msgid "corba factory" msgstr "Generator corby" #: ../bonobo/bonobo-canvas-item.c:681 msgid "The factory pointer" msgstr "Wskaźnik na generator" #: ../bonobo/bonobo-canvas-item.c:690 msgid "corba UI container" msgstr "Corbowy kontener UI" #: ../bonobo/bonobo-canvas-item.c:691 msgid "The User interface container" msgstr "Kontener interfejsu użytkownika" #: ../bonobo/bonobo-dock-item-grip.c:255 msgid "Dock the toolbar" msgstr "Dokuje pasek narzędziowy" #: ../bonobo/bonobo-dock-item-grip.c:256 msgid "Undock the toolbar" msgstr "Odrywa pasek narzędziowy" #: ../bonobo/bonobo-dock-item.c:228 ../bonobo/bonobo-dock-item.c:229 #: ../bonobo/bonobo-ui-toolbar.c:1161 msgid "Shadow type" msgstr "Typ cienia" #: ../bonobo/bonobo-dock-item.c:239 ../bonobo/bonobo-dock-item.c:240 #: ../bonobo/bonobo-ui-toolbar.c:1105 ../bonobo/bonobo-ui-toolbar.c:1106 msgid "Orientation" msgstr "Ułożenie" #: ../bonobo/bonobo-dock-item.c:250 ../bonobo/bonobo-dock-item.c:251 #: ../bonobo/bonobo-ui-toolbar.c:1124 ../bonobo/bonobo-ui-toolbar.c:1125 msgid "Preferred width" msgstr "Preferowana szerokość" #: ../bonobo/bonobo-dock-item.c:259 ../bonobo/bonobo-dock-item.c:260 #: ../bonobo/bonobo-ui-toolbar.c:1133 ../bonobo/bonobo-ui-toolbar.c:1134 msgid "Preferred height" msgstr "Preferowana szerokość" #: ../bonobo/bonobo-file-selector-util.c:357 msgid "Select a file to open" msgstr "Wybór pliku do odczytu" #: ../bonobo/bonobo-file-selector-util.c:385 msgid "Select files to open" msgstr "Wybór plików do odczytu" #: ../bonobo/bonobo-file-selector-util.c:414 msgid "Select a filename to save" msgstr "Wybór pliku do zapisu" #: ../bonobo/bonobo-plug.c:423 msgid "Event Forwarding" msgstr "Przesyłanie zdarzeń" #: ../bonobo/bonobo-plug.c:424 msgid "Whether X events should be forwarded" msgstr "Określa, czy zdarzenia X powinny być przesyłane" #: ../bonobo/bonobo-selector-widget.c:297 ../bonobo/bonobo-window.c:344 #: ../tools/browser/component-details.c:114 #: ../tools/browser/component-list.c:378 msgid "Name" msgstr "Nazwa" #: ../bonobo/bonobo-selector-widget.c:319 #: ../tools/browser/component-details.c:115 msgid "Description" msgstr "Opis" #: ../bonobo/bonobo-selector.c:343 msgid "Interfaces required" msgstr "Wymagane interfejsy" #: ../bonobo/bonobo-selector.c:344 msgid "" "A NULL-terminated array of interfaces which a server must support in order " "to be listed in the selector. Defaults to \"IDL:Bonobo/Embeddable:1.0\" if " "no interfaces are listed" msgstr "" "Zakończona wartością NULL tablica interfejsów, które serwer musi obsługiwać, " "aby był wyświetlony na liście wyboru. Jeśli nie zostaną podane żadne " "interfejsy, domyślną wartością jest \"IDL:Bonobo/Embeddable:1.0\"." #: ../bonobo/bonobo-selector.c:346 msgid "Interface required entry" msgstr "Pole z nazwą wymaganego interfejsu" #: ../bonobo/bonobo-selector.c:347 msgid "One of the interfaces that's required" msgstr "Jeden z wymaganych interfejsów" #: ../bonobo/bonobo-ui-config-widget.c:265 msgid "Visible" msgstr "Widoczność" #: ../bonobo/bonobo-ui-config-widget.c:272 msgid "_Show" msgstr "_Widoczny" #: ../bonobo/bonobo-ui-config-widget.c:279 msgid "_Hide" msgstr "_Ukryty" #: ../bonobo/bonobo-ui-config-widget.c:285 msgid "_View tooltips" msgstr "Wyświetlanie p_odpowiedzi" #: ../bonobo/bonobo-ui-config-widget.c:290 msgid "Toolbars" msgstr "Paski narzędziowe" #: ../bonobo/bonobo-ui-config-widget.c:300 msgid "toolbars" msgstr "Paski narzędziowe" #: ../bonobo/bonobo-ui-config-widget.c:311 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "Look" msgstr "Wygląd" #: ../bonobo/bonobo-ui-config-widget.c:320 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "_Icon" msgstr "_Ikony" #: ../bonobo/bonobo-ui-config-widget.c:326 msgid "_Text and Icon" msgstr "_Napisy i ikony" #: ../bonobo/bonobo-ui-config-widget.c:332 msgid "Text only" msgstr "Tylko napisy" #: ../bonobo/bonobo-ui-config-widget.c:338 msgid "_Priority text only" msgstr "_Tylko ważne napisy" #: ../bonobo/bonobo-ui-engine.c:91 msgid "Debug" msgstr "Debugowanie" #: ../bonobo/bonobo-ui-engine.c:91 msgid "_Dump XML" msgstr "_Wypisz XML" #: ../bonobo/bonobo-ui-engine.c:92 msgid "Dump the entire UI's XML description to the console" msgstr "Wypisuje opis całego UI w XML-u na wyjście programu" #: ../bonobo/bonobo-ui-engine-config.c:522 msgid "Configure UI" msgstr "Konfiguracja UI" #: ../bonobo/bonobo-ui-init-gtk.c:131 msgid "Gdk debugging flags to set" msgstr "Ustawione znaczniki śledzenia Gdk" #: ../bonobo/bonobo-ui-init-gtk.c:131 ../bonobo/bonobo-ui-init-gtk.c:134 #: ../bonobo/bonobo-ui-init-gtk.c:162 ../bonobo/bonobo-ui-init-gtk.c:165 msgid "FLAGS" msgstr "ZNACZNIKI" #: ../bonobo/bonobo-ui-init-gtk.c:134 msgid "Gdk debugging flags to unset" msgstr "Wyczyszczone znaczniki śledzenia Gdk" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "X display to use" msgstr "Wykorzystywany ekran X" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "DISPLAY" msgstr "EKRAN X" #: ../bonobo/bonobo-ui-init-gtk.c:142 msgid "X screen to use" msgstr "Wykorzystywany podekran X" #: ../bonobo/bonobo-ui-init-gtk.c:142 msgid "SCREEN" msgstr "PODEKRAN" #: ../bonobo/bonobo-ui-init-gtk.c:146 msgid "Make X calls synchronous" msgstr "Synchroniczna komunikacja z serwerem X" #: ../bonobo/bonobo-ui-init-gtk.c:152 msgid "Don't use X shared memory extension" msgstr "Bez wykorzystania rozszerzenia X, udostępniającego pamięć dzieloną" #: ../bonobo/bonobo-ui-init-gtk.c:156 msgid "Program name as used by the window manager" msgstr "Nazwa programu wykorzystywana przez menedżera okien" #: ../bonobo/bonobo-ui-init-gtk.c:156 msgid "NAME" msgstr "NAZWA" #: ../bonobo/bonobo-ui-init-gtk.c:159 msgid "Program class as used by the window manager" msgstr "Klasa programu wykorzystywana przez menedżera okien" #: ../bonobo/bonobo-ui-init-gtk.c:159 msgid "CLASS" msgstr "KLASA" #: ../bonobo/bonobo-ui-init-gtk.c:162 msgid "Gtk+ debugging flags to set" msgstr "Ustawione znaczniki śledzenia Gtk+" #: ../bonobo/bonobo-ui-init-gtk.c:165 msgid "Gtk+ debugging flags to unset" msgstr "Wyczyszczone znaczniki śledzenia Gtk+" #: ../bonobo/bonobo-ui-init-gtk.c:168 msgid "Make all warnings fatal" msgstr "Traktowanie ostrzeżeń jak błędów" #: ../bonobo/bonobo-ui-init-gtk.c:171 msgid "Load an additional Gtk module" msgstr "Wczytuje dodatkowy moduł Gtk" #: ../bonobo/bonobo-ui-init-gtk.c:171 msgid "MODULE" msgstr "MODUŁ" #: ../bonobo/bonobo-ui-init-gtk.c:187 msgid "GTK+" msgstr "GTK+" #: ../bonobo/bonobo-ui-main.c:278 msgid "Bonobo GUI support" msgstr "Obsługa Bonobo GUI" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "B_oth" msgstr "Tekst i i_kony" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "T_ext" msgstr "_Tekst" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Hide t_ips" msgstr "Nie wyświetlaj p_odpowiedzi" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Show t_ips" msgstr "Wyświetlaj p_odpowiedzi" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "_Hide toolbar" msgstr "_Ukryj pasek narzędziowy" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "Customi_ze" msgstr "_Dopasuj" #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Customize the toolbar" msgstr "Dopasuj pasek narzędziowy" #: ../bonobo/bonobo-ui-toolbar.c:1115 msgid "is floating" msgstr "Oderwany" #: ../bonobo/bonobo-ui-toolbar.c:1116 msgid "whether the toolbar is floating" msgstr "Określa, czy pasek narzędziowy jest oderwany" #: ../bonobo/bonobo-ui-toolbar.c:1162 msgid "Style of bevel around the toolbar" msgstr "Styl skosu wokół paska narzędziowego" #: ../bonobo/bonobo-ui-util.c:601 msgid "Could not display help for this application" msgstr "Nie można wyświetlić pomocy dla tej aplikacji" #: ../bonobo/bonobo-ui-util.c:643 msgid "_Contents" msgstr "_Zawartość" #: ../bonobo/bonobo-ui-util.c:644 msgid "View help for this application" msgstr "Wyświetla pomoc na temat tej aplikacji" #: ../bonobo/bonobo-window.c:345 msgid "Name of the window - used for configuration serialization." msgstr "Nazwa okna - używana przy serializacji konfiguracji." #: ../bonobo/bonobo-zoomable.c:326 msgid "Zoom level" msgstr "Poziom powiększenia" #: ../bonobo/bonobo-zoomable.c:327 msgid "The degree of enlargment" msgstr "Stopień powiększenia" #: ../bonobo/bonobo-zoomable.c:335 msgid "Minimum Zoom level" msgstr "Minimalny poziom powiększenia" #: ../bonobo/bonobo-zoomable.c:336 msgid "The minimum degree of enlargment" msgstr "Minimalny stopień powiększenia" #: ../bonobo/bonobo-zoomable.c:344 msgid "Maximum Zoom level" msgstr "Maksymalny poziom powiększenia" #: ../bonobo/bonobo-zoomable.c:345 msgid "The maximum degree of enlargment" msgstr "Maksymalny stopień powiększenia" #: ../bonobo/bonobo-zoomable.c:353 msgid "Has a minimum Zoom level" msgstr "Z minimalnym poziomem powiększenia" #: ../bonobo/bonobo-zoomable.c:354 msgid "Whether we have a valid minimum zoom level" msgstr "Określa, czy zdefiniowany jest minimalny poziom powiększenia." #: ../bonobo/bonobo-zoomable.c:361 msgid "Has a maximum Zoom level" msgstr "Z maksymalnym poziomem powiększenia" #: ../bonobo/bonobo-zoomable.c:362 msgid "Whether we have a valid maximum zoom level" msgstr "Określa, czy zdefiniowany jest maksymalny poziom powiększenia." #: ../bonobo/bonobo-zoomable.c:369 msgid "Is continuous" msgstr "Ciągłe" #: ../bonobo/bonobo-zoomable.c:370 msgid "Whether we zoom continuously (as opposed to jumps)" msgstr "" "Określa, czy powiększenie odbywa się w sposób ciągły (zamiast skokowego)" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:1 msgid "About this application" msgstr "Informacje o aplikacji" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:2 msgid "Select" msgstr "Zaznacza" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:3 msgid "_About..." msgstr "_Informacje o..." #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:4 msgid "_Edit" msgstr "_Edycja" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:5 #: ../tools/browser/bonobo-browser.xml.h:4 msgid "_File" msgstr "_Plik" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:6 msgid "_Select" msgstr "_Zaznacz" #: ../samples/bonoboui/hello.c:63 msgid "This does nothing; it is only a demonstration." msgstr "To tylko demonstracja." #: ../samples/bonoboui/hello.c:145 msgid "BonoboUI-Hello." msgstr "BonoboUI-Hello." #: ../samples/bonoboui/hello.c:217 msgid "Gnome Hello" msgstr "Powitanie GNOME" #. Create Label and put it in the Button: #: ../samples/bonoboui/hello.c:272 msgid "Hello, World!" msgstr "Witaj świecie!" #: ../samples/bonoboui/hello.c:312 msgid "Cannot init libbonoboui code" msgstr "Nie można zainicjować kodu libbonoboui" #: ../samples/controls/bonobo-sample-controls.c:131 msgid "Could not initialize Bonobo UI" msgstr "Nie można zainicjować Bonobo UI" #: ../tools/browser/bonobo-browser.desktop.in.h:1 msgid "Bonobo Component Browser" msgstr "Przeglądarka komponentów Bonobo" #: ../tools/browser/bonobo-browser.desktop.in.h:2 msgid "Shows available Bonobo components" msgstr "Wyświetla dostępne komponenty Bonobo" #: ../tools/browser/bonobo-browser.xml.h:1 msgid "About this program..." msgstr "Informacje o programie..." #: ../tools/browser/bonobo-browser.xml.h:2 msgid "Close the current window" msgstr "Zamyka bieżące okno" #: ../tools/browser/bonobo-browser.xml.h:3 msgid "Open a new window" msgstr "Otwiera nowe okno" #: ../tools/browser/bonobo-browser.xml.h:5 msgid "_Help" msgstr "_Pomoc" #. Build the general tab #: ../tools/browser/component-details.c:109 msgid "General" msgstr "Główne" #: ../tools/browser/component-details.c:116 #: ../tools/browser/component-list.c:398 msgid "IID" msgstr "IID" #: ../tools/browser/component-details.c:117 msgid "Location" msgstr "Położenie" #. Build the details tab #: ../tools/browser/component-details.c:167 msgid "Details" msgstr "Szczegóły" #: ../tools/browser/component-details.c:168 msgid "Detailed Information" msgstr "Informacje szczegółowe" #: ../tools/browser/component-list.c:367 ../tools/browser/window.c:283 msgid "Active" msgstr "Aktywny" #: ../tools/browser/component-list.c:388 msgid "Type" msgstr "Rodzaj" #: ../tools/browser/window.c:162 msgid "Component Details" msgstr "Szczegóły komponentu" #: ../tools/browser/window.c:208 msgid "Bonobo Browser" msgstr "Przeglądarka Bonobo" #: ../tools/browser/window.c:210 msgid "Copyright 2001, The GNOME Foundation" msgstr "Copyright 2001, The GNOME Foundation" #: ../tools/browser/window.c:211 msgid "Bonobo component browser" msgstr "Przeglądarka komponentów Bonobo" #: ../tools/browser/window.c:214 msgid "translator-credits" msgstr "GNOME PL Team " #. create the window #: ../tools/browser/window.c:240 msgid "Component Browser" msgstr "Przeglądarka komponentów" #. Fill out the tool bar #: ../tools/browser/window.c:280 msgid "All" msgstr "Wszystkie" #: ../tools/browser/window.c:286 msgid "Inactive" msgstr "Nieaktywne" libbonoboui-2.24.5/po/th.po0000644000076400007640000004132611173072741012442 00000000000000# Thai translation of libbonoboui. # Copyright (C) 2007-2008 Free Software Foundation, Inc. # This file is distributed under the same license as the libbonoboui package. # aka.ape , 2007. # Theppitak Karoonboonyanan \n" "Language-Team: Thai \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../bonobo/bonobo-canvas-item.c:680 msgid "corba factory" msgstr "โรงงาน corba" #: ../bonobo/bonobo-canvas-item.c:681 msgid "The factory pointer" msgstr "ตัวชี้โรงงาน" #: ../bonobo/bonobo-canvas-item.c:690 msgid "corba UI container" msgstr "เครื่องบรรจุ UI ของ corba" #: ../bonobo/bonobo-canvas-item.c:691 msgid "The User interface container" msgstr "เครื่องบรรจุส่วนติดต่อผู้ใช้" #: ../bonobo/bonobo-dock-item-grip.c:255 msgid "Dock the toolbar" msgstr "dock แถบเครื่องมือ" #: ../bonobo/bonobo-dock-item-grip.c:256 msgid "Undock the toolbar" msgstr "เลิก dock แถบเครื่องมือ" #: ../bonobo/bonobo-dock-item.c:228 ../bonobo/bonobo-dock-item.c:229 #: ../bonobo/bonobo-ui-toolbar.c:1161 msgid "Shadow type" msgstr "การให้แสงเงา" #: ../bonobo/bonobo-dock-item.c:239 ../bonobo/bonobo-dock-item.c:240 #: ../bonobo/bonobo-ui-toolbar.c:1105 ../bonobo/bonobo-ui-toolbar.c:1106 msgid "Orientation" msgstr "แนววาง" #: ../bonobo/bonobo-dock-item.c:250 ../bonobo/bonobo-dock-item.c:251 #: ../bonobo/bonobo-ui-toolbar.c:1124 ../bonobo/bonobo-ui-toolbar.c:1125 msgid "Preferred width" msgstr "ความกว้างที่ต้องการ" #: ../bonobo/bonobo-dock-item.c:259 ../bonobo/bonobo-dock-item.c:260 #: ../bonobo/bonobo-ui-toolbar.c:1133 ../bonobo/bonobo-ui-toolbar.c:1134 msgid "Preferred height" msgstr "ความสูงที่ต้องการ" #: ../bonobo/bonobo-file-selector-util.c:357 msgid "Select a file to open" msgstr "เลือกแฟ้มเพื่อเปิด" #: ../bonobo/bonobo-file-selector-util.c:385 msgid "Select files to open" msgstr "เลือกแฟ้มเพื่อเปิด" #: ../bonobo/bonobo-file-selector-util.c:414 msgid "Select a filename to save" msgstr "เลือกชื่อแฟ้มที่จะบันทึก" #: ../bonobo/bonobo-plug.c:423 msgid "Event Forwarding" msgstr "การส่งต่อเหตุการณ์" #: ../bonobo/bonobo-plug.c:424 msgid "Whether X events should be forwarded" msgstr "กำหนดว่าเหตุการณ์ X ควรถูกส่งต่อหรือไม่" #: ../bonobo/bonobo-selector-widget.c:297 ../bonobo/bonobo-window.c:344 #: ../tools/browser/component-details.c:114 #: ../tools/browser/component-list.c:378 msgid "Name" msgstr "ชื่อ" #: ../bonobo/bonobo-selector-widget.c:319 #: ../tools/browser/component-details.c:115 msgid "Description" msgstr "คำอธิบาย" #: ../bonobo/bonobo-selector.c:343 msgid "Interfaces required" msgstr "อินเทอร์เฟซที่ต้องการ" #: ../bonobo/bonobo-selector.c:344 msgid "" "A NULL-terminated array of interfaces which a server must support in order " "to be listed in the selector. Defaults to \"IDL:Bonobo/Embeddable:1.0\" if " "no interfaces are listed" msgstr "" "แอเรย์ของอินเทอร์เฟซที่เซิร์ฟเวอร์ต้องสนับสนุน เพื่อที่จะให้ถูกแสดงในรายการเลือก ปิดท้ายด้วยค่า " "NULL ค่าปริยายคือ \"IDL:Bonobo/Embeddable:1.0\" ถ้าไม่ใส่ชื่ออินเทอร์เฟซที่นี่" #: ../bonobo/bonobo-selector.c:346 msgid "Interface required entry" msgstr "ตัวอินเทอร์เฟซที่ต้องการ" #: ../bonobo/bonobo-selector.c:347 msgid "One of the interfaces that's required" msgstr "ตัวอินเทอร์เฟซที่ต้องการ" #: ../bonobo/bonobo-ui-config-widget.c:265 msgid "Visible" msgstr "มองเห็น" #: ../bonobo/bonobo-ui-config-widget.c:272 msgid "_Show" msgstr "แ_สดง" #: ../bonobo/bonobo-ui-config-widget.c:279 msgid "_Hide" msgstr "_ซ่อน" #: ../bonobo/bonobo-ui-config-widget.c:285 msgid "_View tooltips" msgstr "_ดูคำแนะนำเครื่องมือ" #: ../bonobo/bonobo-ui-config-widget.c:290 msgid "Toolbars" msgstr "แถบเครื่องมือ" #: ../bonobo/bonobo-ui-config-widget.c:300 msgid "toolbars" msgstr "แถบเครื่องมือ" #: ../bonobo/bonobo-ui-config-widget.c:311 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "Look" msgstr "รูปลักษณ์" #: ../bonobo/bonobo-ui-config-widget.c:320 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "_Icon" msgstr "ไ_อคอน" #: ../bonobo/bonobo-ui-config-widget.c:326 msgid "_Text and Icon" msgstr "_ข้อความและไอคอน" #: ../bonobo/bonobo-ui-config-widget.c:332 msgid "Text only" msgstr "ข้อความเท่านั้น" #: ../bonobo/bonobo-ui-config-widget.c:338 msgid "_Priority text only" msgstr "_ข้อความที่สำคัญเท่านั้น" #: ../bonobo/bonobo-ui-engine.c:91 msgid "Debug" msgstr "ดีบั๊ก" #: ../bonobo/bonobo-ui-engine.c:91 msgid "_Dump XML" msgstr "_Dump XML" #: ../bonobo/bonobo-ui-engine.c:92 msgid "Dump the entire UI's XML description to the console" msgstr "Dump รายละเอียด XML ของ UI ไปยังคอนโซล" #: ../bonobo/bonobo-ui-engine-config.c:522 msgid "Configure UI" msgstr "ปรับแต่ง UI" #: ../bonobo/bonobo-ui-init-gtk.c:131 msgid "Gdk debugging flags to set" msgstr "flag สำหรับการดีบั๊กของ Gdk ที่จะตั้ง" #: ../bonobo/bonobo-ui-init-gtk.c:131 ../bonobo/bonobo-ui-init-gtk.c:134 #: ../bonobo/bonobo-ui-init-gtk.c:162 ../bonobo/bonobo-ui-init-gtk.c:165 msgid "FLAGS" msgstr "FLAGS" #: ../bonobo/bonobo-ui-init-gtk.c:134 msgid "Gdk debugging flags to unset" msgstr "flag สำหรับการดีบั๊กของ Gdk ที่จะล้าง" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "X display to use" msgstr "ดิสเพลย์ X ที่จะใช้" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "DISPLAY" msgstr "DISPLAY" #: ../bonobo/bonobo-ui-init-gtk.c:142 msgid "X screen to use" msgstr "สกรีน X ที่ใช้" #: ../bonobo/bonobo-ui-init-gtk.c:142 msgid "SCREEN" msgstr "SCREEN" #: ../bonobo/bonobo-ui-init-gtk.c:146 msgid "Make X calls synchronous" msgstr "ใช้การเรียก X แบบซิงโครนัส" #: ../bonobo/bonobo-ui-init-gtk.c:152 msgid "Don't use X shared memory extension" msgstr "ไม่ใช้ส่วนขยายการใช้หน่วยความจำร่วมของ X" #: ../bonobo/bonobo-ui-init-gtk.c:156 msgid "Program name as used by the window manager" msgstr "ชื่อโปรแกรมที่ใช้โดยโปรแกรมจัดการหน้าต่าง" #: ../bonobo/bonobo-ui-init-gtk.c:156 msgid "NAME" msgstr "NAME" #: ../bonobo/bonobo-ui-init-gtk.c:159 msgid "Program class as used by the window manager" msgstr "คลาสโปรแกรมที่ใช้โดยโปรแกรมจัดการหน้าต่าง" #: ../bonobo/bonobo-ui-init-gtk.c:159 msgid "CLASS" msgstr "CLASS" #: ../bonobo/bonobo-ui-init-gtk.c:162 msgid "Gtk+ debugging flags to set" msgstr "flag สำหรับการดีบั๊กของ Gtk+ ที่จะตั้ง" #: ../bonobo/bonobo-ui-init-gtk.c:165 msgid "Gtk+ debugging flags to unset" msgstr "flag สำหรับการดีบั๊กของ Gtk+ ที่จะล้าง" #: ../bonobo/bonobo-ui-init-gtk.c:168 msgid "Make all warnings fatal" msgstr "ถือว่าทุกคำเตือนร้ายแรง" #: ../bonobo/bonobo-ui-init-gtk.c:171 msgid "Load an additional Gtk module" msgstr "โหลดมอดูล Gtk เพิ่มเติม" #: ../bonobo/bonobo-ui-init-gtk.c:171 msgid "MODULE" msgstr "MODULE" #: ../bonobo/bonobo-ui-init-gtk.c:187 msgid "GTK+" msgstr "GTK+" #: ../bonobo/bonobo-ui-main.c:278 msgid "Bonobo GUI support" msgstr "การสนับสนุน GUI ของ Bonobo" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "B_oth" msgstr "ทั้ง_สองอย่าง" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "T_ext" msgstr "ข้อ_ความ" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Hide t_ips" msgstr "ซ่อนคำแ_นะนำ" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Show t_ips" msgstr "แสดงคำแ_นะนำ" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "_Hide toolbar" msgstr "_ซ่อนแถบเครื่องมือ" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "Customi_ze" msgstr "ปรับแ_ก้" #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Customize the toolbar" msgstr "ปรับแก้แถบเครื่องมือ" #: ../bonobo/bonobo-ui-toolbar.c:1115 msgid "is floating" msgstr "ลอยอยู่หรือไม่" #: ../bonobo/bonobo-ui-toolbar.c:1116 msgid "whether the toolbar is floating" msgstr "กำหนดว่าแถบเครื่องมือลอยอยู่หรือไม่" #: ../bonobo/bonobo-ui-toolbar.c:1162 msgid "Style of bevel around the toolbar" msgstr "รูปแบบของความต่างระดับที่ขอบแถบเครื่องมือ" #: ../bonobo/bonobo-ui-util.c:601 msgid "Could not display help for this application" msgstr "ไม่สามารถแสดงวิธีใช้สำหรับโปรแกรมนี้" #: ../bonobo/bonobo-ui-util.c:643 msgid "_Contents" msgstr "เนื้อ_หา" #: ../bonobo/bonobo-ui-util.c:644 msgid "View help for this application" msgstr "แสดงวิธีใช้โปรแกรม" #: ../bonobo/bonobo-window.c:345 msgid "Name of the window - used for configuration serialization." msgstr "ชื่อของหน้าต่าง - ใช้สำหรับการจัดเรียงข้อมูลค่าตั้ง" #: ../bonobo/bonobo-zoomable.c:326 msgid "Zoom level" msgstr "ระดับการขยาย" #: ../bonobo/bonobo-zoomable.c:327 msgid "The degree of enlargment" msgstr "ระดับการเพิ่มค่า" #: ../bonobo/bonobo-zoomable.c:335 msgid "Minimum Zoom level" msgstr "ระดับการขยายต่ำสุด" #: ../bonobo/bonobo-zoomable.c:336 msgid "The minimum degree of enlargment" msgstr "ระดับต่ำสุดในการเพิ่มค่า" #: ../bonobo/bonobo-zoomable.c:344 msgid "Maximum Zoom level" msgstr "ระดับการขยายสูงสุด" #: ../bonobo/bonobo-zoomable.c:345 msgid "The maximum degree of enlargment" msgstr "ระดับสูงสุดในการเพิ่มค่า" #: ../bonobo/bonobo-zoomable.c:353 msgid "Has a minimum Zoom level" msgstr "มีขีดจำกัดล่างของการขยาย" #: ../bonobo/bonobo-zoomable.c:354 msgid "Whether we have a valid minimum zoom level" msgstr "กำหนดว่ามีการจำกัดระดับต่ำสุดของการขยายหรือไม่" #: ../bonobo/bonobo-zoomable.c:361 msgid "Has a maximum Zoom level" msgstr "มีขีดจำกัดบนของระดับการขยาย" #: ../bonobo/bonobo-zoomable.c:362 msgid "Whether we have a valid maximum zoom level" msgstr "กำหนดว่ามีการจำกัดระดับสูงสุดของการขยายหรือไม่" #: ../bonobo/bonobo-zoomable.c:369 msgid "Is continuous" msgstr "ต่อเนื่องหรือไม่" #: ../bonobo/bonobo-zoomable.c:370 msgid "Whether we zoom continuously (as opposed to jumps)" msgstr "กำหนดว่าจะขยายแบบต่อเนื่อง (ตรงข้ามกับกระโดด) หรือไม่" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:1 msgid "About this application" msgstr "เกี่ยวกับโปรแกรมนี้" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:2 msgid "Select" msgstr "เลือก" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:3 msgid "_About..." msgstr "เ_กี่ยวกับ..." #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:4 msgid "_Edit" msgstr "แ_ก้ไข" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:5 #: ../tools/browser/bonobo-browser.xml.h:4 msgid "_File" msgstr "แ_ฟ้ม" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:6 msgid "_Select" msgstr "เ_ลือก" #: ../samples/bonoboui/hello.c:63 msgid "This does nothing; it is only a demonstration." msgstr "ไม่ทำงานอะไร เป็นเพียงการสาธิตเท่านั้น" #: ../samples/bonoboui/hello.c:145 msgid "BonoboUI-Hello." msgstr "BonoboUI-สวัสดี" #: ../samples/bonoboui/hello.c:217 msgid "Gnome Hello" msgstr "Gnome สวัสดี" #. Create Label and put it in the Button: #: ../samples/bonoboui/hello.c:272 msgid "Hello, World!" msgstr "สวัสดีชาวโลก!" #: ../samples/bonoboui/hello.c:312 msgid "Cannot init libbonoboui code" msgstr "ไม่สามารถเริ่มต้นรหัส libbonoboui" #: ../samples/controls/bonobo-sample-controls.c:131 msgid "Could not initialize Bonobo UI" msgstr "ไม่สามารถเริ่มต้น Bonobo UI" #: ../tools/browser/bonobo-browser.desktop.in.h:1 msgid "Bonobo Component Browser" msgstr "เบราว์เซอร์แสดงองค์ประกอบของ Bonobo" #: ../tools/browser/bonobo-browser.desktop.in.h:2 msgid "Shows available Bonobo components" msgstr "แสดงองค์ประกอบ Bononbo ที่มีอยู่" #: ../tools/browser/bonobo-browser.xml.h:1 msgid "About this program..." msgstr "เกี่ยวกับโปรแกรมนี้..." #: ../tools/browser/bonobo-browser.xml.h:2 msgid "Close the current window" msgstr "ปิดหน้าต่างปัจจุบัน" #: ../tools/browser/bonobo-browser.xml.h:3 msgid "Open a new window" msgstr "เปิดหน้าต่างใหม่" #: ../tools/browser/bonobo-browser.xml.h:5 msgid "_Help" msgstr "_วิธีใช้" #. Build the general tab #: ../tools/browser/component-details.c:109 msgid "General" msgstr "ทั่วไป" #: ../tools/browser/component-details.c:116 #: ../tools/browser/component-list.c:398 msgid "IID" msgstr "IID" #: ../tools/browser/component-details.c:117 msgid "Location" msgstr "ตำแหน่ง" #. Build the details tab #: ../tools/browser/component-details.c:167 msgid "Details" msgstr "รายละเอียด" #: ../tools/browser/component-details.c:168 msgid "Detailed Information" msgstr "ข้อมูลอย่างละเอียด" #: ../tools/browser/component-list.c:367 ../tools/browser/window.c:283 msgid "Active" msgstr "ทำงานอยู่" #: ../tools/browser/component-list.c:388 msgid "Type" msgstr "ประเภท" #: ../tools/browser/window.c:162 msgid "Component Details" msgstr "รายละเอียดองค์ประกอบ" #: ../tools/browser/window.c:208 msgid "Bonobo Browser" msgstr "เบราว์เซอร์ Bonobo" #: ../tools/browser/window.c:210 msgid "Copyright 2001, The GNOME Foundation" msgstr "สงวนลิขสิทธิ์ 2001 มูลนิธิ GNOME" #: ../tools/browser/window.c:211 msgid "Bonobo component browser" msgstr "เบราว์เซอร์แสดงองค์ประกอบของ Bonobo" #: ../tools/browser/window.c:214 msgid "translator-credits" msgstr "aka.ape " #. create the window #: ../tools/browser/window.c:240 msgid "Component Browser" msgstr "เบราว์เซอร์แสดงองค์ประกอบ" #. Fill out the tool bar #: ../tools/browser/window.c:280 msgid "All" msgstr "ทั้งหมด" #: ../tools/browser/window.c:286 msgid "Inactive" msgstr "ไม่ทำงาน" libbonoboui-2.24.5/po/eo.po0000664000076400007640000002676011433016366012441 00000000000000# Esperanto translation for libbonoboui # Copyright (c) 2010 Rosetta Contributors and Canonical Ltd 2010 # This file is distributed under the same license as the libbonoboui package. # Kristjan SCHMIDT , 2010. # msgid "" msgstr "" "Project-Id-Version: libbonoboui\n" "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=bonobo&component=libbonoboui\n" "POT-Creation-Date: 2010-05-12 22:49+0000\n" "PO-Revision-Date: 2010-06-04 20:49+0100\n" "Last-Translator: Kristjan SCHMIDT \n" "Language-Team: Esperanto \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Launchpad-Export-Date: 2010-06-04 18:48+0000\n" "X-Generator: Launchpad (build Unknown)\n" #: ../bonobo/bonobo-canvas-item.c:680 msgid "corba factory" msgstr "" #: ../bonobo/bonobo-canvas-item.c:681 msgid "The factory pointer" msgstr "" #: ../bonobo/bonobo-canvas-item.c:690 msgid "corba UI container" msgstr "" #: ../bonobo/bonobo-canvas-item.c:691 msgid "The User interface container" msgstr "" #: ../bonobo/bonobo-dock-item-grip.c:254 msgid "Dock the toolbar" msgstr "" #: ../bonobo/bonobo-dock-item-grip.c:255 msgid "Undock the toolbar" msgstr "" #: ../bonobo/bonobo-dock-item.c:225 #: ../bonobo/bonobo-dock-item.c:226 #: ../bonobo/bonobo-ui-toolbar.c:1163 msgid "Shadow type" msgstr "" #: ../bonobo/bonobo-dock-item.c:236 #: ../bonobo/bonobo-dock-item.c:237 #: ../bonobo/bonobo-ui-toolbar.c:1107 #: ../bonobo/bonobo-ui-toolbar.c:1108 msgid "Orientation" msgstr "Orientiĝo" #: ../bonobo/bonobo-dock-item.c:247 #: ../bonobo/bonobo-dock-item.c:248 #: ../bonobo/bonobo-ui-toolbar.c:1126 #: ../bonobo/bonobo-ui-toolbar.c:1127 msgid "Preferred width" msgstr "Preferata larĝo" #: ../bonobo/bonobo-dock-item.c:256 #: ../bonobo/bonobo-dock-item.c:257 #: ../bonobo/bonobo-ui-toolbar.c:1135 #: ../bonobo/bonobo-ui-toolbar.c:1136 msgid "Preferred height" msgstr "Preferata alto" #: ../bonobo/bonobo-file-selector-util.c:350 msgid "Select a file to open" msgstr "Elekti dosieron por malfermi" #: ../bonobo/bonobo-file-selector-util.c:378 msgid "Select files to open" msgstr "Elekti dosierojn por malfermi" #: ../bonobo/bonobo-file-selector-util.c:407 msgid "Select a filename to save" msgstr "Elekti dosiernomon por konservi" #: ../bonobo/bonobo-plug.c:425 msgid "Event Forwarding" msgstr "" #: ../bonobo/bonobo-plug.c:426 msgid "Whether X events should be forwarded" msgstr "" #: ../bonobo/bonobo-selector-widget.c:300 #: ../bonobo/bonobo-window.c:347 #: ../tools/browser/component-details.c:108 #: ../tools/browser/component-list.c:369 msgid "Name" msgstr "Nomo" #: ../bonobo/bonobo-selector-widget.c:322 #: ../tools/browser/component-details.c:109 msgid "Description" msgstr "Priskribo" #: ../bonobo/bonobo-selector.c:343 msgid "Interfaces required" msgstr "" #: ../bonobo/bonobo-selector.c:344 msgid "A NULL-terminated array of interfaces which a server must support in order to be listed in the selector. Defaults to \"IDL:Bonobo/Embeddable:1.0\" if no interfaces are listed" msgstr "" #: ../bonobo/bonobo-selector.c:346 msgid "Interface required entry" msgstr "" #: ../bonobo/bonobo-selector.c:347 msgid "One of the interfaces that's required" msgstr "" #: ../bonobo/bonobo-ui-config-widget.c:267 msgid "Visible" msgstr "Videble" #: ../bonobo/bonobo-ui-config-widget.c:274 msgid "_Show" msgstr "_Montri" #: ../bonobo/bonobo-ui-config-widget.c:281 msgid "_Hide" msgstr "_Kaŝi" #: ../bonobo/bonobo-ui-config-widget.c:287 msgid "_View tooltips" msgstr "" #: ../bonobo/bonobo-ui-config-widget.c:292 msgid "Toolbars" msgstr "Ilobretoj" #: ../bonobo/bonobo-ui-config-widget.c:302 msgid "toolbars" msgstr "ilobretoj" #: ../bonobo/bonobo-ui-config-widget.c:313 #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "Look" msgstr "Aspekto" #: ../bonobo/bonobo-ui-config-widget.c:322 #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "_Icon" msgstr "_Piktogramo" #: ../bonobo/bonobo-ui-config-widget.c:328 msgid "_Text and Icon" msgstr "" #: ../bonobo/bonobo-ui-config-widget.c:334 msgid "Text only" msgstr "Nur teksto" #: ../bonobo/bonobo-ui-config-widget.c:340 msgid "_Priority text only" msgstr "" #: ../bonobo/bonobo-ui-engine.c:93 msgid "Debug" msgstr "Sencimigo" #: ../bonobo/bonobo-ui-engine.c:93 msgid "_Dump XML" msgstr "" #: ../bonobo/bonobo-ui-engine.c:94 msgid "Dump the entire UI's XML description to the console" msgstr "" #: ../bonobo/bonobo-ui-engine-config.c:524 msgid "Configure UI" msgstr "" #: ../bonobo/bonobo-ui-init-gtk.c:131 msgid "Gdk debugging flags to set" msgstr "Gdk malcimigaj flagoj por marki" #: ../bonobo/bonobo-ui-init-gtk.c:131 #: ../bonobo/bonobo-ui-init-gtk.c:134 #: ../bonobo/bonobo-ui-init-gtk.c:162 #: ../bonobo/bonobo-ui-init-gtk.c:165 msgid "FLAGS" msgstr "FLAGOJ" #: ../bonobo/bonobo-ui-init-gtk.c:134 msgid "Gdk debugging flags to unset" msgstr "Gdk malcimigaj flagoj por malmarki" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "X display to use" msgstr "X-vidigilo uzota" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "DISPLAY" msgstr "VIDIGILO" #: ../bonobo/bonobo-ui-init-gtk.c:142 msgid "X screen to use" msgstr "X-ekrano uzota" #: ../bonobo/bonobo-ui-init-gtk.c:142 msgid "SCREEN" msgstr "EKRANO" #: ../bonobo/bonobo-ui-init-gtk.c:146 msgid "Make X calls synchronous" msgstr "Fari X-vokojn sinkrone" #: ../bonobo/bonobo-ui-init-gtk.c:152 msgid "Don't use X shared memory extension" msgstr "" #: ../bonobo/bonobo-ui-init-gtk.c:156 msgid "Program name as used by the window manager" msgstr "Programnomo kiel uzata de la fenestra administrilo" #: ../bonobo/bonobo-ui-init-gtk.c:156 msgid "NAME" msgstr "NOMO" #: ../bonobo/bonobo-ui-init-gtk.c:159 msgid "Program class as used by the window manager" msgstr "Programa klaso kiel uzata de la administrilo por fenestroj" #: ../bonobo/bonobo-ui-init-gtk.c:159 msgid "CLASS" msgstr "KLASO" #: ../bonobo/bonobo-ui-init-gtk.c:162 msgid "Gtk+ debugging flags to set" msgstr "" #: ../bonobo/bonobo-ui-init-gtk.c:165 msgid "Gtk+ debugging flags to unset" msgstr "" #: ../bonobo/bonobo-ui-init-gtk.c:168 msgid "Make all warnings fatal" msgstr "Igi ĉiujn avertojn fatalaj" #: ../bonobo/bonobo-ui-init-gtk.c:171 msgid "Load an additional Gtk module" msgstr "" #: ../bonobo/bonobo-ui-init-gtk.c:171 msgid "MODULE" msgstr "MODULO" #: ../bonobo/bonobo-ui-init-gtk.c:187 msgid "GTK+" msgstr "GTK+" #: ../bonobo/bonobo-ui-main.c:281 msgid "Bonobo GUI support" msgstr "" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "B_oth" msgstr "A_mbaŭ" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "T_ext" msgstr "T_eksto" #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Hide t_ips" msgstr "" #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Show t_ips" msgstr "" #: ../bonobo/bonobo-ui-sync-toolbar.c:570 msgid "_Hide toolbar" msgstr "_Kaŝi ilobreton" #: ../bonobo/bonobo-ui-sync-toolbar.c:570 msgid "Customi_ze" msgstr "" #: ../bonobo/bonobo-ui-sync-toolbar.c:571 msgid "Customize the toolbar" msgstr "" #: ../bonobo/bonobo-ui-toolbar.c:1117 msgid "is floating" msgstr "" #: ../bonobo/bonobo-ui-toolbar.c:1118 msgid "whether the toolbar is floating" msgstr "" #: ../bonobo/bonobo-ui-toolbar.c:1164 msgid "Style of bevel around the toolbar" msgstr "" #: ../bonobo/bonobo-ui-util.c:602 msgid "Could not display help for this application" msgstr "" #: ../bonobo/bonobo-ui-util.c:644 msgid "_Contents" msgstr "_Enhavoj" #: ../bonobo/bonobo-ui-util.c:645 msgid "View help for this application" msgstr "_Montri helpon pri tiu aplikaĵo" #: ../bonobo/bonobo-window.c:348 msgid "Name of the window - used for configuration serialization." msgstr "" #: ../bonobo/bonobo-zoomable.c:326 msgid "Zoom level" msgstr "" #: ../bonobo/bonobo-zoomable.c:327 msgid "The degree of enlargment" msgstr "" #: ../bonobo/bonobo-zoomable.c:335 msgid "Minimum Zoom level" msgstr "" #: ../bonobo/bonobo-zoomable.c:336 msgid "The minimum degree of enlargment" msgstr "" #: ../bonobo/bonobo-zoomable.c:344 msgid "Maximum Zoom level" msgstr "" #: ../bonobo/bonobo-zoomable.c:345 msgid "The maximum degree of enlargment" msgstr "" #: ../bonobo/bonobo-zoomable.c:353 msgid "Has a minimum Zoom level" msgstr "" #: ../bonobo/bonobo-zoomable.c:354 msgid "Whether we have a valid minimum zoom level" msgstr "" #: ../bonobo/bonobo-zoomable.c:361 msgid "Has a maximum Zoom level" msgstr "" #: ../bonobo/bonobo-zoomable.c:362 msgid "Whether we have a valid maximum zoom level" msgstr "" #: ../bonobo/bonobo-zoomable.c:369 msgid "Is continuous" msgstr "" #: ../bonobo/bonobo-zoomable.c:370 msgid "Whether we zoom continuously (as opposed to jumps)" msgstr "" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:1 msgid "About this application" msgstr "Pri ĉi tiu aplikaĵo" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:2 msgid "Select" msgstr "Elekti" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:3 msgid "_About..." msgstr "_Pri..." #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:4 msgid "_Edit" msgstr "R_edakti" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:5 #: ../tools/browser/bonobo-browser.xml.h:4 msgid "_File" msgstr "_Dosiero" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:6 msgid "_Select" msgstr "_Elekti" #: ../samples/bonoboui/hello.c:65 msgid "This does nothing; it is only a demonstration." msgstr "" #: ../samples/bonoboui/hello.c:147 msgid "BonoboUI-Hello." msgstr "" #: ../samples/bonoboui/hello.c:219 msgid "Gnome Hello" msgstr "" #. Create Label and put it in the Button: #: ../samples/bonoboui/hello.c:274 msgid "Hello, World!" msgstr "Saluton mondo!" #: ../samples/bonoboui/hello.c:314 msgid "Cannot init libbonoboui code" msgstr "" #: ../samples/controls/bonobo-sample-controls.c:133 msgid "Could not initialize Bonobo UI" msgstr "" #: ../tools/browser/bonobo-browser.desktop.in.h:1 msgid "Bonobo Component Browser" msgstr "" #: ../tools/browser/bonobo-browser.desktop.in.h:2 msgid "Shows available Bonobo components" msgstr "" #: ../tools/browser/bonobo-browser.xml.h:1 msgid "About this program..." msgstr "Pri ĉi tiu aplikaĵo..." #: ../tools/browser/bonobo-browser.xml.h:2 msgid "Close the current window" msgstr "Fermi la aktualan fenestron" #: ../tools/browser/bonobo-browser.xml.h:3 msgid "Open a new window" msgstr "Malfermi novan fenestron" #: ../tools/browser/bonobo-browser.xml.h:5 msgid "_Help" msgstr "_Helpo" #. Build the general tab #: ../tools/browser/component-details.c:103 msgid "General" msgstr "Ĝenerale" #: ../tools/browser/component-details.c:110 #: ../tools/browser/component-list.c:389 msgid "IID" msgstr "" #: ../tools/browser/component-details.c:111 msgid "Location" msgstr "Loko" #. Build the details tab #: ../tools/browser/component-details.c:161 msgid "Details" msgstr "Detaloj" #: ../tools/browser/component-details.c:162 msgid "Detailed Information" msgstr "" #: ../tools/browser/component-list.c:358 #: ../tools/browser/window.c:283 msgid "Active" msgstr "Aktive" #: ../tools/browser/component-list.c:379 msgid "Type" msgstr "Tipo" #: ../tools/browser/window.c:162 msgid "Component Details" msgstr "" #: ../tools/browser/window.c:208 msgid "Bonobo Browser" msgstr "" #: ../tools/browser/window.c:210 msgid "Copyright 2001, The GNOME Foundation" msgstr "" #: ../tools/browser/window.c:211 msgid "Bonobo component browser" msgstr "" #: ../tools/browser/window.c:214 msgid "translator-credits" msgstr "" "Launchpad Contributions:\n" " Kristjan https://launchpad.net/~kristjan-eo" #. create the window #: ../tools/browser/window.c:240 msgid "Component Browser" msgstr "" #. Fill out the tool bar #: ../tools/browser/window.c:280 msgid "All" msgstr "Ĉiuj" #: ../tools/browser/window.c:286 msgid "Inactive" msgstr "Neaktive" libbonoboui-2.24.5/po/nb.po0000664000076400007640000003201611546334521012425 00000000000000# Norwegian translation of Bonobo (bokmål dialect). # Copyright (C) 1999-2003 Free Software Foundation, Inc. # # Kjartan Maraas , 1999-2003. # Torstein Adolf Winterseth , 2010. msgid "" msgstr "" "Project-Id-Version: libbonoboui 2.5.0\n" "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug." "cgi?product=libbonoboui&component=general\n" "POT-Creation-Date: 2009-05-02 13:08+0000\n" "PO-Revision-Date: 2010-12-30 21:44+0100\n" "Last-Translator: Torstein Adolf Winterseth \n" "Language-Team: Norwegian Bokmål \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8-bit\n" "X-Generator: Lokalize 1.1\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" #: ../bonobo/bonobo-canvas-item.c:680 msgid "corba factory" msgstr "corba factory" #: ../bonobo/bonobo-canvas-item.c:681 msgid "The factory pointer" msgstr "Factory peker" #: ../bonobo/bonobo-canvas-item.c:690 msgid "corba UI container" msgstr "corba UI-kontainer" #: ../bonobo/bonobo-canvas-item.c:691 msgid "The User interface container" msgstr "Kontainer for brukergrensesnitt" #: ../bonobo/bonobo-dock-item-grip.c:254 msgid "Dock the toolbar" msgstr "Fest verktøylinjen" #: ../bonobo/bonobo-dock-item-grip.c:255 msgid "Undock the toolbar" msgstr "Løsne verktøylinjen" #: ../bonobo/bonobo-dock-item.c:225 ../bonobo/bonobo-dock-item.c:226 #: ../bonobo/bonobo-ui-toolbar.c:1163 msgid "Shadow type" msgstr "Type skygge" #: ../bonobo/bonobo-dock-item.c:236 ../bonobo/bonobo-dock-item.c:237 #: ../bonobo/bonobo-ui-toolbar.c:1107 ../bonobo/bonobo-ui-toolbar.c:1108 msgid "Orientation" msgstr "Orientering" #: ../bonobo/bonobo-dock-item.c:247 ../bonobo/bonobo-dock-item.c:248 #: ../bonobo/bonobo-ui-toolbar.c:1126 ../bonobo/bonobo-ui-toolbar.c:1127 msgid "Preferred width" msgstr "Foretrukket bredde" #: ../bonobo/bonobo-dock-item.c:256 ../bonobo/bonobo-dock-item.c:257 #: ../bonobo/bonobo-ui-toolbar.c:1135 ../bonobo/bonobo-ui-toolbar.c:1136 msgid "Preferred height" msgstr "Foretrukket høyde" #: ../bonobo/bonobo-file-selector-util.c:350 msgid "Select a file to open" msgstr "Velg en fil som skal åpnes" #: ../bonobo/bonobo-file-selector-util.c:378 msgid "Select files to open" msgstr "Velg filer som skal åpnes" #: ../bonobo/bonobo-file-selector-util.c:407 msgid "Select a filename to save" msgstr "Velg et fil som skal lagres" #: ../bonobo/bonobo-plug.c:425 msgid "Event Forwarding" msgstr "Videresending av hendelser" #: ../bonobo/bonobo-plug.c:426 msgid "Whether X events should be forwarded" msgstr "X-hendelser skal videresendes" #: ../bonobo/bonobo-selector-widget.c:300 ../bonobo/bonobo-window.c:347 #: ../tools/browser/component-details.c:108 #: ../tools/browser/component-list.c:369 msgid "Name" msgstr "Navn" #: ../bonobo/bonobo-selector-widget.c:322 #: ../tools/browser/component-details.c:109 msgid "Description" msgstr "Beskrivelse" #: ../bonobo/bonobo-selector.c:343 msgid "Interfaces required" msgstr "Nødvendige grensesnitt" #: ../bonobo/bonobo-selector.c:344 msgid "" "A NULL-terminated array of interfaces which a server must support in order " "to be listed in the selector. Defaults to \"IDL:Bonobo/Embeddable:1.0\" if " "no interfaces are listed" msgstr "" "En NULL-terminert tabell med grensesnitt som en tjener må støtte for å kunne " "listes i utvalget. Forvalgt verdi er «IDL:Bonobo/Embeddable:1.0» hvis ingen " "grensesnitt er listet" #: ../bonobo/bonobo-selector.c:346 msgid "Interface required entry" msgstr "Oppføring som kreves av grensesnittet" #: ../bonobo/bonobo-selector.c:347 msgid "One of the interfaces that's required" msgstr "Ett av grensesnittene som kreves" #: ../bonobo/bonobo-ui-config-widget.c:267 msgid "Visible" msgstr "Synlig" #: ../bonobo/bonobo-ui-config-widget.c:274 msgid "_Show" msgstr "_Vis" #: ../bonobo/bonobo-ui-config-widget.c:281 msgid "_Hide" msgstr "_Skjul" #: ../bonobo/bonobo-ui-config-widget.c:287 msgid "_View tooltips" msgstr "_Vis verktøytips" #: ../bonobo/bonobo-ui-config-widget.c:292 msgid "Toolbars" msgstr "Verktøylinjer" #: ../bonobo/bonobo-ui-config-widget.c:302 msgid "toolbars" msgstr "verktøylinjer" #: ../bonobo/bonobo-ui-config-widget.c:313 #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "Look" msgstr "Utseende" #: ../bonobo/bonobo-ui-config-widget.c:322 #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "_Icon" msgstr "_Ikon" #: ../bonobo/bonobo-ui-config-widget.c:328 msgid "_Text and Icon" msgstr "_Tekst og ikon" #: ../bonobo/bonobo-ui-config-widget.c:334 msgid "Text only" msgstr "Kun tekst" #: ../bonobo/bonobo-ui-config-widget.c:340 msgid "_Priority text only" msgstr "Kun _prioritetstekst" #: ../bonobo/bonobo-ui-engine.c:93 msgid "Debug" msgstr "Feilsøk" #: ../bonobo/bonobo-ui-engine.c:93 msgid "_Dump XML" msgstr "_Dump XML" #: ../bonobo/bonobo-ui-engine.c:94 msgid "Dump the entire UI's XML description to the console" msgstr "Dump hele XML-beskrivelsen for brukergrensesnittet til konsollet" #: ../bonobo/bonobo-ui-engine-config.c:524 msgid "Configure UI" msgstr "Konfigurer UI" #: ../bonobo/bonobo-ui-init-gtk.c:131 msgid "Gdk debugging flags to set" msgstr "Gdk avlusingsflagg som skal settes" #: ../bonobo/bonobo-ui-init-gtk.c:131 ../bonobo/bonobo-ui-init-gtk.c:134 #: ../bonobo/bonobo-ui-init-gtk.c:162 ../bonobo/bonobo-ui-init-gtk.c:165 msgid "FLAGS" msgstr "FLAGG" #: ../bonobo/bonobo-ui-init-gtk.c:134 msgid "Gdk debugging flags to unset" msgstr "Gdk-avlusingsflagg som skal nullstilles" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "X display to use" msgstr "X-skjerm som skal brukes" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "DISPLAY" msgstr "SKJERM" #: ../bonobo/bonobo-ui-init-gtk.c:142 msgid "X screen to use" msgstr "X-skjerm som skal brukes" #: ../bonobo/bonobo-ui-init-gtk.c:142 msgid "SCREEN" msgstr "SKJERM" #: ../bonobo/bonobo-ui-init-gtk.c:146 msgid "Make X calls synchronous" msgstr "Gjør X-kall synkrone" #: ../bonobo/bonobo-ui-init-gtk.c:152 msgid "Don't use X shared memory extension" msgstr "Ikke bruk X-utvidelse for delt minne" #: ../bonobo/bonobo-ui-init-gtk.c:156 msgid "Program name as used by the window manager" msgstr "Programnavn som brukt av vindushåndtereren" #: ../bonobo/bonobo-ui-init-gtk.c:156 msgid "NAME" msgstr "NAVN" #: ../bonobo/bonobo-ui-init-gtk.c:159 msgid "Program class as used by the window manager" msgstr "Programklasse som brukt av vindushåndtereren" #: ../bonobo/bonobo-ui-init-gtk.c:159 msgid "CLASS" msgstr "KLASSE" #: ../bonobo/bonobo-ui-init-gtk.c:162 msgid "Gtk+ debugging flags to set" msgstr "Gtk+-avlusingsflagg som skal settes" #: ../bonobo/bonobo-ui-init-gtk.c:165 msgid "Gtk+ debugging flags to unset" msgstr "Gtk+-avlusingsflagg som skal nullstilles" #: ../bonobo/bonobo-ui-init-gtk.c:168 msgid "Make all warnings fatal" msgstr "Gjør alle advarsler fatale" #: ../bonobo/bonobo-ui-init-gtk.c:171 msgid "Load an additional Gtk module" msgstr "Last en ekstra Gtk-modul" #: ../bonobo/bonobo-ui-init-gtk.c:171 msgid "MODULE" msgstr "MODUL" #: ../bonobo/bonobo-ui-init-gtk.c:187 msgid "GTK+" msgstr "GTK+" #: ../bonobo/bonobo-ui-main.c:281 msgid "Bonobo GUI support" msgstr "Støtte for Bonobo-GUI" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "B_oth" msgstr "B_egge" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "T_ext" msgstr "T_ekst" #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Hide t_ips" msgstr "Skjul t_ips" #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Show t_ips" msgstr "Vis t_ips" #: ../bonobo/bonobo-ui-sync-toolbar.c:570 msgid "_Hide toolbar" msgstr "Sk_jul verktøylinjen" #: ../bonobo/bonobo-ui-sync-toolbar.c:570 msgid "Customi_ze" msgstr "Tilpas_s" #: ../bonobo/bonobo-ui-sync-toolbar.c:571 msgid "Customize the toolbar" msgstr "Tilpass verktøylinjen" #: ../bonobo/bonobo-ui-toolbar.c:1117 msgid "is floating" msgstr "er flytende" #: ../bonobo/bonobo-ui-toolbar.c:1118 msgid "whether the toolbar is floating" msgstr "om verktøylinjen er flytende" #: ../bonobo/bonobo-ui-toolbar.c:1164 msgid "Style of bevel around the toolbar" msgstr "Stil på kanten rundt verktøylinjen" #: ../bonobo/bonobo-ui-util.c:602 msgid "Could not display help for this application" msgstr "Kunne ikke vise hjelp for dette programmet" #: ../bonobo/bonobo-ui-util.c:644 msgid "_Contents" msgstr "_Innhold" #: ../bonobo/bonobo-ui-util.c:645 msgid "View help for this application" msgstr "Vis hjelp for denne applikasjonen" #: ../bonobo/bonobo-window.c:348 msgid "Name of the window - used for configuration serialization." msgstr "Navn på vinduet - brukes for serialisering av konfigurasjon." #: ../bonobo/bonobo-zoomable.c:326 msgid "Zoom level" msgstr "Zoom-nivå" #: ../bonobo/bonobo-zoomable.c:327 msgid "The degree of enlargment" msgstr "Graden av forstørring" #: ../bonobo/bonobo-zoomable.c:335 msgid "Minimum Zoom level" msgstr "Minste zoom-nivå" #: ../bonobo/bonobo-zoomable.c:336 msgid "The minimum degree of enlargment" msgstr "Minste grad av forstørring" #: ../bonobo/bonobo-zoomable.c:344 msgid "Maximum Zoom level" msgstr "Største zoom-nivå" #: ../bonobo/bonobo-zoomable.c:345 msgid "The maximum degree of enlargment" msgstr "Største grad av forstørring" #: ../bonobo/bonobo-zoomable.c:353 msgid "Has a minimum Zoom level" msgstr "Har et minste zoom-nivå" #: ../bonobo/bonobo-zoomable.c:354 msgid "Whether we have a valid minimum zoom level" msgstr "Om vi har et gyldig minste zoom-nivå" #: ../bonobo/bonobo-zoomable.c:361 msgid "Has a maximum Zoom level" msgstr "Har et maksimalt zoom-nivå" #: ../bonobo/bonobo-zoomable.c:362 msgid "Whether we have a valid maximum zoom level" msgstr "Om vi har et gyldig største zoom-nivå" #: ../bonobo/bonobo-zoomable.c:369 msgid "Is continuous" msgstr "Er kontinuerlig" #: ../bonobo/bonobo-zoomable.c:370 msgid "Whether we zoom continuously (as opposed to jumps)" msgstr "Om vi zoomer kontinuerlig (i motsetning til sprangvis)" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:1 msgid "About this application" msgstr "Om denne applikasjonen" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:2 msgid "Select" msgstr "Velg" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:3 msgid "_About..." msgstr "_Om …" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:4 msgid "_Edit" msgstr "R_ediger" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:5 #: ../tools/browser/bonobo-browser.xml.h:4 msgid "_File" msgstr "_Fil" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:6 msgid "_Select" msgstr "_Velg" #: ../samples/bonoboui/hello.c:65 msgid "This does nothing; it is only a demonstration." msgstr "Dette gjør ingenting; kun en demonstrasjon." #: ../samples/bonoboui/hello.c:147 msgid "BonoboUI-Hello." msgstr "BonoboUI-Hallo." #: ../samples/bonoboui/hello.c:219 msgid "Gnome Hello" msgstr "GNOME hallo" #. Create Label and put it in the Button: #: ../samples/bonoboui/hello.c:274 msgid "Hello, World!" msgstr "Hallo verden!" #: ../samples/bonoboui/hello.c:314 msgid "Cannot init libbonoboui code" msgstr "Kan ikke initiere libbonoboui" #: ../samples/controls/bonobo-sample-controls.c:133 msgid "Could not initialize Bonobo UI" msgstr "Kunne ikke initiere Bonobo-UI" #: ../tools/browser/bonobo-browser.desktop.in.h:1 msgid "Bonobo Component Browser" msgstr "Komponentvisning for Bonobo" #: ../tools/browser/bonobo-browser.desktop.in.h:2 msgid "Shows available Bonobo components" msgstr "Viser tilgjengelige Bonobo-komponenter" #: ../tools/browser/bonobo-browser.xml.h:1 msgid "About this program..." msgstr "Om dette programmet …" #: ../tools/browser/bonobo-browser.xml.h:2 msgid "Close the current window" msgstr "Lukk dette vinduet" #: ../tools/browser/bonobo-browser.xml.h:3 msgid "Open a new window" msgstr "Åpne et nytt vindu" #: ../tools/browser/bonobo-browser.xml.h:5 msgid "_Help" msgstr "_Hjelp" #. Build the general tab #: ../tools/browser/component-details.c:103 msgid "General" msgstr "Generelt" #: ../tools/browser/component-details.c:110 #: ../tools/browser/component-list.c:389 msgid "IID" msgstr "IID" #: ../tools/browser/component-details.c:111 msgid "Location" msgstr "Adresse" #. Build the details tab #: ../tools/browser/component-details.c:161 msgid "Details" msgstr "Detaljer" #: ../tools/browser/component-details.c:162 msgid "Detailed Information" msgstr "Detaljert informasjon" #: ../tools/browser/component-list.c:358 ../tools/browser/window.c:283 msgid "Active" msgstr "Aktiv" #: ../tools/browser/component-list.c:379 msgid "Type" msgstr "Type" #: ../tools/browser/window.c:162 msgid "Component Details" msgstr "Detaljer for komponent" #: ../tools/browser/window.c:208 msgid "Bonobo Browser" msgstr "Bonobovisning" #: ../tools/browser/window.c:210 msgid "Copyright 2001, The GNOME Foundation" msgstr "Opphavsrett 2001, The GNOME Foundation" #: ../tools/browser/window.c:211 msgid "Bonobo component browser" msgstr "Komponentvisning for Bonobo" #: ../tools/browser/window.c:214 msgid "translator-credits" msgstr "" "Kjartan Maraas \n" "Torstein Adolf Winterseth " #. create the window #: ../tools/browser/window.c:240 msgid "Component Browser" msgstr "Komponentvisning" #. Fill out the tool bar #: ../tools/browser/window.c:280 msgid "All" msgstr "Alle" #: ../tools/browser/window.c:286 msgid "Inactive" msgstr "Inaktiv" libbonoboui-2.24.5/po/ChangeLog0000644000076400007640000020275411173072741013245 000000000000002009-03-25 Shankar Prasad * kn.po: Updated Kannada translations. 2009-03-18 Djihed Afifi * ar.po: Updated Arabic translation by Khaled Hosny. 2009-03-14 Kostas Papadimas * el.po: Updated Greek Translation by Jennie Petoumenou. 2009-03-13 Ignacio Casal Quinteiro * gl.po: Updated Galician translation 2009-03-07 Mișu Moldovan * ro.po: Updated Romanian translation. ============================ 2.24.1 ======================== 2009-03-06 Rajesh Ranjan * hi.po: Updated Hindi Translation. 2009-02-05 Manoj Kumar Giri * or.po: Updated Oriya Translation. 2009-01-31 Chao-Hsiung Liao * zh_HK.po: Updated Traditional Chinese translation(Hong Kong). * zh_TW.po: Updated Traditional Chinese translation(Taiwan). 2009-01-24 Raivis DEjus * lv.po: Updated Latvian translation. 2008-12-01 Pema Geyleg * dz.po: Updated Dzongkha Translation 2008-10-19 Djihed Afifi * ar.po: Updated Arabic Translation by Khaled Hosny. 2008-09-30 Og Maciel * pt_BR.po: Updated Brazilian Portuguese translation by Vladimir Melo. 2008-09-29 Alexander Shopov * bg.po: Updated Bulgarian translation by Alexander Shopov ======================== 2.24.0 ==================== 2008-09-22 Runa Bhattacharjee * bn_IN.po: Minor typ correction in the Bengali India Translation 2008-09-19 Mugurel Tudor * ro.po: Updated Romanian translation by Mişu Moldovan 2008-09-19 I. Felix * ta.po: Tamil Translation updated 2008-09-18 Djihed Afifi * ar.po: Updated Arabic Translation by Khaled Hosny. 2008-09-16 Krishnababu K * te.po: Updated Telugu Translation. 2008-09-15 Djihed Afifi * ar.po: Updated Arabic Translation by Khaled Hosny. 2008-09-14 Goran Rakić * sr.po, sr@latin.po: Updated Serbian translation. 2008-09-12 Duarte Loreto * pt.po: Fixed Portuguese terminology. 2008-09-09 Robert Sedak * hr.po: Updated Croatian translation. 2008-09-09 Baris Cicek * tr.po: Updated Turkish translation 2008-08-28 Rajesh Ranjan * mai.po: Added Maithili translation. 2008-08-25 Goran Rakic * LINGUAS, sr@latin.po, sr@Latn.po: Conversion from sr@Latn to sr@latin. 2008-08-06 Praveen Arimbrathodiyil * ml.po: Updated Malayalam translation. 2008-08-06 Djihed Afifi * ar.po: Updated Arabic Translation by Khaled Hosny. 2008-07-29 Djihed Afifi * ar.po: Updated Arabic Translation by Khaled Hosny. 2008-07-25 Leonardo Ferreira Fontenelle * pt_BR.po: Terminology improvements by Vladimir Melo. 2008-07-16 Laurent Dhima * sq.po: Updated Albanian Translation. 2008-07-11 Runa Bhattacharjee * ps.po: Added Pashto Translations by Zabeeh Khan * LINGUAS: Added Pashto (ps) to the List of Languages. 2008-06-11 Djihed Afifi * ar.po: Updated Arabic Translation by Khaled Hosny. 2008-05-27 Badral Sanligiin * mn.po: Updated Mongolian Translation. 2008-05-22 Djihed Afifi * ar.po: Updated Arabic Translation by Khaled Hosny. 2008-05-19 Djihed Afifi * ar.po: Updated Arabic Translation by Khaled Hosny. 2008-04-12 Jorge Gonzalez * es.po: Updated Spanish translation 2008-03-20 Laurent Dhima * sq.po: Updated Albanian Translation. 2008-03-18 Laurent Dhima * sq.po: Updated Albanian Translation. ============================ libbonoboui 2.22.0 ========================= 2008-03-09 Nickolay V. Shmyrev * ru.po: Updated Russian translation. 2008-03-07 Mugurel Tudor *ro.po: Updated Romanian translation by Mişu Moldovan 2008-03-06 Marcel Telka * sk.po: Updated Slovak translation. 2008-03-03 Rahul Bhalerao * mr.po: Updated Marathi translations from Sandeep Shedmake. 2008-03-02 Jorge Gonzalez * es.po: Updated Spanish translation 2008-03-02 Gintautas Miliauskas * lt.po: Updated Lithuanian translation. 2008-02-29 Åsmund Skjæveland * nn.po: Updated Norwegian Nynorsk translation. 2008-02-29 Ankit Patel * gu.po: Updated Gujarati Translation. 2008-02-26 Gabor Kelemen * hu.po: Translation updated 2008-02-25 Luca Ferretti * it.po: Updated Italian translation. 2008-02-19 Kenneth Nielsen * da.po: Updated Danish translation 2008-02-17 Yair Hershkovitz * he.po: Updated Hebrew translation. 2008-02-17 David Lodge * en_GB.po: Updated British English translation 2008-02-16 Artur Flinta * pl.po: Updated Polish translation by GNOME PL Team. 2008-02-16 Petr Kovar * cs.po: Updated Czech translation by Lucas Lommer. 2008-02-15 Changwoo Ryu * ko.po: Updated Korean translation. 2008-02-14 Ignacio Casal Quinteiro * gl.po: Updated Galician Translation. 2008-02-14 Pawan Chitrakar * ne.po: Updated Nepali Translation. 2008-02-13 Ilkka Tuohela * fi.po: Updated Finnish translation. 2008-02-09 Arangel Angov * mk.po: Updated Macedonian translation. 2008-02-05 Priit Laes * et.po: Translation updated by Ivar Smolin 2008-02-05 Amitakhya Phukan * LINGUAS: Added as. * as.po: Updated assamese translations. 2008-02-02 Yannig Marchegay * oc.po: Updated Occitan translation. 2008-02-02 Takeshi AIHANA * ja.po: Updated Japanese translation. 2008-01-31 Djihed Afifi * ar.po: Updated Arabic Translation by Khaled Hosny. 2008-01-29 Yannig Marchegay * oc.po: Updated Occitan translation. ========================== libbonoboui 2.21.90 =================== 2008-01-27 Gil Forcada * ca.po: Update Catalan translation. 2008-01-25 Maxim Dziumanenko * uk.po: Update Ukrainian translation. 2008-01-25 Theppitak Karoonboonyanan * th.po: Updated Thai translation. 2008-01-24 Danishka Navin * LINGUAS: Added si (Sinhala) 2008-01-24 Wouter Bolsterlee * nl.po: Dutch translation updated by Wouter Bolsterlee. 2008-01-23 Duarte Loreto * pt.po: Updated Portuguese translation. 2008-01-17 Claude Paroz * fr.po: Updated French translation. 2008-01-13 Andre Klapper * de.po: Updated German translation. 2008-01-12 Djihed Afifi * ar.po: Updated Arabic Translation by Khaled Hosny. 2008-01-04 Clytie Siddall * vi.po: Updated Vietnamese translation. 2008-01-03 Andre Klapper * af.po: Updated Afrikaans translation by Friedel Wolff 2008-01-03 I. Felix * ta.po: Tamil Translation updated by Thangamani Arul 2007-12-27 Leonardo Ferreira Fontenelle * pt_BR.po: Updated Brazilian Portuguese translation. 2007-12-27 Inaki Larranaga Murgoitio * eu.po: Updated Basque translation. 2007-12-23 Djihed Afifi * ar.po: Updated Arabic Translation by Djihed Afifi. 2007-12-06 Kjartan Maraas * nb.po: Updated Norwegian bokmål translation. 2007-11-30 Daniel Nylander * sv.po: Updated Swedish translation. 2007-11-19 Priit Laes * et.po: Translation updated by Ivar Smolin. 2007-11-14 Jorge Gonzalez * es.po: Updated Spanish translation 2007-11-14 Alexander Shopov * bg.po: Updated Bulgarian translation by Alexander Shopov 2007-10-23 Djihed Afifi * ar.po: Updated Arabic Translation by Khaled Hosny. 2007-10-21 Djihed Afifi * ar.po: Updated Arabic Translation by Khaled Hosny. 2007-10-21 Djihed Afifi * ar.po: Updated Arabic Translation by Khaled Hosny. 2007-09-30 Stéphane Raimbault * fr.po: Fixed French translation. =============================== 2.20.0 ======================= 2007-09-17 Danishka Navin * LINGUAS: Added 'si'. * si.po: Added Sinhala translation by Danishka Navin. 2007-09-13 Djihed Afifi * ar.po: Updated Arabic Translation by Khaled Hosny. 2007-08-10 Theppitak Karoonboonyanan * LINGUAS: Added 'th'. * th.po: Added Thai translation by aka.ape . 2007-08-06 Ilkka Tuohela * fi.po: Updated Finnish translation. 2007-08-05 Leonardo Ferreira Fontenelle * pt_BR.po: s/_Conteúdo/S_umário; see bug #461308. 2007-07-07 Takeshi AIHANA * ja.po: Migrated Japanese translation from gnome-2-18. 2007-05-15 Subhransu Behera * or.po: Updated Oriya Translation. 2007-04-15 Peter Bach * da.po: Updated Danish translation. 2007-03-25 Ignacio Casal Quinteiro * gl.po: Updated Galician Translation. ============================= 2.18.0 ======================== 2007-03-09 Leonardo Ferreira Fontenelle * pt_BR.po: Fixes in the Brazilian Portuguese translation for better consistency with other pt_BR translations. 2007-03-06 Laurnet Dhima * sq.po: Updated Albanian translation. 2007-03-03 Artur Flinta * pl.po: Updated Polish translation by GNOME PL Team. 2007-02-27 Gintautas Miliauskas * lt.po: Updated Lithuanian translation. ============================= 2.17.91 ===================== 2007-02-10 Thierry Randrianiriana * LINGUAS: Added "mg". * mg.po: Added Malagasy translation. 2007-02-09 Stéphane Raimbault * fr.po: Update French translation by Jonathan Ernst. 2007-02-8 Djihed Afifi * ar.po: Updated Arabic Translation by Khaled Hosny. ========================== 2.17.90 ======================= 2007-01-18 Maxim Dziumanenko * uk.po: Update Ukrainian translation. 2007-01-17 Matic Zgur * sl.po: Updated Slovenian translation. 2007-01-09 Christian Persch * LINGUAS: Add "dz". 2007-01-05 Gustavo Noronha Silva * pt_BR.po: unfuzzy translator_credits string bug #390878 2006-12-28 Adam Weinberger * en_CA.po: Updated Canadian English translation. 2006-11-18 Matic Zgur * pl.po: Updated Polish translation by GNOME PL Team. 2006-11-11 Djihed Afifi * ar.po: Updated Arabic Translation. 2006-11-08 Yair Hershkovitz * he.po: Updated Hebrew translation. 2006-10-15 Pawan Chitrakar * ne.po: Updated Nepali Translation 2006-10-09 Ignacio Casal Quinteiro * gl.po: Updated Galician Translation. 2006-09-26 Runa Bhattacharjee * bn_IN.po: Fixed some typos. 2006-09-12 Luca Ferretti * it.po: Updated Italian translation. 2006-09-11 Kjartan Maraas * nb.po: Updated Norwegian bokmål translation. 2006-09-09 David Lodge * en_GB.po: Updated English (British) translation. 2006-09-08 Vladimer Sichinava * ka.po: Updated Georgian translation. 2006-09-08 Priit Laes * et.po: Translation updated by Ivar Smolin. 2006-09-06 Pema Geyleg * dz.po: Updated Dzongkha Translation 2006-09-06 Pawan Chitrakar * ne.po: Updated Nepali Translation 2006-09-04 Abel Cheung * zh_HK.po: Updated Chinese (Hong Kong) translation from Woodman Tuen . * zh_TW.po: Updated Chinese (Taiwan) translation from Woodman Tuen . 2006-09-04 Kostas Papadimas * el.po: Updated Greek translation. 2006-09-04 Mugurel Tudor * ro.po: Updated Romanian translation by Mişu Moldovan 2006-09-04 Rajesh Ranjan * hi.po: Updated Hindi Translation. 2006-09-03 Danilo Šegan * sr.po, sr@Latn.po: Updated by Goran Rakić. 2006-09-02 Åsmund Skjæveland * nn.po: Updated Norwegian Nynorsk translation. 2006-09-01 Inaki Larranaga * eu.po: Updated Basque translation. 2006-09-01 Runa Bhattacharjee * bn_IN.po: Updated Bengali India Translation. 2006-09-01 Raivis Dejus * lv.po: Updated Latvian translation. 2006-08-30 I. Felix * ta.po: Translation updated. 2006-08-28 Clytie Siddall * vi.po: Updated Vietnamese translation. 2006-08-27 Clytie Siddall * vi.po: Updated Vietnamese translation. 2006-08-26 Gabor Kelemen * hu.po: Translation updated. 2006-08-26 Žygimantas Beručka * lt.po: Updated Lithuanian translation. 2006-08-25 Christophe Merlet * fr.po: Updated French translation. 2006-08-25 Josep Puigdemont i Casamajó * ca.po: Updated Catalan translation. 2006-08-24 Leonid Kanter * ru.po: Updated Russian translation 2006-08-22 Khandakar Mujahidul Islam * bn.po: Updated Bengali translation 2006-08-20 Funda Wang * zh_CN.po: Updated Simplified Chinese translation. 2006-08-20 Ani Peter * ml.po: Updated Malaylam translation 2006-08-19 Clytie Siddall * vi.po: Updated Vietnamese translation. 2006-08-18 Duarte Loreto * pt.po: Updated Portuguese translation. 2006-08-18 Changwoo Ryu * ko.po: Updated Korean translation. 2006-08-17 Alexander Shopov * bg.po: Updated Bulgarian translation by Alexander Shopov 2006-08-16 Francisco Javier F. Serrador * es.po: Updated Spanish translation. 2006-08-16 Satoru SATOH * ja.po: Updated Japanese translation. 2006-08-16 Artur Flinta * pl.po: Updated Polish translation by GNOME PL Team. 2006-08-15 Sanlig Badral * mn.po: Updated Mongolian translation. 2006-08-15 Hendrik Richter * de.po: Updated German translation. 2006-08-14 Jovan Naumovski * mk.po: Updated Macedonian translation. 2006-08-14 Daniel Nylander * sv.po: Updated Swedish translation. 2006-08-14 Ankit Patel * gu.po: Updated Gujarati Translation. 2006-08-14 Wouter Bolsterlee * nl.po: Dutch translation updated by Wouter Bolsterlee. 2006-08-14 Ilkka Tuohela * fi.po: Updated Finnish translation. 2006-08-11 Matic Žgur * sl.po: Updated Slovenian translation. 2006-08-09 Priit Laes * et.po: Translation updated by Ivar Smolin. ============================= 2.15.0 ====================== 2006-08-08 Baris Cicek * tr.po: Updated Turkish Translation from Burcu Guzel 2006-08-08 Inaki Larranaga * eu.po: Fixed some typos. 2006-08-06 Chao-Hsiung Liao * zh_HK.po: Updated Traditional Chinese translation(Hong Kong). * zh_TW.po: Updated Traditional Chinese translation(Taiwan). 2006-08-02 Lucas Rocha * pt_BR.po: Updated Brazilian Portuguese translation by Leonardo Ferreira Fontenelle 2006-07-31 Maxim Dziumanenko * uk.po: Update Ukrainian translation. 2006-07-21 Christophe Merlet * fr.po: Updated French translation. 2006-07-19 Runa Bhattacharjee * bn_IN.po: Updated Bengali India Translation. 2006-07-11 Subhransu Behera * or.po: Updated Oriya Translation. 2006-07-08 Raivis Dejus * lv.po: Updated Latvian translation. 2006-07-03 Runa Bhattacharjee * bn_IN.po: Added Bengali India Translation. * LINGUAS: Added Bengali India (bn_IN) to the list of languages. 2006-07-01 Žygimantas Beručka * lt.po: Updated Lithuanian translation. 2006-06-20 Rajesh Ranjan * hi.po: Updated Hindi Translation. 2006-06-15 Hendrik Richter * de.po: Updated German translation. 2006-06-10 Josep Puigdemont Casamajó * ca.po: Updated Catalan translation. 2006-06-10 Changwoo Ryu * ko.po: Updated Korean translation. 2006-06-03 Laurent Dhima * sq.po: Updated Albanian translation. 2006-05-28 Pema Geyleg * dz.po: Updated Dzongkha translation. 2006-05-25 Åsmund Skjæveland * nn.po: Updated Norwegian Nynorsk translation. 2006-05-24 Kjartan Maraas * nb.po: Updated Norwegian bokmål translation. 2006-05-23 Clytie Siddall * vi.po: Updated Vietnamese translation. 2006-05-22 Ilkka Tuohela * fi.po: Updated Finnish translation. 2006-05-21 Miloslav Trmac * cs.po: Updated Czech translation. 2006-05-21 Ignacio Casal Quinteiro * gl.po: Updated Galician Translation. 2006-05-21 Daniel Nylander * sv.po: Swedish translation updated. 2006-05-20 Vincent van Adrighem * nl.po: Translation updated. 2006-05-19 Rhys Jones * cy.po: Updated Welsh translation. 2006-05-19 Francisco Javier F. Serrador * es.po: Updated Spanish translation. 2006-05-19 Alexander Shopov * bg.po: Updated Bulgarian translation by Alexander Shopov 2006-05-19 Alexander Shopov * bg.po: Updated Bulgarian translation by Alexander Shopov 2006-05-19 Inaki Larramaga * eu.po: Updated Basque translation. 2006-05-19 Ankit Patel * gu.po: Updated Gujarati Translation. 2006-05-18 Benoît Dejean * fr.po: Updated French translation. 2006-05-17 Pawan Chitrakar * ne.po: Updated Nepali Translation 2006-05-06 Pema Geyleg * dz.po: Updated Dzongkha translation. 2006-04-21 David Lodge * en_GB.po: Translation updated by David Lodge. 2006-04-02 Vladimer Sichinava * ka.po: Added Georgian translation by Gia Shervashidze 2006-03-21 Gora Mohanty * or.po: Updated Oriya translation. 2006-03-15 Gora Mohanty * or.po: Updated Oriya translation. 2006-03-13 Mugurel Tudor * ro.po: Updated Romanian translation by Mişu Moldovan 2006-03-10 Subhransu Behera * or.po: Updated Oriya (or_IN) translation. 2006-03-09 Kjartan Maraas * nn.po: Updated Norwegian nynorsk translation. 2006-03-03 Žygimantas Beručka * lt.po: Updated Lithuanian translation. 2006-01-12 Abel Cheung * zh_HK.po: New Chinese (Hong Kong) translation * zh_TW.po: Updated Chinese (Taiwan) translation 2005-12-11 Vincent van Adrighem * nl.po: Translation updated by Tino Meinen. 2005-11-21 Ales Nyakhaychyk * be.po: Updated Belarusian translation by Vital Khilko 2005-10-20 Runa Bhattacharjee * bn.po: Updated Bengali (bn) translation. Translation by Khandakar Mujahidul Islam 2005-10-15 Vincent van Adrighem * nl.po: Translation updated. 2005-10-01 Runa Bhattacharjee * bn.po: Updated Bengali (bn) translation. Translation by Khandakar Mujahidul Islam 2005-09-29 Christian Rose * sv.po: Reverted unauthorized changes made by user 'kloczek'. 2005-09-18 Alessio Frusciante * it.po: Updated Italian translation. 2005-09-10 Erdal Ronahi * ku.po: Added Kurdish Translation 2005-09-05 Baris Cicek * tr.po: Updated Turkish Translation 2005-09-05 Iñaki Larrañaga * eu.po: Updated Basque translation. 2005-09-01 Raphael Higino * pt_BR.po: Updated Brazilian Portuguese translation. 2005-09-01 Leonid Kanter * ru.po: Updated Russian translation 2005-08-31 Žygimantas Beručka * lt.po: Updated Lithuanian translation. 2005-08-30 Mohammad DAMT * id.po: Updated Indonesian translation. 2005-08-30 Changwoo Ryu * ko.po: Updated Korean translation. 2005-08-27 Clytie Siddall * vi.po: Updated Vietnamese translation. 2005-08-27 Christophe Merlet * fr.po: Updated French translation. 2005-08-25 Jordi Mallach * ca.po: Updated Catalan translation. 2005-08-25 Vincent van Adrighem * nl.po: Translation updated. 2005-08-20 Roozbeh Pournader * fa.po: Updated Persian translation by Meelad Zakaria and myself. 2005-08-18 Rhys Jones * cy.po: Updated Welsh translation. 2005-08-18 Takeshi AIHANA * ja.po: Updated Japanese translation. 2005-08-16 Priit Laes * et.po: Translation updated by Ivar Smolin. 2005-08-15 Maxim Dziumanenko * uk.po: Updated Ukrainian translation 2005-08-15 Mugurel Tudor * ro.po: Updated Romanian translation by Mişu Moldovan 2005-08-15 Christian Rose * sv.po: Updated Swedish translation. 2005-08-13 Alexander Shopov * bg.po: Updated Bulgarian translation by Alexander Shopov 2005-08-12 Kostas Papadimas * el.po: Updated Greek translation. 2005-08-01 Vincent van Adrighem * nl.po: Translation updated. 2005-07-28 Hendrik Brandt * de.po: Updated German translation. 2005-07-28 Ilkka Tuohela * fi.po: Updated Finnish translation. 2005-07-26 Artur Flinta * pl.po: Updated Polish translation by GNOME PL Team. 2005-07-23 Duarte Loreto * pt.po: Updated Portuguese translation. 2005-07-21 Ankit Patel * gu.po: Updated Gujarati Translation. 2005-07-16 Laurent Dhima * sq.po: Updated Albanian translation. 2005-07-12 Gabor Kelemen * hu.po: Hungarian translation updated. 2005-07-09 Alexander Shopov * bg.po: Updated Bulgarian translation by Alexander Shopov 2005-07-09 Danilo Šegan * sr.po, sr@Latn.po: Updated Serbian translation. 2005-07-06 Francisco Javier F. Serrador * es.po: Updated Spanish translation. 2005-07-04 Hendrik Richter * de.po: Fixed German translation by Jens Seidel . 2005-07-01 Chao-Hsiung Liao * zh_TW.po: Updated Traditional Chinese translation. 2005-06-22 Abel Cheung * zh_TW.po: Fix language team reference. 2005-06-12 Miloslav Trmac * cs.po: Updated Czech translation. 2005-06-11 Marcel Telka * sk.po: Updated Slovak translation. 2005-06-11 Funda Wang * zh_CN.po: Updated Simplified Chinese translation. 2005-06-10 Priit Laes * et.po: Translation updated. 2005-06-08 Martin Willemoes Hansen * da.po: Updated Danish translation. 2005-06-05 Ignacio Casal Quinteiro * gl.po: Updated Galician translation. 2005-06-01 Adam Weinberger * en_CA.po: Updated Canadian English translation. 2005-05-31 Terance Sola * nb.po: Updated * no.po: Updated 2005-05-05 Pawan Chitrakar * ne.po: Updated Nepali translation 2005-04-14 Iaki Larraaga * eu.po: Updated Basque translation. 2005-03-30 Steve Murphy * rw.po: Added Kinyarwanda translation. 2005-03-30 Abel Cheung * zh_TW.po: Updated traditional Chinese translation from GNOME HK Team 2005-03-17 Adam Weinberger * en_CA.po: Updated Canadian English translation. 2005-03-09 Ahmad Riza H Nst * id.po: Updated Indonesian Translation. 2005-03-05 Dan Damian * ro.po: Updated Romanian translation by Mişu Moldovan . 2005-02-28 Kostas Papadimas * el.po: Updated Greek translation. 2005-02-25 Ankit Patel * gu.po: Updated Gujarati Translation. 2005-02-24 Arafat Medini * ar.po: Updated Arabic translation. 2005-02-21 Priit Laes * et.po: Translation updated by Ivar Smolin. 2005-02-20 Christophe Merlet * fr.po: Updated French translation. 2005-02-17 Adi Attar * xh.po: Updated Xhosa translation. 2005-02-15 Dmitry G. Mastrukov * be.po: Updated Belarusian translation from Belarusian team . 2005-02-14 Priit Laes * et.po: Translation updated by Ivar Smolin. 2005-02-11 Danilo Šegan * sr.po, sr@Latn.po: Updated Serbian translation. 2005-02-09 Maxim Dziumanenko * uk.po: Updated Ukrainian translation 2005-02-08 Christian Rose * xh.po: Added Xhosa translation by Adi Attar . 2005-02-06 Laszlo Dvornik * hu.po: Hungarian translation updated. 2005-02-06 Kostas Papadimas * el.po: Updated Greek translation. 2005-02-06 Pauli Virtanen * fi.po: Updated Finnish translation. 2005-02-05 Takeshi AIHANA * ja.po: Updated Japanese translation. 2005-02-02 Alexander Shopov * bg.po: Updated Bulgarian translation by Alexander Shopov 2005-01-31 Martin Willemoes Hansen * da.po: Updated Danish translation. 2005-01-31 Žygimantas Beručka * lt.po: Updated Lithuanian translation. 2005-01-30 David Lodge * en_GB.po: Updated British translation. 2005-01-28 Jordi Mallach * ca.po: Updated Catalan translation. 2005-01-26 Changwoo Ryu * ko.po: Updated Korean translation. 2005-01-25 Raphael Higino * pt_BR.po: Updated Brazilian Portuguese translation. 2005-01-24 Duarte Loreto * pt.po: Updated Portuguese translation. 2005-01-23 Alessio Frusciante * it.po: Updated Italian translation. 2005-01-21 Kjartan Maraas * nn.po: Update some 2005-01-20 Frank Arnold * de.po: Updated German translation. 2005-01-19 Kjartan Maraas * nb.po: Update * no.po: Update 2005-01-19 Vincent van Adrighem * nl.po: Translation updated by Tino Meinen. 2005-01-16 Miloslav Trmac * cs.po: Updated Czech translation. 2005-01-14 Telsa Gwynne * cy.po: Updated Welsh translation. (And then fixed update, sigh.) 2005-01-14 Laurent Dhima * sq.po: Updated Albanian translation. 2005-01-14 Funda Wang * zh_CN.po: Updated Simplified Chinese translation. 2005-01-12 Marcel Telka * sk.po: Updated Slovak translation. 2005-01-12 Adam Weinberger * en_CA.po: Updated Canadian English translation. 2005-01-12 Artur Flinta * pl.po: Updated Polish translation by GNOME PL Team. 2005-01-12 Francisco Javier F. Serrador * es.po: Updated Spanish translation. 2005-01-10 Duarte Loreto * pt.po: Updated Portuguese translation. 2005-01-08 Rhys Jones * cy.po: Updated Welsh translation. 2004-12-18 Christian Rose * sv.po: Updated Swedish translation. 2004-12-17 Leonid Kanter * ru.po: Updated Russian translation 2004-12-04 Žygimantas Beručka * lt.po: Updated Lithuanian translation. 2004-12-03 Dwayne Bailey * zu.po: Updated Zulu translation. 2004-12-02 Dwayne Bailey * zu.po: Added Zulu translation by Zuza Software Foundation . 2004-11-25 Kjartan Maraas * nb.po: Update. 2004-11-15 Dwayne Bailey * nso.po: Added Northern Sotho translation by Zuza Software Foundation . 2004-11-15 Hendrik Richter * de.po: Updated German translation. 2004-11-09 Funda Wang * zh_CN.po: Updated Simplified Chinese translation. 2004-11-09 Alexander Shopov * bg.po: Updated Bulgarian translation by Vladimir Petkov 2004-11-06 Martin Willemoes Hansen * da.po: Updated Danish translation. 2004-11-05 Laszlo Dvornik * hu.po: Hungarian translation updated. 2004-10-26 Gora Mohanty * or.po: Updated Oriya translation. 2004-10-23 Francisco Javier F. Serrador * es.po: Updated Spanih translation. 2004-10-19 Laurent Dhima * sq.po: Updated Albanian translation. 2004-10-15 Danilo Šegan * sr.po, sr@Latn.po: Updated Serbian translation. 2004-10-03 David Lodge * en_GB.po: Updated British English translation. 2004-10-03 Marcel Telka * sk.po: Updated Slovak translation. 2004-10-03 Miloslav Trmac * cs.po: Updated Czech translation. 2004-10-02 Jesus Bravo Alvarez * gl.po: Added Galician translation. 2004-10-01 Adam Weinberger * en_CA.po: Updated Canadian English translation. 2004-09-27 Rodrigo Moya * POTFILES.in: added missing files from tools/browser/. 2004-09-24 Adam Weinberger * en_CA.po: Updated Canadian English translation. 2004-09-12 Laszlo Dvornik * hu.po: Updated Hungarian translation by Gabor Kelemen. 2004-09-08 Gora Mohanty * or.po: Updated Oriya translation. 2004-08-31 Francisco Javier F. Serrador * es.po: Updated Spanish translation. 2004-08-29 Pawan Chitrakar * ne.po: Updated Nepali Translation 2004-08-26 Laszlo Dvornik * hu.po: Updated Hungarian translation. 2004-08-20 Laurent Dhima * sq.po: Updated Albanian translation. 2004-08-18 Laurent Dhima * sq.po: Updated Albanian translation. 2004-08-16 Christian Rose * bs.po: Added Bosnian translation by Kenan Hadžiavdić . 2004-08-13 Tommi Vainikainen * fi.po: Unified some fields in po headers for Finnish team. 2004-08-11 Kjartan Maraas * nb.po: Added correctly named Norwegian translation. 2004-08-09 Ankit Patel * gu.po: Updated Gujarati translation. 2004-08-09 Amanpreet Singh Alam * pa.po: Updated Panjabi translation. 2004-08-03 Maxim Dziumanenko * uk.po: Updated Ukrainian translation 2004-07-28 Laurent Dhima * sq.po: Updated Albanian translation. 2004-07-27 Alexander Shopov * bg.po: Updated Bulgarian translation by Rostislav "zbrox" Raykov 2004-07-24 Guntupalli Karunakar * hi.po: Updated Hindi translation. 2004-06-28 Laurent Dhima * sq.po: Translation updated. 2004-04-16 Iñaki Larrañaga * eu.po: Added Basque translation. 2004-04-09 Guntupalli Karunakar * gu.po: Added Gujurati translation by Gujarati Team . 2004-03-31 Christian Rose * af.po: Added Afrikaans translation by Zuza Software Foundation . 2004-03-30 Adam Weinberger * en_CA.po: Added Canadian English translation. 2004-03-30 Baris Cicek * tr.po: Updated Turkish Translation. 2004-03-21 Alastair McKinstry * ga.po: Initial Irish translation. 2004-03-18 Mugurel Tudor * ro.po: Updated Romanian translation by Mişu Moldovan 2004-03-14 Gareth Owen * en_GB.po: Added British translation 2004-03-14 Robert Sedak * hr.po: Updated Croatian translation. 2004-03-10 Maxim Dziumanenko * uk.po: Updated Ukrainian translation 2004-03-08 Dinesh Nadarajah * ta.po: Updated Tamil Translation. 2004-03-06 Priit Laes * et.po: Translation added. 2004-03-04 Guntupalli Karunakar * pa.po: Added Punjabi translation by Amanpreet Singh Alam . 2004-02-29 Arafat medini * ar.po: Updated Arabic translation. 2004-02-29 Christophe Merlet * fr.po: Updated French translation. 2004-02-25 Danilo Šegan * sr@ije.po: Added Serbian Jekavian translation by Bojan Suzić . 2004-02-20 Laurent Dhima * sq.po: Fixed Albanian translation. 2004-02-18 Andras Timar * hu.po: Updated Hungarian translation. 2004-02-12 Alessio Frusciante * it.po: Updated Italian translation. 2004-02-12 Laurent Dhima * sq.po: Updated Albanian translation. 2004-02-12 Danilo Šegan * sr.po, sr@Latn.po: Reviewed Serbian translation. 2004-02-11 Arafat Medini * ar.po: Updated Arabic translation. 2004-02-07 Robert Sedak * hr.po: Updated Croatian translation. 2004-02-02 Hasbullah Bin Pit * ms.po: Updated Malay translation. 2004-01-31 Laurent Dhima * sq.po: Updated Albanian translation. 2004-01-30 Changwoo Ryu * ko.po: Updated Korean translation. 2004-01-28 Miloslav Trmac * cs.po: Fixed Czech translation. 2004-01-27 Åsmund Skjæveland * nn.po: Updated Norwegian Nynorsk translation. 2004-01-16 Laurent Dhima * sq.po: Updated Albanian translation. 2003-12-29 Christian Rose * hr.po: Updated Croatian translation by Robert Sedak . 2003-12-27 �mund Skj�eland * nn.po: Updated Norwegian Nynorsk translation. 2003-12-20 Arafat Medini * ar.po: Updated Arabic translation 2003-12-07 Duarte �retp * pt.po: Revised Portuguese translation. 2003-11-27 Kjartan Maraas * no.po: Update Norwegian translation. 2003-11-13 Jordi Mallach * ca.po: Updated Catalan translation. 2003-10-16 Yogeesh MB * kn.po: Updated Kannada translation by Pramod . 2003-10-06 Christian Rose * mr.po: Added Marathi translation by Vikas Chavan . 2003-10-06 Åsmund Skjæveland * nn.po: Updated Norwegian (nynorsk) translation. 2003-09-30 Gustavo Maciel Dias Vieira * pt_BR.po: Applied revision by Augusta Marques da Silva . 2003-09-28 Gediminas Paulauskas * lt.po: Added Lithuanian translation by Tomas Kuliavas. 2003-09-09 Taneem Ahmed * bn.po: Added Bangla translation by Suzan of Ankur group . 2003-09-03 Kostas Papadimas * el.po: Updated Greek translation 2003-09-03 Mugurel Tudor * ro.po: Updated Romanian translation by Mişu Moldovan 2003-08-31 Christian Rose * ne.po: Added Nepali translation by Pawan Chitrakar . 2003-08-31 Laurent Dhima * sq.po: Added Albanian translation. 2003-08-28 Pablo Gonzalo del Campo * es.po: Revision of Spanish translation by Francisco Javier F. Serrador . 2003-08-27 Vincent van Adrighem * nl.po: Dutch translation updated by Kees van den Broek. 2003-08-26 Dafydd Harries * cy.po: Updated Welsh translation. 2003-08-25 Takeshi AIHANA * ja.po: Updated Japanese translation. 2003-08-23 Danilo Šegan * sr.po, sr@Latn.po: Updated Serbian translation. 2003-08-22 Sanlig Badral * mn.po: Updated Mongolian translation. 2003-08-19 Abel Cheung * zh_TW.po: Updated traditional Chinese translation. 2003-08-18 Richard Allen * is.po: Added Icelandic translation. 2003-08-18 Kjartan Maraas * no.po: Update Norwegian translation. 2003-08-18 Metin Amiroff * az.po: Updated Azerbaijani translation. 2003-08-10 Changwoo Ryu * ko.po: Updated Korean translation. 2003-08-09 Wang Jian * zh_CN.po: Updated Simplified Chinese translation by Funda Wang . 2003-08-07 Guntupalli Karunakar * hi.po: Updated Hindi translation. 2003-07-25 Alessio Frusciante * it.po: Updated Italian translation by Luca Ferretti and me. 2003-07-24 Dmitry G. Mastrukov * be.po: Updated Belarusian translation from Belarusian team . 2003-07-15 Pablo Gonzalo del Campo * es.po: Updated Spanish translation by Francisco Javier F. Serrador . 2003-07-09 Andras Timar * hu.po: Updated Hungarian translation. 2003-07-07 Pablo Saratxaga * wa.po: Updated Walloon file 2003-07-07 Vincent van Adrighem * nl.po: Dutch translation updated by Kees van den Broek. 2003-06-04 Christian Rose * sv.po: Updated Swedish translation. 2003-06-29 Christophe Merlet * fr.po: Updated French translation. 2003-06-27 Artur Flinta * pl.po: Updated Polish translation. 2003-06-23 Danilo Šegan * sr.po, sr@Latn.po: Updated Serbian translation by Serbian team (Prevod.org). 2003-06-23 Vincent van Adrighem * nl.po: Dutch translation updated by Kees van den Broek. 2003-06-22 Metin Amiroff * az.po: Updated Azerbaijani translation. 2003-06-21 Gil "Dolfin" Osher * he.po: Update Hebrew translation. 2003-06-18 Ole Laursen * da.po: Unfuzzied an entry. 2003-06-18 Dmitry G. Mastrukov * ru.po: Updated Russian translation from Russian team . 2003-06-17 Pauli Virtanen * fi.po: Updated Finnish translation. 2003-06-16 Gustavo Noronha Silva * pt_BR.po: minor update on translation. 2003-06-14 Vincent van Adrighem * nl.po: Dutch translation updated by Huib Kleinhout. 2003-06-12 Guntupalli Karunakar * ml.po: Malayalam translation update. 2003-06-12 Mohammad DAMT * id.po: Updated Indonesian translation 2003-06-04 Abel Cheung * ta.po: Fix broken encoding. 2003-06-04 Jordi Mallach * ca.po: Updated Catalan translation. 2003-06-03 Mathieu van Woerkom * li.po: Updated 2003-05-31 Dafydd Harries * cy.po: Updated Welsh translation. 2003-05-29 Abel Cheung * POTFILES.skip: Added samples/canvdemo/* * zh_TW.po: Updated traditional Chinese translation. 2003-05-26 Duarte Loreto * pt.po: Updated Portuguese translation. 2003-05-26 Marcel Telka * sk.po: Updated Slovak translation. 2003-05-23 Telsa Gwynne * cy.po: Added Welsh translation from Dafydd Harries 2003-05-20 Arafat Medini * ar.po: Updated Arabic translation. 2003-05-20 Miloslav Trmac * cs.po: Updated Czech translation. 2003-05-20 Christian Rose * sv.po: Updated Swedish translation. 2003-05-20 Dmitry G. Mastrukov * be.po: Updated Belarusian translation from Belarusian team . 2003-05-19 Ole Laursen * da.po: Updated Danish translation. 2003-05-19 Kenneth Rohde Christiansen * li.po: Added Limburgish translation from Mathieu van Woerkom. 2003-05-19 Dmitry G. Mastrukov * be.po: Updated Belarusian translation from Belarusian team . 2003-05-06 Marcel Telka * sk.po: Updated Slovak translation. 2003-05-06 Danilo ? egan * sr.po, sr@Latn.po: Added Serbian translation by http://Prevod.org/. 2003-05-05 Duarte Loreto * pt.po: Updated Portuguese translation. 2003-05-05 Christian Neumair * de.po: Updated German translation. 2003-05-05 KAMAGASAKO Masatoshi * ja.po: Updated Japanese Translation. 2003-05-04 Christophe Merlet * fr.po: Updated French translation. 2003-05-01 Changwoo Ryu * ko.po: Updated Korean translation. 2003-04-30 Abel Cheung * zh_TW.po: Updated traditional Chinese translation. 2003-04-29 Jordi Mallach * ca.po: Updated Catalan translation. 2003-04-29 Christian Rose * sv.po: Updated Swedish translation. 2003-04-21 Michael Meeks * POTFILES.skip: ignore sample-container-ui.xml 2003-03-26 Christian Rose * yi.po: Added Yiddish translation by Raphael Finkel . 2003-03-21 Guntupalli Karunakar * ml.po: Added Malayalam translation by FSF-India 2003-02-26 Miloslav Trmac * cs.po: Updated Czech translation. 2003-02-26 Evandro Fernandes Giovanini * pt_BR.po: Updated Brazilian Portuguese translation. 2003-02-21 Roozbeh Pournader * fa.po: Added Persian translation. 2003-02-21 Metin Amiroff * az.po: Updated Azerbaijani translation. 2003-02-14 Dmitry G. Mastrukov * be.po: Updated Belarusian translation from Belarusian team . 2003-02-09 Christian Rose * kn.po: Added Kannada translation by Pramod . 2003-02-07 Fatih Demir * tr.po: Committed updated Turkish translation by Erkan. 2003-02-06 Christian Rose * id.po: Added Indonesian translation by Mohammad Damt . 2003-02-05 Abel Cheung * zh_TW.po: Updated traditional Chinese translation. 2003-02-03 Daniel Yacob * am.po: Updated Amharic translation. 2003-02-01 Duarte Loreto * pt.po: Updated Portuguese translation. 2003-01-24 Yuriy Syrota * uk.po: Updated Ukrainian translation 2003-01-23 Abel Cheung * zh_TW.po: Updated traditional Chinese translation. 2003-01-22 Marius Andreiana * ro.po: added ( thanks to Mi?Ÿu Moldovan ) 2003-01-22 Christian Rose * mn.po: Added Mongolian translation by Sanlig Badral . 2003-01-16 Pablo Saratxaga * vi.po: Updated Vietnamese file * ar.po: fixed header 2003-01-14 Naba Kumar * hi.po: Updated Hindi translation from Anurag Seetha 2003-01-13 Vincent van Adrighem * nl.po: Dutch translation updated by Huib Kleinhout. 2003-01-13 Jordi Mallach * ca.po: Updated Catalan translation. 2003-01-12 Marcel Telka * sk.po: Updated Slovak translation. 2003-01-10 Dmitry G. Mastrukov * ru.po: updated Russian translation from Russian team . 2003-01-07 Daniel Yacob * am.po: Updated Amharic translation. 2003-01-05 Kostas Papadimas * el.po: Updated Greek translation 2003-01-02 Zbigniew Chyla * pl.po: Updated Polish translation by GNOME PL Team . 2003-01-01 Hasbullah Bin Pit * ms.po: Updated Malay Translation. 2002-12-22 Artis Trops * lv.po: Updated Latvian translation. 2002-12-17 German Poo Caaman~o * es.po: Updated Spanish translation 2002-12-15 Christophe Merlet * fr.po: Updated French translation. 2002-12-13 Daniel Yacob * am.po: Added Amharic translation. 2002-12-10 Yanko Kaneti * bg.po: Updated Bulgarian translation by Alexander Shopov. 2002-12-06 Miloslav Trmac * cs.po: Updaetd Czech translation. 2002-12-04 Andras Timar * hu.po: Updated Hungarian translation. 2002-12-01 Pauli Virtanen * fi.po: Updated Finnish translation. 2002-11-29 Evandro Fernandes Giovanini * pt_BR.po: Updated Brazilian Portuguese translation. 2002-11-27 Ole Laursen * da.po: Updated Danish translation. 2002-11-25 Vincent van Adrighem * nl.po: Massive copy-paste from stable branch. 2002-11-25 Kjartan Maraas * no.po: Updated Norwegian (bokm?¥l) translation. 2002-11-25 Yanko Kaneti * *.po: Convert all to UTF-8. 2002-11-09 Dmitry G. Mastrukov * be.po: Updated Belarusian translation * from Belarusian team . 2002-11-09 Dmitry G. Mastrukov * be.po: Updated Belarusian translation * from Belarusian team . 2002-11-02 Christian Rose * sv.po: Updated Swedish translation. 2002-10-01 Christian Neumair * de.po: Updated German translation. 2002-11-01 Michael Meeks * POTFILES.in: add bonobo-ui-engine.c 2002-09-26 Stanislav Brabec * cs.po: Updated (if fact added) Czech translation from Miloslav Trmac . 2002-09-19 Fatih Demir * tr.po: Committed updated Turkish translation by ?–mer. 2002-09-17 Naba Kumar * hi.po: Updated Hindi translation by Anurag Seetha 2002-09-09 Takayuki KUSANO * ja.po: Updated Japanese translation. 2002-09-04 He Qiangqiang * zh_CN.po: Updated Simplified Chinese translation by Sun G11n . 2002-09-03 Peteris Krisjanis * lv.po: Updated Latvian translation. 2002-08-20 Peteris Krisjanis * lv.po (added): Latvian translation. 2002-08-17 Simos Xenitellis * el.po: Added initial Greek translation. 2002-08-13 Andras Timar * hu.po: Updated Hungarian translation. 2002-08-10 Christian Meyer * de.po: Fixed. 2002-08-05 Manuel Borchers * de.po: Updated German translation by Christian Neumair 2002-08-03 Christian Rose * sv.po: Merged that Sun change that was sane. 2002-07-28 Christophe Merlet * fr.po: Updated French translation from contribution of Sun G11n . 2002-07-26 Gustavo Noronha Silva * pt_BR: New translation, by Evandro Fernandes Giovanini 2002-06-10 Yanko Kaneti * bg.po: Updated Bulgarian translation. 2002-06-10 Naba Kumar * hi.po: Added new hindi translation. 2002-06-10 Pablo Saratxaga * vi.po: Updated Vietnamese file 2002-06-06 Abel Cheung * zh_TW.po: Updated traditional Chinese translation. 2002-06-03 Dmitry G. Mastrukov * ru.po: updated Russian translation 2002-06-02 Germ??n Poo Caama?±o 2002-06-02 Pauli Virtanen * fi.po: Updated Finnish translation. 2002-06-01 Carlos Perell?³ Mar?­n * es.po: Recoded as UTF8 2002-06-01 Pablo Saratxaga * ca.po: Updated Catalan file 2002-05-31 Pablo Saratxaga * vi.po: Updated Vietnamese file 2002-05-30 Changwoo Ryu * ko.po: Updated Korean translation. 2002-05-29 Stanislav Visnovsky * sk.po: Updated Slovak translation by Marcel Telka . 2002-05-28 Vincent van Adrighem * nl.po: Updated Dutch translation (by Tino Meinen). 2002-05-28 Duarte Loreto * pt.po: Updated Portuguese translation. 2002-05-27 Hasbullah Bin Pit * ms.po: Updated Malay Translation. 2002-05-25 Ole Laursen * da.po: Updated Danish translation. 2002-05-25 Zbigniew Chyla * pl.po: Updated Polish translation by GNOME PL Team . 2002-05-25 Christian Rose * sv.po: Updated Swedish translation. 2002-05-23 Christophe Merlet * fr.po: Updated French translation. 2002-05-23 Kjartan Maraas * no.po: Updated Norwegian (bokm?¥l) translation. 2002-05-22 Stanislav Visnovsky * sk.po: Updated Slovak translation by Marcel Telka . 2002-05-21 Ole Laursen * da.po: Updated Danish translation. 2002-05-21 Pauli Virtanen * fi.po: Updated Finnish translation. 2002-05-20 Kjartan Maraas * no.po: Updated Norwegian (bokm?¥l) translation. 2002-05-19 Zbigniew Chyla * pl.po: Updated Polish translation by GNOME PL Team . 2002-05-19 Vlad Harchev * ru.po: updated russian translation from Dmitry G. Mastrukov . 2002-05-19 Vlad Harchev * ru.po: updated russian translation from Dmitry G. Mastrukov . 2002-05-17 Christian Rose * POTFILES.in: Added missing file. * sv.po: Updated Swedish translation. 2002-05-17 Kjartan Maraas * no.po: Updated Norwegian (bokm?¥l) translation. 2002-05-16 Zbigniew Chyla * pl.po: Updated Polish translation by GNOME PL Team . 2002-05-14 Pauli Virtanen * fi.po: Updated Finnish translation. 2002-05-13 Zbigniew Chyla * pl.po: Updated Polish translation by GNOME PL Team . 2002-05-13 Stanislav Visnovsky * sk.po: Updated Slovak translation by Marcel Telka . 2002-05-12 Ole Laursen * da.po: Updated Danish translation. 2002-05-10 Pablo Saratxaga * vi.po: Added Vietnamese file 2002-05-10 Valek Filippov * ru.po: Updated russian translation from Dmitry Mastrukov. 2002-05-05 Duarte Loreto * pt.po: Updated Portuguese translation and converted to UTF-8. 2002-04-26 Vincent van Adrighem * nl.po: Updated Dutch translation (Tino Meinen). 2002-04-20 Christophe Merlet * fr.po: Updated French translation. 2002-04-16 Valek Filippov * ru.po: Updated russian translation from Dmitry Mastrukov. (accelerators added) 2002-04-15 Valek Filippov * ru.po: Updated russian translation from Dmitry Mastrukov. 2002-04-11 Christophe Merlet * fr.po: Updated French translation from work of Christophe Fergeau . 2002-04-06 Ole Laursen * da.po: Updated Danish translation. 2002-04-03 Pauli Virtanen * fi.po: Updated Finnish translation. 2002-04-02 Christian Rose * sv.po: Updated Swedish translation. 2002-04-01 Duarte Loreto * pt.po: Updated Portuguese translation. 2002-03-28 Kjartan Maraas * no.po: Updated Norwegian (bokm?¥l) translation. 2002-03-28 Zbigniew Chyla * pl.po: Updated Polish translation by GNOME PL Team . 2002-03-28 Changwoo Ryu * ko.po: Updated Korean translation. 2002-03-28 Hasbullah Bin Pit * ms.po: Updated Malay Translation. 2002-03-27 Stanislav Visnovsky * sk.po: Updated Slovak translation by Marcel Telka . 2002-03-22 Stanislav Visnovsky * sk.po: Updated Slovak translation by Marcel Telka . 2002-03-20 Zbigniew Chyla * pl.po: Updated Polish translation by GNOME PL Team . 2002-03-20 Pauli Virtanen * fi.po: Updated Finnish translation. 2002-03-20 Changwoo Ryu * ko.po: Updated Korean translation. 2002-03-19 Ole Laursen * da.po: Updated Danish translation. 2002-03-18 Michael Meeks * POTFILES.in: update. 2002-03-17 Kjartan Maraas * no.po: Updated Norwegian (bokm?¥l) translation. 2002-03-15 Valek Filippov * ru.po: Updated russian translation. 2002-03-13 Alexander Shopov * bg.po: Updated Bulgarian translation 2002-03-13 Zbigniew Chyla * pl.po: Updated Polish translation by GNOME PL Team . 2002-03-13 Christian Rose * sv.po: Updated Swedish translation. 2002-03-12 Changwoo Ryu * ko.po: Added Korean translation. 2002-03-11 Takayuki KUSANO * ja.po: Updated Japanese translation. 2002-03-11 Michael Meeks * POTFILES.in: add bonobo-sample-controls.c 2002-03-07 Valek Filippov * ru.po: Updated russian translation. 2002-03-06 Duarte Loreto * pt.po: Updated Portuguese translation. 2002-03-04 H?©ctor Garc?­a ?lvarez * es.po: Updated Spanish translation. 2002-03-03 Christopher R. Gabriel * it.po: Updated italian translation 2002-03-03 Kjartan Maraas * no.po: Updated Norwegian (bokm?¥l) translation. 2002-03-02 Christian Rose * sv.po: Updated Swedish translation. 2002-03-01 Pauli Virtanen * fi.po: Updated Finnish translation. 2002-03-01 Takayuki KUSANO * ja.po: Updated Japanese translation. 2002-03-01 Christian Meyer * de.po: Added German translation. 2002-02-28 Zbigniew Chyla * pl.po: Updated Polish translation by GNOME PL Team . 2002-02-25 Stanislav Visnovsky * sk.po: Updated Slovak translation from Marcel Telka . 2002-02-23 Ole Laursen * da.po: Updated Danish translation. 2002-02-19 Wang Jian * zh_CN.po: Updated Simplified Chinese translation. 2002-02-17 Zbigniew Chyla * pl.po: Added Polish translation by GNOME PL Team . 2002-02-17 Wang Jian * zh_CN.po: Updated Simplified Chinese translation. 2002-02-12 Kjartan Maraas * no.po: Updated Norwegian (bokm?¥l) translation. 2002-02-10 Kjartan Maraas * no.po: Updated Norwegian (bokm?¥l) translation. 2002-02-10 Pauli Virtanen * fi.po: Added Finnish translation. 2002-02-08 Vincent van Adrighem * nl.po: Added Dutch translation (by Huib Kleinhout) 2002-01-30 Ole Laursen * da.po: Updated Danish translation and converted it to UTF-8. 2002-01-30 Roy-Magne Mo * nn.po: Updated Norwegian nynorsk and converted to UTF-8 2002-01-28 Michael Meeks * POTFILES.skip: add test-ui-auto.c 2002-01-28 Alexander Shopov * bg.po: Added Bulgarian tranlsation. 2002-01-27 Christian Rose * sv.po: Converted to UTF-8. 2002-01-20 Hasbullah Bin Pit * ms.po: Added Malay Translation by Mohamad Afifi Omar (App) . 2002-01-17 Takayuki KUSANO * ja.po: Updated Japanese translation. 2002-01-15 Michael Meeks * POTFILES.in: upd from Marcel. 2002-01-11 Kjartan Maraas * no.po: Updated Norwegian (bokm?¥l) translation. 2002-01-10 Stanislav Visnovsky * sk.po: Updated Slovak translation from Marcel Telka . 2002-01-09 jacob berkman * POTFILES.in: remove non-disted file 2002-01-09 Christian Rose * POTFILES.in: Sorted and added missing file. * sv.po: Updated Swedish translation. 2002-01-08 Duarte Loreto * pt.po: Updated portuguese translation 2002-01-07 Michael Meeks * POTFILES.in: update from auto-email thing. * POTFILES.skip: add. 2001-12-27 Duarte Loreto * pt.po: Added portuguese translation 2001-12-23 Takayuki KUSANO * ja.po: Added Japanese translation. 2001-12-13 Kjartan Maraas * no.po: Updated Norwegian (bokm?¥l) translation. 2001-12-11 Yuriy Syrota * uk.po: Added Ukrainian translation. 2001-12-07 Pablo Saratxaga * az.po: Updated Azeri file 2001-12-04 Darin Adler * .cvsignore: Ignore po2tbl files. 2001-12-04 Christian Rose * sv.po: Updated Swedish translation. 2001-11-24 Pablo Saratxaga * wa.po: Updated Walloon file 2001-11-19 Stanislav Visnovsky * sk.po: Updated Slovak translation from Marcel Telka . 2001-11-14 Kjartan Maraas * no.po: Updated Norwegian (bokm?¥l) translation. * POTFILES.in: Added bonobo/bonobo-zoomable.c 2001-11-01 Wang Jian * zh_CN.po: Updated Simplified Chinese translation by Wang Jian . 2001-10-26 Fatih Demir * tr.po: Committed updated Turkish translation by ?–mer. 2001-10-22 Stanislav Visnovsky * sk.po: Updated Slovak translation from Marcel Telka . 2001-10-20 Michael Meeks * POTFILES.in: add bonoboui/hello.c 2001-10-13 Valek Filippov * ru.po: Added russian translation. 2001-10-07 Fatih Demir * ta.po: Committed updated Tamil translation by Balaji. 2001-10-03 Abel Cheung * zh_TW.po: Updated traditional Chinese translation from Joe Man 2001-09-29 Fatih Demir * ta.po: Committed updated Tamil translation by Dinesh. 2001-09-19 Kjartan Maraas * no.po: Updated Norwegian (bokm?¥l) translation. 2001-09-24 Pablo Saratxaga * az.po: Updated Azeri file * es.po: Corrected header 2001-09-24 Fatih Demir * ta.po: Committed updated Turkish translation by Balaji. 2001-09-23 Stanislav Visnovsky * sk.po: Updated Slovak translation from Marcel Telka . 2001-09-23 H?©ctor Garc?­a ?lvarez * es.po: Updated Spanish translation. 2001-08-22 Wang Jian * zh_CN.po: Added Simplified Chinese translation. (Merged from bonobo/po/zh_CN.po) 2001-06-21 Pablo Saratxaga * ca.po: Added Catalan file * wa.po: Updated Walloon file * tr.po: Updated Turkish file 2001-09-20 Fatih Demir * ta.po: Added Tamil translation by Balaji. 2001-09-19 Kjartan Maraas * no.po: Updated Norwegian (bokm?¥l) translation. * POTFILES.in: Added bonobo/bonobo-file-selector-util.c 2001-08-31 Abel Cheung * zh_TW.Big5.po: Rename to ...... * zh_TW.po: This. 2001-08-16 Fatih Demir * tr.po: Added Turkish translation by ?–mer. 2001-08-11 Kjartan Maraas * no.po: Updated Norwegian (bokm?¥l) translation. 2001-08-07 Stanislav Visnovsky * sk.po: Updated Slovak translation from Marcel Telka . 2001-08-05 H?©ctor Garc?­a ?lvarez * es.po: Updated Spanish translation. 2001-07-31 Abel Cheung * zh_TW.Big5.po: New traditional Chinese translation by Joe Man . * ChangeLog: Removed repeating gettextize spam. 2001-07-26 gettextize * Makefile.in.in: Upgrade to gettext-0.10.38. * cat-id-tbl.c: Remove file. * stamp-cat-id: Remove file. 2001-07-19 Anders Carlsson * POTFILES.in: Changed test_selector.c to selector-test.c 2001-07-11 H?©ctor Garc?­a ?lvarez * es.po: Updated Spanish translation. 2001-07-09 Christian Rose * sv.po: Updated Swedish translation. 2001-07-07 Christopher R. Gabriel * it.po: Added italian translation. 2001-07-06 Christian Rose * sv.po: Added Swedish translation. 2001-06-19 H?©ctor Garc?­a ?lvarez * es.po: Added Spanish translation. 2001-06-11 Stanislav Visnovsky * sk.po: Added Slovak translation from Marcel Telka . 2001-06-07 Pablo Saratxaga * wa.po: Added Walloon file * az.po: Added Azeri file 2001-05-30 Christophe Merlet * fr.po: Added French translation. 2001-05-21 Kjartan Maraas * nn.po: Added Norwegian (nynorsk) translation. * no.po: Added Norwegian translation. * POTFILES.in: Populated this. * .cvsignore: Updated. libbonoboui-2.24.5/po/bs.po0000644000076400007640000003106411173072741012431 00000000000000# Bosnian translation of libbonoboui # This file is distributed under the same license as the libbonoboui package. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER. # Kenan Hadžiavdić , 2004. # msgid "" msgstr "" "Project-Id-Version: libbonoboui.HEAD\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2005-09-10 18:44+0200\n" "PO-Revision-Date: 2004-03-16 17:03+0000\n" "Last-Translator: Kenan Hadžiavdić \n" "Language-Team: Bosnian \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Generator: KBabel 1.0.2\n" #: ../bonobo/bonobo-canvas-item.c:683 msgid "corba factory" msgstr "tvornica corba" #: ../bonobo/bonobo-canvas-item.c:684 msgid "The factory pointer" msgstr "Pokazivač za tvornicu" #: ../bonobo/bonobo-canvas-item.c:693 msgid "corba UI container" msgstr "spremište za corba UI" #: ../bonobo/bonobo-canvas-item.c:694 msgid "The User interface container" msgstr "Spremište za korisnički interfejs" #: ../bonobo/bonobo-dock-item-grip.c:257 msgid "Dock the toolbar" msgstr "Pričvrsti traku s alatima" #: ../bonobo/bonobo-dock-item-grip.c:258 #, fuzzy msgid "Undock the toolbar" msgstr "Odvoji traku s alatima" #: ../bonobo/bonobo-dock-item.c:235 ../bonobo/bonobo-dock-item.c:236 #: ../bonobo/bonobo-ui-toolbar.c:1175 msgid "Shadow type" msgstr "Tip sjenčenja" #: ../bonobo/bonobo-dock-item.c:246 ../bonobo/bonobo-dock-item.c:247 #: ../bonobo/bonobo-ui-toolbar.c:1119 ../bonobo/bonobo-ui-toolbar.c:1120 msgid "Orientation" msgstr "Položaj" #: ../bonobo/bonobo-dock-item.c:257 ../bonobo/bonobo-dock-item.c:258 #: ../bonobo/bonobo-ui-toolbar.c:1138 ../bonobo/bonobo-ui-toolbar.c:1139 msgid "Preferred width" msgstr "Željena širina" #: ../bonobo/bonobo-dock-item.c:266 ../bonobo/bonobo-dock-item.c:267 #: ../bonobo/bonobo-ui-toolbar.c:1147 ../bonobo/bonobo-ui-toolbar.c:1148 msgid "Preferred height" msgstr "Željena visina" #: ../bonobo/bonobo-file-selector-util.c:357 msgid "Select a file to open" msgstr "Izaberite datoteku za otvaranje" #: ../bonobo/bonobo-file-selector-util.c:385 msgid "Select files to open" msgstr "Izaberite datoteke za otvaranje" #: ../bonobo/bonobo-file-selector-util.c:414 msgid "Select a filename to save" msgstr "Izaberite ime datoteke koju želite snimiti" #: ../bonobo/bonobo-plug.c:425 msgid "Event Forwarding" msgstr "Prosljeđivanje događaja" #: ../bonobo/bonobo-plug.c:426 msgid "Whether X events should be forwarded" msgstr "Da li događaji u X-u trebaju biti proslijeđeni" #: ../bonobo/bonobo-selector-widget.c:302 ../bonobo/bonobo-window.c:346 #: ../tools/browser/component-details.c:114 #: ../tools/browser/component-list.c:381 msgid "Name" msgstr "Ime" #: ../bonobo/bonobo-selector-widget.c:324 #: ../tools/browser/component-details.c:115 msgid "Description" msgstr "Opis" #: ../bonobo/bonobo-selector.c:345 msgid "Interfaces required" msgstr "Neophodni interfejsi" #: ../bonobo/bonobo-selector.c:346 msgid "" "A NULL-terminated array of interfaces which a server must support in order " "to be listed in the selector. Defaults to \"IDL:Bonobo/Embeddable:1.0\" if " "no interfaces are listed" msgstr "" "Završen NULL-poljem niz interfejsa koje server mora podržavati da bi bio " "naveden u biraču. Uobičajeno je \"IDL:Bonobo/Embeddable:1.0\" ako nema " "navedenih interfejsa" #: ../bonobo/bonobo-selector.c:348 msgid "Interface required entry" msgstr "Obavezni unos za interfejs" #: ../bonobo/bonobo-selector.c:349 msgid "One of the interfaces that's required" msgstr "Jedan od obaveznih interfejsa" #: ../bonobo/bonobo-ui-config-widget.c:268 msgid "Visible" msgstr "Vidljivo" #: ../bonobo/bonobo-ui-config-widget.c:275 msgid "_Show" msgstr "_Pokaži" #: ../bonobo/bonobo-ui-config-widget.c:282 msgid "_Hide" msgstr "_Sakrij" #: ../bonobo/bonobo-ui-config-widget.c:288 msgid "_View tooltips" msgstr "_Pokaži opise alata" #: ../bonobo/bonobo-ui-config-widget.c:293 msgid "Toolbars" msgstr "Trake s alatima" #: ../bonobo/bonobo-ui-config-widget.c:303 msgid "toolbars" msgstr "trake s alatima" #: ../bonobo/bonobo-ui-config-widget.c:314 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "Look" msgstr "Izgled" #: ../bonobo/bonobo-ui-config-widget.c:323 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "_Icon" msgstr "_Ikona" #: ../bonobo/bonobo-ui-config-widget.c:329 msgid "_Text and Icon" msgstr "_Tekst i ikona" #: ../bonobo/bonobo-ui-config-widget.c:335 msgid "Text only" msgstr "Samo tekst" #: ../bonobo/bonobo-ui-config-widget.c:341 msgid "_Priority text only" msgstr "_Samo važan tekst" #: ../bonobo/bonobo-ui-engine.c:90 msgid "Debug" msgstr "Otkrivanje grešaka" #: ../bonobo/bonobo-ui-engine.c:90 msgid "_Dump XML" msgstr "_Ispiši XML" #: ../bonobo/bonobo-ui-engine.c:91 msgid "Dump the entire UI's XML description to the console" msgstr "Ispiši cijeli XML opis korisničkog interfejsa u konzoli" #: ../bonobo/bonobo-ui-engine-config.c:522 msgid "Configure UI" msgstr "Podesi korisnički interfejs" #: ../bonobo/bonobo-ui-init-gtk.c:113 msgid "Gdk debugging flags to set" msgstr "Postavi Gdk zastavice za otkrivanja grešaka" #: ../bonobo/bonobo-ui-init-gtk.c:113 ../bonobo/bonobo-ui-init-gtk.c:116 #: ../bonobo/bonobo-ui-init-gtk.c:144 ../bonobo/bonobo-ui-init-gtk.c:147 msgid "FLAGS" msgstr "ZASTAVICE" #: ../bonobo/bonobo-ui-init-gtk.c:116 msgid "Gdk debugging flags to unset" msgstr "Poništi postavljene Gdk zastavice za otkrivanje grešaka" #: ../bonobo/bonobo-ui-init-gtk.c:120 msgid "X display to use" msgstr "X prikaz koji će se koristiti" #: ../bonobo/bonobo-ui-init-gtk.c:120 msgid "DISPLAY" msgstr "PRIKAZ" #: ../bonobo/bonobo-ui-init-gtk.c:124 msgid "X screen to use" msgstr "X ekran koji će se koristiti" #: ../bonobo/bonobo-ui-init-gtk.c:124 msgid "SCREEN" msgstr "EKRAN" #: ../bonobo/bonobo-ui-init-gtk.c:128 msgid "Make X calls synchronous" msgstr "Sinhroniziraj X pozive" #: ../bonobo/bonobo-ui-init-gtk.c:134 msgid "Don't use X shared memory extension" msgstr "Nemoj koristiti X-nastavak za dijeljenu memoriju" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "Program name as used by the window manager" msgstr "Ime programa koje koristi upravitelj prozora" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "NAME" msgstr "IME" #: ../bonobo/bonobo-ui-init-gtk.c:141 msgid "Program class as used by the window manager" msgstr "Klasa programa koju koristi upravitelj prozora" #: ../bonobo/bonobo-ui-init-gtk.c:141 msgid "CLASS" msgstr "KLASA" #: ../bonobo/bonobo-ui-init-gtk.c:144 msgid "Gtk+ debugging flags to set" msgstr "Postavi Gtk+ zastavice za otkrivanje grešaka" #: ../bonobo/bonobo-ui-init-gtk.c:147 msgid "Gtk+ debugging flags to unset" msgstr "Poništi postavljene Gtk+ zastavice za otkrivanje grešaka" #: ../bonobo/bonobo-ui-init-gtk.c:150 msgid "Make all warnings fatal" msgstr "Učini sva upozorenja fatalnim" #: ../bonobo/bonobo-ui-init-gtk.c:153 msgid "Load an additional Gtk module" msgstr "Učitaj dodatni Gtk modul" #: ../bonobo/bonobo-ui-init-gtk.c:153 msgid "MODULE" msgstr "MODUL" #: ../bonobo/bonobo-ui-init-gtk.c:162 msgid "GTK+" msgstr "GTK+" #: ../bonobo/bonobo-ui-main.c:278 msgid "Bonobo GUI support" msgstr "Podrška za Bonobo GUI" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "B_oth" msgstr "_Oboje" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "T_ext" msgstr "_Tekst" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Hide t_ips" msgstr "Sakrij _savjete" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Show t_ips" msgstr "Pokaži _savjete" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "_Hide toolbar" msgstr "_Sakrij traku s alatima" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "Customi_ze" msgstr "_Prilagodi" #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Customize the toolbar" msgstr "Prilagodi traku s alatima" #: ../bonobo/bonobo-ui-toolbar.c:1129 msgid "is floating" msgstr "je plutajuća" #: ../bonobo/bonobo-ui-toolbar.c:1130 msgid "whether the toolbar is floating" msgstr "da li je traka s alatima plutajuća" #: ../bonobo/bonobo-ui-toolbar.c:1176 msgid "Style of bevel around the toolbar" msgstr "Stil nagiba oko trake s alatima" #: ../bonobo/bonobo-ui-util.c:630 msgid "_Contents" msgstr "_Sadržina" #: ../bonobo/bonobo-ui-util.c:631 msgid "View help for this application" msgstr "Pogledaj pomoć za ovu aplikaciju" #: ../bonobo/bonobo-window.c:347 msgid "Name of the window - used for configuration serialization." msgstr "Ime prozora - koristi se za serijalizaciju podešavanja." #: ../bonobo/bonobo-zoomable.c:326 msgid "Zoom level" msgstr "Nivo uvećanja" #: ../bonobo/bonobo-zoomable.c:327 msgid "The degree of enlargment" msgstr "Stepen uvećanja" #: ../bonobo/bonobo-zoomable.c:335 msgid "Minimum Zoom level" msgstr "Minimalni nivo uvećanja" #: ../bonobo/bonobo-zoomable.c:336 msgid "The minimum degree of enlargment" msgstr "Minimalni stepen uvećanja" #: ../bonobo/bonobo-zoomable.c:344 msgid "Maximum Zoom level" msgstr "Maksimalni nivo uvećanja" #: ../bonobo/bonobo-zoomable.c:345 msgid "The maximum degree of enlargment" msgstr "Maksimalni stepen uvećanja" #: ../bonobo/bonobo-zoomable.c:353 msgid "Has a minimum Zoom level" msgstr "Ima minimalni nivo uvećanja" #: ../bonobo/bonobo-zoomable.c:354 msgid "Whether we have a valid minimum zoom level" msgstr "Da li imamo važeći minimalni nivo uvećanja" #: ../bonobo/bonobo-zoomable.c:361 msgid "Has a maximum Zoom level" msgstr "Ima maksimalni nivo uvećanja" #: ../bonobo/bonobo-zoomable.c:362 msgid "Whether we have a valid maximum zoom level" msgstr "Da li imamo važeći maksimalni nivo uvećanja" #: ../bonobo/bonobo-zoomable.c:369 msgid "Is continuous" msgstr "Jeste besprekidno" #: ../bonobo/bonobo-zoomable.c:370 msgid "Whether we zoom continuously (as opposed to jumps)" msgstr "Da li uvećavamo bez prekida (umjesto sa skokovima)" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:1 msgid "About this application" msgstr "O ovoj aplikaciji" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:2 msgid "Select" msgstr "Izaberi" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:3 msgid "_About..." msgstr "_O..." #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:4 msgid "_Edit" msgstr "_Izmijeni" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:5 #: ../tools/browser/bonobo-browser.xml.h:4 msgid "_File" msgstr "_Datoteka" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:6 msgid "_Select" msgstr "_Izaberi" #: ../samples/bonoboui/hello.c:63 msgid "This does nothing; it is only a demonstration." msgstr "Ovo nema nikakvu funkciju, samo demonstracija" #: ../samples/bonoboui/hello.c:145 msgid "BonoboUI-Hello." msgstr "BonoboUI-Zdravo." #: ../samples/bonoboui/hello.c:217 msgid "Gnome Hello" msgstr "Gnome Zdravo" #. Create Label and put it in the Button: #: ../samples/bonoboui/hello.c:272 msgid "Hello, World!" msgstr "Zdravo, svijete!" #: ../samples/bonoboui/hello.c:312 msgid "Cannot init libbonoboui code" msgstr "Ne mogu inicijalizirati libbonoboui kod" #: ../samples/controls/bonobo-sample-controls.c:131 msgid "Could not initialize Bonobo UI" msgstr "Nisam mogao inicijalizirati Bonobo korisnički interfejs" #: ../tools/browser/bonobo-browser.desktop.in.h:1 msgid "Bonobo Component Browser" msgstr "" #: ../tools/browser/bonobo-browser.desktop.in.h:2 msgid "Shows available Bonobo components" msgstr "" #: ../tools/browser/bonobo-browser.xml.h:1 #, fuzzy msgid "About this program..." msgstr "O ovoj aplikaciji" #: ../tools/browser/bonobo-browser.xml.h:2 msgid "Close the current window" msgstr "" #: ../tools/browser/bonobo-browser.xml.h:3 msgid "Open a new window" msgstr "" #: ../tools/browser/bonobo-browser.xml.h:5 #, fuzzy msgid "_Help" msgstr "_Sakrij" #. Build the general tab #: ../tools/browser/component-details.c:109 msgid "General" msgstr "" #: ../tools/browser/component-details.c:116 #: ../tools/browser/component-list.c:401 msgid "IID" msgstr "" #: ../tools/browser/component-details.c:117 msgid "Location" msgstr "" #. Build the details tab #: ../tools/browser/component-details.c:167 msgid "Details" msgstr "" #: ../tools/browser/component-details.c:168 msgid "Detailed Information" msgstr "" #: ../tools/browser/component-list.c:370 ../tools/browser/window.c:290 msgid "Active" msgstr "" #: ../tools/browser/component-list.c:391 msgid "Type" msgstr "" #: ../tools/browser/window.c:170 msgid "Component Details" msgstr "" #: ../tools/browser/window.c:215 msgid "Bonobo Browser" msgstr "" #: ../tools/browser/window.c:216 msgid "Copyright 2001, The GNOME Foundation" msgstr "" #: ../tools/browser/window.c:217 msgid "Bonobo component browser" msgstr "" #. create the window #: ../tools/browser/window.c:247 msgid "Component Browser" msgstr "" #. Fill out the tool bar #: ../tools/browser/window.c:287 msgid "All" msgstr "" #: ../tools/browser/window.c:293 msgid "Inactive" msgstr "" libbonoboui-2.24.5/po/or.po0000664000076400007640000004265211433016366012454 00000000000000# translation of libbonoboui.master.or.po to Oriya # Oriya translation of libbonoboui.HEAD.pot. # Copyright (C) 2004, 2006, 2007, 2009, 2010 Free Software Foundation, Inc. # $Id: or.po,v 1.9 2006/07/11 07:04:30 sbehera Exp $ # # Dillip Rout, 2004. # Gora Mohanty , 2006. # Subhransu Behera , 2006, 2007. # Manoj Kumar Giri , 2009, 2010. msgid "" msgstr "" "Project-Id-Version: libbonoboui.master.or\n" "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=libbonoboui&component=general\n" "POT-Creation-Date: 2009-05-02 13:08+0000\n" "PO-Revision-Date: 2010-05-11 21:00+0530\n" "Last-Translator: Manoj Kumar Giri \n" "Language-Team: Oriya \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Generator: KBabel 1.11.4\n" "Plural-Forms: nplurals=2; plural=(n!=1);\n" "\n" "\n" "\n" #: ../bonobo/bonobo-canvas-item.c:680 msgid "corba factory" msgstr "କୋର୍ବା କାରଖାନା" #: ../bonobo/bonobo-canvas-item.c:681 msgid "The factory pointer" msgstr "କାରଖାନା ସୁଚକ" #: ../bonobo/bonobo-canvas-item.c:690 msgid "corba UI container" msgstr "କୋର୍ବା UI ଧାରକ" #: ../bonobo/bonobo-canvas-item.c:691 msgid "The User interface container" msgstr "ବ୍ଯବହାରକାରୀ ଅନ୍ତରାପୃଷ୍ଠ ଧାରକ" #: ../bonobo/bonobo-dock-item-grip.c:254 msgid "Dock the toolbar" msgstr "ସାଧନ ପଟି ଯୋଗ କରନ୍ତୁ" #: ../bonobo/bonobo-dock-item-grip.c:255 msgid "Undock the toolbar" msgstr "ସାଧନ ପଟି ବିଯୋଗ କରନ୍ତୁ" #: ../bonobo/bonobo-dock-item.c:225 ../bonobo/bonobo-dock-item.c:226 #: ../bonobo/bonobo-ui-toolbar.c:1163 msgid "Shadow type" msgstr "ଛାଇ ପ୍ରକାର" #: ../bonobo/bonobo-dock-item.c:236 ../bonobo/bonobo-dock-item.c:237 #: ../bonobo/bonobo-ui-toolbar.c:1107 ../bonobo/bonobo-ui-toolbar.c:1108 msgid "Orientation" msgstr "ଅନୁସ୍ଥାପନ" #: ../bonobo/bonobo-dock-item.c:247 ../bonobo/bonobo-dock-item.c:248 #: ../bonobo/bonobo-ui-toolbar.c:1126 ../bonobo/bonobo-ui-toolbar.c:1127 msgid "Preferred width" msgstr "ପସନ୍ଦ ଓସାର" #: ../bonobo/bonobo-dock-item.c:256 ../bonobo/bonobo-dock-item.c:257 #: ../bonobo/bonobo-ui-toolbar.c:1135 ../bonobo/bonobo-ui-toolbar.c:1136 msgid "Preferred height" msgstr "ପସନ୍ଦ ଉଚ୍ଚତା" #: ../bonobo/bonobo-file-selector-util.c:350 msgid "Select a file to open" msgstr "ଖୋଲିବା ପାଇଁ ଫାଇଲ ବାଛନ୍ତୁ" #: ../bonobo/bonobo-file-selector-util.c:378 msgid "Select files to open" msgstr "ଖୋଲିବା ପାଇଁ ଫାଇଲଗୁଡ଼ିକ ବାଛନ୍ତୁ" #: ../bonobo/bonobo-file-selector-util.c:407 msgid "Select a filename to save" msgstr "ସଂରକ୍ଷଣ ପାଇଁ ଫାଇଲ ନାମ ବାଛନ୍ତୁ" #: ../bonobo/bonobo-plug.c:425 msgid "Event Forwarding" msgstr "ଘଟଣା ପଠାଇବା" #: ../bonobo/bonobo-plug.c:426 msgid "Whether X events should be forwarded" msgstr "ଏକ୍ସ ଘଟଣାଗୁଡିକ ପଠାଯିବା ଉଚିତ କି" #: ../bonobo/bonobo-selector-widget.c:300 ../bonobo/bonobo-window.c:347 #: ../tools/browser/component-details.c:108 #: ../tools/browser/component-list.c:369 msgid "Name" msgstr "ନାମ" #: ../bonobo/bonobo-selector-widget.c:322 #: ../tools/browser/component-details.c:109 msgid "Description" msgstr "ବର୍ଣ୍ଣନା" #: ../bonobo/bonobo-selector.c:343 msgid "Interfaces required" msgstr "ଆବଶ୍ଯକ ଅନ୍ତରାପୃଷ୍ଠ" #: ../bonobo/bonobo-selector.c:344 msgid "" "A NULL-terminated array of interfaces which a server must support in order " "to be listed in the selector. Defaults to \"IDL:Bonobo/Embeddable:1.0\" if " "no interfaces are listed" msgstr "" "ଚୟକରେ ଭର୍ତ୍ତି ହେବା ପାଇଁ, ସେବକ ଦ୍ବାରା ସହାୟକ ଥିବା ନଲରେ ସମାପ୍ତ ଅନ୍ତରାପୃଷ୍ଠର ଆରେ. କୌଣସି " "ଅନ୍ତରାପୃଷ୍ଠ ଉଲ୍ଲେଖିତ ନ ହୋଇଥିଲେ, ପୂର୍ବନିର୍ଦ୍ଧାରିତ ମୂଲ୍ଯ ହେଲା \"IDL:Bonobo/Embeddable:1.0\"" #: ../bonobo/bonobo-selector.c:346 msgid "Interface required entry" msgstr "ଅନ୍ତରାପୃଷ୍ଠରେ ଭରଣ ଆବଶ୍ଯକ" #: ../bonobo/bonobo-selector.c:347 msgid "One of the interfaces that's required" msgstr "ଗୋଟିଏ ଆବଶ୍ଯକ ଅନ୍ତରାପୃଷ୍ଠ" #: ../bonobo/bonobo-ui-config-widget.c:267 msgid "Visible" msgstr "ଦ୍ରୁଶ୍ଯମାନ" #: ../bonobo/bonobo-ui-config-widget.c:274 msgid "_Show" msgstr "ଦେଖାନ୍ତୁ (_S)" #: ../bonobo/bonobo-ui-config-widget.c:281 msgid "_Hide" msgstr "ଲୁଚାନ୍ତୁ (_H)" #: ../bonobo/bonobo-ui-config-widget.c:287 msgid "_View tooltips" msgstr "ଉପକରଣ ସୂଚନା ଦେଖାନ୍ତୁ (_V)" #: ../bonobo/bonobo-ui-config-widget.c:292 msgid "Toolbars" msgstr "ସାଧନପଟିଗୁଡିକ" #: ../bonobo/bonobo-ui-config-widget.c:302 msgid "toolbars" msgstr "ସାଧନପଟିଗୁଡିକ" #: ../bonobo/bonobo-ui-config-widget.c:313 #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "Look" msgstr "ଦେଖନ୍ତୁ" #: ../bonobo/bonobo-ui-config-widget.c:322 #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "_Icon" msgstr "ଚିତ୍ରସଂକେତ (_I)" #: ../bonobo/bonobo-ui-config-widget.c:328 msgid "_Text and Icon" msgstr "ପାଠ୍ଯ ଓ ଚିତ୍ରସଂକେତ (_T)" #: ../bonobo/bonobo-ui-config-widget.c:334 msgid "Text only" msgstr "କେବଳ ପାଠ୍ଯ" #: ../bonobo/bonobo-ui-config-widget.c:340 msgid "_Priority text only" msgstr "କେବଳ ଅଗ୍ରାଧିକାର ପାଠ୍ଯ (_P)" #: ../bonobo/bonobo-ui-engine.c:93 msgid "Debug" msgstr "ତୃଟିମୁକ୍ତ କରନ୍ତୁ" #: ../bonobo/bonobo-ui-engine.c:93 msgid "_Dump XML" msgstr "ଏକ୍ସ.ଏମ.ଏଲ. ରୂପେ ଲେଖନ୍ତୁ (_D)" #: ../bonobo/bonobo-ui-engine.c:94 msgid "Dump the entire UI's XML description to the console" msgstr "UI ର ସଂପୂର୍ଣ୍ଣ ଏକ୍ସ.ଏମ.ଏଲ. ବିବରଣୀକୁ କନ୍ସୋଲରେ ଲେଖନ୍ତୁ" #: ../bonobo/bonobo-ui-engine-config.c:524 msgid "Configure UI" msgstr "UI ବିନ୍ଯାସ କରନ୍ତୁ" #: ../bonobo/bonobo-ui-init-gtk.c:131 msgid "Gdk debugging flags to set" msgstr "ବିନ୍ଯାସ ପାଇଁ ଜି.ଡି.କେ.ର ତ୍ରୁଟିମୁକ୍ତ ସଂକେତଗୁଡ଼ିକ" #: ../bonobo/bonobo-ui-init-gtk.c:131 ../bonobo/bonobo-ui-init-gtk.c:134 #: ../bonobo/bonobo-ui-init-gtk.c:162 ../bonobo/bonobo-ui-init-gtk.c:165 msgid "FLAGS" msgstr "ସଂକେତଗୁଡ଼ିକ" #: ../bonobo/bonobo-ui-init-gtk.c:134 msgid "Gdk debugging flags to unset" msgstr "ଅବିନ୍ଯାସ ପାଇଁ ଜି.ଡି.କେ.ର ତ୍ରୁଟିମୁକ୍ତ ସଂକେତଗୁଡ଼ିକ" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "X display to use" msgstr "ପ୍ରୟୋଗ ପାଇଁ ଏକ୍ସ ପ୍ରଦର୍ଶକ" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "DISPLAY" msgstr "ପ୍ରଦର୍ଶକ" #: ../bonobo/bonobo-ui-init-gtk.c:142 msgid "X screen to use" msgstr "ପ୍ରୟୋଗ ପାଇଁ ଏକ୍ସ ପରଦା" #: ../bonobo/bonobo-ui-init-gtk.c:142 msgid "SCREEN" msgstr "ପରଦା" #: ../bonobo/bonobo-ui-init-gtk.c:146 msgid "Make X calls synchronous" msgstr "ଏକ୍ସ ଡାକରାଗୁଡିକୁ ସମକାଳୀନ କରନ୍ତୁ" #: ../bonobo/bonobo-ui-init-gtk.c:152 msgid "Don't use X shared memory extension" msgstr "ଏକ୍ସ ସହଭାଗୀ ସ୍ମ୍ରୁତି ଅନୁଲଗ୍ନର ପ୍ରୟୋଗ କରନ୍ତୁ ନାହିଁ " #: ../bonobo/bonobo-ui-init-gtk.c:156 msgid "Program name as used by the window manager" msgstr "ୱିଣ୍ଡୋ ପରିଚାଳକ ଦ୍ବାରା ବ୍ଯବହୃତ କାରିକାର ନାମ" #: ../bonobo/bonobo-ui-init-gtk.c:156 msgid "NAME" msgstr "ନାମ" #: ../bonobo/bonobo-ui-init-gtk.c:159 msgid "Program class as used by the window manager" msgstr "ୱିଣ୍ଡୋ ପରିଚାଳକ ଦ୍ବାରା ବ୍ଯବହୃତ କାରିକାର ଶ୍ରେଣୀ " #: ../bonobo/bonobo-ui-init-gtk.c:159 msgid "CLASS" msgstr "ଶ୍ରେଣୀ" #: ../bonobo/bonobo-ui-init-gtk.c:162 msgid "Gtk+ debugging flags to set" msgstr "ବିନ୍ଯାସ ପାଇଁ ଜି.ଟି.କେ+ ତ୍ରୁଟିମୁକ୍ତ ସଂକେତ" #: ../bonobo/bonobo-ui-init-gtk.c:165 msgid "Gtk+ debugging flags to unset" msgstr "ଅବିନ୍ଯାସ ପାଇଁ ଜି.ଟି.କେ+ ତ୍ରୁଟିମୁକ୍ତ ସଂକେତ" #: ../bonobo/bonobo-ui-init-gtk.c:168 msgid "Make all warnings fatal" msgstr "ସବୁ ଚେତାବନୀଗୁଡିକୁ ମାରାତ୍ମକ କରନ୍ତୁ" #: ../bonobo/bonobo-ui-init-gtk.c:171 msgid "Load an additional Gtk module" msgstr "ଏକ ଅତିରିକ୍ତ ଜି.ଟି.କେ. ଏକକାଂଶ ଧାରଣ କରନ୍ତୁ" #: ../bonobo/bonobo-ui-init-gtk.c:171 msgid "MODULE" msgstr "ଏକକାଂଶ" #: ../bonobo/bonobo-ui-init-gtk.c:187 msgid "GTK+" msgstr "ଜି.ଟି.କେ.+" #: ../bonobo/bonobo-ui-main.c:281 msgid "Bonobo GUI support" msgstr "ବନୋବା ଜି.ୟୁ.ଅାଇ. ସହାୟତା " #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "B_oth" msgstr "ଉଭୟ (_o)" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "T_ext" msgstr "ପାଠ୍ଯ (_e)" #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Hide t_ips" msgstr "ତଥ୍ଯ ଲୁଚାନ୍ତୁ (_i) " #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Show t_ips" msgstr "ତଥ୍ଯ ଦେଖାନ୍ତୁ (_i)" #: ../bonobo/bonobo-ui-sync-toolbar.c:570 msgid "_Hide toolbar" msgstr "ସାଧନ ପଟି ଲୁଚାନ୍ତୁ (_H)" #: ../bonobo/bonobo-ui-sync-toolbar.c:570 msgid "Customi_ze" msgstr "ଇଚ୍ଛାରୂପଣ (_z)" #: ../bonobo/bonobo-ui-sync-toolbar.c:571 msgid "Customize the toolbar" msgstr "ସାଧନ ପଟି ଇଚ୍ଛାରୂପଣ" #: ../bonobo/bonobo-ui-toolbar.c:1117 msgid "is floating" msgstr "ଭାସୁ ଅଛି" #: ../bonobo/bonobo-ui-toolbar.c:1118 msgid "whether the toolbar is floating" msgstr "ସାଧନ ପଟି ଭାସୁ ଅଛି କି" #: ../bonobo/bonobo-ui-toolbar.c:1164 msgid "Style of bevel around the toolbar" msgstr "ସାଧନ ପଟି ଚାରିପାଖେ ଗଡ଼ାଣିଆ ଧାରର ଶୈଳୀ" #: ../bonobo/bonobo-ui-util.c:602 msgid "Could not display help for this application" msgstr "ଏହି ପ୍ରୟୋଗ ପାଇଁ ସହାୟତା ଦର୍ଶାଇ ପାରୁ ନାହିଁ" #: ../bonobo/bonobo-ui-util.c:644 msgid "_Contents" msgstr "ସୂଚୀପତ୍ର (_C)" #: ../bonobo/bonobo-ui-util.c:645 msgid "View help for this application" msgstr "ଏହି ପ୍ରୟୋଗ ପାଇଁ ସହାୟତା ଦେଖନ୍ତୁ" #: ../bonobo/bonobo-window.c:348 msgid "Name of the window - used for configuration serialization." msgstr "ୱିଣ୍ଡୋର ନାମ - କ୍ରମିକ ବିନ୍ଯାସ ପାଇଁ ବ୍ଯବହାର କରାଯିବ।" #: ../bonobo/bonobo-zoomable.c:326 msgid "Zoom level" msgstr "ସାନବଡ଼ କରିବାର ସ୍ତର" #: ../bonobo/bonobo-zoomable.c:327 msgid "The degree of enlargment" msgstr "ବ୍ରୁଦ୍ଧିକରଣର ସ୍ତର" #: ../bonobo/bonobo-zoomable.c:335 msgid "Minimum Zoom level" msgstr "ସାନବଡ଼ କରିବାର ସର୍ବନିମ୍ନ ସ୍ତର" #: ../bonobo/bonobo-zoomable.c:336 msgid "The minimum degree of enlargment" msgstr "ସର୍ବନିମ୍ନ ବ୍ରୁଦ୍ଧିକରଣର ସ୍ତର" #: ../bonobo/bonobo-zoomable.c:344 msgid "Maximum Zoom level" msgstr "ସର୍ବାଧିକ ସାନବଡ଼ କରିବାର ସ୍ତର" #: ../bonobo/bonobo-zoomable.c:345 msgid "The maximum degree of enlargment" msgstr "ସର୍ବାଧିକ ବ୍ରୁଦ୍ଧିକରଣର ସ୍ତର" #: ../bonobo/bonobo-zoomable.c:353 msgid "Has a minimum Zoom level" msgstr "ସର୍ବନିମ୍ନ ସାନବଡ଼ କରିବାର ସ୍ତର ଅଛି" #: ../bonobo/bonobo-zoomable.c:354 msgid "Whether we have a valid minimum zoom level" msgstr "ସର୍ବନିମ୍ନ ସାନବଡ଼ କରିବାର ବୈଧ ସ୍ତର ଅଛି କି" #: ../bonobo/bonobo-zoomable.c:361 msgid "Has a maximum Zoom level" msgstr "ସର୍ବାଧିକ ସାନବଡ଼ କରିବାର ସ୍ତର ଅଛି" #: ../bonobo/bonobo-zoomable.c:362 msgid "Whether we have a valid maximum zoom level" msgstr "ସର୍ବାଧିକ ସାନବଡ଼ କରିବାର ବୈଧ ସ୍ତର ଅଛି କି" #: ../bonobo/bonobo-zoomable.c:369 msgid "Is continuous" msgstr "ଅବିରତ ଅଛି" #: ../bonobo/bonobo-zoomable.c:370 msgid "Whether we zoom continuously (as opposed to jumps)" msgstr "ସାନବଡ଼ କରିବା ଅବିରତ ଭାବରେ ହୁଏ କି (ଡେଇଁବା ବିପରୀତରେ) " #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:1 msgid "About this application" msgstr "ଏହି ପ୍ରୟୋଗ ବିଷୟରେ" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:2 msgid "Select" msgstr "ବାଛନ୍ତୁ" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:3 msgid "_About..." msgstr "ବିଷୟରେ... (_A)" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:4 msgid "_Edit" msgstr "ସମ୍ପାଦନ କରନ୍ତୁ (_E)" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:5 #: ../tools/browser/bonobo-browser.xml.h:4 msgid "_File" msgstr "ଫାଇଲ (_F)" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:6 msgid "_Select" msgstr "ବାଛନ୍ତୁ (_S)" #: ../samples/bonoboui/hello.c:65 msgid "This does nothing; it is only a demonstration." msgstr "ଏହା କିଛି କରେ ନାହଁ; ଏହା ରେବଳ ଗୋଟିଏ ପ୍ରଦର୍ଶନ." #: ../samples/bonoboui/hello.c:147 msgid "BonoboUI-Hello." msgstr "BonoboUIନମସ୍କାର" #: ../samples/bonoboui/hello.c:219 msgid "Gnome Hello" msgstr "Gnome ନମସ୍କାର" #. Create Label and put it in the Button: #: ../samples/bonoboui/hello.c:274 msgid "Hello, World!" msgstr "ସମସ୍ତଙ୍କୁ ନମସ୍କାର" #: ../samples/bonoboui/hello.c:314 msgid "Cannot init libbonoboui code" msgstr "libbonoboui ସଂକେତ ପ୍ରାରମ୍ଭ କରିହେଲା ନାହିଁ" #: ../samples/controls/bonobo-sample-controls.c:133 msgid "Could not initialize Bonobo UI" msgstr "Bonobo UI କୁ ପ୍ରାରମ୍ଭ କରିହେଲା ନାହିଁ" #: ../tools/browser/bonobo-browser.desktop.in.h:1 msgid "Bonobo Component Browser" msgstr "ବନୋବୋ ଯନ୍ତ୍ରାଂଶ ଖୋଜାଳି" #: ../tools/browser/bonobo-browser.desktop.in.h:2 msgid "Shows available Bonobo components" msgstr "ଉପଲବ୍ଧ ବନୋବୋ ଯନ୍ତ୍ରାଂଶ ଦେଖାଏ" #: ../tools/browser/bonobo-browser.xml.h:1 msgid "About this program..." msgstr "ଏହି କାରିକା ବିଷୟରେ..." #: ../tools/browser/bonobo-browser.xml.h:2 msgid "Close the current window" msgstr "ସାମ୍ପ୍ରତିକ ୱିଣ୍ଡୋ ବନ୍ଦ କରନ୍ତୁ" #: ../tools/browser/bonobo-browser.xml.h:3 msgid "Open a new window" msgstr "ନୂଆ ୱିଣ୍ଡୋ ଖୋଲନ୍ତୁ" #: ../tools/browser/bonobo-browser.xml.h:5 msgid "_Help" msgstr "ସହାୟତା (_H)" #. Build the general tab #: ../tools/browser/component-details.c:103 msgid "General" msgstr "ସାଧାରଣ" #: ../tools/browser/component-details.c:110 #: ../tools/browser/component-list.c:389 msgid "IID" msgstr "ଆଇ.ଆଇ.ଡି." #: ../tools/browser/component-details.c:111 msgid "Location" msgstr "ଅବସ୍ଥାନ" #. Build the details tab #: ../tools/browser/component-details.c:161 msgid "Details" msgstr "ବିସ୍ତ୍ରୁତ ବିବରଣୀ" #: ../tools/browser/component-details.c:162 msgid "Detailed Information" msgstr "ବିସ୍ତୃତ ସୂଚନା" #: ../tools/browser/component-list.c:358 ../tools/browser/window.c:283 msgid "Active" msgstr "ସକ୍ରିୟ" #: ../tools/browser/component-list.c:379 msgid "Type" msgstr "ପ୍ରକାର" #: ../tools/browser/window.c:162 msgid "Component Details" msgstr "ଯନ୍ତ୍ରାଂଶର ବିସ୍ତୃତ ବିବରଣୀ" #: ../tools/browser/window.c:208 msgid "Bonobo Browser" msgstr "ବନୋବୋ ଖୋଜାଳି" #: ../tools/browser/window.c:210 msgid "Copyright 2001, The GNOME Foundation" msgstr "ସ୍ବତ୍ତ୍ବାଧିକାର 2001, ନୋମ ସଂସ୍ଥା" #: ../tools/browser/window.c:211 msgid "Bonobo component browser" msgstr "ବନୋବୋ ଯନ୍ତ୍ରାଂଶ ଖୋଜାଳି" #: ../tools/browser/window.c:214 msgid "translator-credits" msgstr "ଶୁଭ୍ରାଂଶୁ ବେହେରା " #. create the window #: ../tools/browser/window.c:240 msgid "Component Browser" msgstr "ଯନ୍ତ୍ରାଂଶ ଖୋଜାଳି" #. Fill out the tool bar #: ../tools/browser/window.c:280 msgid "All" msgstr "ସବୁ" #: ../tools/browser/window.c:286 msgid "Inactive" msgstr "ନିଷ୍କ୍ରିୟ" libbonoboui-2.24.5/po/ca.po0000644000076400007640000003266211261745451012420 00000000000000# libbonoboui translation to Catalan. # Copyright © 2001, 2002, 2003, 2005, 2006 Free Software Foundation, Inc. # Softcatalà , 2001, 2002. # Jordi Mallach , 2003, 2005, 2006. # msgid "" msgstr "" "Project-Id-Version: libbonoboui 2.11.92\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2009-09-22 17:00+0200\n" "PO-Revision-Date: 2009-09-22 17:00+0200\n" "Last-Translator: Jordi Mallach \n" "Language-Team: Catalan \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../bonobo/bonobo-canvas-item.c:680 msgid "corba factory" msgstr "fàbrica de CORBA" #: ../bonobo/bonobo-canvas-item.c:681 msgid "The factory pointer" msgstr "El punter de la fàbrica" #: ../bonobo/bonobo-canvas-item.c:690 msgid "corba UI container" msgstr "El contenidor UI de CORBA" #: ../bonobo/bonobo-canvas-item.c:691 msgid "The User interface container" msgstr "El contenidor de la interfície d'usuari" #: ../bonobo/bonobo-dock-item-grip.c:254 msgid "Dock the toolbar" msgstr "Acobla la barra d'eines" #: ../bonobo/bonobo-dock-item-grip.c:255 msgid "Undock the toolbar" msgstr "Separa la barra d'eines" #: ../bonobo/bonobo-dock-item.c:225 ../bonobo/bonobo-dock-item.c:226 #: ../bonobo/bonobo-ui-toolbar.c:1163 msgid "Shadow type" msgstr "Tipus d'ombra" #: ../bonobo/bonobo-dock-item.c:236 ../bonobo/bonobo-dock-item.c:237 #: ../bonobo/bonobo-ui-toolbar.c:1107 ../bonobo/bonobo-ui-toolbar.c:1108 msgid "Orientation" msgstr "Orientació" #: ../bonobo/bonobo-dock-item.c:247 ../bonobo/bonobo-dock-item.c:248 #: ../bonobo/bonobo-ui-toolbar.c:1126 ../bonobo/bonobo-ui-toolbar.c:1127 msgid "Preferred width" msgstr "Amplada preferida" #: ../bonobo/bonobo-dock-item.c:256 ../bonobo/bonobo-dock-item.c:257 #: ../bonobo/bonobo-ui-toolbar.c:1135 ../bonobo/bonobo-ui-toolbar.c:1136 msgid "Preferred height" msgstr "Alçada preferida" #: ../bonobo/bonobo-file-selector-util.c:350 msgid "Select a file to open" msgstr "Seleccioneu un fitxer a obrir" #: ../bonobo/bonobo-file-selector-util.c:378 msgid "Select files to open" msgstr "Seleccioneu els fitxers a obrir" #: ../bonobo/bonobo-file-selector-util.c:407 msgid "Select a filename to save" msgstr "Seleccioneu un nom de fitxer per a desar" #: ../bonobo/bonobo-plug.c:425 msgid "Event Forwarding" msgstr "Reenviament de l'esdeveniment" #: ../bonobo/bonobo-plug.c:426 msgid "Whether X events should be forwarded" msgstr "Si s'haurien de reenviar els esdeveniments X" #: ../bonobo/bonobo-selector-widget.c:300 ../bonobo/bonobo-window.c:347 #: ../tools/browser/component-details.c:108 #: ../tools/browser/component-list.c:369 msgid "Name" msgstr "Nom" #: ../bonobo/bonobo-selector-widget.c:322 #: ../tools/browser/component-details.c:109 msgid "Description" msgstr "Descripció" #: ../bonobo/bonobo-selector.c:343 msgid "Interfaces required" msgstr "Interfícies requerides" #: ../bonobo/bonobo-selector.c:344 msgid "" "A NULL-terminated array of interfaces which a server must support in order " "to be listed in the selector. Defaults to \"IDL:Bonobo/Embeddable:1.0\" if " "no interfaces are listed" msgstr "" "Una matriu d'interfícies acabada en NULL que un servidor ha de saber " "gestionar per ser llistada en el selector. Si no es llista cap interfície " "s'utilitzarà la «IDL:Bonobo/Embeddable:1.0» com a predeterminada" #: ../bonobo/bonobo-selector.c:346 msgid "Interface required entry" msgstr "Entrada d'interfície requerida" #: ../bonobo/bonobo-selector.c:347 msgid "One of the interfaces that's required" msgstr "Una de les interfícies que es requereix" #: ../bonobo/bonobo-ui-config-widget.c:267 msgid "Visible" msgstr "Visible" #: ../bonobo/bonobo-ui-config-widget.c:274 msgid "_Show" msgstr "Mo_stra" #: ../bonobo/bonobo-ui-config-widget.c:281 msgid "_Hide" msgstr "_Oculta" #: ../bonobo/bonobo-ui-config-widget.c:287 msgid "_View tooltips" msgstr "_Mostra els indicadors de funcions" #: ../bonobo/bonobo-ui-config-widget.c:292 msgid "Toolbars" msgstr "Barres d'eines" #: ../bonobo/bonobo-ui-config-widget.c:302 msgid "toolbars" msgstr "barres d'eines" #: ../bonobo/bonobo-ui-config-widget.c:313 #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "Look" msgstr "Aspecte" #: ../bonobo/bonobo-ui-config-widget.c:322 #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "_Icon" msgstr "_Icona" #: ../bonobo/bonobo-ui-config-widget.c:328 msgid "_Text and Icon" msgstr "_Text i icona" #: ../bonobo/bonobo-ui-config-widget.c:334 msgid "Text only" msgstr "Només text" #: ../bonobo/bonobo-ui-config-widget.c:340 msgid "_Priority text only" msgstr "Només els textos _prioritaris" #: ../bonobo/bonobo-ui-engine.c:93 msgid "Debug" msgstr "Depuració" #: ../bonobo/bonobo-ui-engine.c:93 msgid "_Dump XML" msgstr "_Bolca en XML" #: ../bonobo/bonobo-ui-engine.c:94 msgid "Dump the entire UI's XML description to the console" msgstr "" "Bolca la descripció sencera de la interfície d'usuari en XML a la consola" #: ../bonobo/bonobo-ui-engine-config.c:524 msgid "Configure UI" msgstr "Configura la interfície d'usuari" #: ../bonobo/bonobo-ui-init-gtk.c:131 msgid "Gdk debugging flags to set" msgstr "Senyaladors de depuració del Gdk a definir" #: ../bonobo/bonobo-ui-init-gtk.c:131 ../bonobo/bonobo-ui-init-gtk.c:134 #: ../bonobo/bonobo-ui-init-gtk.c:162 ../bonobo/bonobo-ui-init-gtk.c:165 msgid "FLAGS" msgstr "SENYALADORS" #: ../bonobo/bonobo-ui-init-gtk.c:134 msgid "Gdk debugging flags to unset" msgstr "Senyaladors de depuració del Gdk dels quals desfer-ne la definició" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "X display to use" msgstr "Visualització X a utilitzar" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "DISPLAY" msgstr "VISUALITZACIÓ" #: ../bonobo/bonobo-ui-init-gtk.c:142 msgid "X screen to use" msgstr "Pantalla X a utilitzar" #: ../bonobo/bonobo-ui-init-gtk.c:142 msgid "SCREEN" msgstr "PANTALLA" #: ../bonobo/bonobo-ui-init-gtk.c:146 msgid "Make X calls synchronous" msgstr "Fes les crides X síncrones" #: ../bonobo/bonobo-ui-init-gtk.c:152 msgid "Don't use X shared memory extension" msgstr "No utilitzis l'extensió de memòria compartida X" #: ../bonobo/bonobo-ui-init-gtk.c:156 msgid "Program name as used by the window manager" msgstr "Nom del programa utilitzat pel gestor de finestres" #: ../bonobo/bonobo-ui-init-gtk.c:156 msgid "NAME" msgstr "NOM" #: ../bonobo/bonobo-ui-init-gtk.c:159 msgid "Program class as used by the window manager" msgstr "Classe de programa utilitzat pel gestor de finestres" #: ../bonobo/bonobo-ui-init-gtk.c:159 msgid "CLASS" msgstr "CLASSE" #: ../bonobo/bonobo-ui-init-gtk.c:162 msgid "Gtk+ debugging flags to set" msgstr "Senyaladors de depuració de Gtk+ a definir" #: ../bonobo/bonobo-ui-init-gtk.c:165 msgid "Gtk+ debugging flags to unset" msgstr "Senyaladors de depuració de Gtk+ dels quals desfer-ne la definició" #: ../bonobo/bonobo-ui-init-gtk.c:168 msgid "Make all warnings fatal" msgstr "Fes que totes les advertències siguin fatals" #: ../bonobo/bonobo-ui-init-gtk.c:171 msgid "Load an additional Gtk module" msgstr "Carrega un mòdul Gtk addicional" #: ../bonobo/bonobo-ui-init-gtk.c:171 msgid "MODULE" msgstr "MÒDUL" #: ../bonobo/bonobo-ui-init-gtk.c:187 msgid "GTK+" msgstr "GTK+" #: ../bonobo/bonobo-ui-main.c:281 msgid "Bonobo GUI support" msgstr "Funcionalitat d'interfície gràfica del Bonobo" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "B_oth" msgstr "A_mbdues" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "T_ext" msgstr "T_ext" #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Hide t_ips" msgstr "Oculta els c_onsells" #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Show t_ips" msgstr "Mostra els c_onsells" #: ../bonobo/bonobo-ui-sync-toolbar.c:570 msgid "_Hide toolbar" msgstr "_Oculta la barra d'eines" #: ../bonobo/bonobo-ui-sync-toolbar.c:570 msgid "Customi_ze" msgstr "Personalit_za" #: ../bonobo/bonobo-ui-sync-toolbar.c:571 msgid "Customize the toolbar" msgstr "Personalitza la barra d'eines" #: ../bonobo/bonobo-ui-toolbar.c:1117 msgid "is floating" msgstr "és flotant" #: ../bonobo/bonobo-ui-toolbar.c:1118 msgid "whether the toolbar is floating" msgstr "si la barra d'eines és flotant" #: ../bonobo/bonobo-ui-toolbar.c:1164 msgid "Style of bevel around the toolbar" msgstr "Estil del bisell que envolta la barra d'eines" #: ../bonobo/bonobo-ui-util.c:602 msgid "Could not display help for this application" msgstr "No s'ha pogut mostrar l'ajuda per a aquesta aplicació" #: ../bonobo/bonobo-ui-util.c:644 msgid "_Contents" msgstr "_Continguts" #: ../bonobo/bonobo-ui-util.c:645 msgid "View help for this application" msgstr "Visualitza l'ajuda per a aquesta aplicació" #: ../bonobo/bonobo-window.c:348 msgid "Name of the window - used for configuration serialization." msgstr "" "Nom de la finestra - utilitzat per a la serialització de la configuració." #: ../bonobo/bonobo-zoomable.c:326 msgid "Zoom level" msgstr "Nivell d'ampliació" #: ../bonobo/bonobo-zoomable.c:327 msgid "The degree of enlargment" msgstr "El grau d'ampliació" #: ../bonobo/bonobo-zoomable.c:335 msgid "Minimum Zoom level" msgstr "Nivell d'ampliació mínim" #: ../bonobo/bonobo-zoomable.c:336 msgid "The minimum degree of enlargment" msgstr "El nivell d'ampliació mínim" #: ../bonobo/bonobo-zoomable.c:344 msgid "Maximum Zoom level" msgstr "Nivell d'ampliació màxim" #: ../bonobo/bonobo-zoomable.c:345 msgid "The maximum degree of enlargment" msgstr "El nivell d'ampliació màxim" #: ../bonobo/bonobo-zoomable.c:353 msgid "Has a minimum Zoom level" msgstr "Té un nivell d'ampliació mínim" #: ../bonobo/bonobo-zoomable.c:354 msgid "Whether we have a valid minimum zoom level" msgstr "Si tenim un nivell d'ampliació mínim vàlid" #: ../bonobo/bonobo-zoomable.c:361 msgid "Has a maximum Zoom level" msgstr "Té un nivell d'ampliació màxim" #: ../bonobo/bonobo-zoomable.c:362 msgid "Whether we have a valid maximum zoom level" msgstr "Si tenim un nivell d'ampliació màxim vàlid" #: ../bonobo/bonobo-zoomable.c:369 msgid "Is continuous" msgstr "És continu" #: ../bonobo/bonobo-zoomable.c:370 msgid "Whether we zoom continuously (as opposed to jumps)" msgstr "Si ampliem contínuament (en comparació als salts)" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:1 msgid "About this application" msgstr "Quant a aquesta aplicació" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:2 msgid "Select" msgstr "Selecciona" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:3 msgid "_About..." msgstr "_Quant a..." #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:4 msgid "_Edit" msgstr "_Edita" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:5 #: ../tools/browser/bonobo-browser.xml.h:4 msgid "_File" msgstr "_Fitxer" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:6 msgid "_Select" msgstr "_Selecciona" #: ../samples/bonoboui/hello.c:65 msgid "This does nothing; it is only a demonstration." msgstr "Això no fa res; només és una demostració." #: ../samples/bonoboui/hello.c:147 msgid "BonoboUI-Hello." msgstr "Hola, BonoboUI." #: ../samples/bonoboui/hello.c:219 msgid "Gnome Hello" msgstr "Hola, GNOME" #. Create Label and put it in the Button: #: ../samples/bonoboui/hello.c:274 msgid "Hello, World!" msgstr "Hola, món!" #: ../samples/bonoboui/hello.c:314 msgid "Cannot init libbonoboui code" msgstr "No es pot inicialitzar el codi de la libbonoboui" #: ../samples/controls/bonobo-sample-controls.c:133 msgid "Could not initialize Bonobo UI" msgstr "No es pot inicialitzar la interfície d'usuari del Bonobo" #: ../tools/browser/bonobo-browser.desktop.in.h:1 msgid "Bonobo Component Browser" msgstr "Navegador de components Bonobo" #: ../tools/browser/bonobo-browser.desktop.in.h:2 msgid "Shows available Bonobo components" msgstr "Mostra els components Bonobo disponibles" #: ../tools/browser/bonobo-browser.xml.h:1 msgid "About this program..." msgstr "Quant a aquesta aplicació..." #: ../tools/browser/bonobo-browser.xml.h:2 msgid "Close the current window" msgstr "Tanca la finestra actual" #: ../tools/browser/bonobo-browser.xml.h:3 msgid "Open a new window" msgstr "Obre una finestra nova" #: ../tools/browser/bonobo-browser.xml.h:5 msgid "_Help" msgstr "A_juda" #. Build the general tab #: ../tools/browser/component-details.c:103 msgid "General" msgstr "General" #: ../tools/browser/component-details.c:110 #: ../tools/browser/component-list.c:389 msgid "IID" msgstr "IID" #: ../tools/browser/component-details.c:111 msgid "Location" msgstr "Ubicació" #. Build the details tab #: ../tools/browser/component-details.c:161 msgid "Details" msgstr "Detalls" #: ../tools/browser/component-details.c:162 msgid "Detailed Information" msgstr "Informació detallada" #: ../tools/browser/component-list.c:358 ../tools/browser/window.c:283 msgid "Active" msgstr "Actiu" #: ../tools/browser/component-list.c:379 msgid "Type" msgstr "Tipus" #: ../tools/browser/window.c:162 msgid "Component Details" msgstr "Detalls del component" #: ../tools/browser/window.c:208 msgid "Bonobo Browser" msgstr "Navegador del Bonobo" #: ../tools/browser/window.c:210 msgid "Copyright 2001, The GNOME Foundation" msgstr "Copyright © 2001 La Fundació GNOME" #: ../tools/browser/window.c:211 msgid "Bonobo component browser" msgstr "Navegador de components Bonobo" #: ../tools/browser/window.c:214 msgid "translator-credits" msgstr "" "Jordi Mallach \n" "Gil Forcada " #. create the window #: ../tools/browser/window.c:240 msgid "Component Browser" msgstr "Navegador de components" #. Fill out the tool bar #: ../tools/browser/window.c:280 msgid "All" msgstr "Tots" #: ../tools/browser/window.c:286 msgid "Inactive" msgstr "Inactiu" libbonoboui-2.24.5/po/mn.po0000644000076400007640000003666511173072741012453 00000000000000# translation of mn.po to Mongolian # This file is distributed under the same license as the PACKAGE package. # Copyright (C) 2006 THE PACKAGE'S COPYRIGHT HOLDER. # # Sanlig Badral , 2003. # Sanlig Badral , 2003. # Badral , 2006, 2008. msgid "" msgstr "" "Project-Id-Version: mn\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2008-05-27 22:46+0200\n" "PO-Revision-Date: 2008-05-27 22:43+0200\n" "Last-Translator: Badral \n" "Language-Team: Mongolian \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Generator: KBabel 1.11.4\n" #: ../bonobo/bonobo-canvas-item.c:680 msgid "corba factory" msgstr "CORBA-Үүсгүүр" #: ../bonobo/bonobo-canvas-item.c:681 msgid "The factory pointer" msgstr "Үүсгүүр заагч" #: ../bonobo/bonobo-canvas-item.c:690 msgid "corba UI container" msgstr "CORBA-UI-агуулагч" #: ../bonobo/bonobo-canvas-item.c:691 msgid "The User interface container" msgstr "Хэрэглэгчийн интерфейс агуулагч" #: ../bonobo/bonobo-dock-item-grip.c:255 msgid "Dock the toolbar" msgstr "Хэрэгслийн мөрийг аргамжих" #: ../bonobo/bonobo-dock-item-grip.c:256 msgid "Undock the toolbar" msgstr "Багаж самбарыг тавих" #: ../bonobo/bonobo-dock-item.c:228 ../bonobo/bonobo-dock-item.c:229 #: ../bonobo/bonobo-ui-toolbar.c:1161 msgid "Shadow type" msgstr "Сүүдрийн төрөл" #: ../bonobo/bonobo-dock-item.c:239 ../bonobo/bonobo-dock-item.c:240 #: ../bonobo/bonobo-ui-toolbar.c:1105 ../bonobo/bonobo-ui-toolbar.c:1106 msgid "Orientation" msgstr "Хандлага" #: ../bonobo/bonobo-dock-item.c:250 ../bonobo/bonobo-dock-item.c:251 #: ../bonobo/bonobo-ui-toolbar.c:1124 ../bonobo/bonobo-ui-toolbar.c:1125 msgid "Preferred width" msgstr "дээшлүүлэх өргөн" #: ../bonobo/bonobo-dock-item.c:259 ../bonobo/bonobo-dock-item.c:260 #: ../bonobo/bonobo-ui-toolbar.c:1133 ../bonobo/bonobo-ui-toolbar.c:1134 msgid "Preferred height" msgstr "Дээшлүүлэх өндөр" #: ../bonobo/bonobo-file-selector-util.c:357 msgid "Select a file to open" msgstr "Нээх файлаа сонгоно уу" #: ../bonobo/bonobo-file-selector-util.c:385 msgid "Select files to open" msgstr "Нээх файлуудаа сонгоно уу" #: ../bonobo/bonobo-file-selector-util.c:414 msgid "Select a filename to save" msgstr "Хадгалах файлын нэрээ сонгоно уу" #: ../bonobo/bonobo-plug.c:423 msgid "Event Forwarding" msgstr "Үйл явц цааш дамжуулах" #: ../bonobo/bonobo-plug.c:424 msgid "Whether X events should be forwarded" msgstr "X үйл явцийг цааш дамжуулах эсэх" #: ../bonobo/bonobo-selector-widget.c:297 ../bonobo/bonobo-window.c:344 #: ../tools/browser/component-details.c:114 #: ../tools/browser/component-list.c:378 msgid "Name" msgstr "Нэр" #: ../bonobo/bonobo-selector-widget.c:319 #: ../tools/browser/component-details.c:115 msgid "Description" msgstr "Тодорхойлолт" #: ../bonobo/bonobo-selector.c:343 msgid "Interfaces required" msgstr "Харьцах хэсэг шаардлагатай" #: ../bonobo/bonobo-selector.c:344 msgid "" "A NULL-terminated array of interfaces which a server must support in order " "to be listed in the selector. Defaults to \"IDL:Bonobo/Embeddable:1.0\" if " "no interfaces are listed" msgstr "" "Сонголтын жагсаалтад харуулахын тулд сервер дэмжих ёстой NULL-төгсгөл " "харьцах хэсгийн массив. Хэрвээ харьцах хэсэг жигсаагдаагүй бол стандарт нь " "»IDL:Bonobo/Embeddable:1.0« болно." #: ../bonobo/bonobo-selector.c:346 msgid "Interface required entry" msgstr "Харьцах хэсэг шаардлагатай бичлэг" #: ../bonobo/bonobo-selector.c:347 msgid "One of the interfaces that's required" msgstr "Шаардагдсан харьцах хэсгүүдийн нэг" #: ../bonobo/bonobo-ui-config-widget.c:265 msgid "Visible" msgstr "Харагдах" #: ../bonobo/bonobo-ui-config-widget.c:272 msgid "_Show" msgstr "_Харуулах" #: ../bonobo/bonobo-ui-config-widget.c:279 msgid "_Hide" msgstr "_Далдлах" #: ../bonobo/bonobo-ui-config-widget.c:285 msgid "_View tooltips" msgstr "Tooltip х_арагдац" #: ../bonobo/bonobo-ui-config-widget.c:290 msgid "Toolbars" msgstr "Багаж самбар" #: ../bonobo/bonobo-ui-config-widget.c:300 msgid "toolbars" msgstr "багаж самбар" #: ../bonobo/bonobo-ui-config-widget.c:311 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "Look" msgstr "Харагдах" #: ../bonobo/bonobo-ui-config-widget.c:320 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "_Icon" msgstr "_Эмблем" #: ../bonobo/bonobo-ui-config-widget.c:326 msgid "_Text and Icon" msgstr "_Бичвэр ба эмблем" #: ../bonobo/bonobo-ui-config-widget.c:332 msgid "Text only" msgstr "Зөвхөн бичвэр" #: ../bonobo/bonobo-ui-config-widget.c:338 msgid "_Priority text only" msgstr "_Давуу эрх зөвхөн бичвэрт" #: ../bonobo/bonobo-ui-engine.c:91 msgid "Debug" msgstr "Алдаа оношлох" #: ../bonobo/bonobo-ui-engine.c:91 msgid "_Dump XML" msgstr "XML _гаргах" #: ../bonobo/bonobo-ui-engine.c:92 msgid "Dump the entire UI's XML description to the console" msgstr "Бүхийл хэрэглэгчийн гадаргууг XML тодорхойлолт терминал руу гарах" #: ../bonobo/bonobo-ui-engine-config.c:522 msgid "Configure UI" msgstr "Хэрэглэгчийн гадаргууг тохируулах" #: ../bonobo/bonobo-ui-init-gtk.c:131 msgid "Gdk debugging flags to set" msgstr "Тогтоож буй GDK-алдаа оношлолын төлөвүүд" #: ../bonobo/bonobo-ui-init-gtk.c:131 ../bonobo/bonobo-ui-init-gtk.c:134 #: ../bonobo/bonobo-ui-init-gtk.c:162 ../bonobo/bonobo-ui-init-gtk.c:165 msgid "FLAGS" msgstr "ТӨЛӨВҮҮД" #: ../bonobo/bonobo-ui-init-gtk.c:134 msgid "Gdk debugging flags to unset" msgstr "Хаагдаж буй GDK-алдаа оношлолын төлөвүүд" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "X display to use" msgstr "Хэрэглэх X-дэлгэц" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "DISPLAY" msgstr "ДЭЛГЭЦ" #: ../bonobo/bonobo-ui-init-gtk.c:142 msgid "X screen to use" msgstr "Хэрэглэх X-дэлгэц" #: ../bonobo/bonobo-ui-init-gtk.c:142 msgid "SCREEN" msgstr "ДЭЛГЭЦ" #: ../bonobo/bonobo-ui-init-gtk.c:146 msgid "Make X calls synchronous" msgstr "Зэрэг гүйцэтгэх X-дуудалт" #: ../bonobo/bonobo-ui-init-gtk.c:152 msgid "Don't use X shared memory extension" msgstr "Ерөнхий хадгалагчийн хувьд X-өргөтгөл бүү хэрэглэ" #: ../bonobo/bonobo-ui-init-gtk.c:156 msgid "Program name as used by the window manager" msgstr "Цонхны удирдлагаар хэрэглэгдэх програмын нэр" #: ../bonobo/bonobo-ui-init-gtk.c:156 msgid "NAME" msgstr "НЭР" #: ../bonobo/bonobo-ui-init-gtk.c:159 msgid "Program class as used by the window manager" msgstr "Цонхны удирдлагаар хэрэглэгдэх програмын анги" #: ../bonobo/bonobo-ui-init-gtk.c:159 msgid "CLASS" msgstr "АНГИ" #: ../bonobo/bonobo-ui-init-gtk.c:162 msgid "Gtk+ debugging flags to set" msgstr "GTK+-алдаа оношилгооны үйлдлийн төлөвийг өгөх" #: ../bonobo/bonobo-ui-init-gtk.c:165 msgid "Gtk+ debugging flags to unset" msgstr "GTK+-алдаа оношилгооны төлөвүүдийг хаах" #: ../bonobo/bonobo-ui-init-gtk.c:168 msgid "Make all warnings fatal" msgstr "Бүх алдааг ноцтой алдаагаар авах" #: ../bonobo/bonobo-ui-init-gtk.c:171 msgid "Load an additional Gtk module" msgstr "Нэмэлт GTK-модуль ачаалах" #: ../bonobo/bonobo-ui-init-gtk.c:171 msgid "MODULE" msgstr "МОДУЛЬ" #: ../bonobo/bonobo-ui-init-gtk.c:187 msgid "GTK+" msgstr "GTK+" #: ../bonobo/bonobo-ui-main.c:278 msgid "Bonobo GUI support" msgstr "Bonobo-хэрэглэгчийн график гадаргуу дэмжилэг" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "B_oth" msgstr "Хо_ёул" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "T_ext" msgstr "Т_екст" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Hide t_ips" msgstr "_Зөвөлгөө далдлах" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Show t_ips" msgstr "_Зөвөлгөө харуулах" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "_Hide toolbar" msgstr "Хэрэгслийн мөрийг _далдлах" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "Customi_ze" msgstr "Таар_уулах" #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Customize the toolbar" msgstr "Хэрэгслийн мөрийг тааруулах" #: ../bonobo/bonobo-ui-toolbar.c:1115 msgid "is floating" msgstr "Хөвүүлж байна" #: ../bonobo/bonobo-ui-toolbar.c:1116 msgid "whether the toolbar is floating" msgstr "Хэрэгслийн мөрийг хөвүүлэх эсэх" #: ../bonobo/bonobo-ui-toolbar.c:1162 msgid "Style of bevel around the toolbar" msgstr "Хэрэгслийн мөрийн налуу орчмын хэлбэр" #: ../bonobo/bonobo-ui-util.c:601 msgid "Could not display help for this application" msgstr "Энэ програмын тусламжийг харуулах боломжгүй" #: ../bonobo/bonobo-ui-util.c:643 msgid "_Contents" msgstr "А_гуулга" #: ../bonobo/bonobo-ui-util.c:644 msgid "View help for this application" msgstr "Энэ х.програмын тусламжийн харагдац" #: ../bonobo/bonobo-window.c:345 msgid "Name of the window - used for configuration serialization." msgstr "Тохируулгын цуваанд хэрэглэгдэх - цонхны нэр" #: ../bonobo/bonobo-zoomable.c:326 msgid "Zoom level" msgstr "Масштабын түвшин" #: ../bonobo/bonobo-zoomable.c:327 msgid "The degree of enlargment" msgstr "Томруулалтын зэрэг" #: ../bonobo/bonobo-zoomable.c:335 msgid "Minimum Zoom level" msgstr "Масштабын хамгийн бага түвшин" # CHECK vielleicht nicht ganz perfekt #: ../bonobo/bonobo-zoomable.c:336 msgid "The minimum degree of enlargment" msgstr "Томруулалтын хамгийн бага зэрэг" #: ../bonobo/bonobo-zoomable.c:344 msgid "Maximum Zoom level" msgstr "Масштабын хамгийн их түвшин" #: ../bonobo/bonobo-zoomable.c:345 msgid "The maximum degree of enlargment" msgstr "Томруулалтын хамгийн их зэрэг" #: ../bonobo/bonobo-zoomable.c:353 msgid "Has a minimum Zoom level" msgstr "Масштаб хамгийн бага түвшинтэй байх" #: ../bonobo/bonobo-zoomable.c:354 msgid "Whether we have a valid minimum zoom level" msgstr "Масштабын хамгийн бага түвшин хүчинтэй байгаа эсэх" #: ../bonobo/bonobo-zoomable.c:361 msgid "Has a maximum Zoom level" msgstr "Масштаб хамгийн их түвшинтэй байх" #: ../bonobo/bonobo-zoomable.c:362 msgid "Whether we have a valid maximum zoom level" msgstr "Масштабын хамгийн их түвшин хүчинтэй байгаа эсэх" #: ../bonobo/bonobo-zoomable.c:369 msgid "Is continuous" msgstr "Үргэлжилсэн" #: ../bonobo/bonobo-zoomable.c:370 msgid "Whether we zoom continuously (as opposed to jumps)" msgstr "Үргэлжилүүлэн масштаблах эсэх (эсрэг тал руу үсрэхээр)" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:1 msgid "About this application" msgstr "Энэ х.програмын тухай" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:2 msgid "Select" msgstr "Сонгох" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:3 msgid "_About..." msgstr "_Тухай..." #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:4 msgid "_Edit" msgstr "_Засварлах" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:5 #: ../tools/browser/bonobo-browser.xml.h:4 msgid "_File" msgstr "_Файл" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:6 msgid "_Select" msgstr "_Сонгох" #: ../samples/bonoboui/hello.c:63 msgid "This does nothing; it is only a demonstration." msgstr "Энэ юу ч хийхгүй; Энэ зүгээр зөвхөн үзүүлбэр." #: ../samples/bonoboui/hello.c:145 msgid "BonoboUI-Hello." msgstr "BonoboUI-Сайн уу." #: ../samples/bonoboui/hello.c:217 msgid "Gnome Hello" msgstr "GNOME-Сайн уу" #. Create Label and put it in the Button: #: ../samples/bonoboui/hello.c:272 msgid "Hello, World!" msgstr "Сайн уу, Дэлхий минь!" #: ../samples/bonoboui/hello.c:312 msgid "Cannot init libbonoboui code" msgstr "libbonoboui-код инициацилагдахгүй байна" #: ../samples/controls/bonobo-sample-controls.c:131 msgid "Could not initialize Bonobo UI" msgstr "Bonobo-Хэрэглэгчийн гадарагуу инициацилагдсангүй" #: ../tools/browser/bonobo-browser.desktop.in.h:1 msgid "Bonobo Component Browser" msgstr "Bonobo-ийн хэсгийн Хөтөч" #: ../tools/browser/bonobo-browser.desktop.in.h:2 msgid "Shows available Bonobo components" msgstr "Хүчинтэй Bonodo бүрэлдэхүүн хэсгийг харуулах" #: ../tools/browser/bonobo-browser.xml.h:1 msgid "About this program..." msgstr "Энэ программын тухай..." #: ../tools/browser/bonobo-browser.xml.h:2 msgid "Close the current window" msgstr "Одоогийн цонхыг хаах " #: ../tools/browser/bonobo-browser.xml.h:3 msgid "Open a new window" msgstr "Шинэ цонх нээх" #: ../tools/browser/bonobo-browser.xml.h:5 msgid "_Help" msgstr "_Тусламж" #. Build the general tab #: ../tools/browser/component-details.c:109 msgid "General" msgstr "Ерөнхий" #: ../tools/browser/component-details.c:116 #: ../tools/browser/component-list.c:398 msgid "IID" msgstr "IID" #: ../tools/browser/component-details.c:117 msgid "Location" msgstr "Байрлал" #. Build the details tab #: ../tools/browser/component-details.c:167 msgid "Details" msgstr "Нарийвчлал" #: ../tools/browser/component-details.c:168 msgid "Detailed Information" msgstr "Нарийвчилсан мэдээлэл" #: ../tools/browser/component-list.c:367 ../tools/browser/window.c:283 msgid "Active" msgstr "Идэвхтэй" #: ../tools/browser/component-list.c:388 msgid "Type" msgstr "Төрөл" #: ../tools/browser/window.c:162 msgid "Component Details" msgstr "Бүрэлдэхүүн хэсгийг нарийвчлах" #: ../tools/browser/window.c:208 msgid "Bonobo Browser" msgstr "Bonodo хөтөч" #: ../tools/browser/window.c:210 msgid "Copyright 2001, The GNOME Foundation" msgstr "Зохиогчийн эрх 2001, GNOME сан" #: ../tools/browser/window.c:211 msgid "Bonobo component browser" msgstr "Bonodo-ийн бүрэлдэхүүн хэсгийн хөтөч" #: ../tools/browser/window.c:214 msgid "translator-credits" msgstr "" "Санлигийн Бадрал \n" "Гноме-ийн орчуулгад оролцох хүсэлтэй хүмүүс имэйл бичнэ үү." #. create the window #: ../tools/browser/window.c:240 msgid "Component Browser" msgstr "Бүрэлдэхүүний хөтөч" #. Fill out the tool bar #: ../tools/browser/window.c:280 msgid "All" msgstr "Бүх" #: ../tools/browser/window.c:286 msgid "Inactive" msgstr "Идэвхгүй" libbonoboui-2.24.5/po/fr.po0000644000076400007640000003352011173072741012433 00000000000000# French translation of libbonoboui. # Copyright (C) 2001-2007 Free Software Foundation, Inc. # This file is distributed uder the same license as the libbonoboui package. # # Christophe Merlet , 2001-2006. # Christophe Fergeau , 2002. # Sun G11n , 2002. # Benoît Dejean , 2006. # Stéphane Raimbault , 2007. # msgid "" msgstr "" "Project-Id-Version: libbonoboui 2.15.1\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2008-01-17 22:18+0100\n" "PO-Revision-Date: 2007-12-08 23:16:15+0100\n" "Last-Translator: Robert-André Mauchin \n" "Language-Team: GNOME French Team \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../bonobo/bonobo-canvas-item.c:680 msgid "corba factory" msgstr "fabrique corba" #: ../bonobo/bonobo-canvas-item.c:681 msgid "The factory pointer" msgstr "Le pointeur de fabrique" #: ../bonobo/bonobo-canvas-item.c:690 msgid "corba UI container" msgstr "conteneur d'interface utilisateur corba" #: ../bonobo/bonobo-canvas-item.c:691 msgid "The User interface container" msgstr "Le conteneur d'interface utilisateur" #: ../bonobo/bonobo-dock-item-grip.c:255 msgid "Dock the toolbar" msgstr "Attacher la barre d'outils" #: ../bonobo/bonobo-dock-item-grip.c:256 msgid "Undock the toolbar" msgstr "Détacher la barre d'outils" #: ../bonobo/bonobo-dock-item.c:228 ../bonobo/bonobo-dock-item.c:229 #: ../bonobo/bonobo-ui-toolbar.c:1161 msgid "Shadow type" msgstr "Type d'ombre" #: ../bonobo/bonobo-dock-item.c:239 ../bonobo/bonobo-dock-item.c:240 #: ../bonobo/bonobo-ui-toolbar.c:1105 ../bonobo/bonobo-ui-toolbar.c:1106 msgid "Orientation" msgstr "Orientation" #: ../bonobo/bonobo-dock-item.c:250 ../bonobo/bonobo-dock-item.c:251 #: ../bonobo/bonobo-ui-toolbar.c:1124 ../bonobo/bonobo-ui-toolbar.c:1125 msgid "Preferred width" msgstr "Largeur préférée" #: ../bonobo/bonobo-dock-item.c:259 ../bonobo/bonobo-dock-item.c:260 #: ../bonobo/bonobo-ui-toolbar.c:1133 ../bonobo/bonobo-ui-toolbar.c:1134 msgid "Preferred height" msgstr "Hauteur préférée" #: ../bonobo/bonobo-file-selector-util.c:357 msgid "Select a file to open" msgstr "Sélectionnez un fichier à ouvrir" #: ../bonobo/bonobo-file-selector-util.c:385 msgid "Select files to open" msgstr "Sélectionnez des fichiers à ouvrir" #: ../bonobo/bonobo-file-selector-util.c:414 msgid "Select a filename to save" msgstr "Sélectionnez le nom du fichier à enregistrer" #: ../bonobo/bonobo-plug.c:423 msgid "Event Forwarding" msgstr "Transfert des événements" #: ../bonobo/bonobo-plug.c:424 msgid "Whether X events should be forwarded" msgstr "Indique si les événements X doivent être transférés" #: ../bonobo/bonobo-selector-widget.c:297 ../bonobo/bonobo-window.c:344 #: ../tools/browser/component-details.c:114 #: ../tools/browser/component-list.c:378 msgid "Name" msgstr "Nom" #: ../bonobo/bonobo-selector-widget.c:319 #: ../tools/browser/component-details.c:115 msgid "Description" msgstr "Description" #: ../bonobo/bonobo-selector.c:343 msgid "Interfaces required" msgstr "Interfaces requises" #: ../bonobo/bonobo-selector.c:344 msgid "" "A NULL-terminated array of interfaces which a server must support in order " "to be listed in the selector. Defaults to \"IDL:Bonobo/Embeddable:1.0\" if " "no interfaces are listed" msgstr "" "Un tableau d'interfaces terminé par NULL que doit prendre en charge un " "serveur pour être listé dans le sélecteur. « IDL:Bonobo/Embeddable:1.0 » par " "défaut si aucune interface n'est listée" #: ../bonobo/bonobo-selector.c:346 msgid "Interface required entry" msgstr "Entrée d'interface requise" #: ../bonobo/bonobo-selector.c:347 msgid "One of the interfaces that's required" msgstr "Une des interface requises" #: ../bonobo/bonobo-ui-config-widget.c:265 msgid "Visible" msgstr "Visible" #: ../bonobo/bonobo-ui-config-widget.c:272 msgid "_Show" msgstr "_Afficher" #: ../bonobo/bonobo-ui-config-widget.c:279 msgid "_Hide" msgstr "_Masquer" #: ../bonobo/bonobo-ui-config-widget.c:285 msgid "_View tooltips" msgstr "_Afficher les infobulles" #: ../bonobo/bonobo-ui-config-widget.c:290 msgid "Toolbars" msgstr "Barres d'outils" #: ../bonobo/bonobo-ui-config-widget.c:300 msgid "toolbars" msgstr "barres d'outils" #: ../bonobo/bonobo-ui-config-widget.c:311 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "Look" msgstr "Apparence" #: ../bonobo/bonobo-ui-config-widget.c:320 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "_Icon" msgstr "_Icône" #: ../bonobo/bonobo-ui-config-widget.c:326 msgid "_Text and Icon" msgstr "_Texte et icône" #: ../bonobo/bonobo-ui-config-widget.c:332 msgid "Text only" msgstr "Texte uniquement" #: ../bonobo/bonobo-ui-config-widget.c:338 msgid "_Priority text only" msgstr "_Priorité au texte uniquement" #: ../bonobo/bonobo-ui-engine.c:91 msgid "Debug" msgstr "Débogage" #: ../bonobo/bonobo-ui-engine.c:91 msgid "_Dump XML" msgstr "_Sortie XML" #: ../bonobo/bonobo-ui-engine.c:92 msgid "Dump the entire UI's XML description to the console" msgstr "" "Affiche la description XML complète de l'interface utilisateur sur la console" #: ../bonobo/bonobo-ui-engine-config.c:522 msgid "Configure UI" msgstr "Configurer l'interface utilisateur" #: ../bonobo/bonobo-ui-init-gtk.c:130 msgid "Gdk debugging flags to set" msgstr "Indicateurs de débogage Gdk à activer" #: ../bonobo/bonobo-ui-init-gtk.c:130 ../bonobo/bonobo-ui-init-gtk.c:133 #: ../bonobo/bonobo-ui-init-gtk.c:161 ../bonobo/bonobo-ui-init-gtk.c:164 msgid "FLAGS" msgstr "DRAPEAUX" #: ../bonobo/bonobo-ui-init-gtk.c:133 msgid "Gdk debugging flags to unset" msgstr "Indicateurs de débogage Gdk à désactiver" #: ../bonobo/bonobo-ui-init-gtk.c:137 msgid "X display to use" msgstr "Visuel X à utiliser" #: ../bonobo/bonobo-ui-init-gtk.c:137 msgid "DISPLAY" msgstr "VISUEL" #: ../bonobo/bonobo-ui-init-gtk.c:141 msgid "X screen to use" msgstr "Écran X à utiliser" #: ../bonobo/bonobo-ui-init-gtk.c:141 msgid "SCREEN" msgstr "ÉCRAN" #: ../bonobo/bonobo-ui-init-gtk.c:145 msgid "Make X calls synchronous" msgstr "Effectuer des appels X synchrones" #: ../bonobo/bonobo-ui-init-gtk.c:151 msgid "Don't use X shared memory extension" msgstr "Ne pas utiliser l'extension X de mémoire partagée" #: ../bonobo/bonobo-ui-init-gtk.c:155 msgid "Program name as used by the window manager" msgstr "Nom du programme utilisé par le gestionnaire de fenêtres" #: ../bonobo/bonobo-ui-init-gtk.c:155 msgid "NAME" msgstr "NOM" #: ../bonobo/bonobo-ui-init-gtk.c:158 msgid "Program class as used by the window manager" msgstr "Classe du programme utilisé par le gestionnaire de fenêtres" #: ../bonobo/bonobo-ui-init-gtk.c:158 msgid "CLASS" msgstr "CLASSE" #: ../bonobo/bonobo-ui-init-gtk.c:161 msgid "Gtk+ debugging flags to set" msgstr "Indicateurs de débogage Gtk+ à activer" #: ../bonobo/bonobo-ui-init-gtk.c:164 msgid "Gtk+ debugging flags to unset" msgstr "Indicateurs de débogage Gtk+ à désactiver" #: ../bonobo/bonobo-ui-init-gtk.c:167 msgid "Make all warnings fatal" msgstr "Tous les avertissements sont fatals" #: ../bonobo/bonobo-ui-init-gtk.c:170 msgid "Load an additional Gtk module" msgstr "Charge un module Gtk supplémentaire" #: ../bonobo/bonobo-ui-init-gtk.c:170 msgid "MODULE" msgstr "MODULE" #: ../bonobo/bonobo-ui-init-gtk.c:186 msgid "GTK+" msgstr "GTK+" #: ../bonobo/bonobo-ui-main.c:278 msgid "Bonobo GUI support" msgstr "Prise en charge Bonobo de l'interface graphique" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "B_oth" msgstr "Les _deux" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "T_ext" msgstr "T_exte" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Hide t_ips" msgstr "Masquer les _astuces" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Show t_ips" msgstr "Afficher les _astuces" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "_Hide toolbar" msgstr "_Masquer la barre d'outils" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "Customi_ze" msgstr "_Personnaliser" #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Customize the toolbar" msgstr "Personnalise la barre d'outils" #: ../bonobo/bonobo-ui-toolbar.c:1115 msgid "is floating" msgstr "est flottant" #: ../bonobo/bonobo-ui-toolbar.c:1116 msgid "whether the toolbar is floating" msgstr "indique si la barre d'outils est flottante" #: ../bonobo/bonobo-ui-toolbar.c:1162 msgid "Style of bevel around the toolbar" msgstr "Style de bordure autour de la barre d'outils" #: ../bonobo/bonobo-ui-util.c:601 msgid "Could not display help for this application" msgstr "Impossible d'afficher l'aide de cette application" #: ../bonobo/bonobo-ui-util.c:643 msgid "_Contents" msgstr "_Sommaire" #: ../bonobo/bonobo-ui-util.c:644 msgid "View help for this application" msgstr "Affiche l'aide de cette application" #: ../bonobo/bonobo-window.c:345 msgid "Name of the window - used for configuration serialization." msgstr "Nom de la fenêtre - utilisé pour la sérialisation de la configuration." #: ../bonobo/bonobo-zoomable.c:326 msgid "Zoom level" msgstr "Niveau de zoom" #: ../bonobo/bonobo-zoomable.c:327 msgid "The degree of enlargment" msgstr "Le degré d'agrandissement" #: ../bonobo/bonobo-zoomable.c:335 msgid "Minimum Zoom level" msgstr "Niveau de zoom minimum" #: ../bonobo/bonobo-zoomable.c:336 msgid "The minimum degree of enlargment" msgstr "Le degré minimum d'agrandissement" #: ../bonobo/bonobo-zoomable.c:344 msgid "Maximum Zoom level" msgstr "Niveau de zoom maximum" #: ../bonobo/bonobo-zoomable.c:345 msgid "The maximum degree of enlargment" msgstr "Le degré maximum d'agrandissement" #: ../bonobo/bonobo-zoomable.c:353 msgid "Has a minimum Zoom level" msgstr "A un niveau de zoom minimum" #: ../bonobo/bonobo-zoomable.c:354 msgid "Whether we have a valid minimum zoom level" msgstr "Indique si le niveau de zoom minimum est valide" #: ../bonobo/bonobo-zoomable.c:361 msgid "Has a maximum Zoom level" msgstr "A un niveau de zoom maximum" #: ../bonobo/bonobo-zoomable.c:362 msgid "Whether we have a valid maximum zoom level" msgstr "Indique si le niveau de zoom maximum est valide" #: ../bonobo/bonobo-zoomable.c:369 msgid "Is continuous" msgstr "Est continu" #: ../bonobo/bonobo-zoomable.c:370 msgid "Whether we zoom continuously (as opposed to jumps)" msgstr "" "Indique si l'on peut effectuer un zoom continu (par opposition à un zoom par " "paliers)" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:1 msgid "About this application" msgstr "À propos de cette application" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:2 msgid "Select" msgstr "Sélectionner" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:3 msgid "_About..." msgstr "À _propos..." #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:4 msgid "_Edit" msgstr "É_dition" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:5 #: ../tools/browser/bonobo-browser.xml.h:4 msgid "_File" msgstr "_Fichier" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:6 msgid "_Select" msgstr "_Sélectionner" #: ../samples/bonoboui/hello.c:63 msgid "This does nothing; it is only a demonstration." msgstr "Ne fait rien ; ceci est juste une démonstration." #: ../samples/bonoboui/hello.c:145 msgid "BonoboUI-Hello." msgstr "BonoboUI-Hello." #: ../samples/bonoboui/hello.c:217 msgid "Gnome Hello" msgstr "GNOME Hello" #. Create Label and put it in the Button: #: ../samples/bonoboui/hello.c:272 msgid "Hello, World!" msgstr "Bonjour le monde !" #: ../samples/bonoboui/hello.c:312 msgid "Cannot init libbonoboui code" msgstr "Impossible d'initialiser le code libbonoboui" #: ../samples/controls/bonobo-sample-controls.c:131 msgid "Could not initialize Bonobo UI" msgstr "Impossible d'initialiser l'interface utilisateur Bonobo" #: ../tools/browser/bonobo-browser.desktop.in.h:1 msgid "Bonobo Component Browser" msgstr "Navigateur de composants Bonobo" #: ../tools/browser/bonobo-browser.desktop.in.h:2 msgid "Shows available Bonobo components" msgstr "Affiche les composants Bonobo disponibles" #: ../tools/browser/bonobo-browser.xml.h:1 msgid "About this program..." msgstr "À propos de ce programme..." #: ../tools/browser/bonobo-browser.xml.h:2 msgid "Close the current window" msgstr "Ferme la fenêtre actuelle" #: ../tools/browser/bonobo-browser.xml.h:3 msgid "Open a new window" msgstr "Ouvre une nouvelle fenêtre" #: ../tools/browser/bonobo-browser.xml.h:5 msgid "_Help" msgstr "Aid_e" #. Build the general tab #: ../tools/browser/component-details.c:109 msgid "General" msgstr "Général" #: ../tools/browser/component-details.c:116 #: ../tools/browser/component-list.c:398 msgid "IID" msgstr "IID" #: ../tools/browser/component-details.c:117 msgid "Location" msgstr "Emplacement" #. Build the details tab #: ../tools/browser/component-details.c:167 msgid "Details" msgstr "Détails" #: ../tools/browser/component-details.c:168 msgid "Detailed Information" msgstr "Information détaillée" #: ../tools/browser/component-list.c:367 ../tools/browser/window.c:283 msgid "Active" msgstr "Actif" #: ../tools/browser/component-list.c:388 msgid "Type" msgstr "Type" #: ../tools/browser/window.c:162 msgid "Component Details" msgstr "Détails du composant" #: ../tools/browser/window.c:208 msgid "Bonobo Browser" msgstr "Navigateur Bonobo" #: ../tools/browser/window.c:210 msgid "Copyright 2001, The GNOME Foundation" msgstr "Copyright 2001, la fondation GNOME" #: ../tools/browser/window.c:211 msgid "Bonobo component browser" msgstr "Navigateur de composants Bonobo" #: ../tools/browser/window.c:214 msgid "translator-credits" msgstr "" "Christophe Merlet \n" "Christophe Fergeau \n" "Sun G11n \n" "Benoît Dejean \n" "Stéphane Raimbault " #. create the window #: ../tools/browser/window.c:240 msgid "Component Browser" msgstr "Navigateur de composants" #. Fill out the tool bar #: ../tools/browser/window.c:280 msgid "All" msgstr "Tout" #: ../tools/browser/window.c:286 msgid "Inactive" msgstr "Inactif" libbonoboui-2.24.5/po/gl.po0000664000076400007640000003334711433016366012437 00000000000000# translation of gl.po to Galego # Galician Translation of libbonoboui. # Copyright (C) 2004 Jesús Bravo Álvarez # Copyright (C) 2002 Xabi García # # Proxecto Trasno - Adaptación do software libre á lingua galega: Se desexas # colaborar connosco, podes atopar máis información en http://www.trasno.net # # # Jesús Bravo Álvarez , 2004. # Xabi García , 2002. # Ignacio Casal Quinteiro , 2005, 2006. # Ignacio Casal Quinteiro , 2008. # Mancomún - Centro de Referencia e Servizos de Software Libre , 2009. # Fran Diéguez , 2010. # msgid "" msgstr "" "Project-Id-Version: gl\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2010-07-21 13:19+0200\n" "PO-Revision-Date: 2010-07-21 13:19+0200\n" "Last-Translator: Fran Diéguez \n" "Language-Team: Galician \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Language: gl\n" "Plural-Forms: nplurals=2; plural=(n!=1);\n" #: ../bonobo/bonobo-canvas-item.c:680 msgid "corba factory" msgstr "factoría corba" #: ../bonobo/bonobo-canvas-item.c:681 msgid "The factory pointer" msgstr "O punteiro de factoría" #: ../bonobo/bonobo-canvas-item.c:690 msgid "corba UI container" msgstr "contedor IU de corba" #: ../bonobo/bonobo-canvas-item.c:691 msgid "The User interface container" msgstr "O contedor da interface de usuario" #: ../bonobo/bonobo-dock-item-grip.c:254 msgid "Dock the toolbar" msgstr "Ancorar a barra de ferramentas" #: ../bonobo/bonobo-dock-item-grip.c:255 msgid "Undock the toolbar" msgstr "Desancorar a barra de ferramentas" #: ../bonobo/bonobo-dock-item.c:225 ../bonobo/bonobo-dock-item.c:226 #: ../bonobo/bonobo-ui-toolbar.c:1163 msgid "Shadow type" msgstr "Tipo de sombra" #: ../bonobo/bonobo-dock-item.c:236 ../bonobo/bonobo-dock-item.c:237 #: ../bonobo/bonobo-ui-toolbar.c:1107 ../bonobo/bonobo-ui-toolbar.c:1108 msgid "Orientation" msgstr "Orientación" #: ../bonobo/bonobo-dock-item.c:247 ../bonobo/bonobo-dock-item.c:248 #: ../bonobo/bonobo-ui-toolbar.c:1126 ../bonobo/bonobo-ui-toolbar.c:1127 msgid "Preferred width" msgstr "Largura preferida" #: ../bonobo/bonobo-dock-item.c:256 ../bonobo/bonobo-dock-item.c:257 #: ../bonobo/bonobo-ui-toolbar.c:1135 ../bonobo/bonobo-ui-toolbar.c:1136 msgid "Preferred height" msgstr "Altura preferida" #: ../bonobo/bonobo-file-selector-util.c:350 msgid "Select a file to open" msgstr "Seleccione un ficheiro para abrir" #: ../bonobo/bonobo-file-selector-util.c:378 msgid "Select files to open" msgstr "Seleccione ficheiros para abrir" #: ../bonobo/bonobo-file-selector-util.c:407 msgid "Select a filename to save" msgstr "Seleccione un nome de ficheiro para gardar" #: ../bonobo/bonobo-plug.c:425 msgid "Event Forwarding" msgstr "Reenvío de eventos" #: ../bonobo/bonobo-plug.c:426 msgid "Whether X events should be forwarded" msgstr "Indica se os eventos X deben ser reenviados" #: ../bonobo/bonobo-selector-widget.c:300 ../bonobo/bonobo-window.c:347 #: ../tools/browser/component-details.c:108 #: ../tools/browser/component-list.c:369 msgid "Name" msgstr "Nome" #: ../bonobo/bonobo-selector-widget.c:322 #: ../tools/browser/component-details.c:109 msgid "Description" msgstr "Descrición" #: ../bonobo/bonobo-selector.c:343 msgid "Interfaces required" msgstr "Interfaces requiridas" #: ../bonobo/bonobo-selector.c:344 msgid "" "A NULL-terminated array of interfaces which a server must support in order " "to be listed in the selector. Defaults to \"IDL:Bonobo/Embeddable:1.0\" if " "no interfaces are listed" msgstr "" "Matriz de interfaces terminada en NULL que debe admitir un servidor para ser " "listado no selector. A predeterminada é «IDL:Bonobo/Embeddable:1.0» se non " "hai interfaces listadas" #: ../bonobo/bonobo-selector.c:346 msgid "Interface required entry" msgstr "Entrada de interface requirida" #: ../bonobo/bonobo-selector.c:347 msgid "One of the interfaces that's required" msgstr "Unha das interfaces que é requirida" #: ../bonobo/bonobo-ui-config-widget.c:267 msgid "Visible" msgstr "Visíbel" #: ../bonobo/bonobo-ui-config-widget.c:274 msgid "_Show" msgstr "Mo_strar" #: ../bonobo/bonobo-ui-config-widget.c:281 msgid "_Hide" msgstr "_Ocultar" #: ../bonobo/bonobo-ui-config-widget.c:287 msgid "_View tooltips" msgstr "_Ver as indicacións" #: ../bonobo/bonobo-ui-config-widget.c:292 msgid "Toolbars" msgstr "Barras de ferramentas" #: ../bonobo/bonobo-ui-config-widget.c:302 msgid "toolbars" msgstr "barras de ferramentas" #: ../bonobo/bonobo-ui-config-widget.c:313 #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "Look" msgstr "Aparencia" #: ../bonobo/bonobo-ui-config-widget.c:322 #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "_Icon" msgstr "_Icona" #: ../bonobo/bonobo-ui-config-widget.c:328 msgid "_Text and Icon" msgstr "_Texto e icona" #: ../bonobo/bonobo-ui-config-widget.c:334 msgid "Text only" msgstr "Só texto" #: ../bonobo/bonobo-ui-config-widget.c:340 msgid "_Priority text only" msgstr "Só texto _prioritario" #: ../bonobo/bonobo-ui-engine.c:93 msgid "Debug" msgstr "Depurar" #: ../bonobo/bonobo-ui-engine.c:93 msgid "_Dump XML" msgstr "_Descargar XML" #: ../bonobo/bonobo-ui-engine.c:94 msgid "Dump the entire UI's XML description to the console" msgstr "Descargar a descrición XML completa da IU na consola" #: ../bonobo/bonobo-ui-engine-config.c:524 msgid "Configure UI" msgstr "Configurar IU" #: ../bonobo/bonobo-ui-init-gtk.c:131 msgid "Gdk debugging flags to set" msgstr "Estabelecer os parámetros de depuración de Gdk" #: ../bonobo/bonobo-ui-init-gtk.c:131 ../bonobo/bonobo-ui-init-gtk.c:134 #: ../bonobo/bonobo-ui-init-gtk.c:162 ../bonobo/bonobo-ui-init-gtk.c:165 msgid "FLAGS" msgstr "PARÁMETROS" #: ../bonobo/bonobo-ui-init-gtk.c:134 msgid "Gdk debugging flags to unset" msgstr "Desconfigurar os parámetros de depuración de Gdk" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "X display to use" msgstr "Pantalla de X que se vai usar" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "DISPLAY" msgstr "MONITOR" #: ../bonobo/bonobo-ui-init-gtk.c:142 msgid "X screen to use" msgstr "Pantalla de X para usar" #: ../bonobo/bonobo-ui-init-gtk.c:142 msgid "SCREEN" msgstr "PANTALLA" #: ../bonobo/bonobo-ui-init-gtk.c:146 msgid "Make X calls synchronous" msgstr "Facer chamadas a X síncronas" #: ../bonobo/bonobo-ui-init-gtk.c:152 msgid "Don't use X shared memory extension" msgstr "Non empregar a extensión de memoria compartida de X" #: ../bonobo/bonobo-ui-init-gtk.c:156 msgid "Program name as used by the window manager" msgstr "Nome do programa empregado polo xestor de xanelas" #: ../bonobo/bonobo-ui-init-gtk.c:156 msgid "NAME" msgstr "NOME" #: ../bonobo/bonobo-ui-init-gtk.c:159 msgid "Program class as used by the window manager" msgstr "Clase do programa empregado polo xestor de xanelas" #: ../bonobo/bonobo-ui-init-gtk.c:159 msgid "CLASS" msgstr "CLASE" #: ../bonobo/bonobo-ui-init-gtk.c:162 msgid "Gtk+ debugging flags to set" msgstr "Estabelecer os parámetros de depuración do Gtk+" #: ../bonobo/bonobo-ui-init-gtk.c:165 msgid "Gtk+ debugging flags to unset" msgstr "Desconfigurar os parámetros de depuración Gtk+" #: ../bonobo/bonobo-ui-init-gtk.c:168 msgid "Make all warnings fatal" msgstr "Facer que os avisos sexan todos moi graves" #: ../bonobo/bonobo-ui-init-gtk.c:171 msgid "Load an additional Gtk module" msgstr "Cargar un módulo adicional do Gtk" #: ../bonobo/bonobo-ui-init-gtk.c:171 msgid "MODULE" msgstr "MÓDULO" #: ../bonobo/bonobo-ui-init-gtk.c:187 msgid "GTK+" msgstr "GTK+" #: ../bonobo/bonobo-ui-main.c:281 msgid "Bonobo GUI support" msgstr "Compatibilidade con GUI do Bonobo" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "B_oth" msgstr "Amb_os" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "T_ext" msgstr "T_exto" #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Hide t_ips" msgstr "Ocultar suxest_ións" #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Show t_ips" msgstr "Mostrar suxest_ións" #: ../bonobo/bonobo-ui-sync-toolbar.c:570 msgid "_Hide toolbar" msgstr "O_cultar a barra de ferramentas" #: ../bonobo/bonobo-ui-sync-toolbar.c:570 msgid "Customi_ze" msgstr "Personali_zar" #: ../bonobo/bonobo-ui-sync-toolbar.c:571 msgid "Customize the toolbar" msgstr "Personalizar a barra de ferramentas" #: ../bonobo/bonobo-ui-toolbar.c:1117 msgid "is floating" msgstr "é flotante" #: ../bonobo/bonobo-ui-toolbar.c:1118 msgid "whether the toolbar is floating" msgstr "indica se a barra de ferramentas é flotante" #: ../bonobo/bonobo-ui-toolbar.c:1164 msgid "Style of bevel around the toolbar" msgstr "Estilo do bisel en torno da barra de ferramentas" #: ../bonobo/bonobo-ui-util.c:602 msgid "Could not display help for this application" msgstr "Non foi posíbel mostrar a axuda para este aplicativo" #: ../bonobo/bonobo-ui-util.c:644 msgid "_Contents" msgstr "_Contidos" #: ../bonobo/bonobo-ui-util.c:645 msgid "View help for this application" msgstr "Ver a axuda deste aplicativo" #: ../bonobo/bonobo-window.c:348 msgid "Name of the window - used for configuration serialization." msgstr "Nome da xanela - usada para a seriación da configuración." #: ../bonobo/bonobo-zoomable.c:326 msgid "Zoom level" msgstr "Nivel de zoom" #: ../bonobo/bonobo-zoomable.c:327 msgid "The degree of enlargment" msgstr "O grao do aumento" #: ../bonobo/bonobo-zoomable.c:335 msgid "Minimum Zoom level" msgstr "Nivel mínimo de zoom" #: ../bonobo/bonobo-zoomable.c:336 msgid "The minimum degree of enlargment" msgstr "O grao mínimo de aumento" #: ../bonobo/bonobo-zoomable.c:344 msgid "Maximum Zoom level" msgstr "Nivel máximo de zoom" #: ../bonobo/bonobo-zoomable.c:345 msgid "The maximum degree of enlargment" msgstr "O grao máximo de aumento" #: ../bonobo/bonobo-zoomable.c:353 msgid "Has a minimum Zoom level" msgstr "Ten un nivel mínimo de zoom" #: ../bonobo/bonobo-zoomable.c:354 msgid "Whether we have a valid minimum zoom level" msgstr "Indica se hai un nivel mínimo de zoom correcto" #: ../bonobo/bonobo-zoomable.c:361 msgid "Has a maximum Zoom level" msgstr "Ten un nivel de zoom máximo" #: ../bonobo/bonobo-zoomable.c:362 msgid "Whether we have a valid maximum zoom level" msgstr "Indica se hai un nivel máximo de zoom correcto" #: ../bonobo/bonobo-zoomable.c:369 msgid "Is continuous" msgstr "É continuo" #: ../bonobo/bonobo-zoomable.c:370 msgid "Whether we zoom continuously (as opposed to jumps)" msgstr "Indica se se amplía progresivamente (e non a saltos)" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:1 msgid "About this application" msgstr "Sobre este aplicativo" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:2 msgid "Select" msgstr "Seleccionar" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:3 msgid "_About..." msgstr "_Sobre..." #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:4 msgid "_Edit" msgstr "_Editar" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:5 #: ../tools/browser/bonobo-browser.xml.h:4 msgid "_File" msgstr "_Ficheiro" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:6 msgid "_Select" msgstr "_Seleccionar" #: ../samples/bonoboui/hello.c:65 msgid "This does nothing; it is only a demonstration." msgstr "Isto non fai nada; só é unha demostración." #: ../samples/bonoboui/hello.c:147 msgid "BonoboUI-Hello." msgstr "BonoboUI-Hello." #: ../samples/bonoboui/hello.c:219 msgid "Gnome Hello" msgstr "Ola Gnome" #. Create Label and put it in the Button: #: ../samples/bonoboui/hello.c:274 msgid "Hello, World!" msgstr "Ola Mundo!" #: ../samples/bonoboui/hello.c:314 msgid "Cannot init libbonoboui code" msgstr "Non foi posíbel iniciar o código libbonoboui" #: ../samples/controls/bonobo-sample-controls.c:133 msgid "Could not initialize Bonobo UI" msgstr "Non foi posíbel inicializar o Bonobo UI" #: ../tools/browser/bonobo-browser.desktop.in.h:1 msgid "Bonobo Component Browser" msgstr "Navegador de compoñentes Bonobo" #: ../tools/browser/bonobo-browser.desktop.in.h:2 msgid "Shows available Bonobo components" msgstr "Mostrar os compoñentes dispoñíbeis do Bonobo" #: ../tools/browser/bonobo-browser.xml.h:1 msgid "About this program..." msgstr "Sobre este aplicativo..." #: ../tools/browser/bonobo-browser.xml.h:2 msgid "Close the current window" msgstr "Pechar a xanela actual" #: ../tools/browser/bonobo-browser.xml.h:3 msgid "Open a new window" msgstr "Abrir unha xanela nova" #: ../tools/browser/bonobo-browser.xml.h:5 msgid "_Help" msgstr "A_xuda" #. Build the general tab #: ../tools/browser/component-details.c:103 msgid "General" msgstr "Xeral" #: ../tools/browser/component-details.c:110 #: ../tools/browser/component-list.c:389 msgid "IID" msgstr "IID" #: ../tools/browser/component-details.c:111 msgid "Location" msgstr "Localización" #. Build the details tab #: ../tools/browser/component-details.c:161 msgid "Details" msgstr "Detalles" #: ../tools/browser/component-details.c:162 msgid "Detailed Information" msgstr "Información detallada" #: ../tools/browser/component-list.c:358 ../tools/browser/window.c:283 msgid "Active" msgstr "Activo" #: ../tools/browser/component-list.c:379 msgid "Type" msgstr "Tipo" #: ../tools/browser/window.c:162 msgid "Component Details" msgstr "Detalles do compoñente" #: ../tools/browser/window.c:208 msgid "Bonobo Browser" msgstr "Navegador Bonobo" #: ../tools/browser/window.c:210 msgid "Copyright 2001, The GNOME Foundation" msgstr "Copyright 2001, A Fundación GNOME" #: ../tools/browser/window.c:211 msgid "Bonobo component browser" msgstr "Explorador de compoñentes Bonobo" #: ../tools/browser/window.c:214 msgid "translator-credits" msgstr "" "Francisco Diéguez , 2009, 2010;\n" "Suso Baleato " #. create the window #: ../tools/browser/window.c:240 msgid "Component Browser" msgstr "Explorador de compoñentes" #. Fill out the tool bar #: ../tools/browser/window.c:280 msgid "All" msgstr "Todo" #: ../tools/browser/window.c:286 msgid "Inactive" msgstr "Inactivo" libbonoboui-2.24.5/po/Makefile.in.in0000644000076400007640000001537711546334672014160 00000000000000# Makefile for program source directory in GNU NLS utilities package. # Copyright (C) 1995, 1996, 1997 by Ulrich Drepper # Copyright (C) 2004-2008 Rodney Dawes # # This file may be copied and used freely without restrictions. It may # be used in projects which are not available under a GNU Public License, # but which still want to provide support for the GNU gettext functionality. # # - Modified by Owen Taylor to use GETTEXT_PACKAGE # instead of PACKAGE and to look for po2tbl in ./ not in intl/ # # - Modified by jacob berkman to install # Makefile.in.in and po2tbl.sed.in for use with glib-gettextize # # - Modified by Rodney Dawes for use with intltool # # We have the following line for use by intltoolize: # INTLTOOL_MAKEFILE GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ PACKAGE = @PACKAGE@ VERSION = @VERSION@ SHELL = @SHELL@ srcdir = @srcdir@ top_srcdir = @top_srcdir@ top_builddir = @top_builddir@ VPATH = @srcdir@ prefix = @prefix@ exec_prefix = @exec_prefix@ datadir = @datadir@ datarootdir = @datarootdir@ libdir = @libdir@ DATADIRNAME = @DATADIRNAME@ itlocaledir = $(prefix)/$(DATADIRNAME)/locale subdir = po install_sh = @install_sh@ # Automake >= 1.8 provides @mkdir_p@. # Until it can be supposed, use the safe fallback: mkdir_p = $(install_sh) -d INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ GMSGFMT = @GMSGFMT@ MSGFMT = @MSGFMT@ XGETTEXT = @XGETTEXT@ INTLTOOL_UPDATE = @INTLTOOL_UPDATE@ INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@ MSGMERGE = INTLTOOL_EXTRACT=$(INTLTOOL_EXTRACT) srcdir=$(srcdir) $(INTLTOOL_UPDATE) --gettext-package $(GETTEXT_PACKAGE) --dist GENPOT = INTLTOOL_EXTRACT=$(INTLTOOL_EXTRACT) srcdir=$(srcdir) $(INTLTOOL_UPDATE) --gettext-package $(GETTEXT_PACKAGE) --pot ALL_LINGUAS = @ALL_LINGUAS@ PO_LINGUAS=$(shell if test -r $(srcdir)/LINGUAS; then grep -v "^\#" $(srcdir)/LINGUAS; else echo "$(ALL_LINGUAS)"; fi) USER_LINGUAS=$(shell if test -n "$(LINGUAS)"; then LLINGUAS="$(LINGUAS)"; ALINGUAS="$(ALL_LINGUAS)"; for lang in $$LLINGUAS; do if test -n "`grep \^$$lang$$ $(srcdir)/LINGUAS 2>/dev/null`" -o -n "`echo $$ALINGUAS|tr ' ' '\n'|grep \^$$lang$$`"; then printf "$$lang "; fi; done; fi) USE_LINGUAS=$(shell if test -n "$(USER_LINGUAS)" -o -n "$(LINGUAS)"; then LLINGUAS="$(USER_LINGUAS)"; else if test -n "$(PO_LINGUAS)"; then LLINGUAS="$(PO_LINGUAS)"; else LLINGUAS="$(ALL_LINGUAS)"; fi; fi; for lang in $$LLINGUAS; do printf "$$lang "; done) POFILES=$(shell LINGUAS="$(PO_LINGUAS)"; for lang in $$LINGUAS; do printf "$$lang.po "; done) DISTFILES = Makefile.in.in POTFILES.in $(POFILES) EXTRA_DISTFILES = ChangeLog POTFILES.skip Makevars LINGUAS POTFILES = \ # This comment gets stripped out CATALOGS=$(shell LINGUAS="$(USE_LINGUAS)"; for lang in $$LINGUAS; do printf "$$lang.gmo "; done) .SUFFIXES: .SUFFIXES: .po .pox .gmo .mo .msg .cat .po.pox: $(MAKE) $(GETTEXT_PACKAGE).pot $(MSGMERGE) $< $(GETTEXT_PACKAGE).pot -o $*.pox .po.mo: $(MSGFMT) -o $@ $< .po.gmo: file=`echo $* | sed 's,.*/,,'`.gmo \ && rm -f $$file && $(GMSGFMT) -o $$file $< .po.cat: sed -f ../intl/po2msg.sed < $< > $*.msg \ && rm -f $@ && gencat $@ $*.msg all: all-@USE_NLS@ all-yes: $(CATALOGS) all-no: $(GETTEXT_PACKAGE).pot: $(POTFILES) $(GENPOT) install: install-data install-data: install-data-@USE_NLS@ install-data-no: all install-data-yes: all linguas="$(USE_LINGUAS)"; \ for lang in $$linguas; do \ dir=$(DESTDIR)$(itlocaledir)/$$lang/LC_MESSAGES; \ $(mkdir_p) $$dir; \ if test -r $$lang.gmo; then \ $(INSTALL_DATA) $$lang.gmo $$dir/$(GETTEXT_PACKAGE).mo; \ echo "installing $$lang.gmo as $$dir/$(GETTEXT_PACKAGE).mo"; \ else \ $(INSTALL_DATA) $(srcdir)/$$lang.gmo $$dir/$(GETTEXT_PACKAGE).mo; \ echo "installing $(srcdir)/$$lang.gmo as" \ "$$dir/$(GETTEXT_PACKAGE).mo"; \ fi; \ if test -r $$lang.gmo.m; then \ $(INSTALL_DATA) $$lang.gmo.m $$dir/$(GETTEXT_PACKAGE).mo.m; \ echo "installing $$lang.gmo.m as $$dir/$(GETTEXT_PACKAGE).mo.m"; \ else \ if test -r $(srcdir)/$$lang.gmo.m ; then \ $(INSTALL_DATA) $(srcdir)/$$lang.gmo.m \ $$dir/$(GETTEXT_PACKAGE).mo.m; \ echo "installing $(srcdir)/$$lang.gmo.m as" \ "$$dir/$(GETTEXT_PACKAGE).mo.m"; \ else \ true; \ fi; \ fi; \ done # Empty stubs to satisfy archaic automake needs dvi info ctags tags CTAGS TAGS ID: # Define this as empty until I found a useful application. install-exec installcheck: uninstall: linguas="$(USE_LINGUAS)"; \ for lang in $$linguas; do \ rm -f $(DESTDIR)$(itlocaledir)/$$lang/LC_MESSAGES/$(GETTEXT_PACKAGE).mo; \ rm -f $(DESTDIR)$(itlocaledir)/$$lang/LC_MESSAGES/$(GETTEXT_PACKAGE).mo.m; \ done check: all $(GETTEXT_PACKAGE).pot rm -f missing notexist srcdir=$(srcdir) $(INTLTOOL_UPDATE) -m if [ -r missing -o -r notexist ]; then \ exit 1; \ fi mostlyclean: rm -f *.pox $(GETTEXT_PACKAGE).pot *.old.po cat-id-tbl.tmp rm -f .intltool-merge-cache clean: mostlyclean distclean: clean rm -f Makefile Makefile.in POTFILES stamp-it rm -f *.mo *.msg *.cat *.cat.m *.gmo maintainer-clean: distclean @echo "This command is intended for maintainers to use;" @echo "it deletes files that may require special tools to rebuild." rm -f Makefile.in.in distdir = ../$(PACKAGE)-$(VERSION)/$(subdir) dist distdir: $(DISTFILES) dists="$(DISTFILES)"; \ extra_dists="$(EXTRA_DISTFILES)"; \ for file in $$extra_dists; do \ test -f $(srcdir)/$$file && dists="$$dists $(srcdir)/$$file"; \ done; \ for file in $$dists; do \ test -f $$file || file="$(srcdir)/$$file"; \ ln $$file $(distdir) 2> /dev/null \ || cp -p $$file $(distdir); \ done update-po: Makefile $(MAKE) $(GETTEXT_PACKAGE).pot tmpdir=`pwd`; \ linguas="$(USE_LINGUAS)"; \ for lang in $$linguas; do \ echo "$$lang:"; \ result="`$(MSGMERGE) -o $$tmpdir/$$lang.new.po $$lang`"; \ if $$result; then \ if cmp $(srcdir)/$$lang.po $$tmpdir/$$lang.new.po >/dev/null 2>&1; then \ rm -f $$tmpdir/$$lang.new.po; \ else \ if mv -f $$tmpdir/$$lang.new.po $$lang.po; then \ :; \ else \ echo "msgmerge for $$lang.po failed: cannot move $$tmpdir/$$lang.new.po to $$lang.po" 1>&2; \ rm -f $$tmpdir/$$lang.new.po; \ exit 1; \ fi; \ fi; \ else \ echo "msgmerge for $$lang.gmo failed!"; \ rm -f $$tmpdir/$$lang.new.po; \ fi; \ done Makefile POTFILES: stamp-it @if test ! -f $@; then \ rm -f stamp-it; \ $(MAKE) stamp-it; \ fi stamp-it: Makefile.in.in $(top_builddir)/config.status POTFILES.in cd $(top_builddir) \ && CONFIG_FILES=$(subdir)/Makefile.in CONFIG_HEADERS= CONFIG_LINKS= \ $(SHELL) ./config.status # Tell versions [3.59,3.63) of GNU make not to export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. .NOEXPORT: libbonoboui-2.24.5/po/ml.po0000644000076400007640000004427411173072741012444 00000000000000# translation of libbonoboui.HEAD.ml.po to Malayalam # This file is distributed under the same license as the libbonoboui package. # Copyright (C) 2003-2008 libbonoboui'S COPYRIGHT HOLDER. # FSF-India , 2003. # Ani Peter , 2006. # Santhosh Thottingal , 2008 msgid "" msgstr "" "Project-Id-Version: libbonoboui.HEAD.ml\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2007-11-13 21:46+0000\n" "PO-Revision-Date: 2008-08-02 17:44+0530\n" "Last-Translator: Santhosh Thottingal \n" "Language-Team: Swathanthra Malayalam Computing \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Generator: KBabel 1.9.1\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" "X-Poedit-Language: Malayalam\n" "X-Poedit-Country: India\n" "X-Poedit-SourceCharset: utf-8\n" #: ../bonobo/bonobo-canvas-item.c:680 msgid "corba factory" msgstr "corba ഫാക്ടറി" #: ../bonobo/bonobo-canvas-item.c:681 msgid "The factory pointer" msgstr "ഫാക്ടറി പോയിന്റര്‍" #: ../bonobo/bonobo-canvas-item.c:690 msgid "corba UI container" msgstr "corba UI കണ്ടെയിനര്‍" #: ../bonobo/bonobo-canvas-item.c:691 msgid "The User interface container" msgstr "ഉപയോക്തൃതല കണ്ടെയിനര്‍" #: ../bonobo/bonobo-dock-item-grip.c:255 msgid "Dock the toolbar" msgstr "ഉപകരണപ്പട്ട അതിന്റെ സ്ഥാനത്തുവെയ്ക്കുക" #: ../bonobo/bonobo-dock-item-grip.c:256 msgid "Undock the toolbar" msgstr "ഉപകരണപട്ട അടര്‍ത്തിമാറ്റുക" #: ../bonobo/bonobo-dock-item.c:228 #: ../bonobo/bonobo-dock-item.c:229 #: ../bonobo/bonobo-ui-toolbar.c:1161 msgid "Shadow type" msgstr "നിഴലിന്റെ തരം" #: ../bonobo/bonobo-dock-item.c:239 #: ../bonobo/bonobo-dock-item.c:240 #: ../bonobo/bonobo-ui-toolbar.c:1105 #: ../bonobo/bonobo-ui-toolbar.c:1106 msgid "Orientation" msgstr "ദിശ" #: ../bonobo/bonobo-dock-item.c:250 #: ../bonobo/bonobo-dock-item.c:251 #: ../bonobo/bonobo-ui-toolbar.c:1124 #: ../bonobo/bonobo-ui-toolbar.c:1125 msgid "Preferred width" msgstr "ഇഷ്ടപ്പെട്ട വീതി" #: ../bonobo/bonobo-dock-item.c:259 #: ../bonobo/bonobo-dock-item.c:260 #: ../bonobo/bonobo-ui-toolbar.c:1133 #: ../bonobo/bonobo-ui-toolbar.c:1134 msgid "Preferred height" msgstr "ഇഷ്ടപ്പെട്ട ഉയരം" #: ../bonobo/bonobo-file-selector-util.c:357 msgid "Select a file to open" msgstr "തുറക്കുന്നതിനായി ഒരു ഫയല്‍ തെരഞ്ഞെടുക്കുക" #: ../bonobo/bonobo-file-selector-util.c:385 msgid "Select files to open" msgstr "തുറക്കുന്നതിനായി ഫയലുകള്‍ തെരഞ്ഞെടുക്കുക" #: ../bonobo/bonobo-file-selector-util.c:414 msgid "Select a filename to save" msgstr "സൂക്ഷിയ്ക്കുന്നതിനായി ഒരു ഫയല്‍ നാമം തെരഞ്ഞെടുക്കുക" #: ../bonobo/bonobo-plug.c:423 msgid "Event Forwarding" msgstr "ഇവന്റ് കൈമാറല്‍" #: ../bonobo/bonobo-plug.c:424 msgid "Whether X events should be forwarded" msgstr "X ഇവന്റുകള്‍ കൈമാറണമോ എന്നു്" #: ../bonobo/bonobo-selector-widget.c:297 #: ../bonobo/bonobo-window.c:344 #: ../tools/browser/component-details.c:114 #: ../tools/browser/component-list.c:378 msgid "Name" msgstr "പേരു്" #: ../bonobo/bonobo-selector-widget.c:319 #: ../tools/browser/component-details.c:115 msgid "Description" msgstr "വിവരണം" #: ../bonobo/bonobo-selector.c:343 msgid "Interfaces required" msgstr "വിനിമയതലങ്ങള്‍ ആവശ്യമുണ്ടു്" #: ../bonobo/bonobo-selector.c:344 msgid "A NULL-terminated array of interfaces which a server must support in order to be listed in the selector. Defaults to \"IDL:Bonobo/Embeddable:1.0\" if no interfaces are listed" msgstr "A NULL-terminated array of interfaces which a server must support in order to be listed in the selector. വിനിമയതലങ്ങള്‍ ലഭ്യമല്ലെങ്കില്‍ \"IDL:Bonobo/Embeddable:1.0\" ഉപയോഗിയ്ക്കുക " #: ../bonobo/bonobo-selector.c:346 msgid "Interface required entry" msgstr "വിനിമയതലത്തിനു് എന്‍ട്രി ആവശ്യമുണ്ടു്" #: ../bonobo/bonobo-selector.c:347 msgid "One of the interfaces that's required" msgstr "ആവശ്യമുളള വിനിമയതലങ്ങളില്‍ ഒന്നു്" #: ../bonobo/bonobo-ui-config-widget.c:265 msgid "Visible" msgstr "ദൃശ്യമായതു്" #: ../bonobo/bonobo-ui-config-widget.c:272 msgid "_Show" msgstr "_കാണിക്കുക" #: ../bonobo/bonobo-ui-config-widget.c:279 msgid "_Hide" msgstr "_മറയ്ക്കുക" #: ../bonobo/bonobo-ui-config-widget.c:285 msgid "_View tooltips" msgstr "_ഉപകരണസഹായക്കുറിപ്പുകള്‍ കാണിയ്ക്കുക" #: ../bonobo/bonobo-ui-config-widget.c:290 msgid "Toolbars" msgstr "ഉപകരണപ്പട്ടകള്‍" #: ../bonobo/bonobo-ui-config-widget.c:300 msgid "toolbars" msgstr "ഉപകരണപ്പട്ടകള്‍" #: ../bonobo/bonobo-ui-config-widget.c:311 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "Look" msgstr "കാഴ്ച" #: ../bonobo/bonobo-ui-config-widget.c:320 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "_Icon" msgstr "_ചിഹ്നം" #: ../bonobo/bonobo-ui-config-widget.c:326 msgid "_Text and Icon" msgstr "_വാചകങ്ങളും ചിഹ്നങ്ങളും" #: ../bonobo/bonobo-ui-config-widget.c:332 msgid "Text only" msgstr "പദാവലി മാത്രം" #: ../bonobo/bonobo-ui-config-widget.c:338 msgid "_Priority text only" msgstr "_പ്രധാന പദാവലി മാത്രം " #: ../bonobo/bonobo-ui-engine.c:91 msgid "Debug" msgstr "പിഴവുതിരുത്തുക" #: ../bonobo/bonobo-ui-engine.c:91 msgid "_Dump XML" msgstr "XML _ഡംപ് ചെയ്യുക" #: ../bonobo/bonobo-ui-engine.c:92 msgid "Dump the entire UI's XML description to the console" msgstr "മുഴുവല്‍ UI-യുടെ XML വിവരണങ്ങളും കണ്‍സോളിലേക്ക് ഡംപ് ചെയ്യുക" #: ../bonobo/bonobo-ui-engine-config.c:522 msgid "Configure UI" msgstr "UI സജ്ജീകരിക്കുക" #: ../bonobo/bonobo-ui-init-gtk.c:130 msgid "Gdk debugging flags to set" msgstr "Gdk ഡീബഗ്ഗിങ് ഫ്ളാഗുകള്‍ " #: ../bonobo/bonobo-ui-init-gtk.c:130 #: ../bonobo/bonobo-ui-init-gtk.c:133 #: ../bonobo/bonobo-ui-init-gtk.c:161 #: ../bonobo/bonobo-ui-init-gtk.c:164 msgid "FLAGS" msgstr "FLAGS" #: ../bonobo/bonobo-ui-init-gtk.c:133 msgid "Gdk debugging flags to unset" msgstr "ഉപേക്ഷിയ്ക്കേണ്ട Gdk ഡീബഗ്ഗിങ് ഫ്ളാഗുകള്‍ " #: ../bonobo/bonobo-ui-init-gtk.c:137 msgid "X display to use" msgstr "ഉപയോഗിയ്ക്കുന്നതിനുള്ള X പ്രദര്‍ശനം" #: ../bonobo/bonobo-ui-init-gtk.c:137 msgid "DISPLAY" msgstr "DISPLAY" #: ../bonobo/bonobo-ui-init-gtk.c:141 msgid "X screen to use" msgstr "ഉപയോഗിക്കുന്നതിനുള്ള X സ്ക്രീന്‍" #: ../bonobo/bonobo-ui-init-gtk.c:141 msgid "SCREEN" msgstr "SCREEN" #: ../bonobo/bonobo-ui-init-gtk.c:145 msgid "Make X calls synchronous" msgstr "X കോള്‍സ് ഒരേ സമയത്തു് ആക്കുക" #: ../bonobo/bonobo-ui-init-gtk.c:151 msgid "Don't use X shared memory extension" msgstr "X ഷെയര്‍ഡ് മെമ്മറി എക്സറ്റന്‍ഷന്‍ ഉപയോഗിക്കുവാന്‍ പാടില്ല" #: ../bonobo/bonobo-ui-init-gtk.c:155 msgid "Program name as used by the window manager" msgstr "ജാലകപാലകന്‍ ഉപയോഗിയ്ക്കേണ്ട പ്രോഗ്രാം പേരു്" #: ../bonobo/bonobo-ui-init-gtk.c:155 msgid "NAME" msgstr "NAME" #: ../bonobo/bonobo-ui-init-gtk.c:158 msgid "Program class as used by the window manager" msgstr "ജാലകപാലകന്‍ ഉപയോഗിക്കുന്ന പ്രോഗ്രാം ക്ലാസ്സ്" #: ../bonobo/bonobo-ui-init-gtk.c:158 msgid "CLASS" msgstr "CLASS" #: ../bonobo/bonobo-ui-init-gtk.c:161 msgid "Gtk+ debugging flags to set" msgstr "Gtk+ ഡീബഗ്ഗിങ് ഫ്ലാഗുകള്‍ " #: ../bonobo/bonobo-ui-init-gtk.c:164 msgid "Gtk+ debugging flags to unset" msgstr "ഉപേക്ഷിയ്ക്കേണ്ട Gtk+ ഡീബഗ്ഗിങ് ഫ്ലാഗുകള്‍ " #: ../bonobo/bonobo-ui-init-gtk.c:167 msgid "Make all warnings fatal" msgstr "എല്ലാ മുന്നറിയിപ്പുകളും പ്രാധാന്യമുളളതാക്കുക" #: ../bonobo/bonobo-ui-init-gtk.c:170 msgid "Load an additional Gtk module" msgstr "അധികമായി ഒരു Gtk ഘടകം ലോഡ് ചെയ്യുക" #: ../bonobo/bonobo-ui-init-gtk.c:170 msgid "MODULE" msgstr "MODULE" #: ../bonobo/bonobo-ui-init-gtk.c:186 msgid "GTK+" msgstr "GTK+" #: ../bonobo/bonobo-ui-main.c:278 msgid "Bonobo GUI support" msgstr "Bonobo GUI പിന്തുണ" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "B_oth" msgstr "_രണ്ടും" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "T_ext" msgstr "_പദാവലി" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Hide t_ips" msgstr "_സൂചനകള്‍ ഒളിപ്പിക്കുക" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Show t_ips" msgstr "സൂചനകള്‍ _കാണിക്കുക" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "_Hide toolbar" msgstr "ഉപകരണപ്പട്ട _ഒളിപ്പിക്കുക " #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "Customi_ze" msgstr "ക്ര_മീകരിക്കുക " #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Customize the toolbar" msgstr "ഉപകരണപ്പട്ട ഇഷ്ടമുളള പോലെ ക്രമീകരിയ്ക്കുക" #: ../bonobo/bonobo-ui-toolbar.c:1115 msgid "is floating" msgstr "പൊന്തിക്കിടക്കുന്നു" #: ../bonobo/bonobo-ui-toolbar.c:1116 msgid "whether the toolbar is floating" msgstr "ഉപകരണപ്പട്ട പൊന്തിക്കിടക്കണോ എന്നു്" #: ../bonobo/bonobo-ui-toolbar.c:1162 msgid "Style of bevel around the toolbar" msgstr "ഉപകരണപ്പട്ടയുടെ അരികിന്റെ ചെരിവു്" #: ../bonobo/bonobo-ui-util.c:601 msgid "Could not display help for this application" msgstr "ഈ പ്രയോഗത്തിനുള്ള സഹായം കാണിയ്ക്കാന്‍ കഴിഞ്ഞില്ല." #: ../bonobo/bonobo-ui-util.c:643 msgid "_Contents" msgstr "_ഉള്ളടക്കം" #: ../bonobo/bonobo-ui-util.c:644 msgid "View help for this application" msgstr "ഈ പ്രയോഗത്തിനുളള സഹായം കാണുക" #: ../bonobo/bonobo-window.c:345 msgid "Name of the window - used for configuration serialization." msgstr "കോണ്‍ഫിഗറേഷന്‍ സീരിയലൈസേഷനുളള ജാലകത്തിന്റെ പേരു്" #: ../bonobo/bonobo-zoomable.c:326 msgid "Zoom level" msgstr "സ്ക്രീന്‍ വലുപ്പത്തിന്റെ അളവ്" #: ../bonobo/bonobo-zoomable.c:327 msgid "The degree of enlargment" msgstr "വലുതാക്കുന്നതിന്റെ തോതു്" #: ../bonobo/bonobo-zoomable.c:335 msgid "Minimum Zoom level" msgstr "വലുപ്പത്തിന്റെ ഏറ്റവും കുറഞ്ഞ അളവ്" #: ../bonobo/bonobo-zoomable.c:336 msgid "The minimum degree of enlargment" msgstr "വലുപ്പത്തിന്റെ ഏറ്റവും കുറഞ്ഞ അളവ്" #: ../bonobo/bonobo-zoomable.c:344 msgid "Maximum Zoom level" msgstr "വലുതാക്കുന്നതിന്റെ ഏറ്റവും കൂടിയ അളവ്" #: ../bonobo/bonobo-zoomable.c:345 msgid "The maximum degree of enlargment" msgstr "വലുതാക്കുന്നതിന്റെ ഏറ്റവുംകൂടിയ തോതു്" #: ../bonobo/bonobo-zoomable.c:353 msgid "Has a minimum Zoom level" msgstr "വലുപ്പം മാറ്റൂന്നതിനു് സാധ്യമായ ഏറ്റവും ചെറിയ തോതുണ്ടു്" #: ../bonobo/bonobo-zoomable.c:354 msgid "Whether we have a valid minimum zoom level" msgstr "ചെറുതാക്കുന്നതിനു പരിധി ഉണ്ടോയെന്നു്" #: ../bonobo/bonobo-zoomable.c:361 msgid "Has a maximum Zoom level" msgstr "വലുതാക്കാവുന്നതിനു പരിധി ഉണ്ടു്" #: ../bonobo/bonobo-zoomable.c:362 msgid "Whether we have a valid maximum zoom level" msgstr "വലുതാക്കാവുന്നതിനു സാധുവായ ഒരുപരിധി ഉണ്ടോ എന്നു്" #: ../bonobo/bonobo-zoomable.c:369 msgid "Is continuous" msgstr "ഒഴുക്കന്‍" #: ../bonobo/bonobo-zoomable.c:370 msgid "Whether we zoom continuously (as opposed to jumps)" msgstr "വലുതാക്കുന്നതു് പടിപടിയായല്ലാതെ ഒഴുക്കന്‍ രീതിയിലാണോ എന്നു്" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:1 msgid "About this application" msgstr "ഈ പ്രയോഗത്തെക്കുറിച്ചു്" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:2 msgid "Select" msgstr "തെരഞ്ഞെടുക്കുക" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:3 msgid "_About..." msgstr "_ഇതിനെപ്പറ്റി..." #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:4 msgid "_Edit" msgstr "_ചിട്ട" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:5 #: ../tools/browser/bonobo-browser.xml.h:4 msgid "_File" msgstr "_ഫയല്‍" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:6 msgid "_Select" msgstr "_തെരഞ്ഞെടുക്കുക" #: ../samples/bonoboui/hello.c:63 msgid "This does nothing; it is only a demonstration." msgstr "ഇതൊന്നും ചെയ്യുന്നില്ല. വെറും പ്രദര്‍ശനം മാത്രം" #: ../samples/bonoboui/hello.c:145 msgid "BonoboUI-Hello." msgstr "BonoboUI-Hello." #: ../samples/bonoboui/hello.c:217 msgid "Gnome Hello" msgstr "Gnome നമസ്കാരം" #. Create Label and put it in the Button: #: ../samples/bonoboui/hello.c:272 msgid "Hello, World!" msgstr "ലോകമേ, നമസ്കാരം!" #: ../samples/bonoboui/hello.c:312 msgid "Cannot init libbonoboui code" msgstr "libbonoboui കോഡ് init ചെയ്യുവാന്‍ സാധ്യമല്ല" #: ../samples/controls/bonobo-sample-controls.c:131 msgid "Could not initialize Bonobo UI" msgstr "Bonobo UI ആരംഭിക്കുവാന്‍ സാധിച്ചില്ല" #: ../tools/browser/bonobo-browser.desktop.in.h:1 msgid "Bonobo Component Browser" msgstr "Bonobo ഘടകത്തിന്റെ ബ്രൌസര്‍" #: ../tools/browser/bonobo-browser.desktop.in.h:2 msgid "Shows available Bonobo components" msgstr "ലഭ്യമായ Bonobo ഘടകങ്ങള്‍ കാണിയ്ക്കുന്നു" #: ../tools/browser/bonobo-browser.xml.h:1 msgid "About this program..." msgstr "ഈ പ്രയോഗത്തെപ്പറ്റി" #: ../tools/browser/bonobo-browser.xml.h:2 msgid "Close the current window" msgstr "നിലവിലുളള ജാലകം അടയ്ക്കുക" #: ../tools/browser/bonobo-browser.xml.h:3 msgid "Open a new window" msgstr "ഒരു പുതിയ ജാലകം തുറക്കുക" #: ../tools/browser/bonobo-browser.xml.h:5 msgid "_Help" msgstr "_സഹായം" #. Build the general tab #: ../tools/browser/component-details.c:109 msgid "General" msgstr "സാധാരണ" #: ../tools/browser/component-details.c:116 #: ../tools/browser/component-list.c:398 msgid "IID" msgstr "IID" #: ../tools/browser/component-details.c:117 msgid "Location" msgstr "സ്ഥാനം" #. Build the details tab #: ../tools/browser/component-details.c:167 msgid "Details" msgstr "വിശദവിവരങ്ങള്‍" #: ../tools/browser/component-details.c:168 msgid "Detailed Information" msgstr "വിശദവിവരങ്ങള്‍" #: ../tools/browser/component-list.c:367 #: ../tools/browser/window.c:283 msgid "Active" msgstr "പ്രവര്‍ത്തനസജ്ജം" #: ../tools/browser/component-list.c:388 msgid "Type" msgstr "തരം" #: ../tools/browser/window.c:162 msgid "Component Details" msgstr "ഘടകത്തിന്റെ വിശദാംശങ്ങള്‍" #: ../tools/browser/window.c:208 msgid "Bonobo Browser" msgstr "ബൊണോബോ ബ്രൌസര്‍" #: ../tools/browser/window.c:210 msgid "Copyright 2001, The GNOME Foundation" msgstr "പകര്‍പ്പവകാശം 2001, ഗ്നോം ഫൌണ്ടേഷന്‍" #: ../tools/browser/window.c:211 msgid "Bonobo component browser" msgstr "ബൊണോബോ ഘടകബ്രൌസര്‍" #: ../tools/browser/window.c:214 msgid "translator-credits" msgstr "" "അനി പീറ്റര്‍ \n" "സന്തോഷ് തോട്ടിങ്ങല്‍ " #. create the window #: ../tools/browser/window.c:240 msgid "Component Browser" msgstr "ഘടകബ്രൌസര്‍" #. Fill out the tool bar #: ../tools/browser/window.c:280 msgid "All" msgstr "എല്ലാം" #: ../tools/browser/window.c:286 msgid "Inactive" msgstr "പ്രവര്‍ത്തനത്തിലല്ല" libbonoboui-2.24.5/po/br.po0000644000076400007640000002613011261745451012431 00000000000000# Breton translation for libbonoboui # Copyright (c) 2009 Rosetta Contributors and Canonical Ltd 2009 # This file is distributed under the same license as the libbonoboui package. # Denis ARNAUD , 2009. # msgid "" msgstr "" "Project-Id-Version: libbonoboui\n" "Report-Msgid-Bugs-To: FULL NAME \n" "POT-Creation-Date: 2009-03-23 16:23+0000\n" "PO-Revision-Date: 2009-08-03 09:05+0000\n" "Last-Translator: Denis \n" "Language-Team: Breton \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../bonobo/bonobo-canvas-item.c:680 msgid "corba factory" msgstr "" #: ../bonobo/bonobo-canvas-item.c:681 msgid "The factory pointer" msgstr "" #: ../bonobo/bonobo-canvas-item.c:690 msgid "corba UI container" msgstr "" #: ../bonobo/bonobo-canvas-item.c:691 msgid "The User interface container" msgstr "" #: ../bonobo/bonobo-dock-item-grip.c:254 msgid "Dock the toolbar" msgstr "" #: ../bonobo/bonobo-dock-item-grip.c:255 msgid "Undock the toolbar" msgstr "" #: ../bonobo/bonobo-dock-item.c:225 ../bonobo/bonobo-dock-item.c:226 #: ../bonobo/bonobo-ui-toolbar.c:1163 msgid "Shadow type" msgstr "" #: ../bonobo/bonobo-dock-item.c:236 ../bonobo/bonobo-dock-item.c:237 #: ../bonobo/bonobo-ui-toolbar.c:1107 ../bonobo/bonobo-ui-toolbar.c:1108 msgid "Orientation" msgstr "Reteradur" #: ../bonobo/bonobo-dock-item.c:247 ../bonobo/bonobo-dock-item.c:248 #: ../bonobo/bonobo-ui-toolbar.c:1126 ../bonobo/bonobo-ui-toolbar.c:1127 msgid "Preferred width" msgstr "Led kavet gwellañ" #: ../bonobo/bonobo-dock-item.c:256 ../bonobo/bonobo-dock-item.c:257 #: ../bonobo/bonobo-ui-toolbar.c:1135 ../bonobo/bonobo-ui-toolbar.c:1136 msgid "Preferred height" msgstr "Sav kavet gwell" #: ../bonobo/bonobo-file-selector-util.c:350 msgid "Select a file to open" msgstr "" #: ../bonobo/bonobo-file-selector-util.c:378 msgid "Select files to open" msgstr "" #: ../bonobo/bonobo-file-selector-util.c:407 msgid "Select a filename to save" msgstr "" #: ../bonobo/bonobo-plug.c:425 msgid "Event Forwarding" msgstr "" #: ../bonobo/bonobo-plug.c:426 msgid "Whether X events should be forwarded" msgstr "" #: ../bonobo/bonobo-selector-widget.c:300 ../bonobo/bonobo-window.c:347 #: ../tools/browser/component-details.c:108 #: ../tools/browser/component-list.c:369 msgid "Name" msgstr "Anv" #: ../bonobo/bonobo-selector-widget.c:322 #: ../tools/browser/component-details.c:109 msgid "Description" msgstr "Deskrivadur" #: ../bonobo/bonobo-selector.c:343 msgid "Interfaces required" msgstr "" #: ../bonobo/bonobo-selector.c:344 msgid "" "A NULL-terminated array of interfaces which a server must support in order " "to be listed in the selector. Defaults to \"IDL:Bonobo/Embeddable:1.0\" if " "no interfaces are listed" msgstr "" #: ../bonobo/bonobo-selector.c:346 msgid "Interface required entry" msgstr "" #: ../bonobo/bonobo-selector.c:347 msgid "One of the interfaces that's required" msgstr "" #: ../bonobo/bonobo-ui-config-widget.c:267 msgid "Visible" msgstr "Hewel" #: ../bonobo/bonobo-ui-config-widget.c:274 msgid "_Show" msgstr "_Diskouez" #: ../bonobo/bonobo-ui-config-widget.c:281 msgid "_Hide" msgstr "_Kuzhat" #: ../bonobo/bonobo-ui-config-widget.c:287 msgid "_View tooltips" msgstr "" #: ../bonobo/bonobo-ui-config-widget.c:292 msgid "Toolbars" msgstr "Barrenn ostilhoù" #: ../bonobo/bonobo-ui-config-widget.c:302 msgid "toolbars" msgstr "" #: ../bonobo/bonobo-ui-config-widget.c:313 #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "Look" msgstr "Sell" #: ../bonobo/bonobo-ui-config-widget.c:322 #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "_Icon" msgstr "_Arlun" #: ../bonobo/bonobo-ui-config-widget.c:328 msgid "_Text and Icon" msgstr "_Testenn hag arlun" #: ../bonobo/bonobo-ui-config-widget.c:334 msgid "Text only" msgstr "Testenn hepken" #: ../bonobo/bonobo-ui-config-widget.c:340 msgid "_Priority text only" msgstr "" #: ../bonobo/bonobo-ui-engine.c:93 msgid "Debug" msgstr "Diveugañ" #: ../bonobo/bonobo-ui-engine.c:93 msgid "_Dump XML" msgstr "" #: ../bonobo/bonobo-ui-engine.c:94 msgid "Dump the entire UI's XML description to the console" msgstr "" #: ../bonobo/bonobo-ui-engine-config.c:524 msgid "Configure UI" msgstr "" #: ../bonobo/bonobo-ui-init-gtk.c:131 msgid "Gdk debugging flags to set" msgstr "" #: ../bonobo/bonobo-ui-init-gtk.c:131 ../bonobo/bonobo-ui-init-gtk.c:134 #: ../bonobo/bonobo-ui-init-gtk.c:162 ../bonobo/bonobo-ui-init-gtk.c:165 msgid "FLAGS" msgstr "BANNELOÙ" #: ../bonobo/bonobo-ui-init-gtk.c:134 msgid "Gdk debugging flags to unset" msgstr "" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "X display to use" msgstr "Diskouez X da implij" #: ../bonobo/bonobo-ui-init-gtk.c:138 msgid "DISPLAY" msgstr "" #: ../bonobo/bonobo-ui-init-gtk.c:142 msgid "X screen to use" msgstr "Skramm X da implij" #: ../bonobo/bonobo-ui-init-gtk.c:142 msgid "SCREEN" msgstr "SKRAMM" #: ../bonobo/bonobo-ui-init-gtk.c:146 msgid "Make X calls synchronous" msgstr "" #: ../bonobo/bonobo-ui-init-gtk.c:152 msgid "Don't use X shared memory extension" msgstr "" #: ../bonobo/bonobo-ui-init-gtk.c:156 msgid "Program name as used by the window manager" msgstr "" #: ../bonobo/bonobo-ui-init-gtk.c:156 msgid "NAME" msgstr "ANV" #: ../bonobo/bonobo-ui-init-gtk.c:159 msgid "Program class as used by the window manager" msgstr "" #: ../bonobo/bonobo-ui-init-gtk.c:159 msgid "CLASS" msgstr "" #: ../bonobo/bonobo-ui-init-gtk.c:162 msgid "Gtk+ debugging flags to set" msgstr "" #: ../bonobo/bonobo-ui-init-gtk.c:165 msgid "Gtk+ debugging flags to unset" msgstr "" #: ../bonobo/bonobo-ui-init-gtk.c:168 msgid "Make all warnings fatal" msgstr "Lakaat an holl c'houzavioù da vezañ lazhus" #: ../bonobo/bonobo-ui-init-gtk.c:171 msgid "Load an additional Gtk module" msgstr "" #: ../bonobo/bonobo-ui-init-gtk.c:171 msgid "MODULE" msgstr "MOLLAD" #: ../bonobo/bonobo-ui-init-gtk.c:187 msgid "GTK+" msgstr "GTK+" #: ../bonobo/bonobo-ui-main.c:281 msgid "Bonobo GUI support" msgstr "Skor GUI Bonobo" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "B_oth" msgstr "" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "T_ext" msgstr "T_estenn" #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Hide t_ips" msgstr "" #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Show t_ips" msgstr "" #: ../bonobo/bonobo-ui-sync-toolbar.c:570 msgid "_Hide toolbar" msgstr "" #: ../bonobo/bonobo-ui-sync-toolbar.c:570 msgid "Customi_ze" msgstr "" #: ../bonobo/bonobo-ui-sync-toolbar.c:571 msgid "Customize the toolbar" msgstr "" #: ../bonobo/bonobo-ui-toolbar.c:1117 msgid "is floating" msgstr "" #: ../bonobo/bonobo-ui-toolbar.c:1118 msgid "whether the toolbar is floating" msgstr "" #: ../bonobo/bonobo-ui-toolbar.c:1164 msgid "Style of bevel around the toolbar" msgstr "" #: ../bonobo/bonobo-ui-util.c:602 msgid "Could not display help for this application" msgstr "" #: ../bonobo/bonobo-ui-util.c:644 msgid "_Contents" msgstr "_Endalc'hadoù" #: ../bonobo/bonobo-ui-util.c:645 msgid "View help for this application" msgstr "Gwelout skoazell an arload-mañ" #: ../bonobo/bonobo-window.c:348 msgid "Name of the window - used for configuration serialization." msgstr "" #: ../bonobo/bonobo-zoomable.c:326 msgid "Zoom level" msgstr "Live ar zoum" #: ../bonobo/bonobo-zoomable.c:327 msgid "The degree of enlargment" msgstr "" #: ../bonobo/bonobo-zoomable.c:335 msgid "Minimum Zoom level" msgstr "" #: ../bonobo/bonobo-zoomable.c:336 msgid "The minimum degree of enlargment" msgstr "" #: ../bonobo/bonobo-zoomable.c:344 msgid "Maximum Zoom level" msgstr "" #: ../bonobo/bonobo-zoomable.c:345 msgid "The maximum degree of enlargment" msgstr "" #: ../bonobo/bonobo-zoomable.c:353 msgid "Has a minimum Zoom level" msgstr "" #: ../bonobo/bonobo-zoomable.c:354 msgid "Whether we have a valid minimum zoom level" msgstr "" #: ../bonobo/bonobo-zoomable.c:361 msgid "Has a maximum Zoom level" msgstr "" #: ../bonobo/bonobo-zoomable.c:362 msgid "Whether we have a valid maximum zoom level" msgstr "" #: ../bonobo/bonobo-zoomable.c:369 msgid "Is continuous" msgstr "" #: ../bonobo/bonobo-zoomable.c:370 msgid "Whether we zoom continuously (as opposed to jumps)" msgstr "" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:1 msgid "About this application" msgstr "Diwar-benn an arload-mañ" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:2 msgid "Select" msgstr "Diuzañ" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:3 msgid "_About..." msgstr "_A-zivout..." #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:4 msgid "_Edit" msgstr "K_emmañ" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:5 #: ../tools/browser/bonobo-browser.xml.h:4 msgid "_File" msgstr "_Restr" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:6 msgid "_Select" msgstr "_Diuzañ" #: ../samples/bonoboui/hello.c:65 msgid "This does nothing; it is only a demonstration." msgstr "" #: ../samples/bonoboui/hello.c:147 msgid "BonoboUI-Hello." msgstr "BonoboUI-Hello." #: ../samples/bonoboui/hello.c:219 msgid "Gnome Hello" msgstr "Gnome Hello" #. Create Label and put it in the Button: #: ../samples/bonoboui/hello.c:274 msgid "Hello, World!" msgstr "Hello, World!" #: ../samples/bonoboui/hello.c:314 msgid "Cannot init libbonoboui code" msgstr "" #: ../samples/controls/bonobo-sample-controls.c:133 msgid "Could not initialize Bonobo UI" msgstr "" #: ../tools/browser/bonobo-browser.desktop.in.h:1 msgid "Bonobo Component Browser" msgstr "" #: ../tools/browser/bonobo-browser.desktop.in.h:2 msgid "Shows available Bonobo components" msgstr "" #: ../tools/browser/bonobo-browser.xml.h:1 msgid "About this program..." msgstr "Diwar-benn ar goulev-mañ..." #: ../tools/browser/bonobo-browser.xml.h:2 msgid "Close the current window" msgstr "Serriñ ar prenestr bremanel..." #: ../tools/browser/bonobo-browser.xml.h:3 msgid "Open a new window" msgstr "Digeriñ ur prenestr nevez" #: ../tools/browser/bonobo-browser.xml.h:5 msgid "_Help" msgstr "_Skoazell" #. Build the general tab #: ../tools/browser/component-details.c:103 msgid "General" msgstr "Hollek" #: ../tools/browser/component-details.c:110 #: ../tools/browser/component-list.c:389 msgid "IID" msgstr "" #: ../tools/browser/component-details.c:111 msgid "Location" msgstr "Lec'hiadur" #. Build the details tab #: ../tools/browser/component-details.c:161 msgid "Details" msgstr "Munudoù" #: ../tools/browser/component-details.c:162 msgid "Detailed Information" msgstr "" #: ../tools/browser/component-list.c:358 ../tools/browser/window.c:283 msgid "Active" msgstr "Oberiant" #: ../tools/browser/component-list.c:379 msgid "Type" msgstr "Rizh" #: ../tools/browser/window.c:162 msgid "Component Details" msgstr "" #: ../tools/browser/window.c:208 msgid "Bonobo Browser" msgstr "" #: ../tools/browser/window.c:210 msgid "Copyright 2001, The GNOME Foundation" msgstr "Copyright 2001, The GNOME Foundation" #: ../tools/browser/window.c:211 msgid "Bonobo component browser" msgstr "" #: ../tools/browser/window.c:214 msgid "translator-credits" msgstr "" "Launchpad Contributions:\n" " Denis https://launchpad.net/~bibar" #. create the window #: ../tools/browser/window.c:240 msgid "Component Browser" msgstr "" #. Fill out the tool bar #: ../tools/browser/window.c:280 msgid "All" msgstr "An holl" #: ../tools/browser/window.c:286 msgid "Inactive" msgstr "Dizoberiant" libbonoboui-2.24.5/po/rw.po0000644000076400007640000004166211173072741012462 00000000000000# translation of libbonoboui to Kinyarwanda. # Copyright (C) 2005 Free Software Foundation, Inc. # This file is distributed under the same license as the libbonoboui package. # Steve Murphy , 2005 # Steve performed initial rough translation from compendium built from translations provided by the following translators: # Philibert Ndandali , 2005. # Viateur MUGENZI , 2005. # Noëlla Mupole , 2005. # Carole Karema , 2005. # JEAN BAPTISTE NGENDAHAYO , 2005. # Augustin KIBERWA , 2005. # Donatien NSENGIYUMVA , 2005.. # msgid "" msgstr "" "Project-Id-Version: libbonoboui 2.12\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2005-09-10 18:44+0200\n" "PO-Revision-Date: 2005-03-28 19:35-0700\n" "Last-Translator: Steve Murphy \n" "Language-Team: Kinyarwanda \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../bonobo/bonobo-canvas-item.c:683 msgid "corba factory" msgstr "" #: ../bonobo/bonobo-canvas-item.c:684 #, fuzzy msgid "The factory pointer" msgstr "Mweretsi" #: ../bonobo/bonobo-canvas-item.c:693 msgid "corba UI container" msgstr "" #: ../bonobo/bonobo-canvas-item.c:694 msgid "The User interface container" msgstr "" #: ../bonobo/bonobo-dock-item-grip.c:257 #, fuzzy msgid "Dock the toolbar" msgstr "Umwanyabikoresho" #: ../bonobo/bonobo-dock-item-grip.c:258 #, fuzzy msgid "Undock the toolbar" msgstr "Umwanyabikoresho" #: ../bonobo/bonobo-dock-item.c:235 ../bonobo/bonobo-dock-item.c:236 #: ../bonobo/bonobo-ui-toolbar.c:1175 #, fuzzy msgid "Shadow type" msgstr "Ubwoko" #: ../bonobo/bonobo-dock-item.c:246 ../bonobo/bonobo-dock-item.c:247 #: ../bonobo/bonobo-ui-toolbar.c:1119 ../bonobo/bonobo-ui-toolbar.c:1120 msgid "Orientation" msgstr "Icyerekezo" #: ../bonobo/bonobo-dock-item.c:257 ../bonobo/bonobo-dock-item.c:258 #: ../bonobo/bonobo-ui-toolbar.c:1138 ../bonobo/bonobo-ui-toolbar.c:1139 #, fuzzy msgid "Preferred width" msgstr "Ubugari" #: ../bonobo/bonobo-dock-item.c:266 ../bonobo/bonobo-dock-item.c:267 #: ../bonobo/bonobo-ui-toolbar.c:1147 ../bonobo/bonobo-ui-toolbar.c:1148 #, fuzzy msgid "Preferred height" msgstr "Ubuhagarike" #: ../bonobo/bonobo-file-selector-util.c:357 #, fuzzy msgid "Select a file to open" msgstr "a IDOSIYE Kuri Gufungura" #: ../bonobo/bonobo-file-selector-util.c:385 #, fuzzy msgid "Select files to open" msgstr "Idosiye Kuri Gufungura" #: ../bonobo/bonobo-file-selector-util.c:414 #, fuzzy msgid "Select a filename to save" msgstr "a Izina ry'idosiye: Kuri Kubika" #: ../bonobo/bonobo-plug.c:425 msgid "Event Forwarding" msgstr "" #: ../bonobo/bonobo-plug.c:426 #, fuzzy msgid "Whether X events should be forwarded" msgstr "Ibyabaye" #: ../bonobo/bonobo-selector-widget.c:302 ../bonobo/bonobo-window.c:346 #: ../tools/browser/component-details.c:114 #: ../tools/browser/component-list.c:381 msgid "Name" msgstr "Izina" # #-#-#-#-# basctl.pot (Gnome 2.12) #-#-#-#-# # basctl/source\basicide\moptions.src:RID_MACROOPTIONS.RID_FT_DESCR.text # #-#-#-#-# basctl.pot (Gnome 2.12) #-#-#-#-# # basctl/source\basicide\moptions.src:RID_MACROOPTIONS.text #: ../bonobo/bonobo-selector-widget.c:324 #: ../tools/browser/component-details.c:115 msgid "Description" msgstr "Isobanuramiterere" #: ../bonobo/bonobo-selector.c:345 #, fuzzy msgid "Interfaces required" msgstr "Bya ngombwa" #: ../bonobo/bonobo-selector.c:346 #, fuzzy msgid "" "A NULL-terminated array of interfaces which a server must support in order " "to be listed in the selector. Defaults to \"IDL:Bonobo/Embeddable:1.0\" if " "no interfaces are listed" msgstr "" "A Imbonerahamwe Bya a Seriveri Gushigikira in Itondekanya Kuri in Kuri 1. 0 " "NIBA Oya" #: ../bonobo/bonobo-selector.c:348 #, fuzzy msgid "Interface required entry" msgstr "Bya ngombwa Icyinjijwe" #: ../bonobo/bonobo-selector.c:349 #, fuzzy msgid "One of the interfaces that's required" msgstr "Bya Bya ngombwa" # 6488 #: ../bonobo/bonobo-ui-config-widget.c:268 msgid "Visible" msgstr "kigaragara" # basctl/source\basicide\objdlg.src:RID_BASICIDE_OBJCAT.RID_TB_TOOLBOX.TBITEM_SHOW.text #: ../bonobo/bonobo-ui-config-widget.c:275 #, fuzzy msgid "_Show" msgstr "Garagaza" # basctl/source\basicide\basidesh.src:RID_POPUP_TABBAR.SID_BASICIDE_HIDECURPAGE.text #: ../bonobo/bonobo-ui-config-widget.c:282 #, fuzzy msgid "_Hide" msgstr "Gushisha" #: ../bonobo/bonobo-ui-config-widget.c:288 msgid "_View tooltips" msgstr "" # sfx2/source\dialog\cfg.src:DLG_CONFIG.1.TP_CONFIG_OBJECTBAR.text #: ../bonobo/bonobo-ui-config-widget.c:293 msgid "Toolbars" msgstr "Imyanyabikoresho" # #-#-#-#-# basctl.pot (Gnome 2.12) #-#-#-#-# # basctl/source\basicide\basidesh.src:RID_BASICMENU.MN_VIEW.S~ymbolleisten.text # #-#-#-#-# basctl.pot (Gnome 2.12) #-#-#-#-# # basctl/source\basicide\basidesh.src:RID_BASICPLUGINMENU.MN_PLVIEW.S~ymbolleisten.text #: ../bonobo/bonobo-ui-config-widget.c:303 #, fuzzy msgid "toolbars" msgstr "Imyanya y'ibikoresho" #: ../bonobo/bonobo-ui-config-widget.c:314 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "Look" msgstr "" # sfx2/source\toolbox\tbxopdlg.src:TP_CONFIG_OBJECTBAR.STR_SYMBOL.text #: ../bonobo/bonobo-ui-config-widget.c:323 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 #, fuzzy msgid "_Icon" msgstr "Agashushondanga" #: ../bonobo/bonobo-ui-config-widget.c:329 #, fuzzy msgid "_Text and Icon" msgstr "Na" #: ../bonobo/bonobo-ui-config-widget.c:335 msgid "Text only" msgstr "Umwandiko gusa" #: ../bonobo/bonobo-ui-config-widget.c:341 #, fuzzy msgid "_Priority text only" msgstr "Umwandiko" # Debug menu items #: ../bonobo/bonobo-ui-engine.c:90 msgid "Debug" msgstr "Kosora amakosa" #: ../bonobo/bonobo-ui-engine.c:90 msgid "_Dump XML" msgstr "" #: ../bonobo/bonobo-ui-engine.c:91 #, fuzzy msgid "Dump the entire UI's XML description to the console" msgstr "Isobanuramiterere Kuri" #: ../bonobo/bonobo-ui-engine-config.c:522 msgid "Configure UI" msgstr "" #: ../bonobo/bonobo-ui-init-gtk.c:113 #, fuzzy msgid "Gdk debugging flags to set" msgstr "Amabendera Kuri Gushyiraho" # svx/source\gallery2\galtheme.src:RID_GALLERYSTR_THEME_FLAGS.text #: ../bonobo/bonobo-ui-init-gtk.c:113 ../bonobo/bonobo-ui-init-gtk.c:116 #: ../bonobo/bonobo-ui-init-gtk.c:144 ../bonobo/bonobo-ui-init-gtk.c:147 #, fuzzy msgid "FLAGS" msgstr "Amabendera" #: ../bonobo/bonobo-ui-init-gtk.c:116 #, fuzzy msgid "Gdk debugging flags to unset" msgstr "Amabendera Kuri" #: ../bonobo/bonobo-ui-init-gtk.c:120 #, fuzzy msgid "X display to use" msgstr "Kugaragaza Kuri Gukoresha" # offmgr/source\offapp\dialog\optgdlg.src:OFA_TP_VIEW.GB_APPEARANCE.text #: ../bonobo/bonobo-ui-init-gtk.c:120 #, fuzzy msgid "DISPLAY" msgstr "Kugaragaza" #: ../bonobo/bonobo-ui-init-gtk.c:124 #, fuzzy msgid "X screen to use" msgstr "Mugaragaza Kuri Gukoresha" # offmgr/source\offapp\dialog\fontsubs.src:RID_SVX_FONT_SUBSTITUTION.STR_HEADER2.text #: ../bonobo/bonobo-ui-init-gtk.c:124 #, fuzzy msgid "SCREEN" msgstr "Mugaragaza" #: ../bonobo/bonobo-ui-init-gtk.c:128 #, fuzzy msgid "Make X calls synchronous" msgstr "Amahamagara:" #: ../bonobo/bonobo-ui-init-gtk.c:134 #, fuzzy msgid "Don't use X shared memory extension" msgstr "Gukoresha Ububiko Umugereka" #: ../bonobo/bonobo-ui-init-gtk.c:138 #, fuzzy msgid "Program name as used by the window manager" msgstr "Izina: Nka ku Idirishya Muyobozi" #: ../bonobo/bonobo-ui-init-gtk.c:138 #, fuzzy msgid "NAME" msgstr "Izina" #: ../bonobo/bonobo-ui-init-gtk.c:141 #, fuzzy msgid "Program class as used by the window manager" msgstr "ishuri Nka ku Idirishya Muyobozi" # so3/src\svuidlg.src:MD_INSERT_OBJECT_APPLET.FT_CLASSFILE.text #: ../bonobo/bonobo-ui-init-gtk.c:141 #, fuzzy msgid "CLASS" msgstr "Igice" #: ../bonobo/bonobo-ui-init-gtk.c:144 #, fuzzy msgid "Gtk+ debugging flags to set" msgstr "Amabendera Kuri Gushyiraho" #: ../bonobo/bonobo-ui-init-gtk.c:147 #, fuzzy msgid "Gtk+ debugging flags to unset" msgstr "Amabendera Kuri" #: ../bonobo/bonobo-ui-init-gtk.c:150 #, fuzzy msgid "Make all warnings fatal" msgstr "Byose Iburira" #: ../bonobo/bonobo-ui-init-gtk.c:153 #, fuzzy msgid "Load an additional Gtk module" msgstr "Modire" # basctl/source\basicide\basidesh.src:RID_STR_STDMODULENAME.text #: ../bonobo/bonobo-ui-init-gtk.c:153 #, fuzzy msgid "MODULE" msgstr "Modire" #: ../bonobo/bonobo-ui-init-gtk.c:162 msgid "GTK+" msgstr "" #: ../bonobo/bonobo-ui-main.c:278 #, fuzzy msgid "Bonobo GUI support" msgstr "Gushigikira" # sc/source\ui\src\autofmt.src:RID_SCDLG_AUTOFORMAT.STR_NORTH.text #: ../bonobo/bonobo-ui-sync-toolbar.c:566 #, fuzzy msgid "B_oth" msgstr "Byombi" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 #, fuzzy msgid "T_ext" msgstr "Umwandiko" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 #, fuzzy msgid "Hide t_ips" msgstr "Inyobora" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 #, fuzzy msgid "Show t_ips" msgstr "Inyobora" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 #, fuzzy msgid "_Hide toolbar" msgstr "Hisha UmwanyaBikoresho" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 #, fuzzy msgid "Customi_ze" msgstr "Kunoza" #: ../bonobo/bonobo-ui-sync-toolbar.c:569 #, fuzzy msgid "Customize the toolbar" msgstr "Umwanyabikoresho" #: ../bonobo/bonobo-ui-toolbar.c:1129 #, fuzzy msgid "is floating" msgstr "ni Bihindagurika" #: ../bonobo/bonobo-ui-toolbar.c:1130 #, fuzzy msgid "whether the toolbar is floating" msgstr "Umwanyabikoresho ni Bihindagurika" #: ../bonobo/bonobo-ui-toolbar.c:1176 #, fuzzy msgid "Style of bevel around the toolbar" msgstr "Bya Umwanyabikoresho" # #-#-#-#-# sc.pot (Gnome 2.12) #-#-#-#-# # sc/source\ui\dbgui\validate.src:TP_VALIDATION_INPUTHELP.FL_CONTENT.text # #-#-#-#-# sc.pot (Gnome 2.12) #-#-#-#-# # sc/source\ui\dbgui\validate.src:TP_VALIDATION_ERROR.FL_CONTENT.text # #-#-#-#-# sc.pot (Gnome 2.12) #-#-#-#-# # sc/source\ui\navipi\navipi.src:RID_SCDLG_NAVIGATOR.TBX_CMD.IID_ZOOMOUT.text # #-#-#-#-# sc.pot (Gnome 2.12) #-#-#-#-# # sc/source\ui\navipi\navipi.src:SCSTR_CONTENT_ROOT.text #: ../bonobo/bonobo-ui-util.c:630 #, fuzzy msgid "_Contents" msgstr "Ibigize" #: ../bonobo/bonobo-ui-util.c:631 #, fuzzy msgid "View help for this application" msgstr "Ifashayobora kugirango iyi Porogaramu" #: ../bonobo/bonobo-window.c:347 #, fuzzy msgid "Name of the window - used for configuration serialization." msgstr "Bya Idirishya kugirango Iboneza" #: ../bonobo/bonobo-zoomable.c:326 #, fuzzy msgid "Zoom level" msgstr "urwego" #: ../bonobo/bonobo-zoomable.c:327 #, fuzzy msgid "The degree of enlargment" msgstr "Dogere Bya" #: ../bonobo/bonobo-zoomable.c:335 #, fuzzy msgid "Minimum Zoom level" msgstr "urwego" #: ../bonobo/bonobo-zoomable.c:336 #, fuzzy msgid "The minimum degree of enlargment" msgstr "Gito Dogere Bya" #: ../bonobo/bonobo-zoomable.c:344 #, fuzzy msgid "Maximum Zoom level" msgstr "urwego" #: ../bonobo/bonobo-zoomable.c:345 #, fuzzy msgid "The maximum degree of enlargment" msgstr "Kinini Dogere Bya" #: ../bonobo/bonobo-zoomable.c:353 #, fuzzy msgid "Has a minimum Zoom level" msgstr "a Gito urwego" #: ../bonobo/bonobo-zoomable.c:354 #, fuzzy msgid "Whether we have a valid minimum zoom level" msgstr "Twebwe a Byemewe Gito Ihindurangano urwego" #: ../bonobo/bonobo-zoomable.c:361 #, fuzzy msgid "Has a maximum Zoom level" msgstr "a Kinini urwego" #: ../bonobo/bonobo-zoomable.c:362 #, fuzzy msgid "Whether we have a valid maximum zoom level" msgstr "Twebwe a Byemewe Kinini Ihindurangano urwego" #: ../bonobo/bonobo-zoomable.c:369 #, fuzzy msgid "Is continuous" msgstr "Gikomeza" #: ../bonobo/bonobo-zoomable.c:370 #, fuzzy msgid "Whether we zoom continuously (as opposed to jumps)" msgstr "Twebwe Ihindurangano Nka Kuri" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:1 #, fuzzy msgid "About this application" msgstr "iyi Porogaramu" # basctl/source\basicide\tbxctl.src:RID_TOOLBOX.SID_INSERT_SELECT.text #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:2 msgid "Select" msgstr "Guhitamo" # offmgr/source\offapp\intro\intro.hrc:TEXT_DEFAULTABOUT.text #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:3 #, fuzzy msgid "_About..." msgstr "Ibyerekeye" # #-#-#-#-# basctl.pot (Gnome 2.12) #-#-#-#-# # basctl/source\basicide\basidesh.src:RID_BASICMENU.MN_EDIT.text # #-#-#-#-# basctl.pot (Gnome 2.12) #-#-#-#-# # basctl/source\basicide\basidesh.src:RID_BASICPLUGINMENU.MN_PLEDIT.text # #-#-#-#-# basctl.pot (Gnome 2.12) #-#-#-#-# # basctl/source\basicide\macrodlg.src:RID_MACROCHOOSER.RID_PB_EDIT.text # #-#-#-#-# basctl.pot (Gnome 2.12) #-#-#-#-# # basctl/source\basicide\moduldlg.src:RID_TP_MODULS.RID_PB_EDIT.text # #-#-#-#-# basctl.pot (Gnome 2.12) #-#-#-#-# # basctl/source\basicide\moduldlg.src:RID_TP_LIBS.RID_PB_EDIT.text #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:4 #, fuzzy msgid "_Edit" msgstr "Guhindura" # sc/source\ui\src\globstr.src:RID_GLOBSTR.STR_HFCMD_FILE.text #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:5 #: ../tools/browser/bonobo-browser.xml.h:4 #, fuzzy msgid "_File" msgstr "IDOSIYE" # basctl/source\basicide\tbxctl.src:RID_TOOLBOX.SID_INSERT_SELECT.text #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:6 #, fuzzy msgid "_Select" msgstr "Guhitamo" #: ../samples/bonoboui/hello.c:63 #, fuzzy msgid "This does nothing; it is only a demonstration." msgstr "ni a Iyerekana" #: ../samples/bonoboui/hello.c:145 msgid "BonoboUI-Hello." msgstr "" #: ../samples/bonoboui/hello.c:217 msgid "Gnome Hello" msgstr "" #. Create Label and put it in the Button: #: ../samples/bonoboui/hello.c:272 #, fuzzy msgid "Hello, World!" msgstr "Wiriwe Isi!" #: ../samples/bonoboui/hello.c:312 #, fuzzy msgid "Cannot init libbonoboui code" msgstr "ITEGEKONGENGA" #: ../samples/controls/bonobo-sample-controls.c:131 #, fuzzy msgid "Could not initialize Bonobo UI" msgstr "OYA gutangiza" #: ../tools/browser/bonobo-browser.desktop.in.h:1 msgid "Bonobo Component Browser" msgstr "" #: ../tools/browser/bonobo-browser.desktop.in.h:2 #, fuzzy msgid "Shows available Bonobo components" msgstr "Bihari" #: ../tools/browser/bonobo-browser.xml.h:1 #, fuzzy msgid "About this program..." msgstr "iyi Porogaramu" #: ../tools/browser/bonobo-browser.xml.h:2 #, fuzzy msgid "Close the current window" msgstr "Funga KIGEZWEHO Idirishya" #: ../tools/browser/bonobo-browser.xml.h:3 #, fuzzy msgid "Open a new window" msgstr "a Gishya Idirishya" #: ../tools/browser/bonobo-browser.xml.h:5 #, fuzzy msgid "_Help" msgstr "Ifashayobora" # #-#-#-#-# dbaccess.pot (Gnome 2.12) #-#-#-#-# # #-#-#-#-# dbaccess.pot (Gnome 2.12) #-#-#-#-# # #-#-#-#-# dbaccess.pot (Gnome 2.12) #-#-#-#-# # #-#-#-#-# dbaccess.pot (Gnome 2.12) #-#-#-#-# # #-#-#-#-# dbaccess.pot (Gnome 2.12) #-#-#-#-# # #-#-#-#-# dbaccess.pot (Gnome 2.12) #-#-#-#-# # #-#-#-#-# dbaccess.pot (Gnome 2.12) #-#-#-#-# # #-#-#-#-# dbaccess.pot (Gnome 2.12) #-#-#-#-# # #-#-#-#-# dbaccess.pot (Gnome 2.12) #-#-#-#-# #. Build the general tab #: ../tools/browser/component-details.c:109 msgid "General" msgstr "Rusange" #: ../tools/browser/component-details.c:116 #: ../tools/browser/component-list.c:401 msgid "IID" msgstr "" # #-#-#-#-# officecfg.pot (Gnome 2.12) #-#-#-#-# # officecfg/registry\schema\org\openoffice\Office\Writer.xcs:....Wizard.Agenda.Elements.Location.text # #-#-#-#-# officecfg.pot (Gnome 2.12) #-#-#-#-# # officecfg/registry\schema\org\openoffice\Office\Writer.xcs:....Wizard.Fax.Save.AutoPath.text # #-#-#-#-# officecfg.pot (Gnome 2.12) #-#-#-#-# # officecfg/registry\schema\org\openoffice\Office\Writer.xcs:....Wizard.Memo.Save.AutoDocName.text #: ../tools/browser/component-details.c:117 msgid "Location" msgstr "Ahantu" # #-#-#-#-# dbaccess.pot (Gnome 2.12) #-#-#-#-# # #-#-#-#-# dbaccess.pot (Gnome 2.12) #-#-#-#-# #. Build the details tab #: ../tools/browser/component-details.c:167 msgid "Details" msgstr "Birambuye" #: ../tools/browser/component-details.c:168 #, fuzzy msgid "Detailed Information" msgstr "Ibisobanuro birambuye" # #-#-#-#-# basctl.pot (Gnome 2.12) #-#-#-#-# # basctl/source\basicide\basidesh.src:RID_POPUP_BRKPROPS.RID_ACTIV.text # #-#-#-#-# basctl.pot (Gnome 2.12) #-#-#-#-# # basctl/source\basicide\brkdlg.src:RID_BASICIDE_BREAKPOINTDLG.RID_CHKB_ACTIVE.text #: ../tools/browser/component-list.c:370 ../tools/browser/window.c:290 msgid "Active" msgstr "Gikora" # filter/source\xsltdialog\xmlfilterdialogstrings.src:STR_COLUMN_HEADER_TYPE.text #: ../tools/browser/component-list.c:391 msgid "Type" msgstr "Ubwoko" #: ../tools/browser/window.c:170 msgid "Component Details" msgstr "" #: ../tools/browser/window.c:215 msgid "Bonobo Browser" msgstr "" #: ../tools/browser/window.c:216 msgid "Copyright 2001, The GNOME Foundation" msgstr "" #: ../tools/browser/window.c:217 #, fuzzy msgid "Bonobo component browser" msgstr "Mucukumbuzi" #. create the window #: ../tools/browser/window.c:247 msgid "Component Browser" msgstr "" #. Fill out the tool bar #: ../tools/browser/window.c:287 msgid "All" msgstr "" # #-#-#-#-# basctl.pot (Gnome 2.12) #-#-#-#-# # basctl/source\basicide\basidesh.src:RID_POPUP_BRKPROPS.RID_ACTIV.text # #-#-#-#-# basctl.pot (Gnome 2.12) #-#-#-#-# # basctl/source\basicide\brkdlg.src:RID_BASICIDE_BREAKPOINTDLG.RID_CHKB_ACTIVE.text #: ../tools/browser/window.c:293 #, fuzzy msgid "Inactive" msgstr "Gikora" libbonoboui-2.24.5/po/be.po0000644000076400007640000003646611173072741012426 00000000000000# translation of libbonoboui.HEAD.be.po to belarusian # This file is distributed under the same license as the libbonoboui.HEAD.be package. # Copyright (C) 2005 THE libbonoboui.HEAD.be'S COPYRIGHT HOLDER # Vital Khilko , 2003, 2005. # Ales Nyakhaychyk , 2005. # # msgid "" msgstr "" "Project-Id-Version: libbonoboui.HEAD.be\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2005-11-19 14:48+0100\n" "PO-Revision-Date: 2005-11-19 20:01+0200\n" "Last-Translator: Vital Khilko \n" "Language-Team: Belarusian \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit" "Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%" "10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" #: ../bonobo/bonobo-canvas-item.c:683 msgid "corba factory" msgstr "вытворчасьць corba" #: ../bonobo/bonobo-canvas-item.c:684 msgid "The factory pointer" msgstr "Указальнік на вытворчасьці" #: ../bonobo/bonobo-canvas-item.c:693 msgid "corba UI container" msgstr "кантэйнэр UI corba" #: ../bonobo/bonobo-canvas-item.c:694 msgid "The User interface container" msgstr "Кантэйнэр інтэрфэйсу карыстальніка" #: ../bonobo/bonobo-dock-item-grip.c:257 msgid "Dock the toolbar" msgstr "Прычапіць панэль інструмэнтаў" #: ../bonobo/bonobo-dock-item-grip.c:258 msgid "Undock the toolbar" msgstr "Адчапіць панэль інструмэнтаў" #: ../bonobo/bonobo-dock-item.c:235 ../bonobo/bonobo-dock-item.c:236 #: ../bonobo/bonobo-ui-toolbar.c:1175 msgid "Shadow type" msgstr "Тып ценю" #: ../bonobo/bonobo-dock-item.c:246 ../bonobo/bonobo-dock-item.c:247 #: ../bonobo/bonobo-ui-toolbar.c:1119 ../bonobo/bonobo-ui-toolbar.c:1120 msgid "Orientation" msgstr "Арыентацыя" #: ../bonobo/bonobo-dock-item.c:257 ../bonobo/bonobo-dock-item.c:258 #: ../bonobo/bonobo-ui-toolbar.c:1138 ../bonobo/bonobo-ui-toolbar.c:1139 msgid "Preferred width" msgstr "Пераважная шырыня" #: ../bonobo/bonobo-dock-item.c:266 ../bonobo/bonobo-dock-item.c:267 #: ../bonobo/bonobo-ui-toolbar.c:1147 ../bonobo/bonobo-ui-toolbar.c:1148 msgid "Preferred height" msgstr "Пераважная вышыня" #: ../bonobo/bonobo-file-selector-util.c:357 msgid "Select a file to open" msgstr "Выберыце файл для адкрыцьця" #: ../bonobo/bonobo-file-selector-util.c:385 msgid "Select files to open" msgstr "Выберыце файлы для адкрыцьця" #: ../bonobo/bonobo-file-selector-util.c:414 msgid "Select a filename to save" msgstr "Выберыце назву файла для захаваньня" #: ../bonobo/bonobo-plug.c:425 msgid "Event Forwarding" msgstr "Перасылка падзеі" #: ../bonobo/bonobo-plug.c:426 msgid "Whether X events should be forwarded" msgstr "Ці мусяць перасылацца падзеі Х-паслужніку" #: ../bonobo/bonobo-selector-widget.c:302 ../bonobo/bonobo-window.c:346 #: ../tools/browser/component-details.c:114 #: ../tools/browser/component-list.c:381 msgid "Name" msgstr "Назва" #: ../bonobo/bonobo-selector-widget.c:324 #: ../tools/browser/component-details.c:115 msgid "Description" msgstr "Апісаньне" #: ../bonobo/bonobo-selector.c:345 msgid "Interfaces required" msgstr "Запатрабаваныя інтэрфэйсы" #: ../bonobo/bonobo-selector.c:346 msgid "" "A NULL-terminated array of interfaces which a server must support in order " "to be listed in the selector. Defaults to \"IDL:Bonobo/Embeddable:1.0\" if " "no interfaces are listed" msgstr "" "Масіў інтэрфэйсаў які канчаецца на NULL, якія павінен падтрымліваць " "паслужнік па чарзе пералічэньня ў выбарніку. Прадвызначана \"IDL:Bonobo/" "Embeddable:1.0\" калі інтэрфэйсы не пералічаныя" #: ../bonobo/bonobo-selector.c:348 msgid "Interface required entry" msgstr "Інтэрфэйс патрабуе запіс" #: ../bonobo/bonobo-selector.c:349 msgid "One of the interfaces that's required" msgstr "Адзін з інтэрфэйсаў патрабуе гэта" #: ../bonobo/bonobo-ui-config-widget.c:268 msgid "Visible" msgstr "Бачны" #: ../bonobo/bonobo-ui-config-widget.c:275 msgid "_Show" msgstr "_Паказаць" #: ../bonobo/bonobo-ui-config-widget.c:282 msgid "_Hide" msgstr "_Схаваць" #: ../bonobo/bonobo-ui-config-widget.c:288 msgid "_View tooltips" msgstr "_Прагляд падказак" #: ../bonobo/bonobo-ui-config-widget.c:293 msgid "Toolbars" msgstr "Панэлі інструмэнтаў" #: ../bonobo/bonobo-ui-config-widget.c:303 msgid "toolbars" msgstr "панэлі інструмэнтаў" #: ../bonobo/bonobo-ui-config-widget.c:314 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "Look" msgstr "Выгляд" #: ../bonobo/bonobo-ui-config-widget.c:323 #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "_Icon" msgstr "_Значка" #: ../bonobo/bonobo-ui-config-widget.c:329 msgid "_Text and Icon" msgstr "Т_экст і значкі" #: ../bonobo/bonobo-ui-config-widget.c:335 msgid "Text only" msgstr "Толькі тэкст" #: ../bonobo/bonobo-ui-config-widget.c:341 msgid "_Priority text only" msgstr "_Прыярытэт толькі тэксту" #: ../bonobo/bonobo-ui-engine.c:90 msgid "Debug" msgstr "Адладка" #: ../bonobo/bonobo-ui-engine.c:90 msgid "_Dump XML" msgstr "_Адбітак XML" #: ../bonobo/bonobo-ui-engine.c:91 msgid "Dump the entire UI's XML description to the console" msgstr "Адбіць поўнае XML апісаньне UI у кансоль" #: ../bonobo/bonobo-ui-engine-config.c:522 msgid "Configure UI" msgstr "Наладка UI" #: ../bonobo/bonobo-ui-init-gtk.c:124 msgid "Gdk debugging flags to set" msgstr "Сьцягі адладкі Gdk для усталяваньня" #: ../bonobo/bonobo-ui-init-gtk.c:124 ../bonobo/bonobo-ui-init-gtk.c:127 #: ../bonobo/bonobo-ui-init-gtk.c:155 ../bonobo/bonobo-ui-init-gtk.c:158 msgid "FLAGS" msgstr "СЬЦЯГІ" #: ../bonobo/bonobo-ui-init-gtk.c:127 msgid "Gdk debugging flags to unset" msgstr "сьцягі адладкі Gdk для скіданьня" #: ../bonobo/bonobo-ui-init-gtk.c:131 msgid "X display to use" msgstr "X-дысплэй для выкарыстаньня" #: ../bonobo/bonobo-ui-init-gtk.c:131 msgid "DISPLAY" msgstr "ДЫСПЛЭЙ" #: ../bonobo/bonobo-ui-init-gtk.c:135 msgid "X screen to use" msgstr "X экран для выкарыстаньня" #: ../bonobo/bonobo-ui-init-gtk.c:135 msgid "SCREEN" msgstr "ЭКРАН" #: ../bonobo/bonobo-ui-init-gtk.c:139 msgid "Make X calls synchronous" msgstr "Рабіць X выклікі сынхронна" #: ../bonobo/bonobo-ui-init-gtk.c:145 msgid "Don't use X shared memory extension" msgstr "Не выкарыстоўваць пашырэньне Х падзеленай памяці" #: ../bonobo/bonobo-ui-init-gtk.c:149 msgid "Program name as used by the window manager" msgstr "Назва праграмы якая будзе выкарыстоўвацца кіраўніком вокнаў" #: ../bonobo/bonobo-ui-init-gtk.c:149 msgid "NAME" msgstr "НАЗВА" #: ../bonobo/bonobo-ui-init-gtk.c:152 msgid "Program class as used by the window manager" msgstr "Кляса праграмы якая будзе выкарыстоўвацца кіраўніком вокнаў" #: ../bonobo/bonobo-ui-init-gtk.c:152 msgid "CLASS" msgstr "КЛЯСА" #: ../bonobo/bonobo-ui-init-gtk.c:155 msgid "Gtk+ debugging flags to set" msgstr "Сьцягі адладкі Gtk+ для усталяваньня" #: ../bonobo/bonobo-ui-init-gtk.c:158 msgid "Gtk+ debugging flags to unset" msgstr "Сьцягі адладкі Gtk+ для скіданьня" #: ../bonobo/bonobo-ui-init-gtk.c:161 msgid "Make all warnings fatal" msgstr "Зрабіць усе папярэджаньні фатальнымі" #: ../bonobo/bonobo-ui-init-gtk.c:164 msgid "Load an additional Gtk module" msgstr "Загрузіць дадатковы модуль Gtk" #: ../bonobo/bonobo-ui-init-gtk.c:164 msgid "MODULE" msgstr "МОДУЛЬ" #: ../bonobo/bonobo-ui-init-gtk.c:173 msgid "GTK+" msgstr "GTK+" #: ../bonobo/bonobo-ui-main.c:278 msgid "Bonobo GUI support" msgstr "Падтрымка Bonobo GUI" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "B_oth" msgstr "_Разам" #: ../bonobo/bonobo-ui-sync-toolbar.c:566 msgid "T_ext" msgstr "_Тэкст" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Hide t_ips" msgstr "Схаваць пад_казкі" #: ../bonobo/bonobo-ui-sync-toolbar.c:567 msgid "Show t_ips" msgstr "Адлюстроўваць _падказкі" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "_Hide toolbar" msgstr "_Схаваць панэль інструмэнтаў" #: ../bonobo/bonobo-ui-sync-toolbar.c:568 msgid "Customi_ze" msgstr "На_ладзіць" #: ../bonobo/bonobo-ui-sync-toolbar.c:569 msgid "Customize the toolbar" msgstr "Наладзіць панэль інструмэнтаў" #: ../bonobo/bonobo-ui-toolbar.c:1129 msgid "is floating" msgstr "плавальная" #: ../bonobo/bonobo-ui-toolbar.c:1130 msgid "whether the toolbar is floating" msgstr "ці мусіць плаваць панэль інструмэнтаў" #: ../bonobo/bonobo-ui-toolbar.c:1176 msgid "Style of bevel around the toolbar" msgstr "Стыль скосаў вакол панэлі інструмэнтаў" #: ../bonobo/bonobo-ui-util.c:630 msgid "_Contents" msgstr "_Зьмест" #: ../bonobo/bonobo-ui-util.c:631 msgid "View help for this application" msgstr "Адлюстраваць даведку для гэтага дастасаваньня" #: ../bonobo/bonobo-window.c:347 msgid "Name of the window - used for configuration serialization." msgstr "Назва акна - выкарыстоўваецца для сэрыялізацыі наладак." #: ../bonobo/bonobo-zoomable.c:326 msgid "Zoom level" msgstr "Узровень маштабаваньня" #: ../bonobo/bonobo-zoomable.c:327 msgid "The degree of enlargment" msgstr "Ступень павялічэньня" #: ../bonobo/bonobo-zoomable.c:335 msgid "Minimum Zoom level" msgstr "Найменшы узровень маштабаваньня" #: ../bonobo/bonobo-zoomable.c:336 msgid "The minimum degree of enlargment" msgstr "Найменшая ступень павялічэньня" #: ../bonobo/bonobo-zoomable.c:344 msgid "Maximum Zoom level" msgstr "Найбольшы ўзровень маштабаваньня" #: ../bonobo/bonobo-zoomable.c:345 msgid "The maximum degree of enlargment" msgstr "Найбольшая ступень павялічэньня" #: ../bonobo/bonobo-zoomable.c:353 msgid "Has a minimum Zoom level" msgstr "Утрымлівае найменшы ўзровень павялічэньня" #: ../bonobo/bonobo-zoomable.c:354 msgid "Whether we have a valid minimum zoom level" msgstr "Ці ўтрымлівае правільны найменшы ўзровень павялічэньня" #: ../bonobo/bonobo-zoomable.c:361 msgid "Has a maximum Zoom level" msgstr "Утрымлівае найбольшы ўзровень павялічэньня" #: ../bonobo/bonobo-zoomable.c:362 msgid "Whether we have a valid maximum zoom level" msgstr "Ці ўтрымлівае правільны найбольшы ўзровень павялічэньня" #: ../bonobo/bonobo-zoomable.c:369 msgid "Is continuous" msgstr "Непарыўная" #: ../bonobo/bonobo-zoomable.c:370 msgid "Whether we zoom continuously (as opposed to jumps)" msgstr "Ці маштабаваньне непарыўнае (у супрацьлегласьць \"скачкамі\")" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:1 msgid "About this application" msgstr "Пра гэтае дастасаваньне" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:2 msgid "Select" msgstr "Выбар" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:3 msgid "_About..." msgstr "_Пра праграму" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:4 msgid "_Edit" msgstr "_Рэдагаваньне" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:5 #: ../tools/browser/bonobo-browser.xml.h:4 msgid "_File" msgstr "_Файл" #: ../samples/bonoboui/Bonobo_Sample_Hello.xml.h:6 msgid "_Select" msgstr "_Выбар" #: ../samples/bonoboui/hello.c:63 msgid "This does nothing; it is only a demonstration." msgstr "Гэтае дастасаваньне нічога ня робіць; гэта толькі паказ магчымасьцяў." #: ../samples/bonoboui/hello.c:145 msgid "BonoboUI-Hello." msgstr "Вітаньне BonoboUI" #: ../samples/bonoboui/hello.c:217 msgid "Gnome Hello" msgstr "Вітаньне Gnome" #. Create Label and put it in the Button: #: ../samples/bonoboui/hello.c:272 msgid "Hello, World!" msgstr "Вітаньні, Сьвет!" #: ../samples/bonoboui/hello.c:312 msgid "Cannot init libbonoboui code" msgstr "Немагчыма ініцыялізаваць код libbonoboui" #: ../samples/controls/bonobo-sample-controls.c:131 msgid "Could not initialize Bonobo UI" msgstr "Немагчыма ініцыялізаваць Bonobo UI" #: ../tools/browser/bonobo-browser.desktop.in.h:1 msgid "Bonobo Component Browser" msgstr "Вандроўнік па кампанэнтах Bonobo" #: ../tools/browser/bonobo-browser.desktop.in.h:2 msgid "Shows available Bonobo components" msgstr "Адлюстроўвае наяўныя кампанэнты Bonobo" #: ../tools/browser/bonobo-browser.xml.h:1 msgid "About this program..." msgstr "Пра гэтую праграму" #: ../tools/browser/bonobo-browser.xml.h:2 msgid "Close the current window" msgstr "Закрыць гэтае акно" #: ../tools/browser/bonobo-browser.xml.h:3 msgid "Open a new window" msgstr "Адкрыць новае акно" #: ../tools/browser/bonobo-browser.xml.h:5 msgid "_Help" msgstr "_Даведка" #. Build the general tab #: ../tools/browser/component-details.c:109 msgid "General" msgstr "Асноўнае" #: ../tools/browser/component-details.c:116 #: ../tools/browser/component-list.c:401 msgid "IID" msgstr "IID" #: ../tools/browser/component-details.c:117 msgid "Location" msgstr "Разьмяшчэньне" #. Build the details tab #: ../tools/browser/component-details.c:167 msgid "Details" msgstr "Падрабязнасьці" #: ../tools/browser/component-details.c:168 msgid "Detailed Information" msgstr "Падрабязная інфармацыя" #: ../tools/browser/component-list.c:370 ../tools/browser/window.c:290 msgid "Active" msgstr "Актыўны" #: ../tools/browser/component-list.c:391 msgid "Type" msgstr "Тып" #: ../tools/browser/window.c:170 msgid "Component Details" msgstr "Падрабязнасьці кампанэнту" #: ../tools/browser/window.c:215 msgid "Bonobo Browser" msgstr "Вандроўнік Bonobo" #: ../tools/browser/window.c:216 msgid "Copyright 2001, The GNOME Foundation" msgstr "© Аўтарскае права 2001, The GNOME Foundation" #: ../tools/browser/window.c:217 msgid "Bonobo component browser" msgstr "Вандроўнік па кампанэнтах Bonobo" #. create the window #: ../tools/browser/window.c:247 msgid "Component Browser" msgstr "Вандроўнік па кампанэнтах" #. Fill out the tool bar #: ../tools/browser/window.c:287 msgid "All" msgstr "Усё" #: ../tools/browser/window.c:293 msgid "Inactive" msgstr "Актыўны" libbonoboui-2.24.5/README0000644000076400007640000000020511173072741011720 00000000000000 See libbonobo/README for details, or doc/ for various UI related documentation. File any bug reports at http://bugzilla.gnome.org/ libbonoboui-2.24.5/glade/0000775000076400007640000000000011546335131012200 500000000000000libbonoboui-2.24.5/glade/Makefile.am0000644000076400007640000000073011173072741014153 00000000000000## Process this file with automake to produce Makefile.in INCLUDES = \ -I$(top_builddir) \ -I$(top_srcdir) \ -DG_LOG_DOMAIN=\"BonoboUI\" \ $(BONOBOUI_GLADE_CFLAGS) glademoduledir = $(libdir)/libglade/2.0 glademodule_LTLIBRARIES = libbonobo.la libbonobo_la_LIBADD = \ $(top_builddir)/bonobo/libbonoboui-2.la \ $(BONOBOUI_GLADE_LIBS) libbonobo_la_LDFLAGS = \ -export-dynamic -module -avoid-version -no-undefined libbonobo_la_SOURCES = \ glade-bonobo.c libbonoboui-2.24.5/glade/glade-bonobo.c0000644000076400007640000001616711173072741014626 00000000000000/* * glade-bonobo.c: support for bonobo widgets in libglade. * * Authors: * Michael Meeks (michael@ximian.com) * Jacob Berkman (jacob@ximian.com> * * Copyright (C) 2000,2001 Ximian, Inc., 2001,2002 James Henstridge. */ #undef GTK_DISABLE_DEPRECATED #include #include #include #include #include #include #define INT(s) (strtol ((s), NULL, 0)) #define UINT(s) (strtoul ((s), NULL, 0)) #define BOOL(s) (g_ascii_tolower (*(s)) == 't' || g_ascii_tolower (*(s)) == 'y' || INT (s)) #define FLOAT(s) (g_strtod ((s), NULL)) static void dock_allow_floating (GladeXML *xml, GtkWidget *widget, const char *name, const char *value) { bonobo_dock_allow_floating_items (BONOBO_DOCK (widget), BOOL (value)); } static void dock_item_set_shadow_type (GladeXML *xml, GtkWidget *widget, const char *name, const char *value) { bonobo_dock_item_set_shadow_type ( BONOBO_DOCK_ITEM (widget), glade_enum_from_string (GTK_TYPE_SHADOW_TYPE, value)); } static void dock_item_set_behavior (GladeXML *xml, GtkWidget *widget, const char *name, const char *value) { BonoboDockItem *dock_item = BONOBO_DOCK_ITEM (widget); gchar *old_name; old_name = dock_item->name; dock_item->name = NULL; bonobo_dock_item_construct (dock_item, old_name, glade_flags_from_string ( BONOBO_TYPE_DOCK_ITEM_BEHAVIOR, value)); g_free (old_name); } static GtkWidget * dock_item_build (GladeXML *xml, GType widget_type, GladeWidgetInfo *info) { GtkWidget *w; w = glade_standard_build_widget (xml, widget_type, info); g_free(BONOBO_DOCK_ITEM (w)->name); BONOBO_DOCK_ITEM (w)->name = g_strdup (info->name); return w; } static GtkWidget * glade_bonobo_widget_new (GladeXML *xml, GType widget_type, GladeWidgetInfo *info) { const gchar *control_moniker = NULL; GtkWidget *widget; GObjectClass *oclass; BonoboControlFrame *cf; Bonobo_PropertyBag pb; gint i; for (i = 0; i < info->n_properties; i++) { if (!strcmp (info->properties[i].name, "moniker")) { control_moniker = info->properties[i].value; break; } } if (!control_moniker) { g_warning (G_STRLOC " BonoboWidget doesn't have moniker property"); return NULL; } widget = bonobo_widget_new_control ( control_moniker, CORBA_OBJECT_NIL); if (!widget) { g_warning (G_STRLOC " unknown bonobo control '%s'", control_moniker); return NULL; } oclass = G_OBJECT_GET_CLASS (widget); cf = bonobo_widget_get_control_frame (BONOBO_WIDGET (widget)); if (!cf) { g_warning ("control '%s' has no frame", control_moniker); gtk_widget_unref (widget); return NULL; } pb = bonobo_control_frame_get_control_property_bag (cf, NULL); if (pb == CORBA_OBJECT_NIL) return widget; for (i = 0; i < info->n_properties; i++) { const gchar *name = info->properties[i].name; const gchar *value = info->properties[i].value; GParamSpec *pspec; if (!strcmp (name, "moniker")) continue; pspec = g_object_class_find_property (oclass, name); if (pspec) { GValue gvalue = { 0 }; if (glade_xml_set_value_from_string(xml, pspec, value, &gvalue)) { g_object_set_property(G_OBJECT(widget), name, &gvalue); g_value_unset(&gvalue); } } else if (pb != CORBA_OBJECT_NIL) { CORBA_TypeCode tc = bonobo_property_bag_client_get_property_type (pb, name, NULL); switch (tc->kind) { case CORBA_tk_boolean: bonobo_property_bag_client_set_value_gboolean (pb, name, value[0] == 'T' || value[0] == 'y', NULL); break; case CORBA_tk_string: bonobo_property_bag_client_set_value_string (pb, name, value, NULL); break; case CORBA_tk_long: bonobo_property_bag_client_set_value_glong (pb, name, strtol (value, NULL,0), NULL); break; case CORBA_tk_float: bonobo_property_bag_client_set_value_gfloat (pb, name, strtod (value, NULL), NULL); break; case CORBA_tk_double: bonobo_property_bag_client_set_value_gdouble (pb, name, strtod (value, NULL), NULL); break; default: g_warning ("Unhandled type %d for `%s'", tc->kind, name); break; } } else { g_warning ("could not handle property `%s'", name); } } bonobo_object_release_unref (pb, NULL); return widget; } static GtkWidget * bonobo_window_find_internal_child (GladeXML *xml, GtkWidget *parent, const gchar *childname) { if (!strcmp (childname, "vbox")) { GtkWidget *ret; if ((ret = bonobo_window_get_contents ( BONOBO_WINDOW (parent)))) return ret; else { GtkWidget *box; box = gtk_vbox_new (FALSE, 0); bonobo_window_set_contents ( BONOBO_WINDOW (parent), box); return box; } } return NULL; } static void add_dock_item (GladeXML *xml, GtkWidget *parent, GladeWidgetInfo *info, GladeChildInfo *childinfo) { BonoboDockPlacement placement; guint band, offset; int position; int i; GtkWidget *child; band = offset = position = 0; placement = BONOBO_DOCK_TOP; for (i = 0; i < childinfo->n_properties; i++) { const char *name = childinfo->properties[i].name; const char *value = childinfo->properties[i].value; if (!strcmp (name, "placement")) placement = glade_enum_from_string ( BONOBO_TYPE_DOCK_PLACEMENT, value); else if (!strcmp (name, "band")) band = UINT (value); else if (!strcmp (name, "position")) position = INT (value); else if (!strcmp (name, "offset")) offset = UINT (value); } child = glade_xml_build_widget (xml, childinfo->child); bonobo_dock_add_item (BONOBO_DOCK (parent), BONOBO_DOCK_ITEM (child), placement, band, position, offset, FALSE); } static void dock_build_children (GladeXML *xml, GtkWidget *w, GladeWidgetInfo *info) { int i; GtkWidget *child; GladeChildInfo *childinfo; for (i = 0; i < info->n_children; i++) { childinfo = &info->children[i]; if (!strcmp (childinfo->child->classname, "BonoboDockItem")) { add_dock_item (xml, w, info, childinfo); continue; } if (bonobo_dock_get_client_area (BONOBO_DOCK (w))) g_warning ("Multiple client areas for BonoboDock found."); child = glade_xml_build_widget (xml, childinfo->child); bonobo_dock_set_client_area (BONOBO_DOCK (w), child); } } /* this macro puts a version check function into the module */ GLADE_MODULE_CHECK_INIT void glade_module_register_widgets (void) { glade_require ("gtk"); glade_register_custom_prop (BONOBO_TYPE_DOCK, "allow_floating", dock_allow_floating); glade_register_custom_prop (BONOBO_TYPE_DOCK_ITEM, "shadow_type", dock_item_set_shadow_type); glade_register_custom_prop (BONOBO_TYPE_DOCK_ITEM, "behavior", dock_item_set_behavior); glade_register_widget (BONOBO_TYPE_WIDGET, glade_bonobo_widget_new, NULL, NULL); glade_register_widget (BONOBO_TYPE_WINDOW, NULL, glade_standard_build_children, bonobo_window_find_internal_child); glade_register_widget (BONOBO_TYPE_DOCK, NULL, dock_build_children, NULL); glade_register_widget (BONOBO_TYPE_DOCK_ITEM, dock_item_build, glade_standard_build_children, NULL); glade_provide ("bonobo"); } libbonoboui-2.24.5/glade/Makefile.in0000664000076400007640000004357011546334700014177 00000000000000# Makefile.in generated by automake 1.11.1 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, # Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY, to the extent permitted by law; without # even the implied warranty of MERCHANTABILITY or FITNESS FOR A # PARTICULAR PURPOSE. @SET_MAKE@ VPATH = @srcdir@ pkgdatadir = $(datadir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ pkglibdir = $(libdir)/@PACKAGE@ pkglibexecdir = $(libexecdir)/@PACKAGE@ am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd install_sh_DATA = $(install_sh) -c -m 644 install_sh_PROGRAM = $(install_sh) -c install_sh_SCRIPT = $(install_sh) -c INSTALL_HEADER = $(INSTALL_DATA) transform = $(program_transform_name) NORMAL_INSTALL = : PRE_INSTALL = : POST_INSTALL = : NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : build_triplet = @build@ host_triplet = @host@ subdir = glade DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/configure.in am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs CONFIG_HEADER = $(top_builddir)/config.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; am__vpath_adj = case $$p in \ $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \ *) f=$$p;; \ esac; am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`; am__install_max = 40 am__nobase_strip_setup = \ srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'` am__nobase_strip = \ for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||" am__nobase_list = $(am__nobase_strip_setup); \ for p in $$list; do echo "$$p $$p"; done | \ sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \ $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \ if (++n[$$2] == $(am__install_max)) \ { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \ END { for (dir in files) print dir, files[dir] }' am__base_list = \ sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \ sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g' am__installdirs = "$(DESTDIR)$(glademoduledir)" LTLIBRARIES = $(glademodule_LTLIBRARIES) am__DEPENDENCIES_1 = libbonobo_la_DEPENDENCIES = $(top_builddir)/bonobo/libbonoboui-2.la \ $(am__DEPENDENCIES_1) am_libbonobo_la_OBJECTS = glade-bonobo.lo libbonobo_la_OBJECTS = $(am_libbonobo_la_OBJECTS) libbonobo_la_LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) \ $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \ $(libbonobo_la_LDFLAGS) $(LDFLAGS) -o $@ DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir) depcomp = $(SHELL) $(top_srcdir)/depcomp am__depfiles_maybe = depfiles am__mv = mv -f COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) LTCOMPILE = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \ --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) CCLD = $(CC) LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \ --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \ $(LDFLAGS) -o $@ SOURCES = $(libbonobo_la_SOURCES) DIST_SOURCES = $(libbonobo_la_SOURCES) ETAGS = etags CTAGS = ctags DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ACLOCAL_AMFLAGS = @ACLOCAL_AMFLAGS@ ALL_LINGUAS = @ALL_LINGUAS@ AMTAR = @AMTAR@ AR = @AR@ AS = @AS@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ AWK = @AWK@ BONOBOUI_CFLAGS = @BONOBOUI_CFLAGS@ BONOBOUI_GLADE_CFLAGS = @BONOBOUI_GLADE_CFLAGS@ BONOBOUI_GLADE_LIBS = @BONOBOUI_GLADE_LIBS@ BONOBOUI_LIBS = @BONOBOUI_LIBS@ BONOBOUI_SINGLE_INCLUDES = @BONOBOUI_SINGLE_INCLUDES@ CATALOGS = @CATALOGS@ CATOBJEXT = @CATOBJEXT@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ CYGPATH_W = @CYGPATH_W@ DATADIRNAME = @DATADIRNAME@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DUMPBIN = @DUMPBIN@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_MKENUMS = @GLIB_MKENUMS@ GMOFILES = @GMOFILES@ GMSGFMT = @GMSGFMT@ GREP = @GREP@ GTKDOC_CHECK = @GTKDOC_CHECK@ GTKDOC_MKPDF = @GTKDOC_MKPDF@ GTKDOC_REBASE = @GTKDOC_REBASE@ HTML_DIR = @HTML_DIR@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INSTOBJEXT = @INSTOBJEXT@ INTLLIBS = @INTLLIBS@ INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@ INTLTOOL_MERGE = @INTLTOOL_MERGE@ INTLTOOL_PERL = @INTLTOOL_PERL@ INTLTOOL_UPDATE = @INTLTOOL_UPDATE@ LD = @LD@ LDFLAGS = @LDFLAGS@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIPO = @LIPO@ LN_S = @LN_S@ LTLIBOBJS = @LTLIBOBJS@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MKDIR_P = @MKDIR_P@ MKINSTALLDIRS = @MKINSTALLDIRS@ MSGFMT = @MSGFMT@ MSGFMT_OPTS = @MSGFMT_OPTS@ MSGMERGE = @MSGMERGE@ NM = @NM@ NMEDIT = @NMEDIT@ OBJDUMP = @OBJDUMP@ OBJEXT = @OBJEXT@ OTOOL = @OTOOL@ OTOOL64 = @OTOOL64@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_URL = @PACKAGE_URL@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ PATH_TO_XRDB = @PATH_TO_XRDB@ PKG_CONFIG = @PKG_CONFIG@ POFILES = @POFILES@ POPT_LIBS = @POPT_LIBS@ POSUB = @POSUB@ PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@ PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@ RANLIB = @RANLIB@ SED = @SED@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ STRIP = @STRIP@ USE_NLS = @USE_NLS@ VERSION = @VERSION@ WARN_CFLAGS = @WARN_CFLAGS@ XGETTEXT = @XGETTEXT@ XMKMF = @XMKMF@ X_CFLAGS = @X_CFLAGS@ X_EXTRA_LIBS = @X_EXTRA_LIBS@ X_LIBS = @X_LIBS@ X_PRE_LIBS = @X_PRE_LIBS@ YACC = @YACC@ YFLAGS = @YFLAGS@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ abs_top_srcdir = @abs_top_srcdir@ ac_ct_CC = @ac_ct_CC@ ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ am__include = @am__include@ am__leading_dot = @am__leading_dot@ am__quote = @am__quote@ am__tar = @am__tar@ am__untar = @am__untar@ bindir = @bindir@ build = @build@ build_alias = @build_alias@ build_cpu = @build_cpu@ build_os = @build_os@ build_vendor = @build_vendor@ builddir = @builddir@ datadir = @datadir@ datarootdir = @datarootdir@ docdir = @docdir@ dvidir = @dvidir@ exec_prefix = @exec_prefix@ host = @host@ host_alias = @host_alias@ host_cpu = @host_cpu@ host_os = @host_os@ host_vendor = @host_vendor@ htmldir = @htmldir@ includedir = @includedir@ infodir = @infodir@ install_sh = @install_sh@ libdir = @libdir@ libexecdir = @libexecdir@ localedir = @localedir@ localstatedir = @localstatedir@ lt_ECHO = @lt_ECHO@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ sysconfdir = @sysconfdir@ target_alias = @target_alias@ top_build_prefix = @top_build_prefix@ top_builddir = @top_builddir@ top_srcdir = @top_srcdir@ INCLUDES = \ -I$(top_builddir) \ -I$(top_srcdir) \ -DG_LOG_DOMAIN=\"BonoboUI\" \ $(BONOBOUI_GLADE_CFLAGS) glademoduledir = $(libdir)/libglade/2.0 glademodule_LTLIBRARIES = libbonobo.la libbonobo_la_LIBADD = \ $(top_builddir)/bonobo/libbonoboui-2.la \ $(BONOBOUI_GLADE_LIBS) libbonobo_la_LDFLAGS = \ -export-dynamic -module -avoid-version -no-undefined libbonobo_la_SOURCES = \ glade-bonobo.c all: all-am .SUFFIXES: .SUFFIXES: .c .lo .o .obj $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps) @for dep in $?; do \ case '$(am__configure_deps)' in \ *$$dep*) \ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ && { if test -f $@; then exit 0; else break; fi; }; \ exit 1;; \ esac; \ done; \ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign glade/Makefile'; \ $(am__cd) $(top_srcdir) && \ $(AUTOMAKE) --foreign glade/Makefile .PRECIOUS: Makefile Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status @case '$?' in \ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(am__aclocal_m4_deps): install-glademoduleLTLIBRARIES: $(glademodule_LTLIBRARIES) @$(NORMAL_INSTALL) test -z "$(glademoduledir)" || $(MKDIR_P) "$(DESTDIR)$(glademoduledir)" @list='$(glademodule_LTLIBRARIES)'; test -n "$(glademoduledir)" || list=; \ list2=; for p in $$list; do \ if test -f $$p; then \ list2="$$list2 $$p"; \ else :; fi; \ done; \ test -z "$$list2" || { \ echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 '$(DESTDIR)$(glademoduledir)'"; \ $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 "$(DESTDIR)$(glademoduledir)"; \ } uninstall-glademoduleLTLIBRARIES: @$(NORMAL_UNINSTALL) @list='$(glademodule_LTLIBRARIES)'; test -n "$(glademoduledir)" || list=; \ for p in $$list; do \ $(am__strip_dir) \ echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f '$(DESTDIR)$(glademoduledir)/$$f'"; \ $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f "$(DESTDIR)$(glademoduledir)/$$f"; \ done clean-glademoduleLTLIBRARIES: -test -z "$(glademodule_LTLIBRARIES)" || rm -f $(glademodule_LTLIBRARIES) @list='$(glademodule_LTLIBRARIES)'; for p in $$list; do \ dir="`echo $$p | sed -e 's|/[^/]*$$||'`"; \ test "$$dir" != "$$p" || dir=.; \ echo "rm -f \"$${dir}/so_locations\""; \ rm -f "$${dir}/so_locations"; \ done libbonobo.la: $(libbonobo_la_OBJECTS) $(libbonobo_la_DEPENDENCIES) $(libbonobo_la_LINK) -rpath $(glademoduledir) $(libbonobo_la_OBJECTS) $(libbonobo_la_LIBADD) $(LIBS) mostlyclean-compile: -rm -f *.$(OBJEXT) distclean-compile: -rm -f *.tab.c @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/glade-bonobo.Plo@am__quote@ .c.o: @am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< @am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(COMPILE) -c $< .c.obj: @am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'` @am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(COMPILE) -c `$(CYGPATH_W) '$<'` .c.lo: @am__fastdepCC_TRUE@ $(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< @am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(LTCOMPILE) -c -o $@ $< mostlyclean-libtool: -rm -f *.lo clean-libtool: -rm -rf .libs _libs ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ END { if (nonempty) { for (i in files) print i; }; }'`; \ mkid -fID $$unique tags: TAGS TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) set x; \ here=`pwd`; \ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ END { if (nonempty) { for (i in files) print i; }; }'`; \ shift; \ if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ test -n "$$unique" || unique=$$empty_fix; \ if test $$# -gt 0; then \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ "$$@" $$unique; \ else \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ $$unique; \ fi; \ fi ctags: CTAGS CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ END { if (nonempty) { for (i in files) print i; }; }'`; \ test -z "$(CTAGS_ARGS)$$unique" \ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ $$unique GTAGS: here=`$(am__cd) $(top_builddir) && pwd` \ && $(am__cd) $(top_srcdir) \ && gtags -i $(GTAGS_ARGS) "$$here" distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ dist_files=`for file in $$list; do echo $$file; done | \ sed -e "s|^$$srcdirstrip/||;t" \ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ case $$dist_files in \ */*) $(MKDIR_P) `echo "$$dist_files" | \ sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ sort -u` ;; \ esac; \ for file in $$dist_files; do \ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ if test -d $$d/$$file; then \ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ if test -d "$(distdir)/$$file"; then \ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ else \ test -f "$(distdir)/$$file" \ || cp -p $$d/$$file "$(distdir)/$$file" \ || exit 1; \ fi; \ done check-am: all-am check: check-am all-am: Makefile $(LTLIBRARIES) installdirs: for dir in "$(DESTDIR)$(glademoduledir)"; do \ test -z "$$dir" || $(MKDIR_P) "$$dir"; \ done install: install-am install-exec: install-exec-am install-data: install-data-am uninstall: uninstall-am install-am: all-am @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am installcheck: installcheck-am install-strip: $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ `test -z '$(STRIP)' || \ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install mostlyclean-generic: clean-generic: distclean-generic: -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) maintainer-clean-generic: @echo "This command is intended for maintainers to use" @echo "it deletes files that may require special tools to rebuild." clean: clean-am clean-am: clean-generic clean-glademoduleLTLIBRARIES clean-libtool \ mostlyclean-am distclean: distclean-am -rm -rf ./$(DEPDIR) -rm -f Makefile distclean-am: clean-am distclean-compile distclean-generic \ distclean-tags dvi: dvi-am dvi-am: html: html-am html-am: info: info-am info-am: install-data-am: install-glademoduleLTLIBRARIES install-dvi: install-dvi-am install-dvi-am: install-exec-am: install-html: install-html-am install-html-am: install-info: install-info-am install-info-am: install-man: install-pdf: install-pdf-am install-pdf-am: install-ps: install-ps-am install-ps-am: installcheck-am: maintainer-clean: maintainer-clean-am -rm -rf ./$(DEPDIR) -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic mostlyclean: mostlyclean-am mostlyclean-am: mostlyclean-compile mostlyclean-generic \ mostlyclean-libtool pdf: pdf-am pdf-am: ps: ps-am ps-am: uninstall-am: uninstall-glademoduleLTLIBRARIES .MAKE: install-am install-strip .PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \ clean-glademoduleLTLIBRARIES clean-libtool ctags distclean \ distclean-compile distclean-generic distclean-libtool \ distclean-tags distdir dvi dvi-am html html-am info info-am \ install install-am install-data install-data-am install-dvi \ install-dvi-am install-exec install-exec-am \ install-glademoduleLTLIBRARIES install-html install-html-am \ install-info install-info-am install-man install-pdf \ install-pdf-am install-ps install-ps-am install-strip \ installcheck installcheck-am installdirs maintainer-clean \ maintainer-clean-generic mostlyclean mostlyclean-compile \ mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \ tags uninstall uninstall-am uninstall-glademoduleLTLIBRARIES # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. .NOEXPORT: libbonoboui-2.24.5/AUTHORS0000644000076400007640000000000011173072741012101 00000000000000libbonoboui-2.24.5/bonobo.h0000644000076400007640000000050311173072741012470 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ /** * Compatibility include file for Bonobo 1.0 compatibility * * Author: * Michael Meeks * * Copyright 2001 Ximian, Inc. */ #ifndef _BONOBO_H_ #define _BONOBO_H_ #include #endif /* _BONOBO_H_ */ libbonoboui-2.24.5/changes.txt0000644000076400007640000001232411173072741013216 00000000000000bonobo-control-frame.[ch]: Privatize bonobo_control_frame_realize bonobo_control_frame_focus bonobo_control_frame_size_request bonobo_control_frame_set_ui_container, bonobo_control_frame_construct, add CORBA_Environment bonobo-ui-util.[ch]: Remove all anachronistic _build methods, everyone just a file. bonobo_ui_util_new_menu, bonobo_ui_util_new_placeholder bonobo_ui_util_set_radiogroup bonobo_ui_util_set_toggle bonobo_ui_util_new_std_toolbar bonobo_ui_util_new_toggle_toolbar bonobo_ui_util_build_accel bonobo_ui_util_xml_set_pix_xpm bonobo_ui_util_xml_set_pix_stock bonobo_ui_util_xml_set_pix_fname rename bonobo_ui_util_xml_get_icon_pixmap_widget to bonobo_ui_util_xml_get_icon_widget. bonobo_ui_util_set_pixbuf, bonobo_ui_util_set_ui: +optional ev, +NULL for old behavior. bonobo-client-site.[ch]: bonobo-embeddable.[ch]: bonobo-view.[ch]: bonobo-view-frame.[ch]: The document interfaces have been revamped ruthlessly. The View and ViewFrame interfaces in 1.4 were a very thin wrapper around Control/Frame. Their additional utility consisted of a cheezy zooming mechanism. ClientSite was a helper object on the client side which provided almost zero utility. The ClientSite, View, and ViewFrame, and Embeddable implementations have been completely eliminated in 2.0. Compound-doc components should instead expose the new ControlFactory and CanvasComponentFactory interfaces. bonobo-widget.[ch]: Removed bonobo_widget_get_server, redundant BonoboObjectClient variant, use bonobo_widget_get_objref instead. Removed the subdoc variant. Rename bonobo_widget_get_uih -> bonobo_widget_get_ui_container. bonobo_widget_get_property, bonobo_widget_set_property: changed arg. list to be name/type/val triplicates; bonobo-desktop-window.[ch]: Removed - stale, deprecated. bonobo-control.[ch] bonobo_control_[get|set]_properties () are now working with Bonobo_PropertyBag (a CORBA object reference) instead of BonoboPropertyBag. bonobo_control_set_properties, bonobo_control_get_properties: pass the CORBA reference around not a local one, since we could have a remote bag here. Added an optional CORBA exception environment to the following methods: bonobo_control_set_property bonobo_control_get_property bonobo_control_get_remote_ui_container bonobo_control_set_control_frame bonobo_control_get_control_frame bonobo_control_set_properties bonobo_control_activate_notify bonobo-control.[ch]: Added an optional CORBA exception environment to the following methods: bonobo_control_frame_bind_to_control bonobo_control_frame_size_request bonobo-win.[ch] have been renamed to bonobo-window.[ch] bonobo-window.[ch] Deprecated methods removed: bonobo_window_deregister_dead_components bonobo_window_register_component bonobo_window_deregister_component bonobo_window_deregister_component_by_ref bonobo_window_deregister_get_component_names bonobo_window_component_get bonobo_window_xml_node_exists bonobo_window_object_set bonobo_window_object_get bonobo_window_xml_merge_tree bonobo_window_xml_merge bonobo_window_xml_rm bonobo_window_xml_get bonobo_window_freeze bonobo_window_thaw bonobo_window_dump bonobo_window_set_ui_container finaly removed - use bonobo_ui_engine equvialents, get the bonobo_ui_engine from the window using bonobo_window_get_ui_engine. bonobo_window_new: instead of doing: win = BONOBO_WINDOW (bonobo_window_new ("Win", "My Test Application")); container = bonobo_ui_container_new (); bonobo_ui_container_set_win (container, win); just do: win = BONOBO_WINDOW (bonobo_window_new ("Win", "My Test Application")); container = bonobo_window_get_ui_container (win); since the ui container is now automaticaly created. bonobo_window_get_ui_container: added, bonobo_window_construct: add UIContainer arg. bonobo-ui-container.c: Remove deprecated methods: bonobo_ui_container_set_win bonobo_ui_container_get_win Instead use: BONOBO_WINDOW (bonobo_ui_engine_get_view ( bonobo_ui_container_get_engine (uic))); There are 2 new Factory interfaces for Controls and CanvasComponents which replace the previous createView and createCanvasItem methods of the Embeddable interface. It is better to have these as separate queryable interfaces so that a container can activate objects based on the type of "view" mechanisms it supports. Since any implementation of these two interfaces would be complete fluff they are now IDL-only. bonobo-ui-component.[ch]: bonobo_ui_component_add_listener_full, bonobo_ui_component_add_verb_full: replace with GClosure methods. bonobo_ui_component_remove_verb_by_func, bonobo_ui_component_remove_verb_by_data, bonobo_ui_component_remove_listener_by_func, bonobo_ui_component_remove_listener_by_data, replaced by: bonobo_ui_component_remove_verb_by_closure, bonobo_ui_component_remove_listener_by_closure. bonobo_ui_component_set_container: added optional ev. bonobo_ui_component_get_container: added optional ev. bonobo-zoomable.[ch]: bonobo_zoomable_report_zoom_level_changed, bonobo_zoomable_report_zoom_parameters_changed: added optional ev. bonobo-zoomable-frame.[ch]: bonobo_zoomable_frame_bind_to_zoomable: add optional ev.libbonoboui-2.24.5/doc/0000775000076400007640000000000011546335132011672 500000000000000libbonoboui-2.24.5/doc/ui-across-boundaries.txt0000644000076400007640000001240711173072741016413 00000000000000 ---------------------- U.I. Across Boundaries ---------------------- Mark McLoughlin mark@skynet.ie Mon Oct 1st, 2001 Perhaps the most compelling aspect of the Bonobo U.I. APIs is the ability to use cross-process U.I. embedding - that is, to have a U.I. component, managed by one process, visible in the window of another process. Because Bonobo makes such a big deal of being built upon CORBA, you would be forgiven for assuming that this bit of magic is carried out solely using CORBA. That assumption is, in fact, untrue. The magic - displaying the out of process widgets and proxying the U.I. signals and events to the other process - is actually provided by the GtkPlug/GtkSocket APIs and, ultimately the X11 windowing system itself. ==================== GtPlug and GtkSocket ==================== A GtkPlug wdget is a top-level window running in one application which may be embedded in a GtkSocket widget running in another application. These APIs are actually quite simple. One application creates a GtkSocket and passes the XID of the wigets window to another process which, in turn, creates a GtkPlug window using that XID. e.g. in the 'container' application: --- --- GtkWidget *socket = gtk_socket_new (); gtk_container_add (GTK_CONTAINER (parent), socket); app_transmit_xid (GDK_WINDOW_XWINDOW (socket->window)); --- --- and in the 'component' application --- --- GtkWidget *window; guint32 xid = app_receive_xid (); window = gtk_plug_new (xid); gtk_container_add (GTK_CONTAINER (window), widgets); gtk_widget_show_all (window); --- --- The key here is how to communicate the XID between processes? Any IPC mechanism will do. In the 'testsocket' program with gtk+ the processes communicate via a UNIX domain socket. However, we could just as easily use CORBA ... With Bonobo, we don't need to concern ourselves with GtkPlug/Sockets - as you'd expect with Bonobo there is a beautiful, clean and simple API we can use which abstracts away the complexities. These are the BonoboControl and BonoboControlFrame APIs. ============ BonoboControl ============ The BonoboControl API essentially provides a way to create a GtkPlug which exports a widget of your choice. The really important part, though, is that a BonoboControl also represents a CORBA object which may be exported and made available to other applications on the system. --- --- BonoboControl *control; GtkWidget *widget; Bonobo_Unkown *corba_object; widget = app_create_widget (); gtk_widget_show (widget); control = bonobo_control_new (widget); corba_object = BONOBO_OBJREF (control); --- --- Usually, the BonoboControl CORBA object - or the Bonobo_Control[1] object - would be exported using a Bonobo factory which may be discovered by querying the bonobo-activation server. However, this need not always be the case. ================== BonoboControlFrame ================== Just like BonoboControl is, conceptually, a wrapper for GtkPlug, so then is BonoboControlFrame a wrapper for GtkSocket. Once again though, a BonoboControlFrame is more than a mere wrapper for a GtkSocket. It is also a CORBA object. Simliar to the way you add, or bind, a widget to a container, you bind a BonoboControl to a BonoboControlFrame. It is at this point that the control creates a GtkPlug using the GtkSocket's XID. The control and control frame communicate using CORBA to make this happen. --- --- BonoboControlFrame *frame; GtkWidget *frame_widget; frame = bonobo_control_frame_new (NULL); bonobo_control_frame_bind_to_control (frame, control); frame_widget = bonobo_control_frame_get_widget (frame); gtk_container_add (GTK_CONTAINER (container), frame_widget); gtk_widget_show (frame_widget); --- --- As simple as the API is to use, it could be simpler. And it is. Enter BonoboWidget ... ============ BonoboWidget ============ "Bonobo component embedding for hydrocephalic imbeciles" - Nat Friedman. To embed a control in our application, all we really need is a GtkWidget representing the control to add to a GtkContainer. With the BonoboWidget API, the one piece of information needed to obtain this GtkWidget is a moniker that identifies the component. --- --- GtkWidget *widget; widget = bonobo_widget_new_control ("OAFIID:GNOME_myControl"); gtk_container_add (GTK_CONTAINER (container), frame_widget); gtk_widget_show (frame_widget); --- --- I mean, really, could this be simpler? [1] - Bonobo uses the convention that identifiers like BonoboControl represent the C wrapper object of a CORBA object and identifiers like Bonobo_Control represent the actual CORBA object. libbonoboui-2.24.5/doc/ui-xml.txt0000644000076400007640000001602311173072741013566 00000000000000 A discussion of the UI Handler's XML decription, version 0.1 by Havoc Pennington and Michael Meeks * Translation Any attribute prefixed with _ will be translated during parsing, the _ will be removed, and the translated text will go in the UITree. An element name prefixed with _ results in similar treatment for the element contents. This provides a nice generic mechanism for translation. * Path strategy: Every node is addressed by a path; the path is constructed by first examining the "name" attribute on each child node for a match and then falling back to the node name. eg. to address 'MyItem' the path would be /menu/MyItem * Generic attributes All of these attributes can be applied to the cmd, indeed this is most often the best place to put labels, tips, pixmaps, state etc. since then a GUI editor can be used to display the available options. ** Shared attributes for , , : label="bar" - user-visible name pixtype - an optional attribute specifying the type of an associated pixmap either 'stock', 'filename' or 'pixbuf' pixname - the name of the stock pixmap or a filename NB. for a pixbuf this contains an encoded pixmap. ** Shared attributes for , , : tip="Help on this" - tooltip menuitem / toolitem also have type, sensitive, and group attributes right now, but this is just a compatibility hack to support the old UIHandler. ** Shared attributes for anything in a dockitem (, ): behavior is a comma-delimited set of phrases that match the features of BonoboUIToolbarItem "expandable" - expand to fill entire toolbar (useful with exclusive dockitem) * Reserved names Verbs starting with "Bonobo" are reserved for use by the component model. Currently the following verbs are builtin: BonoboCustomize BonoboUIDump A placeholder named "BuiltMenuItems" automatically gets filled in with help menu items based on the code in gnome-help.h. Verbs starting with "Help" are reserved if you use "BuiltMenuItems". * Verbs Verbs are actions to be taken when an item is activated. - element describing a verb name="VerbName" - name used to refer to the verb sensitive="0" - 0 or 1, whether the verb is currently invocable state="whatever" - state for the command. Depends on command type; 0/1 for toggle items, for example * Controls - a control inserted from the containee using bonobo_ui_container_object_set, both the 'control' node and the object_set are neccessary to establish the control. hidden="0" - whether the control is visible. hdisplay="control" - show a control in the horizontal case vdisplay="button" - show a button in the vertical case ( docked to L/R HS ) can also be "none" * Menus and Toolbars ** Shared for , : verb="VerbName" - verb invoked on activation. If the empty string is specified, verb name is the same as node name. If verb is not mentioned at all, there is no verb associated with this item. pos="top" - optional force the location of the item at insertion time to be at the top of the placeholder or group. Normaly items are at the bottom. hidden="1" - whether the item is hidden or shown. type="toggle" - the type, if omitted a standard menu / toolbar item is used, can be 'toggle' or 'radio' - a separator - a set of menu items to appear as a child of has nodes as children hidden="0" - whether the menu is hidden - a menu item within a or - a sub menu item tearoff="1/0" - whether we insert a tearoff item on creation, defaults to global gnome preference or none for popup. - a dock item in a GnomeDock with a toolbar in it name="Foo" - name to refer to dock item look="icon" - lets you choose a toolbar style (both/icon/text/both_horiz) relief="none" - button relief hidden="1/0" - whether the dockitem is hidden * The following items have effect only at dockitem creation. placement="top" - where to put the band; top, bottom, right, left, floating tips="1/0" - whether we show tooltips default 1 config="1/0" - whether to allow basic right click config default 1. priority="1/0" - whether the label should be shown in 'Priority text' mode. behavior is a comma-delimited set of phrases that match the features in GnomeDockItem. The supported values are: "detachable" - force user detachable (overrides gnome preference) "exclusive" - one dockitem per row (fills entire row of dock) "never vertical" - prevent dockitem from ever becoming vertical "never horizontal" - prevent dockitem from ever becoming horizontal "never floating" - prevent dockitem from ever becoming floating e.g. behavior = "detachable,exclusive,never vertical" band_num="1" - band number position="0" - set the dockitem position offset="0" - offset into band in_new_band="1" - whether to create a new band - a toolbar button - a virtual 'directory' in which to insert items, this allows the items to be delimited variously if present or not at all by default. delimit="top" - this flag asks that the placeholder should be visible as a separator when it contains visible items, otherwise it should not be visible. With a "none" delimit setting a placeholder is never visible. * Status bar Most toplevel windows will provide a statusbar widget conventionally named Main which is simply a normal GtkStatusbar. To set the text of this statusbar you override the /status/Main node. Example: Text to appear in statusbar - encloses stuff to go in statusbar - a plain text statusbar; contents of node are the text to display name="main" - name of the standard statusbar resize_grip="1" - 0 or 1, whether a resize grip should be visible or not. - a control to be inserted into the status area. If name="main" it overrides the standard bar. Otherwise it gets packed into the right side of the status area. name="Foo" - name of control behavior="..." - Possible options pack-start, fill, expand change packing of control in statusbar. Example is behavior="pack-start,expand". * Key bindings - contains a bunch of name="*Control*S" - ItemFactory format for an accelerator name. Note that non-alpha characters are specified symbolically, e.g. "*Control*equal". verb="VerbName" - verb accelerator is bound to libbonoboui-2.24.5/doc/ui-faq.txt0000644000076400007640000002513711173072741013543 00000000000000#### Moved this to api/ui-faq.xml Frequently asked questions about the Bonobo UI Handler, version 0.1 by Michael Meeks * How do I port my App from the old to the new UI handler ? If you have written a component, then ideally you should have to make no code changes, nor re-link the component. There is a compatibility layer that should just work. However, this exposes you to many evils of the old interface, and does strange things to paths for radio items etc. If you have a complex UI you will want to re-write it. If you have written a container, then again the changes are minimal, simply replace the gnome_app calls with bonobo_win calls. As long as you only used the bonobo API to create menus you should be fine. It is *important* that you replace the ui handler parameter to all calls to bonobo_client_site_new_view to something of this form: view_frame = bonobo_client_site_new_view ( BONOBO_CLIENT_SITE (site), bonobo_ui_compat_get_container (ui_handler)); This is also true of the UI handler you pass to bonobo_widget_new_control (..., uih) and its variants * Where do I find examples ? See bonobo/app.c which shows several ways of constructing the UI. See also bonobo/ui.xml. To build standard menus copy items from std-ui.xml in the documentation. * How does translation work ? Every item has a non translated name which is used to construct a path for programmatic use. This is invariant over translations, it will often be similar to a label or verb name. User readable text is prefixed in the XML file by an '_', the file is parsed as it is read from disk and these '_' are removed as the strings are translated. In order to extract translatable strings from a header file you need to use the 'bonobo-ui-extract' utility which will be installed with bonobo. Do: bonobo-ui-extract my-app-ui.xml > my-app-ui.h Ensure that you include my-app-ui.h in your POTFILES.in, but there is no need to include it in any files. * Why don't you use XPath / XPointer ? These are fine reccomendations for addressing elements of an XML document. A major contributor to these reccomendations is my friend Daniel Velliard, with whom I discussed this issue. The UI handler primarily is designed to deal with an extremely dynamic XML structure. The whole point of a path is to be invariant over XML (de)merges. It transpires that XPath addressing eg. /menuitem[4] is not suitable for this situation. Hence an alternative, simple path scheme was implemented. * Where is the code for the UI handler ? See bonobo-win, bonobo-ui-xml, bonobo-ui-container, bonobo-ui-component, bonobo-ui-toolbar, bonobo-ui-item, bonobo-ui-compat Do not see bonobo-ui-handler, bonobo-uih-menu, bonobo-uih-toolbar bonobo-uih-private. These are the old code. * But what happens when Component Foo implements 'FileSave' and Component Baa also implements 'FileSave' ? The verbs are emitted on the component that registers them. In this case the verb gets sent to the component associated with whatever item was activated. * I'm confused by paths, where does the File menu live ? In the old strategy there was a partition of the menu vs. other APIs, so a different paths trategy was used, in the old setup we would use: /File [ old ] In the new setup we use: /menu/File [ new ] Thus we can still use the same namespace for toolbars and other misc. items. * What does this cmd / widget separation really mean ? ** the plot: Since we want to be able to allow the user to full customize his or her menus and toolbars we need to be able to abstract the following things away from the layout of the menus: sensitivity, hiddenness, state ( such as toggledness ) Other things we want to separate are: default labels, tips and pixmaps ** So; how is this separation achieved in practice ? We have a namespace that 'commands' live in; these can either be things like 'Save' ( a verb ) or 'Threaded View' ( a state with an id ). Both verbs and id's are in the same space. So; we describe the capbilities of a program in terms of the verbs and state inputs it can handle, and provide a default UI layout, perhaps like this: Now; the user can chose to remove the 'Our Label' button, or more creatively might decide to convert it into a toolbar and change the label to 'MyLabel': - - - + + + ** But what does this mean for the programmer ? What it means, is that when you decided to make this ( dangerous lookin ) verb insensitive, instead of setting sensitive="0" on the item at path /menu/foo, you instead do it on the item at path /commands/baa. This then allows the user to have none, one or many representations of each verb/id as either menu or toolbar items. ** But wait, don't you need Menu_Open for stock menu icons ? In this case no; since we need to be able to generate either a menu or a toolbar item view of this verb/id. Consequently the code will add the Menu_ prefix where needed for you. ** But wait, what if the stock items are called Foo_Open and Baa_Open for menu / toolbar items ? or ... what if I have a non-stock toolbar icon that won't fit in a menu ? Sadly there was not time to implement custom widget sizing logic, so setting a single pixmap on the verb won't work. However, you can still set the pixmap on the individual toolbar / menu items at the expense of customization. ** But what about acclerators ? ** How do I get rid of '_'s in my toolbar labels. Since accelerators are clearly part of the widget and not the command it is important to put labels with accelerators in them in the widget and not the command node. _But_ it is also important to ensure that a non-accelerated version is left in the command for use by GUI configuration software as a default label, it would also be wise to use this as the default toolbar label. So this is good practice: See std-ui.xml for a set of correctly organised useful cmd and widget descriptions. Note that 'verb=""' is shorthand for making the verb name the same as the node name (in this example, "FileNew"). This is not the same as leaving the verb out entirely. * When I look at the xml being transfered I see that many elements show up as hex strings; why is this ? * I get a warning saying that something is not correctly encoded, what does that mean ? At a very late stage in the development of the new UI handler two things were discovered: a) Translated text is not encoded as UTF-8 instead some native 8bit encoding is used. b) libxml 1 is not capable of cleanly handling UTF-8. Incredible though it may sound, this is ostensibly for purposes of validation [ see eg. entities.c (xmlEncodeEntitiesReenterant) ] Consequently until Gnome 2.0, when we can switch all translated strings to UTF-8 and also upgrade to libxml 2 ( which fixes these issues ) the following hack has been added: As properties are set; if they are named 'label' or 'tip', they are encoded into hex. When these properties are read and synced with widget's text they are de-coded back to a sequence of chars. This also applies to the status text. This then allows translation in the normal way. The changes involve no programmatic change. The changes are also done on translation of xml files using the normal bonobo_ui_util_set_ui mechanism. However, some non translation aware code may need to be fixed, if you see a warning about encoding, it means your code is i18n broken. This most commonly happens when people construct fragments themselfs such as: const char xml [] = ""; bonobo_ui_component_set ( component, "/menu", xml, ev); To do this correctly now, a helper function has been added, the correct replacement for this is: const char xml [] = ""; bonobo_ui_component_set_translate ( component, "/menu", xml,ev); In the unlikely event that you want to encode strings yourself, the routines that deal with the process are: bonobo_ui_util_encode_str and bonobo_ui_util_decode_str If you find yourself needing to use these a lot, something is probably wrong ( or you are setting filenames as labels or somesuch ), please mail the list. * Why don't my old non-alphanumeric keyboard accelerators work anymore? Keyboard accelerators are now specified in ItemFactory format, e.g. "*Control*s". In old Bonobo, you would have passed 'S' to specify the character. For alphanumeric keys, this translation is obvious and hard to get wrong. But for non-alphanumeric keys, you now have to use the symbolic name returned by gdk_keyval_name (which in turn is the symbolic name returned by XKeysymToString). For example, to specify Control-equal-sign as a keyboard accelerator now, you use "*Control*equal". "*Control*=" will silently fail to do anything useful. Standard KeySym names are obtained from by removing the XK_ prefix from each name. * Why do the menu bar titles flash when merging occurs? They flash if the node has been redefined, or if Bonobo thinks it has been. A common cause for this is to define the label for the menu in more than one place. Bonobo will not recognize that is identical to a submenu already defined exactly the same way elsewhere. If you're adding items to an existing menu, don't redefine the label; refer to the existing submenu node by name only, e.g. . Note that in addition to flashiness this can also cause torn-off menus to hide themselves. * Surely the radio group belongs on the Verb !? Due to the way the group="whatever" works, it is not possible to have the group set on the command, there can of course be mutiple sets of the same radio verbs, but they cannot share the same group. * How do I let the user customize a toolbar once it's hidden? You really want to add a menu item with the builtin verb 'BonoboCustomize' that should magically do what you want. * In a UI file I have two elements, and the menu items inside the second do not show up in the application. What's wrong? You have to put all menu items in a UI file in a single element. Instead of this: Use this: libbonoboui-2.24.5/doc/Makefile.am0000644000076400007640000000033711173072741013647 00000000000000SUBDIRS = api text_files = \ README \ object-hierarchy.txt \ ui-across-boundaries.txt \ control.txt \ compdoc.html \ std-ui.xml \ ui-faq.txt \ ui-xml.txt \ bonobo.dtd EXTRA_DIST = $(text_files) libbonoboui-2.24.5/doc/api/0000775000076400007640000000000011546335132012443 500000000000000libbonoboui-2.24.5/doc/api/libbonoboui.types0000644000076400007640000000064511546335132015757 00000000000000#include bonobo_canvas_component_get_type bonobo_canvas_item_get_type bonobo_control_frame_get_type bonobo_control_get_type bonobo_plug_get_type bonobo_selector_get_type bonobo_socket_get_type bonobo_ui_component_get_type bonobo_ui_container_get_type bonobo_ui_engine_get_type bonobo_ui_sync_get_type bonobo_widget_get_type bonobo_property_control_get_type bonobo_socket_get_type bonobo_window_get_type libbonoboui-2.24.5/doc/api/figures/0000775000076400007640000000000011546335132014107 500000000000000libbonoboui-2.24.5/doc/api/figures/control-frame.dia0000644000076400007640000007732411173072741017271 00000000000000 #A4# #ControlFrame# #getToplevelId# #Gdk::WindowId# #getAmbientProperties# #PropertyBag# #getUIContainer# #UIContainer# #notifyActivated# #state# #boolean# #queueResize# #activateURI# #uri# #string# #relative# #boolean# #getParentAccessible# #Unknown# #Unknown# #Returns the WindowId of the true toplevel of the application the control is embedded inside# #Returns a PropertyBag containing the ambient roperties for this container.# #Returns: A CORBA Accessibility reference, related to the parent of the container widget associated with this control frame.# #Returns the interface to be used for menu/toolbar item merging.# #@state: TRUE if the associated Control has been activated, FALSE if it just became inactive.# #Tell the container that the Control would like to be resized. The container should follow-up by calling Control::setSize ()# #@uri: The uri we would like to get loaded. @relative: Whether the URI is relative to the current URI This is used by the containee when it needs to ask the container to perform some action with a given URI. The user has requested that the uri be loaded.# libbonoboui-2.24.5/doc/api/figures/Makefile.am0000664000076400007640000000056711546334570016100 00000000000000## Process this file with automake to produce Makefile.in diagrams = control.dia control-frame.dia diagrams_png = $(diagrams:.dia=.png) all-local: $(diagrams_png) # NOTE: make sure you have dia >= 0.90 and DISPLAY set # NOTE: if you edit the dia files, save them UNcompressed! %.png: %.dia @dia $< -e $@ 2> /dev/null || true EXTRA_DIST = $(diagrams) $(diagrams_png) libbonoboui-2.24.5/doc/api/figures/Makefile.in0000664000076400007640000002550511546334700016103 00000000000000# Makefile.in generated by automake 1.11.1 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, # Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY, to the extent permitted by law; without # even the implied warranty of MERCHANTABILITY or FITNESS FOR A # PARTICULAR PURPOSE. @SET_MAKE@ VPATH = @srcdir@ pkgdatadir = $(datadir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ pkglibdir = $(libdir)/@PACKAGE@ pkglibexecdir = $(libexecdir)/@PACKAGE@ am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd install_sh_DATA = $(install_sh) -c -m 644 install_sh_PROGRAM = $(install_sh) -c install_sh_SCRIPT = $(install_sh) -c INSTALL_HEADER = $(INSTALL_DATA) transform = $(program_transform_name) NORMAL_INSTALL = : PRE_INSTALL = : POST_INSTALL = : NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : build_triplet = @build@ host_triplet = @host@ subdir = doc/api/figures DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/configure.in am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs CONFIG_HEADER = $(top_builddir)/config.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = SOURCES = DIST_SOURCES = DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ACLOCAL_AMFLAGS = @ACLOCAL_AMFLAGS@ ALL_LINGUAS = @ALL_LINGUAS@ AMTAR = @AMTAR@ AR = @AR@ AS = @AS@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ AWK = @AWK@ BONOBOUI_CFLAGS = @BONOBOUI_CFLAGS@ BONOBOUI_GLADE_CFLAGS = @BONOBOUI_GLADE_CFLAGS@ BONOBOUI_GLADE_LIBS = @BONOBOUI_GLADE_LIBS@ BONOBOUI_LIBS = @BONOBOUI_LIBS@ BONOBOUI_SINGLE_INCLUDES = @BONOBOUI_SINGLE_INCLUDES@ CATALOGS = @CATALOGS@ CATOBJEXT = @CATOBJEXT@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ CYGPATH_W = @CYGPATH_W@ DATADIRNAME = @DATADIRNAME@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DUMPBIN = @DUMPBIN@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_MKENUMS = @GLIB_MKENUMS@ GMOFILES = @GMOFILES@ GMSGFMT = @GMSGFMT@ GREP = @GREP@ GTKDOC_CHECK = @GTKDOC_CHECK@ GTKDOC_MKPDF = @GTKDOC_MKPDF@ GTKDOC_REBASE = @GTKDOC_REBASE@ HTML_DIR = @HTML_DIR@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INSTOBJEXT = @INSTOBJEXT@ INTLLIBS = @INTLLIBS@ INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@ INTLTOOL_MERGE = @INTLTOOL_MERGE@ INTLTOOL_PERL = @INTLTOOL_PERL@ INTLTOOL_UPDATE = @INTLTOOL_UPDATE@ LD = @LD@ LDFLAGS = @LDFLAGS@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIPO = @LIPO@ LN_S = @LN_S@ LTLIBOBJS = @LTLIBOBJS@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MKDIR_P = @MKDIR_P@ MKINSTALLDIRS = @MKINSTALLDIRS@ MSGFMT = @MSGFMT@ MSGFMT_OPTS = @MSGFMT_OPTS@ MSGMERGE = @MSGMERGE@ NM = @NM@ NMEDIT = @NMEDIT@ OBJDUMP = @OBJDUMP@ OBJEXT = @OBJEXT@ OTOOL = @OTOOL@ OTOOL64 = @OTOOL64@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_URL = @PACKAGE_URL@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ PATH_TO_XRDB = @PATH_TO_XRDB@ PKG_CONFIG = @PKG_CONFIG@ POFILES = @POFILES@ POPT_LIBS = @POPT_LIBS@ POSUB = @POSUB@ PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@ PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@ RANLIB = @RANLIB@ SED = @SED@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ STRIP = @STRIP@ USE_NLS = @USE_NLS@ VERSION = @VERSION@ WARN_CFLAGS = @WARN_CFLAGS@ XGETTEXT = @XGETTEXT@ XMKMF = @XMKMF@ X_CFLAGS = @X_CFLAGS@ X_EXTRA_LIBS = @X_EXTRA_LIBS@ X_LIBS = @X_LIBS@ X_PRE_LIBS = @X_PRE_LIBS@ YACC = @YACC@ YFLAGS = @YFLAGS@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ abs_top_srcdir = @abs_top_srcdir@ ac_ct_CC = @ac_ct_CC@ ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ am__include = @am__include@ am__leading_dot = @am__leading_dot@ am__quote = @am__quote@ am__tar = @am__tar@ am__untar = @am__untar@ bindir = @bindir@ build = @build@ build_alias = @build_alias@ build_cpu = @build_cpu@ build_os = @build_os@ build_vendor = @build_vendor@ builddir = @builddir@ datadir = @datadir@ datarootdir = @datarootdir@ docdir = @docdir@ dvidir = @dvidir@ exec_prefix = @exec_prefix@ host = @host@ host_alias = @host_alias@ host_cpu = @host_cpu@ host_os = @host_os@ host_vendor = @host_vendor@ htmldir = @htmldir@ includedir = @includedir@ infodir = @infodir@ install_sh = @install_sh@ libdir = @libdir@ libexecdir = @libexecdir@ localedir = @localedir@ localstatedir = @localstatedir@ lt_ECHO = @lt_ECHO@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ sysconfdir = @sysconfdir@ target_alias = @target_alias@ top_build_prefix = @top_build_prefix@ top_builddir = @top_builddir@ top_srcdir = @top_srcdir@ diagrams = control.dia control-frame.dia diagrams_png = $(diagrams:.dia=.png) EXTRA_DIST = $(diagrams) $(diagrams_png) all: all-am .SUFFIXES: $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps) @for dep in $?; do \ case '$(am__configure_deps)' in \ *$$dep*) \ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ && { if test -f $@; then exit 0; else break; fi; }; \ exit 1;; \ esac; \ done; \ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign doc/api/figures/Makefile'; \ $(am__cd) $(top_srcdir) && \ $(AUTOMAKE) --foreign doc/api/figures/Makefile .PRECIOUS: Makefile Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status @case '$?' in \ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(am__aclocal_m4_deps): mostlyclean-libtool: -rm -f *.lo clean-libtool: -rm -rf .libs _libs tags: TAGS TAGS: ctags: CTAGS CTAGS: distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ dist_files=`for file in $$list; do echo $$file; done | \ sed -e "s|^$$srcdirstrip/||;t" \ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ case $$dist_files in \ */*) $(MKDIR_P) `echo "$$dist_files" | \ sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ sort -u` ;; \ esac; \ for file in $$dist_files; do \ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ if test -d $$d/$$file; then \ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ if test -d "$(distdir)/$$file"; then \ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ else \ test -f "$(distdir)/$$file" \ || cp -p $$d/$$file "$(distdir)/$$file" \ || exit 1; \ fi; \ done check-am: all-am check: check-am all-am: Makefile all-local installdirs: install: install-am install-exec: install-exec-am install-data: install-data-am uninstall: uninstall-am install-am: all-am @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am installcheck: installcheck-am install-strip: $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ `test -z '$(STRIP)' || \ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install mostlyclean-generic: clean-generic: distclean-generic: -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) maintainer-clean-generic: @echo "This command is intended for maintainers to use" @echo "it deletes files that may require special tools to rebuild." clean: clean-am clean-am: clean-generic clean-libtool mostlyclean-am distclean: distclean-am -rm -f Makefile distclean-am: clean-am distclean-generic dvi: dvi-am dvi-am: html: html-am html-am: info: info-am info-am: install-data-am: install-dvi: install-dvi-am install-dvi-am: install-exec-am: install-html: install-html-am install-html-am: install-info: install-info-am install-info-am: install-man: install-pdf: install-pdf-am install-pdf-am: install-ps: install-ps-am install-ps-am: installcheck-am: maintainer-clean: maintainer-clean-am -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic mostlyclean: mostlyclean-am mostlyclean-am: mostlyclean-generic mostlyclean-libtool pdf: pdf-am pdf-am: ps: ps-am ps-am: uninstall-am: .MAKE: install-am install-strip .PHONY: all all-am all-local check check-am clean clean-generic \ clean-libtool distclean distclean-generic distclean-libtool \ distdir dvi dvi-am html html-am info info-am install \ install-am install-data install-data-am install-dvi \ install-dvi-am install-exec install-exec-am install-html \ install-html-am install-info install-info-am install-man \ install-pdf install-pdf-am install-ps install-ps-am \ install-strip installcheck installcheck-am installdirs \ maintainer-clean maintainer-clean-generic mostlyclean \ mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \ uninstall uninstall-am all-local: $(diagrams_png) # NOTE: make sure you have dia >= 0.90 and DISPLAY set # NOTE: if you edit the dia files, save them UNcompressed! %.png: %.dia @dia $< -e $@ 2> /dev/null || true # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. .NOEXPORT: libbonoboui-2.24.5/doc/api/figures/control-frame.png0000644000076400007640000006300211173072741017304 00000000000000PNG  IHDRsBITO IDATxyE$I PQ0C6 aQ0E"EvBD4FkD@6ED!$h$991oz|N~l6#p ,s=ˎs9s-; mWZv:W@Gc=~ߔg믿+ZcJX,s%P XI&'?i%LPFeu5TbQE C_@S&wԴbSX K%b>, GzO3OZZS洡*XXXYK;~Fs; \I ,THbzg Wdٿ7`T:g{ Ha|o}PqydaiͩC>* U`ҽK=aC~؄-m=UKTa\nYO؁Jlz̾c1*1jemj.>/BiyM{j&LE\>ԶjK.O`\nSqSh5$k d6gΜ$,U_#yXyMsb^*D0 ^#Tm+0I䀪 $Թ,^({&찻:ܦO  xMx0aBGuüXTQȼ/7glf"iE] U[nCz`,UUx-vug>bQQ_^nY殅=$W5}/cpIJZ k6٨ #E7au=9Z9d˘o 4c\~:Arz5$@bQQE]_TF\U 5mY6 iiMl_C*< m* ;,!-$?uۯr ch?dh?dh's @1/r/W}2OM\Vw_0+b(Qk҅$5_Q$'ذ Y,k6M pB3 P  \}kSS@Qm<E9c>wo?Xv쥾TcJ5' _Cő(BoooE]]TyaƤ#7w@QŢ3t{L-DB@F"PXt 1#*FBV P֌Xtc(0>*ĸyH\[ 5a^, baʔ)SLa "Ì@(dh?dʕ+(Y,u/}+; 8| ['OϔPC]tʕ+'L0hРn/;"ž Sy===e m @N-Zx%tIw^AEh,d7x1f͚ҚD wE[z;pYg 2Xt:<` 7\dIQe]yn!'+;"X /n Ğs9Qm&/;ٱ=b~\wuoᆩSVD5 o~@lkc!jm%e,.5۲馛p ̎E' n'#K ךя~4m9묳p,j,hoٳ]w믿ʉl+eFŋb[6tOӽ~)w߽gl6/j"qŵ[o'(>6d@E"1D32;5F D2=c+N?p,j,85k,PWGE{$@]tEo~ X[6>B;v;w]ҵ/YV\yꩧ^~ņ G/~{o:mg?YN!ea,hKw[lѐh7?E0@|[rMa(b8TX鷡k]ZՏP0ܹsǏ?nܸ￿挚&(p]v~c Rf_Ń~vu?,ʍPH*o4_WP5bSkPTa1ۣʪڇ@_veJ^Pooڛ[B}N'Pf|jAMD}{FU*<}LJJl wG$RY·#YcbN&97L7H UUM|7,#pjNN( ^Ҏ20xRz~R,6Tzu˲Xl2?U2 嚅lUÚdk6]D UO{퍢9|F&rj̉g*zGҺ q1xAT*GcjŦ4N[{+lK~#ƹ2`RQl,wrgsӼsX ioFQ(/f'RN jYnXMJ}˸SA㈴ /luYeb_I-TM 0֯V@ݑt/ĶbvЦWYƬP թ5D9_v(Kko*o7m/4uBDX˵N=cЦQd9-; f>wsx5Y,l][5YtDM>AxP=R!5 ܴ,l덾?[n0AT0$ڪ0[[B`HnrhcV-ddH= %-oSeyUmW6ˀUK,P@VkWt&MN(;8ubك4J-tZJS_6{gl:U8N2T,__ YXќ0J2vE'bW.g CmS+_e)%.)QeªsJ^>KZk'ZxDd9aJkuQWWT+ Je0A>TjkjŦjڀWeU6˳`NMD+Tvxnj@XuQXtc:x:LXa\Zi0aH[WmkVx0]сQYlxޏ5+*TZcHĵQq #ˣ?a>OeĸY,Ylumh)XXX:+b6l… /)Q0}K.Fj6;5ÌXXXC[Q1H*7T dK,ѿ\6uz9s=&vz1, PjګO I<3KdzFկ~sjhkɜVdԔ);( =ik᯽ZQY߿3ΈN ^ N?.lʔ) .DJd (ŧq JX,PE]]]3gΌ3wG^xo3|sˣ'6￿<>q%gVI%ˋ"M[4mf:9&°񣓑u '\yQ~y$5kꪻ;x)-8*ގWexbmb1cƚ,wJS~-,O<1Dv >OZ06M2 \'6vҝ҇gQy@͜xQ|ɧ~z8Ss=뮻֜X,j)>L3wc*mj׾-h5\p&~Y,Pu'xbg>WDhr-뭷^:b9`y@(I'tWDQti͘1#l3 ОsC;kI} &bpI'EQm4gˎ ch#DNPF<"{ꩧv:<3@;J}žGrfgjU~_myJm䄱XtIfsڴizjEm4";C$c-ӬX/)ld,?_~UtSN9e-<7ey?84W"=,C(,~tfUtgwuuIl.(oymv' ԫϦj͒B}sm֔Qf1~IŪ\|$FY>ydڨݕzPE>l}Gy$c+RmYWWOӃ:hy4@v4+Sģj6Jrk65*׾*V[mu饗FQt'e\e)jHrPN8aҤI˖-;cZyj:7M]:Y˫'jHSb=RU(nkDSӎwP9=S?4Խ},QF򗿼Kʎbys3 6$g, o} * LG l"]n >~t7\.m£{-,ȑ#6/ˏ>h +AYl55ֲ8_US6 mbXwއOz\M=wN6mA~6vvj4=X:,L t|9KYwuLj¸ȿ%ģz~%u 2 U ]ZM{7$nhSRՊn7|{;wnN5W@FQQ/M Qml5HH*;ASMX6 Oz\4'Xe_iv[+)?)S~X@uJlc2o'3'wϥk"4֩ R,lDSqqP[j GӁΚ5k[hQjz{{_~e ̋E>!@\Q6O|b-x衇vuׅ mC񫡓/ -HN;k\㟥TT7x$`r:yُ>A 6衇g}^z饽oε[oʕ?y3F,lmAMݻ0*Q*8meTqŒ⽗1MsLun[5{WP\hY̵i~vب_/\mzx5[Ge͙ߣ,g>Bn*x~GQ@C{.ϟz4We5y793ژx8g_s& QZ1H˨k+)f t|}[3GGY㎴GeuJ</Q}L#GO~q+}2v&*r*J*>< 8?iww^{-ԩ(=RT /լĸ~DeL $!R͞w;M}ʸ6KTS(yƔ|X;FI8!\ӨuP2*kِIa [_|Ń j=]?ɿc!Mn2ʒkc8m]ʞD#yX6& :g}:(Mrxajj棧kbuWU%zufX}1zxs+虓O>'8Ã\ҁ}yc~?Ug?i m f-y|֧|*дt.`AYQ9 j1F[?W\qŴi=˗|-/\Q[q XnZE%KgĄLՊG4kS18%|X\Yя:TG#q=crtl-3f 7;k^xH6lFQoyhj):ֵ@HT1!UNQ5]fj6eM̩}2dNGA 2Y@_TvWd*"?[o]w7MYT犥y$ KI1U9ժ8 jU1frIp*[Cm֩6N1z#TǪB{D )*v'BR /-JB}u\[)}ao;yo;h(x衇5f̘Ç^|_]]]]]]F#c6˯X'U5b-N,dyi&mOl ˲cNe~i\㏟={vN -YDut9䐽{=;w>}l͘1cn~b믿뮳:C2dFBΥF+H:WJ$*S+Te4k 5ޗ.Lƚ5oA.lӱbBvmh} ^o}){o=؆n(s=.]l6{{{G!gnmooo\ǰaä廻[oT~BΙU)Y,*.5<\S'>񉮮7a O'x7,m˜ڽkU1WJ IDAT.R ̋ۦdj&lV~#}aoy }"K,l'M裏n7tĉT8nܸo„ ",LwOSkkC,Gcqb=R5ڥXy,tsyWv?FMG%Qߞ#R*X;zK.Ї>VLa &ˤ[bcuL/TS~Ņ]9 I_O[-?ضHU2V]j^쨈>s6tЛo+_\p)<{ުf M06;A5ȗ^Ĝ @n_ƙ%f(9j 25RS?֬Y{GL://Ռe L?|ٵ!U\XnrU|Զ#;vQ$/6(ct]I-GG,waqwRKi0عqh3MQS6r[ b>#뮻z뭷?842VoK8I7lNZ@s**1H=vErTcSGv{xL'c~(Y5sW~m6A ww}?+WKZGo}K, /,\<8H0A?zjL5T{bSe~s}Yy*%fl&wzT[cjݣf+K\tB ի ?oτKJϛ7O-l4ӦM1cX'zz-P09 "`eƌ?n֍6u?O.Yl?oAG>CZ)o%KYFu կ~u'F0Ke{WMYH~SQ'f===FZdɻ;sv(>+W^zذaxOfoƫoO>K.)>Z@~Z=`ֿ'x>{?4iR1 4hРAUZx饗~s?.@9x^,+F7oԩS/_~衇~NZJNiPУЦb]zWgBg IQQ@!c/;L4YECdZV2bsZ.of*U-7 cjGrs#dŮ^z9Hcƌ7o&lRv oM^[?f*-0Ƭ0]˞Է^Ab3ό7nѢEeRnǤyd)X6=)&F3V85 όZ*x( s9\}O?qΝjDvҥW^Y!^r'! 8%)0q/מla? c@';e]~ Hz5E_޾f#uᚽDKԻ'#GA t!C̙3'l"{omg.74ߏ]rJl4g8$lRA ?d@>|x2]xq gϞ}I'[SL$4~Ez Nu-9^[T%2 ]`#;w/zGuԻn\p¸Xl̙X{N3u; (1bDDv'ttE]t}?CΟ?_]ZOOϚ5k\% 6C HdUƏ?jԨ 0֒Q}K_ԧ>53FZo1c,),?T^:-Acsڤ08cIo=sj{l/~ꩧvy_~*k%I}W5 T_@3 δ^{M0Ah :NZxq=UN4V m}Ƨ,BƘk׆&6M [Jje8]s5[+_u߇o+,>ѰA,}-oG^{7޶v;/ oX1QgasR"eFVpRP`umR}8~UW~ uJ7O}ZNz=bʻ4mF[Ն6G_/¾m{l\Yq۬91Bb5ibd3b=_:s hiM T*DǸyS!1qݜbJՍv1i4T69w9dkVY'ow%?3?8\D<|PmIkdKFjT45']Uxm9jhH.#9@cg||Oa[rYS,Kmdgq;Fƀp; k-YǬ&W}{4.Ov]ȴ2blEz ib{Rۖjھ`C?=:jVtSfM>nQӲ4GߨS9NckFژasx(_Œ {qf)2 UfTiKڴnn2Ro 9 hSҼ}cS,1ǹ+Đ:qRMve/WFaZcYwQbkDvwUB߮"Ͷib%w<bŒޭ&d̳/ {ffu tV ~piMN@,Rb;ub57mS/([goײQvާ*" kCYRvmHg(hQ83~K F~{9}D 'NPuJLؠ:ՁKImۦʲ*Zv5åҳѦ]c]R]t3Yzo MKSM-f}ҡr5_%N}}Ls,)W* m2rm5“~BxZȨ,)U]5޲\v3K5 eUs#̌GO5JaZ(K> f|zf_YU["tf" 5L<˶F)Nv]+?ݕ#fwCUQ편Цi3k^I A_gi:̌UA%y1&צ7ġVm4InҦ3خ& kxK.,om6*3Iz]oթw'jZU7J=ޭz2U )*):{wBjz bL=JONM%ⷭtx4j*TRXbkt~ͶCrrj]Cҗdy0o_?1Y}mY*;3W^yW_qU˗/h4=zX~˖-ś <@["ޯ؏~O?}w/)~~w_i 8yu @O<;h-:tN;l6{lͤ?rȸX3F ,n;餓^}_ƌSL>޾=Gm]-[v1|c{W'N㏫RNӷ?O BeI12詧5kСCgΜy}DɧeI4l*,̵AOԬD(w*}@W)cRϳS=L`2تV%WU;FMNzj/WԸGr)(,㤲Wb,@'Ҽ`"65NAUos&%6?}ZM'?&稤XEYR;FlJ߲? 8Fglz&jVYA檵z~5g9e qFϓO>[wuۢbJ$^7:odoҷI͍Φ{MKgD*rUz|_T&1c7J2B4/vMY5nI\:ʲf͚o}[Y#!d{~^,Zq 6J*K&O.,QYrZ7Ⱦ|Y*־^Ƶۭ@lX,W7x;|+/;`}r+LWy_kT17Mo_,H6n$_#RUβGb GTƾ{c_#q:#WJWT I%}~gH/#1Y,7~s=wy >X|Xoh kdD9ѐYdᔖelr[2ۆ_b_eż~kj-dtuu} UիWN7|_~C hk֬y*Y)F3QIE 4k֬96| k?w]ZGYȓJdPl8RN*XJ?3gK/jbm]`ԨQ bk֬RɏN@ @bʕg}e]v=L81V(ڝwmw_bEK/s\E 1OoѢE9lٲ;cɩ tҧ~R # \pO<1f̘ bxo7|󜚨숬]z $q:^9Xg}cy衇Ʃ;Z ;)<ը+jh"I=o`zꩇzhG?kCȮ!AeAĨB:Ō3($W\qEww3 w0Æ 6m w[RGrc`zUjMik55KhT뷳6zff苭' l?RUE}ǹmrw>>|~b|gΜYL[RX&1X1*Ն1ͲVUrqJߤc?bam5aǷ0lذ|;1c駟ޙ׌FB2X4ǺͦGbjk_ kӮZQ})#>cҬ+-=R%,1xcq_NG?KތG_siu=E^Pbrvm D֞4KїYU%Fr Lsr4լϊ,2-c.Gr6:( Y,Yf%NQWV+1ZU?践# c Q~UªSEþf Y,С>~2dȭZ@[@rB tٞYf^z7ϵ!?Ynl Y,ђs{k/vmwuZ}P ~wG)]uatMG__9pFQtqTJ+K/bZX#L6mĈlV'N')^{?eʔHPoX5@s-Rf[2Heɋhkj2ײҮSD8VU].⺇ׄ IDAT뮋 N=tf&"ةA@fĠA>򑏔 &2͋M>Ʋ|$LT`Sjؐf[U%?,ƻ1I+l}5ZnX5Fcڴi ,8p`NMS bko44_i$~.kl(6 ƲQh_ ;V/KxcV~]axlvZL6mʔ)SN-;@q2(7U5Ԝ,T%2qGmqS }`2V@Cv OVK.=̙3x`+@Gɔw-hNQm;=MُڋK #mm#g}~gGuneG(NOP7#\!hģQVW'Ҭ̙s/]tv뮻W$yUJGz"ܱ T$N?ҥK?яΟ?:Py9UFЯѰzȲ/uBGTU%? Ͳ/0\mugO?[o(jO|#G׾UO'Yl*.6q+}ye\CJ6f< ձrz/>Tm7'gl$l-\p]v9ꫯfD:m0k$@*[#$}Cҿk6c-[,SU:=rU -V5khРAyTN ;qrjժn!Wg ^qwyU Vb쳬*dE\n ŽךNq SOn} Qjc񿥫ebUtŋϞ={G}w%˖-;蠃f̘zW^y%`x- 'tW 0k֬C9dȑ~5>~7nc=Fhw,x|KQ蟆U!Vt|j=P<~5F]Puk26Uw_J,ِ=U*rMZT5u:!U9#8oyva;p]w  cb_kS]|N4UE9d4yIfCTa٨SƘH{:w-Um*R1rJ#H#"J6iT*Ʀ?C_՜Tx'O~gPuZOʨ쌂|𩧞`  ZN'6LLr(7k6Seҥ?_78Ld:Mj-L~-J(Ts3X_n嫦XT[ouM7EQtfz?qj KhJI6pm5 e˖{ʎc_i=hM'> %XJqqy雉 %7IHE"CJ5-RE.- R ñ/?x#}I vQGuQeG:󓶒9gjW%U,`,#GT;ɯǫD>gLfjSUb=I=5@rJCf̙<о~jRħ T%*JZOiT[RXqzC W_}uŊeGlŊ=\QI~8Y4ԏ?裏:YfYn}sΙ9sg>\cEoo}wX,%cIaQcfk6[neٱ"E-ņ'?o&L(;@'"khԩ]]JbŊoh{yY,gz=}oٱqw}k֬);߿3XkM'8J+WuQ˗/Цs9'O\v | 4h\sYgUv8'@'={IVZ_bbP7tQGl6O7޸po^??bQ5d@={;曋k&.c=&LXb/䒲`^,С,Yru}c[>nAZd>hРK/n+;e7pÝw95kDQh4>.;4U4qnaهrHٱ}0,sAEǎۚfnbβjժSzZv8x"fw}w1k֬5'X&^|;;|V^Eќ9sƏ_v\qxַ.\o[^nrPc믿@йb.\pu?8iҤ}CnaA{?? 6|0h _ÔP+V ,fm~_1Љb[h]wu]ww}eQEK.o{|s]guʎ,'|mGy7~< @E,^xdka~ Tn`#կ~裏f%yy3f͚ / /,;T6l3wQFhȐ!s̙0a£>:nܸs%(xꩧƍx| >|Μ9;O?=n8Śm/rQ5\SO?~ܹoq@ZlYb>v'7n#|e%Idt,,Y,TȈ#HdtT"kXYO?رc-YX#F̙3D@>|Jd-GdyFTȑ#̙3~]ZϟJW}SO/rWnX#GoO>9~xFd^{5q2䓟dXx5kU1!{~@YZlkDv#7fwMx~I {C\+Vn^. C\wYg) ^gޞ{{\tEW6VX,TZ<"?q? hWdy6 Funirmd }GYI1LJ#x]iǓMX,Tů~UbwiW^yظVnWplKDbyZ椫,{N֧I1Qq@%cǎU6lا?FhѢFB$Jh#㭒ˋåY$aŮvZ HHJ֬?4k*;lQdE˝U厈UMwH) #yt=.0 yz{fRK=U§v*`zڮ>>\p< k[|#x$_Wθ@bUᩊI~aLcK9`s.vͦ*8u {lj}I;CGUd!=PJ])K`bYO2nX0}o4bI{PߙƪJUUnߖeU6˝ۗT+;kyPB~,6TkT|eTB5z~MF}0RRQKCҷ+]e^ ѥ:Ӿ `s.YoAN, Z<)dQS7/Y޼TiNIiڻ}ǪAx-1Sy1`Id MS䮽|.QB1ޡnG5۝!JE~K6ioșigߝ$!c fgI}/AZ -T#_[|*>HU" S?ҥDȼLYBjj#Ms%sb7*{ '<'e}yYFEF\?)WWOfq:KTbh#rD@vjU5cՐEhVy%@5,^,/~TK Q.cwJFSņ4ZciHI#q)Z?my|ya4kȩS=%YZi1xH†* Nybyb:iQ,;e٨w{Hָ֜\S{ jPe65gy![ݕ* `W xdY.cu槂f_E6m/lHUCxFv,y%w9r-;a)K 2by 5GjѦi.ǯT$.D\z|mgv'&`FA& ;9X{נj4YYl΍:*I)y7괡 <[zM.w8r^0BuW# &>얦@|G "k^N&ƜU1lcNFK6osJey^ I_D~dH{(ԤUc7Quz).ǯ PЃeWWW`F%5n/=ⵑńiߖ' ?^GkX>ڌT8>el.HZ^G6X"mx:y^]E:jg[ootG/ޝrU,6eLɒZD׶**h] 5KHz\яŊ:%U)zz`/.RE5gZ6]sn`uɦ!,D߇Ғ#Y+q:ݛ읟Ք 3 J`<0fli r +{wzjOZ)VVs4ipndUД Xk2Y7h!/SBM˚J~eá95"T./.@ئņT;RgUr3xko^_4k(R.뜱BiUHWy׮eC~sV ͝³lfٷ_1[yuUw:Þ~/b0 f/iNR+u<"sJdQr#,_jT?7D7i$%mjŻEs>)따,ע}Ҷ<r:zn4cFAV8@?i1G,/YQf[csAM%+aM=vS"Yky]SwYՄS[wn8:r;Gm,6{}j%ƿ7a\ofMskoyPS²Ecr=7#,6 F ISI]jcm#i)qU+XgEx*vMŌ69c!<T!x`,֟_b0UT0}Gv٪Ub/Yl3 rRԬk;@@d?ȯdҭT'(JHT -6O¦+1ͶJ"մȥ4c%Wh ٮN)#q&tΚ}IVyi&=c3NUiE7u56jm9?bSEőoA_q+UTh263/C.wPZIhmB6ZXl>m] 04;NVռ`U}Ƒi s巛)~g/)it}5#-S|Ox /i*C${yo/JއMѯUmJQP>׬4(8A 26Yֵ ULYlie_8L:/fCU **cYօۧYK]; cOp?@Ō4MH/)NSSm&)gHr2ۗߜ 5F]O!'daE}/T5gUY]HD_i~w,wG{$:X&K_lK 3 @bMjPQP]_q-Se{K=&<3<(c{3R vk@:W^yeѣG~饗r2V,PXYn\*j6|fk]ERdVuW?HUxGZ(>;ɲ+J, ;,M2Z1x,ݢ"Mhʤz۩4ROJ>4{]gJ^%ov'kJؐ_W8E+nKE IDATDUՁgMCҚ3)" )WxjfcT2by 5mNȩiM5LiHZs%=+TklfM:"G/y7Z] Ug7Ž,PDMfOdQv/ kr(3 &7wfK N,4W}ف6m,67cSlE4QyMUh:K+ Րwj4x?`D8Q?QYnPk"t*͆6]tF5j6=kuiXPsRVz1/6+kKhZK-2R;Ԋl؄k+JGch?dh?d9N/կߝL196"U3}|Y #bsTJW:!E.GdCTUHF+9J"@E.Ֆ}v̓TnZ;55rt,`,'ڊiQ/.RX寕)_i  r Yl~3lYXf)`FA\jf$LÍaS.iC1S_#-B+iXFnrmr}7żجQJSƲZrc~[e&3bŶ.@!mW5X fV FG/x U[p~,1/֟%D-nˉ@NjtQW|{45pm3'>oX[TM&- /ٖM=ɝ>BM {)q_Qc-Vuߡ@TNkKdYkP_T`kr¸T=N$nNKiԩE.U-ON#Q[ r#鐕Pj[P:x`2vk/ykُ+B-@%pj&~,5k`v]),RP: hJD[VlrdTj(y)ƙ~ULy^ʢ1-ztCQ~K5W*)1JC @bK^R?&I;[&:42Z5NFl`'C`'66$kزgQŵͬ(š;ؑm㦖xilf^}ƶa4VJSI;9--`oI))Cy`%\fְ27;5(S v$.gCT|%XRfHC+Mq͌}-zdhVĻ **1dzNPf=\܃0z}4n]uD0,/M4*1{N8 J_h?%X@c ]FAsE\% SY 懊EY~85.)qGdK }J)scԂG(LzqZLy׍yCrA,F*IG$\Lo 0^qxJ陥|?p_hH+F9眳qFAܩS{>S u@ԩ͛VyVZՠAU0xsN.H$R3N߾}+HPZZl_d2H`6̏?m۶UD%0x%rJEpʷ66s ryzUVEEE?N ZE$i׮ݮ]V" h\bF*NQFM6 ZE$ Z*A` Ye"3ѹ%=Ѽ/0´cVEXO(iYɌL4-GR]@0?p*Lo@*eYOc W-RżvR`R(KAxX2:eM0xH2 i$iGfֈH,ʫ\(7%g{6< *`Q:2sm3M RKx9-wI㼰~l1w95@0GҴ&x?+ܼ,B!r'r]lgPi u8B1{F0?'xéqȈ+ s;ӈ]kH$GA#m iu`HVޛyƿ$-xtLn[9̍άfI-YWp8,c켽@!T0Z@ v&oxO'b6:2VƙunG@zPa 3G' GԆ.:@ Vt_gIh?$Qwk̻< '"[h0O풀fdh40xHPt+oH]aQHCp0 {?8=˫HHlW_xa9/o^37t37nՊukG)eaV>O?adFffeyTќ0hRåe4T4#Ij-onv^[y zͪ)a}ŇS_a4lv^:SL#.ʔB]y.oֽ,:ej-0 SZ pC']3fרĩG40{Iph$ `QZ&_ =-/ c~P+$̗=Ԣ֠y]s)g4C5/aYhaF&#O9ejiLlH > `q0x KF#K^HRMjI,IeժUDCA  \}  1Np;ȑ#A@?xSH[I5JF'@\xU~ر]v5jZ ]v-D0r&CN5Iu1h!"~_~%hha4bٲeeeeA`/O>VĥAAKa4!5Eg5j.wyg2wܶmرZ:l4ĉN d81̃>L&㎆ ;om݆ i~*9G_ ڵk!@ի۷oq $ۯ^zҤIC Zz@ \gϞ{2nܸW^yeСO>dZpܹsϣ>2wƍa4 Ym۶۾}{VVVrHk,SѩkqM6[޽{ܹs@%L<D"1fB#<x0!'OZiիΝ[z{DzwީWv h@/1^hۃ@œNaLHoÄ41nݺ{.//6mZZHSS)zݦM۷cB0p]v!dm4G0"H;`B`/GZ f͚vY^AL&۵kfDF***>Ҙg S)0! b>zA:f͚&L2c q}_|C0 0 ғT4!dy[n5a4 ?OgΜ9bĈ~M0 .@X ҙ&M0׮]RzMABIIɣ> EVVK/TNۖ-[: @Ž;B+h%Kp A !v:3srr6oޜS,a:;w5jT*6m6lvH~uݰaâE.rX }@Nƍ};=r֭[wꩧY& t"(**&OqE&#@UTy۴i޹sgzn̹s:z h6֭HqƗ]vٱc^{e+:IEҭ[^~}AAA !/rԭ[>hݺ~l$}WԫW/XzuPҠ%$4hНwYn@R 6 MOHEݺu[vmAAAqqq 7no$^U-l4+B2'ӦMKh/h!\[0!iIWTT 6`Q@+}ѻo >R?F@0jժթSgȐ!yyy?'|ҧO?hH+FyCfp5Ce&.&6CN->3q+rΜ9 Ԣ ,ý'$+C$&0%C eee[n>f l5X3tٍ7KJJj׮]8knٲe͚5=`L2# @泬[ÐKܒ( .HRškNE7ʱmeW#F"I%K.]teo}W҉{-[ԩSQFw^O/++5k֤IHu@0 nRq؎_틹.ZFmOfh2F:r]/w}w?=N&Mg͚~ݻW-zjΝ.]:s[nEَA 47O M@ @rZ5uCҎ0O捖fm]KqT<<25#cD nZQE yH׮]q]wu?ϴi|nVZʮ.]:ydj7=!Yi5a ׆ ^emejFcW]ѣGO:k׮{y衇X۷o~~~R mA/ V$wWkewL0!##駟޸qk2yd})c8.\{qCD*7 mڴ !};EEEW^yL2 F@ܘ8qy2)^Ҷ5/#gD (٩w*nxG1ұc^zѣJ 7p"Ç !g>fBw=ψf$izy9Hќ7+l10’W~#ϵAfb"q.\!Ttd ը}# j3o<-v`۶m Z9|p* N ֏^tKc=/J#Ab[AWFGM㨖dHPp5Ӌ^J.]+A 3pSyx./e̙\sMF6lؐ4~ح[O> b ( E LFG?IuOW_}痕mݺU!{׮]7o?,]T4O2 ^4E#|J|a4 $W_}<3gddtMɓ'@d7o/bذaHFҚƍϞ=;hX| ,(0@cMW FD"1a„=2vAoy x8!b֭oV ů 0_*|c[Gʒ;h.8^zQCBȆ ZlYv]֩SGYIFx "g][N7lٲ%h 4e˖-]tQqqq&M<ӻu7nĉN/\gϞj+**!a" 6o@1gΜ1clذ`ɒ%7bo۶3I&N٣ q߼\tFybvAe2%O$*L6U3Ʀĉ奋/قE`po|] CN)2BG{ n4Ư%/K累AAsq)mk#8j}G}6rھĒζ{,/ J8FQ\Wʂ@8 k75uN:#n]E{O>{֭ҥKO$&L^'(N٩SN;m۶mvLanWÎeWs(NlK\"۽^-Pelgp? O-i}qTZzӚ+NKȖW<ܟKM873ґL,&A!%1F.GBqeʭ㦆ݷ2Z:َS{ 4xUz7cɒ%]ti'K$!'O֮N%>y[COq1^)`^]T[@3"yIlWM=VNH0:YO ^GE.$gDI)hPUT:uN8/\ԬYS&ٍ7ޘ;ݻ Їx2`Ѽv2*?f!qGG#yHm}^itJwӾXѰd lK œƜSh݄a[njX՜q"zn}G~m88 ##gY|y˖-ѴiK/ѣ?eί}iYI^5u:H{Ӌ+Mm(cAG(FJ Q}Oƿn@y.zF'Ml7L#7pYۚBPjcn9"aYCbFdVRSN9%h Cm'L'HPW-ym--{dҵaXH,F!$Օ\$ ^Z %W%=V,6EůrӀ󏁛DN4dD]LLz+FG-(U[1N]5&}6l=;5d/P,q{ouմX.?7+N޲mowtTdn3Fa4vp ZO< m0FJ$&wo1{dr{o%ZG5q5jHfٶmԩSKKKʌ͛7ӟD/K۷ˋ4W8ɐp$*/ V DF3OQN-W³N&P+\Σ1bĈ']W_M}=7x[V{L2֭[GMoر#3>t'|FdDʠσa3m鲼4tc0+ wog͚>8zj5xVZJU?7nLgF[nĽ~>lQG2E3Bғ?ɒ%]vق z1o޼|6۶m{ 7L:{9sLM>C..jժ9P >e@ \@;_bl!W/Yқ "i;tuG[ƲzBam0KdfizR9nciݺG}t'~G_|ݻ_;k֬O?Խb;D Խ#Z)IZFiǦP,NPo4^vhKWZ^^ccȜ"uA[n\,V[i̼.K$ntGX p8e˖hbʕ;vܳgKM49rd2>|xH&=:Z0e<ᾼ49say[l0rk酖,c8ptޅ{2xq\ͯm.Gȇ~⤓NZlo~s9GbN8>1c{kϠ0 ,oUW@/pe.Q]`\j^Ԉ j:Vh,`KFJJJj֬w5jx衇ƌӰaC\"{O]7d4~ ˶ʉ\a{m3*g:,YφGAlw%v2%iS )c*QT1mnbtY4-ҙڵkkvM7v%|Lǚ@[v^r9va":yjsa٘`&)/&+qy%/0I^"Jҗ^[]7: Ffff2%+2NŁ̜<򁗣(a (d*Y+7زX[ߑ*\~C캾PXWb+!EK22;r'S{5,@K2sV~ glGzXN"C}qZq Òi19^ݻ=^4VжmKd.@ٵkל9sV-Ղ8=%bU`%+?tF<4N@j{w,XEFobbN`´/PhkSf೤g)Y?Ta5x6JcRo۶m߾}LޚD pG (e:MģWh x^l/6l:%.dm^P ީǍ*4<$!7oN4)h9H ޘ:J0X-KN-{-e. f1 Ydlʵa+,Znnq^AMD%Jz8dm A1!YyI ˁo3f͚Æ :tGfgÆ ǏkԨQzǩ_~ժUj69Ìl1f;b{(Y^4Llch5n4 nK$6,{e80<"`(A1t[o裏:⋷mF/)))袋,G޺uk K.^zeyh@@ Hȑ#O='O~R>hѢ+W?3fz@n }^5\ӥKݺu֭|Gyd۶mݍ5b?zqDi,E=6nϚ/Q;>H />餓4;vlh%Wf-~b<ŪT-l^xR섾1X7ƊwFLMQ H͛7{p '-!94}YL^RRo+Tb)V N${/^5G^4k7r^yݻׯ_?h!8iN:o SĦ J^Ђvtk_1R\\?]vׯZ YʚW7Ig֬6 )h2uKݔW-iq*Y ~m ^$V;- '][V@ڵkwlݺ.ZvmrdI3IP_sTALU!3VQ]9R.U/(#N%uƿ>ב q'ew# ԬYs…ݻwߵkWAARyJpZ0E/m6 Y_a^7d, (WڐQ+S+^E۴+St8%]~RbAvقbUvt{h wyo߾?^7+6!3$3:t Yޣw"(SUvdSt2b̹ Tu(:혏eIwj-(n] 5cƌ?Z1qz ⳣSy7y0{ nR(ԕbΘFz]P(pt"z|饗-Zt-Y+FJISbͼ53ޠDy*֔e8GhU b:, ’zsj\Jpta4T"H<䓻wSm)$ G 'W˿L͂2zdTbM ^Z9rTWLbz)I{5{4)LAwѭ <1| 3k{"%LVm$τIwJƯL.۽jak}HVoyU Nڌѭ@::Z?dgo߾fO<ѣG<ꫯz#G޽%qyyy:uf̘A߾}{II7wTc,]atIIu]˰aÞx ]~ۛ6m 92}tfzd2믿A 8Rw8[ݤI֭[{$DPqС%KL8+4hP*U233'33N:u}W5j`?:whB@8 ;w̜\PaÆݻwkk֬ʧVxժUs *8t?}{fЩ`Ydo{g\F3ۼ%v~U#m ƾKhA'̻'C ]bz4n,HYuӾ}{qu#?@<6M2K"z[P7hP!Xc%$+WVZ8eee]v=ijfZn]9EQQQ۶m=زe,ǍWPP@啋ly5 i].ZA/ԋ%Y@ >w08c ^o;u WZ5oHKL0Rخ8mc-~^AgD)X/o~ȶJݫuSJ*#E ʱU%0xJWfH5ky*Udff2chBH߾}[jJcCBFyueRqZڹshh/(sW0CpgZR|⓬G:y5`Ԍ_^]IVnjR{W92}X2BO<ԚI#Gk$۷o߾mg[rfmNTҙv2I; /) PVN%4d2:-Bk*{nh)#N4++ڛxDEТ6x_z#'AZ#-v2eЍGɼo5-<~N< yfuaX]&é*R;̟?[nٹsgNN}ݗcIжm@yU_8x潚}bdĀʛn~DCyBIa*L~- 43;9N4WN`i_YO=hg$gyfРAA Ѻu]wycǎe9 XMh9{wбPx:O!o-)f%+-ӂmSn_-D} `2dHH"~p…j;K>qdҋjv?)hW!$/?̿ŚSWe|M9dr: ,֎S jж'&:QdȐ!Ccٷ~>lΝ7=ߤ =)k9aӿjUCp4r-oR/^6XN_`l%H^tT^?+WZ\ 6SӦM-ڶm$O, aBI!v3JK?Q k@ꪫ:w,Nsܹرcn㏃ zg7nN'x^D1E<2xp#}q ˂ YBٶY `Bޯ']hö^vK}owK-ʀZ Nɿ3fy{~7\Z7oިQĔ)S:tZ ,~CW|p5%a4_2m"$il?rSp{y3f +q7]v=W_Ccǂ%0}]gV&z3輌@|ϫ`k7 %ʨI _qD~q87-X>f f,Zo޾}{^^O ¢دP a4󲕾~Khd4an蔑GwZ[[GF |ଳΪVرcG>L&}l-屍xoБ68uѣk`beZL9ʨ6ѻ1- c8P a7NotF`gӵX y%]O[\iӦkYvmO(z 4TENz 9!@RnGZnP3g>/`"YE>2 1t쎦W5F0 TӼՆ`X|+OM_۽ٯpJjWm=e8p3'i|ke#C%^K]aJ2//s.6qOXH@GՆLvAk!܏uaW8e2h+de|IFӐ;w-xvܰU RZvutT&Y0:5n Rdg֕8د$qj14pCdW1,o<Ȼ9NJ,$p]ٕzqiVz:ujVL裏j7o߾rf!14pIu0דI62yNK|f3pNr`H#T*3J[+oٳgB~vmz헕]}{w5j(_իWWTTTTT?Ə߾}{:wܱl2#e?(qpIhK?~|nn;6 1 BuCccG,ɘ-A]LFIX# =ML#L1= T9#ie+adJJg4-A5-Cuupŏ?x۶m'|y$IYޡGwQN+Wp Iz6e,kW\nZ_a0an<%- oUVj2Ѿ}{fI&:t(H?p@f, 9&T&o"6bq!vg}VfMO׀uYgu|-Zsrr) ̃7#:#I8Up֕GYX"a$m:u긴pر,-b#oP 0\&ᫍAʶƼX9m 0al!`9{\F#AzZ$mG.N^XCoW4" f,M҄.]lڴ)@ R8 i!(LlUm,Ԕe۞tRSmP^"a3%iy _m&i.], ҈[Ao1/%6mOWޠAHsQ+CĤ#$O lO<apI1LgQޅ{2xq\ͯbƌdw޹Ai\Z~[ -%2ϾffRRK&ylK*#+f~Txl J$ddk ׳mFvkוG|QG2A?a ׆ 7v"wW>SӖ!g۶m7tӑ#G4| !޽, ;cqE0Zxqԑf.qX\"[.k@~ԕ[͒Ԉ8KGu%6ohJ@g-X| Oq߿{_}Uq-6/N:^z'K0cAbS/ӔxnJ&NmؖHAݚtzh2[bЂU6(si9'FZ=k}82]s5_}Yg3f ۗ#Fknź<.ߒC(H<8{>dF˚u)׀kµ]#n.˧t`&vWNOVy=ɺԅx#w2\,3x#aÆ-\Ab3LVt\{4+VXzuP}@92g,74n&2iA2+6rr1ZzjAySz/=%}hc6׼@78|5gv#"5+{2ԋJ7S駟~srrfϞ}'2{֭[uܙ|ڵvrj׶ϣ]My_ #K.fIgvz ki25QiA/*&v_ݻ1=qyÇ8 1+"cNƈ8Snǽ5D_1يw… H$^z?_弼Yfgd_͛7WF21̅_^7W4iN4?_ 4e-;+H VEle])֬7;-EȜ23'7q z'|2|fݻw"}ذaO>d*e˖O<Ѳ>WީCjժ_~=[Y/_ޱc;_wٲew9NvvvNNίZfMLE@$ltn馠UvX~~~ii?h])SV@o9nݺ.]D.N}D 1@ffĉ?͛7wuӦMA+r@z|e˖-@ Cnn… ?M6I/_wmo֬ل 4F#//oaO>o޼ j/lݺmAx$]VVoB,!J<a4 `駖-[iFRBHժU5F'Iw1H_' f C"0pB##G̞=r굌h7a!Hzk׮駟.~رSN=|mJF@A Hz^{ܶm["\q|2_LF#{BC؅1 IDATcM4ٶm[Z#;vܲeKvv6soEEŏ?x9sx-ѣ]m?s=묳&޷okժC&pi@[G$Xt;惘l^@oaʕv$Yf͚5])bF)+Gw v^b|QF©JL857nXoG#VZEi߾}BFF"H7-2 8UJL %gFs0Er0Ep9GꫯTҺu렵F1 mhmhɦ YvJWӔ%@#k,ut_j*77i믿~ʔ)Hu$T&Hjcʔ٠ሰb28NXѢP`Ql8* ̜z/СCf/O^TTT^Ν;?7nB!?A$ʡÈ3K~Xbksrx"Ӓj)˲3SLyw!^z曝:#33>1bĩz9KNMC sjVWB mC1O=dpEÇ[hQPPꫯzAnnn>}L&{f{!0X|fŊӧOر|5kܹ믿ND"ѢE ^xzݺu{ꩧl0HgFeZtc7%I pEddd 0QUVBڵk"W=z?7oޮ]/_~eк  :O+)* r21`ʕ$akcǏw%J)A&c!jV,flƹ$]lfs&nb̐,HEaa &?A/{?=|Eoy=My{+VXn]]]]}̟?խ,sʕUV]x1 {(379)9=Zƙ:^sRsvJttL\OӚrjDdC]reI}a-[VYYY]]j*dPF'ɶt6rzB;&dOԮF^&M('qQMTTT̟??ٳgٲecƌ0aˏ?tj>N%uĖj驖OQyǍ7gΜ޽{Gkkk/_Qbq۶mv…۷744l۶رcǎ+++[|y@PF+:dbKT˧x?~Ŋ]]]|СCv6lXY%{ <@I@PF'Iߍ;,W7gl3v: zW>Yf3w޳gϞ={Se˖tMtR!h !O!гro;TnРAvth>쌲i߾}ׯ߿CV\9y䊊IF$5TrP߁4M6mZ҉oڴӯ#<2tЁ^INRaSR頱Kn55k{dL l!:NStƶgtlv4m4`lKHj4eW}7oիO<}vۗĥK:;; BDaSA`As*rnHп,2M5YfMLʜT8Iƶ5~!dȵpKo e-Z'Ν;o߾rKҹ544_/~3  'k1Fm4%?L#I&HAr+oS9x=^Jiii&Mݛ̙3ݻ';v߿?/E2XkW eِe$۶.K) `GG={vӦMUUUoOӧ]6@etĺ8̆ kGװ%ap\zT򓟜?w뮻nĉӧO1+UTTխ[ԩS=ȑ#͛t^ 2D]73j8*[FiSLÇzٳgmmmCm… 1'b)`+`o9p:*qmc tTLxAJ*/kV__t"Akk룏>ZYY9cƌgovQFϴ5⥾iud2Ùn>?AVB8i]SXqpĜ'R5M+PMww_ZZ[n5jԓO>yСSPԸ=CKKL&kKߧT8ΆS2CKuMIk/AgB)䠶OS<)Ii1:\RR)SJJx BiɎZl*=՝^ 21E )e{Xg,L>hϞ=/YB+h%~ 2m $;JuqȞN-"kVWW?,]';C alPhkyqMmlzQR~3A5oXN':!d3~A^~eMϟ0̙3gΜFFN^vtPfD.dR/.|AnɈOS& Itȑz뮛={vҹ:@҆ 4MWRZZt.PHOOOkkot"hE: |aGǢEjp7\YYyܹsAёL-O~;2i߾}mmmÇ@i|8Ȱ@կ)0)lJ:j4t[tiyyy}}}҉@9{r> (#tҥ?Igґ#G$[= >UEvvvvuu6x@(#to|Ig@ݻ_}|0DNhD߾}z衤RoĉuG@AR!s;wL: R'ؾ}{ccYGۿ&u#E7߼{v9psB@ }:::{֣<>m۶5JK/,]t3gΎ;OSWWJS>}24P$*++,Yq7|J-gÆ -Z(DxPYY4zB%}ܹ32~޽{[[[t.>|>|QFH7w}I3c%/}JhE;v… Ig$`رҮPIu]J!(dɒoIg$o|7 ;8Ç޽PI8FPF+mmr{ɩ^xŋ>|8į&]SSL%4Vի㎤`ǏJ:Dim#E~\A32!a%SJ&ikRrfwm<7MxЧ0@I3Ϭ^[ hmmojj91PYO bbN" yݖ<˗4hmmwܹRJH&qc*@=01}RPetL'#O C_Jq]IyyC Q;lX%פp 'ybPJC{3B_-0"s;Ld3~"Mm)RRɨƶ" [l|=llJOE7ךRDw_cG׏N/`@b5: ~y;} @/'B"G(Acۘ֒˺M\|EJQFg뒀9qj`‰$E7E>xu\k (KӴҤ, H}*QQ,OY4za) H=i"MphK"C!NY0B1h/ D2: ߑ?M?jh}:ga~ܶJ[sm9Nmb2Q b:q>B Vؘ63,r^_ Ӝ0p{et+2ŴS~*L;T-_z ^V.[eT9OqA]DUT(=A(]Sְ"sâgkm#o}vEWH茐|@qVƗ9h;m%dP] Җ# 3.H](Z@|eK/f͚h23YDPF1q0n2d^{ci@l(U3'N$ xRe4:vرw}74h-Y$`2ZQǏI: @QcǎM:@5PΜ9~…e4" /p /B҉R2@ap!u=z4Pݻ5M۱cǙ3g%~骪q! n޼9,9_9rd҉@XN81,=S555MMMT2HƂ .\t@~M0J@p! B\n˖-~'jjjۓA VEEg̘A% K(0`;d e4 T22@fPFSYYI% ( *nPIIgQFEii-[/8qb̙TRO1Do߾O.%%%mmmo{8XD]tgM:G2H\.CuD"┆ ]8)<"2P]^ZW6P= RLg@(1t)O?5n1ʸXX,,S_{ 5òtܩtd)kL5m{Ql'z y02Ev"SA2PX7GZ75 k5q6XFা.z\ia k{Iq"N&He4Vzc[߲P.өjSGcM>EMLov# Mp7[ uU2kp%I@ (-bѴQJج?)" 9HR$|`S ȼ6;xFz L侔6.@(E9=t;xnli89uA^i7 wCQ(ZlR)mwn6mw#][ۮ:u<S|AN<-&DM?n%j@%.>̿er7 k{զ) K<%#8}Ӕ@`Se4 vjggg<Hƺu8@ #A4# #Control# #getProperties# #PropertyBag# #getDesiredSize# #Gtk::Requisition# #getAccessible# #Bonobo::Unknown# #getWindowId# #Gdk::WindowId# #cookie# #string# #getPopupContainer# #UIContainer# #setFrame# #frame# #ControlFrame# #setSize# #width# #short# #height# #short# #setState# #state# #Gtk::State# #activate# #activate# #boolean# #focus# #boolean# #direction# #Gtk::Direction# #Unknown# #Returns a PropertyBag containing this Control's properties# #Returns the requested size for the contained widget.# #Returns accessibility related resources.# #@cookie: ',' delimited string, format: 'screen' = <int> [, [ <reserved for expansion> ] ] Returns the windowId of the plug's window# #Returns a UIContainer for a parent to push popup items into# #@frame: A Bonobo_ControlFrame. Gives the Control a handle to its ControlFrame. Returns the windowId of the plug.# #@width: width given to the control @height: height given to the control Informs the Control of the size assigned by its container application# # @state: The new state of the control. Set the control's activity state.# # Activates or deactivates this Control.# #A Control proxy for GtkContainer::focus() Returns: whether focus was transfered.# libbonoboui-2.24.5/doc/api/Makefile.am0000644000076400007640000000505111173072741014416 00000000000000INCLUDES = -I$(top_srcdir) -I$(top_builddir) ## Process this file with automake to produce Makefile.in AUTOMAKE_OPTIONS = 1.6 SUBDIRS = figures # The name of the module, e.g. 'glib'. DOC_MODULE=libbonoboui # The top-level SGML file. Change it if you want. DOC_MAIN_SGML_FILE=$(DOC_MODULE)-docs.sgml # The directory containing the source code. Relative to $(srcdir). # gtk-doc will search all .c & .h files beneath here for inline comments # documenting functions and macros. DOC_SOURCE_DIR=../../bonobo # Extra options to supply to gtkdoc-scan. SCAN_OPTIONS=--deprecated-guards="BONOBO_UI_DISABLE_DEPRECATED" # Extra options to supply to gtkdoc-mkdb. MKDB_OPTIONS=--sgml-mode --output-format=xml # Extra options to supply to gtkdoc-fixref. FIXXREF_OPTIONS= # Used for dependencies. HFILE_GLOB= CFILE_GLOB= # Header files to ignore when scanning. IGNORE_HFILES= bonobo-client-site.h \ bonobo-control-internal.h \ bonobo-dock-band.h \ bonobo-dock-item-grip.h \ bonobo-dock-item.h \ bonobo-dock-layout.h \ bonobo-dock.h \ bonobo-embeddable-factory.h \ bonobo-item-container.h \ bonobo-item-handler.h \ bonobo-transient.h \ bonobo-ui-config-widget.h \ bonobo-ui-engine-private.h \ bonobo-ui-marshal.h \ bonobo-ui-node-private.h \ bonobo-ui-private.h \ bonobo-ui-xml.h \ bonobo-ui-sync-keys.h \ bonobo-ui-sync-menu.h \ bonobo-ui-sync-status.h \ bonobo-ui-sync-toolbar.h \ bonobo-ui-sync-status.h \ bonobo-ui-toolbar-button-item.h \ bonobo-ui-toolbar-control-item.h \ bonobo-ui-toolbar-icon.h \ bonobo-ui-toolbar-item.h \ bonobo-ui-toolbar-popup-item.h \ bonobo-ui-toolbar-separator-item.h \ bonobo-ui-toolbar.h \ bonobo-ui-toolbar-toggle-button-item.h \ bonobo-canvas-item.h \ bonobo-canvas-component.h \ bonobo-ui-type-builtins.h # Images to copy into HTML directory. HTML_IMAGES = figures/control.png figures/control-frame.png # Extra SGML files that are included by $(DOC_MAIN_SGML_FILE). content_files = ui-faq.xml # Other files to distribute. extra_files = # CFLAGS and LDFLAGS for compiling scan program. Only needed # if $(DOC_MODULE).types is non-empty. GTKDOC_CFLAGS = \ @CFLAGS@ \ -I$(top_srcdir) \ -DBONOBO_UI_INTERNAL \ $(BONOBOUI_CFLAGS) GTKDOC_LIBS = $(top_builddir)/bonobo/libbonoboui-2.la $(BONOBOUI_LIBS) # If you need to override some of the declarations, place them in the # $(DOC_MODULE)-overrides.txt file and uncomment the second line here. DOC_OVERRIDES = #DOC_OVERRIDES = $(DOC_MODULE)-overrides.txt # include common portion ... include $(top_srcdir)/gtk-doc.make libbonoboui-2.24.5/doc/api/libbonoboui-sections.txt0000644000076400007640000003205711546335132017261 00000000000000
bonobo-ui-component BonoboUIComponent BonoboUIComponentPrivate BonoboUIListenerFn BonoboUIVerbFn BonoboUIComponentClass bonobo_ui_component_construct bonobo_ui_component_new bonobo_ui_component_new_default bonobo_ui_component_set_name bonobo_ui_component_get_name bonobo_ui_component_set_container bonobo_ui_component_unset_container bonobo_ui_component_get_container bonobo_ui_component_add_verb bonobo_ui_component_add_verb_full bonobo_ui_component_remove_verb bonobo_ui_component_remove_verb_by_closure bonobo_ui_component_add_listener bonobo_ui_component_add_listener_full bonobo_ui_component_remove_listener bonobo_ui_component_remove_listener_by_closure bonobo_ui_component_set bonobo_ui_component_set_translate bonobo_ui_component_set_tree bonobo_ui_component_rm bonobo_ui_component_path_exists bonobo_ui_component_get bonobo_ui_component_get_tree bonobo_ui_component_object_set bonobo_ui_component_object_get bonobo_ui_component_widget_set bonobo_ui_component_freeze bonobo_ui_component_thaw bonobo_ui_component_set_prop bonobo_ui_component_get_prop bonobo_ui_component_set_status BonoboUIVerb BONOBO_UI_VERB BONOBO_UI_VERB_DATA BONOBO_UI_UNSAFE_VERB BONOBO_UI_UNSAFE_VERB_DATA BONOBO_UI_VERB_END bonobo_ui_component_add_verb_list bonobo_ui_component_add_verb_list_with_data BONOBO_UI_COMPONENT BONOBO_IS_UI_COMPONENT BONOBO_TYPE_UI_COMPONENT bonobo_ui_component_get_type BONOBO_UI_COMPONENT_CLASS BONOBO_IS_UI_COMPONENT_CLASS
bonobo-widget BonoboWidget BonoboWidgetPrivate BonoboWidgetClass bonobo_widget_get_objref bonobo_widget_new_control bonobo_widget_new_control_from_objref bonobo_widget_get_control_frame bonobo_widget_get_ui_container BonoboWidgetAsyncFn bonobo_widget_new_control_async bonobo_widget_construct_control_from_objref bonobo_widget_construct_control bonobo_widget_set_property bonobo_widget_get_property bonobo_widget_get_uih BONOBO_WIDGET BONOBO_IS_WIDGET BONOBO_TYPE_WIDGET bonobo_widget_get_type BONOBO_WIDGET_CLASS BONOBO_IS_WIDGET_CLASS
bonobo-ui-engine BonoboUIEngine bonobo_ui_engine_deregister_dead_components bonobo_ui_engine_deregister_component_by_ref bonobo_ui_engine_deregister_component bonobo_ui_engine_register_component bonobo_ui_engine_get_component_names bonobo_ui_engine_get_component bonobo_ui_engine_config_set_path bonobo_ui_engine_config_get_path bonobo_ui_engine_set_ui_container bonobo_ui_engine_get_ui_container bonobo_ui_engine_freeze bonobo_ui_engine_thaw bonobo_ui_engine_update BonoboUIError BonoboUIEnginePrivate BonoboUIEngineClass bonobo_ui_engine_construct bonobo_ui_engine_new bonobo_ui_engine_get_view bonobo_ui_engine_add_sync bonobo_ui_engine_remove_sync bonobo_ui_engine_get_syncs bonobo_ui_engine_update_node bonobo_ui_engine_queue_update bonobo_ui_engine_build_control bonobo_ui_engine_widget_get_node bonobo_ui_engine_widget_set_node bonobo_ui_engine_xml_set_prop bonobo_ui_engine_xml_get_prop bonobo_ui_engine_prune_widget_info bonobo_ui_engine_get_path bonobo_ui_engine_dirty_tree bonobo_ui_engine_clean_tree bonobo_ui_engine_dump bonobo_ui_engine_node_get_object bonobo_ui_engine_node_is_dirty bonobo_ui_engine_node_get_widget bonobo_ui_engine_node_get_id bonobo_ui_engine_get_cmd_node bonobo_ui_engine_node_set_dirty bonobo_ui_engine_stamp_custom bonobo_ui_engine_widget_set bonobo_ui_engine_stamp_root bonobo_ui_engine_add_hint bonobo_ui_engine_remove_hint bonobo_ui_engine_emit_verb_on bonobo_ui_engine_emit_event_on bonobo_ui_engine_emit_verb_on_w bonobo_ui_engine_emit_event_on_w bonobo_ui_engine_get_attr bonobo_ui_engine_widget_attach_node bonobo_ui_engine_xml_get bonobo_ui_engine_xml_node_exists bonobo_ui_engine_xml_merge_tree bonobo_ui_engine_xml_rm bonobo_ui_engine_object_set bonobo_ui_engine_object_get bonobo_ui_engine_exec_verb bonobo_ui_engine_ui_event BONOBO_UI_ENGINE BONOBO_IS_UI_ENGINE BONOBO_TYPE_UI_ENGINE bonobo_ui_engine_get_type BONOBO_UI_ENGINE_CLASS BONOBO_IS_UI_ENGINE_CLASS
bonobo-window BonoboWindowPrivate BonoboWindow BonoboWindowClass bonobo_window_construct bonobo_window_new bonobo_window_set_contents bonobo_window_get_contents bonobo_window_get_ui_engine bonobo_window_get_ui_container bonobo_window_set_name bonobo_window_get_name bonobo_window_get_accel_group bonobo_window_add_popup bonobo_window_remove_popup BONOBO_WINDOW BONOBO_IS_WINDOW BONOBO_TYPE_WINDOW bonobo_window_get_type BONOBO_WINDOW_CLASS BONOBO_IS_WINDOW_CLASS
bonobo-control BonoboControl BonoboControlPrivate BonoboControlClass bonobo_control_new bonobo_control_get_widget bonobo_control_set_automerge bonobo_control_get_automerge bonobo_control_set_property bonobo_control_get_property bonobo_control_set_transient_for bonobo_control_unset_transient_for bonobo_control_construct bonobo_control_get_ui_component bonobo_control_set_ui_component bonobo_control_get_remote_ui_container bonobo_control_set_control_frame bonobo_control_get_control_frame bonobo_control_set_properties bonobo_control_get_properties bonobo_control_get_ambient_properties bonobo_control_activate_notify bonobo_control_window_id_from_x11 bonobo_control_x11_from_window_id bonobo_control_windowid_from_x11 BONOBO_CONTROL_POPUP_BUTTON1 BONOBO_CONTROL_POPUP_BUTTON2 BONOBO_CONTROL_POPUP_BUTTON3 bonobo_control_get_popup_ui_container bonobo_control_get_popup_ui_component bonobo_control_set_popup_ui_container bonobo_control_do_popup bonobo_control_do_popup_full BonoboControlLifeCallback bonobo_control_life_set_purge bonobo_control_life_set_callback bonobo_control_life_instrument bonobo_control_life_get_count BONOBO_CONTROL BONOBO_IS_CONTROL BONOBO_TYPE_CONTROL bonobo_control_get_type BONOBO_CONTROL_CLASS BONOBO_IS_CONTROL_CLASS
bonobo-control-frame BonoboControlFrame BonoboControlFramePrivate BonoboControlFrameClass BONOBO_CONTROL_FRAME_TOPLEVEL_PROP bonobo_control_frame_construct bonobo_control_frame_new bonobo_control_frame_get_widget bonobo_control_frame_set_ui_container bonobo_control_frame_control_activate bonobo_control_frame_control_deactivate bonobo_control_frame_set_autoactivate bonobo_control_frame_get_autoactivate bonobo_control_frame_get_control_property_bag bonobo_control_frame_set_propbag bonobo_control_frame_get_propbag bonobo_control_frame_control_set_state bonobo_control_frame_set_autostate bonobo_control_frame_get_autostate bonobo_control_frame_bind_to_control bonobo_control_frame_get_control bonobo_control_frame_get_ui_container bonobo_control_frame_get_popup_component BONOBO_CONTROL_FRAME BONOBO_IS_CONTROL_FRAME BONOBO_TYPE_CONTROL_FRAME bonobo_control_frame_get_type BONOBO_CONTROL_FRAME_CLASS BONOBO_IS_CONTROL_FRAME_CLASS
bonobo-socket BonoboSocket BonoboSocketClass bonobo_socket_new BONOBO_SOCKET BONOBO_IS_SOCKET BONOBO_TYPE_SOCKET bonobo_socket_get_type BONOBO_SOCKET_CLASS
bonobo-selector BonoboSelectorPrivate BonoboSelector BonoboSelectorClass bonobo_selector_construct bonobo_selector_new bonobo_selector_get_selected_id bonobo_selector_get_selected_name bonobo_selector_get_selected_description bonobo_selector_select_id BONOBO_SELECTOR BONOBO_IS_SELECTOR BONOBO_TYPE_SELECTOR bonobo_selector_get_type BONOBO_SELECTOR_CLASS
bonobo-ui-sync BonoboUISync BonoboUISyncStateFn BonoboUISyncBuildFn BonoboUISyncPrivate BonoboUISyncClass bonobo_ui_sync_construct bonobo_ui_sync_is_recursive bonobo_ui_sync_has_widgets bonobo_ui_sync_remove_root bonobo_ui_sync_update_root bonobo_ui_sync_state bonobo_ui_sync_state_placeholder bonobo_ui_sync_build bonobo_ui_sync_build_placeholder bonobo_ui_sync_ignore_widget bonobo_ui_sync_get_widgets bonobo_ui_sync_stamp_root bonobo_ui_sync_can_handle bonobo_ui_sync_get_attached bonobo_ui_sync_state_update bonobo_ui_sync_do_show_hide bonobo_ui_sync_wrap_widget bonobo_ui_sync_keys_get_type bonobo_ui_sync_menu_get_type bonobo_ui_sync_status_get_type bonobo_ui_sync_toolbar_get_type BONOBO_UI_SYNC BONOBO_IS_UI_SYNC BONOBO_TYPE_UI_SYNC bonobo_ui_sync_get_type BONOBO_UI_SYNC_CLASS BONOBO_IS_UI_SYNC_CLASS
bonobo-plug BonoboPlug BonoboPlugPrivate BonoboPlugClass bonobo_plug_construct bonobo_plug_new BONOBO_PLUG BONOBO_IS_PLUG BONOBO_TYPE_PLUG bonobo_plug_get_type BONOBO_PLUG_CLASS
bonobo-ui-engine-config BonoboUIEngineConfigPrivate BonoboUIEngineConfig BonoboUIEngineConfigClass bonobo_ui_engine_config_construct bonobo_ui_engine_config_new BonoboUIEngineConfigFn BonoboUIEngineConfigVerbFn bonobo_ui_engine_config_connect bonobo_ui_engine_config_serialize bonobo_ui_engine_config_hydrate bonobo_ui_engine_config_add bonobo_ui_engine_config_remove bonobo_ui_engine_config_configure bonobo_ui_engine_config_get_engine BONOBO_UI_ENGINE_CONFIG BONOBO_IS_UI_ENGINE_CONFIG BONOBO_TYPE_UI_ENGINE_CONFIG bonobo_ui_engine_config_get_type BONOBO_UI_ENGINE_CONFIG_CLASS BONOBO_IS_UI_ENGINE_CONFIG_CLASS
bonobo-wrapper BonoboWrapperPrivate BonoboWrapper BonoboWrapperClass bonobo_wrapper_new bonobo_wrapper_set_covered bonobo_wrapper_is_covered bonobo_wrapper_get_visibility bonobo_wrapper_set_visibility BONOBO_WRAPPER BONOBO_IS_WRAPPER GNOME_TYPE_WRAPPER bonobo_wrapper_get_type BONOBO_WRAPPER_CLASS BONOBO_IS_WRAPPER_CLASS
bonobo-ui-container BonoboUIContainer BonoboUIContainerPrivate BonoboUIContainerClass bonobo_ui_container_new bonobo_ui_container_set_engine bonobo_ui_container_get_engine BONOBO_UI_CONTAINER BONOBO_IS_UI_CONTAINER BONOBO_TYPE_UI_CONTAINER bonobo_ui_container_get_type BONOBO_UI_CONTAINER_CLASS BONOBO_IS_UI_CONTAINER_CLASS
bonobo-property-control BonoboPropertyControl BonoboPropertyControlPrivate BONOBO_PROPERTY_CONTROL_CHANGED BonoboPropertyControlGetControlFn BonoboPropertyControlClass bonobo_property_control_construct bonobo_property_control_new_full bonobo_property_control_new bonobo_property_control_changed bonobo_property_control_get_event_source BONOBO_PROPERTY_CONTROL BONOBO_IS_PROPERTY_CONTROL BONOBO_TYPE_PROPERTY_CONTROL bonobo_property_control_get_type BONOBO_PROPERTY_CONTROL_CLASS BONOBO_IS_PROPERTY_CONTROL_CLASS
bonobo-selector-widget BonoboSelectorWidgetPrivate BonoboSelectorWidget BonoboSelectorWidgetClass bonobo_selector_widget_new bonobo_selector_widget_set_interfaces bonobo_selector_widget_get_id bonobo_selector_widget_get_name bonobo_selector_widget_get_description BONOBO_SELECTOR_WIDGET BONOBO_IS_SELECTOR_WIDGET BONOBO_TYPE_SELECTOR_WIDGET bonobo_selector_widget_get_type BONOBO_SELECTOR_WIDGET_CLASS
bonobo-a11y BonoboA11YClassInitFn bonobo_a11y_get_atk_object bonobo_a11y_set_atk_object_ret bonobo_a11y_get_derived_type_for bonobo_a11y_create_accessible_for bonobo_a11y_add_actions_interface
bonobo-ui-main LIBBONOBOUI_MODULE libbonobo_ui_module_info_get BONOBO_UI_GTK_MODULE bonobo_ui_gtk_module_info_get bonobo_ui_is_initialized bonobo_ui_init bonobo_ui_main bonobo_ui_init_full bonobo_setup_x_error_handler bonobo_ui_debug_shutdown
bonobo-ui-node BonoboUINode bonobo_ui_node_new bonobo_ui_node_new_child bonobo_ui_node_copy bonobo_ui_node_free bonobo_ui_node_set_data bonobo_ui_node_get_data bonobo_ui_node_set_attr bonobo_ui_node_get_attr bonobo_ui_node_has_attr bonobo_ui_node_remove_attr bonobo_ui_node_add_child bonobo_ui_node_insert_before bonobo_ui_node_unlink bonobo_ui_node_replace bonobo_ui_node_set_content bonobo_ui_node_get_content bonobo_ui_node_next bonobo_ui_node_prev bonobo_ui_node_children bonobo_ui_node_parent bonobo_ui_node_get_name bonobo_ui_node_has_name bonobo_ui_node_transparent bonobo_ui_node_copy_attrs bonobo_ui_node_free_string bonobo_ui_node_strip bonobo_ui_node_to_string bonobo_ui_node_from_string bonobo_ui_node_from_file
bonobo-ui-util bonobo_ui_util_pixbuf_to_xml bonobo_ui_util_xml_to_pixbuf bonobo_ui_util_xml_get_icon_widget bonobo_ui_util_xml_set_pixbuf bonobo_ui_util_build_help_menu bonobo_ui_util_get_ui_fname bonobo_ui_util_translate_ui bonobo_ui_util_fixup_help bonobo_ui_util_fixup_icons bonobo_ui_util_new_ui bonobo_ui_util_set_ui bonobo_ui_util_set_pixbuf bonobo_ui_util_accel_name bonobo_ui_util_accel_parse bonobo_ui_util_decode_str bonobo_ui_util_encode_str
bonobo-ui-preferences BONOBO_UI_PAD BONOBO_UI_PAD_SMALL BONOBO_UI_PAD_BIG bonobo_ui_preferences_add_engine bonobo_ui_preferences_remove_engine bonobo_ui_preferences_get_toolbar_style bonobo_ui_preferences_get_menus_have_icons bonobo_ui_preferences_get_menus_have_tearoff bonobo_ui_preferences_get_menubar_detachable bonobo_ui_preferences_get_toolbar_detachable
bonobo-file-selector-util bonobo_file_selector_open bonobo_file_selector_open_multi bonobo_file_selector_save
libbonoboui-2.24.5/doc/api/libbonoboui-docs.sgml0000644000076400007640000000500611173072741016477 00000000000000 ]> LibBonoboUI API Reference Manual &ui-faq; Object Hierarchy &tree_index; Controls &bonobo-control; &bonobo-control-frame; &bonobo-property-control; Bonobo UI &bonobo-widget; &bonobo-window; &bonobo-ui-component; &bonobo-ui-container; &bonobo-ui-util; &bonobo-ui-node; &bonobo-ui-engine; &bonobo-ui-engine-config; &bonobo-ui-sync; &bonobo-ui-preferences; Supporting Classes &bonobo-plug; &bonobo-socket; &bonobo-wrapper; &bonobo-selector; &bonobo-selector-widget; &bonobo-file-selector-util; &bonobo-a11y; Index libbonoboui-2.24.5/doc/api/libbonoboui-overrides.txt0000644000076400007640000000000011173072741017413 00000000000000libbonoboui-2.24.5/doc/api/Makefile.in0000664000076400007640000006722511546334700014444 00000000000000# Makefile.in generated by automake 1.11.1 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, # Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY, to the extent permitted by law; without # even the implied warranty of MERCHANTABILITY or FITNESS FOR A # PARTICULAR PURPOSE. @SET_MAKE@ # -*- mode: makefile -*- #################################### # Everything below here is generic # #################################### VPATH = @srcdir@ pkgdatadir = $(datadir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ pkglibdir = $(libdir)/@PACKAGE@ pkglibexecdir = $(libexecdir)/@PACKAGE@ am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd install_sh_DATA = $(install_sh) -c -m 644 install_sh_PROGRAM = $(install_sh) -c install_sh_SCRIPT = $(install_sh) -c INSTALL_HEADER = $(INSTALL_DATA) transform = $(program_transform_name) NORMAL_INSTALL = : PRE_INSTALL = : POST_INSTALL = : NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : build_triplet = @build@ host_triplet = @host@ DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in \ $(top_srcdir)/gtk-doc.make subdir = doc/api ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/configure.in am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs CONFIG_HEADER = $(top_builddir)/config.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = SOURCES = DIST_SOURCES = RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \ html-recursive info-recursive install-data-recursive \ install-dvi-recursive install-exec-recursive \ install-html-recursive install-info-recursive \ install-pdf-recursive install-ps-recursive install-recursive \ installcheck-recursive installdirs-recursive pdf-recursive \ ps-recursive uninstall-recursive RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \ distclean-recursive maintainer-clean-recursive AM_RECURSIVE_TARGETS = $(RECURSIVE_TARGETS:-recursive=) \ $(RECURSIVE_CLEAN_TARGETS:-recursive=) tags TAGS ctags CTAGS \ distdir ETAGS = etags CTAGS = ctags DIST_SUBDIRS = $(SUBDIRS) DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) am__relativize = \ dir0=`pwd`; \ sed_first='s,^\([^/]*\)/.*$$,\1,'; \ sed_rest='s,^[^/]*/*,,'; \ sed_last='s,^.*/\([^/]*\)$$,\1,'; \ sed_butlast='s,/*[^/]*$$,,'; \ while test -n "$$dir1"; do \ first=`echo "$$dir1" | sed -e "$$sed_first"`; \ if test "$$first" != "."; then \ if test "$$first" = ".."; then \ dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \ dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \ else \ first2=`echo "$$dir2" | sed -e "$$sed_first"`; \ if test "$$first2" = "$$first"; then \ dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \ else \ dir2="../$$dir2"; \ fi; \ dir0="$$dir0"/"$$first"; \ fi; \ fi; \ dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \ done; \ reldir="$$dir2" ACLOCAL = @ACLOCAL@ ACLOCAL_AMFLAGS = @ACLOCAL_AMFLAGS@ ALL_LINGUAS = @ALL_LINGUAS@ AMTAR = @AMTAR@ AR = @AR@ AS = @AS@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ AWK = @AWK@ BONOBOUI_CFLAGS = @BONOBOUI_CFLAGS@ BONOBOUI_GLADE_CFLAGS = @BONOBOUI_GLADE_CFLAGS@ BONOBOUI_GLADE_LIBS = @BONOBOUI_GLADE_LIBS@ BONOBOUI_LIBS = @BONOBOUI_LIBS@ BONOBOUI_SINGLE_INCLUDES = @BONOBOUI_SINGLE_INCLUDES@ CATALOGS = @CATALOGS@ CATOBJEXT = @CATOBJEXT@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ CYGPATH_W = @CYGPATH_W@ DATADIRNAME = @DATADIRNAME@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DUMPBIN = @DUMPBIN@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_MKENUMS = @GLIB_MKENUMS@ GMOFILES = @GMOFILES@ GMSGFMT = @GMSGFMT@ GREP = @GREP@ GTKDOC_CHECK = @GTKDOC_CHECK@ GTKDOC_MKPDF = @GTKDOC_MKPDF@ GTKDOC_REBASE = @GTKDOC_REBASE@ HTML_DIR = @HTML_DIR@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INSTOBJEXT = @INSTOBJEXT@ INTLLIBS = @INTLLIBS@ INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@ INTLTOOL_MERGE = @INTLTOOL_MERGE@ INTLTOOL_PERL = @INTLTOOL_PERL@ INTLTOOL_UPDATE = @INTLTOOL_UPDATE@ LD = @LD@ LDFLAGS = @LDFLAGS@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIPO = @LIPO@ LN_S = @LN_S@ LTLIBOBJS = @LTLIBOBJS@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MKDIR_P = @MKDIR_P@ MKINSTALLDIRS = @MKINSTALLDIRS@ MSGFMT = @MSGFMT@ MSGFMT_OPTS = @MSGFMT_OPTS@ MSGMERGE = @MSGMERGE@ NM = @NM@ NMEDIT = @NMEDIT@ OBJDUMP = @OBJDUMP@ OBJEXT = @OBJEXT@ OTOOL = @OTOOL@ OTOOL64 = @OTOOL64@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_URL = @PACKAGE_URL@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ PATH_TO_XRDB = @PATH_TO_XRDB@ PKG_CONFIG = @PKG_CONFIG@ POFILES = @POFILES@ POPT_LIBS = @POPT_LIBS@ POSUB = @POSUB@ PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@ PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@ RANLIB = @RANLIB@ SED = @SED@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ STRIP = @STRIP@ USE_NLS = @USE_NLS@ VERSION = @VERSION@ WARN_CFLAGS = @WARN_CFLAGS@ XGETTEXT = @XGETTEXT@ XMKMF = @XMKMF@ X_CFLAGS = @X_CFLAGS@ X_EXTRA_LIBS = @X_EXTRA_LIBS@ X_LIBS = @X_LIBS@ X_PRE_LIBS = @X_PRE_LIBS@ YACC = @YACC@ YFLAGS = @YFLAGS@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ abs_top_srcdir = @abs_top_srcdir@ ac_ct_CC = @ac_ct_CC@ ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ am__include = @am__include@ am__leading_dot = @am__leading_dot@ am__quote = @am__quote@ am__tar = @am__tar@ am__untar = @am__untar@ bindir = @bindir@ build = @build@ build_alias = @build_alias@ build_cpu = @build_cpu@ build_os = @build_os@ build_vendor = @build_vendor@ builddir = @builddir@ datadir = @datadir@ datarootdir = @datarootdir@ docdir = @docdir@ dvidir = @dvidir@ exec_prefix = @exec_prefix@ host = @host@ host_alias = @host_alias@ host_cpu = @host_cpu@ host_os = @host_os@ host_vendor = @host_vendor@ htmldir = @htmldir@ includedir = @includedir@ infodir = @infodir@ install_sh = @install_sh@ libdir = @libdir@ libexecdir = @libexecdir@ localedir = @localedir@ localstatedir = @localstatedir@ lt_ECHO = @lt_ECHO@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ sysconfdir = @sysconfdir@ target_alias = @target_alias@ top_build_prefix = @top_build_prefix@ top_builddir = @top_builddir@ top_srcdir = @top_srcdir@ INCLUDES = -I$(top_srcdir) -I$(top_builddir) AUTOMAKE_OPTIONS = 1.6 SUBDIRS = figures # The name of the module, e.g. 'glib'. DOC_MODULE = libbonoboui # The top-level SGML file. Change it if you want. DOC_MAIN_SGML_FILE = $(DOC_MODULE)-docs.sgml # The directory containing the source code. Relative to $(srcdir). # gtk-doc will search all .c & .h files beneath here for inline comments # documenting functions and macros. DOC_SOURCE_DIR = ../../bonobo # Extra options to supply to gtkdoc-scan. SCAN_OPTIONS = --deprecated-guards="BONOBO_UI_DISABLE_DEPRECATED" # Extra options to supply to gtkdoc-mkdb. MKDB_OPTIONS = --sgml-mode --output-format=xml # Extra options to supply to gtkdoc-fixref. FIXXREF_OPTIONS = # Used for dependencies. HFILE_GLOB = CFILE_GLOB = # Header files to ignore when scanning. IGNORE_HFILES = bonobo-client-site.h \ bonobo-control-internal.h \ bonobo-dock-band.h \ bonobo-dock-item-grip.h \ bonobo-dock-item.h \ bonobo-dock-layout.h \ bonobo-dock.h \ bonobo-embeddable-factory.h \ bonobo-item-container.h \ bonobo-item-handler.h \ bonobo-transient.h \ bonobo-ui-config-widget.h \ bonobo-ui-engine-private.h \ bonobo-ui-marshal.h \ bonobo-ui-node-private.h \ bonobo-ui-private.h \ bonobo-ui-xml.h \ bonobo-ui-sync-keys.h \ bonobo-ui-sync-menu.h \ bonobo-ui-sync-status.h \ bonobo-ui-sync-toolbar.h \ bonobo-ui-sync-status.h \ bonobo-ui-toolbar-button-item.h \ bonobo-ui-toolbar-control-item.h \ bonobo-ui-toolbar-icon.h \ bonobo-ui-toolbar-item.h \ bonobo-ui-toolbar-popup-item.h \ bonobo-ui-toolbar-separator-item.h \ bonobo-ui-toolbar.h \ bonobo-ui-toolbar-toggle-button-item.h \ bonobo-canvas-item.h \ bonobo-canvas-component.h \ bonobo-ui-type-builtins.h # Images to copy into HTML directory. HTML_IMAGES = figures/control.png figures/control-frame.png # Extra SGML files that are included by $(DOC_MAIN_SGML_FILE). content_files = ui-faq.xml # Other files to distribute. extra_files = # CFLAGS and LDFLAGS for compiling scan program. Only needed # if $(DOC_MODULE).types is non-empty. GTKDOC_CFLAGS = \ @CFLAGS@ \ -I$(top_srcdir) \ -DBONOBO_UI_INTERNAL \ $(BONOBOUI_CFLAGS) GTKDOC_LIBS = $(top_builddir)/bonobo/libbonoboui-2.la $(BONOBOUI_LIBS) # If you need to override some of the declarations, place them in the # $(DOC_MODULE)-overrides.txt file and uncomment the second line here. DOC_OVERRIDES = @GTK_DOC_USE_LIBTOOL_FALSE@GTKDOC_CC = $(CC) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) @GTK_DOC_USE_LIBTOOL_TRUE@GTKDOC_CC = $(LIBTOOL) --tag=CC --mode=compile $(CC) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) @GTK_DOC_USE_LIBTOOL_FALSE@GTKDOC_LD = $(CC) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) @GTK_DOC_USE_LIBTOOL_TRUE@GTKDOC_LD = $(LIBTOOL) --tag=CC --mode=link $(CC) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) @GTK_DOC_USE_LIBTOOL_FALSE@GTKDOC_RUN = @GTK_DOC_USE_LIBTOOL_TRUE@GTKDOC_RUN = $(LIBTOOL) --mode=execute # We set GPATH here; this gives us semantics for GNU make # which are more like other make's VPATH, when it comes to # whether a source that is a target of one rule is then # searched for in VPATH/GPATH. # GPATH = $(srcdir) TARGET_DIR = $(HTML_DIR)/$(DOC_MODULE) EXTRA_DIST = \ $(content_files) \ $(HTML_IMAGES) \ $(DOC_MAIN_SGML_FILE) \ $(DOC_MODULE)-sections.txt \ $(DOC_MODULE)-overrides.txt DOC_STAMPS = scan-build.stamp tmpl-build.stamp sgml-build.stamp html-build.stamp \ pdf-build.stamp \ $(srcdir)/tmpl.stamp $(srcdir)/sgml.stamp $(srcdir)/html.stamp \ $(srcdir)/pdf.stamp SCANOBJ_FILES = \ $(DOC_MODULE).args \ $(DOC_MODULE).hierarchy \ $(DOC_MODULE).interfaces \ $(DOC_MODULE).prerequisites \ $(DOC_MODULE).signals REPORT_FILES = \ $(DOC_MODULE)-undocumented.txt \ $(DOC_MODULE)-undeclared.txt \ $(DOC_MODULE)-unused.txt CLEANFILES = $(SCANOBJ_FILES) $(REPORT_FILES) $(DOC_STAMPS) @ENABLE_GTK_DOC_TRUE@@GTK_DOC_BUILD_HTML_FALSE@HTML_BUILD_STAMP = @ENABLE_GTK_DOC_TRUE@@GTK_DOC_BUILD_HTML_TRUE@HTML_BUILD_STAMP = html-build.stamp @ENABLE_GTK_DOC_TRUE@@GTK_DOC_BUILD_PDF_FALSE@PDF_BUILD_STAMP = @ENABLE_GTK_DOC_TRUE@@GTK_DOC_BUILD_PDF_TRUE@PDF_BUILD_STAMP = pdf-build.stamp all: all-recursive .SUFFIXES: $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir)/gtk-doc.make $(am__configure_deps) @for dep in $?; do \ case '$(am__configure_deps)' in \ *$$dep*) \ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ && { if test -f $@; then exit 0; else break; fi; }; \ exit 1;; \ esac; \ done; \ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign doc/api/Makefile'; \ $(am__cd) $(top_srcdir) && \ $(AUTOMAKE) --foreign doc/api/Makefile .PRECIOUS: Makefile Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status @case '$?' in \ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(am__aclocal_m4_deps): mostlyclean-libtool: -rm -f *.lo clean-libtool: -rm -rf .libs _libs # This directory's subdirectories are mostly independent; you can cd # into them and run `make' without going through this Makefile. # To change the values of `make' variables: instead of editing Makefiles, # (1) if the variable is set in `config.status', edit `config.status' # (which will cause the Makefiles to be regenerated when you run `make'); # (2) otherwise, pass the desired values on the `make' command line. $(RECURSIVE_TARGETS): @fail= failcom='exit 1'; \ for f in x $$MAKEFLAGS; do \ case $$f in \ *=* | --[!k]*);; \ *k*) failcom='fail=yes';; \ esac; \ done; \ dot_seen=no; \ target=`echo $@ | sed s/-recursive//`; \ list='$(SUBDIRS)'; for subdir in $$list; do \ echo "Making $$target in $$subdir"; \ if test "$$subdir" = "."; then \ dot_seen=yes; \ local_target="$$target-am"; \ else \ local_target="$$target"; \ fi; \ ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ || eval $$failcom; \ done; \ if test "$$dot_seen" = "no"; then \ $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \ fi; test -z "$$fail" $(RECURSIVE_CLEAN_TARGETS): @fail= failcom='exit 1'; \ for f in x $$MAKEFLAGS; do \ case $$f in \ *=* | --[!k]*);; \ *k*) failcom='fail=yes';; \ esac; \ done; \ dot_seen=no; \ case "$@" in \ distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \ *) list='$(SUBDIRS)' ;; \ esac; \ rev=''; for subdir in $$list; do \ if test "$$subdir" = "."; then :; else \ rev="$$subdir $$rev"; \ fi; \ done; \ rev="$$rev ."; \ target=`echo $@ | sed s/-recursive//`; \ for subdir in $$rev; do \ echo "Making $$target in $$subdir"; \ if test "$$subdir" = "."; then \ local_target="$$target-am"; \ else \ local_target="$$target"; \ fi; \ ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ || eval $$failcom; \ done && test -z "$$fail" tags-recursive: list='$(SUBDIRS)'; for subdir in $$list; do \ test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \ done ctags-recursive: list='$(SUBDIRS)'; for subdir in $$list; do \ test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \ done ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ END { if (nonempty) { for (i in files) print i; }; }'`; \ mkid -fID $$unique tags: TAGS TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) set x; \ here=`pwd`; \ if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \ include_option=--etags-include; \ empty_fix=.; \ else \ include_option=--include; \ empty_fix=; \ fi; \ list='$(SUBDIRS)'; for subdir in $$list; do \ if test "$$subdir" = .; then :; else \ test ! -f $$subdir/TAGS || \ set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \ fi; \ done; \ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ END { if (nonempty) { for (i in files) print i; }; }'`; \ shift; \ if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ test -n "$$unique" || unique=$$empty_fix; \ if test $$# -gt 0; then \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ "$$@" $$unique; \ else \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ $$unique; \ fi; \ fi ctags: CTAGS CTAGS: ctags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ END { if (nonempty) { for (i in files) print i; }; }'`; \ test -z "$(CTAGS_ARGS)$$unique" \ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ $$unique GTAGS: here=`$(am__cd) $(top_builddir) && pwd` \ && $(am__cd) $(top_srcdir) \ && gtags -i $(GTAGS_ARGS) "$$here" distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ dist_files=`for file in $$list; do echo $$file; done | \ sed -e "s|^$$srcdirstrip/||;t" \ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ case $$dist_files in \ */*) $(MKDIR_P) `echo "$$dist_files" | \ sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ sort -u` ;; \ esac; \ for file in $$dist_files; do \ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ if test -d $$d/$$file; then \ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ if test -d "$(distdir)/$$file"; then \ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ else \ test -f "$(distdir)/$$file" \ || cp -p $$d/$$file "$(distdir)/$$file" \ || exit 1; \ fi; \ done @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \ if test "$$subdir" = .; then :; else \ test -d "$(distdir)/$$subdir" \ || $(MKDIR_P) "$(distdir)/$$subdir" \ || exit 1; \ fi; \ done @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \ if test "$$subdir" = .; then :; else \ dir1=$$subdir; dir2="$(distdir)/$$subdir"; \ $(am__relativize); \ new_distdir=$$reldir; \ dir1=$$subdir; dir2="$(top_distdir)"; \ $(am__relativize); \ new_top_distdir=$$reldir; \ echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \ echo " am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \ ($(am__cd) $$subdir && \ $(MAKE) $(AM_MAKEFLAGS) \ top_distdir="$$new_top_distdir" \ distdir="$$new_distdir" \ am__remove_distdir=: \ am__skip_length_check=: \ am__skip_mode_fix=: \ distdir) \ || exit 1; \ fi; \ done $(MAKE) $(AM_MAKEFLAGS) \ top_distdir="$(top_distdir)" distdir="$(distdir)" \ dist-hook check-am: all-am check: check-recursive all-am: Makefile all-local installdirs: installdirs-recursive installdirs-am: install: install-recursive install-exec: install-exec-recursive install-data: install-data-recursive uninstall: uninstall-recursive install-am: all-am @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am installcheck: installcheck-recursive install-strip: $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ `test -z '$(STRIP)' || \ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install mostlyclean-generic: clean-generic: -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES) distclean-generic: -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) maintainer-clean-generic: @echo "This command is intended for maintainers to use" @echo "it deletes files that may require special tools to rebuild." clean: clean-recursive clean-am: clean-generic clean-libtool clean-local mostlyclean-am distclean: distclean-recursive -rm -f Makefile distclean-am: clean-am distclean-generic distclean-local \ distclean-tags dvi: dvi-recursive dvi-am: html: html-recursive html-am: info: info-recursive info-am: install-data-am: install-data-local install-dvi: install-dvi-recursive install-dvi-am: install-exec-am: install-html: install-html-recursive install-html-am: install-info: install-info-recursive install-info-am: install-man: install-pdf: install-pdf-recursive install-pdf-am: install-ps: install-ps-recursive install-ps-am: installcheck-am: maintainer-clean: maintainer-clean-recursive -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic \ maintainer-clean-local mostlyclean: mostlyclean-recursive mostlyclean-am: mostlyclean-generic mostlyclean-libtool pdf: pdf-recursive pdf-am: ps: ps-recursive ps-am: uninstall-am: uninstall-local .MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) ctags-recursive \ install-am install-strip tags-recursive .PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \ all all-am all-local check check-am clean clean-generic \ clean-libtool clean-local ctags ctags-recursive dist-hook \ distclean distclean-generic distclean-libtool distclean-local \ distclean-tags distdir dvi dvi-am html html-am info info-am \ install install-am install-data install-data-am \ install-data-local install-dvi install-dvi-am install-exec \ install-exec-am install-html install-html-am install-info \ install-info-am install-man install-pdf install-pdf-am \ install-ps install-ps-am install-strip installcheck \ installcheck-am installdirs installdirs-am maintainer-clean \ maintainer-clean-generic maintainer-clean-local mostlyclean \ mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \ tags tags-recursive uninstall uninstall-am uninstall-local @ENABLE_GTK_DOC_TRUE@all-local: $(HTML_BUILD_STAMP) $(PDF_BUILD_STAMP) @ENABLE_GTK_DOC_FALSE@all-local: docs: $(HTML_BUILD_STAMP) $(PDF_BUILD_STAMP) $(REPORT_FILES): sgml-build.stamp #### scan #### scan-build.stamp: $(HFILE_GLOB) $(CFILE_GLOB) @echo 'gtk-doc: Scanning header files' @-chmod -R u+w $(srcdir) @_source_dir='' ; for i in $(DOC_SOURCE_DIR) ; do \ _source_dir="$${_source_dir} --source-dir=$$i" ; \ done ; \ cd $(srcdir) && \ gtkdoc-scan --module=$(DOC_MODULE) --ignore-headers="$(IGNORE_HFILES)" $${_source_dir} $(SCAN_OPTIONS) $(EXTRA_HFILES) @if grep -l '^..*$$' $(srcdir)/$(DOC_MODULE).types > /dev/null 2>&1 ; then \ CC="$(GTKDOC_CC)" LD="$(GTKDOC_LD)" RUN="$(GTKDOC_RUN)" CFLAGS="$(GTKDOC_CFLAGS) $(CFLAGS)" LDFLAGS="$(GTKDOC_LIBS) $(LDFLAGS)" gtkdoc-scangobj $(SCANGOBJ_OPTIONS) --module=$(DOC_MODULE) --output-dir=$(srcdir) ; \ else \ cd $(srcdir) ; \ for i in $(SCANOBJ_FILES) ; do \ test -f $$i || touch $$i ; \ done \ fi @touch scan-build.stamp $(DOC_MODULE)-decl.txt $(SCANOBJ_FILES) $(DOC_MODULE)-sections.txt $(DOC_MODULE)-overrides.txt: scan-build.stamp @true #### templates #### tmpl-build.stamp: $(DOC_MODULE)-decl.txt $(SCANOBJ_FILES) $(DOC_MODULE)-sections.txt $(DOC_MODULE)-overrides.txt @echo 'gtk-doc: Rebuilding template files' @-chmod -R u+w $(srcdir) @cd $(srcdir) && gtkdoc-mktmpl --module=$(DOC_MODULE) $(MKTMPL_OPTIONS) @touch tmpl-build.stamp tmpl.stamp: tmpl-build.stamp @true $(srcdir)/tmpl/*.sgml: @true #### xml #### sgml-build.stamp: tmpl.stamp $(DOC_MODULE)-sections.txt $(srcdir)/tmpl/*.sgml $(expand_content_files) @echo 'gtk-doc: Building XML' @-chmod -R u+w $(srcdir) @_source_dir='' ; for i in $(DOC_SOURCE_DIR) ; do \ _source_dir="$${_source_dir} --source-dir=$$i" ; \ done ; \ cd $(srcdir) && \ gtkdoc-mkdb --module=$(DOC_MODULE) --output-format=xml --expand-content-files="$(expand_content_files)" --main-sgml-file=$(DOC_MAIN_SGML_FILE) $${_source_dir} $(MKDB_OPTIONS) @touch sgml-build.stamp sgml.stamp: sgml-build.stamp @true #### html #### html-build.stamp: sgml.stamp $(DOC_MAIN_SGML_FILE) $(content_files) @echo 'gtk-doc: Building HTML' @-chmod -R u+w $(srcdir) @rm -rf $(srcdir)/html @mkdir $(srcdir)/html @mkhtml_options=""; \ gtkdoc-mkhtml 2>&1 --help | grep >/dev/null "\-\-path"; \ if test "$(?)" = "0"; then \ mkhtml_options=--path="$(srcdir)"; \ fi; \ cd $(srcdir)/html && gtkdoc-mkhtml $$mkhtml_options $(MKHTML_OPTIONS) $(DOC_MODULE) ../$(DOC_MAIN_SGML_FILE) @test "x$(HTML_IMAGES)" = "x" || ( cd $(srcdir) && cp $(HTML_IMAGES) html ) @echo 'gtk-doc: Fixing cross-references' @cd $(srcdir) && gtkdoc-fixxref --module=$(DOC_MODULE) --module-dir=html --html-dir=$(HTML_DIR) $(FIXXREF_OPTIONS) @touch html-build.stamp #### pdf #### pdf-build.stamp: sgml.stamp $(DOC_MAIN_SGML_FILE) $(content_files) @echo 'gtk-doc: Building PDF' @-chmod -R u+w $(srcdir) @rm -rf $(srcdir)/$(DOC_MODULE).pdf @mkpdf_imgdirs=""; \ if test "x$(HTML_IMAGES)" != "x"; then \ for img in $(HTML_IMAGES); do \ part=`dirname $$img`; \ echo $$mkpdf_imgdirs | grep >/dev/null "\-\-imgdir=$$part "; \ if test $$? != 0; then \ mkpdf_imgdirs="$$mkpdf_imgdirs --imgdir=$$part"; \ fi; \ done; \ fi; \ cd $(srcdir) && gtkdoc-mkpdf --path="$(abs_srcdir)" $$mkpdf_imgdirs $(DOC_MODULE) $(DOC_MAIN_SGML_FILE) $(MKPDF_OPTIONS) @touch pdf-build.stamp ############## clean-local: rm -f *~ *.bak rm -rf .libs distclean-local: cd $(srcdir) && \ rm -rf xml $(REPORT_FILES) $(DOC_MODULE).pdf \ $(DOC_MODULE)-decl-list.txt $(DOC_MODULE)-decl.txt maintainer-clean-local: clean cd $(srcdir) && rm -rf xml html install-data-local: @installfiles=`echo $(srcdir)/html/*`; \ if test "$$installfiles" = '$(srcdir)/html/*'; \ then echo '-- Nothing to install' ; \ else \ if test -n "$(DOC_MODULE_VERSION)"; then \ installdir="$(DESTDIR)$(TARGET_DIR)-$(DOC_MODULE_VERSION)"; \ else \ installdir="$(DESTDIR)$(TARGET_DIR)"; \ fi; \ $(mkinstalldirs) $${installdir} ; \ for i in $$installfiles; do \ echo '-- Installing '$$i ; \ $(INSTALL_DATA) $$i $${installdir}; \ done; \ if test -n "$(DOC_MODULE_VERSION)"; then \ mv -f $${installdir}/$(DOC_MODULE).devhelp2 \ $${installdir}/$(DOC_MODULE)-$(DOC_MODULE_VERSION).devhelp2; \ mv -f $${installdir}/$(DOC_MODULE).devhelp \ $${installdir}/$(DOC_MODULE)-$(DOC_MODULE_VERSION).devhelp; \ fi; \ $(GTKDOC_REBASE) --relative --dest-dir=$(DESTDIR) --html-dir=$${installdir}; \ fi uninstall-local: @if test -n "$(DOC_MODULE_VERSION)"; then \ installdir="$(DESTDIR)$(TARGET_DIR)-$(DOC_MODULE_VERSION)"; \ else \ installdir="$(DESTDIR)$(TARGET_DIR)"; \ fi; \ rm -rf $${installdir} # # Require gtk-doc when making dist # @ENABLE_GTK_DOC_TRUE@dist-check-gtkdoc: @ENABLE_GTK_DOC_FALSE@dist-check-gtkdoc: @ENABLE_GTK_DOC_FALSE@ @echo "*** gtk-doc must be installed and enabled in order to make dist" @ENABLE_GTK_DOC_FALSE@ @false dist-hook: dist-check-gtkdoc dist-hook-local mkdir $(distdir)/tmpl mkdir $(distdir)/html -cp $(srcdir)/tmpl/*.sgml $(distdir)/tmpl cp $(srcdir)/html/* $(distdir)/html -cp $(srcdir)/$(DOC_MODULE).pdf $(distdir)/ -cp $(srcdir)/$(DOC_MODULE).types $(distdir)/ -cp $(srcdir)/$(DOC_MODULE)-sections.txt $(distdir)/ cd $(distdir) && rm -f $(DISTCLEANFILES) $(GTKDOC_REBASE) --online --relative --html-dir=$(distdir)/html .PHONY : dist-hook-local docs #DOC_OVERRIDES = $(DOC_MODULE)-overrides.txt # include common portion ... # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. .NOEXPORT: libbonoboui-2.24.5/doc/api/ui-faq.xml0000644000076400007640000003175511173072741014300 00000000000000 Common Questions 3 Common Questions Common Questions Find answers to common questions in the libbonoboui manual Questions and Answers Frequently asked questions about the Bonobo UI Handler, version 0.1 by Michael Meeks <michael@helixcode.com> How do I port my App from the old to the new UI handler? If you have written a component, then ideally you should have to make no code changes, nor re-link the component. There is a compatibility layer that should just work. However, this exposes you to many evils of the old interface, and does strange things to paths for radio items etc. If you have a complex UI you will want to re-write it. If you have written a container, then again the changes are minimal, simply replace the gnome_app calls with bonobo_win calls. As long as you only used the bonobo API to create menus you should be fine. It is *important* that you replace the ui handler parameter to all calls to bonobo_client_site_new_view to something of this form: view_frame = bonobo_client_site_new_view ( BONOBO_CLIENT_SITE (site), bonobo_ui_compat_get_container (ui_handler)); This is also true of the UI handler you pass to bonobo_widget_new_control (..., uih) and its variants. Where do I find examples ? See samples/bonoboui/hello.c which shows several ways of constructing the UI. See also doc/ui-xml.txt. To build standard menus copy items from std-ui.xml in the documentation. How does translation work? Every item has a non translated name which is used to construct a path for programmatic use. This is invariant over translations, it will often be similar to a label or verb name. User readable text is prefixed in the XML file by an '_', the file is parsed as it is read from disk and these '_' are removed as the strings are translated. In order to extract translatable strings from a header file you need to use the 'bonobo-ui-extract' utility which will be installed with bonobo. Do: bonobo-ui-extract my-app-ui.xml > my-app-ui.h Ensure that you include my-app-ui.h in your POTFILES.in, but there is no need to include it in any files. Why don't you use XPath / XPointer? These are fine reccomendations for addressing elements of an XML document. A major contributor to these reccomendations is my friend Daniel Velliard, with whom I discussed this issue. The UI handler primarily is designed to deal with an extremely dynamic XML structure. The whole point of a path is to be invariant over XML (de)merges. It transpires that XPath addressing eg. /menuitem[4] is not suitable for this situation. Hence an alternative, simple path scheme was implemented. Where is the code for the UI handler? See bonobo-window, bonobo-ui-xml, bonobo-ui-container, bonobo-ui-component, bonobo-ui-toolbar, bonobo-ui-item, bonobo-ui-compat Do not see bonobo-ui-handler, bonobo-uih-menu, bonobo-uih-toolbar bonobo-uih-private. These are the old code. But what happens when Component Foo implements 'FileSave' and Component Baa also implements 'FileSave'? The verbs are emitted on the component that registers them. In this case the verb gets sent to the component associated with whatever item was activated. I'm confused by paths, where does the File menu live? In the old strategy there was a partition of the menu vs. other APIs, so a different paths trategy was used, in the old setup we would use: /File [ old ] In the new setup we use: /menu/File [ new ] Thus we can still use the same namespace for toolbars and other misc. items. What does this cmd / widget separation really mean? the plot: Since we want to be able to allow the user to full customize his or her menus and toolbars we need to be able to abstract the following things away from the layout of the menus: sensitivity, hiddenness, state ( such as toggledness ) Other things we want to separate are: default labels, tips and pixmaps So; how is this separation achieved in practice? We have a namespace that 'commands' live in; these can either be things like 'Save' ( a verb ) or 'Threaded View' ( a state with an id ). Both verbs and id's are in the same space. So; we describe the capbilities of a program in terms of the verbs and state inputs it can handle, and provide a default UI layout, perhaps like this: <Root> <commands> <cmd name="baa" _label="Our Label" _tip="Hello World" pixtype="stock" pixname="Open"/> </commands> <menu> <menuitem name="foo" verb="baa"/> </menu> </Root> Now; the user can chose to remove the 'Our Label' button, or more creatively might decide to convert it into a toolbar and change the label to 'MyLabel': - <menu> - <menuitem name="foo" verb="baa"/> - </menu> + <dockitem name="fishy"> + <toolitem name="foo" verb="baa" _label="MyLabel"/> + </dockitem> But what does this mean for the programmer? What it means, is that when you decided to make this ( dangerous lookin ) verb insensitive, instead of setting sensitive="0" on the item at path /menu/foo, you instead do it on the item at path /commands/baa. This then allows the user to have none, one or many representations of each verb/id as either menu or toolbar items. But wait, don't you need Menu_Open for stock menu icons? In this case no; since we need to be able to generate either a menu or a toolbar item view of this verb/id. Consequently the code will add the Menu_ prefix where needed for you. But wait, what if the stock items are called Foo_Open and Baa_Open for menu / toolbar items ? or ... what if I have a non-stock toolbar icon that won't fit in a menu ? Sadly there was not time to implement custom widget sizing logic, so setting a single pixmap on the verb won't work. However, you can still set the pixmap on the individual toolbar / menu items at the expense of customization. But what about acclerators ? How do I get rid of '_'s in my toolbar labels. Since accelerators are clearly part of the widget and not the command it is important to put labels with accelerators in them in the widget and not the command node. _But_ it is also important to ensure that a non-accelerated version is left in the command for use by GUI configuration software as a default label, it would also be wise to use this as the default toolbar label. So this is good practice: <Root> <commands> <cmd name="FileOpen" _label="Open" hidden="1" _tip="Open a file" pixtype="stock" pixname="Open" accel="F3"/> </commands> <menu> <menuitem name="FileNew" verb="" _label="_New"/> </menu> </Root> See std-ui.xml for a set of correctly organised useful cmd and widget descriptions. Note that 'verb=""' is shorthand for making the verb name the same as the node name (in this example, "FileNew"). This is not the same as leaving the verb out entirely. Why don't my old non-alphanumeric keyboard accelerators work anymore? Keyboard accelerators are now specified in ItemFactory format, e.g. "*Control*s". In old Bonobo, you would have passed 'S' to specify the character. For alphanumeric keys, this translation is obvious and hard to get wrong. But for non-alphanumeric keys, you now have to use the symbolic name returned by gdk_keyval_name (which in turn is the symbolic name returned by XKeysymToString). For example, to specify Control-equal-sign as a keyboard accelerator now, you use "*Control*equal". "*Control*=" will silently fail to do anything useful. Standard KeySym names are obtained from <X11/keysymdef.h> by removing the XK_ prefix from each name. Why do the menu bar titles flash when merging occurs? They flash if the <submenu> node has been redefined, or if Bonobo thinks it has been. A common cause for this is to define the label for the menu in more than one place. Bonobo will not recognize that <submenu name="File" _label="File"> is identical to a submenu already defined exactly the same way elsewhere. If you're adding items to an existing menu, don't redefine the label; refer to the existing submenu node by name only, e.g. <submenu name="File">. Note that in addition to flashiness this can also cause torn-off menus to hide themselves. Surely the radio group belongs on the Verb !? Due to the way the group="whatever" works, it is not possible to have the group set on the command, there can of course be mutiple sets of the same radio verbs, but they cannot share the same group. How do I let the user customize a toolbar once it's hidden? You really want to add a menu item with the builtin verb 'BonoboCustomize' that should magically do what you want. In a UI file I have two <menu> elements, and the menu items inside the second <menu> do not show up in the application. What's wrong? You have to put all menu items in a UI file in a single <menu> element. Instead of this: <menu> <menuitem foo/> </menu> <menu> <menuitem foo2/> </menu> Use this: <menu> <menuitem foo/> <menuitem foo2/> </menu> libbonoboui-2.24.5/doc/api/html/0000775000076400007640000000000011546335132013407 500000000000000libbonoboui-2.24.5/doc/api/html/libbonoboui.devhelp20000664000076400007640000014676511546335132017310 00000000000000 libbonoboui-2.24.5/doc/api/html/index.html0000664000076400007640000001207011546335132015324 00000000000000 LibBonoboUI API Reference Manual

Common Questions — Find answers to common questions in the libbonoboui manual
Object Hierarchy
Controls
BonoboControl — An implementation of the control interface for GtkWidgets
BonoboControlFrame — An implementation of the container's frame containing a Control
bonobo-property-control
Bonobo UI
BonoboWidget — Simplified embedding of widgets in Bonobo.
bonobo-window
BonoboUIComponent — A UI interface that handles UI merging for a component
BonoboUIContainer — The container interface as implemented for BonoboWindow
bonobo-ui-util — A collection of utility functions to help with UI related issues
bonobo-ui-node — Simplified XML Node manipulation API
BonoboUIEngine — The guts of the UI handler
bonobo-ui-engine-config
BonoboUISync — A Synchronizer object to keep a widget tree in sync with an XML tree.
bonobo-ui-preferences
Supporting Classes
BonoboPlug — Toplevel for embedding into other processes.
BonoboSocket — Container for widgets from other processes.
bonobo-wrapper
BonoboSelector — a component selector widget
bonobo-selector-widget
bonobo-file-selector-util
bonobo-a11y
Index
libbonoboui-2.24.5/doc/api/html/libbonoboui-faq.html0000664000076400007640000003757611546335132017307 00000000000000 Common Questions

Common Questions

Common Questions — Find answers to common questions in the libbonoboui manual

Questions and Answers

Frequently asked questions about the Bonobo UI Handler, version 0.1 by Michael Meeks <michael@helixcode.com>

1.

How do I port my App from the old to the new UI handler?

If you have written a component, then ideally you should have to make no code changes, nor re-link the component. There is a compatibility layer that should just work. However, this exposes you to many evils of the old interface, and does strange things to paths for radio items etc. If you have a complex UI you will want to re-write it.

If you have written a container, then again the changes are minimal, simply replace the gnome_app calls with bonobo_win calls. As long as you only used the bonobo API to create menus you should be fine. It is *important* that you replace the ui handler parameter to all calls to bonobo_client_site_new_view to something of this form:

view_frame = bonobo_client_site_new_view (
	BONOBO_CLIENT_SITE (site),
	bonobo_ui_compat_get_container (ui_handler));
		    

This is also true of the UI handler you pass to

bonobo_widget_new_control (..., uih)
			

and its variants.

2.

Where do I find examples ?

See samples/bonoboui/hello.c which shows several ways of constructing the UI. See also doc/ui-xml.txt. To build standard menus copy items from std-ui.xml in the documentation.

3.

How does translation work?

Every item has a non translated name which is used to construct a path for programmatic use. This is invariant over translations, it will often be similar to a label or verb name. User readable text is prefixed in the XML file by an '_', the file is parsed as it is read from disk and these '_' are removed as the strings are translated.

In order to extract translatable strings from a header file you need to use the 'bonobo-ui-extract' utility which will be installed with bonobo. Do:

bonobo-ui-extract my-app-ui.xml > my-app-ui.h

Ensure that you include my-app-ui.h in your POTFILES.in, but there is no need to include it in any files.

4.

Why don't you use XPath / XPointer?

These are fine reccomendations for addressing elements of an XML document. A major contributor to these reccomendations is my friend Daniel Velliard, with whom I discussed this issue. The UI handler primarily is designed to deal with an extremely dynamic XML structure. The whole point of a path is to be invariant over XML (de)merges. It transpires that XPath addressing eg. /menuitem[4] is not suitable for this situation. Hence an alternative, simple path scheme was implemented.

5.

Where is the code for the UI handler?

See bonobo-window, bonobo-ui-xml, bonobo-ui-container, bonobo-ui-component, bonobo-ui-toolbar, bonobo-ui-item, bonobo-ui-compat

Do not see bonobo-ui-handler, bonobo-uih-menu, bonobo-uih-toolbar bonobo-uih-private. These are the old code.

6.

But what happens when Component Foo implements 'FileSave' and Component Baa also implements 'FileSave'?

The verbs are emitted on the component that registers them. In this case the verb gets sent to the component associated with whatever item was activated.

7.

I'm confused by paths, where does the File menu live?

In the old strategy there was a partition of the menu vs. other APIs, so a different paths trategy was used, in the old setup we would use:

		/File		[ old ]
		    

In the new setup we use:

		/menu/File	[ new ]
		    

Thus we can still use the same namespace for toolbars and other misc. items.

8.

What does this cmd / widget separation really mean?

the plot:  Since we want to be able to allow the user to full customize his or her menus and toolbars we need to be able to abstract the following things away from the layout of the menus:

sensitivity, hiddenness, state ( such as toggledness )

Other things we want to separate are:

default labels, tips and pixmaps

So; how is this separation achieved in practice?  We have a namespace that 'commands' live in; these can either be things like 'Save' ( a verb ) or 'Threaded View' ( a state with an id ). Both verbs and id's are in the same space. So; we describe the capbilities of a program in terms of the verbs and state inputs it can handle, and provide a default UI layout, perhaps like this:

<Root>
	<commands>
		<cmd name="baa" _label="Our Label" _tip="Hello World"
		 pixtype="stock" pixname="Open"/>
	</commands>
	<menu>
		<menuitem name="foo" verb="baa"/>
	</menu>
</Root>
			    

Now; the user can chose to remove the 'Our Label' button, or more creatively might decide to convert it into a toolbar and change the label to 'MyLabel':

-	<menu>
-		<menuitem name="foo" verb="baa"/>
-	</menu>
+	<dockitem name="fishy">
+		<toolitem name="foo" verb="baa" _label="MyLabel"/>
+	</dockitem>
			    

But what does this mean for the programmer? .  What it means, is that when you decided to make this ( dangerous lookin ) verb insensitive, instead of setting sensitive="0" on the item at path /menu/foo, you instead do it on the item at path /commands/baa. This then allows the user to have none, one or many representations of each verb/id as either menu or toolbar items.

But wait, don't you need Menu_Open for stock menu icons? .  In this case no; since we need to be able to generate either a menu or a toolbar item view of this verb/id. Consequently the code will add the Menu_ prefix where needed for you.

But wait, what if the stock items are called Foo_Open and Baa_Open for menu / toolbar items ? or ... what if I have a non-stock toolbar icon that won't fit in a menu ? .  Sadly there was not time to implement custom widget sizing logic, so setting a single pixmap on the verb won't work. However, you can still set the pixmap on the individual toolbar / menu items at the expense of customization.

But what about acclerators ? How do I get rid of '_'s in my toolbar labels. .  Since accelerators are clearly part of the widget and not the command it is important to put labels with accelerators in them in the widget and not the command node. _But_ it is also important to ensure that a non-accelerated version is left in the command for use by GUI configuration software as a default label, it would also be wise to use this as the default toolbar label. So this is good practice:

<Root>
	<commands>
	        <cmd name="FileOpen" _label="Open" hidden="1"
		_tip="Open a file" pixtype="stock" pixname="Open"
		accel="F3"/>
	</commands>

	<menu>
	        <menuitem name="FileNew" verb="" _label="_New"/>
	</menu>
</Root>
			    

See std-ui.xml for a set of correctly organised useful cmd and widget descriptions. Note that 'verb=""' is shorthand for making the verb name the same as the node name (in this example, "FileNew"). This is not the same as leaving the verb out entirely.

9.

Why don't my old non-alphanumeric keyboard accelerators work anymore?

Keyboard accelerators are now specified in ItemFactory format, e.g. "*Control*s". In old Bonobo, you would have passed 'S' to specify the character. For alphanumeric keys, this translation is obvious and hard to get wrong. But for non-alphanumeric keys, you now have to use the symbolic name returned by gdk_keyval_name (which in turn is the symbolic name returned by XKeysymToString). For example, to specify Control-equal-sign as a keyboard accelerator now, you use "*Control*equal". "*Control*=" will silently fail to do anything useful.

Standard KeySym names are obtained from <X11/keysymdef.h> by removing the XK_ prefix from each name.

10.

Why do the menu bar titles flash when merging occurs?

They flash if the <submenu> node has been redefined, or if Bonobo thinks it has been. A common cause for this is to define the label for the menu in more than one place. Bonobo will not recognize that <submenu name="File" _label="File"> is identical to a submenu already defined exactly the same way elsewhere. If you're adding items to an existing menu, don't redefine the label; refer to the existing submenu node by name only, e.g. <submenu name="File">. Note that in addition to flashiness this can also cause torn-off menus to hide themselves.

11.

Surely the radio group belongs on the Verb !?

Due to the way the group="whatever" works, it is not possible to have the group set on the command, there can of course be mutiple sets of the same radio verbs, but they cannot share the same group.

12.

How do I let the user customize a toolbar once it's hidden?

You really want to add a menu item with the builtin verb 'BonoboCustomize' that should magically do what you want.

13.

In a UI file I have two <menu> elements, and the menu items inside the second <menu> do not show up in the application. What's wrong?

You have to put all menu items in a UI file in a single <menu> element. Instead of this:

<menu>
    <menuitem foo/>
</menu>
<menu>
    <menuitem foo2/>
</menu>
		    

Use this:

<menu>
    <menuitem foo/>
    <menuitem foo2/>
</menu>
		    
libbonoboui-2.24.5/doc/api/html/libbonoboui-bonobo-ui-util.html0000664000076400007640000010005011546335132021356 00000000000000 bonobo-ui-util

bonobo-ui-util

bonobo-ui-util — A collection of utility functions to help with UI related issues

Synopsis

char *              bonobo_ui_util_pixbuf_to_xml        (GdkPixbuf *pixbuf);
GdkPixbuf *         bonobo_ui_util_xml_to_pixbuf        (const char *xml);
GtkWidget *         bonobo_ui_util_xml_get_icon_widget  (BonoboUINode *node,
                                                         GtkIconSize icon_size);
void                bonobo_ui_util_xml_set_pixbuf       (BonoboUINode *node,
                                                         GdkPixbuf *pixbuf);
void                bonobo_ui_util_build_help_menu      (BonoboUIComponent *listener,
                                                         const char *app_prefix,
                                                         const char *app_name,
                                                         BonoboUINode *parent);
char *              bonobo_ui_util_get_ui_fname         (const char *component_prefix,
                                                         const char *file_name);
void                bonobo_ui_util_translate_ui         (BonoboUINode *node);
void                bonobo_ui_util_fixup_help           (BonoboUIComponent *component,
                                                         BonoboUINode *node,
                                                         const char *app_prefix,
                                                         const char *app_name);
void                bonobo_ui_util_fixup_icons          (BonoboUINode *node);
BonoboUINode *      bonobo_ui_util_new_ui               (BonoboUIComponent *component,
                                                         const char *fname,
                                                         const char *app_prefix,
                                                         const char *app_name);
void                bonobo_ui_util_set_ui               (BonoboUIComponent *component,
                                                         const char *app_prefix,
                                                         const char *file_name,
                                                         const char *app_name,
                                                         CORBA_Environment *opt_ev);
void                bonobo_ui_util_set_pixbuf           (BonoboUIComponent *component,
                                                         const char *path,
                                                         GdkPixbuf *pixbuf,
                                                         CORBA_Environment *opt_ev);
gchar *             bonobo_ui_util_accel_name           (guint accelerator_key,
                                                         GdkModifierType accelerator_mods);
void                bonobo_ui_util_accel_parse          (const char *name,
                                                         guint *accelerator_key,
                                                         GdkModifierType *accelerator_mods);
#define             bonobo_ui_util_decode_str           (s,
                                                         e)
#define             bonobo_ui_util_encode_str           (s)

Description

The UI utilities do man things, mostly concerned with smoothing the flow of XML data from containee to container. There are also several generaly useful functions used internaly for manipulating pixmaps. Also, code for stringifying accelerators, fixing up help and working around libxml bugs. Also a large chunk of code is included for dynamic UI tree building that is now strongly deprecated by the various tools to do this from dynamic files.

Details

bonobo_ui_util_pixbuf_to_xml ()

char *              bonobo_ui_util_pixbuf_to_xml        (GdkPixbuf *pixbuf);

Convert a pixbuf to a string representation suitable for passing as a "pixname" attribute with a pixtype attribute = "pixbuf".

pixbuf :

a GdkPixbuf

Returns :

the stringified pixbuf.

bonobo_ui_util_xml_to_pixbuf ()

GdkPixbuf *         bonobo_ui_util_xml_to_pixbuf        (const char *xml);

This converts a stringified pixbuf in xml into a GdkPixbuf

xml :

a string

Returns :

a handed reference to the created GdkPixbuf.

bonobo_ui_util_xml_get_icon_widget ()

GtkWidget *         bonobo_ui_util_xml_get_icon_widget  (BonoboUINode *node,
                                                         GtkIconSize icon_size);

This function extracts a pixbuf from the node and returns a GtkWidget containing a display of the pixbuf.

Unused internally.

node :

the node

icon_size :

the desired size of the icon

Returns :

the widget.

bonobo_ui_util_xml_set_pixbuf ()

void                bonobo_ui_util_xml_set_pixbuf       (BonoboUINode *node,
                                                         GdkPixbuf *pixbuf);

Associate pixbuf with this node by stringifying it and setting the requisite attributes.

node :

the node

pixbuf :

the pixbuf

bonobo_ui_util_build_help_menu ()

void                bonobo_ui_util_build_help_menu      (BonoboUIComponent *listener,
                                                         const char *app_prefix,
                                                         const char *app_name,
                                                         BonoboUINode *parent);

This routine inserts all the help menu items appropriate for this application as children of the parent node.

listener :

associated component

app_prefix :

application prefix

app_name :

application name

parent :

toplevel node

bonobo_ui_util_get_ui_fname ()

char *              bonobo_ui_util_get_ui_fname         (const char *component_prefix,
                                                         const char *file_name);

Builds a path to the xml file that stores the GUI.

component_prefix :

file_name :

the file name of the xml file.

Returns :

the path to the file that describes the UI or NULL if it is not found.

bonobo_ui_util_translate_ui ()

void                bonobo_ui_util_translate_ui         (BonoboUINode *node);

Quest through a tree looking for translatable properties ( those prefixed with an '_' ). Translates the value of the property and removes the leading '_'.

node :

the node to start at.

bonobo_ui_util_fixup_help ()

void                bonobo_ui_util_fixup_help           (BonoboUIComponent *component,
                                                         BonoboUINode *node,
                                                         const char *app_prefix,
                                                         const char *app_name);

This searches for 'BuiltMenuItems' placeholders, and then fills them with the application's menu items.

component :

the UI component

node :

the node to search under

app_prefix :

the application prefix

app_name :

the application name

bonobo_ui_util_fixup_icons ()

void                bonobo_ui_util_fixup_icons          (BonoboUINode *node);

This function is used to ensure filename pixbuf attributes are converted to in-line pixbufs on the server side, so that we don't sent a ( possibly invalid ) filename across the wire.

node :

the node

bonobo_ui_util_new_ui ()

BonoboUINode *      bonobo_ui_util_new_ui               (BonoboUIComponent *component,
                                                         const char *fname,
                                                         const char *app_prefix,
                                                         const char *app_name);

Loads an xml tree from a file, cleans the doc cruft from its nodes; and translates the nodes.

component :

The component help callback should be on

fname :

app_prefix :

app_name :

Application name ( for finding help )

Returns :

The translated tree ready to be merged.

bonobo_ui_util_set_ui ()

void                bonobo_ui_util_set_ui               (BonoboUIComponent *component,
                                                         const char *app_prefix,
                                                         const char *file_name,
                                                         const char *app_name,
                                                         CORBA_Environment *opt_ev);

This function loads the UI from the associated file, translates it, fixes up all the menus, ensures pixbuf filenames are resolved to xml and then merges the XML to the remote container - this is the best and most simple entry point for the new UI code.

component :

the component

app_prefix :

file_name :

the filename of the file to merge relative to the prefix.

app_name :

the application name - for help merging

opt_ev :


bonobo_ui_util_set_pixbuf ()

void                bonobo_ui_util_set_pixbuf           (BonoboUIComponent *component,
                                                         const char *path,
                                                         GdkPixbuf *pixbuf,
                                                         CORBA_Environment *opt_ev);

This helper function sets a pixbuf at a certain path into an xml tree.

component :

the component

path :

the path into the xml tree

pixbuf :

the pixbuf

opt_ev :


bonobo_ui_util_accel_name ()

gchar *             bonobo_ui_util_accel_name           (guint accelerator_key,
                                                         GdkModifierType accelerator_mods);

This stringifies an accelerator_key and some accelerator_mods it is the converse of bonobo_ui_util_accel_parse

accelerator_key :

the key

accelerator_mods :

the modifiers

Returns :

the stringified representation

bonobo_ui_util_accel_parse ()

void                bonobo_ui_util_accel_parse          (const char *name,
                                                         guint *accelerator_key,
                                                         GdkModifierType *accelerator_mods);

This parses the accelerator string and returns the key and mods associated with it - using a similar format to Gtk+ but one which doesn't involve inefficient XML entities and avoids other misc. problems.

name :

accelerator_key :

output of the key

accelerator_mods :

output of the mods

bonobo_ui_util_decode_str()

#define         bonobo_ui_util_decode_str(s,e) g_strdup (s)

s :

e :

Returns :


bonobo_ui_util_encode_str()

#define         bonobo_ui_util_encode_str(s)   g_strdup (s)

s :

Returns :

libbonoboui-2.24.5/doc/api/html/index.sgml0000664000076400007640000017456511546335132015344 00000000000000 libbonoboui-2.24.5/doc/api/html/libbonoboui.devhelp0000664000076400007640000013440211546335132017207 00000000000000 libbonoboui-2.24.5/doc/api/html/libbonoboui-bonobo-wrapper.html0000664000076400007640000002421711546335132021460 00000000000000 bonobo-wrapper

bonobo-wrapper

bonobo-wrapper

Description

Details

BonoboWrapperPrivate

typedef struct _BonoboWrapperPrivate BonoboWrapperPrivate;


BonoboWrapper

typedef struct {
	GtkBin bin;

	/* Private data. */
	BonoboWrapperPrivate *priv;
} BonoboWrapper;


BonoboWrapperClass

typedef struct {
	GtkBinClass parent_class;
} BonoboWrapperClass;


bonobo_wrapper_new ()

GtkWidget *         bonobo_wrapper_new                  (void);

Returns :


bonobo_wrapper_set_covered ()

void                bonobo_wrapper_set_covered          (BonoboWrapper *wrapper,
                                                         gboolean covered);

wrapper :

covered :


bonobo_wrapper_is_covered ()

gboolean            bonobo_wrapper_is_covered           (BonoboWrapper *wrapper);

wrapper :

Returns :


bonobo_wrapper_get_visibility ()

gboolean            bonobo_wrapper_get_visibility       (BonoboWrapper *wrapper);

wrapper :

Returns :


bonobo_wrapper_set_visibility ()

void                bonobo_wrapper_set_visibility       (BonoboWrapper *wrapper,
                                                         gboolean visible);

wrapper :

visible :

libbonoboui-2.24.5/doc/api/html/bonobo-controls.html0000664000076400007640000000416111546335132017336 00000000000000 Controls

Controls

BonoboControl — An implementation of the control interface for GtkWidgets
BonoboControlFrame — An implementation of the container's frame containing a Control
bonobo-property-control
libbonoboui-2.24.5/doc/api/html/libbonoboui-bonobo-socket.html0000664000076400007640000002635411546335132021274 00000000000000 BonoboSocket

BonoboSocket

BonoboSocket — Container for widgets from other processes.

Synopsis

                    BonoboSocket;
                    BonoboSocketClass;
GtkWidget*          bonobo_socket_new                   (void);

Object Hierarchy

  GObject
   +----GInitiallyUnowned
         +----GtkObject
               +----GtkWidget
                     +----GtkContainer
                           +----GtkSocket
                                 +----BonoboSocket

Implemented Interfaces

BonoboSocket implements AtkImplementorIface and GtkBuildable.

Description

This is an internal support routine of the X code in Bonobo.

Together with BonoboPlug, BonoboSocket provides the ability to embed widgets from one process into another process in a fashion that is transparent to the user. One process creates a BonoboSocket widget and, passes the XID of that widget's window to the other process, which then creates a BonoboPlug window with that XID. Any widgets contained in the BonoboPlug then will appear inside the first applications window.

The XID of the socket's window is obtained by using the GTK_WINDOW_XWINDOW() macro from the header file <gdk/gdkx.h>. Before using this macro, the socket must have been realized, and for hence, have been added to its parent.

Example 9.  Obtaining the XID of a socket

1
2
3
4
5
6
7
8
9
10
#include <gdk/gdkx.h>
GtkWidget *socket = bonobo_socket_new();
gtk_widget_show (socket);
gtk_container_add (GTK_CONTAINER (parent), socket);
/* The following call is only necessary if one of
 * the ancestors of the socket is not yet visible.
 */
gtk_widget_realize (socket);
g_print ("The XID of the sockets window is %<GTKDOCLINK HREF="x">x</GTKDOCLINK>\n",
         GDK_WINDOW_XWINDOW (socket->window));


Note that if you pass the XID of the socket to another process that will create a plug in the socket, you must make sure that the socket widget is not destroyed until that plug is created. Violating this rule will cause unpredictable consequences, the most likely consequence being that the plug will appear as a separate toplevel window. You can check if the plug has been created by examining the plug_window field of the BonoboSocket structure. If this field is non-NULL, then the plug has been succesfully created inside of the socket.

When GTK+ is notified that the embedded window has been destroyed, then it will destroy the socket as well. You should always, therefore, be prepared for your sockets to be destroyed at any time when the main event loop is running.

A socket can also be used to swallow arbitrary pre-existing top-level windows using gtk_socket_steal(), though the integration when this is done will not be as close as between a BonoboPlug and a BonoboSocket.

Details

BonoboSocket

typedef struct _BonoboSocket BonoboSocket;

The GtkEditable structure contains the following field. (This field should be considered read-only. It should never be set by an application.)

GdkWindow *plug_window; the window embedded inside this GtkSocket.


BonoboSocketClass

typedef struct {
	GtkSocketClass parent_class;

	gpointer dummy[4];
} BonoboSocketClass;


bonobo_socket_new ()

GtkWidget*          bonobo_socket_new                   (void);

Create a new empty BonoboSocket.

Returns :

A new BonoboSocket.

See Also

BonoboPlug

the widget that plugs into a BonoboSocket.

libbonoboui-2.24.5/doc/api/html/libbonoboui-bonobo-property-control.html0000664000076400007640000005412211546335132023340 00000000000000 bonobo-property-control

bonobo-property-control

bonobo-property-control

Synopsis

                    BonoboPropertyControl;
                    BonoboPropertyControlPrivate;
#define             BONOBO_PROPERTY_CONTROL_CHANGED
BonoboControl *     (*BonoboPropertyControlGetControlFn)
                                                        (BonoboPropertyControl *control,
                                                         int page_number,
                                                         void *closure);
                    BonoboPropertyControlClass;
BonoboPropertyControl * bonobo_property_control_construct
                                                        (BonoboPropertyControl *property_control,
                                                         BonoboEventSource *event_source,
                                                         BonoboPropertyControlGetControlFn get_fn,
                                                         int num_pages,
                                                         void *closure);
BonoboPropertyControl * bonobo_property_control_new_full
                                                        (BonoboPropertyControlGetControlFn get_fn,
                                                         int num_pages,
                                                         BonoboEventSource *event_source,
                                                         void *closure);
BonoboPropertyControl * bonobo_property_control_new     (BonoboPropertyControlGetControlFn get_fn,
                                                         int num_pages,
                                                         void *closure);
void                bonobo_property_control_changed     (BonoboPropertyControl *property_control,
                                                         CORBA_Environment *opt_ev);
BonoboEventSource * bonobo_property_control_get_event_source
                                                        (BonoboPropertyControl *property_control);

Object Hierarchy

  GObject
   +----BonoboObject
         +----BonoboPropertyControl

Signals

  "action"                                         : Run First

Description

Details

BonoboPropertyControl

typedef struct _BonoboPropertyControl BonoboPropertyControl;


BonoboPropertyControlPrivate

typedef struct _BonoboPropertyControlPrivate BonoboPropertyControlPrivate;


BONOBO_PROPERTY_CONTROL_CHANGED

#define BONOBO_PROPERTY_CONTROL_CHANGED "Bonobo::PropertyControl_changed"


BonoboPropertyControlGetControlFn ()

BonoboControl *     (*BonoboPropertyControlGetControlFn)
                                                        (BonoboPropertyControl *control,
                                                         int page_number,
                                                         void *closure);

control :

page_number :

closure :

Returns :


BonoboPropertyControlClass

typedef struct {
	BonoboObjectClass parent_class;

	POA_Bonobo_PropertyControl__epv epv;

	gpointer dummy[4];

	void (* action) (BonoboPropertyControl *property_control, 
			 Bonobo_PropertyControl_Action action);
} BonoboPropertyControlClass;


bonobo_property_control_construct ()

BonoboPropertyControl * bonobo_property_control_construct
                                                        (BonoboPropertyControl *property_control,
                                                         BonoboEventSource *event_source,
                                                         BonoboPropertyControlGetControlFn get_fn,
                                                         int num_pages,
                                                         void *closure);

Initialises the BonoboPropertyControl object.

property_control :

A BonoboPropertyControl object.

event_source :

A BonoboEventSource object that will be aggregated onto the property control.

get_fn :

Creation routine.

num_pages :

closure :

Data passed to closure routine.

Returns :

The newly constructed BonoboPropertyControl.

bonobo_property_control_new_full ()

BonoboPropertyControl * bonobo_property_control_new_full
                                                        (BonoboPropertyControlGetControlFn get_fn,
                                                         int num_pages,
                                                         BonoboEventSource *event_source,
                                                         void *closure);

Creates a BonoboPropertyControl object.

get_fn :

The function to be called when the getControl method is called.

num_pages :

The number of pages this property control has.

event_source :

The event source to use to emit events on.

closure :

The data to be passed into the get_fn routine.

Returns :

A pointer to a newly created BonoboPropertyControl object.

bonobo_property_control_new ()

BonoboPropertyControl * bonobo_property_control_new     (BonoboPropertyControlGetControlFn get_fn,
                                                         int num_pages,
                                                         void *closure);

Creates a BonoboPropertyControl object.

get_fn :

The function to be called when the getControl method is called.

num_pages :

The number of pages this property control has.

closure :

The data to be passed into the get_fn routine

Returns :

A pointer to a newly created BonoboPropertyControl object.

bonobo_property_control_changed ()

void                bonobo_property_control_changed     (BonoboPropertyControl *property_control,
                                                         CORBA_Environment *opt_ev);

Tells the server that a value in the property control has been changed, and that it should indicate this somehow.

property_control :

The BonoboPropertyControl that has changed.

opt_ev :

An optional CORBA_Environment for exception handling.

bonobo_property_control_get_event_source ()

BonoboEventSource * bonobo_property_control_get_event_source
                                                        (BonoboPropertyControl *property_control);

Returns the BonoboEventSource that property_control uses.

property_control :

The BonoboPropertyControl.

Returns :

A BonoboEventSource.

Signal Details

The "action" signal

void                user_function                      (BonoboPropertyControl *bonobopropertycontrol,
                                                        gint                   arg1,
                                                        gint                   arg2,
                                                        gpointer               user_data)                  : Run First

bonobopropertycontrol :

the object which received the signal.

arg1 :

arg2 :

user_data :

user data set when the signal handler was connected.
libbonoboui-2.24.5/doc/api/html/bonobo-support-utilities.html0000664000076400007640000000535311546335132021224 00000000000000 Supporting Classes

Supporting Classes

BonoboPlug — Toplevel for embedding into other processes.
BonoboSocket — Container for widgets from other processes.
bonobo-wrapper
BonoboSelector — a component selector widget
bonobo-selector-widget
bonobo-file-selector-util
bonobo-a11y
libbonoboui-2.24.5/doc/api/html/libbonoboui-bonobo-ui-node.html0000664000076400007640000013605611546335132021345 00000000000000 bonobo-ui-node

bonobo-ui-node

bonobo-ui-node — Simplified XML Node manipulation API

Synopsis

                    BonoboUINode;
BonoboUINode *      bonobo_ui_node_new                  (const char *name);
BonoboUINode *      bonobo_ui_node_new_child            (BonoboUINode *parent,
                                                         const char *name);
BonoboUINode *      bonobo_ui_node_copy                 (BonoboUINode *node,
                                                         gboolean recursive);
void                bonobo_ui_node_free                 (BonoboUINode *node);
void                bonobo_ui_node_set_data             (BonoboUINode *node,
                                                         gpointer data);
gpointer            bonobo_ui_node_get_data             (BonoboUINode *node);
void                bonobo_ui_node_set_attr             (BonoboUINode *node,
                                                         const char *name,
                                                         const char *value);
char *              bonobo_ui_node_get_attr             (BonoboUINode *node,
                                                         const char *name);
gboolean            bonobo_ui_node_has_attr             (BonoboUINode *node,
                                                         const char *name);
void                bonobo_ui_node_remove_attr          (BonoboUINode *node,
                                                         const char *name);
void                bonobo_ui_node_add_child            (BonoboUINode *parent,
                                                         BonoboUINode *child);
void                bonobo_ui_node_insert_before        (BonoboUINode *after,
                                                         BonoboUINode *new_before);
void                bonobo_ui_node_unlink               (BonoboUINode *node);
void                bonobo_ui_node_replace              (BonoboUINode *old_node,
                                                         BonoboUINode *new_node);
void                bonobo_ui_node_set_content          (BonoboUINode *node,
                                                         const char *content);
char *              bonobo_ui_node_get_content          (BonoboUINode *node);
BonoboUINode *      bonobo_ui_node_next                 (BonoboUINode *node);
BonoboUINode *      bonobo_ui_node_prev                 (BonoboUINode *node);
BonoboUINode *      bonobo_ui_node_children             (BonoboUINode *node);
BonoboUINode *      bonobo_ui_node_parent               (BonoboUINode *node);
const char *        bonobo_ui_node_get_name             (BonoboUINode *node);
gboolean            bonobo_ui_node_has_name             (BonoboUINode *node,
                                                         const char *name);
gboolean            bonobo_ui_node_transparent          (BonoboUINode *node);
void                bonobo_ui_node_copy_attrs           (const BonoboUINode *src,
                                                         BonoboUINode *dest);
void                bonobo_ui_node_free_string          (char *str);
void                bonobo_ui_node_strip                (BonoboUINode **node);
char *              bonobo_ui_node_to_string            (BonoboUINode *node,
                                                         gboolean recurse);
BonoboUINode*       bonobo_ui_node_from_string          (const char *str);
BonoboUINode*       bonobo_ui_node_from_file            (const char *filename);

Description

The BonoboUINode API is designed to make XML node manipulation simple, and to hide the underlying implementation of the XML tree. This is to allow the use of some more efficient internal representation than libxml's at some later date.

Details

BonoboUINode

typedef struct _BonoboUINode BonoboUINode;

The BonoboUINode structure is fully opaque to stop any code depending on libxml inadvertantly.


bonobo_ui_node_new ()

BonoboUINode *      bonobo_ui_node_new                  (const char *name);

Creates a new node with name name

name :

The name for the node

Returns :

a new node pointer

bonobo_ui_node_new_child ()

BonoboUINode *      bonobo_ui_node_new_child            (BonoboUINode *parent,
                                                         const char *name);

Create a new node as a child of parent with name name

parent :

the parent

name :

the name of the new child

Returns :

pointer to the new child

bonobo_ui_node_copy ()

BonoboUINode *      bonobo_ui_node_copy                 (BonoboUINode *node,
                                                         gboolean recursive);

Copy an XML node, if recursive do a deep copy, otherwise just dup the node itself.

node :

the node

recursive :

whether to dup children too.

Returns :

a copy of the noce

bonobo_ui_node_free ()

void                bonobo_ui_node_free                 (BonoboUINode *node);

Frees the memory associated with the node and unlink it from the tree

node :

a node.

bonobo_ui_node_set_data ()

void                bonobo_ui_node_set_data             (BonoboUINode *node,
                                                         gpointer data);

Associates some user data with the node pointer

node :

the node

data :

user data

bonobo_ui_node_get_data ()

gpointer            bonobo_ui_node_get_data             (BonoboUINode *node);

Gets user data associated with node

node :

the node

Returns :

the user data, see bonobo_ui_node_set_data

bonobo_ui_node_set_attr ()

void                bonobo_ui_node_set_attr             (BonoboUINode *node,
                                                         const char *name,
                                                         const char *value);

Set the attribute of name on node to value overriding any previous values of that attr.

node :

The node

name :

the name of the attr

value :

the value for the attr

bonobo_ui_node_get_attr ()

char *              bonobo_ui_node_get_attr             (BonoboUINode *node,
                                                         const char *name);

Fetch the value of an attr of name name from node see also: bonobo_ui_node_free_string

node :

the node

name :

the name of the attr to get

Returns :

the attr text.

bonobo_ui_node_has_attr ()

gboolean            bonobo_ui_node_has_attr             (BonoboUINode *node,
                                                         const char *name);

Determines whether the node has an attribute of name name

node :

the node

name :

the name of the attr to detect

Returns :

TRUE if the attr exists

bonobo_ui_node_remove_attr ()

void                bonobo_ui_node_remove_attr          (BonoboUINode *node,
                                                         const char *name);

remove any attribute with name name from node

node :

the node

name :

name of the attribute

bonobo_ui_node_add_child ()

void                bonobo_ui_node_add_child            (BonoboUINode *parent,
                                                         BonoboUINode *child);

Add a child node to the parent node ( after the other children )

parent :

the parent

child :

the new child

bonobo_ui_node_insert_before ()

void                bonobo_ui_node_insert_before        (BonoboUINode *after,
                                                         BonoboUINode *new_before);

Insert a sibling before prev_sibling in a node list

after :

the placeholder for insertion

new_before :

the node to insert

bonobo_ui_node_unlink ()

void                bonobo_ui_node_unlink               (BonoboUINode *node);

Unlink node from its tree, ie. disassociate it with its parent

node :

the node

bonobo_ui_node_replace ()

void                bonobo_ui_node_replace              (BonoboUINode *old_node,
                                                         BonoboUINode *new_node);

Replace old_node with new_node in the tree. old_node is left unlinked and floating with its children.

old_node :

node to be replaced

new_node :

node to replace with

bonobo_ui_node_set_content ()

void                bonobo_ui_node_set_content          (BonoboUINode *node,
                                                         const char *content);

Set the textual content of node to content

node :

the node

content :

the new content

bonobo_ui_node_get_content ()

char *              bonobo_ui_node_get_content          (BonoboUINode *node);

see also: bonobo_ui_node_free_string

node :

the node

Returns :

the content of node

bonobo_ui_node_next ()

BonoboUINode *      bonobo_ui_node_next                 (BonoboUINode *node);

node :

the node

Returns :

the node after node in the list

bonobo_ui_node_prev ()

BonoboUINode *      bonobo_ui_node_prev                 (BonoboUINode *node);

node :

the node

Returns :

the node after node in the list

bonobo_ui_node_children ()

BonoboUINode *      bonobo_ui_node_children             (BonoboUINode *node);

node :

the node

Returns :

the first child of node

bonobo_ui_node_parent ()

BonoboUINode *      bonobo_ui_node_parent               (BonoboUINode *node);

node :

the node

Returns :

the parent node of node

bonobo_ui_node_get_name ()

const char *        bonobo_ui_node_get_name             (BonoboUINode *node);

node :

the node

Returns :

the name of node

bonobo_ui_node_has_name ()

gboolean            bonobo_ui_node_has_name             (BonoboUINode *node,
                                                         const char *name);

node :

the node

name :

a name the node might have

Returns :

TRUE if node has name == name

bonobo_ui_node_transparent ()

gboolean            bonobo_ui_node_transparent          (BonoboUINode *node);

Determines whether node is transparent. A node is transparent if it has no content and either no attributes or a single 'name' attribute.

node :

the node

Returns :

TRUE if transparent

bonobo_ui_node_copy_attrs ()

void                bonobo_ui_node_copy_attrs           (const BonoboUINode *src,
                                                         BonoboUINode *dest);

This function copies all the attributes from src to dest effectively cloning the src node as dest

src :

the attr source node

dest :

where to dump the attrs.

bonobo_ui_node_free_string ()

void                bonobo_ui_node_free_string          (char *str);

Frees a string returned by any of the get routines.

str :

the string to free.

bonobo_ui_node_strip ()

void                bonobo_ui_node_strip                (BonoboUINode **node);

A compat function for legacy reasons.

node :

a pointer to the node's pointer

bonobo_ui_node_to_string ()

char *              bonobo_ui_node_to_string            (BonoboUINode *node,
                                                         gboolean recurse);

Convert the node to its XML string representation.

node :

the node tree

recurse :

whether to dump its children as well

Returns :

the string representation or NULL on error Use g_free to free.

bonobo_ui_node_from_string ()

BonoboUINode*       bonobo_ui_node_from_string          (const char *str);

Parses a string into an XML tree

str :

Returns :

the xml tree.

bonobo_ui_node_from_file ()

BonoboUINode*       bonobo_ui_node_from_file            (const char *filename);

Loads and parses the filename into an XML tree

filename :

Returns :

the xml tree.

See Also

BonoboUIComponent, bonobo-ui-util

libbonoboui-2.24.5/doc/api/html/libbonoboui-bonobo-control-frame.html0000664000076400007640000014275611546335132022561 00000000000000 BonoboControlFrame

BonoboControlFrame

BonoboControlFrame — An implementation of the container's frame containing a Control

Synopsis

                    BonoboControlFrame;
                    BonoboControlFramePrivate;
                    BonoboControlFrameClass;
#define             BONOBO_CONTROL_FRAME_TOPLEVEL_PROP
BonoboControlFrame * bonobo_control_frame_construct     (BonoboControlFrame *control_frame,
                                                         Bonobo_UIContainer ui_container,
                                                         CORBA_Environment *ev);
BonoboControlFrame * bonobo_control_frame_new           (Bonobo_UIContainer ui_container);
GtkWidget *         bonobo_control_frame_get_widget     (BonoboControlFrame *frame);
void                bonobo_control_frame_set_ui_container
                                                        (BonoboControlFrame *control_frame,
                                                         Bonobo_UIContainer uic,
                                                         CORBA_Environment *ev);
void                bonobo_control_frame_control_activate
                                                        (BonoboControlFrame *control_frame);
void                bonobo_control_frame_control_deactivate
                                                        (BonoboControlFrame *control_frame);
void                bonobo_control_frame_set_autoactivate
                                                        (BonoboControlFrame *control_frame,
                                                         gboolean autoactivate);
gboolean            bonobo_control_frame_get_autoactivate
                                                        (BonoboControlFrame *control_frame);
Bonobo_PropertyBag  bonobo_control_frame_get_control_property_bag
                                                        (BonoboControlFrame *control_frame,
                                                         CORBA_Environment *opt_ev);
void                bonobo_control_frame_set_propbag    (BonoboControlFrame *control_frame,
                                                         BonoboPropertyBag *propbag);
BonoboPropertyBag * bonobo_control_frame_get_propbag    (BonoboControlFrame *control_frame);
void                bonobo_control_frame_control_set_state
                                                        (BonoboControlFrame *control_frame,
                                                         GtkStateType state);
void                bonobo_control_frame_set_autostate  (BonoboControlFrame *control_frame,
                                                         gboolean autostate);
gboolean            bonobo_control_frame_get_autostate  (BonoboControlFrame *control_frame);
void                bonobo_control_frame_bind_to_control
                                                        (BonoboControlFrame *control_frame,
                                                         Bonobo_Control control,
                                                         CORBA_Environment *opt_ev);
Bonobo_Control      bonobo_control_frame_get_control    (BonoboControlFrame *control_frame);
Bonobo_UIContainer  bonobo_control_frame_get_ui_container
                                                        (BonoboControlFrame *control_frame);
BonoboUIComponent * bonobo_control_frame_get_popup_component
                                                        (BonoboControlFrame *control_frame,
                                                         CORBA_Environment *opt_ev);

Object Hierarchy

  GObject
   +----BonoboObject
         +----BonoboControlFrame

Description

The BonoboControlFrame object is used to embed a Control. Most people will want to use BonoboWidget instead of the control frame since it provides lots of nice auxiliary features to make embedding easy.

Figure 2. The Bonobo::ControlFrame interface

The Bonobo::ControlFrame interface

The control frame is coupled to an embedded control and is used to allow the Control to communicate with its environment, particuarly getting the BonoboUIContainer for merging its menu / toolbar UI elements.

Example 3. A nice use of a BonoboControlFrame

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
BonoboWidget *
bonobo_widget_construct_control_from_objref (BonoboWidget      *bw,
                         Bonobo_Control     control,
                         Bonobo_UIContainer uic)
{
    GtkWidget    *control_frame_widget;
    /*
     * Create a local ControlFrame for it.
     */
    bw->priv->control_frame = bonobo_control_frame_new (uic);
    bonobo_control_frame_bind_to_control (bw->priv->control_frame, control);
    ...
    bonobo_control_frame_set_autoactivate (bw->priv->control_frame, TRUE);
    /*
     * Grab the actual widget which visually contains the remote
     * Control.  This is a GtkSocket, in reality.
     */
    control_frame_widget = bonobo_control_frame_get_widget (bw->priv->control_frame);
    /*
     * Now stick it into this BonoboWidget.
     */
    gtk_container_add (GTK_CONTAINER (bw),
               control_frame_widget);
    /*
     * Always remember to show the widget before reporting bugs.
     */
    gtk_widget_show (control_frame_widget);
    if (uic != CORBA_OBJECT_NIL)
        bw->priv->uic = bonobo_object_dup_ref (uic, NULL);
    return bw;
}


Details

BonoboControlFrame

typedef struct _BonoboControlFrame BonoboControlFrame;


BonoboControlFramePrivate

typedef struct _BonoboControlFramePrivate BonoboControlFramePrivate;


BonoboControlFrameClass

typedef struct {
	BonoboObjectClass parent_class;

	POA_Bonobo_ControlFrame__epv epv;

	gpointer dummy[4];

	/* Signals. */
	void (*activated)           (BonoboControlFrame *control_frame, gboolean state);
	void (*activate_uri)        (BonoboControlFrame *control_frame, const char *uri, gboolean relative);
} BonoboControlFrameClass;


BONOBO_CONTROL_FRAME_TOPLEVEL_PROP

#define BONOBO_CONTROL_FRAME_TOPLEVEL_PROP "bonobo:toplevel"


bonobo_control_frame_construct ()

BonoboControlFrame * bonobo_control_frame_construct     (BonoboControlFrame *control_frame,
                                                         Bonobo_UIContainer ui_container,
                                                         CORBA_Environment *ev);

Initializes control_frame with the parameters.

control_frame :

The BonoboControlFrame object to be initialized.

ui_container :

A CORBA object for the UIContainer for the container application.

ev :

Returns :

the initialized BonoboControlFrame object control_frame that implements the Bonobo::ControlFrame CORBA service.

bonobo_control_frame_new ()

BonoboControlFrame * bonobo_control_frame_new           (Bonobo_UIContainer ui_container);

ui_container :

The Bonobo_UIContainer for the container application.

Returns :

BonoboControlFrame object that implements the Bonobo::ControlFrame CORBA service.

bonobo_control_frame_get_widget ()

GtkWidget *         bonobo_control_frame_get_widget     (BonoboControlFrame *frame);

Use this function when you want to embed a BonoboControl into your container's widget hierarchy. Once you have bound the BonoboControlFrame to a remote BonoboControl, place the widget returned by bonobo_control_frame_get_widget() into your widget hierarchy and the control will appear in your application.

frame :

The BonoboControlFrame whose widget is being requested.a

Returns :

A GtkWidget which has the remote BonoboControl physically inside it.

bonobo_control_frame_set_ui_container ()

void                bonobo_control_frame_set_ui_container
                                                        (BonoboControlFrame *control_frame,
                                                         Bonobo_UIContainer uic,
                                                         CORBA_Environment *ev);

Associates a new Bonobo_UIContainer object with this ControlFrame. This is only allowed while the Control is deactivated.

control_frame :

uic :

A Bonobo_UIContainer object reference.

ev :


bonobo_control_frame_control_activate ()

void                bonobo_control_frame_control_activate
                                                        (BonoboControlFrame *control_frame);

Activates the BonoboControl embedded in control_frame by calling the activate() Bonobo_Control interface method on it.

control_frame :

The BonoboControlFrame object whose control should be activated.

bonobo_control_frame_control_deactivate ()

void                bonobo_control_frame_control_deactivate
                                                        (BonoboControlFrame *control_frame);

Deactivates the BonoboControl embedded in frame by calling the activate() CORBA method on it with the parameter FALSE.

control_frame :

The BonoboControlFrame object whose control should be deactivated.

bonobo_control_frame_set_autoactivate ()

void                bonobo_control_frame_set_autoactivate
                                                        (BonoboControlFrame *control_frame,
                                                         gboolean autoactivate);

Modifies the autoactivate behavior of frame. If frame is set to autoactivate, then it will automatically send an "activate" message to the Control to which it is bound when it gets a focus-in event, and a "deactivate" message when it gets a focus-out event. Autoactivation is off by default.

control_frame :

autoactivate :

A flag which indicates whether or not the ControlFrame should automatically perform activation on the Control to which it is bound.

bonobo_control_frame_get_autoactivate ()

gboolean            bonobo_control_frame_get_autoactivate
                                                        (BonoboControlFrame *control_frame);

control_frame :

Returns :

A boolean which indicates whether or not frame is set to automatically activate its Control. See bonobo_control_frame_set_autoactivate().

bonobo_control_frame_get_control_property_bag ()

Bonobo_PropertyBag  bonobo_control_frame_get_control_property_bag
                                                        (BonoboControlFrame *control_frame,
                                                         CORBA_Environment *opt_ev);

This retrives a Bonobo_PropertyBag reference from its associated Bonobo Control

control_frame :

opt_ev :

Returns :

CORBA property bag reference or CORBA_OBJECT_NIL

bonobo_control_frame_set_propbag ()

void                bonobo_control_frame_set_propbag    (BonoboControlFrame *control_frame,
                                                         BonoboPropertyBag *propbag);

Makes frame use propbag for its ambient properties. When frame's Control requests the ambient properties, it will get them from propbag.

control_frame :

propbag :

A BonoboPropertyBag which will hold frame's ambient properties.

bonobo_control_frame_get_propbag ()

BonoboPropertyBag * bonobo_control_frame_get_propbag    (BonoboControlFrame *control_frame);

control_frame :

Returns :

The BonoboPropertyBag object which has been associated with frame.

bonobo_control_frame_control_set_state ()

void                bonobo_control_frame_control_set_state
                                                        (BonoboControlFrame *control_frame,
                                                         GtkStateType state);

Proxies state to the control bound to frame.

control_frame :

state :

A GtkStateType value, specifying the widget state to apply to the remote control.

bonobo_control_frame_set_autostate ()

void                bonobo_control_frame_set_autostate  (BonoboControlFrame *control_frame,
                                                         gboolean autostate);

Changes whether or not frame automatically proxies state changes to its associated control. The default mode is for the control frame to autopropagate.

control_frame :

autostate :

Whether or not GtkWidget state changes should be automatically propagated down to the Control.

bonobo_control_frame_get_autostate ()

gboolean            bonobo_control_frame_get_autostate  (BonoboControlFrame *control_frame);

control_frame :

Returns :

Whether or not this control frame will automatically proxy GtkState changes to its associated Control.

bonobo_control_frame_bind_to_control ()

void                bonobo_control_frame_bind_to_control
                                                        (BonoboControlFrame *control_frame,
                                                         Bonobo_Control control,
                                                         CORBA_Environment *opt_ev);

Associates control with this frame.

control_frame :

control :

The CORBA object for the BonoboControl embedded in this BonoboControlFrame.

opt_ev :

Optional exception environment

bonobo_control_frame_get_control ()

Bonobo_Control      bonobo_control_frame_get_control    (BonoboControlFrame *control_frame);

control_frame :

Returns :

The Bonobo_Control CORBA interface for the remote Control which is bound to frame. See also bonobo_control_frame_bind_to_control().

bonobo_control_frame_get_ui_container ()

Bonobo_UIContainer  bonobo_control_frame_get_ui_container
                                                        (BonoboControlFrame *control_frame);

control_frame :

Returns :

The Bonobo_UIContainer object reference associated with this ControlFrame. This ui_container is specified when the ControlFrame is created. See bonobo_control_frame_new().

bonobo_control_frame_get_popup_component ()

BonoboUIComponent * bonobo_control_frame_get_popup_component
                                                        (BonoboControlFrame *control_frame,
                                                         CORBA_Environment *opt_ev);

control_frame :

opt_ev :

Returns :

Signal Details

The "activate-uri" signal

void                user_function                      (BonoboControlFrame *bonobocontrolframe,
                                                        gchar              *arg1,
                                                        gboolean            arg2,
                                                        gpointer            user_data)               : Run Last

bonobocontrolframe :

the object which received the signal.

arg1 :

arg2 :

user_data :

user data set when the signal handler was connected.

The "activated" signal

void                user_function                      (BonoboControlFrame *bonobocontrolframe,
                                                        gboolean            arg1,
                                                        gpointer            user_data)               : Run Last

bonobocontrolframe :

the object which received the signal.

arg1 :

user_data :

user data set when the signal handler was connected.

See Also

BonoboWidget, bonobo_widget_new()

libbonoboui-2.24.5/doc/api/html/libbonoboui-bonobo-ui-engine-config.html0000664000076400007640000006266511546335132023134 00000000000000 bonobo-ui-engine-config

bonobo-ui-engine-config

bonobo-ui-engine-config

Synopsis

                    BonoboUIEngineConfigPrivate;
                    BonoboUIEngineConfig;
                    BonoboUIEngineConfigClass;
BonoboUIEngineConfig * bonobo_ui_engine_config_construct
                                                        (BonoboUIEngineConfig *config,
                                                         BonoboUIEngine *engine,
                                                         GtkWindow *opt_parent);
BonoboUIEngineConfig * bonobo_ui_engine_config_new      (BonoboUIEngine *engine,
                                                         GtkWindow *opt_parent);
char *              (*BonoboUIEngineConfigFn)           (BonoboUIEngineConfig *config,
                                                         BonoboUINode *config_node,
                                                         BonoboUIEngine *popup_engine);
void                (*BonoboUIEngineConfigVerbFn)       (BonoboUIEngineConfig *config,
                                                         const char *path,
                                                         const char *opt_state,
                                                         BonoboUIEngine *popup_engine,
                                                         BonoboUINode *popup_node);
void                bonobo_ui_engine_config_connect     (GtkWidget *widget,
                                                         BonoboUIEngine *engine,
                                                         const char *path,
                                                         BonoboUIEngineConfigFn config_fn,
                                                         BonoboUIEngineConfigVerbFn verb_fn);
void                bonobo_ui_engine_config_serialize   (BonoboUIEngineConfig *config);
void                bonobo_ui_engine_config_hydrate     (BonoboUIEngineConfig *config);
void                bonobo_ui_engine_config_add         (BonoboUIEngineConfig *config,
                                                         const char *path,
                                                         const char *attr,
                                                         const char *value);
void                bonobo_ui_engine_config_remove      (BonoboUIEngineConfig *config,
                                                         const char *path,
                                                         const char *attr);
void                bonobo_ui_engine_config_configure   (BonoboUIEngineConfig *config);
BonoboUIEngine *    bonobo_ui_engine_config_get_engine  (BonoboUIEngineConfig *config);

Description

Details

BonoboUIEngineConfigPrivate

typedef struct _BonoboUIEngineConfigPrivate BonoboUIEngineConfigPrivate;


BonoboUIEngineConfig

typedef struct {
	GObject parent;

	BonoboUIEngineConfigPrivate *priv;
} BonoboUIEngineConfig;


BonoboUIEngineConfigClass

typedef struct {
	GObjectClass parent_class;

	gpointer       dummy;
} BonoboUIEngineConfigClass;


bonobo_ui_engine_config_construct ()

BonoboUIEngineConfig * bonobo_ui_engine_config_construct
                                                        (BonoboUIEngineConfig *config,
                                                         BonoboUIEngine *engine,
                                                         GtkWindow *opt_parent);

config :

engine :

opt_parent :

Returns :


bonobo_ui_engine_config_new ()

BonoboUIEngineConfig * bonobo_ui_engine_config_new      (BonoboUIEngine *engine,
                                                         GtkWindow *opt_parent);

engine :

opt_parent :

Returns :


BonoboUIEngineConfigFn ()

char *              (*BonoboUIEngineConfigFn)           (BonoboUIEngineConfig *config,
                                                         BonoboUINode *config_node,
                                                         BonoboUIEngine *popup_engine);

config :

config_node :

popup_engine :

Returns :


BonoboUIEngineConfigVerbFn ()

void                (*BonoboUIEngineConfigVerbFn)       (BonoboUIEngineConfig *config,
                                                         const char *path,
                                                         const char *opt_state,
                                                         BonoboUIEngine *popup_engine,
                                                         BonoboUINode *popup_node);

config :

path :

opt_state :

popup_engine :

popup_node :


bonobo_ui_engine_config_connect ()

void                bonobo_ui_engine_config_connect     (GtkWidget *widget,
                                                         BonoboUIEngine *engine,
                                                         const char *path,
                                                         BonoboUIEngineConfigFn config_fn,
                                                         BonoboUIEngineConfigVerbFn verb_fn);

widget :

engine :

path :

config_fn :

verb_fn :


bonobo_ui_engine_config_serialize ()

void                bonobo_ui_engine_config_serialize   (BonoboUIEngineConfig *config);

config :


bonobo_ui_engine_config_hydrate ()

void                bonobo_ui_engine_config_hydrate     (BonoboUIEngineConfig *config);

config :


bonobo_ui_engine_config_add ()

void                bonobo_ui_engine_config_add         (BonoboUIEngineConfig *config,
                                                         const char *path,
                                                         const char *attr,
                                                         const char *value);

config :

path :

attr :

value :


bonobo_ui_engine_config_remove ()

void                bonobo_ui_engine_config_remove      (BonoboUIEngineConfig *config,
                                                         const char *path,
                                                         const char *attr);

config :

path :

attr :


bonobo_ui_engine_config_configure ()

void                bonobo_ui_engine_config_configure   (BonoboUIEngineConfig *config);

config :


bonobo_ui_engine_config_get_engine ()

BonoboUIEngine *    bonobo_ui_engine_config_get_engine  (BonoboUIEngineConfig *config);

config :

Returns :

libbonoboui-2.24.5/doc/api/html/bonobo-ui.html0000664000076400007640000000660711546335132016117 00000000000000 Bonobo UI

Bonobo UI

BonoboWidget — Simplified embedding of widgets in Bonobo.
bonobo-window
BonoboUIComponent — A UI interface that handles UI merging for a component
BonoboUIContainer — The container interface as implemented for BonoboWindow
bonobo-ui-util — A collection of utility functions to help with UI related issues
bonobo-ui-node — Simplified XML Node manipulation API
BonoboUIEngine — The guts of the UI handler
bonobo-ui-engine-config
BonoboUISync — A Synchronizer object to keep a widget tree in sync with an XML tree.
bonobo-ui-preferences
libbonoboui-2.24.5/doc/api/html/libbonoboui-bonobo-ui-component.html0000664000076400007640000033131311546335132022413 00000000000000 BonoboUIComponent

BonoboUIComponent

BonoboUIComponent — A UI interface that handles UI merging for a component

Synopsis

                    BonoboUIComponent;
                    BonoboUIComponentPrivate;
void                (*BonoboUIListenerFn)               (BonoboUIComponent *component,
                                                         const char *path,
                                                         Bonobo_UIComponent_EventType type,
                                                         const char *state,
                                                         gpointer user_data);
void                (*BonoboUIVerbFn)                   (BonoboUIComponent *component,
                                                         gpointer user_data,
                                                         const char *cname);
                    BonoboUIComponentClass;
BonoboUIComponent * bonobo_ui_component_construct       (BonoboUIComponent *component,
                                                         const char *name);
BonoboUIComponent * bonobo_ui_component_new             (const char *name);
BonoboUIComponent * bonobo_ui_component_new_default     (void);
void                bonobo_ui_component_set_name        (BonoboUIComponent *component,
                                                         const char *name);
const char *        bonobo_ui_component_get_name        (BonoboUIComponent *component);
void                bonobo_ui_component_set_container   (BonoboUIComponent *component,
                                                         Bonobo_UIContainer container,
                                                         CORBA_Environment *opt_ev);
void                bonobo_ui_component_unset_container (BonoboUIComponent *component,
                                                         CORBA_Environment *opt_ev);
Bonobo_UIContainer  bonobo_ui_component_get_container   (BonoboUIComponent *component);
void                bonobo_ui_component_add_verb        (BonoboUIComponent *component,
                                                         const char *cname,
                                                         BonoboUIVerbFn fn,
                                                         gpointer user_data);
void                bonobo_ui_component_add_verb_full   (BonoboUIComponent *component,
                                                         const char *cname,
                                                         GClosure *closure);
void                bonobo_ui_component_remove_verb     (BonoboUIComponent *component,
                                                         const char *cname);
void                bonobo_ui_component_remove_verb_by_closure
                                                        (BonoboUIComponent *component,
                                                         GClosure *closure);
void                bonobo_ui_component_add_listener    (BonoboUIComponent *component,
                                                         const char *id,
                                                         BonoboUIListenerFn fn,
                                                         gpointer user_data);
void                bonobo_ui_component_add_listener_full
                                                        (BonoboUIComponent *component,
                                                         const char *id,
                                                         GClosure *closure);
void                bonobo_ui_component_remove_listener (BonoboUIComponent *component,
                                                         const char *cname);
void                bonobo_ui_component_remove_listener_by_closure
                                                        (BonoboUIComponent *component,
                                                         GClosure *closure);
void                bonobo_ui_component_set             (BonoboUIComponent *component,
                                                         const char *path,
                                                         const char *xml,
                                                         CORBA_Environment *opt_ev);
void                bonobo_ui_component_set_translate   (BonoboUIComponent *component,
                                                         const char *path,
                                                         const char *xml,
                                                         CORBA_Environment *opt_ev);
void                bonobo_ui_component_set_tree        (BonoboUIComponent *component,
                                                         const char *path,
                                                         BonoboUINode *node,
                                                         CORBA_Environment *ev);
void                bonobo_ui_component_rm              (BonoboUIComponent *component,
                                                         const char *path,
                                                         CORBA_Environment *ev);
gboolean            bonobo_ui_component_path_exists     (BonoboUIComponent *component,
                                                         const char *path,
                                                         CORBA_Environment *ev);
CORBA_char *        bonobo_ui_component_get             (BonoboUIComponent *component,
                                                         const char *path,
                                                         gboolean recurse,
                                                         CORBA_Environment *opt_ev);
BonoboUINode *      bonobo_ui_component_get_tree        (BonoboUIComponent *component,
                                                         const char *path,
                                                         gboolean recurse,
                                                         CORBA_Environment *opt_ev);
void                bonobo_ui_component_object_set      (BonoboUIComponent *component,
                                                         const char *path,
                                                         Bonobo_Unknown control,
                                                         CORBA_Environment *opt_ev);
Bonobo_Unknown      bonobo_ui_component_object_get      (BonoboUIComponent *component,
                                                         const char *path,
                                                         CORBA_Environment *opt_ev);
void                bonobo_ui_component_widget_set      (BonoboUIComponent *component,
                                                         const char *path,
                                                         GtkWidget *widget,
                                                         CORBA_Environment *opt_ev);
void                bonobo_ui_component_freeze          (BonoboUIComponent *component,
                                                         CORBA_Environment *opt_ev);
void                bonobo_ui_component_thaw            (BonoboUIComponent *component,
                                                         CORBA_Environment *opt_ev);
void                bonobo_ui_component_set_prop        (BonoboUIComponent *component,
                                                         const char *path,
                                                         const char *prop,
                                                         const char *value,
                                                         CORBA_Environment *opt_ev);
gchar *             bonobo_ui_component_get_prop        (BonoboUIComponent *component,
                                                         const char *path,
                                                         const char *prop,
                                                         CORBA_Environment *opt_ev);
void                bonobo_ui_component_set_status      (BonoboUIComponent *component,
                                                         const char *text,
                                                         CORBA_Environment *opt_ev);
                    BonoboUIVerb;
#define             BONOBO_UI_VERB                      (name,
                                                         cb)
#define             BONOBO_UI_VERB_DATA                 (name,
                                                         cb,
                                                         data)
#define             BONOBO_UI_UNSAFE_VERB               (name,
                                                         cb)
#define             BONOBO_UI_UNSAFE_VERB_DATA          (name,
                                                         cb,
                                                         data)
#define             BONOBO_UI_VERB_END
void                bonobo_ui_component_add_verb_list   (BonoboUIComponent *component,
                                                         const BonoboUIVerb *list);
void                bonobo_ui_component_add_verb_list_with_data
                                                        (BonoboUIComponent *component,
                                                         const BonoboUIVerb *list,
                                                         gpointer user_data);

Object Hierarchy

  GObject
   +----BonoboObject
         +----BonoboUIComponent

Description

The BonoboUIComponent is the client side portion of the UI merging scheme. It should be implemented by any component that wishes to merge menus / UI. The Component object is neccessary to receive notifications from the associated BonoboUIContainer. Notifications come in two forms - verbs and events. Verbs have an associated ( non translated ) name that is used to match them with callbacks. Events have an associated ( non translated ) id that does the same thing. Events pass a state string. Events are used for eg. toggle buttons, Verbs are used for eg. Menu items.

Mostly you don't need to bother with creating your own BonoboUIComponent, if you implement a Control eg. a BonoboUIComponent is created at Control construction time and can be accessed thus:

Example 4. Using the UI Component associated with a control

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
/*
 * For the format of the XML see bonobo/doc/xml-ui.txt
 * For a standard template to base your UI on see bonobo/doc/std-ui.xml
 */
const char my_ui_elements [] =
    ">placeholder name=\"FileOps\"<"
    "   >menuitem name=\"Foo\" verb=\"FileFoo\" _label=\"Foo!\""
    "    _tip=\"do some foo thing\"/<"
    ">/placeholder<";
static void
control_activate_cb (BonoboControl *object,
                     gboolean       state,
             gpointer       user_data)
{
    BonoboUIComponent *ui_component;
    /* Get UIComponent from control */
    ui_component = bonobo_control_get_ui_component (control);
    if (state) /* Activate */
        bonobo_ui_component_set_translate (
            ui_component, "/menu/File", my_ui_elements, NULL);
    else /* De-activate */
        bonobo_ui_component_unset_container (ui_component);
}
static void
verb_foo_cb (BonoboUIComponent *ui_container,
             gpointer           user_data,
         const              char *cname)
{
    BonoboControl *control = user_data;
    g_print ("FileFoo !\n");
}
static BonoboUIVerb my_ui_verbs[] = {
    BONOBO_UI_VERB ("FileFoo", verb_foo_cb),
    BONOBO_UI_VERB_END
};
BonoboObject *
create_ui_control (void)
{
    BonoboControl     *control;
    BonoboUIComponent *ui_component;
    GtkWidget         *widget;
    control = bonobo_control_new ((widget = gtk_widget_new_label ("Hello World")));
    /* Automaticaly associate the remote UIContainer for us on activate */
    bonobo_control_set_automerge (control, TRUE);
    ui_component = bonobo_control_get_ui_component (control);
    /* Register the verbs with the UI Component */
    bonobo_ui_component_add_verb_list_with_data (
        ui_component, my_ui_verbs, control);
    gtk_signal_connect (GTK_OBJECT (control), "activate",
                        GTK_SIGNAL_FUNC (control_activate_cb), NULL);
    gtk_widget_show (widget);
    return BONOBO_OBJECT (control);
}


This sets up the UI, associates a 'FileFoo' verb with a callback, and on control activation merges the UI elements into a standard path in the file menu.

There are several standard placeholders that it is important for containers to implement, basing your UI on the doc/std-ui.xml is a very good starting point. Also in the above example the _label and _tip are not cmd / widget separated - for more information read doc/ui-xml.txt.

Most applications will should not use the BonoboUIComponent in this way, there is a bonobo_ui_util_set_ui that does the translation, help menu build, insertion etc. from an installed XML file. The above example is complete except for translation, which is extremely important. Here is a better activate function:

Example 5. A better way to create your UI

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
static void
control_activate_cb (BonoboControl *object,
                     gboolean       state,
             gpointer       user_data)
{
    BonoboUIComponent *ui_component;
    /* Get UIComponent from control */
    ui_component = bonobo_control_get_ui_component (control);
    if (state) /* Activate */
        /*
         * Use a helper function to setup your UI from a file:
         */
        bonobo_ui_util_set_ui (
            ui_component, MY_COMPILE_TIME_PREFIX,
            "GNOME_MyApp.ui", "my-app");
    else /* De-activate */
        bonobo_ui_component_unset_container (ui_component);
}


In this example "GNOME_MyApp.ui" is the correctly namespaced UI xml filename, ( see doc/NAMESPACE to register your name ), and "my-app" is the gnome application name, from which a path to your installed help files can be deduced.

Details

BonoboUIComponent

typedef struct _BonoboUIComponent BonoboUIComponent;


BonoboUIComponentPrivate

typedef struct _BonoboUIComponentPrivate BonoboUIComponentPrivate;


BonoboUIListenerFn ()

void                (*BonoboUIListenerFn)               (BonoboUIComponent *component,
                                                         const char *path,
                                                         Bonobo_UIComponent_EventType type,
                                                         const char *state,
                                                         gpointer user_data);

component :

path :

type :

state :

user_data :


BonoboUIVerbFn ()

void                (*BonoboUIVerbFn)                   (BonoboUIComponent *component,
                                                         gpointer user_data,
                                                         const char *cname);

component :

user_data :

cname :


BonoboUIComponentClass

typedef struct {
	BonoboObjectClass          parent_class;

	POA_Bonobo_UIComponent__epv epv;

	gpointer dummy[6];

	/* Signals */
	void (*exec_verb) (BonoboUIComponent *comp,
			   const char        *cname);

	void (*ui_event)  (BonoboUIComponent *comp,
			   const char        *path,
			   Bonobo_UIComponent_EventType type,
			   const char        *state);
	/* Virtual XML Methods */
	void (*freeze)    (BonoboUIComponent *component,
			   CORBA_Environment *opt_ev);

	void (*thaw)      (BonoboUIComponent *component,
			   CORBA_Environment *opt_ev);

	void (*xml_set)   (BonoboUIComponent *component,
			   const char        *path,
			   const char        *xml,
			   CORBA_Environment *ev);

	CORBA_char *(*xml_get) (BonoboUIComponent *component,
				const char        *path,
				gboolean           recurse,
				CORBA_Environment *ev);

	void (*xml_rm)    (BonoboUIComponent *component,
			   const char        *path,
			   CORBA_Environment *ev);

	void (*set_prop)  (BonoboUIComponent *component,
			   const char        *path,
			   const char        *prop,
			   const char        *value,
			   CORBA_Environment *opt_ev);
	
	gchar *(*get_prop) (BonoboUIComponent *component,
			    const char        *path,
			    const char        *prop,
			    CORBA_Environment *opt_ev);

	gboolean (*exists) (BonoboUIComponent *component,
			    const char        *path,
			    CORBA_Environment *ev);
} BonoboUIComponentClass;


bonobo_ui_component_construct ()

BonoboUIComponent * bonobo_ui_component_construct       (BonoboUIComponent *component,
                                                         const char *name);

Construct the UI component with name name

component :

name :

the name of the UI component

Returns :

a constructed UI component or NULL on error

bonobo_ui_component_new ()

BonoboUIComponent * bonobo_ui_component_new             (const char *name);

Create a new UI component with the specified name

name :

the name of the UI component

Returns :

a new UI component

bonobo_ui_component_new_default ()

BonoboUIComponent * bonobo_ui_component_new_default     (void);

Create a UI component with a unique default name constructed from various available system properties.

Returns :

a new UI component

bonobo_ui_component_set_name ()

void                bonobo_ui_component_set_name        (BonoboUIComponent *component,
                                                         const char *name);

Set the name of the UI component

component :

the UI component

name :

the new name

bonobo_ui_component_get_name ()

const char *        bonobo_ui_component_get_name        (BonoboUIComponent *component);

component :

the UI component

Returns :

the name of the UI component

bonobo_ui_component_set_container ()

void                bonobo_ui_component_set_container   (BonoboUIComponent *component,
                                                         Bonobo_UIContainer container,
                                                         CORBA_Environment *opt_ev);

This associates this component with a remote container object.

component :

the component

container :

a remote container object.

opt_ev :


bonobo_ui_component_unset_container ()

void                bonobo_ui_component_unset_container (BonoboUIComponent *component,
                                                         CORBA_Environment *opt_ev);

This dis-associates the component from its associated BonoboUIContainer.

component :

the component

opt_ev :


bonobo_ui_component_get_container ()

Bonobo_UIContainer  bonobo_ui_component_get_container   (BonoboUIComponent *component);

component :

the component.

Returns :

the associated remote container

bonobo_ui_component_add_verb ()

void                bonobo_ui_component_add_verb        (BonoboUIComponent *component,
                                                         const char *cname,
                                                         BonoboUIVerbFn fn,
                                                         gpointer user_data);

Add a verb to the UI component, that can be invoked by the container.

component :

the component to add it to

cname :

the programmatic name of the verb

fn :

the callback function for invoking it

user_data :

the associated user data for the callback

bonobo_ui_component_add_verb_full ()

void                bonobo_ui_component_add_verb_full   (BonoboUIComponent *component,
                                                         const char *cname,
                                                         GClosure *closure);

Add a verb to the UI component, that can be invoked by the container.

component :

the component to add it to

cname :

the programmatic name of the verb

closure :


bonobo_ui_component_remove_verb ()

void                bonobo_ui_component_remove_verb     (BonoboUIComponent *component,
                                                         const char *cname);

Remove a verb by it's unique name

component :

the component to add it to

cname :

the programmatic name of the verb

bonobo_ui_component_remove_verb_by_closure ()

void                bonobo_ui_component_remove_verb_by_closure
                                                        (BonoboUIComponent *component,
                                                         GClosure *closure);

remove any verb handled by fn.

component :

the component to add it to

closure :


bonobo_ui_component_add_listener ()

void                bonobo_ui_component_add_listener    (BonoboUIComponent *component,
                                                         const char *id,
                                                         BonoboUIListenerFn fn,
                                                         gpointer user_data);

Add a listener for stateful events.

component :

the component to add it to

id :

the programmatic name of the id

fn :

the callback function for invoking it

user_data :

the associated user data for the callback

bonobo_ui_component_add_listener_full ()

void                bonobo_ui_component_add_listener_full
                                                        (BonoboUIComponent *component,
                                                         const char *id,
                                                         GClosure *closure);

Add a listener for stateful events.

component :

the component to add it to

id :

the programmatic name of the id

closure :


bonobo_ui_component_remove_listener ()

void                bonobo_ui_component_remove_listener (BonoboUIComponent *component,
                                                         const char *cname);

Remove any listener by its unique id

component :

the component to add it to

cname :

the programmatic name of the id

bonobo_ui_component_remove_listener_by_closure ()

void                bonobo_ui_component_remove_listener_by_closure
                                                        (BonoboUIComponent *component,
                                                         GClosure *closure);

component :

closure :


bonobo_ui_component_set ()

void                bonobo_ui_component_set             (BonoboUIComponent *component,
                                                         const char *path,
                                                         const char *xml,
                                                         CORBA_Environment *opt_ev);

Set the xml fragment into the remote BonoboUIContainer's tree attached to component at the specified path

If you see blank menu items ( or just separators ) it's likely that you should be using bonobo_ui_component_set_translate which substantialy deprecates this routine.

component :

the component

path :

the path to set

xml :

the xml to set

opt_ev :

the (optional) CORBA exception environment

bonobo_ui_component_set_translate ()

void                bonobo_ui_component_set_translate   (BonoboUIComponent *component,
                                                         const char *path,
                                                         const char *xml,
                                                         CORBA_Environment *opt_ev);

This routine parses the XML strings, and converts any: _label="Hello World" type strings into the translated, and encoded format expected by the remote BonoboUIContainer.

component :

the component

path :

the path to set

xml :

the non translated xml to set

opt_ev :

the (optional) CORBA exception environment

bonobo_ui_component_set_tree ()

void                bonobo_ui_component_set_tree        (BonoboUIComponent *component,
                                                         const char *path,
                                                         BonoboUINode *node,
                                                         CORBA_Environment *ev);

Set the xml fragment into the remote BonoboUIContainer's tree attached to component at the specified path

component :

the component

path :

the path to set

node :

the BonoboUINode representation of an xml tree to set

ev :

the (optional) CORBA exception environment

bonobo_ui_component_rm ()

void                bonobo_ui_component_rm              (BonoboUIComponent *component,
                                                         const char *path,
                                                         CORBA_Environment *ev);

This routine removes a chunk of the XML tree in the BonoboUIContainer associated with component pointed to by path.

component :

the component

path :

the path to set

ev :

the (optional) CORBA exception environment

bonobo_ui_component_path_exists ()

gboolean            bonobo_ui_component_path_exists     (BonoboUIComponent *component,
                                                         const char *path,
                                                         CORBA_Environment *ev);

component :

the component

path :

the path to set the property on

ev :

the (optional) CORBA exception environment

Returns :

TRUE if the path exists in the container.

bonobo_ui_component_get ()

CORBA_char *        bonobo_ui_component_get             (BonoboUIComponent *component,
                                                         const char *path,
                                                         gboolean recurse,
                                                         CORBA_Environment *opt_ev);

This routine fetches a chunk of the XML tree in the BonoboUIContainer associated with component pointed to by path. If recurse then the child nodes of path are returned too, otherwise they are not.

component :

the component

path :

the path to get

recurse :

whether to get child nodes of path

opt_ev :

the (optional) CORBA exception environment

Returns :

an XML string (CORBA allocated)

bonobo_ui_component_get_tree ()

BonoboUINode *      bonobo_ui_component_get_tree        (BonoboUIComponent *component,
                                                         const char *path,
                                                         gboolean recurse,
                                                         CORBA_Environment *opt_ev);

This routine fetches a chunk of the XML tree in the BonoboUIContainer associated with component pointed to by path. If recurse then the child nodes of path are returned too, otherwise they are not.

component :

the component

path :

the path to get

recurse :

whether to get child nodes of path

opt_ev :

the (optional) CORBA exception environment

Returns :

an BonoboUINode XML representation

bonobo_ui_component_object_set ()

void                bonobo_ui_component_object_set      (BonoboUIComponent *component,
                                                         const char *path,
                                                         Bonobo_Unknown control,
                                                         CORBA_Environment *opt_ev);

This registers the control CORBA object into the BonoboUIContainer associated with this component at the specified path. This is most often used to associate controls with a certain path.

component :

the component

path :

the path to set

control :

a CORBA object reference

opt_ev :

the (optional) CORBA exception environment

bonobo_ui_component_object_get ()

Bonobo_Unknown      bonobo_ui_component_object_get      (BonoboUIComponent *component,
                                                         const char *path,
                                                         CORBA_Environment *opt_ev);

This returns the control CORBA object registered with the BonoboUIContainer associated with this component at the specified path.

component :

the component

path :

the path to set

opt_ev :

Returns :

the associated remote CORBA object.

bonobo_ui_component_widget_set ()

void                bonobo_ui_component_widget_set      (BonoboUIComponent *component,
                                                         const char *path,
                                                         GtkWidget *widget,
                                                         CORBA_Environment *opt_ev);

component :

path :

widget :

opt_ev :


bonobo_ui_component_freeze ()

void                bonobo_ui_component_freeze          (BonoboUIComponent *component,
                                                         CORBA_Environment *opt_ev);

This increments the freeze count on the associated BonoboUIContainer, (if not already frozen) this means that a batch of update operations can be performed without a re-render penalty per update.

NB. if your GUI is frozen / not updating you probably have a freeze / thaw reference leak/

component :

the component

opt_ev :


bonobo_ui_component_thaw ()

void                bonobo_ui_component_thaw            (BonoboUIComponent *component,
                                                         CORBA_Environment *opt_ev);

This decrements the freeze count on the remote associated BonoboUIContainer, (if frozen). This means that a batch of update operations can be performed without a re-render penalty per update.

NB. if your GUI is frozen / not updating you probably have a freeze / thaw reference leak/

component :

the component

opt_ev :


bonobo_ui_component_set_prop ()

void                bonobo_ui_component_set_prop        (BonoboUIComponent *component,
                                                         const char *path,
                                                         const char *prop,
                                                         const char *value,
                                                         CORBA_Environment *opt_ev);

This helper function sets an XML property ( or attribute ) on the XML node pointed at by path. It does this by a read / modify / write process. If you find yourself doing this a lot, you need to consider batching this process.

component :

the component

path :

the path to set the property on

prop :

the property name

value :

the property value

opt_ev :

the (optional) CORBA exception environment

bonobo_ui_component_get_prop ()

gchar *             bonobo_ui_component_get_prop        (BonoboUIComponent *component,
                                                         const char *path,
                                                         const char *prop,
                                                         CORBA_Environment *opt_ev);

This helper function fetches an XML property ( or attribute ) from the XML node pointed at by path in the BonoboUIContainer associated with component

component :

the component

path :

the path to set the property on

prop :

the property name

opt_ev :

the (optional) CORBA exception environment

Returns :

the xml property value or NULL - free with g_free.

bonobo_ui_component_set_status ()

void                bonobo_ui_component_set_status      (BonoboUIComponent *component,
                                                         const char *text,
                                                         CORBA_Environment *opt_ev);

This sets the contents of the status bar to text in the remote BonoboUIContainer associated with component. This is done by setting the contents of the /status/main node.

component :

the component

text :

the new status text

opt_ev :


BonoboUIVerb

typedef struct {
	const char    *cname;
	BonoboUIVerbFn cb;
	gpointer       user_data;
	gpointer       dummy;
} BonoboUIVerb;


BONOBO_UI_VERB()

#define BONOBO_UI_VERB(name,cb)                  { (name), (cb), NULL   }

This declares and fills a BonoboUIVerb structure suitable for use in constructing a lost of verbs to add with bonobo_ui_component_add_verb_list_with_data.

name :

the verb name

cb :

the callback function.

BONOBO_UI_VERB_DATA()

#define BONOBO_UI_VERB_DATA(name,cb,data)        { (name), (cb), (data) }

This declares and fills a BonoboUIVerb structure suitable for use in constructing a lost of verbs to add with bonobo_ui_component_add_verb_list.

name :

the verb name

cb :

the callback function

data :

some associated user_data

BONOBO_UI_UNSAFE_VERB()

#define BONOBO_UI_UNSAFE_VERB(name,cb)           { (name), ((BonoboUIVerbFn)(cb)), NULL   }

As BONOBO_UI_VERB, but unsafely casts cb to the correct type

name :

the verb name

cb :

the callback function.

BONOBO_UI_UNSAFE_VERB_DATA()

#define BONOBO_UI_UNSAFE_VERB_DATA(name,cb,data) { (name), ((BonoboUIVerbFn)(cb)), (data) }

As BONOBO_UI_VERB_DATA, but unsafely casts cb to the correct type

name :

the verb name

cb :

the callback function

data :

some associated user_data

BONOBO_UI_VERB_END

#define BONOBO_UI_VERB_END                       { NULL, NULL, NULL }

The terminator BonoboUIVerb structure for a list of BonoboUIVerbs.


bonobo_ui_component_add_verb_list ()

void                bonobo_ui_component_add_verb_list   (BonoboUIComponent *component,
                                                         const BonoboUIVerb *list);

Add a list of verbs with no associated user_data, you probably want bonobo_ui_component_add_verb_list_with_data

component :

the component

list :

the list of verbs.

bonobo_ui_component_add_verb_list_with_data ()

void                bonobo_ui_component_add_verb_list_with_data
                                                        (BonoboUIComponent *component,
                                                         const BonoboUIVerb *list,
                                                         gpointer user_data);

This is a helper function to save registering verbs individualy it allows registration of a great batch of verbs at one time in a list of BonoboUIVerb terminated by BONOBO_UI_VERB_END

component :

the component

list :

the list of verbs

user_data :

the user data passed to the verb callbacks

Signal Details

The "exec-verb" signal

void                user_function                      (BonoboUIComponent *bonobouicomponent,
                                                        gchar             *arg1,
                                                        gpointer           user_data)              : Run First

bonobouicomponent :

the object which received the signal.

arg1 :

user_data :

user data set when the signal handler was connected.

The "ui-event" signal

void                user_function                      (BonoboUIComponent *bonobouicomponent,
                                                        gchar             *arg1,
                                                        gint               arg2,
                                                        gchar             *arg3,
                                                        gpointer           user_data)              : Run First

bonobouicomponent :

the object which received the signal.

arg1 :

arg2 :

arg3 :

user_data :

user data set when the signal handler was connected.

See Also

BonoboUIContainer, bonobo-ui-util(3), BonoboControl

libbonoboui-2.24.5/doc/api/html/style.css0000644000076400007640000001205611546335132015203 00000000000000.synopsis, .classsynopsis { /* tango:aluminium 1/2 */ background: #eeeeec; border: solid 1px #d3d7cf; padding: 0.5em; } .programlisting { /* tango:sky blue 0/1 */ background: #e6f3ff; border: solid 1px #729fcf; padding: 0.5em; } .variablelist { padding: 4px; margin-left: 3em; } .variablelist td:first-child { vertical-align: top; } @media screen { sup a.footnote { position: relative; top: 0em ! important; } /* this is needed so that the local anchors are displayed below the naviagtion */ div.footnote a[name], div.refnamediv a[name], div.refsect1 a[name], div.refsect2 a[name], div.index a[name], div.glossary a[name], div.sect1 a[name] { position: relative; padding-top:4.5em; } /* this seems to be a bug in the xsl style sheets when generating indexes */ div.index div.index { top: 0em; } /* make space for the fixed navigation bar and add space at the bottom so that * link targets appear somewhat close to top */ body { padding-top: 3.2em; padding-bottom: 20em; } /* style and size the navigation bar */ table.navigation#top { position: fixed; /* tango:scarlet red 0/1 */ background: #ffe6e6; border: solid 1px #ef2929; margin-top: 0; margin-bottom: 0; top: 0; left: 0; height: 3em; z-index: 10; } .navigation a, .navigation a:visited { /* tango:scarlet red 3 */ color: #a40000; } .navigation a:hover { /* tango:scarlet red 1 */ color: #ef2929; } td.shortcuts { /* tango:scarlet red 1 */ color: #ef2929; font-size: 80%; white-space: nowrap; } } @media print { table.navigation { visibility: collapse; display: none; } div.titlepage table.navigation { visibility: visible; display: table; /* tango:scarlet red 0/1 */ background: #ffe6e6; border: solid 1px #ef2929; margin-top: 0; margin-bottom: 0; top: 0; left: 0; height: 3em; } } .navigation .title { font-size: 200%; } div.gallery-float { float: left; padding: 10px; } div.gallery-float img { border-style: none; } div.gallery-spacer { clear: both; } a, a:visited { text-decoration: none; /* tango:sky blue 2 */ color: #3465a4; } a:hover { text-decoration: underline; /* tango:sky blue 1 */ color: #729fcf; } div.table table { border-collapse: collapse; border-spacing: 0px; /* tango:aluminium 3 */ border: solid 1px #babdb6; } div.table table td, div.table table th { /* tango:aluminium 3 */ border: solid 1px #babdb6; padding: 3px; vertical-align: top; } div.table table th { /* tango:aluminium 2 */ background-color: #d3d7cf; } hr { /* tango:aluminium 3 */ color: #babdb6; background: #babdb6; border: none 0px; height: 1px; clear: both; } .footer { padding-top: 3.5em; /* tango:aluminium 3 */ color: #babdb6; text-align: center; font-size: 80%; } .warning { /* tango:orange 0/1 */ background: #ffeed9; border-color: #ffb04f; } .note { /* tango:chameleon 0/0.5 */ background: #d8ffb2; border-color: #abf562; } .note, .warning { padding: 0.5em; border-width: 1px; border-style: solid; } .note h3, .warning h3 { margin-top: 0.0em } .note p, .warning p { margin-bottom: 0.0em } /* blob links */ h2 .extralinks, h3 .extralinks { float: right; /* tango:aluminium 3 */ color: #babdb6; font-size: 80%; font-weight: normal; } .annotation { /* tango:aluminium 5 */ color: #555753; font-size: 80%; font-weight: normal; } /* code listings */ .listing_code .programlisting .cbracket { color: #a40000; } /* tango: scarlet red 3 */ .listing_code .programlisting .comment { color: #a1a39d; } /* tango: aluminium 4 */ .listing_code .programlisting .function { color: #000000; font-weight: bold; } .listing_code .programlisting .function a { color: #11326b; font-weight: bold; } /* tango: sky blue 4 */ .listing_code .programlisting .keyword { color: #4e9a06; } /* tango: chameleon 3 */ .listing_code .programlisting .linenum { color: #babdb6; } /* tango: aluminium 3 */ .listing_code .programlisting .normal { color: #000000; } .listing_code .programlisting .number { color: #75507b; } /* tango: plum 2 */ .listing_code .programlisting .preproc { color: #204a87; } /* tango: sky blue 3 */ .listing_code .programlisting .string { color: #c17d11; } /* tango: chocolate 2 */ .listing_code .programlisting .type { color: #000000; } .listing_code .programlisting .type a { color: #11326b; } /* tango: sky blue 4 */ .listing_code .programlisting .symbol { color: #ce5c00; } /* tango: orange 3 */ .listing_frame { /* tango:sky blue 1 */ border: solid 1px #729fcf; padding: 0px; } .listing_lines, .listing_code { margin-top: 0px; margin-bottom: 0px; padding: 0.5em; } .listing_lines { /* tango:sky blue 0.5 */ background: #a6c5e3; /* tango:aluminium 6 */ color: #2e3436; } .listing_code { /* tango:sky blue 0 */ background: #e6f3ff; } .listing_code .programlisting { /* override from previous */ border: none 0px; padding: 0px; } .listing_lines pre, .listing_code pre { margin: 0px; } libbonoboui-2.24.5/doc/api/html/libbonoboui-bonobo-plug.html0000664000076400007640000002524111546335132020745 00000000000000 BonoboPlug

BonoboPlug

BonoboPlug — Toplevel for embedding into other processes.

Synopsis

                    BonoboPlug;
                    BonoboPlugPrivate;
                    BonoboPlugClass;
void                bonobo_plug_construct               (BonoboPlug *plug,
                                                         guint32 socket_id);
GtkWidget *         bonobo_plug_new                     (guint32 socket_id);

Object Hierarchy

  GObject
   +----GInitiallyUnowned
         +----GtkObject
               +----GtkWidget
                     +----GtkContainer
                           +----GtkBin
                                 +----GtkWindow
                                       +----GtkPlug
                                             +----BonoboPlug

Implemented Interfaces

BonoboPlug implements AtkImplementorIface and GtkBuildable.

Properties

  "event-forwarding"         gboolean              : Read / Write

Description

This is an internal support routine of the X code in Bonobo.

Together with BonoboSocket, BonoboPlug provides the ability to embed widgets from one process into another process in a fashion that is transparent to the user. One process creates a BonoboSocket widget and, passes the XID of that widgets window to the other process, which then creates a BonoboPlug window with that XID. Any widgets contained in the BonoboPlug then will appear inside the first applications window.

This code is a modified copy of GtkPlug, it is included in bonobo since this forked version could be effectively bug fixed, and integrated with the BonoboControl / BonoboControlframe CORBA pipe, to ensure synchronization between the X and CORBA transports.

Details

BonoboPlug

typedef struct _BonoboPlug BonoboPlug;


BonoboPlugPrivate

typedef struct _BonoboPlugPrivate BonoboPlugPrivate;


BonoboPlugClass

typedef struct {
	GtkPlugClass parent_class;

	gpointer dummy[4];
} BonoboPlugClass;


bonobo_plug_construct ()

void                bonobo_plug_construct               (BonoboPlug *plug,
                                                         guint32 socket_id);

Finish the creation of a BonoboPlug widget. This function will generally only be used by classes deriving from BonoboPlug.

plug :

The BonoboPlug.

socket_id :

the XID of the socket's window.

bonobo_plug_new ()

GtkWidget *         bonobo_plug_new                     (guint32 socket_id);

Create a new plug widget inside the GtkSocket identified by socket_id.

socket_id :

the XID of the socket's window.

Returns :

the new BonoboPlug widget.

Property Details

The "event-forwarding" property

  "event-forwarding"         gboolean              : Read / Write

Whether X events should be forwarded.

Default value: TRUE

libbonoboui-2.24.5/doc/api/html/libbonoboui-bonobo-selector.html0000664000076400007640000006063311546335132021622 00000000000000 BonoboSelector

BonoboSelector

BonoboSelector — a component selector widget

Object Hierarchy

  GObject
   +----GInitiallyUnowned
         +----GtkObject
               +----GtkWidget
                     +----GtkContainer
                           +----GtkBin
                                 +----GtkWindow
                                       +----GtkDialog
                                             +----BonoboSelector

Implemented Interfaces

BonoboSelector implements AtkImplementorIface and GtkBuildable.

Properties

  "interfaces-required"      GValueArray*          : Write / Construct

Signals

  "cancel"                                         : Run Last
  "ok"                                             : Run Last

Description

This GnomeDialog allows the user to select a component implementing a set of interfaces. The easiest way to do this in your code is by using:

Example 10. Simple Bonobo/Control selection

1
2
3
4
5
6
7
8
{
    char *interfaces [] = { "IDL:Bonobo/Control:1.0", NULL };
    char *oaf_iid;
    oaf_iid = bonobo_selector_select_id (
        _("Please select a Control"), interfaces);
    g_warning ("You selected '%s'", oaf_iid);
    g_free (oaf_iid);
}


This will throw up a dialog containing all the available components implementing the IDL:Bonobo/Control:1.0 interface and list them for the user to select.

Details

BonoboSelectorPrivate

typedef struct _BonoboSelectorPrivate BonoboSelectorPrivate;


BonoboSelector

typedef struct _BonoboSelector BonoboSelector;


BonoboSelectorClass

typedef struct {
	GtkDialogClass parent_class;
	
	void (* ok) (BonoboSelector *sel);
	void (* cancel) (BonoboSelector *sel);

	gpointer dummy[2];
} BonoboSelectorClass;


bonobo_selector_construct ()

GtkWidget *         bonobo_selector_construct           (BonoboSelector *sel,
                                                         const gchar *title,
                                                         BonoboSelectorWidget *selector);

Don't use this ever - use construct-time properties instead. TODO: Remove from header when we are allowed to change the API. Constructs the innards of a bonobo selector window.

sel :

the selector to construct

title :

the title for the window

selector :

the component view widget to put inside it.

Returns :

the constructed widget.

bonobo_selector_new ()

GtkWidget *         bonobo_selector_new                 (const gchar *title,
                                                         const gchar **interfaces_required);

Creates a new BonoboSelector widget. The title of the dialog is set to title, and the list of selectable servers is populated with those servers which support the interfaces specified in interfaces_required.

title :

A string which should go in the title of the BonoboSelector window.

interfaces_required :

A NULL-terminated array of interfaces which a server must support in order to be listed in the selector. Defaults to "IDL:Bonobo/Embeddable:1.0" if no interfaces are listed.

Returns :

A pointer to the newly-created BonoboSelector widget.

bonobo_selector_get_selected_id ()

gchar *             bonobo_selector_get_selected_id     (BonoboSelector *sel);

sel :

A BonoboSelector widget.

Returns :

A newly-allocated string containing the ID of the currently-selected CORBA server (i.e., the corba server whose name is highlighted in the list). The user of this function is responsible for freeing this. It will give an oaf iid back.

bonobo_selector_get_selected_name ()

gchar *             bonobo_selector_get_selected_name   (BonoboSelector *sel);

sel :

A BonoboSelector widget.

Returns :

A newly-allocated string containing the name of the currently-selected CORBA server (i.e., the corba server whose name is highlighted in the list). The user of this function is responsible for freeing this.

bonobo_selector_get_selected_description ()

gchar *             bonobo_selector_get_selected_description
                                                        (BonoboSelector *sel);

sel :

A BonoboSelector widget.

Returns :

A newly-allocated string containing the description of the currently-selected CORBA server (i.e., the corba server whose name is highlighted in the list). The user of this function is responsible for freeing this.

bonobo_selector_select_id ()

gchar *             bonobo_selector_select_id           (const gchar *title,
                                                         const gchar **interfaces_required);

Calls bonobo_selector_new() to create a new BonoboSelector widget with the specified paramters, title and interfaces_required. Then runs the dialog modally and allows the user to make a selection.

title :

The title to be used for the dialog.

interfaces_required :

A list of required interfaces. See bonobo_selector_new().

Returns :

The Oaf IID of the selected server, or NULL if no server is selected. The ID string has been allocated with g_strdup.

Property Details

The "interfaces-required" property

  "interfaces-required"      GValueArray*          : Write / Construct

A NULL-terminated array of interfaces which a server must support in order to be listed in the selector. Defaults to "IDL:Bonobo/Embeddable:1.0" if no interfaces are listed.

Signal Details

The "cancel" signal

void                user_function                      (BonoboSelector *bonoboselector,
                                                        gpointer        user_data)           : Run Last

bonoboselector :

the object which received the signal.

user_data :

user data set when the signal handler was connected.

The "ok" signal

void                user_function                      (BonoboSelector *bonoboselector,
                                                        gpointer        user_data)           : Run Last

bonoboselector :

the object which received the signal.

user_data :

user data set when the signal handler was connected.
libbonoboui-2.24.5/doc/api/html/ix01.html0000664000076400007640000016764111546335132015015 00000000000000 Index

Index

B

BonoboA11YClassInitFn, BonoboA11YClassInitFn ()
BonoboControl, BonoboControl
BonoboControl::activate, The "activate" signal
BonoboControl::disconnected, The "disconnected" signal
BonoboControl::plug-created, The "plug-created" signal
BonoboControl::set-frame, The "set-frame" signal
BonoboControlClass, BonoboControlClass
BonoboControlFrame, BonoboControlFrame
BonoboControlFrame::activate-uri, The "activate-uri" signal
BonoboControlFrame::activated, The "activated" signal
BonoboControlFrameClass, BonoboControlFrameClass
BonoboControlFramePrivate, BonoboControlFramePrivate
BonoboControlLifeCallback, BonoboControlLifeCallback ()
BonoboControlPrivate, BonoboControlPrivate
BonoboPlug, BonoboPlug
BonoboPlug:event-forwarding, The "event-forwarding" property
BonoboPlugClass, BonoboPlugClass
BonoboPlugPrivate, BonoboPlugPrivate
BonoboPropertyControl, BonoboPropertyControl
BonoboPropertyControl::action, The "action" signal
BonoboPropertyControlClass, BonoboPropertyControlClass
BonoboPropertyControlGetControlFn, BonoboPropertyControlGetControlFn ()
BonoboPropertyControlPrivate, BonoboPropertyControlPrivate
BonoboSelector, BonoboSelector
BonoboSelector::cancel, The "cancel" signal
BonoboSelector::ok, The "ok" signal
BonoboSelector:interfaces-required, The "interfaces-required" property
BonoboSelectorClass, BonoboSelectorClass
BonoboSelectorPrivate, BonoboSelectorPrivate
BonoboSelectorWidget, BonoboSelectorWidget
BonoboSelectorWidgetClass, BonoboSelectorWidgetClass
BonoboSelectorWidgetPrivate, BonoboSelectorWidgetPrivate
BonoboSocket, BonoboSocket
BonoboSocketClass, BonoboSocketClass
BonoboUIComponent, BonoboUIComponent
BonoboUIComponent::exec-verb, The "exec-verb" signal
BonoboUIComponent::ui-event, The "ui-event" signal
BonoboUIComponentClass, BonoboUIComponentClass
BonoboUIComponentPrivate, BonoboUIComponentPrivate
BonoboUIContainer, BonoboUIContainer
BonoboUIContainerClass, BonoboUIContainerClass
BonoboUIContainerPrivate, BonoboUIContainerPrivate
BonoboUIEngine, BonoboUIEngine
BonoboUIEngine::add-hint, The "add-hint" signal
BonoboUIEngine::destroy, The "destroy" signal
BonoboUIEngine::emit-event-on, The "emit-event-on" signal
BonoboUIEngine::emit-verb-on, The "emit-verb-on" signal
BonoboUIEngine::remove-hint, The "remove-hint" signal
BonoboUIEngineClass, BonoboUIEngineClass
BonoboUIEngineConfig, BonoboUIEngineConfig
BonoboUIEngineConfigClass, BonoboUIEngineConfigClass
BonoboUIEngineConfigFn, BonoboUIEngineConfigFn ()
BonoboUIEngineConfigPrivate, BonoboUIEngineConfigPrivate
BonoboUIEngineConfigVerbFn, BonoboUIEngineConfigVerbFn ()
BonoboUIEnginePrivate, BonoboUIEnginePrivate
BonoboUIError, enum BonoboUIError
BonoboUIListenerFn, BonoboUIListenerFn ()
BonoboUINode, BonoboUINode
BonoboUISync, BonoboUISync
BonoboUISyncBuildFn, BonoboUISyncBuildFn ()
BonoboUISyncClass, BonoboUISyncClass
BonoboUISyncPrivate, BonoboUISyncPrivate
BonoboUISyncStateFn, BonoboUISyncStateFn ()
BonoboUIVerb, BonoboUIVerb
BonoboUIVerbFn, BonoboUIVerbFn ()
BonoboWidget, BonoboWidget
BonoboWidgetAsyncFn, BonoboWidgetAsyncFn ()
BonoboWidgetClass, BonoboWidgetClass
BonoboWidgetPrivate, BonoboWidgetPrivate
BonoboWindow, BonoboWindow
BonoboWindow:win-name, The "win-name" property
BonoboWindowClass, BonoboWindowClass
BonoboWindowPrivate, BonoboWindowPrivate
BonoboWrapper, BonoboWrapper
BonoboWrapperClass, BonoboWrapperClass
BonoboWrapperPrivate, BonoboWrapperPrivate
bonobo_a11y_add_actions_interface, bonobo_a11y_add_actions_interface ()
bonobo_a11y_create_accessible_for, bonobo_a11y_create_accessible_for ()
bonobo_a11y_get_atk_object, bonobo_a11y_get_atk_object ()
bonobo_a11y_get_derived_type_for, bonobo_a11y_get_derived_type_for ()
bonobo_a11y_set_atk_object_ret, bonobo_a11y_set_atk_object_ret ()
bonobo_control_activate_notify, bonobo_control_activate_notify ()
bonobo_control_construct, bonobo_control_construct ()
bonobo_control_do_popup, bonobo_control_do_popup ()
bonobo_control_do_popup_full, bonobo_control_do_popup_full ()
bonobo_control_frame_bind_to_control, bonobo_control_frame_bind_to_control ()
bonobo_control_frame_construct, bonobo_control_frame_construct ()
bonobo_control_frame_control_activate, bonobo_control_frame_control_activate ()
bonobo_control_frame_control_deactivate, bonobo_control_frame_control_deactivate ()
bonobo_control_frame_control_set_state, bonobo_control_frame_control_set_state ()
bonobo_control_frame_get_autoactivate, bonobo_control_frame_get_autoactivate ()
bonobo_control_frame_get_autostate, bonobo_control_frame_get_autostate ()
bonobo_control_frame_get_control, bonobo_control_frame_get_control ()
bonobo_control_frame_get_control_property_bag, bonobo_control_frame_get_control_property_bag ()
bonobo_control_frame_get_popup_component, bonobo_control_frame_get_popup_component ()
bonobo_control_frame_get_propbag, bonobo_control_frame_get_propbag ()
bonobo_control_frame_get_ui_container, bonobo_control_frame_get_ui_container ()
bonobo_control_frame_get_widget, bonobo_control_frame_get_widget ()
bonobo_control_frame_new, bonobo_control_frame_new ()
bonobo_control_frame_set_autoactivate, bonobo_control_frame_set_autoactivate ()
bonobo_control_frame_set_autostate, bonobo_control_frame_set_autostate ()
bonobo_control_frame_set_propbag, bonobo_control_frame_set_propbag ()
bonobo_control_frame_set_ui_container, bonobo_control_frame_set_ui_container ()
BONOBO_CONTROL_FRAME_TOPLEVEL_PROP, BONOBO_CONTROL_FRAME_TOPLEVEL_PROP
bonobo_control_get_ambient_properties, bonobo_control_get_ambient_properties ()
bonobo_control_get_automerge, bonobo_control_get_automerge ()
bonobo_control_get_control_frame, bonobo_control_get_control_frame ()
bonobo_control_get_popup_ui_component, bonobo_control_get_popup_ui_component ()
bonobo_control_get_popup_ui_container, bonobo_control_get_popup_ui_container ()
bonobo_control_get_properties, bonobo_control_get_properties ()
bonobo_control_get_property, bonobo_control_get_property ()
bonobo_control_get_remote_ui_container, bonobo_control_get_remote_ui_container ()
bonobo_control_get_ui_component, bonobo_control_get_ui_component ()
bonobo_control_get_widget, bonobo_control_get_widget ()
bonobo_control_life_get_count, bonobo_control_life_get_count ()
bonobo_control_life_instrument, bonobo_control_life_instrument ()
bonobo_control_life_set_callback, bonobo_control_life_set_callback ()
bonobo_control_life_set_purge, bonobo_control_life_set_purge ()
bonobo_control_new, bonobo_control_new ()
BONOBO_CONTROL_POPUP_BUTTON1, BONOBO_CONTROL_POPUP_BUTTON1
BONOBO_CONTROL_POPUP_BUTTON2, BONOBO_CONTROL_POPUP_BUTTON2
BONOBO_CONTROL_POPUP_BUTTON3, BONOBO_CONTROL_POPUP_BUTTON3
bonobo_control_set_automerge, bonobo_control_set_automerge ()
bonobo_control_set_control_frame, bonobo_control_set_control_frame ()
bonobo_control_set_popup_ui_container, bonobo_control_set_popup_ui_container ()
bonobo_control_set_properties, bonobo_control_set_properties ()
bonobo_control_set_property, bonobo_control_set_property ()
bonobo_control_set_transient_for, bonobo_control_set_transient_for ()
bonobo_control_set_ui_component, bonobo_control_set_ui_component ()
bonobo_control_unset_transient_for, bonobo_control_unset_transient_for ()
bonobo_control_windowid_from_x11, bonobo_control_windowid_from_x11()
bonobo_control_window_id_from_x11, bonobo_control_window_id_from_x11 ()
bonobo_control_x11_from_window_id, bonobo_control_x11_from_window_id ()
bonobo_file_selector_open, bonobo_file_selector_open ()
bonobo_file_selector_open_multi, bonobo_file_selector_open_multi ()
bonobo_file_selector_save, bonobo_file_selector_save ()
bonobo_plug_construct, bonobo_plug_construct ()
bonobo_plug_new, bonobo_plug_new ()
BONOBO_PROPERTY_CONTROL_CHANGED, BONOBO_PROPERTY_CONTROL_CHANGED
bonobo_property_control_changed, bonobo_property_control_changed ()
bonobo_property_control_construct, bonobo_property_control_construct ()
bonobo_property_control_get_event_source, bonobo_property_control_get_event_source ()
bonobo_property_control_new, bonobo_property_control_new ()
bonobo_property_control_new_full, bonobo_property_control_new_full ()
bonobo_selector_construct, bonobo_selector_construct ()
bonobo_selector_get_selected_description, bonobo_selector_get_selected_description ()
bonobo_selector_get_selected_id, bonobo_selector_get_selected_id ()
bonobo_selector_get_selected_name, bonobo_selector_get_selected_name ()
bonobo_selector_new, bonobo_selector_new ()
bonobo_selector_select_id, bonobo_selector_select_id ()
bonobo_selector_widget_get_description, bonobo_selector_widget_get_description ()
bonobo_selector_widget_get_id, bonobo_selector_widget_get_id ()
bonobo_selector_widget_get_name, bonobo_selector_widget_get_name ()
bonobo_selector_widget_new, bonobo_selector_widget_new ()
bonobo_selector_widget_set_interfaces, bonobo_selector_widget_set_interfaces ()
bonobo_socket_new, bonobo_socket_new ()
bonobo_ui_component_add_listener, bonobo_ui_component_add_listener ()
bonobo_ui_component_add_listener_full, bonobo_ui_component_add_listener_full ()
bonobo_ui_component_add_verb, bonobo_ui_component_add_verb ()
bonobo_ui_component_add_verb_full, bonobo_ui_component_add_verb_full ()
bonobo_ui_component_add_verb_list, bonobo_ui_component_add_verb_list ()
bonobo_ui_component_add_verb_list_with_data, bonobo_ui_component_add_verb_list_with_data ()
bonobo_ui_component_construct, bonobo_ui_component_construct ()
bonobo_ui_component_freeze, bonobo_ui_component_freeze ()
bonobo_ui_component_get, bonobo_ui_component_get ()
bonobo_ui_component_get_container, bonobo_ui_component_get_container ()
bonobo_ui_component_get_name, bonobo_ui_component_get_name ()
bonobo_ui_component_get_prop, bonobo_ui_component_get_prop ()
bonobo_ui_component_get_tree, bonobo_ui_component_get_tree ()
bonobo_ui_component_new, bonobo_ui_component_new ()
bonobo_ui_component_new_default, bonobo_ui_component_new_default ()
bonobo_ui_component_object_get, bonobo_ui_component_object_get ()
bonobo_ui_component_object_set, bonobo_ui_component_object_set ()
bonobo_ui_component_path_exists, bonobo_ui_component_path_exists ()
bonobo_ui_component_remove_listener, bonobo_ui_component_remove_listener ()
bonobo_ui_component_remove_listener_by_closure, bonobo_ui_component_remove_listener_by_closure ()
bonobo_ui_component_remove_verb, bonobo_ui_component_remove_verb ()
bonobo_ui_component_remove_verb_by_closure, bonobo_ui_component_remove_verb_by_closure ()
bonobo_ui_component_rm, bonobo_ui_component_rm ()
bonobo_ui_component_set, bonobo_ui_component_set ()
bonobo_ui_component_set_container, bonobo_ui_component_set_container ()
bonobo_ui_component_set_name, bonobo_ui_component_set_name ()
bonobo_ui_component_set_prop, bonobo_ui_component_set_prop ()
bonobo_ui_component_set_status, bonobo_ui_component_set_status ()
bonobo_ui_component_set_translate, bonobo_ui_component_set_translate ()
bonobo_ui_component_set_tree, bonobo_ui_component_set_tree ()
bonobo_ui_component_thaw, bonobo_ui_component_thaw ()
bonobo_ui_component_unset_container, bonobo_ui_component_unset_container ()
bonobo_ui_component_widget_set, bonobo_ui_component_widget_set ()
bonobo_ui_container_get_engine, bonobo_ui_container_get_engine ()
bonobo_ui_container_new, bonobo_ui_container_new ()
bonobo_ui_container_set_engine, bonobo_ui_container_set_engine ()
bonobo_ui_engine_add_hint, bonobo_ui_engine_add_hint ()
bonobo_ui_engine_add_sync, bonobo_ui_engine_add_sync ()
bonobo_ui_engine_build_control, bonobo_ui_engine_build_control ()
bonobo_ui_engine_clean_tree, bonobo_ui_engine_clean_tree ()
bonobo_ui_engine_config_add, bonobo_ui_engine_config_add ()
bonobo_ui_engine_config_configure, bonobo_ui_engine_config_configure ()
bonobo_ui_engine_config_connect, bonobo_ui_engine_config_connect ()
bonobo_ui_engine_config_construct, bonobo_ui_engine_config_construct ()
bonobo_ui_engine_config_get_engine, bonobo_ui_engine_config_get_engine ()
bonobo_ui_engine_config_get_path, bonobo_ui_engine_config_get_path ()
bonobo_ui_engine_config_hydrate, bonobo_ui_engine_config_hydrate ()
bonobo_ui_engine_config_new, bonobo_ui_engine_config_new ()
bonobo_ui_engine_config_remove, bonobo_ui_engine_config_remove ()
bonobo_ui_engine_config_serialize, bonobo_ui_engine_config_serialize ()
bonobo_ui_engine_config_set_path, bonobo_ui_engine_config_set_path ()
bonobo_ui_engine_construct, bonobo_ui_engine_construct ()
bonobo_ui_engine_deregister_component, bonobo_ui_engine_deregister_component ()
bonobo_ui_engine_deregister_component_by_ref, bonobo_ui_engine_deregister_component_by_ref ()
bonobo_ui_engine_deregister_dead_components, bonobo_ui_engine_deregister_dead_components ()
bonobo_ui_engine_dirty_tree, bonobo_ui_engine_dirty_tree ()
bonobo_ui_engine_dump, bonobo_ui_engine_dump ()
bonobo_ui_engine_emit_event_on, bonobo_ui_engine_emit_event_on ()
bonobo_ui_engine_emit_event_on_w, bonobo_ui_engine_emit_event_on_w ()
bonobo_ui_engine_emit_verb_on, bonobo_ui_engine_emit_verb_on ()
bonobo_ui_engine_emit_verb_on_w, bonobo_ui_engine_emit_verb_on_w ()
bonobo_ui_engine_exec_verb, bonobo_ui_engine_exec_verb ()
bonobo_ui_engine_freeze, bonobo_ui_engine_freeze ()
bonobo_ui_engine_get_attr, bonobo_ui_engine_get_attr ()
bonobo_ui_engine_get_cmd_node, bonobo_ui_engine_get_cmd_node ()
bonobo_ui_engine_get_component, bonobo_ui_engine_get_component ()
bonobo_ui_engine_get_component_names, bonobo_ui_engine_get_component_names ()
bonobo_ui_engine_get_path, bonobo_ui_engine_get_path ()
bonobo_ui_engine_get_syncs, bonobo_ui_engine_get_syncs ()
bonobo_ui_engine_get_ui_container, bonobo_ui_engine_get_ui_container ()
bonobo_ui_engine_get_view, bonobo_ui_engine_get_view ()
bonobo_ui_engine_new, bonobo_ui_engine_new ()
bonobo_ui_engine_node_get_id, bonobo_ui_engine_node_get_id ()
bonobo_ui_engine_node_get_object, bonobo_ui_engine_node_get_object ()
bonobo_ui_engine_node_get_widget, bonobo_ui_engine_node_get_widget ()
bonobo_ui_engine_node_is_dirty, bonobo_ui_engine_node_is_dirty ()
bonobo_ui_engine_node_set_dirty, bonobo_ui_engine_node_set_dirty ()
bonobo_ui_engine_object_get, bonobo_ui_engine_object_get ()
bonobo_ui_engine_object_set, bonobo_ui_engine_object_set ()
bonobo_ui_engine_prune_widget_info, bonobo_ui_engine_prune_widget_info ()
bonobo_ui_engine_queue_update, bonobo_ui_engine_queue_update ()
bonobo_ui_engine_register_component, bonobo_ui_engine_register_component ()
bonobo_ui_engine_remove_hint, bonobo_ui_engine_remove_hint ()
bonobo_ui_engine_remove_sync, bonobo_ui_engine_remove_sync ()
bonobo_ui_engine_set_ui_container, bonobo_ui_engine_set_ui_container ()
bonobo_ui_engine_stamp_custom, bonobo_ui_engine_stamp_custom ()
bonobo_ui_engine_stamp_root, bonobo_ui_engine_stamp_root ()
bonobo_ui_engine_thaw, bonobo_ui_engine_thaw ()
bonobo_ui_engine_ui_event, bonobo_ui_engine_ui_event ()
bonobo_ui_engine_update, bonobo_ui_engine_update ()
bonobo_ui_engine_update_node, bonobo_ui_engine_update_node ()
bonobo_ui_engine_widget_attach_node, bonobo_ui_engine_widget_attach_node ()
bonobo_ui_engine_widget_get_node, bonobo_ui_engine_widget_get_node ()
bonobo_ui_engine_widget_set, bonobo_ui_engine_widget_set ()
bonobo_ui_engine_widget_set_node, bonobo_ui_engine_widget_set_node ()
bonobo_ui_engine_xml_get, bonobo_ui_engine_xml_get ()
bonobo_ui_engine_xml_get_prop, bonobo_ui_engine_xml_get_prop ()
bonobo_ui_engine_xml_merge_tree, bonobo_ui_engine_xml_merge_tree ()
bonobo_ui_engine_xml_node_exists, bonobo_ui_engine_xml_node_exists ()
bonobo_ui_engine_xml_rm, bonobo_ui_engine_xml_rm ()
bonobo_ui_engine_xml_set_prop, bonobo_ui_engine_xml_set_prop ()
bonobo_ui_node_add_child, bonobo_ui_node_add_child ()
bonobo_ui_node_children, bonobo_ui_node_children ()
bonobo_ui_node_copy, bonobo_ui_node_copy ()
bonobo_ui_node_copy_attrs, bonobo_ui_node_copy_attrs ()
bonobo_ui_node_free, bonobo_ui_node_free ()
bonobo_ui_node_free_string, bonobo_ui_node_free_string ()
bonobo_ui_node_from_file, bonobo_ui_node_from_file ()
bonobo_ui_node_from_string, bonobo_ui_node_from_string ()
bonobo_ui_node_get_attr, bonobo_ui_node_get_attr ()
bonobo_ui_node_get_content, bonobo_ui_node_get_content ()
bonobo_ui_node_get_data, bonobo_ui_node_get_data ()
bonobo_ui_node_get_name, bonobo_ui_node_get_name ()
bonobo_ui_node_has_attr, bonobo_ui_node_has_attr ()
bonobo_ui_node_has_name, bonobo_ui_node_has_name ()
bonobo_ui_node_insert_before, bonobo_ui_node_insert_before ()
bonobo_ui_node_new, bonobo_ui_node_new ()
bonobo_ui_node_new_child, bonobo_ui_node_new_child ()
bonobo_ui_node_next, bonobo_ui_node_next ()
bonobo_ui_node_parent, bonobo_ui_node_parent ()
bonobo_ui_node_prev, bonobo_ui_node_prev ()
bonobo_ui_node_remove_attr, bonobo_ui_node_remove_attr ()
bonobo_ui_node_replace, bonobo_ui_node_replace ()
bonobo_ui_node_set_attr, bonobo_ui_node_set_attr ()
bonobo_ui_node_set_content, bonobo_ui_node_set_content ()
bonobo_ui_node_set_data, bonobo_ui_node_set_data ()
bonobo_ui_node_strip, bonobo_ui_node_strip ()
bonobo_ui_node_to_string, bonobo_ui_node_to_string ()
bonobo_ui_node_transparent, bonobo_ui_node_transparent ()
bonobo_ui_node_unlink, bonobo_ui_node_unlink ()
BONOBO_UI_PAD, BONOBO_UI_PAD
BONOBO_UI_PAD_BIG, BONOBO_UI_PAD_BIG
BONOBO_UI_PAD_SMALL, BONOBO_UI_PAD_SMALL
bonobo_ui_preferences_add_engine, bonobo_ui_preferences_add_engine ()
bonobo_ui_preferences_get_menubar_detachable, bonobo_ui_preferences_get_menubar_detachable ()
bonobo_ui_preferences_get_menus_have_icons, bonobo_ui_preferences_get_menus_have_icons ()
bonobo_ui_preferences_get_menus_have_tearoff, bonobo_ui_preferences_get_menus_have_tearoff ()
bonobo_ui_preferences_get_toolbar_detachable, bonobo_ui_preferences_get_toolbar_detachable ()
bonobo_ui_preferences_get_toolbar_style, bonobo_ui_preferences_get_toolbar_style ()
bonobo_ui_preferences_remove_engine, bonobo_ui_preferences_remove_engine ()
bonobo_ui_sync_build, bonobo_ui_sync_build ()
bonobo_ui_sync_build_placeholder, bonobo_ui_sync_build_placeholder ()
bonobo_ui_sync_can_handle, bonobo_ui_sync_can_handle ()
bonobo_ui_sync_construct, bonobo_ui_sync_construct ()
bonobo_ui_sync_do_show_hide, bonobo_ui_sync_do_show_hide ()
bonobo_ui_sync_get_attached, bonobo_ui_sync_get_attached ()
bonobo_ui_sync_get_widgets, bonobo_ui_sync_get_widgets ()
bonobo_ui_sync_has_widgets, bonobo_ui_sync_has_widgets ()
bonobo_ui_sync_ignore_widget, bonobo_ui_sync_ignore_widget ()
bonobo_ui_sync_is_recursive, bonobo_ui_sync_is_recursive ()
bonobo_ui_sync_keys_get_type, bonobo_ui_sync_keys_get_type ()
bonobo_ui_sync_menu_get_type, bonobo_ui_sync_menu_get_type ()
bonobo_ui_sync_remove_root, bonobo_ui_sync_remove_root ()
bonobo_ui_sync_stamp_root, bonobo_ui_sync_stamp_root ()
bonobo_ui_sync_state, bonobo_ui_sync_state ()
bonobo_ui_sync_state_placeholder, bonobo_ui_sync_state_placeholder ()
bonobo_ui_sync_state_update, bonobo_ui_sync_state_update ()
bonobo_ui_sync_status_get_type, bonobo_ui_sync_status_get_type ()
bonobo_ui_sync_toolbar_get_type, bonobo_ui_sync_toolbar_get_type ()
bonobo_ui_sync_update_root, bonobo_ui_sync_update_root ()
bonobo_ui_sync_wrap_widget, bonobo_ui_sync_wrap_widget ()
BONOBO_UI_UNSAFE_VERB, BONOBO_UI_UNSAFE_VERB()
BONOBO_UI_UNSAFE_VERB_DATA, BONOBO_UI_UNSAFE_VERB_DATA()
bonobo_ui_util_accel_name, bonobo_ui_util_accel_name ()
bonobo_ui_util_accel_parse, bonobo_ui_util_accel_parse ()
bonobo_ui_util_build_help_menu, bonobo_ui_util_build_help_menu ()
bonobo_ui_util_decode_str, bonobo_ui_util_decode_str()
bonobo_ui_util_encode_str, bonobo_ui_util_encode_str()
bonobo_ui_util_fixup_help, bonobo_ui_util_fixup_help ()
bonobo_ui_util_fixup_icons, bonobo_ui_util_fixup_icons ()
bonobo_ui_util_get_ui_fname, bonobo_ui_util_get_ui_fname ()
bonobo_ui_util_new_ui, bonobo_ui_util_new_ui ()
bonobo_ui_util_pixbuf_to_xml, bonobo_ui_util_pixbuf_to_xml ()
bonobo_ui_util_set_pixbuf, bonobo_ui_util_set_pixbuf ()
bonobo_ui_util_set_ui, bonobo_ui_util_set_ui ()
bonobo_ui_util_translate_ui, bonobo_ui_util_translate_ui ()
bonobo_ui_util_xml_get_icon_widget, bonobo_ui_util_xml_get_icon_widget ()
bonobo_ui_util_xml_set_pixbuf, bonobo_ui_util_xml_set_pixbuf ()
bonobo_ui_util_xml_to_pixbuf, bonobo_ui_util_xml_to_pixbuf ()
BONOBO_UI_VERB, BONOBO_UI_VERB()
BONOBO_UI_VERB_DATA, BONOBO_UI_VERB_DATA()
BONOBO_UI_VERB_END, BONOBO_UI_VERB_END
bonobo_widget_construct_control, bonobo_widget_construct_control ()
bonobo_widget_construct_control_from_objref, bonobo_widget_construct_control_from_objref ()
bonobo_widget_get_control_frame, bonobo_widget_get_control_frame ()
bonobo_widget_get_objref, bonobo_widget_get_objref ()
bonobo_widget_get_property, bonobo_widget_get_property ()
bonobo_widget_get_uih, bonobo_widget_get_uih()
bonobo_widget_get_ui_container, bonobo_widget_get_ui_container ()
bonobo_widget_new_control, bonobo_widget_new_control ()
bonobo_widget_new_control_async, bonobo_widget_new_control_async ()
bonobo_widget_new_control_from_objref, bonobo_widget_new_control_from_objref ()
bonobo_widget_set_property, bonobo_widget_set_property ()
bonobo_window_add_popup, bonobo_window_add_popup ()
bonobo_window_construct, bonobo_window_construct ()
bonobo_window_get_accel_group, bonobo_window_get_accel_group ()
bonobo_window_get_contents, bonobo_window_get_contents ()
bonobo_window_get_name, bonobo_window_get_name ()
bonobo_window_get_ui_container, bonobo_window_get_ui_container ()
bonobo_window_get_ui_engine, bonobo_window_get_ui_engine ()
bonobo_window_new, bonobo_window_new ()
bonobo_window_remove_popup, bonobo_window_remove_popup ()
bonobo_window_set_contents, bonobo_window_set_contents ()
bonobo_window_set_name, bonobo_window_set_name ()
bonobo_wrapper_get_visibility, bonobo_wrapper_get_visibility ()
bonobo_wrapper_is_covered, bonobo_wrapper_is_covered ()
bonobo_wrapper_new, bonobo_wrapper_new ()
bonobo_wrapper_set_covered, bonobo_wrapper_set_covered ()
bonobo_wrapper_set_visibility, bonobo_wrapper_set_visibility ()
libbonoboui-2.24.5/doc/api/html/libbonoboui-bonobo-file-selector-util.html0000664000076400007640000003153511546335132023511 00000000000000 bonobo-file-selector-util

bonobo-file-selector-util

bonobo-file-selector-util

Synopsis

char *              bonobo_file_selector_open           (GtkWindow *parent,
                                                         gboolean enable_vfs,
                                                         const char *title,
                                                         const char *mime_types,
                                                         const char *default_path);
char **             bonobo_file_selector_open_multi     (GtkWindow *parent,
                                                         gboolean enable_vfs,
                                                         const char *title,
                                                         const char *mime_types,
                                                         const char *default_path);
char *              bonobo_file_selector_save           (GtkWindow *parent,
                                                         gboolean enable_vfs,
                                                         const char *title,
                                                         const char *mime_types,
                                                         const char *default_path,
                                                         const char *default_filename);

Description

Details

bonobo_file_selector_open ()

char *              bonobo_file_selector_open           (GtkWindow *parent,
                                                         gboolean enable_vfs,
                                                         const char *title,
                                                         const char *mime_types,
                                                         const char *default_path);

Creates and shows a modal open file dialog, waiting for the user to select a file or cancel before returning.

parent :

optional window the dialog should be a transient for.

enable_vfs :

if FALSE, restrict files to local paths.

title :

optional window title to use

mime_types :

optional list of mime types to provide filters for. These are of the form: "HTML Files:text/html|Text Files:text/html,text/plain"

default_path :

optional directory to start in

Returns :

the URI (or plain file path if enable_vfs is FALSE) of the file selected, or NULL if cancel was pressed.

bonobo_file_selector_open_multi ()

char **             bonobo_file_selector_open_multi     (GtkWindow *parent,
                                                         gboolean enable_vfs,
                                                         const char *title,
                                                         const char *mime_types,
                                                         const char *default_path);

Creates and shows a modal open file dialog, waiting for the user to select a file or cancel before returning.

parent :

optional window the dialog should be a transient for

enable_vfs :

if FALSE, restrict files to local paths.

title :

optional window title to use

mime_types :

optional list of mime types to provide filters for. These are of the form: "HTML Files:text/html|Text Files:text/html,text/plain"

default_path :

optional directory to start in

Returns :

a NULL terminated string array of the selected URIs (or local file paths if enable_vfs is FALSE), or NULL if cancel was pressed.

bonobo_file_selector_save ()

char *              bonobo_file_selector_save           (GtkWindow *parent,
                                                         gboolean enable_vfs,
                                                         const char *title,
                                                         const char *mime_types,
                                                         const char *default_path,
                                                         const char *default_filename);

Creates and shows a modal save file dialog, waiting for the user to select a file or cancel before returning.

parent :

optional window the dialog should be a transient for

enable_vfs :

if FALSE, restrict files to local paths.

title :

optional window title to use

mime_types :

optional list of mime types to provide filters for. These are of the form: "HTML Files:text/html|Text Files:text/html,text/plain"

default_path :

optional directory to start in

default_filename :

optional file name to default to

Returns :

the URI (or plain file path if enable_vfs is FALSE) of the file selected, or NULL if cancel was pressed.
libbonoboui-2.24.5/doc/api/html/ch01.html0000664000076400007640000000674711546335132014766 00000000000000 Object Hierarchy libbonoboui-2.24.5/doc/api/html/libbonoboui-bonobo-ui-preferences.html0000664000076400007640000002637711546335132022725 00000000000000 bonobo-ui-preferences

bonobo-ui-preferences

bonobo-ui-preferences

Description

Details

BONOBO_UI_PAD

#define BONOBO_UI_PAD          8


BONOBO_UI_PAD_SMALL

#define BONOBO_UI_PAD_SMALL    4


BONOBO_UI_PAD_BIG

#define BONOBO_UI_PAD_BIG      12


bonobo_ui_preferences_add_engine ()

void                bonobo_ui_preferences_add_engine    (BonoboUIEngine *engine);

engine :


bonobo_ui_preferences_remove_engine ()

void                bonobo_ui_preferences_remove_engine (BonoboUIEngine *engine);

engine :


bonobo_ui_preferences_get_toolbar_style ()

BonoboUIToolbarStyle  bonobo_ui_preferences_get_toolbar_style
                                                        (void);

Returns :


bonobo_ui_preferences_get_menus_have_icons ()

gboolean            bonobo_ui_preferences_get_menus_have_icons
                                                        (void);

Returns :


bonobo_ui_preferences_get_menus_have_tearoff ()

gboolean            bonobo_ui_preferences_get_menus_have_tearoff
                                                        (void);

Returns :


bonobo_ui_preferences_get_menubar_detachable ()

gboolean            bonobo_ui_preferences_get_menubar_detachable
                                                        (void);

Returns :


bonobo_ui_preferences_get_toolbar_detachable ()

gboolean            bonobo_ui_preferences_get_toolbar_detachable
                                                        (void);

Returns :

libbonoboui-2.24.5/doc/api/html/libbonoboui-bonobo-control.html0000664000076400007640000021516711546335132021466 00000000000000 BonoboControl

BonoboControl

BonoboControl — An implementation of the control interface for GtkWidgets

Synopsis

                    BonoboControl;
                    BonoboControlPrivate;
                    BonoboControlClass;
BonoboControl *     bonobo_control_new                  (GtkWidget *widget);
GtkWidget *         bonobo_control_get_widget           (BonoboControl *control);
void                bonobo_control_set_automerge        (BonoboControl *control,
                                                         gboolean automerge);
gboolean            bonobo_control_get_automerge        (BonoboControl *control);
void                bonobo_control_set_property         (BonoboControl *control,
                                                         CORBA_Environment *opt_ev,
                                                         const char *first_prop,
                                                         ...);
void                bonobo_control_get_property         (BonoboControl *control,
                                                         CORBA_Environment *opt_ev,
                                                         const char *first_prop,
                                                         ...);
void                bonobo_control_set_transient_for    (BonoboControl *control,
                                                         GtkWindow *window,
                                                         CORBA_Environment *opt_ev);
void                bonobo_control_unset_transient_for  (BonoboControl *control,
                                                         GtkWindow *window,
                                                         CORBA_Environment *opt_ev);
BonoboControl *     bonobo_control_construct            (BonoboControl *control,
                                                         GtkWidget *widget);
BonoboUIComponent * bonobo_control_get_ui_component     (BonoboControl *control);
void                bonobo_control_set_ui_component     (BonoboControl *control,
                                                         BonoboUIComponent *component);
Bonobo_UIContainer  bonobo_control_get_remote_ui_container
                                                        (BonoboControl *control,
                                                         CORBA_Environment *opt_ev);
void                bonobo_control_set_control_frame    (BonoboControl *control,
                                                         Bonobo_ControlFrame control_frame,
                                                         CORBA_Environment *opt_ev);
Bonobo_ControlFrame  bonobo_control_get_control_frame   (BonoboControl *control,
                                                         CORBA_Environment *opt_ev);
void                bonobo_control_set_properties       (BonoboControl *control,
                                                         Bonobo_PropertyBag pb,
                                                         CORBA_Environment *opt_ev);
Bonobo_PropertyBag  bonobo_control_get_properties       (BonoboControl *control);
Bonobo_PropertyBag  bonobo_control_get_ambient_properties
                                                        (BonoboControl *control,
                                                         CORBA_Environment *opt_ev);
void                bonobo_control_activate_notify      (BonoboControl *control,
                                                         gboolean activated,
                                                         CORBA_Environment *opt_ev);
Bonobo_Gdk_WindowId  bonobo_control_window_id_from_x11  (guint32 x11_id);
guint32             bonobo_control_x11_from_window_id   (const CORBA_char *id);
#define             bonobo_control_windowid_from_x11    (a)
#define             BONOBO_CONTROL_POPUP_BUTTON1
#define             BONOBO_CONTROL_POPUP_BUTTON2
#define             BONOBO_CONTROL_POPUP_BUTTON3
BonoboUIContainer * bonobo_control_get_popup_ui_container
                                                        (BonoboControl *control);
BonoboUIComponent * bonobo_control_get_popup_ui_component
                                                        (BonoboControl *control);
void                bonobo_control_set_popup_ui_container
                                                        (BonoboControl *control,
                                                         BonoboUIContainer *ui_container);
gboolean            bonobo_control_do_popup             (BonoboControl *control,
                                                         guint button,
                                                         guint32 activate_time);
gboolean            bonobo_control_do_popup_full        (BonoboControl *control,
                                                         GtkWidget *parent_menu_shell,
                                                         GtkWidget *parent_menu_item,
                                                         GtkMenuPositionFunc func,
                                                         gpointer data,
                                                         guint button,
                                                         guint32 activate_time);
void                (*BonoboControlLifeCallback)        (void);
void                bonobo_control_life_set_purge       (long ms Param1);
void                bonobo_control_life_set_callback    (BonoboControlLifeCallback all_dead_callback);
void                bonobo_control_life_instrument      (BonoboControl *control);
int                 bonobo_control_life_get_count       (void);

Object Hierarchy

  GObject
   +----BonoboObject
         +----BonoboControl

Description

The BonoboControl object implements the CORBA interface for handling remote embeddable components. A Control is a light weight, single view, arbitrarily complex 'widget'. Controls typicaly expose much of their functionality through a property bag.

Figure 1. The Bonobo::Control interface

The Bonobo::Control interface

A BonoboControl provides the server ( or component ) side implementation of a Control. The client that uses this control will probably use a BonoboWidget to use the control in their program.

If you want to expose your widget as a control it is very simple

Example 1. CORBA-ifying your GtkWidget

1
2
3
4
5
6
7
BonoboControl *control;
GtkWidget     *widget;
Bonobo_Unknown corba_object;
widget = make_my_widget ();
gtk_widget_show (widget);
control = bonobo_control_new (widget);
corba_object = BONOBO_OBJREF (control);


The corba_object can then be passed off down the wire to anyone and the control popped into a BonoboWidget or BonoboControlFrame at the other end. Here is an even less useful example

Example 2. A pretty useless Control

1
2
3
4
GtkWidget *widget;
widget = gtk_button_new_with_label ("My Control");
gtk_widget_show (widget);
return bonobo_control_new (widget);


If you learn only one thing from this example, it should be that you need to do a gtk_widget_show on your control. It is not sufficient to do a gtk_widget_show_all on the top level of the client side, since this will not ( and should not ) propagate over to the Control.

One final thing worth thinking about is activation. When a control is embedded inside a BonoboControlFrame, it is initialy inactive. In order for the control to recieve interactive input it is neccessary to use bonobo_control_frame_activate. This signals to the control that it is activated, at which point the Control should merge any UI elements it has with the associated BonoboUIComponent. This needs to be done every time the control is activated.

Details

BonoboControl

typedef struct _BonoboControl BonoboControl;


BonoboControlPrivate

typedef struct _BonoboControlPrivate BonoboControlPrivate;


BonoboControlClass

typedef struct {
	BonoboObjectClass      parent_class;

	POA_Bonobo_Control__epv epv;

	gpointer dummy[2];

	/* Signals. */
	void (*plug_created)   (BonoboControl *control);
	void (*disconnected)   (BonoboControl *control);
	void (*set_frame)      (BonoboControl *control);
	void (*activate)       (BonoboControl *control, gboolean state);
} BonoboControlClass;


bonobo_control_new ()

BonoboControl *     bonobo_control_new                  (GtkWidget *widget);

This function creates a new BonoboControl object for widget.

widget :

a GTK widget that contains the control and will be passed to the container process.

Returns :

a BonoboControl object that implements the Bonobo::Control CORBA service that will transfer the widget to the container process.

bonobo_control_get_widget ()

GtkWidget *         bonobo_control_get_widget           (BonoboControl *control);

Returns the GtkWidget associated with a BonoboControl.

control :

a BonoboControl

Returns :

the BonoboControl's widget

bonobo_control_set_automerge ()

void                bonobo_control_set_automerge        (BonoboControl *control,
                                                         gboolean automerge);

Sets whether or not the control handles menu/toolbar merging automatically. If automerge is on, the control will automatically register its BonoboUIComponent with the remote BonoboUIContainer when it is activated.

control :

A BonoboControl.

automerge :

Whether or not menus and toolbars should be automatically merged when the control is activated.

bonobo_control_get_automerge ()

gboolean            bonobo_control_get_automerge        (BonoboControl *control);

control :

A BonoboControl.

Returns :

Whether or not the control is set to automerge its menus/toolbars. See bonobo_control_set_automerge().

bonobo_control_set_property ()

void                bonobo_control_set_property         (BonoboControl *control,
                                                         CORBA_Environment *opt_ev,
                                                         const char *first_prop,
                                                         ...);

This method takes a NULL terminated list of name, type, value triplicates, and sets the corresponding values on the control's associated property bag.

control :

the control with associated property bag

opt_ev :

optional corba exception environment

first_prop :

the first property's name

... :


bonobo_control_get_property ()

void                bonobo_control_get_property         (BonoboControl *control,
                                                         CORBA_Environment *opt_ev,
                                                         const char *first_prop,
                                                         ...);

This method takes a NULL terminated list of name, type, value triplicates, and fetches the corresponding values on the control's associated property bag.

control :

the control with associated property bag

opt_ev :

optional corba exception environment

first_prop :

the first property's name

... :


bonobo_control_set_transient_for ()

void                bonobo_control_set_transient_for    (BonoboControl *control,
                                                         GtkWindow *window,
                                                         CORBA_Environment *opt_ev);

Attempts to make the window transient for the toplevel of any associated controlframe the BonoboControl may have.

control :

a control with associated control frame

window :

a window upon which to set the transient window.

opt_ev :


bonobo_control_unset_transient_for ()

void                bonobo_control_unset_transient_for  (BonoboControl *control,
                                                         GtkWindow *window,
                                                         CORBA_Environment *opt_ev);

control :

a control with associated control frame

window :

a window upon which to unset the transient window.

opt_ev :


bonobo_control_construct ()

BonoboControl *     bonobo_control_construct            (BonoboControl *control,
                                                         GtkWidget *widget);

control :

widget :

Returns :


bonobo_control_get_ui_component ()

BonoboUIComponent * bonobo_control_get_ui_component     (BonoboControl *control);

control :

The control

Returns :

the associated UI component

bonobo_control_set_ui_component ()

void                bonobo_control_set_ui_component     (BonoboControl *control,
                                                         BonoboUIComponent *component);

control :

component :


bonobo_control_get_remote_ui_container ()

Bonobo_UIContainer  bonobo_control_get_remote_ui_container
                                                        (BonoboControl *control,
                                                         CORBA_Environment *opt_ev);

control :

A BonoboControl object which is associated with a remote ControlFrame.

opt_ev :

an optional exception environment

Returns :

The Bonobo_UIContainer CORBA server for the remote BonoboControlFrame.

bonobo_control_set_control_frame ()

void                bonobo_control_set_control_frame    (BonoboControl *control,
                                                         Bonobo_ControlFrame control_frame,
                                                         CORBA_Environment *opt_ev);

control :

control_frame :

opt_ev :


bonobo_control_get_control_frame ()

Bonobo_ControlFrame  bonobo_control_get_control_frame   (BonoboControl *control,
                                                         CORBA_Environment *opt_ev);

control :

A BonoboControl object whose Bonobo_ControlFrame CORBA interface is being retrieved.

opt_ev :

an optional exception environment

Returns :

The Bonobo_ControlFrame CORBA object associated with control, this is a CORBA_Object_duplicated object. You need to CORBA_Object_release it when you are done with it.

bonobo_control_set_properties ()

void                bonobo_control_set_properties       (BonoboControl *control,
                                                         Bonobo_PropertyBag pb,
                                                         CORBA_Environment *opt_ev);

Binds pb to control. When a remote object queries control for its property bag, pb will be used in the responses.

control :

A BonoboControl object.

pb :

A Bonobo_PropertyBag.

opt_ev :

An optional exception environment

bonobo_control_get_properties ()

Bonobo_PropertyBag  bonobo_control_get_properties       (BonoboControl *control);

control :

A BonoboControl whose PropertyBag has already been set.

Returns :

The Bonobo_PropertyBag bound to control.

bonobo_control_get_ambient_properties ()

Bonobo_PropertyBag  bonobo_control_get_ambient_properties
                                                        (BonoboControl *control,
                                                         CORBA_Environment *opt_ev);

control :

A BonoboControl which is bound to a remote BonoboControlFrame.

opt_ev :

an optional exception environment

Returns :

A Bonobo_PropertyBag bound to the bag of ambient properties associated with this Control's ControlFrame.

bonobo_control_activate_notify ()

void                bonobo_control_activate_notify      (BonoboControl *control,
                                                         gboolean activated,
                                                         CORBA_Environment *opt_ev);

Notifies the remote ControlFrame which is associated with control that control has been activated/deactivated.

control :

A BonoboControl object which is bound to a remote ControlFrame.

activated :

Whether or not control has been activated.

opt_ev :

An optional exception environment

bonobo_control_window_id_from_x11 ()

Bonobo_Gdk_WindowId  bonobo_control_window_id_from_x11  (guint32 x11_id);

x11_id :

the x11 window id or Windows HWND.

Returns :

the window id or handle as a string; free after use.

bonobo_control_x11_from_window_id ()

guint32             bonobo_control_x11_from_window_id   (const CORBA_char *id);

De-mangle a window id string, fields are separated by ':' character, currently only the first field is used.

id :

CORBA_char *

Returns :

the native window id.

bonobo_control_windowid_from_x11()

#define             bonobo_control_windowid_from_x11(a)

a :

Returns :


BONOBO_CONTROL_POPUP_BUTTON1

#define                     BONOBO_CONTROL_POPUP_BUTTON1           "/popups/button1"


BONOBO_CONTROL_POPUP_BUTTON2

#define                     BONOBO_CONTROL_POPUP_BUTTON2           "/popups/button2"


BONOBO_CONTROL_POPUP_BUTTON3

#define                     BONOBO_CONTROL_POPUP_BUTTON3           "/popups/button3"


bonobo_control_get_popup_ui_container ()

BonoboUIContainer * bonobo_control_get_popup_ui_container
                                                        (BonoboControl *control);

control :

Returns :


bonobo_control_get_popup_ui_component ()

BonoboUIComponent * bonobo_control_get_popup_ui_component
                                                        (BonoboControl *control);

control :

Returns :


bonobo_control_set_popup_ui_container ()

void                bonobo_control_set_popup_ui_container
                                                        (BonoboControl *control,
                                                         BonoboUIContainer *ui_container);

control :

ui_container :


bonobo_control_do_popup ()

gboolean            bonobo_control_do_popup             (BonoboControl *control,
                                                         guint button,
                                                         guint32 activate_time);

control :

button :

activate_time :

Returns :


bonobo_control_do_popup_full ()

gboolean            bonobo_control_do_popup_full        (BonoboControl *control,
                                                         GtkWidget *parent_menu_shell,
                                                         GtkWidget *parent_menu_item,
                                                         GtkMenuPositionFunc func,
                                                         gpointer data,
                                                         guint button,
                                                         guint32 activate_time);

control :

parent_menu_shell :

parent_menu_item :

func :

data :

button :

activate_time :

Returns :


BonoboControlLifeCallback ()

void                (*BonoboControlLifeCallback)        (void);


bonobo_control_life_set_purge ()

void                bonobo_control_life_set_purge       (long ms Param1);

Set time we're prepared to wait without a ControlFrame before terminating the Control. This can happen if the panel activates us but crashes before the set_frame.

Param1 :


bonobo_control_life_set_callback ()

void                bonobo_control_life_set_callback    (BonoboControlLifeCallback all_dead_callback);

See bonobo_control_life_instrument

all_dead_callback :

method to call at idle when no controls remain

bonobo_control_life_instrument ()

void                bonobo_control_life_instrument      (BonoboControl *control);

Request that control is lifecycle managed by this code; when it (and all other registerees are dead, the all_dead_callback set by bonobo_control_life_set_callback will be called at idle.

control :

control to manage.

bonobo_control_life_get_count ()

int                 bonobo_control_life_get_count       (void);

calculates the number of live controls under management.

Returns :

the number of live controls.

Signal Details

The "activate" signal

void                user_function                      (BonoboControl *bonobocontrol,
                                                        gboolean       arg1,
                                                        gpointer       user_data)          : Run Last

bonobocontrol :

the object which received the signal.

arg1 :

user_data :

user data set when the signal handler was connected.

The "disconnected" signal

void                user_function                      (BonoboControl *bonobocontrol,
                                                        gpointer       user_data)          : Run Last

bonobocontrol :

the object which received the signal.

user_data :

user data set when the signal handler was connected.

The "plug-created" signal

void                user_function                      (BonoboControl *bonobocontrol,
                                                        gpointer       user_data)          : Run Last

bonobocontrol :

the object which received the signal.

user_data :

user data set when the signal handler was connected.

The "set-frame" signal

void                user_function                      (BonoboControl *bonobocontrol,
                                                        gpointer       user_data)          : Run Last

bonobocontrol :

the object which received the signal.

user_data :

user data set when the signal handler was connected.

See Also

BonoboWidget, bonobo_widget_new()

libbonoboui-2.24.5/doc/api/html/right.png0000644000076400007640000000073011546335132015150 00000000000000PNG  IHDRw=bKGD pHYs  ~tIME2 I%=eIDATx!o@.'**M0$$?1~vIeEuLl&4䝠Bݛ|>$ݶoc BonoboUIContainer

BonoboUIContainer

BonoboUIContainer — The container interface as implemented for BonoboWindow

Object Hierarchy

  GObject
   +----BonoboObject
         +----BonoboUIContainer

Description

A BonoboUIContainer is a very thin object, it implements the CORBA interface for doing UI merging, but none of the logic. In order to achieve the effect it is associated with a BonoboUIEngine object. Traditionaly the UI container was associated with a BonoboWindow however, this is now strongly deprecated, since the BonoboUIContainer can be used with any BonoboUIEngine, not just that used by BonoboWindow.

Here is how your code should interact with the BonoboUIContainer

Example 6. How to setup a BonoboUIContainer

1
2
3
4
5
6
7
8
9
10
11
{
    BonoboWindow      *window;
    BonoboUIEngine    *engine;
    BonoboUIContainer *container;
    window = BONOBO_WINDOW (
        bonobo_window_new ("Window", "My Test Application"));
    container = bonobo_ui_container_new ();
    engine = bonobo_window_get_ui_engine (window);
    bonobo_ui_container_set_engine (container, engine);
    return window;
}


Details

BonoboUIContainer

typedef struct _BonoboUIContainer BonoboUIContainer;


BonoboUIContainerPrivate

typedef struct _BonoboUIContainerPrivate BonoboUIContainerPrivate;


BonoboUIContainerClass

typedef struct {
	BonoboObjectClass parent;

	POA_Bonobo_UIContainer__epv epv;

	gpointer dummy[2];
} BonoboUIContainerClass;


bonobo_ui_container_new ()

BonoboUIContainer * bonobo_ui_container_new             (void);

Returns :

a newly created BonoboUIContainer

bonobo_ui_container_set_engine ()

void                bonobo_ui_container_set_engine      (BonoboUIContainer *container,
                                                         BonoboUIEngine *engine);

Associates the BonoboUIContainer with a BonoboUIEngine that it will use to handle all the UI merging requests.

container :

the container

engine :

the engine

bonobo_ui_container_get_engine ()

BonoboUIEngine *    bonobo_ui_container_get_engine      (BonoboUIContainer *container);

Get the associated BonoboUIEngine

container :

the UI container

Returns :

the engine
libbonoboui-2.24.5/doc/api/html/control-frame.png0000644000076400007640000006300211546335132016604 00000000000000PNG  IHDRsBITO IDATxyE$I PQ0C6 aQ0E"EvBD4FkD@6ED!$h$991oz|N~l6#p ,s=ˎs9s-; mWZv:W@Gc=~ߔg믿+ZcJX,s%P XI&'?i%LPFeu5TbQE C_@S&wԴbSX K%b>, GzO3OZZS洡*XXXYK;~Fs; \I ,THbzg Wdٿ7`T:g{ Ha|o}PqydaiͩC>* U`ҽK=aC~؄-m=UKTa\nYO؁Jlz̾c1*1jemj.>/BiyM{j&LE\>ԶjK.O`\nSqSh5$k d6gΜ$,U_#yXyMsb^*D0 ^#Tm+0I䀪 $Թ,^({&찻:ܦO  xMx0aBGuüXTQȼ/7glf"iE] U[nCz`,UUx-vug>bQQ_^nY殅=$W5}/cpIJZ k6٨ #E7au=9Z9d˘o 4c\~:Arz5$@bQQE]_TF\U 5mY6 iiMl_C*< m* ;,!-$?uۯr ch?dh?dh's @1/r/W}2OM\Vw_0+b(Qk҅$5_Q$'ذ Y,k6M pB3 P  \}kSS@Qm<E9c>wo?Xv쥾TcJ5' _Cő(BoooE]]TyaƤ#7w@QŢ3t{L-DB@F"PXt 1#*FBV P֌Xtc(0>*ĸyH\[ 5a^, baʔ)SLa "Ì@(dh?dʕ+(Y,u/}+; 8| ['OϔPC]tʕ+'L0hРn/;"ž Sy===e m @N-Zx%tIw^AEh,d7x1f͚ҚD wE[z;pYg 2Xt:<` 7\dIQe]yn!'+;"X /n Ğs9Qm&/;ٱ=b~\wuoᆩSVD5 o~@lkc!jm%e,.5۲馛p ̎E' n'#K ךя~4m9묳p,j,hoٳ]w믿ʉl+eFŋb[6tOӽ~)w߽gl6/j"qŵ[o'(>6d@E"1D32;5F D2=c+N?p,j,85k,PWGE{$@]tEo~ X[6>B;v;w]ҵ/YV\yꩧ^~ņ G/~{o:mg?YN!ea,hKw[lѐh7?E0@|[rMa(b8TX鷡k]ZՏP0ܹsǏ?nܸ￿挚&(p]v~c Rf_Ń~vu?,ʍPH*o4_WP5bSkPTa1ۣʪڇ@_veJ^Pooڛ[B}N'Pf|jAMD}{FU*<}LJJl wG$RY·#YcbN&97L7H UUM|7,#pjNN( ^Ҏ20xRz~R,6Tzu˲Xl2?U2 嚅lUÚdk6]D UO{퍢9|F&rj̉g*zGҺ q1xAT*GcjŦ4N[{+lK~#ƹ2`RQl,wrgsӼsX ioFQ(/f'RN jYnXMJ}˸SA㈴ /luYeb_I-TM 0֯V@ݑt/ĶbvЦWYƬP թ5D9_v(Kko*o7m/4uBDX˵N=cЦQd9-; f>wsx5Y,l][5YtDM>AxP=R!5 ܴ,l덾?[n0AT0$ڪ0[[B`HnrhcV-ddH= %-oSeyUmW6ˀUK,P@VkWt&MN(;8ubك4J-tZJS_6{gl:U8N2T,__ YXќ0J2vE'bW.g CmS+_e)%.)QeªsJ^>KZk'ZxDd9aJkuQWWT+ Je0A>TjkjŦjڀWeU6˳`NMD+Tvxnj@XuQXtc:x:LXa\Zi0aH[WmkVx0]сQYlxޏ5+*TZcHĵQq #ˣ?a>OeĸY,Ylumh)XXX:+b6l… /)Q0}K.Fj6;5ÌXXXC[Q1H*7T dK,ѿ\6uz9s=&vz1, PjګO I<3KdzFկ~sjhkɜVdԔ);( =ik᯽ZQY߿3ΈN ^ N?.lʔ) .DJd (ŧq JX,PE]]]3gΌ3wG^xo3|sˣ'6￿<>q%gVI%ˋ"M[4mf:9&°񣓑u '\yQ~y$5kꪻ;x)-8*ގWexbmb1cƚ,wJS~-,O<1Dv >OZ06M2 \'6vҝ҇gQy@͜xQ|ɧ~z8Ss=뮻֜X,j)>L3wc*mj׾-h5\p&~Y,Pu'xbg>WDhr-뭷^:b9`y@(I'tWDQti͘1#l3 ОsC;kI} &bpI'EQm4gˎ ch#DNPF<"{ꩧv:<3@;J}žGrfgjU~_myJm䄱XtIfsڴizjEm4";C$c-ӬX/)ld,?_~UtSN9e-<7ey?84W"=,C(,~tfUtgwuuIl.(oymv' ԫϦj͒B}sm֔Qf1~IŪ\|$FY>ydڨݕzPE>l}Gy$c+RmYWWOӃ:hy4@v4+Sģj6Jrk65*׾*V[mu饗FQt'e\e)jHrPN8aҤI˖-;cZyj:7M]:Y˫'jHSb=RU(nkDSӎwP9=S?4Խ},QF򗿼Kʎbys3 6$g, o} * LG l"]n >~t7\.m£{-,ȑ#6/ˏ>h +AYl55ֲ8_US6 mbXwއOz\M=wN6mA~6vvj4=X:,L t|9KYwuLj¸ȿ%ģz~%u 2 U ]ZM{7$nhSRՊn7|{;wnN5W@FQQ/M Qml5HH*;ASMX6 Oz\4'Xe_iv[+)?)S~X@uJlc2o'3'wϥk"4֩ R,lDSqqP[j GӁΚ5k[hQjz{{_~e ̋E>!@\Q6O|b-x衇vuׅ mC񫡓/ -HN;k\㟥TT7x$`r:yُ>A 6衇g}^z饽oε[oʕ?y3F,lmAMݻ0*Q*8meTqŒ⽗1MsLun[5{WP\hY̵i~vب_/\mzx5[Ge͙ߣ,g>Bn*x~GQ@C{.ϟz4We5y793ژx8g_s& QZ1H˨k+)f t|}[3GGY㎴GeuJ</Q}L#GO~q+}2v&*r*J*>< 8?iww^{-ԩ(=RT /լĸ~DeL $!R͞w;M}ʸ6KTS(yƔ|X;FI8!\ӨuP2*kِIa [_|Ń j=]?ɿc!Mn2ʒkc8m]ʞD#yX6& :g}:(Mrxajj棧kbuWU%zufX}1zxs+虓O>'8Ã\ҁ}yc~?Ug?i m f-y|֧|*дt.`AYQ9 j1F[?W\qŴi=˗|-/\Q[q XnZE%KgĄLՊG4kS18%|X\Yя:TG#q=crtl-3f 7;k^xH6lFQoyhj):ֵ@HT1!UNQ5]fj6eM̩}2dNGA 2Y@_TvWd*"?[o]w7MYT犥y$ KI1U9ժ8 jU1frIp*[Cm֩6N1z#TǪB{D )*v'BR /-JB}u\[)}ao;yo;h(x衇5f̘Ç^|_]]]]]]F#c6˯X'U5b-N,dyi&mOl ˲cNe~i\㏟={vN -YDut9䐽{=;w>}l͘1cn~b믿뮳:C2dFBΥF+H:WJ$*S+Te4k 5ޗ.Lƚ5oA.lӱbBvmh} ^o}){o=؆n(s=.]l6{{{G!gnmooo\ǰaä廻[oT~BΙU)Y,*.5<\S'>񉮮7a O'x7,m˜ڽkU1WJ IDAT.R ̋ۦdj&lV~#}aoy }"K,l'M裏n7tĉT8nܸo„ ",LwOSkkC,Gcqb=R5ڥXy,tsyWv?FMG%Qߞ#R*X;zK.Ї>VLa &ˤ[bcuL/TS~Ņ]9 I_O[-?ضHU2V]j^쨈>s6tЛo+_\p)<{ުf M06;A5ȗ^Ĝ @n_ƙ%f(9j 25RS?֬Y{GL://Ռe L?|ٵ!U\XnrU|Զ#;vQ$/6(ct]I-GG,waqwRKi0عqh3MQS6r[ b>#뮻z뭷?842VoK8I7lNZ@s**1H=vErTcSGv{xL'c~(Y5sW~m6A ww}?+WKZGo}K, /,\<8H0A?zjL5T{bSe~s}Yy*%fl&wzT[cjݣf+K\tB ի ?oτKJϛ7O-l4ӦM1cX'zz-P09 "`eƌ?n֍6u?O.Yl?oAG>CZ)o%KYFu կ~u'F0Ke{WMYH~SQ'f===FZdɻ;sv(>+W^zذaxOfoƫoO>K.)>Z@~Z=`ֿ'x>{?4iR1 4hРAUZx饗~s?.@9x^,+F7oԩS/_~衇~NZJNiPУЦb]zWgBg IQQ@!c/;L4YECdZV2bsZ.of*U-7 cjGrs#dŮ^z9Hcƌ7o&lRv oM^[?f*-0Ƭ0]˞Է^Ab3ό7nѢEeRnǤyd)X6=)&F3V85 όZ*x( s9\}O?qΝjDvҥW^Y!^r'! 8%)0q/מla? c@';e]~ Hz5E_޾f#uᚽDKԻ'#GA t!C̙3'l"{omg.74ߏ]rJl4g8$lRA ?d@>|x2]xq gϞ}I'[SL$4~Ez Nu-9^[T%2 ]`#;w/zGuԻn\p¸Xl̙X{N3u; (1bDDv'ttE]t}?CΟ?_]ZOOϚ5k\% 6C HdUƏ?jԨ 0֒Q}K_ԧ>53FZo1c,),?T^:-Acsڤ08cIo=sj{l/~ꩧvy_~*k%I}W5 T_@3 δ^{M0Ah :NZxq=UN4V m}Ƨ,BƘk׆&6M [Jje8]s5[+_u߇o+,>ѰA,}-oG^{7޶v;/ oX1QgasR"eFVpRP`umR}8~UW~ uJ7O}ZNz=bʻ4mF[Ն6G_/¾m{l\Yq۬91Bb5ibd3b=_:s hiM T*DǸyS!1qݜbJՍv1i4T69w9dkVY'ow%?3?8\D<|PmIkdKFjT45']Uxm9jhH.#9@cg||Oa[rYS,Kmdgq;Fƀp; k-YǬ&W}{4.Ov]ȴ2blEz ib{Rۖjھ`C?=:jVtSfM>nQӲ4GߨS9NckFژasx(_Œ {qf)2 UfTiKڴnn2Ro 9 hSҼ}cS,1ǹ+Đ:qRMve/WFaZcYwQbkDvwUB߮"Ͷib%w<bŒޭ&d̳/ {ffu tV ~piMN@,Rb;ub57mS/([goײQvާ*" kCYRvmHg(hQ83~K F~{9}D 'NPuJLؠ:ՁKImۦʲ*Zv5åҳѦ]c]R]t3Yzo MKSM-f}ҡr5_%N}}Ls,)W* m2rm5“~BxZȨ,)U]5޲\v3K5 eUs#̌GO5JaZ(K> f|zf_YU["tf" 5L<˶F)Nv]+?ݕ#fwCUQ편Цi3k^I A_gi:̌UA%y1&צ7ġVm4InҦ3خ& kxK.,om6*3Iz]oթw'jZU7J=ޭz2U )*):{wBjz bL=JONM%ⷭtx4j*TRXbkt~ͶCrrj]Cҗdy0o_?1Y}mY*;3W^yW_qU˗/h4=zX~˖-ś <@["ޯ؏~O?}w/)~~w_i 8yu @O<;h-:tN;l6{lͤ?rȸX3F ,n;餓^}_ƌSL>޾=Gm]-[v1|c{W'N㏫RNӷ?O BeI12詧5kСCgΜy}DɧeI4l*,̵AOԬD(w*}@W)cRϳS=L`2تV%WU;FMNzj/WԸGr)(,㤲Wb,@'Ҽ`"65NAUos&%6?}ZM'?&稤XEYR;FlJ߲? 8Fglz&jVYA檵z~5g9e qFϓO>[wuۢbJ$^7:odoҷI͍Φ{MKgD*rUz|_T&1c7J2B4/vMY5nI\:ʲf͚o}[Y#!d{~^,Zq 6J*K&O.,QYrZ7Ⱦ|Y*־^Ƶۭ@lX,W7x;|+/;`}r+LWy_kT17Mo_,H6n$_#RUβGb GTƾ{c_#q:#WJWT I%}~gH/#1Y,7~s=wy >X|Xoh kdD9ѐYdᔖelr[2ۆ_b_eż~kj-dtuu} UիWN7|_~C hk֬y*Y)F3QIE 4k֬96| k?w]ZGYȓJdPl8RN*XJ?3gK/jbm]`ԨQ bk֬RɏN@ @bʕg}e]v=L81V(ڝwmw_bEK/s\E 1OoѢE9lٲ;cɩ tҧ~R # \pO<1f̘ bxo7|󜚨숬]z $q:^9Xg}cy衇Ʃ;Z ;)<ը+jh"I=o`zꩇzhG?kCȮ!AeAĨB:Ō3($W\qEww3 w0Æ 6m w[RGrc`zUjMik55KhT뷳6zff苭' l?RUE}ǹmrw>>|~b|gΜYL[RX&1X1*Ն1ͲVUrqJߤc?bam5aǷ0lذ|;1c駟ޙ׌FB2X4ǺͦGbjk_ kӮZQ})#>cҬ+-=R%,1xcq_NG?KތG_siu=E^Pbrvm D֞4KїYU%Fr Lsr4լϊ,2-c.Gr6:( Y,Yf%NQWV+1ZU?践# c Q~UªSEþf Y,С>~2dȭZ@[@rB tٞYf^z7ϵ!?Ynl Y,ђs{k/vmwuZ}P ~wG)]uatMG__9pFQtqTJ+K/bZX#L6mĈlV'N')^{?eʔHPoX5@s-Rf[2Heɋhkj2ײҮSD8VU].⺇ׄ IDAT뮋 N=tf&"ةA@fĠA>򑏔 &2͋M>Ʋ|$LT`Sjؐf[U%?,ƻ1I+l}5ZnX5Fcڴi ,8p`NMS bko44_i$~.kl(6 ƲQh_ ;V/KxcV~]axlvZL6mʔ)SN-;@q2(7U5Ԝ,T%2qGmqS }`2V@Cv OVK.=̙3x`+@Gɔw-hNQm;=MُڋK #mm#g}~gGuneG(NOP7#\!hģQVW'Ҭ̙s/]tv뮻W$yUJGz"ܱ T$N?ҥK?яΟ?:Py9UFЯѰzȲ/uBGTU%? Ͳ/0\mugO?[o(jO|#G׾UO'Yl*.6q+}ye\CJ6f< ձrz/>Tm7'gl$l-\p]v9ꫯfD:m0k$@*[#$}Cҿk6c-[,SU:=rU -V5khРAyTN ;qrjժn!Wg ^qwyU Vb쳬*dE\n ŽךNq SOn} Qjc񿥫ebUtŋϞ={G}w%˖-;蠃f̘zW^y%`x- 'tW 0k֬C9dȑ~5>~7nc=Fhw,x|KQ蟆U!Vt|j=P<~5F]Puk26Uw_J,ِ=U*rMZT5u:!U9#8oyva;p]w  cb_kS]|N4UE9d4yIfCTa٨SƘH{:w-Um*R1rJ#H#"J6iT*Ʀ?C_՜Tx'O~gPuZOʨ쌂|𩧞`  ZN'6LLr(7k6Seҥ?_78Ld:Mj-L~-J(Ts3X_n嫦XT[ouM7EQtfz?qj KhJI6pm5 e˖{ʎc_i=hM'> %XJqqy雉 %7IHE"CJ5-RE.- R ñ/?x#}I vQGuQeG:󓶒9gjW%U,`,#GT;ɯǫD>gLfjSUb=I=5@rJCf̙<о~jRħ T%*JZOiT[RXqzC W_}uŊeGlŊ=\QI~8Y4ԏ?裏:YfYn}sΙ9sg>\cEoo}wX,%cIaQcfk6[neٱ"E-ņ'?o&L(;@'"khԩ]]JbŊoh{yY,gz=}oٱqw}k֬);߿3XkM'8J+WuQ˗/Цs9'O\v | 4h\sYgUv8'@'={IVZ_bbP7tQGl6O7޸po^??bQ5d@={;曋k&.c=&LXb/䒲`^,С,Yru}c[>nAZd>hРK/n+;e7pÝw95kDQh4>.;4U4qnaهrHٱ}0,sAEǎۚfnbβjժSzZv8x"fw}w1k֬5'X&^|;;|V^Eќ9sƏ_v\qxַ.\o[^nrPc믿@йb.\pu?8iҤ}CnaA{?? 6|0h _ÔP+V ,fm~_1Љb[h]wu]ww}eQEK.o{|s]guʎ,'|mGy7~< @E,^xdka~ Tn`#կ~裏f%yy3f͚ / /,;T6l3wQFhȐ!s̙0a£>:nܸs%(xꩧƍx| >|Μ9;O?=n8Śm/rQ5\SO?~ܹoq@ZlYb>v'7n#|e%Idt,,Y,TȈ#HdtT"kXYO?رc-YX#F̙3D@>|Jd-GdyFTȑ#̙3~]ZϟJW}SO/rWnX#GoO>9~xFd^{5q2䓟dXx5kU1!{~@YZlkDv#7fwMx~I {C\+Vn^. C\wYg) ^gޞ{{\tEW6VX,TZ<"?q? hWdy6 Funirmd }GYI1LJ#x]iǓMX,Tů~UbwiW^yظVnWplKDbyZ椫,{N֧I1Qq@%cǎU6lا?FhѢFB$Jh#㭒ˋåY$aŮvZ HHJ֬?4k*;lQdE˝U厈UMwH) #yt=.0 yz{fRK=U§v*`zڮ>>\p< k[|#x$_Wθ@bUᩊI~aLcK9`s.vͦ*8u {lj}I;CGUd!=PJ])K`bYO2nX0}o4bI{PߙƪJUUnߖeU6˝ۗT+;kyPB~,6TkT|eTB5z~MF}0RRQKCҷ+]e^ ѥ:Ӿ `s.YoAN, Z<)dQS7/Y޼TiNIiڻ}ǪAx-1Sy1`Id MS䮽|.QB1ޡnG5۝!JE~K6ioșigߝ$!c fgI}/AZ -T#_[|*>HU" S?ҥDȼLYBjj#Ms%sb7*{ '<'e}yYFEF\?)WWOfq:KTbh#rD@vjU5cՐEhVy%@5,^,/~TK Q.cwJFSņ4ZciHI#q)Z?my|ya4kȩS=%YZi1xH†* Nybyb:iQ,;e٨w{Hָ֜\S{ jPe65gy![ݕ* `W xdY.cu槂f_E6m/lHUCxFv,y%w9r-;a)K 2by 5GjѦi.ǯT$.D\z|mgv'&`FA& ;9X{נj4YYl΍:*I)y7괡 <[zM.w8r^0BuW# &>얦@|G "k^N&ƜU1lcNFK6osJey^ I_D~dH{(ԤUc7Quz).ǯ PЃeWWW`F%5n/=ⵑńiߖ' ?^GkX>ڌT8>el.HZ^G6X"mx:y^]E:jg[ootG/ޝrU,6eLɒZD׶**h] 5KHz\яŊ:%U)zz`/.RE5gZ6]sn`uɦ!,D߇Ғ#Y+q:ݛ읟Ք 3 J`<0fli r +{wzjOZ)VVs4ipndUД Xk2Y7h!/SBM˚J~eá95"T./.@ئņT;RgUr3xko^_4k(R.뜱BiUHWy׮eC~sV ͝³lfٷ_1[yuUw:Þ~/b0 f/iNR+u<"sJdQr#,_jT?7D7i$%mjŻEs>)따,ע}Ҷ<r:zn4cFAV8@?i1G,/YQf[csAM%+aM=vS"Yky]SwYՄS[wn8:r;Gm,6{}j%ƿ7a\ofMskoyPS²Ecr=7#,6 F ISI]jcm#i)qU+XgEx*vMŌ69c!<T!x`,֟_b0UT0}Gv٪Ub/Yl3 rRԬk;@@d?ȯdҭT'(JHT -6O¦+1ͶJ"մȥ4c%Wh ٮN)#q&tΚ}IVyi&=c3NUiE7u56jm9?bSEőoA_q+UTh263/C.wPZIhmB6ZXl>m] 04;NVռ`U}Ƒi s巛)~g/)it}5#-S|Ox /i*C${yo/JއMѯUmJQP>׬4(8A 26Yֵ ULYlie_8L:/fCU **cYօۧYK]; cOp?@Ō4MH/)NSSm&)gHr2ۗߜ 5F]O!'daE}/T5gUY]HD_i~w,wG{$:X&K_lK 3 @bMjPQP]_q-Se{K=&<3<(c{3R vk@:W^yeѣG~饗r2V,PXYn\*j6|fk]ERdVuW?HUxGZ(>;ɲ+J, ;,M2Z1x,ݢ"Mhʤz۩4ROJ>4{]gJ^%ov'kJؐ_W8E+nKE IDATDUՁgMCҚ3)" )WxjfcT2by 5mNȩiM5LiHZs%=+TklfM:"G/y7Z] Ug7Ž,PDMfOdQv/ kr(3 &7wfK N,4W}ف6m,67cSlE4QyMUh:K+ Րwj4x?`D8Q?QYnPk"t*͆6]tF5j6=kuiXPsRVz1/6+kKhZK-2R;Ԋl؄k+JGch?dh?d9N/կߝL196"U3}|Y #bsTJW:!E.GdCTUHF+9J"@E.Ֆ}v̓TnZ;55rt,`,'ڊiQ/.RX寕)_i  r Yl~3lYXf)`FA\jf$LÍaS.iC1S_#-B+iXFnrmr}7żجQJSƲZrc~[e&3bŶ.@!mW5X fV FG/x U[p~,1/֟%D-nˉ@NjtQW|{45pm3'>oX[TM&- /ٖM=ɝ>BM {)q_Qc-Vuߡ@TNkKdYkP_T`kr¸T=N$nNKiԩE.U-ON#Q[ r#鐕Pj[P:x`2vk/ykُ+B-@%pj&~,5k`v]),RP: hJD[VlrdTj(y)ƙ~ULy^ʢ1-ztCQ~K5W*)1JC @bK^R?9|t$D9nnBjBRIsI:H8UPN1fcsN95M㧖ɵ 束1~pEe$I 7nrDf!;`'ykI䲤sI_]y^^I>O>?YBIENDB`libbonoboui-2.24.5/doc/api/html/libbonoboui-bonobo-ui-engine.html0000664000076400007640000036571611546335132021674 00000000000000 BonoboUIEngine

BonoboUIEngine

BonoboUIEngine — The guts of the UI handler

Synopsis

                    BonoboUIEngine;
void                bonobo_ui_engine_deregister_dead_components
                                                        (BonoboUIEngine *engine);
void                bonobo_ui_engine_deregister_component_by_ref
                                                        (BonoboUIEngine *engine,
                                                         Bonobo_Unknown ref);
void                bonobo_ui_engine_deregister_component
                                                        (BonoboUIEngine *engine,
                                                         const char *name);
void                bonobo_ui_engine_register_component (BonoboUIEngine *engine,
                                                         const char *name,
                                                         Bonobo_Unknown component);
GList *             bonobo_ui_engine_get_component_names
                                                        (BonoboUIEngine *engine);
Bonobo_Unknown      bonobo_ui_engine_get_component      (BonoboUIEngine *engine,
                                                         const char *name);
void                bonobo_ui_engine_config_set_path    (BonoboUIEngine *engine,
                                                         const char *path);
const char *        bonobo_ui_engine_config_get_path    (BonoboUIEngine *engine);
void                bonobo_ui_engine_set_ui_container   (BonoboUIEngine *engine,
                                                         BonoboUIContainer *ui_container);
BonoboUIContainer * bonobo_ui_engine_get_ui_container   (BonoboUIEngine *engine);
void                bonobo_ui_engine_freeze             (BonoboUIEngine *engine);
void                bonobo_ui_engine_thaw               (BonoboUIEngine *engine);
void                bonobo_ui_engine_update             (BonoboUIEngine *engine);
enum                BonoboUIError;
                    BonoboUIEnginePrivate;
                    BonoboUIEngineClass;
BonoboUIEngine *    bonobo_ui_engine_construct          (BonoboUIEngine *engine,
                                                         GObject *view);
BonoboUIEngine *    bonobo_ui_engine_new                (GObject *view);
GObject *           bonobo_ui_engine_get_view           (BonoboUIEngine *engine);
void                bonobo_ui_engine_add_sync           (BonoboUIEngine *engine,
                                                         BonoboUISync *sync);
void                bonobo_ui_engine_remove_sync        (BonoboUIEngine *engine,
                                                         BonoboUISync *sync);
GSList *            bonobo_ui_engine_get_syncs          (BonoboUIEngine *engine);
void                bonobo_ui_engine_update_node        (BonoboUIEngine *engine,
                                                         BonoboUISync *sync,
                                                         BonoboUINode *node);
void                bonobo_ui_engine_queue_update       (BonoboUIEngine *engine,
                                                         GtkWidget *widget,
                                                         BonoboUINode *node,
                                                         BonoboUINode *cmd_node);
GtkWidget *         bonobo_ui_engine_build_control      (BonoboUIEngine *engine,
                                                         BonoboUINode *node);
BonoboUINode *      bonobo_ui_engine_widget_get_node    (GtkWidget *widget);
void                bonobo_ui_engine_widget_set_node    (BonoboUIEngine *engine,
                                                         GtkWidget *widget,
                                                         BonoboUINode *node);
BonoboUIError       bonobo_ui_engine_xml_set_prop       (BonoboUIEngine *engine,
                                                         const char *path,
                                                         const char *property,
                                                         const char *value,
                                                         const char *component);
CORBA_char *        bonobo_ui_engine_xml_get_prop       (BonoboUIEngine *engine,
                                                         const char *path,
                                                         const char *prop,
                                                         gboolean *invalid_path);
void                bonobo_ui_engine_prune_widget_info  (BonoboUIEngine *engine,
                                                         BonoboUINode *node,
                                                         gboolean save_custom);
BonoboUINode *      bonobo_ui_engine_get_path           (BonoboUIEngine *engine,
                                                         const char *path);
void                bonobo_ui_engine_dirty_tree         (BonoboUIEngine *engine,
                                                         BonoboUINode *node);
void                bonobo_ui_engine_clean_tree         (BonoboUIEngine *engine,
                                                         BonoboUINode *node);
void                bonobo_ui_engine_dump               (BonoboUIEngine *engine,
                                                         FILE *out,
                                                         const char *msg);
CORBA_Object        bonobo_ui_engine_node_get_object    (BonoboUIEngine *engine,
                                                         BonoboUINode *node);
gboolean            bonobo_ui_engine_node_is_dirty      (BonoboUIEngine *engine,
                                                         BonoboUINode *node);
GtkWidget *         bonobo_ui_engine_node_get_widget    (BonoboUIEngine *engine,
                                                         BonoboUINode *node);
const char *        bonobo_ui_engine_node_get_id        (BonoboUIEngine *engine,
                                                         BonoboUINode *node);
BonoboUINode *      bonobo_ui_engine_get_cmd_node       (BonoboUIEngine *engine,
                                                         BonoboUINode *from_node);
void                bonobo_ui_engine_node_set_dirty     (BonoboUIEngine *engine,
                                                         BonoboUINode *node,
                                                         gboolean dirty);
void                bonobo_ui_engine_stamp_custom       (BonoboUIEngine *engine,
                                                         BonoboUINode *node);
void                bonobo_ui_engine_widget_set         (BonoboUIEngine *engine,
                                                         const char *path,
                                                         GtkWidget *widget);
void                bonobo_ui_engine_stamp_root         (BonoboUIEngine *engine,
                                                         BonoboUINode *node,
                                                         GtkWidget *widget);
void                bonobo_ui_engine_add_hint           (BonoboUIEngine *engine,
                                                         const char *str);
void                bonobo_ui_engine_remove_hint        (BonoboUIEngine *engine);
void                bonobo_ui_engine_emit_verb_on       (BonoboUIEngine *engine,
                                                         BonoboUINode *node);
void                bonobo_ui_engine_emit_event_on      (BonoboUIEngine *engine,
                                                         BonoboUINode *node,
                                                         const char *state);
void                bonobo_ui_engine_emit_verb_on_w     (BonoboUIEngine *engine,
                                                         GtkWidget *widget);
void                bonobo_ui_engine_emit_event_on_w    (BonoboUIEngine *engine,
                                                         GtkWidget *widget,
                                                         const char *state);
char *              bonobo_ui_engine_get_attr           (BonoboUINode *node,
                                                         BonoboUINode *cmd_node,
                                                         const char *attr);
void                bonobo_ui_engine_widget_attach_node (GtkWidget *widget,
                                                         BonoboUINode *node);
CORBA_char *        bonobo_ui_engine_xml_get            (BonoboUIEngine *engine,
                                                         const char *path,
                                                         gboolean node_only);
gboolean            bonobo_ui_engine_xml_node_exists    (BonoboUIEngine *engine,
                                                         const char *path);
BonoboUIError       bonobo_ui_engine_xml_merge_tree     (BonoboUIEngine *engine,
                                                         const char *path,
                                                         BonoboUINode *tree,
                                                         const char *component);
BonoboUIError       bonobo_ui_engine_xml_rm             (BonoboUIEngine *engine,
                                                         const char *path,
                                                         const char *by_component);
BonoboUIError       bonobo_ui_engine_object_set         (BonoboUIEngine *engine,
                                                         const char *path,
                                                         Bonobo_Unknown object,
                                                         CORBA_Environment *ev);
BonoboUIError       bonobo_ui_engine_object_get         (BonoboUIEngine *engine,
                                                         const char *path,
                                                         Bonobo_Unknown *object,
                                                         CORBA_Environment *ev);
void                bonobo_ui_engine_exec_verb          (BonoboUIEngine *engine,
                                                         const CORBA_char *cname,
                                                         CORBA_Environment *ev);
void                bonobo_ui_engine_ui_event           (BonoboUIEngine *engine,
                                                         const CORBA_char *id,
                                                         const Bonobo_UIComponent_EventType type,
                                                         const CORBA_char *state,
                                                         CORBA_Environment *ev);

Object Hierarchy

  GObject
   +----BonoboUIEngine

Description

The Bonobo UI code as exposed through the BonoboWindow, BonoboUIComponent and BonoboUIContainer API's use the BonoboUIEngine. The Engine effectively maintains a BonoboUIXml tree internaly, and a list of BonoboUISync synchronizers that, when the tree changes are used to re-sync the associated widgets with the XML model.

The Engine can be tweaked by getting its pointer from an associated BonoboWindow eg. this can be useful for setting the configuration path. To allow a BonoboWindow to be configurable you need to do:

Example 7. How to make your UI user configurable

1
2
3
bonobo_ui_engine_config_set_path (
    bonobo_window_get_ui_engine (win),
    "/my-application-name/UIConfig/kvps");


where "UIConfig/kvps" is some convenient path into your gnome_config file.

Key value pairs (kvps) are stored in this, mangled into a comma delimited string and these are used to clobber the XML on merges, eg.

Example 8. User configuration format

1
2
[UIConfig]
kvps=/Toolbar:look:both


inside your ~/.gnome/my-application-name file, will ensure that whenever the item with path '/Toolbar' is modified the 'look="both"' attribute will be stamped onto it, effecively forcing a certain look.

Details

BonoboUIEngine

typedef struct _BonoboUIEngine BonoboUIEngine;


bonobo_ui_engine_deregister_dead_components ()

void                bonobo_ui_engine_deregister_dead_components
                                                        (BonoboUIEngine *engine);

Detect any components that have died and deregister them - unmerging their UI elements.

engine :

the engine

bonobo_ui_engine_deregister_component_by_ref ()

void                bonobo_ui_engine_deregister_component_by_ref
                                                        (BonoboUIEngine *engine,
                                                         Bonobo_Unknown ref);

Deregisters component with reference ref from engine.

engine :

the engine

ref :

the ref.

bonobo_ui_engine_deregister_component ()

void                bonobo_ui_engine_deregister_component
                                                        (BonoboUIEngine *engine,
                                                         const char *name);

Deregisters component of name from engine.

engine :

the engine

name :

the component name

bonobo_ui_engine_register_component ()

void                bonobo_ui_engine_register_component (BonoboUIEngine *engine,
                                                         const char *name,
                                                         Bonobo_Unknown component);

Registers component with engine by name.

engine :

the engine

name :

a name to associate a component with

component :

the component

bonobo_ui_engine_get_component_names ()

GList *             bonobo_ui_engine_get_component_names
                                                        (BonoboUIEngine *engine);

engine :

the engine

Returns :

the names of all registered components

bonobo_ui_engine_get_component ()

Bonobo_Unknown      bonobo_ui_engine_get_component      (BonoboUIEngine *engine,
                                                         const char *name);

engine :

the engine

name :

the name of the component to fetch

Returns :

the component with name name

bonobo_ui_engine_config_set_path ()

void                bonobo_ui_engine_config_set_path    (BonoboUIEngine *engine,
                                                         const char *path);

engine :

path :


bonobo_ui_engine_config_get_path ()

const char *        bonobo_ui_engine_config_get_path    (BonoboUIEngine *engine);

engine :

Returns :


bonobo_ui_engine_set_ui_container ()

void                bonobo_ui_engine_set_ui_container   (BonoboUIEngine *engine,
                                                         BonoboUIContainer *ui_container);

Associates a given UI Container with this BonoboUIEngine.

engine :

the engine

ui_container :

a UI Container bonobo object.

bonobo_ui_engine_get_ui_container ()

BonoboUIContainer * bonobo_ui_engine_get_ui_container   (BonoboUIEngine *engine);

Fetches the associated UI Container

engine :

the engine

Returns :

the associated UI container.

bonobo_ui_engine_freeze ()

void                bonobo_ui_engine_freeze             (BonoboUIEngine *engine);

Warning

bonobo_ui_engine_freeze is deprecated and should not be used in newly-written code.

This increments the freeze count on the tree, while this count > 0 no syncronization between the internal XML model and the widget views occurs. This means that many simple merges can be glupped together with little performance impact and overhead.

engine :

the engine

bonobo_ui_engine_thaw ()

void                bonobo_ui_engine_thaw               (BonoboUIEngine *engine);

Warning

bonobo_ui_engine_thaw is deprecated and should not be used in newly-written code.

This decrements the freeze count and if it is 0 causes the UI widgets to be re-synched with the XML model, see also bonobo_ui_engine_freeze

engine :

the engine

bonobo_ui_engine_update ()

void                bonobo_ui_engine_update             (BonoboUIEngine *engine);

Warning

bonobo_ui_engine_update is deprecated and should not be used in newly-written code.

This function is called to update the entire UI model synchronizing any changes in it with the widget tree where neccessary

engine :

the engine.

enum BonoboUIError

typedef enum {
	BONOBO_UI_ERROR_OK = 0,
	BONOBO_UI_ERROR_BAD_PARAM,
	BONOBO_UI_ERROR_INVALID_PATH,
	BONOBO_UI_ERROR_INVALID_XML
} BonoboUIError;


BonoboUIEnginePrivate

typedef struct _BonoboUIEnginePrivate BonoboUIEnginePrivate;


BonoboUIEngineClass

typedef struct {
	GObjectClass parent_class;

	/* Signals */
	void (*add_hint)      (BonoboUIEngine *engine,
			       const char     *str);
	void (*remove_hint)   (BonoboUIEngine *engine);

	void (*emit_verb_on)  (BonoboUIEngine *engine,
			       BonoboUINode   *node);

	void (*emit_event_on) (BonoboUIEngine *engine,
			       BonoboUINode   *node,
			       const char     *state);

	void (*destroy)       (BonoboUIEngine *engine);
} BonoboUIEngineClass;


bonobo_ui_engine_construct ()

BonoboUIEngine *    bonobo_ui_engine_construct          (BonoboUIEngine *engine,
                                                         GObject *view);

Construct a new bonobo_ui_engine

engine :

the engine.

view :

the view [ often a BonoboWindow ]

Returns :

the constructed engine.

bonobo_ui_engine_new ()

BonoboUIEngine *    bonobo_ui_engine_new                (GObject *view);

Create a new BonoboUIEngine structure

view :

Returns :

the new UI Engine.

bonobo_ui_engine_get_view ()

GObject *           bonobo_ui_engine_get_view           (BonoboUIEngine *engine);

This returns the associated view, often a BonoboWindow

engine :

the engine

Returns :

the view widget.

bonobo_ui_engine_add_sync ()

void                bonobo_ui_engine_add_sync           (BonoboUIEngine *engine,
                                                         BonoboUISync *sync);

Add a BonoboUISync synchronizer to the engine

engine :

the enginer

sync :

the synchronizer

bonobo_ui_engine_remove_sync ()

void                bonobo_ui_engine_remove_sync        (BonoboUIEngine *engine,
                                                         BonoboUISync *sync);

Remove a specified BonoboUISync synchronizer from the engine

engine :

the engine

sync :

the sync

bonobo_ui_engine_get_syncs ()

GSList *            bonobo_ui_engine_get_syncs          (BonoboUIEngine *engine);

Retrieve a list of available synchronizers.

engine :

the engine

Returns :

a GSList of BonoboUISync s

bonobo_ui_engine_update_node ()

void                bonobo_ui_engine_update_node        (BonoboUIEngine *engine,
                                                         BonoboUISync *sync,
                                                         BonoboUINode *node);

This function is used to write recursive synchronizers and is intended only for internal / privilaged use.

By the time this returns, due to re-enterancy, node points at undefined memory.

engine :

the engine

sync :

node :

the node to start updating.

bonobo_ui_engine_queue_update ()

void                bonobo_ui_engine_queue_update       (BonoboUIEngine *engine,
                                                         GtkWidget *widget,
                                                         BonoboUINode *node,
                                                         BonoboUINode *cmd_node);

This function is used to queue a state update on widget, essentialy transfering any state from the XML model into the widget view. This is queued to avoid re-enterancy problems.

engine :

the engine

widget :

the widget to update later

node :

the node

cmd_node :

the associated command's node

bonobo_ui_engine_build_control ()

GtkWidget *         bonobo_ui_engine_build_control      (BonoboUIEngine *engine,
                                                         BonoboUINode *node);

A helper function for synchronizers, this creates a control if possible from the node's associated object, stamps the node as containing a control and sets its widget.

engine :

the engine

node :

the control node.

Returns :

a Control's GtkWidget.

bonobo_ui_engine_widget_get_node ()

BonoboUINode *      bonobo_ui_engine_widget_get_node    (GtkWidget *widget);

widget :

the widget

Returns :

the BonoboUINode associated with this widget

bonobo_ui_engine_widget_set_node ()

void                bonobo_ui_engine_widget_set_node    (BonoboUIEngine *engine,
                                                         GtkWidget *widget,
                                                         BonoboUINode *node);

Used internaly to associate a widget with a node, some synchronisers need to be able to execute code on widget creation.

engine :

the engine

widget :

the widget

node :

the node

bonobo_ui_engine_xml_set_prop ()

BonoboUIError       bonobo_ui_engine_xml_set_prop       (BonoboUIEngine *engine,
                                                         const char *path,
                                                         const char *property,
                                                         const char *value,
                                                         const char *component);

This function sets the property of a node in the internal tree representation at path in engine.

engine :

the engine

path :

the path into the tree

property :

The property to set

value :

The new value of the property

component :

the component ID associated with the nodes.

Returns :

flag on error

bonobo_ui_engine_xml_get_prop ()

CORBA_char *        bonobo_ui_engine_xml_get_prop       (BonoboUIEngine *engine,
                                                         const char *path,
                                                         const char *prop,
                                                         gboolean *invalid_path);

This function fetches the property prop at node at path in the internal structure.

engine :

the engine

path :

the path into the tree

prop :

The property

invalid_path :

Returns :

a CORBA allocated string

bonobo_ui_engine_prune_widget_info ()

void                bonobo_ui_engine_prune_widget_info  (BonoboUIEngine *engine,
                                                         BonoboUINode *node,
                                                         gboolean save_custom);

This function destroys any widgets associated with node and all its children, if save_custom, any widget that is a custom widget ( such as a control ) will be preserved. All widgets flagged ROOT are preserved always.

engine :

the engine

node :

the node

save_custom :

whether to save custom widgets

bonobo_ui_engine_get_path ()

BonoboUINode *      bonobo_ui_engine_get_path           (BonoboUIEngine *engine,
                                                         const char *path);

This routine gets a node from the internal XML tree pointed at by path

engine :

the engine.

path :

the path into the tree

Returns :

the node.

bonobo_ui_engine_dirty_tree ()

void                bonobo_ui_engine_dirty_tree         (BonoboUIEngine *engine,
                                                         BonoboUINode *node);

Mark all the node's children as being dirty and needing a re-synch with their widget views.

engine :

the engine

node :

the node

bonobo_ui_engine_clean_tree ()

void                bonobo_ui_engine_clean_tree         (BonoboUIEngine *engine,
                                                         BonoboUINode *node);

This cleans the tree, marking the node and its children as not needing a re-synch with their widget views.

engine :

the engine

node :

the node

bonobo_ui_engine_dump ()

void                bonobo_ui_engine_dump               (BonoboUIEngine *engine,
                                                         FILE *out,
                                                         const char *msg);

This is a debugging function mostly for internal and testing use, it dumps the XML tree, including the associated, and overridden nodes in a wierd hackish format to the out stream with the helpful msg prepended.

engine :

the engine

out :

the FILE stream to dump to

msg :

user visible message

bonobo_ui_engine_node_get_object ()

CORBA_Object        bonobo_ui_engine_node_get_object    (BonoboUIEngine *engine,
                                                         BonoboUINode *node);

engine :

the engine

node :

the node

Returns :

the CORBA_Object associated with a node

bonobo_ui_engine_node_is_dirty ()

gboolean            bonobo_ui_engine_node_is_dirty      (BonoboUIEngine *engine,
                                                         BonoboUINode *node);

engine :

the engine

node :

the node

Returns :

whether the node is marked dirty

bonobo_ui_engine_node_get_widget ()

GtkWidget *         bonobo_ui_engine_node_get_widget    (BonoboUIEngine *engine,
                                                         BonoboUINode *node);

Gets the widget associated with node

engine :

the engine

node :

the node

Returns :

the widget

bonobo_ui_engine_node_get_id ()

const char *        bonobo_ui_engine_node_get_id        (BonoboUIEngine *engine,
                                                         BonoboUINode *node);

Each component has an associated textual id or name - see bonobo_ui_engine_register_component

engine :

the engine

node :

the node

Returns :

the component id associated with the node

bonobo_ui_engine_get_cmd_node ()

BonoboUINode *      bonobo_ui_engine_get_cmd_node       (BonoboUIEngine *engine,
                                                         BonoboUINode *from_node);

This function seeks the command node associated with from_node in engine 's internal tree.

engine :

the engine

from_node :

the node

Returns :

the command node or NULL

bonobo_ui_engine_node_set_dirty ()

void                bonobo_ui_engine_node_set_dirty     (BonoboUIEngine *engine,
                                                         BonoboUINode *node,
                                                         gboolean dirty);

Set node s dirty bit to dirty.

engine :

the engine

node :

the node

dirty :

whether the node should be dirty.

bonobo_ui_engine_stamp_custom ()

void                bonobo_ui_engine_stamp_custom       (BonoboUIEngine *engine,
                                                         BonoboUINode *node);

Marks a node as containing a custom widget.

engine :

the engine

node :

the node

bonobo_ui_engine_widget_set ()

void                bonobo_ui_engine_widget_set         (BonoboUIEngine *engine,
                                                         const char *path,
                                                         GtkWidget *widget);

engine :

path :

widget :


bonobo_ui_engine_stamp_root ()

void                bonobo_ui_engine_stamp_root         (BonoboUIEngine *engine,
                                                         BonoboUINode *node,
                                                         GtkWidget *widget);

This stamps node with widget which is marked as being a ROOT node, so the engine will never destroy it.

engine :

the engine

node :

the node

widget :

the root widget

bonobo_ui_engine_add_hint ()

void                bonobo_ui_engine_add_hint           (BonoboUIEngine *engine,
                                                         const char *str);

This fires the 'add_hint' signal.

engine :

the engine

str :

the hint string

bonobo_ui_engine_remove_hint ()

void                bonobo_ui_engine_remove_hint        (BonoboUIEngine *engine);

This fires the 'remove_hint' signal

engine :

the engine

bonobo_ui_engine_emit_verb_on ()

void                bonobo_ui_engine_emit_verb_on       (BonoboUIEngine *engine,
                                                         BonoboUINode *node);

This fires the 'emit_verb' signal

engine :

the engine

node :

the node

bonobo_ui_engine_emit_event_on ()

void                bonobo_ui_engine_emit_event_on      (BonoboUIEngine *engine,
                                                         BonoboUINode *node,
                                                         const char *state);

This fires the 'emit_event_on' signal

engine :

the engine

node :

the node

state :

the new state of the node

bonobo_ui_engine_emit_verb_on_w ()

void                bonobo_ui_engine_emit_verb_on_w     (BonoboUIEngine *engine,
                                                         GtkWidget *widget);

This function looks up the node from widget and emits the 'emit_verb_on' signal on that node.

engine :

the engine

widget :

the widget

bonobo_ui_engine_emit_event_on_w ()

void                bonobo_ui_engine_emit_event_on_w    (BonoboUIEngine *engine,
                                                         GtkWidget *widget,
                                                         const char *state);

This function looks up the node from widget and emits the 'emit_event_on' signal on that node passint state as the new state.

engine :

the engine

widget :

the widget

state :

the new state

bonobo_ui_engine_get_attr ()

char *              bonobo_ui_engine_get_attr           (BonoboUINode *node,
                                                         BonoboUINode *cmd_node,
                                                         const char *attr);

This function is used to get node attributes in many UI synchronizers, it first attempts to get the attribute from node, and if this fails falls back to cmd_node.

node :

the node

cmd_node :

the command's node

attr :

the attribute name

Returns :

the attr or NULL if it doesn't exist.

bonobo_ui_engine_widget_attach_node ()

void                bonobo_ui_engine_widget_attach_node (GtkWidget *widget,
                                                         BonoboUINode *node);

Associate node with widget

widget :

the widget

node :

the node

bonobo_ui_engine_xml_get ()

CORBA_char *        bonobo_ui_engine_xml_get            (BonoboUIEngine *engine,
                                                         const char *path,
                                                         gboolean node_only);

This function fetches the node at path in the internal structure, and if node_only dumps the node to an XML string, otherwise it dumps it and its children.

engine :

the engine

path :

the path into the tree

node_only :

just the node, or children too.

Returns :

the XML string - use CORBA_free to free

bonobo_ui_engine_xml_node_exists ()

gboolean            bonobo_ui_engine_xml_node_exists    (BonoboUIEngine *engine,
                                                         const char *path);

engine :

the engine

path :

the path into the tree

Returns :

true if the node at path exists

bonobo_ui_engine_xml_merge_tree ()

BonoboUIError       bonobo_ui_engine_xml_merge_tree     (BonoboUIEngine *engine,
                                                         const char *path,
                                                         BonoboUINode *tree,
                                                         const char *component);

This function merges the XML tree into the internal tree representation as children of the node at path in engine.

engine :

the engine

path :

the path into the tree

tree :

the nodes

component :

the component ID associated with these nodes.

Returns :

flag on error

bonobo_ui_engine_xml_rm ()

BonoboUIError       bonobo_ui_engine_xml_rm             (BonoboUIEngine *engine,
                                                         const char *path,
                                                         const char *by_component);

Remove a chunk of the xml tree pointed at by path in engine, if by_component then only remove items associated with that component - possibly revealing other overridden items.

engine :

the engine

path :

the path into the tree

by_component :

whether to remove elements from only a specific component

Returns :

flag on error

bonobo_ui_engine_object_set ()

BonoboUIError       bonobo_ui_engine_object_set         (BonoboUIEngine *engine,
                                                         const char *path,
                                                         Bonobo_Unknown object,
                                                         CORBA_Environment *ev);

This associates a CORBA Object reference with a node in the tree, most often this is done to insert a Control's reference into a 'control' element.

engine :

the engine

path :

the path into the tree

object :

an object reference

ev :

CORBA exception environment

Returns :

flag if success

bonobo_ui_engine_object_get ()

BonoboUIError       bonobo_ui_engine_object_get         (BonoboUIEngine *engine,
                                                         const char *path,
                                                         Bonobo_Unknown *object,
                                                         CORBA_Environment *ev);

This extracts a CORBA object reference associated with the node at path in engine, and returns it in the reference pointed to by object.

engine :

the engine

path :

the path into the tree

object :

an pointer to an object reference

ev :

CORBA exception environment

Returns :

flag if success

bonobo_ui_engine_exec_verb ()

void                bonobo_ui_engine_exec_verb          (BonoboUIEngine *engine,
                                                         const CORBA_char *cname,
                                                         CORBA_Environment *ev);

engine :

cname :

ev :


bonobo_ui_engine_ui_event ()

void                bonobo_ui_engine_ui_event           (BonoboUIEngine *engine,
                                                         const CORBA_char *id,
                                                         const Bonobo_UIComponent_EventType type,
                                                         const CORBA_char *state,
                                                         CORBA_Environment *ev);

engine :

id :

type :

state :

ev :

Signal Details

The "add-hint" signal

void                user_function                      (BonoboUIEngine *bonobouiengine,
                                                        gchar          *arg1,
                                                        gpointer        user_data)           : Run Last

bonobouiengine :

the object which received the signal.

arg1 :

user_data :

user data set when the signal handler was connected.

The "destroy" signal

void                user_function                      (BonoboUIEngine *bonobouiengine,
                                                        gpointer        user_data)           : Run Last

bonobouiengine :

the object which received the signal.

user_data :

user data set when the signal handler was connected.

The "emit-event-on" signal

void                user_function                      (BonoboUIEngine *bonobouiengine,
                                                        gpointer        arg1,
                                                        gchar          *arg2,
                                                        gpointer        user_data)           : Run Last

bonobouiengine :

the object which received the signal.

arg1 :

arg2 :

user_data :

user data set when the signal handler was connected.

The "emit-verb-on" signal

void                user_function                      (BonoboUIEngine *bonobouiengine,
                                                        gpointer        arg1,
                                                        gpointer        user_data)           : Run Last

bonobouiengine :

the object which received the signal.

arg1 :

user_data :

user data set when the signal handler was connected.

The "remove-hint" signal

void                user_function                      (BonoboUIEngine *bonobouiengine,
                                                        gpointer        user_data)           : Run Last

bonobouiengine :

the object which received the signal.

user_data :

user data set when the signal handler was connected.
libbonoboui-2.24.5/doc/api/html/libbonoboui-bonobo-window.html0000664000076400007640000005372011546335132021310 00000000000000 bonobo-window

bonobo-window

bonobo-window

Synopsis

                    BonoboWindowPrivate;
                    BonoboWindow;
                    BonoboWindowClass;
GtkWidget *         bonobo_window_construct             (BonoboWindow *win,
                                                         BonoboUIContainer *ui_container,
                                                         const char *win_name,
                                                         const char *title);
GtkWidget *         bonobo_window_new                   (const char *win_name,
                                                         const char *title);
void                bonobo_window_set_contents          (BonoboWindow *win,
                                                         GtkWidget *contents);
GtkWidget *         bonobo_window_get_contents          (BonoboWindow *win);
BonoboUIEngine *    bonobo_window_get_ui_engine         (BonoboWindow *win);
BonoboUIContainer * bonobo_window_get_ui_container      (BonoboWindow *win);
void                bonobo_window_set_name              (BonoboWindow *win,
                                                         const char *win_name);
char *              bonobo_window_get_name              (BonoboWindow *win);
GtkAccelGroup *     bonobo_window_get_accel_group       (BonoboWindow *win);
void                bonobo_window_add_popup             (BonoboWindow *win,
                                                         GtkMenu *popup,
                                                         const char *path);
void                bonobo_window_remove_popup          (BonoboWindow *win,
                                                         const char *path);

Object Hierarchy

  GObject
   +----GInitiallyUnowned
         +----GtkObject
               +----GtkWidget
                     +----GtkContainer
                           +----GtkBin
                                 +----GtkWindow
                                       +----BonoboWindow

Implemented Interfaces

BonoboWindow implements AtkImplementorIface and GtkBuildable.

Properties

  "win-name"                 gchar*                : Read / Write / Construct

Description

Details

BonoboWindowPrivate

typedef struct _BonoboWindowPrivate BonoboWindowPrivate;


BonoboWindow

typedef struct _BonoboWindow BonoboWindow;


BonoboWindowClass

typedef struct {
	GtkWindowClass    parent_class;

	gpointer dummy[4];
} BonoboWindowClass;


bonobo_window_construct ()

GtkWidget *         bonobo_window_construct             (BonoboWindow *win,
                                                         BonoboUIContainer *ui_container,
                                                         const char *win_name,
                                                         const char *title);

Don't use this ever - use construct time properties instead. TODO: Remove this when we are allowed API changes.

win :

the window to construct

ui_container :

win_name :

the window name

title :

the window's title for the title bar

Returns :

a constructed window

bonobo_window_new ()

GtkWidget *         bonobo_window_new                   (const char *win_name,
                                                         const char *title);

win_name :

the window name

title :

the window's title for the title bar

Returns :

a new BonoboWindow

bonobo_window_set_contents ()

void                bonobo_window_set_contents          (BonoboWindow *win,
                                                         GtkWidget *contents);

Insert a widget into the main window contents.

win :

the bonobo window

contents :

the new widget for it to contain.

bonobo_window_get_contents ()

GtkWidget *         bonobo_window_get_contents          (BonoboWindow *win);

win :

the bonobo window

Returns :

the contained widget

bonobo_window_get_ui_engine ()

BonoboUIEngine *    bonobo_window_get_ui_engine         (BonoboWindow *win);

win :

the bonobo window

Returns :

the BonoboUIEngine

bonobo_window_get_ui_container ()

BonoboUIContainer * bonobo_window_get_ui_container      (BonoboWindow *win);

win :

the bonobo window

Returns :

the BonoboUIContainer

bonobo_window_set_name ()

void                bonobo_window_set_name              (BonoboWindow *win,
                                                         const char *win_name);

Set the name of the window - used for configuration serialization.

win :

the bonobo window

win_name :

the window name

bonobo_window_get_name ()

char *              bonobo_window_get_name              (BonoboWindow *win);

win :

the bonobo window

Returns :

the name of the window

bonobo_window_get_accel_group ()

GtkAccelGroup *     bonobo_window_get_accel_group       (BonoboWindow *win);

win :

the bonobo window

Returns :

the associated accelerator group for this window

bonobo_window_add_popup ()

void                bonobo_window_add_popup             (BonoboWindow *win,
                                                         GtkMenu *popup,
                                                         const char *path);

Add a popup menu at path

win :

the window

popup :

path :

the path

bonobo_window_remove_popup ()

void                bonobo_window_remove_popup          (BonoboWindow *win,
                                                         const char *path);

Remove the popup at path

win :

the window

path :

the path

Property Details

The "win-name" property

  "win-name"                 gchar*                : Read / Write / Construct

Name of the window - used for configuration serialization.

Default value: NULL

libbonoboui-2.24.5/doc/api/html/libbonoboui-bonobo-widget.html0000664000076400007640000010507011546335132021260 00000000000000 BonoboWidget

BonoboWidget

BonoboWidget — Simplified embedding of widgets in Bonobo.

Synopsis

                    BonoboWidget;
                    BonoboWidgetPrivate;
                    BonoboWidgetClass;
Bonobo_Unknown      bonobo_widget_get_objref            (BonoboWidget *bw);
GtkWidget *         bonobo_widget_new_control           (const char *moniker,
                                                         Bonobo_UIContainer uic);
GtkWidget *         bonobo_widget_new_control_from_objref
                                                        (Bonobo_Control control,
                                                         Bonobo_UIContainer uic);
BonoboControlFrame * bonobo_widget_get_control_frame    (BonoboWidget *bw);
Bonobo_UIContainer  bonobo_widget_get_ui_container      (BonoboWidget *bw);
void                (*BonoboWidgetAsyncFn)              (BonoboWidget *widget,
                                                         CORBA_Environment *ev,
                                                         gpointer user_data);
GtkWidget *         bonobo_widget_new_control_async     (const char *moniker,
                                                         Bonobo_UIContainer uic,
                                                         BonoboWidgetAsyncFn fn,
                                                         gpointer user_data);
BonoboWidget *      bonobo_widget_construct_control_from_objref
                                                        (BonoboWidget *bw,
                                                         Bonobo_Control control,
                                                         Bonobo_UIContainer uic,
                                                         CORBA_Environment *ev);
BonoboWidget *      bonobo_widget_construct_control     (BonoboWidget *bw,
                                                         const char *moniker,
                                                         Bonobo_UIContainer uic,
                                                         CORBA_Environment *ev);
void                bonobo_widget_set_property          (BonoboWidget *control,
                                                         const char *first_prop,
                                                         ...);
void                bonobo_widget_get_property          (BonoboWidget *control,
                                                         const char *first_prop,
                                                         ...);
#define             bonobo_widget_get_uih               (w)

Object Hierarchy

  GObject
   +----GInitiallyUnowned
         +----GtkObject
               +----GtkWidget
                     +----GtkContainer
                           +----GtkBin
                                 +----BonoboWidget

Implemented Interfaces

BonoboWidget implements AtkImplementorIface and GtkBuildable.

Description

Bonobo component embedding for hydrocephalic imbeciles.

Pure cane sugar.

This purpose of BonoboWidget is to make container-side use of Bonobo as easy as pie. This widget has two functions:

  1. Provide a simple wrapper for embedding Controls. Embedding controls is already really easy, but BonoboWidget reduces the work from about 5 lines to 1. To embed a given control, just do:

    1
    2
    bw = bonobo_widget_new_control ("id for control", toplevel_ui_handler);
    gtk_container_add (some_container, bw);

    You are free to make the 2nd (UIContainer) argument to bonobo_widget_new_control() be CORBA_OBJECT_NIL.

  2. To provide an extremely simple wrapper for using Monikers. In fact all BonoboWidget use uses the OAFIID: moniker to activate its sub-components. However monikers (bonobo-moniker-util) are far more powerful than this:

    1
    bw = bonobo_widget_new_control ("file:/demo/a.jpeg", toplevel_ui_handler);

    will launch an application that can render a jpeg as a control, usualy the Eye Of Gnome (EOG), and embed it as a control.

There are also functions for fetching and setting values in the Control PropertyBag, but the use of these functions is discouraged.

Details

BonoboWidget

typedef struct _BonoboWidget BonoboWidget;


BonoboWidgetPrivate

typedef struct _BonoboWidgetPrivate BonoboWidgetPrivate;


BonoboWidgetClass

typedef struct {
	GtkBinClass	 bin_class;

	gpointer dummy[4];
} BonoboWidgetClass;


bonobo_widget_get_objref ()

Bonobo_Unknown      bonobo_widget_get_objref            (BonoboWidget *bw);

bw :

Returns :


bonobo_widget_new_control ()

GtkWidget *         bonobo_widget_new_control           (const char *moniker,
                                                         Bonobo_UIContainer uic);

This function is a simple wrapper for easily embedding controls into applications. It will launch the component identified by id and will return it as a GtkWidget.

moniker :

A Moniker describing the object to be activated

uic :

Bonobo_UIContainer for the launched object or CORBA_OBJECT_NIL if there is no need of menu / toolbar merging.

Returns :

A GtkWidget that is bound to the Bonobo Control.

bonobo_widget_new_control_from_objref ()

GtkWidget *         bonobo_widget_new_control_from_objref
                                                        (Bonobo_Control control,
                                                         Bonobo_UIContainer uic);

This function is a simple wrapper for easily embedding controls into applications. This function is used when you have already a CORBA object reference to an IDL:Bonobo/Control:1.0 (the control) argument.

control :

A CORBA Object reference to an IDL:Bonobo/Control:1.0

uic :

Bonobo_UIContainer for the launched object or CORBA_OBJECT_NIL if there is no need of menu / toolbar merging.

Returns :

the control wrapped as a GtkWidget.

bonobo_widget_get_control_frame ()

BonoboControlFrame * bonobo_widget_get_control_frame    (BonoboWidget *bw);

Every IDL:Bonobo/Control:1.0 needs to be placed inside an IDL:Bonobo/ControlFrame:1.0. This returns the BonoboControlFrame object that wraps the Control in the bonobo_widget.

bw :

Returns :

The BonoboControlFrame associated with the bonobo_widget

bonobo_widget_get_ui_container ()

Bonobo_UIContainer  bonobo_widget_get_ui_container      (BonoboWidget *bw);

bw :

Returns :

the CORBA object reference to the Bonobo_UIContainer associated with the bonobo_widget.

BonoboWidgetAsyncFn ()

void                (*BonoboWidgetAsyncFn)              (BonoboWidget *widget,
                                                         CORBA_Environment *ev,
                                                         gpointer user_data);

widget :

ev :

user_data :


bonobo_widget_new_control_async ()

GtkWidget *         bonobo_widget_new_control_async     (const char *moniker,
                                                         Bonobo_UIContainer uic,
                                                         BonoboWidgetAsyncFn fn,
                                                         gpointer user_data);

This method creates a widget, returns it to the user, and asynchronously activates a control to insert into the widget.

moniker :

A Moniker describing the object to be activated

uic :

Bonobo_UIContainer for the launched object or CORBA_OBJECT_NIL if there is no need of menu / toolbar merging.

fn :

a callback function called when the activation has happend

user_data :

user data to be passed back to the callback.

Returns :

a (temporarily) empty Widget to be filled with the control later

bonobo_widget_construct_control_from_objref ()

BonoboWidget *      bonobo_widget_construct_control_from_objref
                                                        (BonoboWidget *bw,
                                                         Bonobo_Control control,
                                                         Bonobo_UIContainer uic,
                                                         CORBA_Environment *ev);

This is a constructor function. Only usable for wrapping and derivation of new objects. For normal use, please refer to bonobo_widget_new_control_from_objref.

bw :

A BonoboWidget to construct

control :

A CORBA Object reference to an IDL:Bonobo/Control:1.0

uic :

Bonobo_UIContainer for the launched object or CORBA_OBJECT_NIL if there is no need of menu / toolbar merging.

ev :

a CORBA exception environment

Returns :

A BonoboWidget (the bw)

bonobo_widget_construct_control ()

BonoboWidget *      bonobo_widget_construct_control     (BonoboWidget *bw,
                                                         const char *moniker,
                                                         Bonobo_UIContainer uic,
                                                         CORBA_Environment *ev);

This is a constructor function. Only usable for wrapping and derivation of new objects. For normal use, please refer to bonobo_widget_new_control.

This function will unref the passed in bw in case it cannot launch the component and return NULL in such a case. Otherwise it returns the bw itself.

bw :

A BonoboWidget to construct

moniker :

A Moniker describing the object to be activated

uic :

Bonobo_UIContainer for the launched object or CORBA_OBJECT_NIL if there is no need of menu / toolbar merging.

ev :

a CORBA exception environment

Returns :

A BonoboWidget or NULL

bonobo_widget_set_property ()

void                bonobo_widget_set_property          (BonoboWidget *control,
                                                         const char *first_prop,
                                                         ...);

This is a utility function used to set a number of properties in the Bonobo Control in control.

This function takes a variable list of arguments that must be NULL terminated. Arguments come in tuples: a string (for the argument name) and the data type that is to be transfered. The implementation of the actual setting of the PropertyBag values is done by the bonobo_property_bag_client_setv() function).

This only works for BonoboWidgets that represent controls (ie, that were returned by bonobo_widget_new_control_from_objref() or bonobo_widget_new_control().

control :

A BonoboWidget that represents an IDL:Bonobo/Control:1.0

first_prop :

first property name to set.

... :


bonobo_widget_get_property ()

void                bonobo_widget_get_property          (BonoboWidget *control,
                                                         const char *first_prop,
                                                         ...);

This is a utility function used to get a number of properties in the Bonobo Control in control.

This function takes a variable list of arguments that must be NULL terminated. Arguments come in tuples: a string (for the argument name) and a pointer where the data will be stored. The implementation of the actual setting of the PropertyBag values is done by the bonobo_property_bag_client_setv() function).

This only works for BonoboWidgets that represent controls (ie, that were returned by bonobo_widget_new_control_from_objref() or bonobo_widget_new_control().

control :

A BonoboWidget that represents an IDL:Bonobo/Control:1.0

first_prop :

first property name to set.

... :


bonobo_widget_get_uih()

#define bonobo_widget_get_uih(w) bonobo_widget_get_ui_container (w)

w :

Returns :

See Also

Object activation happens with bonobo_get_object().

BonoboControl, BonoboControlFrame, BonoboObject, BonoboView, BonoboEmbeddable, BonoboUIContainer, BonoboItemContainer.

libbonoboui-2.24.5/doc/api/html/home.png0000644000076400007640000000121611546335132014763 00000000000000PNG  IHDRw=bKGD pHYs  ~tIME1KvIDATxՕkq?rCp ~CnpCAAJ .B-\'G]:ܠC -(8 Ԁ!fDғklbRoyxwpðIJ<of_-@RHf֟t^ښ$Q|pgv;X^^&s(bwwZF9&3඙ ^IRZUE.0Z]]U PYM8HGIekqqҀ! $۬3n e{-/seeeÌXOͷ$8==USQRR'9-s+B^ Cەs+%<7W :2IENDB`libbonoboui-2.24.5/doc/api/html/libbonoboui-bonobo-selector-widget.html0000664000076400007640000002774611546335132023113 00000000000000 bonobo-selector-widget

bonobo-selector-widget

bonobo-selector-widget

Description

Details

BonoboSelectorWidgetPrivate

typedef struct _BonoboSelectorWidgetPrivate BonoboSelectorWidgetPrivate;


BonoboSelectorWidget

typedef struct {
	GtkVBox parent;

	BonoboSelectorWidgetPrivate *priv;
} BonoboSelectorWidget;


BonoboSelectorWidgetClass

typedef struct {
	GtkVBoxClass parent_class;

	/* Virtual methods */
	gchar *(* get_id)          (BonoboSelectorWidget *sel);
	gchar *(* get_name)        (BonoboSelectorWidget *sel);
	gchar *(* get_description) (BonoboSelectorWidget *sel);
	void   (* set_interfaces)  (BonoboSelectorWidget *sel,
				    const gchar         **interfaces);

	/* User select */
	void   (* final_select)    (BonoboSelectorWidget *sel);

	gpointer dummy[2];
} BonoboSelectorWidgetClass;


bonobo_selector_widget_new ()

GtkWidget *         bonobo_selector_widget_new          (void);

Creates a new BonoboSelectorWidget widget, this contains a list and a description pane for each component.

Returns :

A pointer to the newly-created BonoboSelectorWidget widget.

bonobo_selector_widget_set_interfaces ()

void                bonobo_selector_widget_set_interfaces
                                                        (BonoboSelectorWidget *sel,
                                                         const gchar **interfaces_required);

sel :

interfaces_required :


bonobo_selector_widget_get_id ()

gchar *             bonobo_selector_widget_get_id       (BonoboSelectorWidget *sel);

sel :

A BonoboSelectorWidget widget.

Returns :

A newly-allocated string containing the ID of the currently-selected CORBA server (i.e., the corba server whose name is highlighted in the list). The user of this function is responsible for freeing this. It will give an oaf iid back.

bonobo_selector_widget_get_name ()

gchar *             bonobo_selector_widget_get_name     (BonoboSelectorWidget *sel);

sel :

A BonoboSelectorWidget widget.

Returns :

A newly-allocated string containing the name of the currently-selected CORBA server (i.e., the corba server whose name is highlighted in the list). The user of this function is responsible for freeing this.

bonobo_selector_widget_get_description ()

gchar *             bonobo_selector_widget_get_description
                                                        (BonoboSelectorWidget *sel);

sel :

A BonoboSelectorWidget widget.

Returns :

A newly-allocated string containing the description of the currently-selected CORBA server (i.e., the corba server whose name is highlighted in the list). The user of this function is responsible for freeing this.
libbonoboui-2.24.5/doc/api/html/left.png0000644000076400007640000000071311546335132014766 00000000000000PNG  IHDRw=bKGD pHYs  ~tIME1&[(XIDATx!OPE*ID%~ꊯ"p'ŏ`sܖrKf hmiIz}ܯI.p\`x l?l[,Hk<#c%\AUx[S7n6rzEs1j@NL$ݤi0 5/}\EKIo͓$a0jdFbkIAh>WlC'?tk;|/t*INZ^`y4Nr]׮ J<ڐt`X1@p䀸dZ')hK $V?%]+LsgUK"w53OIENDB`libbonoboui-2.24.5/doc/api/html/libbonoboui-bonobo-a11y.html0000664000076400007640000003335311546335132020554 00000000000000 bonobo-a11y

bonobo-a11y

bonobo-a11y

Synopsis

void                (*BonoboA11YClassInitFn)            (AtkObjectClass *klass);
AtkObject *         bonobo_a11y_get_atk_object          (gpointer widget);
AtkObject *         bonobo_a11y_set_atk_object_ret      (GtkWidget *widget,
                                                         AtkObject *object);
GType               bonobo_a11y_get_derived_type_for    (GType widget_type,
                                                         const char *gail_parent_class,
                                                         BonoboA11YClassInitFn class_init);
AtkObject *         bonobo_a11y_create_accessible_for   (GtkWidget *widget,
                                                         const char *gail_parent_class,
                                                         BonoboA11YClassInitFn class_init,
                                                         GType first_interface_type,
                                                         ...);
void                bonobo_a11y_add_actions_interface   (GType a11y_object_type,
                                                         AtkActionIface *chain,
                                                         int first_id,
                                                         ...);

Description

Details

BonoboA11YClassInitFn ()

void                (*BonoboA11YClassInitFn)            (AtkObjectClass *klass);

klass :


bonobo_a11y_get_atk_object ()

AtkObject *         bonobo_a11y_get_atk_object          (gpointer widget);

widget :

Returns :


bonobo_a11y_set_atk_object_ret ()

AtkObject *         bonobo_a11y_set_atk_object_ret      (GtkWidget *widget,
                                                         AtkObject *object);

widget :

object :

Returns :


bonobo_a11y_get_derived_type_for ()

GType               bonobo_a11y_get_derived_type_for    (GType widget_type,
                                                         const char *gail_parent_class,
                                                         BonoboA11YClassInitFn class_init);

widget_type :

gail_parent_class :

class_init :

Returns :


bonobo_a11y_create_accessible_for ()

AtkObject *         bonobo_a11y_create_accessible_for   (GtkWidget *widget,
                                                         const char *gail_parent_class,
                                                         BonoboA11YClassInitFn class_init,
                                                         GType first_interface_type,
                                                         ...);

widget :

gail_parent_class :

class_init :

first_interface_type :

... :

Returns :


bonobo_a11y_add_actions_interface ()

void                bonobo_a11y_add_actions_interface   (GType a11y_object_type,
                                                         AtkActionIface *chain,
                                                         int first_id,
                                                         ...);

a11y_object_type :

chain :

first_id :

... :

libbonoboui-2.24.5/doc/api/html/libbonoboui-bonobo-ui-sync.html0000664000076400007640000015367211546335132021377 00000000000000 BonoboUISync

BonoboUISync

BonoboUISync — A Synchronizer object to keep a widget tree in sync with an XML tree.

Synopsis

                    BonoboUISync;
void                (*BonoboUISyncStateFn)              (BonoboUISync *sync,
                                                         BonoboUINode *node,
                                                         BonoboUINode *cmd_node,
                                                         GtkWidget *widget,
                                                         GtkWidget *parent);
GtkWidget *         (*BonoboUISyncBuildFn)              (BonoboUISync *sync,
                                                         BonoboUINode *node,
                                                         BonoboUINode *cmd_node,
                                                         int *pos,
                                                         GtkWidget *parent);
                    BonoboUISyncPrivate;
                    BonoboUISyncClass;
BonoboUISync *      bonobo_ui_sync_construct            (BonoboUISync *sync,
                                                         BonoboUIEngine *engine,
                                                         gboolean is_recursive,
                                                         gboolean has_widgets);
gboolean            bonobo_ui_sync_is_recursive         (BonoboUISync *sync);
gboolean            bonobo_ui_sync_has_widgets          (BonoboUISync *sync);
void                bonobo_ui_sync_remove_root          (BonoboUISync *sync,
                                                         BonoboUINode *root);
void                bonobo_ui_sync_update_root          (BonoboUISync *sync,
                                                         BonoboUINode *root);
void                bonobo_ui_sync_state                (BonoboUISync *sync,
                                                         BonoboUINode *node,
                                                         BonoboUINode *cmd_node,
                                                         GtkWidget *widget,
                                                         GtkWidget *parent);
void                bonobo_ui_sync_state_placeholder    (BonoboUISync *sync,
                                                         BonoboUINode *node,
                                                         BonoboUINode *cmd_node,
                                                         GtkWidget *widget,
                                                         GtkWidget *parent);
GtkWidget *         bonobo_ui_sync_build                (BonoboUISync *sync,
                                                         BonoboUINode *node,
                                                         BonoboUINode *cmd_node,
                                                         int *pos,
                                                         GtkWidget *parent);
GtkWidget *         bonobo_ui_sync_build_placeholder    (BonoboUISync *sync,
                                                         BonoboUINode *node,
                                                         BonoboUINode *cmd_node,
                                                         int *pos,
                                                         GtkWidget *parent);
gboolean            bonobo_ui_sync_ignore_widget        (BonoboUISync *sync,
                                                         GtkWidget *widget);
GList *             bonobo_ui_sync_get_widgets          (BonoboUISync *sync,
                                                         BonoboUINode *node);
void                bonobo_ui_sync_stamp_root           (BonoboUISync *sync);
gboolean            bonobo_ui_sync_can_handle           (BonoboUISync *sync,
                                                         BonoboUINode *node);
GtkWidget *         bonobo_ui_sync_get_attached         (BonoboUISync *sync,
                                                         GtkWidget *widget,
                                                         BonoboUINode *node);
void                bonobo_ui_sync_state_update         (BonoboUISync *sync,
                                                         GtkWidget *widget,
                                                         const char *new_state);
gboolean            bonobo_ui_sync_do_show_hide         (BonoboUISync *sync,
                                                         BonoboUINode *node,
                                                         BonoboUINode *cmd_node,
                                                         GtkWidget *widget);
GtkWidget *         bonobo_ui_sync_wrap_widget          (BonoboUISync *sync,
                                                         GtkWidget *custom_widget);
GType               bonobo_ui_sync_keys_get_type        (void);
GType               bonobo_ui_sync_menu_get_type        (void);
GType               bonobo_ui_sync_status_get_type      (void);
GType               bonobo_ui_sync_toolbar_get_type     (void);

Object Hierarchy

  GObject
   +----BonoboUISync

Description

The BonoboUISynchronizer is used internaly by the BonoboUIEngine. Writing one is a very advanced topic, and should only be attempted by carefuly study of the code. No normal user should need to write his own synchronizer.

Details

BonoboUISync

typedef struct _BonoboUISync BonoboUISync;


BonoboUISyncStateFn ()

void                (*BonoboUISyncStateFn)              (BonoboUISync *sync,
                                                         BonoboUINode *node,
                                                         BonoboUINode *cmd_node,
                                                         GtkWidget *widget,
                                                         GtkWidget *parent);

sync :

node :

cmd_node :

widget :

parent :


BonoboUISyncBuildFn ()

GtkWidget *         (*BonoboUISyncBuildFn)              (BonoboUISync *sync,
                                                         BonoboUINode *node,
                                                         BonoboUINode *cmd_node,
                                                         int *pos,
                                                         GtkWidget *parent);

sync :

node :

cmd_node :

pos :

parent :

Returns :


BonoboUISyncPrivate

typedef struct _BonoboUISyncPrivate BonoboUISyncPrivate;


BonoboUISyncClass

typedef struct {
	GObjectClass parent_class;

	BonoboUISyncStateFn sync_state;
	BonoboUISyncStateFn sync_state_placeholder;
	BonoboUISyncBuildFn build;
	BonoboUISyncBuildFn build_placeholder;

	void          (*update_root)     (BonoboUISync     *sync,
					  BonoboUINode     *root);

	void          (*remove_root)     (BonoboUISync     *sync,
					  BonoboUINode     *root);

	GList        *(*get_widgets)     (BonoboUISync     *sync,
					  BonoboUINode     *node);

	void          (*state_update)    (BonoboUISync     *sync,
					  GtkWidget        *widget,
					  const char       *new_state);
	
	gboolean      (*ignore_widget)   (BonoboUISync     *sync,
					  GtkWidget        *widget);
	
	gboolean      (*can_handle)      (BonoboUISync     *sync,
					  BonoboUINode     *node);
	
        void          (*stamp_root)      (BonoboUISync     *sync);

	GtkWidget    *(*get_attached)    (BonoboUISync     *sync,
					  GtkWidget        *widget,
					  BonoboUINode     *node);

	GtkWidget    *(*wrap_widget)     (BonoboUISync     *sync,
					  GtkWidget        *custom_widget);
} BonoboUISyncClass;


bonobo_ui_sync_construct ()

BonoboUISync *      bonobo_ui_sync_construct            (BonoboUISync *sync,
                                                         BonoboUIEngine *engine,
                                                         gboolean is_recursive,
                                                         gboolean has_widgets);

Used to construct a new synchronizer object

sync :

the synchronizer

engine :

the associated engine

is_recursive :

whether it deals with its children recursively

has_widgets :

whether it has associated widgets.

Returns :

the new object.

bonobo_ui_sync_is_recursive ()

gboolean            bonobo_ui_sync_is_recursive         (BonoboUISync *sync);

sync :

the synchronizer

Returns :

whether this deals with its children recursively

bonobo_ui_sync_has_widgets ()

gboolean            bonobo_ui_sync_has_widgets          (BonoboUISync *sync);

sync :

the synchronizer

Returns :

whether this deals with widgets

bonobo_ui_sync_remove_root ()

void                bonobo_ui_sync_remove_root          (BonoboUISync *sync,
                                                         BonoboUINode *root);

This is called when a 'root' or toplevel node is removed that this synchronizer deals with. eg. in the toolbar case, this might trigger hiding an associated dock item.

sync :

the synchronizer

root :

the toplevel node to be removed.

bonobo_ui_sync_update_root ()

void                bonobo_ui_sync_update_root          (BonoboUISync *sync,
                                                         BonoboUINode *root);

This flags the fact that a toplevel node has changed and is used primarily by non-recursive handlers, such as the keybinding sync method.

sync :

the synchronizer

root :

the toplevel node

bonobo_ui_sync_state ()

void                bonobo_ui_sync_state                (BonoboUISync *sync,
                                                         BonoboUINode *node,
                                                         BonoboUINode *cmd_node,
                                                         GtkWidget *widget,
                                                         GtkWidget *parent);

This method is used to synchronize the state of a node with that of a widget, by ensuring the pertainant attributes are reflected in the widget view.

sync :

the synchronizer

node :

the node

cmd_node :

the associated command node

widget :

the widget

parent :

the parent of node

bonobo_ui_sync_state_placeholder ()

void                bonobo_ui_sync_state_placeholder    (BonoboUISync *sync,
                                                         BonoboUINode *node,
                                                         BonoboUINode *cmd_node,
                                                         GtkWidget *widget,
                                                         GtkWidget *parent);

This synchronizes the state of a placeholder, there is a default implementation for this method.

sync :

the synchronizer

node :

the node

cmd_node :

the associated command node

widget :

the widget

parent :

the parent of node

bonobo_ui_sync_build ()

GtkWidget *         bonobo_ui_sync_build                (BonoboUISync *sync,
                                                         BonoboUINode *node,
                                                         BonoboUINode *cmd_node,
                                                         int *pos,
                                                         GtkWidget *parent);

This function causes a child widget to be build that matches node's attributes. This should then be inserted by into parent's associated widget at position pos in the container.

sync :

the synchronizer

node :

the node

cmd_node :

the associated command node

pos :

the position in the parent container to insert at

parent :

the parent of node

Returns :

the freshly built widget.

bonobo_ui_sync_build_placeholder ()

GtkWidget *         bonobo_ui_sync_build_placeholder    (BonoboUISync *sync,
                                                         BonoboUINode *node,
                                                         BonoboUINode *cmd_node,
                                                         int *pos,
                                                         GtkWidget *parent);

As for bonobo_ui_sync_build but for placeholders

sync :

the synchronizer

node :

the node

cmd_node :

the associated command node

pos :

position in the parent to insert the built widget

parent :

the parent of node

Returns :

the freshly built widget.

bonobo_ui_sync_ignore_widget ()

gboolean            bonobo_ui_sync_ignore_widget        (BonoboUISync *sync,
                                                         GtkWidget *widget);

sync :

the synchronizer

widget :

the widget

Returns :

TRUE if this widget should be ignored in a container this is the case for eg. menu tearoffs items, and toolbar popout items.

bonobo_ui_sync_get_widgets ()

GList *             bonobo_ui_sync_get_widgets          (BonoboUISync *sync,
                                                         BonoboUINode *node);

This method is used to obtain a sensibly ordered list of child widgets of the container associated with node. Essentialy this does something like gtk_container_children but preserving the visible order of the widgets in the list.

sync :

the synchronizer

node :

the node

Returns :

An ordered list of child widgets of node

bonobo_ui_sync_stamp_root ()

void                bonobo_ui_sync_stamp_root           (BonoboUISync *sync);

This asks the synchronizer to stamp all its associated root widget containers into the XML tree.

sync :

the synchronizer

bonobo_ui_sync_can_handle ()

gboolean            bonobo_ui_sync_can_handle           (BonoboUISync *sync,
                                                         BonoboUINode *node);

This is used to determine which, of multiple synchronizers can be used to deal with a specific node type. Each synchronizer deals with different types of node.

sync :

the synchronizer

node :

the node

Returns :

TRUE if the synchronizer can deal with this node type

bonobo_ui_sync_get_attached ()

GtkWidget *         bonobo_ui_sync_get_attached         (BonoboUISync *sync,
                                                         GtkWidget *widget,
                                                         BonoboUINode *node);

This is used to get an 'attached' widget - some widgets have associated widgets that are coupled in strange ways - eg. GtkMenuItem <-> GtkMenuShell It is neccessary to store the GtkContainer item of these couples in the XML tree, since then we can do things more genericaly and cleanly.

sync :

the synchronizer

widget :

the widget

node :

the node

Returns :

an associated widget or NULL if none exists.

bonobo_ui_sync_state_update ()

void                bonobo_ui_sync_state_update         (BonoboUISync *sync,
                                                         GtkWidget *widget,
                                                         const char *new_state);

This is used to synchronize state with a stateful widget, eg. when a "state" attribute is set, this is not reflected in the normal 'state-sync' process, but occurs later with a set of state_updates to avoid re-enterancy problems.

sync :

the synchronizer

widget :

the widget

new_state :

the new state

bonobo_ui_sync_do_show_hide ()

gboolean            bonobo_ui_sync_do_show_hide         (BonoboUISync *sync,
                                                         BonoboUINode *node,
                                                         BonoboUINode *cmd_node,
                                                         GtkWidget *widget);

This is a helper function that applies the hidden attribute from either the node or fallback to the cmd_node to the widget.

sync :

the synchronizer

node :

the node

cmd_node :

the associated command node

widget :

the widget

Returns :

TRUE if the widget's hidden / shown state changed, this is needed to work around some nasty dock sizing bugs.

bonobo_ui_sync_wrap_widget ()

GtkWidget *         bonobo_ui_sync_wrap_widget          (BonoboUISync *sync,
                                                         GtkWidget *custom_widget);

sync :

custom_widget :

Returns :


bonobo_ui_sync_keys_get_type ()

GType               bonobo_ui_sync_keys_get_type        (void);

Returns :


bonobo_ui_sync_menu_get_type ()

GType               bonobo_ui_sync_menu_get_type        (void);

Returns :


bonobo_ui_sync_status_get_type ()

GType               bonobo_ui_sync_status_get_type      (void);

Returns :


bonobo_ui_sync_toolbar_get_type ()

GType               bonobo_ui_sync_toolbar_get_type     (void);

Returns :

libbonoboui-2.24.5/doc/api/html/control.png0000644000076400007640000010274311546335132015522 00000000000000PNG  IHDRsBITO IDATxi00þưQQA(ep D `ĨAqeQAԁ5lJ\ (U`~8ߞs_wyZD2$_|qqqq*\x ,^zBZ,[gϞ ZU@`|A;}-...))ٳ{g9if 5jTӦMKJJz9ih `4hdɒM.]4Qa4<-Z@$ @@ DD @XhѢEqq1"i"h DviM4A$ @A N;mɒ%9ЁH0#H+@$ @W ;w-[2eʒ%K@i&a¼N:\s !믿H f"LDa~bXm]sRWxP`ӦM/sthXΗ!&׋` Tfشe:!B .U"Hj fpqY5r%,Q,x 5yRlE.H,r`ʓ,)yyFdVBX})U~ӖtxN%v*+oݘHt ۲b f>&I;[&:42Z5NFl`'C`'66$kزgQŵͬ(š;ؑm㦖xilf^}ƶa4VJSI;9--`oI))Cy`%\fְ27;5(S v$.gCT|%XRfHC+Mq͌}-zdhVĻ **1dzNPf=\܃0z}4n]uD0,/M4*1{N8 J_h?%X@c ]FAsE\% SY 懊EY~85.)qGdK }J)scԂG(LzqZLy׍yCrA,F*IG$\Lo 0^qxJ陥|?p_hH+F9眳qFAܩS{>S u@ԩ͛VyVZՠAU0xsN.H$R3N߾}+HPZZl_d2H`6̏?m۶UD%0x%rJEpʷ66s ryzUVEEE?N ZE$i׮ݮ]V" h\bF*NQFM6 ZE$ Z*A` Ye"3ѹ%=Ѽ/0´cVEXO(iYɌL4-GR]@0?p*Lo@*eYOc W-RżvR`R(KAxX2:eM0xH2 i$iGfֈH,ʫ\(7%g{6< *`Q:2sm3M RKx9-wI㼰~l1w95@0GҴ&x?+ܼ,B!r'r]lgPi u8B1{F0?'xéqȈ+ s;ӈ]kH$GA#m iu`HVޛyƿ$-xtLn[9̍άfI-YWp8,c켽@!T0Z@ v&oxO'b6:2VƙunG@zPa 3G' GԆ.:@ Vt_gIh?$Qwk̻< '"[h0O풀fdh40xHPt+oH]aQHCp0 {?8=˫HHlW_xa9/o^37t37nՊukG)eaV>O?adFffeyTќ0hRåe4T4#Ij-onv^[y zͪ)a}ŇS_a4lv^:SL#.ʔB]y.oֽ,:ej-0 SZ pC']3fרĩG40{Iph$ `QZ&_ =-/ c~P+$̗=Ԣ֠y]s)g4C5/aYhaF&#O9ejiLlH > `q0x KF#K^HRMjI,IeժUDCA  \}  1Np;ȑ#A@?xSH[I5JF'@\xU~ر]v5jZ ]v-D0r&CN5Iu1h!"~_~%hha4bٲeeeeA`/O>VĥAAKa4!5Eg5j.wyg2wܶmرZ:l4ĉN d81̃>L&㎆ ;om݆ i~*9G_ ڵk!@ի۷oq $ۯ^zҤIC Zz@ \gϞ{2nܸW^yeСO>dZpܹsϣ>2wƍa4 Ym۶۾}{VVVrHk,SѩkqM6[޽{ܹs@%L<D"1fB#<x0!'OZiիΝ[z{DzwީWv h@/1^hۃ@œNaLHoÄ41nݺ{.//6mZZHSS)zݦM۷cB0p]v!dm4G0"H;`B`/GZ f͚vY^AL&۵kfDF***>Ҙg S)0! b>zA:f͚&L2c q}_|C0 0 ғT4!dy[n5a4 ?OgΜ9bĈ~M0 .@X ҙ&M0׮]RzMABIIɣ> EVVK/TNۖ-[: @Ž;B+h%Kp A !v:3srr6oޜS,a:;w5jT*6m6lvH~uݰaâE.rX }@Nƍ};=r֭[wꩧY& t"(**&OqE&#@UTy۴i޹sgzn̹s:z h6֭HqƗ]vٱc^{e+:IEҭ[^~}AAA !/rԭ[>hݺ~l$}WԫW/XzuPҠ%$4hНwYn@R 6 MOHEݺu[vmAAAqqq 7no$^U-l4+B2'ӦMKh/h!\[0!iIWTT 6`Q@+}ѻo >R?F@0jժթSgȐ!yyy?'|ҧO?hH+FyCfp5Ce&.&6CN->3q+rΜ9 Ԣ ,ý'$+C$&0%C eee[n>f l5X3tٍ7KJJj׮]8knٲe͚5=`L2# @泬[ÐKܒ( .HRškNE7ʱmeW#F"I%K.]teo}W҉{-[ԩSQFw^O/++5k֤IHu@0 nRq؎_틹.ZFmOfh2F:r]/w}w?=N&Mg͚~ݻW-zjΝ.]:s[nEَA 47O M@ @rZ5uCҎ0O捖fm]KqT<<25#cD nZQE yH׮]q]wu?ϴi|nVZʮ.]:ydj7=!Yi5a ׆ ^emejFcW]ѣGO:k׮{y衇X۷o~~~R mA/ V$wWkewL0!##駟޸qk2yd})c8.\{qCD*7 mڴ !};EEEW^yL2 F@ܘ8qy2)^Ҷ5/#gD (٩w*nxG1ұc^zѣJ 7p"Ç !g>fBw=ψf$izy9Hќ7+l10’W~#ϵAfb"q.\!Ttd ը}# j3o<-v`۶m Z9|p* N ֏^tKc=/J#Ab[AWFGM㨖dHPp5Ӌ^J.]+A 3pSyx./e̙\sMF6lؐ4~ح[O> b ( E LFG?IuOW_}痕mݺU!{׮]7o?,]T4O2 ^4E#|J|a4 $W_}<3gddtMɓ'@d7o/bذaHFҚƍϞ=;hX| ,(0@cMW FD"1a„=2vAoy x8!b֭oV ů 0_*|c[Gʒ;h.8^zQCBȆ ZlYv]֩SGYIFx "g][N7lٲ%h 4e˖-]tQqqq&M<ӻu7nĉN/\gϞj+**!a" 6o@1gΜ1clذ`ɒ%7bo۶3I&N٣ q߼\tFybvAe2%O$*L6U3Ʀĉ奋/قE`po|] CN)2BG{ n4Ư%/K累AAsq)mk#8j}G}6rھĒζ{,/ J8FQ\Wʂ@8 k75uN:#n]E{O>{֭ҥKO$&L^'(N٩SN;m۶mvLanWÎeWs(NlK\"۽^-Pelgp? O-i}qTZzӚ+NKȖW<ܟKM873ґL,&A!%1F.GBqeʭ㦆ݷ2Z:َS{ 4xUz7cɒ%]ti'K$!'O֮N%>y[COq1^)`^]T[@3"yIlWM=VNH0:YO ^GE.$gDI)hPUT:uN8/\ԬYS&ٍ7ޘ;ݻ Їx2`Ѽv2*?f!qGG#yHm}^itJwӾXѰd lK œƜSh݄a[njX՜q"zn}G~m88 ##gY|y˖-ѴiK/ѣ?eί}iYI^5u:H{Ӌ+Mm(cAG(FJ Q}Oƿn@y.zF'Ml7L#7pYۚBPjcn9"aYCbFdVRSN9%h Cm'L'HPW-ym--{dҵaXH,F!$Օ\$ ^Z %W%=V,6EůrӀ󏁛DN4dD]LLz+FG-(U[1N]5&}6l=;5d/P,q{ouմX.?7+N޲mowtTdn3Fa4vp ZO< m0FJ$&wo1{dr{o%ZG5q5jHfٶmԩSKKKʌ͛7ӟD/K۷ˋ4W8ɐp$*/ V DF3OQN-W³N&P+\Σ1bĈ']W_M}=7x[V{L2֭[GMoر#3>t'|FdDʠσa3m鲼4tc0+ wog͚>8zj5xVZJU?7nLgF[nĽ~>lQG2E3Bғ?ɒ%]vق z1o޼|6۶m{ 7L:{9sLM>C..jժ9P >e@ \@;_bl!W/Yқ "i;tuG[ƲzBam0KdfizR9nciݺG}t'~G_|ݻ_;k֬O?Խb;D Խ#Z)IZFiǦP,NPo4^vhKWZ^^ccȜ"uA[n\,V[i̼.K$ntGX p8e˖hbʕ;vܳgKM49rd2>|xH&=:Z0e<ᾼ49say[l0rk酖,c8ptޅ{2xq\ͯm.Gȇ~⤓NZlo~s9GbN8>1c{kϠ0 ,oUW@/pe.Q]`\j^Ԉ j:Vh,`KFJJJj֬w5jx衇ƌӰaC\"{O]7d4~ ˶ʉ\a{m3*g:,YφGAlw%v2%iS )c*QT1mnbtY4-ҙڵkkvM7v%|Lǚ@[v^r9va":yjsa٘`&)/&+qy%/0I^"Jҗ^[]7: Ffff2%+2NŁ̜<򁗣(a (d*Y+7زX[ߑ*\~C캾PXWb+!EK22;r'S{5,@K2sV~ glGzXN"C}qZq Òi19^ݻ=^4VжmKd.@ٵkל9sV-Ղ8=%bU`%+?tF<4N@j{w,XEFobbN`´/PhkSf೤g)Y?Ta5x6JcRo۶m߾}LޚD pG (e:MģWh x^l/6l:%.dm^P ީǍ*4<$!7oN4)h9H ޘ:J0X-KN-{-e. f1 Ydlʵa+,Znnq^AMD%Jz8dm A1!YyI ˁo3f͚Æ :tGfgÆ ǏkԨQzǩ_~ժUj69Ìl1f;b{(Y^4Llch5n4 nK$6,{e80<"`(A1t[o裏:⋷mF/)))袋,G޺uk K.^zeyh@@ Hȑ#O='O~R>hѢ+W?3fz@n }^5\ӥKݺu֭|Gyd۶mݍ5b?zqDi,E=6nϚ/Q;>H />餓4;vlh%Wf-~b<ŪT-l^xR섾1X7ƊwFLMQ H͛7{p '-!94}YL^RRo+Tb)V N${/^5G^4k7r^yݻׯ_?h!8iN:o SĦ J^Ђvtk_1R\\?]vׯZ YʚW7Ig֬6 )h2uKݔW-iq*Y ~m ^$V;- '][V@ڵkwlݺ.ZvmrdI3IP_sTALU!3VQ]9R.U/(#N%uƿ>ב q'ew# ԬYs…ݻwߵkWAARyJpZ0E/m6 Y_a^7d, (WڐQ+S+^E۴+St8%]~RbAvقbUvt{h wyo߾?^7+6!3$3:t Yޣw"(SUvdSt2b̹ Tu(:혏eIwj-(n] 5cƌ?Z1qz ⳣSy7y0{ nR(ԕbΘFz]P(pt"z|饗-Zt-Y+FJISbͼ53ޠDy*֔e8GhU b:, ’zsj\Jpta4T"H<䓻wSm)$ G 'W˿L͂2zdTbM ^Z9rTWLbz)I{5{4)LAwѭ <1| 3k{"%LVm$τIwJƯL.۽jak}HVoyU Nڌѭ@::Z?dgo߾fO<ѣG<ꫯz#G޽%qyyy:uf̘A߾}{II7wTc,]atIIu]˰aÞx ]~ۛ6m 92}tfzd2믿A 8Rw8[ݤI֭[{$DPqС%KL8+4hP*U233'33N:u}W5j`?:whB@8 ;w̜\PaÆݻwkk֬ʧVxժUs *8t?}{fЩ`Ydo{g\F3ۼ%v~U#m ƾKhA'̻'C ]bz4n,HYuӾ}{qu#?@<6M2K"z[P7hP!Xc%$+WVZ8eee]v=ijfZn]9EQQQ۶m=زe,ǍWPP@啋ly5 i].ZA/ԋ%Y@ >w08c ^o;u WZ5oHKL0Rخ8mc-~^AgD)X/o~ȶJݫuSJ*#E ʱU%0xJWfH5ky*Udff2chBH߾}[jJcCBFyueRqZڹshh/(sW0CpgZR|⓬G:y5`Ԍ_^]IVnjR{W92}X2BO<ԚI#Gk$۷o߾mg[rfmNTҙv2I; /) PVN%4d2:-Bk*{nh)#N4++ڛxDEТ6x_z#'AZ#-v2eЍGɼo5-<~N< yfuaX]&é*R;̟?[nٹsgNN}ݗcIжm@yU_8x潚}bdĀʛn~DCyBIa*L~- 43;9N4WN`i_YO=hg$gyfРAA Ѻu]wycǎe9 XMh9{wбPx:O!o-)f%+-ӂmSn_-D} `2dHH"~p…j;K>qdҋjv?)hW!$/?̿ŚSWe|M9dr: ,֎S jж'&:QdȐ!Ccٷ~>lΝ7=ߤ =)k9aӿjUCp4r-oR/^6XN_`l%H^tT^?+WZ\ 6SӦM-ڶm$O, aBI!v3JK?Q k@ꪫ:w,Nsܹرcn㏃ zg7nN'x^D1E<2xp#}q ˂ YBٶY `Bޯ']hö^vK}owK-ʀZ Nɿ3fy{~7\Z7oިQĔ)S:tZ ,~CW|p5%a4_2m"$il?rSp{y3f +q7]v=W_Ccǂ%0}]gV&z3輌@|ϫ`k7 %ʨI _qD~q87-X>f f,Zo޾}{^^O ¢دP a4󲕾~Khd4an蔑GwZ[[GF |ଳΪVرcG>L&}l-屍xoБ68uѣk`beZL9ʨ6ѻ1- c8P a7NotF`gӵX y%]O[\iӦkYvmO(z 4TENz 9!@RnGZnP3g>/`"YE>2 1t쎦W5F0 TӼՆ`X|+OM_۽ٯpJjWm=e8p3'i|ke#C%^K]aJ2//s.6qOXH@GՆLvAk!܏uaW8e2h+de|IFӐ;w-xvܰU RZvutT&Y0:5n Rdg֕8د$qj14pCdW1,o<Ȼ9NJ,$p]ٕzqiVz:ujVL裏j7o߾rf!14pIu0דI62yNK|f3pNr`H#T*3J[+oٳgB~vmz헕]}{w5j(_իWWTTTTT?Ə߾}{:wܱl2#e?(qpIhK?~|nn;6 1 BuCccG,ɘ-A]LFIX# =ML#L1= T9#ie+adJJg4-A5-Cuupŏ?x۶m'|y$IYޡGwQN+Wp Iz6e,kW\nZ_a0an<%- oUVj2Ѿ}{fI&:t(H?p@f, 9&T&o"6bq!vg}VfMO׀uYgu|-Zsrr) ̃7#:#I8Up֕GYX"a$m:u긴pر,-b#oP 0\&ᫍAʶƼX9m 0al!`9{\F#AzZ$mG.N^XCoW4" f,M҄.]lڴ)@ R8 i!(LlUm,Ԕe۞tRSmP^"a3%iy _m&i.], ҈[Ao1/%6mOWޠAHsQ+CĤ#$O lO<apI1LgQޅ{2xq\ͯbƌdw޹Ai\Z~[ -%2ϾffRRK&ylK*#+f~Txl J$ddk ׳mFvkוG|QG2A?a ׆ 7v"wW>SӖ!g۶m7tӑ#G4| !޽, ;cqE0Zxqԑf.qX\"[.k@~ԕ[͒Ԉ8KGu%6ohJ@g-X| Oq߿{_}Uq-6/N:^z'K0cAbS/ӔxnJ&NmؖHAݚtzh2[bЂU6(si9'FZ=k}82]s5_}Yg3f ۗ#Fknź<.ߒC(H<8{>dF˚u)׀kµ]#n.˧t`&vWNOVy=ɺԅx#w2\,3x#aÆ-\Ab3LVt\{4+VXzuP}@92g,74n&2iA2+6rr1ZzjAySz/=%}hc6׼@78|5gv#"5+{2ԋJ7S駟~srrfϞ}'2{֭[uܙ|ڵvrj׶ϣ]My_ #K.fIgvz ki25QiA/*&v_ݻ1=qyÇ8 1+"cNƈ8Snǽ5D_1يw… H$^z?_弼Yfgd_͛7WF21̅_^7W4iN4?_ 4e-;+H VEle])֬7;-EȜ23'7q z'|2|fݻw"}ذaO>d*e˖O<Ѳ>WީCjժ_~=[Y/_ޱc;_wٲew9NvvvNNίZfMLE@$ltn馠UvX~~~ii?h])SV@o9nݺ.]D.N}D 1@ffĉ?͛7wuӦMA+r@z|e˖-@ Cnn… ?M6I/_wmo֬ل 4F#//oaO>o޼ j/lݺmAx$]VVoB,!J<a4 `駖-[iFRBHժU5F'Iw1H_' f C"0pB##G̞=r굌h7a!Hzk׮駟.~رSN=|mJF@A Hz^{ܶm["\q|2_LF#{BC؅1 IDATcM4ٶm[Z#;vܲeKvv6soEEŏ?x9sx-ѣ]m?s=묳&޷okժC&pi@[G$Xt;惘l^@oaʕv$Yf͚5])bF)+Gw v^b|QF©JL857nXoG#VZEi߾}BFF"H7-2 8UJL %gFs0Er0Ep9GꫯTҺu렵F1 mhmhɦ YvJWӔ%@#k,ut_j*77i믿~ʔ)Hu$T&Hjcʔ٠ሰb28NXѢP`Ql8* ̜z/СCf/O^TTT^Ν;?7nB!?A$ʡÈ3K~Xbksrx"Ӓj)˲3SLyw!^z曝:#33>1bĩz9KNMC sjVWB mC1O=dpEÇ[hQPPꫯzAnnn>}L&{f{!0X|fŊӧOر|5kܹ믿ND"ѢE ^xzݺu{ꩧl0HgFeZtc7%I pEddd 0QUVBڵk"W=z?7oޮ]/_~eк  :O+)* r21`ʕ$akcǏw%J)A&c!jV,flƹ$]lfs&nb̐,HEaa &?A/{?=|Eoy=My{+VXn]]]]}̟?խ,sʕUV]x1 {(379)9=Zƙ:^sRsvJttL\OӚrjDdC]reI}a-[VYYY]]j*dPF'ɶt6rzB;&dOԮF^&M('qQMTTT̟??ٳgٲecƌ0aˏ?tj>N%uĖj驖OQyǍ7gΜ޽{Gkkk/_Qbq۶mv…۷744l۶رcǎ+++[|y@PF+:dbKT˧x?~Ŋ]]]|СCv6lXY%{ <@I@PF'Iߍ;,W7gl3v: zW>Yf3w޳gϞ={Se˖tMtR!h !O!гro;TnРAvth>쌲i߾}ׯ߿CV\9y䊊IF$5TrP߁4M6mZ҉oڴӯ#<2tЁ^INRaSR頱Kn55k{dL l!:NStƶgtlv4m4`lKHj4eW}7oիO<}vۗĥK:;; BDaSA`As*rnHп,2M5YfMLʜT8Iƶ5~!dȵpKo e-Z'Ν;o߾rKҹ544_/~3  'k1Fm4%?L#I&HAr+oS9x=^Jiii&Mݛ̙3ݻ';v߿?/E2XkW eِe$۶.K) `GG={vӦMUUUoOӧ]6@etĺ8̆ kGװ%ap\zT򓟜?w뮻nĉӧO1+UTTխ[ԩS=ȑ#͛t^ 2D]73j8*[FiSLÇzٳgmmmCm… 1'b)`+`o9p:*qmc tTLxAJ*/kV__t"Akk룏>ZYY9cƌgovQFϴ5⥾iud2Ùn>?AVB8i]SXqpĜ'R5M+PMww_ZZ[n5jԓO>yСSPԸ=CKKL&kKߧT8ΆS2CKuMIk/AgB)䠶OS<)Ii1:\RR)SJJx BiɎZl*=՝^ 21E )e{Xg,L>hϞ=/YB+h%~ 2m $;JuqȞN-"kVWW?,]';C alPhkyqMmlzQR~3A5oXN':!d3~A^~eMϟ0̙3gΜFFN^vtPfD.dR/.|AnɈOS& Itȑz뮛={vҹ:@҆ 4MWRZZt.PHOOOkkot"hE: |aGǢEjp7\YYyܹsAёL-O~;2i߾}mmmÇ@i|8Ȱ@կ)0)lJ:j4t[tiyyy}}}҉@9{r> (#tҥ?Igґ#G$[= >UEvvvvuu6x@(#to|Ig@ݻ_}|0DNhD߾}z衤RoĉuG@AR!s;wL: R'ؾ}{ccYGۿ&u#E7߼{v9psB@ }:::{֣<>m۶5JK/,]t3gΎ;OSWWJS>}24P$*++,Yq7|J-gÆ -Z(DxPYY4zB%}ܹ32~޽{[[[t.>|>|QFH7w}I3c%/}JhE;v… Ig$`رҮPIu]J!(dɒoIg$o|7 ;8Ç޽PI8FPF+mmr{ɩ^xŋ>|8į&]SSL%4Vի㎤`ǏJ:Dim#E~\A32!a%SJ&ikRrfwm<7MxЧ0@I3Ϭ^[ hmmojj91PYO bbN" yݖ<˗4hmmwܹRJH&qc*@=01}RPetL'#O C_Jq]IyyC Q;lX%פp 'ybPJC{3B_-0"s;Ld3~"Mm)RRɨƶ" [l|=llJOE7ךRDw_cG׏N/`@b5: ~y;} @/'B"G(Acۘ֒˺M\|EJQFg뒀9qj`‰$E7E>xu\k (KӴҤ, H}*QQ,OY4za) H=i"MphK"C!NY0B1h/ D2: ߑ?M?jh}:ga~ܶJ[sm9Nmb2Q b:q>B Vؘ63,r^_ Ӝ0p{et+2ŴS~*L;T-_z ^V.[eT9OqA]DUT(=A(]Sְ"sâgkm#o}vEWH茐|@qVƗ9h;m%dP] Җ# 3.H](Z@|eK/f͚h23YDPF1q0n2d^{ci@l(U3'N$ xRe4:vرw}74h-Y$`2ZQǏI: @QcǎM:@5PΜ9~…e4" /p /B҉R2@ap!u=z4Pݻ5M۱cǙ3g%~骪q! n޼9,9_9rd҉@XN81,=S555MMMT2HƂ .\t@~M0J@p! B\n˖-~'jjjۓA VEEg̘A% K(0`;d e4 T22@fPFSYYI% ( *nPIIgQFEii-[/8qb̙TRO1Do߾O.%%%mmmo{8XD]tgM:G2H\.CuD"┆ ]8)<"2P]^ZW6P= RLg@(1t)O?5n1ʸXX,,S_{ 5òtܩtd)kL5m{Ql'z y02Ev"SA2PX7GZ75 k5q6XFা.z\ia k{Iq"N&He4Vzc[߲P.өjSGcM>EMLov# Mp7[ uU2kp%I@ (-bѴQJج?)" 9HR$|`S ȼ6;xFz L侔6.@(E9=t;xnli89uA^i7 wCQ(ZlR)mwn6mw#][ۮ:u<S|AN<-&DM?n%j@%.>̿er7 k{զ) K<%#8}Ӕ@`Se4 vjggg<Hƺu8@ bonobo-selector-widget @parent: @priv: @parent_class: @get_id: @get_name: @get_description: @set_interfaces: @final_select: @dummy: @void: @Returns: @sel: @interfaces_required: @sel: @Returns: @sel: @Returns: @sel: @Returns: libbonoboui-2.24.5/doc/api/tmpl/bonobo-canvas-item.sgml0000644000076400007640000000207211546335132017705 00000000000000 BonoboCanvasItem A GNOME Canvas Item that can be used to embed remote Bonobo GNOME Canvas Items. The Bonobo Canvas Item is a Canvas item that will allow you to embed an arbitrary Canvas Item that lives in in a remote Embeddable. On the remote end, the #BonoboCanvasComponent class is used to wrap an arbitrary #GnomeCanvasItem and export it. This allows arbitrarily shaped components to be inserted into an application. Both Xlib and AA canvas items are supported. #BonoboCanvasComponent, #BonoboEmbeddable, #BonoboObjectClient. @item: @x1: @y1: @x2: @y2: libbonoboui-2.24.5/doc/api/tmpl/bonobo-ui-preferences.sgml0000664000076400007640000000233411546335132020415 00000000000000 bonobo-ui-preferences @engine: @engine: @void: @Returns: @void: @Returns: @void: @Returns: @void: @Returns: @void: @Returns: libbonoboui-2.24.5/doc/api/tmpl/bonobo-ui-sync.sgml0000664000076400007640000000670411546335132017075 00000000000000 BonoboUISync A Synchronizer object to keep a widget tree in sync with an XML tree. The BonoboUISynchronizer is used internaly by the #BonoboUIEngine. Writing one is a very advanced topic, and should only be attempted by carefuly study of the code. No normal user should need to write his own synchronizer. @sync: @node: @cmd_node: @widget: @parent: @sync: @node: @cmd_node: @pos: @parent: @Returns: @parent_class: @sync_state: @sync_state_placeholder: @build: @build_placeholder: @update_root: @remove_root: @get_widgets: @state_update: @ignore_widget: @can_handle: @stamp_root: @get_attached: @wrap_widget: @sync: @engine: @is_recursive: @has_widgets: @Returns: @sync: @Returns: @sync: @Returns: @sync: @root: @sync: @root: @sync: @node: @cmd_node: @widget: @parent: @sync: @node: @cmd_node: @widget: @parent: @sync: @node: @cmd_node: @pos: @parent: @Returns: @sync: @node: @cmd_node: @pos: @parent: @Returns: @sync: @widget: @Returns: @sync: @node: @Returns: @sync: @sync: @node: @Returns: @sync: @widget: @node: @Returns: @sync: @widget: @new_state: @sync: @node: @cmd_node: @widget: @Returns: @sync: @custom_widget: @Returns: @void: @Returns: @void: @Returns: @void: @Returns: @void: @Returns: libbonoboui-2.24.5/doc/api/tmpl/bonobo-ui-config-widget.sgml0000644000076400007640000000034311546335132020636 00000000000000 bonobo-ui-config-widget libbonoboui-2.24.5/doc/api/tmpl/bonobo-control-frame.sgml0000664000076400007640000001144111546335132020250 00000000000000 BonoboControlFrame An implementation of the container's frame containing a Control The BonoboControlFrame object is used to embed a Control. Most people will want to use #BonoboWidget instead of the control frame since it provides lots of nice auxiliary features to make embedding easy.
The Bonobo::ControlFrame interface
The control frame is coupled to an embedded control and is used to allow the Control to communicate with its environment, particuarly getting the #BonoboUIContainer for merging its menu / toolbar UI elements. A nice use of a BonoboControlFrame BonoboWidget * bonobo_widget_construct_control_from_objref (BonoboWidget *bw, Bonobo_Control control, Bonobo_UIContainer uic) { GtkWidget *control_frame_widget; /* * Create a local ControlFrame for it. */ bw->priv->control_frame = bonobo_control_frame_new (uic); bonobo_control_frame_bind_to_control (bw->priv->control_frame, control); ... bonobo_control_frame_set_autoactivate (bw->priv->control_frame, TRUE); /* * Grab the actual widget which visually contains the remote * Control. This is a GtkSocket, in reality. */ control_frame_widget = bonobo_control_frame_get_widget (bw->priv->control_frame); /* * Now stick it into this BonoboWidget. */ gtk_container_add (GTK_CONTAINER (bw), control_frame_widget); /* * Always remember to show the widget before reporting bugs. */ gtk_widget_show (control_frame_widget); if (uic != CORBA_OBJECT_NIL) bw->priv->uic = bonobo_object_dup_ref (uic, NULL); return bw; } #BonoboWidget, bonobo_widget_new () @bonobocontrolframe: the object which received the signal. @arg1: @arg2: @bonobocontrolframe: the object which received the signal. @arg1: @parent_class: @epv: @dummy: @activated: @activate_uri: @control_frame: @ui_container: @ev: @Returns: @ui_container: @Returns: @frame: @Returns: @control_frame: @uic: @ev: @control_frame: @control_frame: @control_frame: @autoactivate: @control_frame: @Returns: @control_frame: @opt_ev: @Returns: @control_frame: @propbag: @control_frame: @Returns: @control_frame: @state: @control_frame: @autostate: @control_frame: @Returns: @control_frame: @control: @opt_ev: @control_frame: @Returns: @control_frame: @Returns: @control_frame: @opt_ev: @Returns: libbonoboui-2.24.5/doc/api/tmpl/bonobo-canvas-component.sgml0000644000076400007640000000702611546335132020755 00000000000000 BonoboCanvasComponent Class for exporting BonoboCanvasItems through BonoboEmbeddables to other applications. The BonoboCanvasComponent objects are used to wrap GnomeCanvasItems and export them to container applications. Typically the bonobo_component_canvas_new() function will be invoked in a callback from a BonoboEmbeddable object. Here is an example of how to export Gnome Canvas Items in a simple way. Wrapping a Gnome Canvas Item /* * Here is where the GnomeCanvasItem (in this case an ellipse) * is created and wrapped in a BonoboCanvasComponent. * * This function is invoked on demand on the embeddable * argument. Embeddables are the document model, and the * items returned are the views. */ BonoboCanvasComponent * my_item_creator (BonoboEmbeddable *embeddable, GnomeCanvas *canvas, void *data) { GnomeCanvasItem *item = gnome_canvas_item_new ( gnome_canvas_root (canvas), gnome_canvas_ellipse_get_type (), "x1", 5.0, "y1", 5.0, "x2", 95.0, "y2", 95.0, "fill_color", "white", "outline_color", "black", NULL); return bonobo_canvas_component_new (item); } /* * This is a routine that creates a BonoboEmbeddable that * uses CanvasItems. */ BonoboEmbeddable *make_embeddable (void) { return bonobo_embeddable_new_canvas_item (my_item_creator, NULL); } Applications that do not use the base #BonoboEmbeddable class, but use their own types derived from the #BonoboEmbeddable can use the bonobo_embeddable_construct() during their construction phase. On the client side (the application that will embed this component) an object of the type #BonoboCanvasItem is used. #BonoboEmbeddable, #BonoboCanvasItem @comp: @item: @Returns: @corba_canvas_comp: @ccomp: @item: @Returns: @comp: @Returns: @comp: @mask: @cursor: @time: @opt_ev: @comp: @time: @opt_ev: @comp: @opt_ev: @Returns: @is_aa: @proxy: @Returns: @bonobocanvascomponent: the object which received the signal. @arg1: @Returns: @bonobocanvascomponent: the object which received the signal. @arg1: @arg2: @bbox: The bounding box. @ev: CORBA Environment to return errors on. libbonoboui-2.24.5/doc/api/tmpl/bonobo-ui-util.sgml0000664000076400007640000000500611546335132017070 00000000000000 bonobo-ui-util A collection of utility functions to help with UI related issues The UI utilities do man things, mostly concerned with smoothing the flow of XML data from containee to container. There are also several generaly useful functions used internaly for manipulating pixmaps. Also, code for stringifying accelerators, fixing up help and working around libxml bugs. Also a large chunk of code is included for dynamic UI tree building that is now strongly deprecated by the various tools to do this from dynamic files. @pixbuf: @Returns: @xml: @Returns: @node: @icon_size: @Returns: @node: @pixbuf: @listener: @app_prefix: @app_name: @parent: @component_prefix: @file_name: @Returns: @node: @component: @node: @app_prefix: @app_name: @node: @component: @fname: @app_prefix: @app_name: @Returns: @component: @app_prefix: @file_name: @app_name: @opt_ev: @component: @path: @pixbuf: @opt_ev: @accelerator_key: @accelerator_mods: @Returns: @name: @accelerator_key: @accelerator_mods: @s: @e: @Returns: @s: @Returns: libbonoboui-2.24.5/doc/api/tmpl/bonobo-ui-engine.sgml0000664000076400007640000002104311546335132017357 00000000000000 BonoboUIEngine The guts of the UI handler The Bonobo UI code as exposed through the #BonoboWindow, #BonoboUIComponent and #BonoboUIContainer API's use the BonoboUIEngine. The Engine effectively maintains a #BonoboUIXml tree internaly, and a list of #BonoboUISync synchronizers that, when the tree changes are used to re-sync the associated widgets with the XML model. The Engine can be tweaked by getting its pointer from an associated BonoboWindow eg. this can be useful for setting the configuration path. To allow a BonoboWindow to be configurable you need to do: How to make your UI user configurable bonobo_ui_engine_config_set_path ( bonobo_window_get_ui_engine (win), "/my-application-name/UIConfig/kvps"); where "UIConfig/kvps" is some convenient path into your gnome_config file. Key value pairs (kvps) are stored in this, mangled into a comma delimited string and these are used to clobber the XML on merges, eg. User configuration format [UIConfig] kvps=/Toolbar:look:both inside your ~/.gnome/my-application-name file, will ensure that whenever the item with path '/Toolbar' is modified the 'look="both"' attribute will be stamped onto it, effecively forcing a certain look. @bonobouiengine: the object which received the signal. @arg1: @bonobouiengine: the object which received the signal. @bonobouiengine: the object which received the signal. @arg1: @arg2: @bonobouiengine: the object which received the signal. @arg1: @bonobouiengine: the object which received the signal. @engine: @engine: @ref: @engine: @name: @engine: @name: @component: @engine: @Returns: @engine: @name: @Returns: @engine: @path: @engine: @Returns: @engine: @ui_container: @engine: @Returns: @engine: @engine: @engine: @BONOBO_UI_ERROR_OK: @BONOBO_UI_ERROR_BAD_PARAM: @BONOBO_UI_ERROR_INVALID_PATH: @BONOBO_UI_ERROR_INVALID_XML: @parent_class: @add_hint: @remove_hint: @emit_verb_on: @emit_event_on: @destroy: @engine: @view: @Returns: @view: @Returns: @engine: @Returns: @engine: @sync: @engine: @sync: @engine: @Returns: @engine: @sync: @node: @engine: @widget: @node: @cmd_node: @engine: @node: @Returns: @widget: @Returns: @engine: @widget: @node: @engine: @path: @property: @value: @component: @Returns: @engine: @path: @prop: @invalid_path: @Returns: @engine: @node: @save_custom: @engine: @path: @Returns: @engine: @node: @engine: @node: @engine: @out: @msg: @engine: @node: @Returns: @engine: @node: @Returns: @engine: @node: @Returns: @engine: @node: @Returns: @engine: @from_node: @Returns: @engine: @node: @dirty: @engine: @node: @engine: @path: @widget: @engine: @node: @widget: @engine: @str: @engine: @engine: @node: @engine: @node: @state: @engine: @widget: @engine: @widget: @state: @node: @cmd_node: @attr: @Returns: @widget: @node: @engine: @path: @node_only: @Returns: @engine: @path: @Returns: @engine: @path: @tree: @component: @Returns: @engine: @path: @by_component: @Returns: @engine: @path: @object: @ev: @Returns: @engine: @path: @object: @ev: @Returns: @engine: @cname: @ev: @engine: @id: @type: @state: @ev: libbonoboui-2.24.5/doc/api/tmpl/bonobo-widget.sgml0000664000076400007640000000726311546335132016772 00000000000000 BonoboWidget Simplified embedding of widgets in Bonobo. Bonobo component embedding for hydrocephalic imbeciles. Pure cane sugar. This purpose of BonoboWidget is to make container-side use of Bonobo as easy as pie. This widget has two functions: Provide a simple wrapper for embedding Controls. Embedding controls is already really easy, but BonoboWidget reduces the work from about 5 lines to 1. To embed a given control, just do: bw = bonobo_widget_new_control ("id for control", toplevel_ui_handler); gtk_container_add (some_container, bw); You are free to make the 2nd (UIContainer) argument to bonobo_widget_new_control() be CORBA_OBJECT_NIL. To provide an extremely simple wrapper for using Monikers. In fact all BonoboWidget use uses the OAFIID: moniker to activate its sub-components. However monikers (#bonobo-moniker-util) are far more powerful than this: bw = bonobo_widget_new_control ("file:/demo/a.jpeg", toplevel_ui_handler); will launch an application that can render a jpeg as a control, usualy the Eye Of Gnome (EOG), and embed it as a control. There are also functions for fetching and setting values in the Control PropertyBag, but the use of these functions is discouraged. Object activation happens with bonobo_get_object(). #BonoboControl, #BonoboControlFrame, #BonoboObject, #BonoboView, #BonoboEmbeddable, #BonoboUIContainer, #BonoboItemContainer. @bin_class: @dummy: @bw: @Returns: @moniker: @uic: @Returns: @control: @uic: @Returns: @bw: @Returns: @bw: @Returns: @widget: @ev: @user_data: @moniker: @uic: @fn: @user_data: @Returns: @bw: @control: @uic: @ev: @Returns: @bw: @moniker: @uic: @ev: @Returns: @control: @first_prop: @Varargs: @control: @first_prop: @Varargs: @w: @Returns: libbonoboui-2.24.5/doc/api/tmpl/bonobo-transient.sgml0000644000076400007640000001421611546335132017510 00000000000000 BonoboTransient Creates a server that will handle transient objects. The BonoboTransient is used to create transient objects. These objects only exist during the lifetime of the method execution of the interface they implement: they are created on demand and destroyed after the method invocation finishes. Transient objects are an optimization useful when it is possible for a very large set of object to exist but there is no need to have implementations of the servers running all the time, as they can be created on the demand to satisfy the requests of client applications. For example, consider the case in which a large list of objects needs to be returned to a client application. For example, an object reference could be returned for every file on a directory. But it would be wasteful to keep one server running for each file. And given that the program has all the information available to create the servers on demand, you want to use this system. This can be used for implementations of the IDL:Bonobo/PropertyBag interface, as there are in theories thousands of keys that could be returned, but the method invocations on each object is short-lived, so it is efficient to just create servers to satisfy an object request on demand, and destroy them when the request is done. To create such object, you first need to create a BonoboTransient object, and then for every virtual object that you want to expose to the world, you invoke the bonobo_transient_create_objref() function to create a new CORBA object reference. bonobo_transient_new() will create a new POA inside the POA you specify (you can use CORBA_OBJECT_NIL to get the POA to be created in the default Bonobo POA). All object references created with bonobo_transient_create_objref() will live in this new POA. The bonobo_transient_new() function takes an argument that specifies the function that will be used to create the temporary CORBA servant that will satisfy an incoming request. And a function that will be used to destroy the servant when the request processing is done. The bonobo_transient_create_objref() function takes a number of arguments: The name of the object you want to create. This name will be passed to the servant creation routine when an incoming request for that object comes in. Your servant creation routine should be able to create a servant from the data you expose as the name (it can be a stringified representation of an in-process pointer for all that we care). The interface name implemented by the object named before. This is the CORBA interface name that your object implements, for example "IDL:Echo/echo:1.0". Here is an example of how to use BonoboTransient: Using BonoboTransient BonoboTransient *my_transient = NULL; static PortableServer_Servant create_servant (PortableServer_POA poa, BonoboTransient *bt, char *name, void *my_callback_data) { MyServant *servant; if (!my_validate_name (name)) return NULL; servant = g_new0 (MyServant, 1); servant->vepv = my_servant_get_epv (); servant->my_data = g_strdup ("Hello world!"); POA_My_Iface__init ((PortableServer_Servant) servant, &ev); return servant; } void destroy_servant (PortableServer_Servant servant, void *my_callback_data) { CORBA_Environment ev; g_free (servant->my_data); CORBA_exception_init (&ev); POA_My_Iface__fini (servant, &ev); CORBA_exception_free (&ev); } CORBA_Object impl_Some_Iface (PortableServer_Servant servant, CORBA_Environment *ev) { return bonobo_transient_create_objref ( my_transient, "IDL:My/Iface:1.0", "hello", ev); } void init_transient () { my_transient = bonobo_transient_new ( CORBA_OBJECT_NIL, create_servant, destroy_servant, NULL); } The previous example shows: how the my_transient object is first created, and what the implementations for the create_servant and destroy_servant look like. It does not make use of the user pointer, so it passes NULL. However, in practice, applications will most likely want to pass data here to the new_servant and destroy_servant methods. The impl_Some_Iface is a method that we assume in the example will be part of the implementation of a CORBA server. This method will be invoked at some time to get an object reference to one of the transient objects (in this case, we have called our object "hello" and it implements the interface IDL:My/Iface:1.0). BonoboPropertyBag @Param1: @Param2: @name: @data: @Returns: @servant: @data: @poa: @new_servant: @destroy_servant: @data: @Returns: @transient: @poa: @new_servant: @destroy_servant: @data: @Returns: @transient: @iface_name: @name: @ev: @Returns: libbonoboui-2.24.5/doc/api/tmpl/bonobo-plug.sgml0000664000076400007640000000312311546335132016445 00000000000000 BonoboPlug Toplevel for embedding into other processes. This is an internal support routine of the X code in Bonobo. Together with #BonoboSocket, #BonoboPlug provides the ability to embed widgets from one process into another process in a fashion that is transparent to the user. One process creates a #BonoboSocket widget and, passes the XID of that widgets window to the other process, which then creates a #BonoboPlug window with that XID. Any widgets contained in the #BonoboPlug then will appear inside the first applications window. This code is a modified copy of #GtkPlug, it is included in bonobo since this forked version could be effectively bug fixed, and integrated with the #BonoboControl / #BonoboControlframe CORBA pipe, to ensure synchronization between the X and CORBA transports. #BonoboSocket, #BonoboControlFrame. @parent_class: @dummy: @plug: @socket_id: @socket_id: @Returns: libbonoboui-2.24.5/doc/api/tmpl/libbonoboui-unused.sgml0000644000076400007640000003714211546335132020034 00000000000000 The BonoboCanvasComponent objects are used to wrap GnomeCanvasItems and export them to container applications. Typically the bonobo_component_canvas_new() function will be invoked in a callback from a BonoboEmbeddable object. Here is an example of how to export Gnome Canvas Items in a simple way. Wrapping a Gnome Canvas Item /* * Here is where the GnomeCanvasItem (in this case an ellipse) * is created and wrapped in a BonoboCanvasComponent. * * This function is invoked on demand on the embeddable * argument. Embeddables are the document model, and the * items returned are the views. */ BonoboCanvasComponent * my_item_creator (BonoboEmbeddable *embeddable, GnomeCanvas *canvas, void *data) { GnomeCanvasItem *item = gnome_canvas_item_new ( gnome_canvas_root (canvas), gnome_canvas_ellipse_get_type (), "x1", 5.0, "y1", 5.0, "x2", 95.0, "y2", 95.0, "fill_color", "white", "outline_color", "black", NULL); return bonobo_canvas_component_new (item); } /* * This is a routine that creates a BonoboEmbeddable that * uses CanvasItems. */ BonoboEmbeddable *make_embeddable (void) { return bonobo_embeddable_new_canvas_item (my_item_creator, NULL); } Applications that do not use the base #BonoboEmbeddable class, but use their own types derived from the #BonoboEmbeddable can use the bonobo_embeddable_construct() during their construction phase. On the client side (the application that will embed this component) an object of the type #BonoboCanvasItem is used. #BonoboEmbeddable, #BonoboCanvasItem Class for exporting BonoboCanvasItems through BonoboEmbeddables to other applications. BonoboCanvasComponent The Bonobo Canvas Item is a Canvas item that will allow you to embed an arbitrary Canvas Item that lives in in a remote Embeddable. On the remote end, the #BonoboCanvasComponent class is used to wrap an arbitrary #GnomeCanvasItem and export it. This allows arbitrarily shaped components to be inserted into an application. Both Xlib and AA canvas items are supported. #BonoboCanvasComponent, #BonoboEmbeddable, #BonoboObjectClient. A GNOME Canvas Item that can be used to embed remote Bonobo GNOME Canvas Items. BonoboCanvasItem The BonoboClientSite implements the Bonobo::ClientSite CORBA interface. It acts as the container-side contact for BonoboEmbeddable objects. For each object embedded in your application, you should create a BonoboClientSite object. Once you have a handle on a remote object that implements the Bonobo::Embeddable interface (typically returned by bonobo_object_activate() or bonobo_get_object () or wrapper with bonobo_object_client_from_corba ()) of type BonoboObjectClient), you will have to bind this object to the BonoboClientSite using the bonobo_client_site_bind_embeddable (). Once this is done, you will be able to request a #BonoboView on the #BonoboClientSite. The #BonoboClientSite object also provides access to the remote BonoboEmbeddable object's verb list. Sample usage This demostrates the use of the #BonoboClientSite object. This launches the object specified, creates a #BonoboClientSite, then requests a new #BonoboViewFrame and finally it returns the widget that represents that component. GtkWidget * create_widget_from_component (BonoboContainer *container, const char *id) { BonoboObjectClient *server; BonoboClientSite *client_site; BonoboViewFrame *view_frame; /* * Launch the requested component */ server = bonobo_object_activate (id, 0); if (!server){ printf ("Could not activate the server"); return NULL; } client_site = bonobo_client_site_new (app->container); /* * Add this client site to the container */ bonobo_container_add (container, BONOBO_OBJECT (client_site)); /* * Bind the component to the client site */ bonobo_client_site_bind_embeddable (client_site, server); /* * Create a new BonoboView, and then get a GtkWidget */ view_frame = bonobo_client_site_embeddable_new_view (client_site); /* * Get the widget for this view. */ return bonobo_view_frame_get_wrapper (view_frame); } #BonoboEmbeddable, #BonoboContainer, #BonoboObjectClient, #BonoboViewFrame Container side object embedding server. BonoboClientSite The BonoboTransient is used to create transient objects. These objects only exist during the lifetime of the method execution of the interface they implement: they are created on demand and destroyed after the method invocation finishes. Transient objects are an optimization useful when it is possible for a very large set of object to exist but there is no need to have implementations of the servers running all the time, as they can be created on the demand to satisfy the requests of client applications. For example, consider the case in which a large list of objects needs to be returned to a client application. For example, an object reference could be returned for every file on a directory. But it would be wasteful to keep one server running for each file. And given that the program has all the information available to create the servers on demand, you want to use this system. This can be used for implementations of the IDL:Bonobo/PropertyBag interface, as there are in theories thousands of keys that could be returned, but the method invocations on each object is short-lived, so it is efficient to just create servers to satisfy an object request on demand, and destroy them when the request is done. To create such object, you first need to create a BonoboTransient object, and then for every virtual object that you want to expose to the world, you invoke the bonobo_transient_create_objref() function to create a new CORBA object reference. bonobo_transient_new() will create a new POA inside the POA you specify (you can use CORBA_OBJECT_NIL to get the POA to be created in the default Bonobo POA). All object references created with bonobo_transient_create_objref() will live in this new POA. The bonobo_transient_new() function takes an argument that specifies the function that will be used to create the temporary CORBA servant that will satisfy an incoming request. And a function that will be used to destroy the servant when the request processing is done. The bonobo_transient_create_objref() function takes a number of arguments: The name of the object you want to create. This name will be passed to the servant creation routine when an incoming request for that object comes in. Your servant creation routine should be able to create a servant from the data you expose as the name (it can be a stringified representation of an in-process pointer for all that we care). The interface name implemented by the object named before. This is the CORBA interface name that your object implements, for example "IDL:Echo/echo:1.0". Here is an example of how to use BonoboTransient: Using BonoboTransient BonoboTransient *my_transient = NULL; static PortableServer_Servant create_servant (PortableServer_POA poa, BonoboTransient *bt, char *name, void *my_callback_data) { MyServant *servant; if (!my_validate_name (name)) return NULL; servant = g_new0 (MyServant, 1); servant->vepv = my_servant_get_epv (); servant->my_data = g_strdup ("Hello world!"); POA_My_Iface__init ((PortableServer_Servant) servant, &ev); return servant; } void destroy_servant (PortableServer_Servant servant, void *my_callback_data) { CORBA_Environment ev; g_free (servant->my_data); CORBA_exception_init (&ev); POA_My_Iface__fini (servant, &ev); CORBA_exception_free (&ev); } CORBA_Object impl_Some_Iface (PortableServer_Servant servant, CORBA_Environment *ev) { return bonobo_transient_create_objref ( my_transient, "IDL:My/Iface:1.0", "hello", ev); } void init_transient () { my_transient = bonobo_transient_new ( CORBA_OBJECT_NIL, create_servant, destroy_servant, NULL); } The previous example shows: how the my_transient object is first created, and what the implementations for the create_servant and destroy_servant look like. It does not make use of the user pointer, so it passes NULL. However, in practice, applications will most likely want to pass data here to the new_servant and destroy_servant methods. The impl_Some_Iface is a method that we assume in the example will be part of the implementation of a CORBA server. This method will be invoked at some time to get an object reference to one of the transient objects (in this case, we have called our object "hello" and it implements the interface IDL:My/Iface:1.0). BonoboPropertyBag Creates a server that will handle transient objects. BonoboTransient bonobo-ui-config-widget @bonobocanvascomponent: the object which received the signal. @arg1: @Returns: @bonobocanvascomponent: the object which received the signal. @arg1: @arg2: @bbox: The bounding box. @ev: CORBA Environment to return errors on. @bonoboclientsite: the object which received the signal. @arg1: @bonoboclientsite: the object which received the signal. @arg1: @servant: @data: @Param1: @Param2: @name: @data: @Returns: @comp: @item: @Returns: @corba_canvas_comp: @ccomp: @comp: @Returns: @comp: @opt_ev: @Returns: @comp: @mask: @cursor: @time: @opt_ev: @item: @Returns: @comp: @time: @opt_ev: @item: @x1: @y1: @x2: @y2: @is_aa: @proxy: @Returns: @client_site: @object: @Returns: @client_site: @container: @Returns: @corba_client_site: @verb_list: @client_site: @Returns: @client_site: @Returns: @client_site: @Returns: @container: @Returns: @client_site: @uic: @group: @Returns: @client_site: @uic: @Returns: @uih: @client_site: @uic: @visible_cover: @active_view: @Returns: @uih: @transient: @poa: @new_servant: @destroy_servant: @data: @Returns: @transient: @iface_name: @name: @ev: @Returns: @poa: @new_servant: @destroy_servant: @data: @Returns: libbonoboui-2.24.5/doc/api/tmpl/bonobo-client-site.sgml0000644000076400007640000001026311546335132017717 00000000000000 BonoboClientSite Container side object embedding server. The BonoboClientSite implements the Bonobo::ClientSite CORBA interface. It acts as the container-side contact for BonoboEmbeddable objects. For each object embedded in your application, you should create a BonoboClientSite object. Once you have a handle on a remote object that implements the Bonobo::Embeddable interface (typically returned by bonobo_object_activate() or bonobo_get_object () or wrapper with bonobo_object_client_from_corba ()) of type BonoboObjectClient), you will have to bind this object to the BonoboClientSite using the bonobo_client_site_bind_embeddable (). Once this is done, you will be able to request a #BonoboView on the #BonoboClientSite. The #BonoboClientSite object also provides access to the remote BonoboEmbeddable object's verb list. Sample usage This demostrates the use of the #BonoboClientSite object. This launches the object specified, creates a #BonoboClientSite, then requests a new #BonoboViewFrame and finally it returns the widget that represents that component. GtkWidget * create_widget_from_component (BonoboContainer *container, const char *id) { BonoboObjectClient *server; BonoboClientSite *client_site; BonoboViewFrame *view_frame; /* * Launch the requested component */ server = bonobo_object_activate (id, 0); if (!server){ printf ("Could not activate the server"); return NULL; } client_site = bonobo_client_site_new (app->container); /* * Add this client site to the container */ bonobo_container_add (container, BONOBO_OBJECT (client_site)); /* * Bind the component to the client site */ bonobo_client_site_bind_embeddable (client_site, server); /* * Create a new BonoboView, and then get a GtkWidget */ view_frame = bonobo_client_site_embeddable_new_view (client_site); /* * Get the widget for this view. */ return bonobo_view_frame_get_wrapper (view_frame); } #BonoboEmbeddable, #BonoboContainer, #BonoboObjectClient, #BonoboViewFrame @container: @Returns: @client_site: @container: @Returns: @corba_client_site: @client_site: @object: @Returns: @client_site: @Returns: @client_site: @Returns: @client_site: @uic: @visible_cover: @active_view: @Returns: @uih: @client_site: @uic: @Returns: @uih: @client_site: @uic: @group: @Returns: @client_site: @Returns: @verb_list: @bonoboclientsite: the object which received the signal. @arg1: @bonoboclientsite: the object which received the signal. @arg1: libbonoboui-2.24.5/doc/api/tmpl/bonobo-ui-engine-config.sgml0000664000076400007640000000342311546335132020624 00000000000000 bonobo-ui-engine-config @parent: @priv: @parent_class: @dummy: @config: @engine: @opt_parent: @Returns: @engine: @opt_parent: @Returns: @config: @config_node: @popup_engine: @Returns: @config: @path: @opt_state: @popup_engine: @popup_node: @widget: @engine: @path: @config_fn: @verb_fn: @config: @config: @config: @path: @attr: @value: @config: @path: @attr: @config: @config: @Returns: libbonoboui-2.24.5/doc/api/tmpl/bonobo-ui-component.sgml0000664000076400007640000002463111546335132020122 00000000000000 BonoboUIComponent A UI interface that handles UI merging for a component The BonoboUIComponent is the client side portion of the UI merging scheme. It should be implemented by any component that wishes to merge menus / UI. The Component object is neccessary to receive notifications from the associated #BonoboUIContainer. Notifications come in two forms - verbs and events. Verbs have an associated ( non translated ) name that is used to match them with callbacks. Events have an associated ( non translated ) id that does the same thing. Events pass a state string. Events are used for eg. toggle buttons, Verbs are used for eg. Menu items. Mostly you don't need to bother with creating your own BonoboUIComponent, if you implement a Control eg. a BonoboUIComponent is created at Control construction time and can be accessed thus: Using the UI Component associated with a control /* * For the format of the XML see bonobo/doc/xml-ui.txt * For a standard template to base your UI on see bonobo/doc/std-ui.xml */ const char my_ui_elements [] = ">placeholder name=\"FileOps\"<" " >menuitem name=\"Foo\" verb=\"FileFoo\" _label=\"Foo!\"" " _tip=\"do some foo thing\"/<" ">/placeholder<"; static void control_activate_cb (BonoboControl *object, gboolean state, gpointer user_data) { BonoboUIComponent *ui_component; /* Get UIComponent from control */ ui_component = bonobo_control_get_ui_component (control); if (state) /* Activate */ bonobo_ui_component_set_translate ( ui_component, "/menu/File", my_ui_elements, NULL); else /* De-activate */ bonobo_ui_component_unset_container (ui_component); } static void verb_foo_cb (BonoboUIComponent *ui_container, gpointer user_data, const char *cname) { BonoboControl *control = user_data; g_print ("FileFoo !\n"); } static BonoboUIVerb my_ui_verbs[] = { BONOBO_UI_VERB ("FileFoo", verb_foo_cb), BONOBO_UI_VERB_END }; BonoboObject * create_ui_control (void) { BonoboControl *control; BonoboUIComponent *ui_component; GtkWidget *widget; control = bonobo_control_new ((widget = gtk_widget_new_label ("Hello World"))); /* Automaticaly associate the remote UIContainer for us on activate */ bonobo_control_set_automerge (control, TRUE); ui_component = bonobo_control_get_ui_component (control); /* Register the verbs with the UI Component */ bonobo_ui_component_add_verb_list_with_data ( ui_component, my_ui_verbs, control); gtk_signal_connect (GTK_OBJECT (control), "activate", GTK_SIGNAL_FUNC (control_activate_cb), NULL); gtk_widget_show (widget); return BONOBO_OBJECT (control); } This sets up the UI, associates a 'FileFoo' verb with a callback, and on control activation merges the UI elements into a standard path in the file menu. There are several standard placeholders that it is important for containers to implement, basing your UI on the doc/std-ui.xml is a very good starting point. Also in the above example the _label and _tip are not cmd / widget separated - for more information read doc/ui-xml.txt. Most applications will should not use the BonoboUIComponent in this way, there is a bonobo_ui_util_set_ui that does the translation, help menu build, insertion etc. from an installed XML file. The above example is complete except for translation, which is extremely important. Here is a better activate function: A better way to create your UI static void control_activate_cb (BonoboControl *object, gboolean state, gpointer user_data) { BonoboUIComponent *ui_component; /* Get UIComponent from control */ ui_component = bonobo_control_get_ui_component (control); if (state) /* Activate */ /* * Use a helper function to setup your UI from a file: */ bonobo_ui_util_set_ui ( ui_component, MY_COMPILE_TIME_PREFIX, "GNOME_MyApp.ui", "my-app"); else /* De-activate */ bonobo_ui_component_unset_container (ui_component); } In this example "GNOME_MyApp.ui" is the correctly namespaced UI xml filename, ( see doc/NAMESPACE to register your name ), and "my-app" is the gnome application name, from which a path to your installed help files can be deduced. #BonoboUIContainer, , #BonoboControl @bonobouicomponent: the object which received the signal. @arg1: @bonobouicomponent: the object which received the signal. @arg1: @arg2: @arg3: @component: @path: @type: @state: @user_data: @component: @user_data: @cname: @parent_class: @epv: @dummy: @exec_verb: @ui_event: @freeze: @thaw: @xml_set: @xml_get: @xml_rm: @set_prop: @get_prop: @exists: @component: @name: @Returns: @name: @Returns: @void: @Returns: @component: @name: @component: @Returns: @component: @container: @opt_ev: @component: @opt_ev: @component: @Returns: @component: @cname: @fn: @user_data: @component: @cname: @closure: @component: @cname: @component: @closure: @component: @id: @fn: @user_data: @component: @id: @closure: @component: @cname: @component: @closure: @component: @path: @xml: @opt_ev: @component: @path: @xml: @opt_ev: @component: @path: @node: @ev: @component: @path: @ev: @component: @path: @ev: @Returns: @component: @path: @recurse: @opt_ev: @Returns: @component: @path: @recurse: @opt_ev: @Returns: @component: @path: @control: @opt_ev: @component: @path: @opt_ev: @Returns: @component: @path: @widget: @opt_ev: @component: @opt_ev: @component: @opt_ev: @component: @path: @prop: @value: @opt_ev: @component: @path: @prop: @opt_ev: @Returns: @component: @text: @opt_ev: @cname: @cb: @user_data: @dummy: This declares and fills a BonoboUIVerb structure suitable for use in constructing a lost of verbs to add with bonobo_ui_component_add_verb_list_with_data. @name: the verb name @cb: the callback function. This declares and fills a BonoboUIVerb structure suitable for use in constructing a lost of verbs to add with bonobo_ui_component_add_verb_list. @name: the verb name @cb: the callback function @data: some associated user_data As BONOBO_UI_VERB, but unsafely casts @cb to the correct type @name: the verb name @cb: the callback function. As BONOBO_UI_VERB_DATA, but unsafely casts @cb to the correct type @name: the verb name @cb: the callback function @data: some associated user_data The terminator BonoboUIVerb structure for a list of BonoboUIVerbs. @component: @list: @component: @list: @user_data: libbonoboui-2.24.5/doc/api/tmpl/bonobo-ui-container.sgml0000664000076400007640000000363111546335132020077 00000000000000 BonoboUIContainer The container interface as implemented for BonoboWindow A BonoboUIContainer is a very thin object, it implements the CORBA interface for doing UI merging, but none of the logic. In order to achieve the effect it is associated with a BonoboUIEngine object. Traditionaly the UI container was associated with a #BonoboWindow however, this is now strongly deprecated, since the BonoboUIContainer can be used with any #BonoboUIEngine, not just that used by BonoboWindow. Here is how your code should interact with the BonoboUIContainer How to setup a BonoboUIContainer { BonoboWindow *window; BonoboUIEngine *engine; BonoboUIContainer *container; window = BONOBO_WINDOW ( bonobo_window_new ("Window", "My Test Application")); container = bonobo_ui_container_new (); engine = bonobo_window_get_ui_engine (window); bonobo_ui_container_set_engine (container, engine); return window; } #BonoboUIComponent, #BonoboUIEngine, #BonoboWindow, #BonoboUISync, @parent: @epv: @dummy: @void: @Returns: @container: @engine: @container: @Returns: libbonoboui-2.24.5/doc/api/tmpl/bonobo-file-selector-util.sgml0000664000076400007640000000142211546335132021206 00000000000000 bonobo-file-selector-util @parent: @enable_vfs: @title: @mime_types: @default_path: @Returns: @parent: @enable_vfs: @title: @mime_types: @default_path: @Returns: @parent: @enable_vfs: @title: @mime_types: @default_path: @default_filename: @Returns: libbonoboui-2.24.5/doc/api/tmpl/bonobo-a11y.sgml0000664000076400007640000000202411546335132016250 00000000000000 bonobo-a11y @klass: @widget: @Returns: @widget: @object: @Returns: @widget_type: @gail_parent_class: @class_init: @Returns: @widget: @gail_parent_class: @class_init: @first_interface_type: @Varargs: @Returns: @a11y_object_type: @chain: @first_id: @Varargs: libbonoboui-2.24.5/doc/api/tmpl/bonobo-ui-node.sgml0000664000076400007640000000657611546335132017055 00000000000000 bonobo-ui-node Simplified XML Node manipulation API The BonoboUINode API is designed to make XML node manipulation simple, and to hide the underlying implementation of the XML tree. This is to allow the use of some more efficient internal representation than libxml's at some later date. #BonoboUIComponent, #bonobo-ui-util The BonoboUINode structure is fully opaque to stop any code depending on libxml inadvertantly. @name: @Returns: @parent: @name: @Returns: @node: @recursive: @Returns: @node: @node: @data: @node: @Returns: @node: @name: @value: @node: @name: @Returns: @node: @name: @Returns: @node: @name: @parent: @child: @after: @new_before: @node: @old_node: @new_node: @node: @content: @node: @Returns: @node: @Returns: @node: @Returns: @node: @Returns: @node: @Returns: @node: @Returns: @node: @name: @Returns: @node: @Returns: @src: @dest: @str: @node: @node: @recurse: @Returns: @str: @Returns: @filename: @Returns: libbonoboui-2.24.5/doc/api/tmpl/bonobo-selector.sgml0000664000076400007640000000421111546335132017315 00000000000000 BonoboSelector a component selector widget This #GnomeDialog allows the user to select a component implementing a set of interfaces. The easiest way to do this in your code is by using: Simple Bonobo/Control selection { char *interfaces [] = { "IDL:Bonobo/Control:1.0", NULL }; char *oaf_iid; oaf_iid = bonobo_selector_select_id ( _("Please select a Control"), interfaces); g_warning ("You selected '%s'", oaf_iid); g_free (oaf_iid); } This will throw up a dialog containing all the available components implementing the IDL:Bonobo/Control:1.0 interface and list them for the user to select. @bonoboselector: the object which received the signal. @bonoboselector: the object which received the signal. @parent_class: @ok: @cancel: @dummy: @sel: @title: @selector: @Returns: @title: @interfaces_required: @Returns: @sel: @Returns: @sel: @Returns: @sel: @Returns: @title: @interfaces_required: @Returns: libbonoboui-2.24.5/doc/api/tmpl/bonobo-control.sgml0000664000076400007640000001561311546335132017165 00000000000000 BonoboControl An implementation of the control interface for GtkWidgets The BonoboControl object implements the CORBA interface for handling remote embeddable components. A Control is a light weight, single view, arbitrarily complex 'widget'. Controls typicaly expose much of their functionality through a property bag.
The Bonobo::Control interface
A BonoboControl provides the server ( or component ) side implementation of a Control. The client that uses this control will probably use a #BonoboWidget to use the control in their program. If you want to expose your widget as a control it is very simple CORBA-ifying your GtkWidget BonoboControl *control; GtkWidget *widget; Bonobo_Unknown corba_object; widget = make_my_widget (); gtk_widget_show (widget); control = bonobo_control_new (widget); corba_object = BONOBO_OBJREF (control); The corba_object can then be passed off down the wire to anyone and the control popped into a #BonoboWidget or #BonoboControlFrame at the other end. Here is an even less useful example A pretty useless Control GtkWidget *widget; widget = gtk_button_new_with_label ("My Control"); gtk_widget_show (widget); return bonobo_control_new (widget); If you learn only one thing from this example, it should be that you need to do a gtk_widget_show on your control. It is not sufficient to do a gtk_widget_show_all on the top level of the client side, since this will not ( and should not ) propagate over to the Control. One final thing worth thinking about is activation. When a control is embedded inside a #BonoboControlFrame, it is initialy inactive. In order for the control to recieve interactive input it is neccessary to use bonobo_control_frame_activate. This signals to the control that it is activated, at which point the Control should merge any UI elements it has with the associated #BonoboUIComponent. This needs to be done every time the control is activated. #BonoboWidget, bonobo_widget_new() @bonobocontrol: the object which received the signal. @arg1: @bonobocontrol: the object which received the signal. @bonobocontrol: the object which received the signal. @bonobocontrol: the object which received the signal. @parent_class: @epv: @dummy: @plug_created: @disconnected: @set_frame: @activate: @widget: @Returns: @control: @Returns: @control: @automerge: @control: @Returns: @control: @opt_ev: @first_prop: @Varargs: @control: @opt_ev: @first_prop: @Varargs: @control: @window: @opt_ev: @control: @window: @opt_ev: @control: @widget: @Returns: @control: @Returns: @control: @component: @control: @opt_ev: @Returns: @control: @control_frame: @opt_ev: @control: @opt_ev: @Returns: @control: @pb: @opt_ev: @control: @Returns: @control: @opt_ev: @Returns: @control: @activated: @opt_ev: @x11_id: @Returns: @id: @Returns: @a: @Returns: @control: @Returns: @control: @Returns: @control: @ui_container: @control: @button: @activate_time: @Returns: @control: @parent_menu_shell: @parent_menu_item: @func: @data: @button: @activate_time: @Returns: @void: @Param1: @all_dead_callback: @control: @void: @Returns: libbonoboui-2.24.5/doc/api/tmpl/bonobo-window.sgml0000664000076400007640000000316611546335132017014 00000000000000 bonobo-window @parent_class: @dummy: @win: @ui_container: @win_name: @title: @Returns: @win_name: @title: @Returns: @win: @contents: @win: @Returns: @win: @Returns: @win: @Returns: @win: @win_name: @win: @Returns: @win: @Returns: @win: @popup: @path: @win: @path: libbonoboui-2.24.5/doc/api/tmpl/bonobo-socket.sgml0000664000076400007640000000670011546335132016772 00000000000000 BonoboSocket Container for widgets from other processes. This is an internal support routine of the X code in Bonobo. Together with #BonoboPlug, #BonoboSocket provides the ability to embed widgets from one process into another process in a fashion that is transparent to the user. One process creates a #BonoboSocket widget and, passes the XID of that widget's window to the other process, which then creates a #BonoboPlug window with that XID. Any widgets contained in the #BonoboPlug then will appear inside the first applications window. The XID of the socket's window is obtained by using the GTK_WINDOW_XWINDOW() macro from the header file <gdk/gdkx.h>. Before using this macro, the socket must have been realized, and for hence, have been added to its parent. Obtaining the XID of a socket #include <gdk/gdkx.h> GtkWidget *socket = bonobo_socket_new(); gtk_widget_show (socket); gtk_container_add (GTK_CONTAINER (parent), socket); /* The following call is only necessary if one of * the ancestors of the socket is not yet visible. */ gtk_widget_realize (socket); g_print ("The XID of the sockets window is %#x\n", GDK_WINDOW_XWINDOW (socket->window)); Note that if you pass the XID of the socket to another process that will create a plug in the socket, you must make sure that the socket widget is not destroyed until that plug is created. Violating this rule will cause unpredictable consequences, the most likely consequence being that the plug will appear as a separate toplevel window. You can check if the plug has been created by examining the plug_window field of the #BonoboSocket structure. If this field is non-NULL, then the plug has been succesfully created inside of the socket. When GTK+ is notified that the embedded window has been destroyed, then it will destroy the socket as well. You should always, therefore, be prepared for your sockets to be destroyed at any time when the main event loop is running. A socket can also be used to swallow arbitrary pre-existing top-level windows using gtk_socket_steal(), though the integration when this is done will not be as close as between a #BonoboPlug and a #BonoboSocket. #BonoboPlug the widget that plugs into a #BonoboSocket. The #GtkEditable structure contains the following field. (This field should be considered read-only. It should never be set by an application.) #GdkWindow *plug_window; the window embedded inside this #GtkSocket. @parent_class: @dummy: @void: @Returns: libbonoboui-2.24.5/doc/api/tmpl/bonobo-wrapper.sgml0000664000076400007640000000176111546335132017164 00000000000000 bonobo-wrapper @bin: @priv: @parent_class: @void: @Returns: @wrapper: @covered: @wrapper: @Returns: @wrapper: @Returns: @wrapper: @visible: libbonoboui-2.24.5/doc/api/tmpl/bonobo-ui-main.sgml0000664000076400007640000000234411546335132017041 00000000000000 bonobo-ui-main @void: @Returns: @void: @Returns: @void: @Returns: @app_name: @app_version: @argc: @argv: @Returns: @void: @app_name: @app_version: @argc: @argv: @orb: @poa: @manager: @full_init: @Returns: @void: @void: @Returns: libbonoboui-2.24.5/doc/api/tmpl/bonobo-property-control.sgml0000664000076400007640000000307611546335132021047 00000000000000 bonobo-property-control @bonobopropertycontrol: the object which received the signal. @arg1: @arg2: @control: @page_number: @closure: @Returns: @parent_class: @epv: @dummy: @action: @property_control: @event_source: @get_fn: @num_pages: @closure: @Returns: @get_fn: @num_pages: @event_source: @closure: @Returns: @get_fn: @num_pages: @closure: @Returns: @property_control: @opt_ev: @property_control: @Returns: libbonoboui-2.24.5/doc/std-ui.xml0000644000076400007640000001760711173072741013552 00000000000000 libbonoboui-2.24.5/doc/object-hierarchy.txt0000644000076400007640000000222111173072741015570 00000000000000BonoboUI Object Hierarchy ------------------------- GObject +--- BonoboObject +--- BonoboControl +--- BonoboControlFrame +--- BonoboZoomableFrame +--- BonoboZoomable +--- BonoboCanvasComponent +--- BonoboPropertyControl +--- BonoboUIComponent +--- BonoboUIContainer +--- BonoboUIEngineConfig +--- BonoboUIEngine +--- BonoboUISync +--- BonoboUISyncToolbar +--- BonoboUISyncStatus +--- BonoboUISyncMenu +--- BonoboUISyncKeys GtkWindow +--- BonoboWindow GtkBin +--- BonoboWidget +--- BonoboWrapper +--- BonoboUIToolbarItem +--- BonoboUIToolbarSeparatorItem +--- BonoboUIToolbarButtonItem +--- BonoboUIToolbarControlItem +--- BonoboUIToolbarToggleButtonItem +--- BonoboUIToolbarPopupItem +--- BonoboDockItem +--- BonoboDockLayoutItem GtkContainer +--- BonoboUIToolbar +--- BonoboDock +--- BonoboDockBand GtkDialog +--- BonoboSelector GtkVBox +--- BonoboSelectorWidget +--- BonoboUIConfigWidget GtkPlug +--- BonoboPlug GtkSocket +--- BonoboSocket GnomeCanvasItem +--- BonoboCanvasItem libbonoboui-2.24.5/doc/README0000644000076400007640000000000011173072741012456 00000000000000libbonoboui-2.24.5/doc/compdoc.html0000644000076400007640000002632511173072741014132 00000000000000 Overview:

The Bonobo Compound Document Interfaces were originally modeled after the associated COM interfaces.  It has become clear that they do not provide much utility in their current form.  They have been largely unused to this point, so the Gnome 2 platform shift gives us an opportunity to revamp the interfaces and set them on a path that is more consistent with the rest of Bonobo.

This document is an attempt to identify the requirements for a compound document architecture and propose a solution which is more in line with the rest of the bonobo interfaces.

What are compound documents?

A compound document is obviously an aggregation of multiple sub-documents.  The sub-documents are implemented as standalone components.  A set of interfaces is necessary to allow the components to expose both their model characteristics to container documents and their display characteristics to container views.  With these generalized interfaces, it is possible to write simple container applications that can unleash the power  of specialized components while remaining ignorant of the components' purpose.  The container need only know how to perform the following operations on subcomponents.
 

Activation:
A container must be able to query for subcomponents which provide the container's preferred rendering model (canvas vs. widget).  A Control implementation should be provided for ease of identifying embeddable subcomponents.  The control should perform component activation and provide a reference to the selected subcomponent via an event.  Linking of subcomponents via the Clipboard/Drag'nDrop is also necessary.  Using a moniker based scheme is the clear choice for this capability.  The design and implementation of this new capability is being performed in parallel to this compound document effort.
 
WYSIWYG Display/Print rendering:
A subcomponent must be capable of rendering itself in a WYSIWYG fashion using GNOME rendering technology.  Components should expose factories to obtain a canvas or widget based "view" reference which can be embedded into a document view.  Similarly, an interface to provide print rendering is necessary.

Uniform zooming of subcomponents is accomplished through the size request/size allocation cycle on the plug/socket interfaces.  Components request their size in points based on their full extent at 100% zoom. The container can then factor in manual resizing of the component and scale the allocation by the current zoom factor of the document. The component then scales itself to utilize the allocated space.  If the component's unscaled dimensional requirements change due to editing, for example if a new line of text is added to a text control, the component view should emit a new size request (again in points and based on 100% zoom) so that the container can reallocate space and perform any additional layout tasks it deems necessary.

The above zooming mechanism is made more complicated because the current size request mechanism is integer/pixel based, and we need point based granularity using floating point values.  We already have a mechanism to perform this transformation, GnomeCanvasWidget.  The canvas also incorporates an easy to use zooming mechanism.

Another consideration is whether user resizing of a subcomponent should scale the component view, or crop it.  Word, for example, uses a cropping paradigm, where the zoom of the component is not impacted, and only the visible extent of the document changes as the user resizes the component.  While it is somewhat counterintuitive to show only a portion of a subcomponent, we must recognize that some users may be used to this sort of behavior and consider providing an alternative mechanism to perform this operation.

Perhaps subcomponents could expose a standard property to identify if they support cropping.  A zoom_factor property would also be necessary so that when the container sets a new size allocation, the component could render its visible extent at a given zoom factor for the specified size allocation.

The subcomponent must support at least a subset of its editing capabilities via "in-place" activation of its view controls.  The subcomponent should merge UI elements into the container's UI to provide an embedded editing capability.  It is not necessary to provide all of the editing functionality that the subcomponent's native application provides, however.

Where possible, a subcomponent should support both canvas and widget based view controls.  Until such time as the widget infrastructure becomes more canvas-like, it is anticipated that canvas based subcomponents will be more useful.  It is hard to imagine an acceptable document layout implementation using tables and boxes.  The canvas is currently better suited to the fine positioning and sizing requirements of a document application.

Persistence:
A subcomponent must be able to save and restore its state via a predictable interface.  A compound document container must be able to serialize the state information for all of its subcomponents. The subcomponent must also have a mechanism to notify the container when the component has changed since its state was saved last.


The Original Compound Document interfaces:

The following interfaces represent the compound document architecture as of bonobo-1.0.  They are primarily unused as of GNOME 1.4 and have very little utility.  Clearly, wholesale restructuring is required.

  • ClientSite:  A client helper object which "binds" to the remote Embeddable object.  The interface exposes 3 methods, none of which provide any utility to a remote component.:
    • getContainer():  There is nothing useful that a remote component can do with the ClientSite's parent container.
    • showWindow(): Is to notify the client if a containee wants to show its own separate editing window.
    • saveObject(): This should be accomplished by QI for the component's persist interfaces.
  • View: A Control subclass that exposes one addition zooming method.  Zooming is a complex issue as described above, but View::setZoomFactor is not a desirable way to manage this. A zoom_factor property would be better.
  • ViewFrame: A ControlFrame subclass with the dubious method, getClientSite.  As displayed above, there's not much point to obtaining a ClientSite ref.
  • Embeddable: The sub-document model object interface.  It exposes the following methods:
    • setClientSite: If the ClientSite is worthless to the Embeddable, why would it care?
    • getClientSite: Ditto.
    • setHostName: Documented as being useful for labeling separate editing window.  Since an Embeddable need never open such a beast, there's no need to label it.
    • setURI:  the URI this component represents.  If this is really necessary, a property would be more appropriate.
    • close:  The normal ref counting mechanism should cause clean shutdown of Embeddables.  Besides, there is no way a container could know if  it is the sole user of a component and is allowed to shut it down.
    • advise: This is COM/OLE cruft that if it were needed would be better provided in Bonobo by an EventSource.
    • unadvise: Ditto.
    • getMiscStatus:  Undocumented, and it's hard to imagine what need this could possible fill.
    • createView: Useful, but misplaced here.  This should be in its own queryable interface so that containers can determine the view capabilities of potential embeddables prior to activation.
    • createCanvasItem: Also useful, and similarly misplaced.
The above interfaces are inconsistent with the current bonobo direction of minimizing client-side helper objects.  In the View/ViewFrame case, they are so thin a wrapper around the Control interfaces as to be virtually indistinguishable from them, save by name.  The ClientSite, View, and ViewFrame interfaces can be eliminated outright.  The useful bits of Embeddable need to be split out into queryable interfaces, so it too can be eliminated.

Proposed Compound Document Interfaces:

The two useful methods from Embeddable will be split out into their own interfaces.  Since the View Interface was so thin, the comparable interface will instead return a control and the ControlFrame implementation can be easily used to provide a proper Socket subclass.

interface ControlFactory {
     Control    createControl (in ControlFrame frame,
                               in UIContainer uic);
};

interface CanvasComponentFactory {
    Canvas::Component    createCanvasComponent (in boolean aa,
                                                in Canvas::ComponentProxy proxy);
};

Dirty status is obtainable via the persist interfaces, but is currently duplicated in all the Persist subclasses.  This method will be moved to Bonobo::Persist to eliminate duplication. Parallel discussions are occuring regarding Cut/Paste Drag/Drop related enhancements to the persist interfaces.  These enhancements will provide even more utility to the container for managing subcomponents, and will form the basis for linking in the compound document environment.  Persist and its subclasses are the workhorses for the model side of compound documents.

Any component wishing to be considered compound document ready would need to expose at a minimum, one of the above "view" interface factories, and either PersistStream or PersistStorage for save/load.  Additionally, The existing Print interface should be exposed to provide a print rendering capability.  The above interfaces should be sufficient for containers to layout and render subcomponents and manage their persistence.
 

libbonoboui-2.24.5/doc/Makefile.in0000664000076400007640000004340211546334700013662 00000000000000# Makefile.in generated by automake 1.11.1 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, # Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY, to the extent permitted by law; without # even the implied warranty of MERCHANTABILITY or FITNESS FOR A # PARTICULAR PURPOSE. @SET_MAKE@ VPATH = @srcdir@ pkgdatadir = $(datadir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ pkglibdir = $(libdir)/@PACKAGE@ pkglibexecdir = $(libexecdir)/@PACKAGE@ am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd install_sh_DATA = $(install_sh) -c -m 644 install_sh_PROGRAM = $(install_sh) -c install_sh_SCRIPT = $(install_sh) -c INSTALL_HEADER = $(INSTALL_DATA) transform = $(program_transform_name) NORMAL_INSTALL = : PRE_INSTALL = : POST_INSTALL = : NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : build_triplet = @build@ host_triplet = @host@ subdir = doc DIST_COMMON = README $(srcdir)/Makefile.am $(srcdir)/Makefile.in ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/configure.in am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs CONFIG_HEADER = $(top_builddir)/config.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = SOURCES = DIST_SOURCES = RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \ html-recursive info-recursive install-data-recursive \ install-dvi-recursive install-exec-recursive \ install-html-recursive install-info-recursive \ install-pdf-recursive install-ps-recursive install-recursive \ installcheck-recursive installdirs-recursive pdf-recursive \ ps-recursive uninstall-recursive RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \ distclean-recursive maintainer-clean-recursive AM_RECURSIVE_TARGETS = $(RECURSIVE_TARGETS:-recursive=) \ $(RECURSIVE_CLEAN_TARGETS:-recursive=) tags TAGS ctags CTAGS \ distdir ETAGS = etags CTAGS = ctags DIST_SUBDIRS = $(SUBDIRS) DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) am__relativize = \ dir0=`pwd`; \ sed_first='s,^\([^/]*\)/.*$$,\1,'; \ sed_rest='s,^[^/]*/*,,'; \ sed_last='s,^.*/\([^/]*\)$$,\1,'; \ sed_butlast='s,/*[^/]*$$,,'; \ while test -n "$$dir1"; do \ first=`echo "$$dir1" | sed -e "$$sed_first"`; \ if test "$$first" != "."; then \ if test "$$first" = ".."; then \ dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \ dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \ else \ first2=`echo "$$dir2" | sed -e "$$sed_first"`; \ if test "$$first2" = "$$first"; then \ dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \ else \ dir2="../$$dir2"; \ fi; \ dir0="$$dir0"/"$$first"; \ fi; \ fi; \ dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \ done; \ reldir="$$dir2" ACLOCAL = @ACLOCAL@ ACLOCAL_AMFLAGS = @ACLOCAL_AMFLAGS@ ALL_LINGUAS = @ALL_LINGUAS@ AMTAR = @AMTAR@ AR = @AR@ AS = @AS@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ AWK = @AWK@ BONOBOUI_CFLAGS = @BONOBOUI_CFLAGS@ BONOBOUI_GLADE_CFLAGS = @BONOBOUI_GLADE_CFLAGS@ BONOBOUI_GLADE_LIBS = @BONOBOUI_GLADE_LIBS@ BONOBOUI_LIBS = @BONOBOUI_LIBS@ BONOBOUI_SINGLE_INCLUDES = @BONOBOUI_SINGLE_INCLUDES@ CATALOGS = @CATALOGS@ CATOBJEXT = @CATOBJEXT@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ CYGPATH_W = @CYGPATH_W@ DATADIRNAME = @DATADIRNAME@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DUMPBIN = @DUMPBIN@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_MKENUMS = @GLIB_MKENUMS@ GMOFILES = @GMOFILES@ GMSGFMT = @GMSGFMT@ GREP = @GREP@ GTKDOC_CHECK = @GTKDOC_CHECK@ GTKDOC_MKPDF = @GTKDOC_MKPDF@ GTKDOC_REBASE = @GTKDOC_REBASE@ HTML_DIR = @HTML_DIR@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INSTOBJEXT = @INSTOBJEXT@ INTLLIBS = @INTLLIBS@ INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@ INTLTOOL_MERGE = @INTLTOOL_MERGE@ INTLTOOL_PERL = @INTLTOOL_PERL@ INTLTOOL_UPDATE = @INTLTOOL_UPDATE@ LD = @LD@ LDFLAGS = @LDFLAGS@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIPO = @LIPO@ LN_S = @LN_S@ LTLIBOBJS = @LTLIBOBJS@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MKDIR_P = @MKDIR_P@ MKINSTALLDIRS = @MKINSTALLDIRS@ MSGFMT = @MSGFMT@ MSGFMT_OPTS = @MSGFMT_OPTS@ MSGMERGE = @MSGMERGE@ NM = @NM@ NMEDIT = @NMEDIT@ OBJDUMP = @OBJDUMP@ OBJEXT = @OBJEXT@ OTOOL = @OTOOL@ OTOOL64 = @OTOOL64@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_URL = @PACKAGE_URL@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ PATH_TO_XRDB = @PATH_TO_XRDB@ PKG_CONFIG = @PKG_CONFIG@ POFILES = @POFILES@ POPT_LIBS = @POPT_LIBS@ POSUB = @POSUB@ PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@ PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@ RANLIB = @RANLIB@ SED = @SED@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ STRIP = @STRIP@ USE_NLS = @USE_NLS@ VERSION = @VERSION@ WARN_CFLAGS = @WARN_CFLAGS@ XGETTEXT = @XGETTEXT@ XMKMF = @XMKMF@ X_CFLAGS = @X_CFLAGS@ X_EXTRA_LIBS = @X_EXTRA_LIBS@ X_LIBS = @X_LIBS@ X_PRE_LIBS = @X_PRE_LIBS@ YACC = @YACC@ YFLAGS = @YFLAGS@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ abs_top_srcdir = @abs_top_srcdir@ ac_ct_CC = @ac_ct_CC@ ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ am__include = @am__include@ am__leading_dot = @am__leading_dot@ am__quote = @am__quote@ am__tar = @am__tar@ am__untar = @am__untar@ bindir = @bindir@ build = @build@ build_alias = @build_alias@ build_cpu = @build_cpu@ build_os = @build_os@ build_vendor = @build_vendor@ builddir = @builddir@ datadir = @datadir@ datarootdir = @datarootdir@ docdir = @docdir@ dvidir = @dvidir@ exec_prefix = @exec_prefix@ host = @host@ host_alias = @host_alias@ host_cpu = @host_cpu@ host_os = @host_os@ host_vendor = @host_vendor@ htmldir = @htmldir@ includedir = @includedir@ infodir = @infodir@ install_sh = @install_sh@ libdir = @libdir@ libexecdir = @libexecdir@ localedir = @localedir@ localstatedir = @localstatedir@ lt_ECHO = @lt_ECHO@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ sysconfdir = @sysconfdir@ target_alias = @target_alias@ top_build_prefix = @top_build_prefix@ top_builddir = @top_builddir@ top_srcdir = @top_srcdir@ SUBDIRS = api text_files = \ README \ object-hierarchy.txt \ ui-across-boundaries.txt \ control.txt \ compdoc.html \ std-ui.xml \ ui-faq.txt \ ui-xml.txt \ bonobo.dtd EXTRA_DIST = $(text_files) all: all-recursive .SUFFIXES: $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps) @for dep in $?; do \ case '$(am__configure_deps)' in \ *$$dep*) \ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ && { if test -f $@; then exit 0; else break; fi; }; \ exit 1;; \ esac; \ done; \ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign doc/Makefile'; \ $(am__cd) $(top_srcdir) && \ $(AUTOMAKE) --foreign doc/Makefile .PRECIOUS: Makefile Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status @case '$?' in \ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(am__aclocal_m4_deps): mostlyclean-libtool: -rm -f *.lo clean-libtool: -rm -rf .libs _libs # This directory's subdirectories are mostly independent; you can cd # into them and run `make' without going through this Makefile. # To change the values of `make' variables: instead of editing Makefiles, # (1) if the variable is set in `config.status', edit `config.status' # (which will cause the Makefiles to be regenerated when you run `make'); # (2) otherwise, pass the desired values on the `make' command line. $(RECURSIVE_TARGETS): @fail= failcom='exit 1'; \ for f in x $$MAKEFLAGS; do \ case $$f in \ *=* | --[!k]*);; \ *k*) failcom='fail=yes';; \ esac; \ done; \ dot_seen=no; \ target=`echo $@ | sed s/-recursive//`; \ list='$(SUBDIRS)'; for subdir in $$list; do \ echo "Making $$target in $$subdir"; \ if test "$$subdir" = "."; then \ dot_seen=yes; \ local_target="$$target-am"; \ else \ local_target="$$target"; \ fi; \ ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ || eval $$failcom; \ done; \ if test "$$dot_seen" = "no"; then \ $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \ fi; test -z "$$fail" $(RECURSIVE_CLEAN_TARGETS): @fail= failcom='exit 1'; \ for f in x $$MAKEFLAGS; do \ case $$f in \ *=* | --[!k]*);; \ *k*) failcom='fail=yes';; \ esac; \ done; \ dot_seen=no; \ case "$@" in \ distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \ *) list='$(SUBDIRS)' ;; \ esac; \ rev=''; for subdir in $$list; do \ if test "$$subdir" = "."; then :; else \ rev="$$subdir $$rev"; \ fi; \ done; \ rev="$$rev ."; \ target=`echo $@ | sed s/-recursive//`; \ for subdir in $$rev; do \ echo "Making $$target in $$subdir"; \ if test "$$subdir" = "."; then \ local_target="$$target-am"; \ else \ local_target="$$target"; \ fi; \ ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ || eval $$failcom; \ done && test -z "$$fail" tags-recursive: list='$(SUBDIRS)'; for subdir in $$list; do \ test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \ done ctags-recursive: list='$(SUBDIRS)'; for subdir in $$list; do \ test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \ done ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ END { if (nonempty) { for (i in files) print i; }; }'`; \ mkid -fID $$unique tags: TAGS TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) set x; \ here=`pwd`; \ if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \ include_option=--etags-include; \ empty_fix=.; \ else \ include_option=--include; \ empty_fix=; \ fi; \ list='$(SUBDIRS)'; for subdir in $$list; do \ if test "$$subdir" = .; then :; else \ test ! -f $$subdir/TAGS || \ set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \ fi; \ done; \ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ END { if (nonempty) { for (i in files) print i; }; }'`; \ shift; \ if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ test -n "$$unique" || unique=$$empty_fix; \ if test $$# -gt 0; then \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ "$$@" $$unique; \ else \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ $$unique; \ fi; \ fi ctags: CTAGS CTAGS: ctags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ END { if (nonempty) { for (i in files) print i; }; }'`; \ test -z "$(CTAGS_ARGS)$$unique" \ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ $$unique GTAGS: here=`$(am__cd) $(top_builddir) && pwd` \ && $(am__cd) $(top_srcdir) \ && gtags -i $(GTAGS_ARGS) "$$here" distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ dist_files=`for file in $$list; do echo $$file; done | \ sed -e "s|^$$srcdirstrip/||;t" \ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ case $$dist_files in \ */*) $(MKDIR_P) `echo "$$dist_files" | \ sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ sort -u` ;; \ esac; \ for file in $$dist_files; do \ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ if test -d $$d/$$file; then \ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ if test -d "$(distdir)/$$file"; then \ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ else \ test -f "$(distdir)/$$file" \ || cp -p $$d/$$file "$(distdir)/$$file" \ || exit 1; \ fi; \ done @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \ if test "$$subdir" = .; then :; else \ test -d "$(distdir)/$$subdir" \ || $(MKDIR_P) "$(distdir)/$$subdir" \ || exit 1; \ fi; \ done @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \ if test "$$subdir" = .; then :; else \ dir1=$$subdir; dir2="$(distdir)/$$subdir"; \ $(am__relativize); \ new_distdir=$$reldir; \ dir1=$$subdir; dir2="$(top_distdir)"; \ $(am__relativize); \ new_top_distdir=$$reldir; \ echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \ echo " am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \ ($(am__cd) $$subdir && \ $(MAKE) $(AM_MAKEFLAGS) \ top_distdir="$$new_top_distdir" \ distdir="$$new_distdir" \ am__remove_distdir=: \ am__skip_length_check=: \ am__skip_mode_fix=: \ distdir) \ || exit 1; \ fi; \ done check-am: all-am check: check-recursive all-am: Makefile installdirs: installdirs-recursive installdirs-am: install: install-recursive install-exec: install-exec-recursive install-data: install-data-recursive uninstall: uninstall-recursive install-am: all-am @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am installcheck: installcheck-recursive install-strip: $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ `test -z '$(STRIP)' || \ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install mostlyclean-generic: clean-generic: distclean-generic: -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) maintainer-clean-generic: @echo "This command is intended for maintainers to use" @echo "it deletes files that may require special tools to rebuild." clean: clean-recursive clean-am: clean-generic clean-libtool mostlyclean-am distclean: distclean-recursive -rm -f Makefile distclean-am: clean-am distclean-generic distclean-tags dvi: dvi-recursive dvi-am: html: html-recursive html-am: info: info-recursive info-am: install-data-am: install-dvi: install-dvi-recursive install-dvi-am: install-exec-am: install-html: install-html-recursive install-html-am: install-info: install-info-recursive install-info-am: install-man: install-pdf: install-pdf-recursive install-pdf-am: install-ps: install-ps-recursive install-ps-am: installcheck-am: maintainer-clean: maintainer-clean-recursive -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic mostlyclean: mostlyclean-recursive mostlyclean-am: mostlyclean-generic mostlyclean-libtool pdf: pdf-recursive pdf-am: ps: ps-recursive ps-am: uninstall-am: .MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) ctags-recursive \ install-am install-strip tags-recursive .PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \ all all-am check check-am clean clean-generic clean-libtool \ ctags ctags-recursive distclean distclean-generic \ distclean-libtool distclean-tags distdir dvi dvi-am html \ html-am info info-am install install-am install-data \ install-data-am install-dvi install-dvi-am install-exec \ install-exec-am install-html install-html-am install-info \ install-info-am install-man install-pdf install-pdf-am \ install-ps install-ps-am install-strip installcheck \ installcheck-am installdirs installdirs-am maintainer-clean \ maintainer-clean-generic mostlyclean mostlyclean-generic \ mostlyclean-libtool pdf pdf-am ps ps-am tags tags-recursive \ uninstall uninstall-am # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. .NOEXPORT: libbonoboui-2.24.5/doc/bonobo.dtd0000644000076400007640000000455011173072741013567 00000000000000 libbonoboui-2.24.5/doc/control.txt0000644000076400007640000001160611173072741014035 00000000000000A discussion of a control's lifecycle - 0.1 Michael Meeks * Overview With a control we have a relatively complicated situation, with several Bonobo and Gtk objects all associated loosely. It is important to codify carefuly what is involved in the various interactions: ControlFrame <-> Socket ^ ^ | | CORBA X | | v v Control <------> Plug * Creation interaction (A) ** Out of proc. 1. Control creation 2. Passes it's reference 3. _control_frame_new 4. creates ControlFrame 5. creates Socket 6. _control_frame_bind_to_control 7. takes a C. Control ref. 8. Control->setFrame 9. takes a C. control_frame ref 10. -- socket realize -- Control->setWindowId ** In proc 1. Control creation 2. Passes it's reference 3. _control_frame_new 4. creates ControlFrame 5. creates Socket 6. _control_frame_bind_to_control 7. takes a C. Control ref. 8. Control->setFrame 9. takes a C. control_frame ref 10. Sets up in-proc references to each other. 11. -- socket realize -- Control->setWindowId * Steady state referencing ControlFrame: GObject ref -> Socket Socket: Bonobo ref -> ControlFrame ControlFrame: Bonobo ref -> Control ---------------------------------- Control: CORBA ref -> ControlFrame Control: GObject ref -> Plug Plug: Bonobo ref -> Control NB. The plug only holds it's bonobo ref on the control when it's realized. * Destruction interaction (B1) ** Out of proc Toplevel gtk_widget_destroy. 1. Socket dispose 2. unset control (B. unref) 3. Bonobo unref Control 4. got unref <--. and: | interchangeable 5. X connection broken <--' 6. Instantiate glib mainloop idle handler: Note 1. ... 7. unref plug -> dispose 8. plug unset control frame 9. plug C. unref ControlFrame ** Note 1. As Darin points out, the connection broken signal can occur 'inside' or during a CORBA method leading to some confusion. Thus it is best to delay the actual destruction invocations until the glib mainloop is hit. ** In proc Toplevel gtk_widget_destroy. 1. Socket dispose 2. unset control (B. unref) 3. Bonobo. unref Control if we have a plug: 4. gtk_widget_destroy plug 5. plug unset control frame 6. plug B. unref ControlFrame else: 4. B. unref Control Leaves: unref Control, [ finalized plug ] finalized socket, unref ControlFrame * Destruction interaction (B2) Fatal error: ControlFrame dies. 1. Fatal ControlFrame error; B1 - 4,5,6,7,8,9 Leaves: finalized plug, unref Control finalized socket, unref ControlFrame * Destruction interaction (B3) Fatal error: Control dies. [ don't destroy socket, it holds our place in the widget hierarchy for any re-started control ]. 1. Fatal Control error; 2. connection broken <--. and: interchangeable Note 3. | 3. X connection broken <--' ** Note 3. X connection broken yields no signal. CORBA connection broken invokes 'broken' on control->connection When we have both - track in the ControlFrame; unref socket. * Destruction interaction (B4) Client remove of Control (?) Minority usefuleness; FIXME - work out. * Size request interaction (CX) * Size request interaction (CB) * Sensitivity interaction () * CORBA connection 'broken' signal This signal is totaly unaffected by CORBA reference counting, and will happily leave an object with a broken connection - but we'll get a nice signal. We only get this signal quickly using Unix Domain Sockets, this manifests itself as a HUP under Linux and a POLL_IN + 0 length or erroneous read under Solaris / others. * FIXME: Consider the effect of extraneous Bonobo or CORBA refs on both the Control and ControlFrame references - and their affect on the destruction sequence. Consider the local case - are there any obvious optimizations possible / neccessary here; we don't get a 'broken' signal, but we get Gtk+ signals instead. We can reliably detect this by a lack of connection on the Bonobo_Unknown references though. [ unless we have invoked an async method on them ]. But also possibly from plug->socket_window and socket->plug_window [ these may race ]. Consider the 'activation' side of it all; what does activation entail, and what happens in failure modes. Consider how a BonoboWidget might correctly hold onto a child widget, and possibly it's control frame ? * Work out what to do if we die without having had our X11 ID set, we need to kill ourselves if the connection dies; _but_ what if we're local anyway ? how can we tell ? - we need to have local hacks - and have a reference to the BonoboControlFrame inside our BonoboControl etc. libbonoboui-2.24.5/libbonoboui.h0000644000076400007640000000231011173072741013513 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ /** * Main include file for the Bonobo component model UI section * * Authors: * Miguel de Icaza (miguel@ximian.com) * Michael Meeks (michael@ximian.com) * * Copyright 2001 Ximian, Inc. */ #ifndef LIBBONOBOUI_H #define LIBBONOBOUI_H 1 #include G_BEGIN_DECLS #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include G_END_DECLS #endif /* LIBBONOBOUI_H */ libbonoboui-2.24.5/COPYING0000644000076400007640000004311011173072741012075 00000000000000 GNU GENERAL PUBLIC LICENSE Version 2, June 1991 Copyright (C) 1989, 1991 Free Software Foundation, Inc. 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. Preamble The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users. This General Public License applies to most of the Free Software Foundation's software and to any other program whose authors commit to using it. (Some other Free Software Foundation software is covered by the GNU Library General Public License instead.) You can apply it to your programs, too. When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs; and that you know you can do these things. To protect your rights, we need to make restrictions that forbid anyone to deny you these rights or to ask you to surrender the rights. These restrictions translate to certain responsibilities for you if you distribute copies of the software, or if you modify it. For example, if you distribute copies of such a program, whether gratis or for a fee, you must give the recipients all the rights that you have. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights. We protect your rights with two steps: (1) copyright the software, and (2) offer you this license which gives you legal permission to copy, distribute and/or modify the software. Also, for each author's protection and ours, we want to make certain that everyone understands that there is no warranty for this free software. If the software is modified by someone else and passed on, we want its recipients to know that what they have is not the original, so that any problems introduced by others will not reflect on the original authors' reputations. Finally, any free program is threatened constantly by software patents. We wish to avoid the danger that redistributors of a free program will individually obtain patent licenses, in effect making the program proprietary. To prevent this, we have made it clear that any patent must be licensed for everyone's free use or not licensed at all. The precise terms and conditions for copying, distribution and modification follow. GNU GENERAL PUBLIC LICENSE TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION 0. This License applies to any program or other work which contains a notice placed by the copyright holder saying it may be distributed under the terms of this General Public License. The "Program", below, refers to any such program or work, and a "work based on the Program" means either the Program or any derivative work under copyright law: that is to say, a work containing the Program or a portion of it, either verbatim or with modifications and/or translated into another language. (Hereinafter, translation is included without limitation in the term "modification".) Each licensee is addressed as "you". Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running the Program is not restricted, and the output from the Program is covered only if its contents constitute a work based on the Program (independent of having been made by running the Program). Whether that is true depends on what the Program does. 1. You may copy and distribute verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and give any other recipients of the Program a copy of this License along with the Program. You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee. 2. You may modify your copy or copies of the Program or any portion of it, thus forming a work based on the Program, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions: a) You must cause the modified files to carry prominent notices stating that you changed the files and the date of any change. b) You must cause any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License. c) If the modified program normally reads commands interactively when run, you must cause it, when started running for such interactive use in the most ordinary way, to print or display an announcement including an appropriate copyright notice and a notice that there is no warranty (or else, saying that you provide a warranty) and that users may redistribute the program under these conditions, and telling the user how to view a copy of this License. (Exception: if the Program itself is interactive but does not normally print such an announcement, your work based on the Program is not required to print an announcement.) These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Program, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Program, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it. Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Program. In addition, mere aggregation of another work not based on the Program with the Program (or with a work based on the Program) on a volume of a storage or distribution medium does not bring the other work under the scope of this License. 3. You may copy and distribute the Program (or a work based on it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you also do one of the following: a) Accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, b) Accompany it with a written offer, valid for at least three years, to give any third party, for a charge no more than your cost of physically performing source distribution, a complete machine-readable copy of the corresponding source code, to be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, c) Accompany it with the information you received as to the offer to distribute corresponding source code. (This alternative is allowed only for noncommercial distribution and only if you received the program in object code or executable form with such an offer, in accord with Subsection b above.) The source code for a work means the preferred form of the work for making modifications to it. For an executable work, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the executable. However, as a special exception, the source code distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable. If distribution of executable or object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place counts as distribution of the source code, even though third parties are not compelled to copy the source along with the object code. 4. You may not copy, modify, sublicense, or distribute the Program except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense or distribute the Program is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance. 5. You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Program or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Program (or any work based on the Program), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Program or works based on it. 6. Each time you redistribute the Program (or any work based on the Program), the recipient automatically receives a license from the original licensor to copy, distribute or modify the Program subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties to this License. 7. If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Program at all. For example, if a patent license would not permit royalty-free redistribution of the Program by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Program. If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply and the section as a whole is intended to apply in other circumstances. It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system, which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice. This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License. 8. If the distribution and/or use of the Program is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Program under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License. 9. The Free Software Foundation may publish revised and/or new versions of the General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. Each version is given a distinguishing version number. If the Program specifies a version number of this License which applies to it and "any later version", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of this License, you may choose any version ever published by the Free Software Foundation. 10. If you wish to incorporate parts of the Program into other free programs whose distribution conditions are different, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally. NO WARRANTY 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. END OF TERMS AND CONDITIONS How to Apply These Terms to Your New Programs If you develop a new program, and you want it to be of the greatest possible use to the public, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms. To do so, attach the following notices to the program. It is safest to attach them to the start of each source file to most effectively convey the exclusion of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found. Copyright (C) This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA Also add information on how to contact you by electronic and paper mail. If the program is interactive, make it output a short notice like this when it starts in an interactive mode: Gnomovision version 69, Copyright (C) year name of author Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. This is free software, and you are welcome to redistribute it under certain conditions; type `show c' for details. The hypothetical commands `show w' and `show c' should show the appropriate parts of the General Public License. Of course, the commands you use may be called something other than `show w' and `show c'; they could even be mouse-clicks or menu items--whatever suits your program. You should also get your employer (if you work as a programmer) or your school, if any, to sign a "copyright disclaimer" for the program, if necessary. Here is a sample; alter the names: Yoyodyne, Inc., hereby disclaims all copyright interest in the program `Gnomovision' (which makes passes at compilers) written by James Hacker. , 1 April 1989 Ty Coon, President of Vice This General Public License does not permit incorporating your program into proprietary programs. If your program is a subroutine library, you may consider it more useful to permit linking proprietary applications with the library. If this is what you want to do, use the GNU Library General Public License instead of this License. libbonoboui-2.24.5/configure.in0000664000076400007640000001026111546334570013363 00000000000000m4_define([bonobo_major_version],[2]) m4_define([bonobo_minor_version],[24]) m4_define([bonobo_micro_version],[5]) m4_define([bonobo_version],[bonobo_major_version.bonobo_minor_version.bonobo_micro_version]) AC_INIT([libbonoboui],[bonobo_version],[http://bugzilla.gnome.org/enter_bug.cgi?product=bonobo&component=libbonoboui]) AC_CONFIG_HEADERS([config.h]) AM_INIT_AUTOMAKE([1.9 foreign no-dist-gzip dist-bzip2]) AM_MAINTAINER_MODE AC_CANONICAL_HOST case "$host" in *-*-mingw*) os_win32=yes ;; *) os_win32=no ;; esac if test "$os_win32" = "yes"; then if test x$enable_static = xyes -o x$enable_static = x; then AC_MSG_WARN([Disabling static library build, must build as DLL on Windows.]) enable_static=no fi if test x$enable_shared = xno; then AC_MSG_WARN([Enabling shared library build, must build as DLL on Windows.]) fi enable_shared=yes fi AC_ISC_POSIX AC_PROG_CC AC_STDC_HEADERS AC_LIBTOOL_WIN32_DLL AM_PROG_LIBTOOL AC_PROG_YACC AC_PATH_PROGS(PATH_TO_XRDB, "xrdb") GNOME_COMMON_INIT GNOME_DEBUG_CHECK GNOME_COMPILE_WARNINGS([maximum]) # see bug #455597 # GNOME_MAINTAINER_MODE_DEFINES IT_PROG_INTLTOOL([0.40.0]) GETTEXT_PACKAGE=libbonoboui-2.0 AC_SUBST(GETTEXT_PACKAGE) AC_DEFINE_UNQUOTED([GETTEXT_PACKAGE],["$GETTEXT_PACKAGE"],[Gettext domain]) AM_GLIB_GNU_GETTEXT AC_PATH_PROG([PKG_CONFIG], [pkg-config], [no]) if test x$PKG_CONFIG = xno; then AC_MSG_ERROR([Couldn't find pkg-config, please install it and retry]) fi gtk_target="`$PKG_CONFIG --variable=target gtk+-2.0`" if test $gtk_target = x11 ; then dnl X development libraries check # # If Pango included the shared library dependencies from X11 in # the pkg-config output, then we use that (to avoid duplicates). # but if they were omitted to avoid binary compatibility problems # then we need to repeat the checks. # if $PKG_CONFIG --exists pangoxft ; then PANGO_PACKAGES="pangox pangoxft" else PANGO_PACKAGES="pangox" fi x_libs="`$PKG_CONFIG --libs $PANGO_PACKAGES`" case x_libs in *-lX11*) pango_omitted_x_deps=no ;; *) pango_omitted_x_deps=yes ;; esac if test $pango_omitted_x_deps = yes ; then AC_PATH_XTRA if test x$no_x = xyes ; then AC_MSG_ERROR([X development libraries not found]) else X_LIBS="$X_PRE_LIBS $X_LIBS -lX11 $X_EXTRA_LIBS" fi fi fi AC_SUBST(X_LIBS) # popt AC_CHECK_LIB(popt, poptStrippedArgv, POPT_LIBS=-lpopt, AC_MSG_ERROR([You must have popt version 1.5 or greater installed.])) AC_SUBST(POPT_LIBS) AC_CHECK_HEADER(popt.h,,AC_MSG_ERROR([Failed to find popt.h - you may have to adjust your environment])) dnl dnl Start of pkg-config checks dnl BONOBOUI_MODULES="libgnomecanvas-2.0 >= 1.116.0 \ libbonobo-2.0 >= 2.13.0 \ libgnome-2.0 >= 2.13.7 \ bonobo-activation-2.0 >= 2.13.0 \ libxml-2.0 >= 2.4.20 \ gconf-2.0 >= 1.1.9 \ gtk+-2.0 >= 2.6.0 \ gobject-2.0 >= 2.6.0" PKG_CHECK_MODULES(BONOBOUI, $BONOBOUI_MODULES) AC_SUBST(BONOBOUI_CFLAGS) AC_SUBST(BONOBOUI_LIBS) AC_MSG_CHECKING([for broken, old development packages]) if $PKG_CONFIG --exists gdk_pixbuf; then if $PKG_CONFIG --modversion 'gdk_pixbuf >= 0.12'; then AC_MSG_RESULT([parallel install ok]); else AC_ERROR([If you have gdk-pixbuf you need at least ver 0.12]); fi else AC_MSG_RESULT([clean]) fi; PKG_CHECK_MODULES(BONOBOUI_GLADE, $BONOBOUI_MODULES libglade-2.0 >= 1.99.11) AC_SUBST(BONOBOUI_GLADE_CFLAGS) AC_SUBST(BONOBOUI_GLADE_LIBS) if test "$enable_maintainer_mode" = "yes"; then BONOBOUI_SINGLE_INCLUDES="-DGTK_DISABLE_SINGLE_INCLUDES -DG_DISABLE_SINGLE_INCLUDES" AC_SUBST(BONOBOUI_SINGLE_INCLUDES) fi # glib-genmarshal AC_PATH_PROG(GLIB_GENMARSHAL, glib-genmarshal) # glib-mkenums AC_PATH_PROG(GLIB_MKENUMS, glib-mkenums) GTK_DOC_CHECK([1.0]) AC_CONFIG_FILES([ Makefile libbonoboui-zip po/Makefile.in bonobo/Makefile bonobo/libbonoboui-2.0.pc bonobo/libbonoboui-2.0-uninstalled.pc glade/Makefile samples/Makefile samples/controls/Makefile samples/bonoboui/Makefile samples/container/Makefile samples/compound-doc/Makefile samples/compound-doc/container/Makefile samples/canvdemo/Makefile tests/Makefile tests/control/Makefile tools/Makefile tools/browser/Makefile doc/Makefile doc/api/Makefile doc/api/figures/Makefile ]) AC_OUTPUT libbonoboui-2.24.5/config.h.in0000644000076400007640000000451511546334677013110 00000000000000/* config.h.in. Generated from configure.in by autoheader. */ /* always defined to indicate that i18n is enabled */ #undef ENABLE_NLS /* Gettext domain */ #undef GETTEXT_PACKAGE /* Enable additional debugging at the expense of performance and size */ #undef GNOME_ENABLE_DEBUG /* Define to 1 if you have the `bind_textdomain_codeset' function. */ #undef HAVE_BIND_TEXTDOMAIN_CODESET /* Define to 1 if you have the `dcgettext' function. */ #undef HAVE_DCGETTEXT /* Define to 1 if you have the header file. */ #undef HAVE_DLFCN_H /* Define if the GNU gettext() function is already present or preinstalled. */ #undef HAVE_GETTEXT /* Define to 1 if you have the header file. */ #undef HAVE_INTTYPES_H /* Define if your file defines LC_MESSAGES. */ #undef HAVE_LC_MESSAGES /* Define to 1 if you have the header file. */ #undef HAVE_LOCALE_H /* Define to 1 if you have the header file. */ #undef HAVE_MEMORY_H /* Define to 1 if you have the header file. */ #undef HAVE_STDINT_H /* Define to 1 if you have the header file. */ #undef HAVE_STDLIB_H /* Define to 1 if you have the header file. */ #undef HAVE_STRINGS_H /* Define to 1 if you have the header file. */ #undef HAVE_STRING_H /* Define to 1 if you have the header file. */ #undef HAVE_SYS_STAT_H /* Define to 1 if you have the header file. */ #undef HAVE_SYS_TYPES_H /* Define to 1 if you have the header file. */ #undef HAVE_UNISTD_H /* Define to the sub-directory in which libtool stores uninstalled libraries. */ #undef LT_OBJDIR /* Name of package */ #undef PACKAGE /* Define to the address where bug reports for this package should be sent. */ #undef PACKAGE_BUGREPORT /* Define to the full name of this package. */ #undef PACKAGE_NAME /* Define to the full name and version of this package. */ #undef PACKAGE_STRING /* Define to the one symbol short name of this package. */ #undef PACKAGE_TARNAME /* Define to the home page for this package. */ #undef PACKAGE_URL /* Define to the version of this package. */ #undef PACKAGE_VERSION /* Define to 1 if you have the ANSI C header files. */ #undef STDC_HEADERS /* Version number of package */ #undef VERSION /* Define to 1 if the X Window System is missing or not being used. */ #undef X_DISPLAY_MISSING libbonoboui-2.24.5/Makefile.in0000664000076400007640000006336511546334702013131 00000000000000# Makefile.in generated by automake 1.11.1 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, # Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY, to the extent permitted by law; without # even the implied warranty of MERCHANTABILITY or FITNESS FOR A # PARTICULAR PURPOSE. @SET_MAKE@ VPATH = @srcdir@ pkgdatadir = $(datadir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ pkglibdir = $(libdir)/@PACKAGE@ pkglibexecdir = $(libexecdir)/@PACKAGE@ am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd install_sh_DATA = $(install_sh) -c -m 644 install_sh_PROGRAM = $(install_sh) -c install_sh_SCRIPT = $(install_sh) -c INSTALL_HEADER = $(INSTALL_DATA) transform = $(program_transform_name) NORMAL_INSTALL = : PRE_INSTALL = : POST_INSTALL = : NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : build_triplet = @build@ host_triplet = @host@ subdir = . DIST_COMMON = README $(am__configure_deps) $(libinclude_HEADERS) \ $(srcdir)/Makefile.am $(srcdir)/Makefile.in \ $(srcdir)/config.h.in $(srcdir)/libbonoboui-zip.in \ $(top_srcdir)/configure AUTHORS COPYING COPYING.LIB ChangeLog \ NEWS config.guess config.sub depcomp install-sh ltmain.sh \ missing mkinstalldirs ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/configure.in am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \ configure.lineno config.status.lineno mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs CONFIG_HEADER = config.h CONFIG_CLEAN_FILES = libbonoboui-zip CONFIG_CLEAN_VPATH_FILES = SOURCES = DIST_SOURCES = RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \ html-recursive info-recursive install-data-recursive \ install-dvi-recursive install-exec-recursive \ install-html-recursive install-info-recursive \ install-pdf-recursive install-ps-recursive install-recursive \ installcheck-recursive installdirs-recursive pdf-recursive \ ps-recursive uninstall-recursive am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; am__vpath_adj = case $$p in \ $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \ *) f=$$p;; \ esac; am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`; am__install_max = 40 am__nobase_strip_setup = \ srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'` am__nobase_strip = \ for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||" am__nobase_list = $(am__nobase_strip_setup); \ for p in $$list; do echo "$$p $$p"; done | \ sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \ $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \ if (++n[$$2] == $(am__install_max)) \ { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \ END { for (dir in files) print dir, files[dir] }' am__base_list = \ sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \ sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g' am__installdirs = "$(DESTDIR)$(libincludedir)" HEADERS = $(libinclude_HEADERS) RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \ distclean-recursive maintainer-clean-recursive AM_RECURSIVE_TARGETS = $(RECURSIVE_TARGETS:-recursive=) \ $(RECURSIVE_CLEAN_TARGETS:-recursive=) tags TAGS ctags CTAGS \ distdir dist dist-all distcheck ETAGS = etags CTAGS = ctags DIST_SUBDIRS = $(SUBDIRS) DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) distdir = $(PACKAGE)-$(VERSION) top_distdir = $(distdir) am__remove_distdir = \ { test ! -d "$(distdir)" \ || { find "$(distdir)" -type d ! -perm -200 -exec chmod u+w {} ';' \ && rm -fr "$(distdir)"; }; } am__relativize = \ dir0=`pwd`; \ sed_first='s,^\([^/]*\)/.*$$,\1,'; \ sed_rest='s,^[^/]*/*,,'; \ sed_last='s,^.*/\([^/]*\)$$,\1,'; \ sed_butlast='s,/*[^/]*$$,,'; \ while test -n "$$dir1"; do \ first=`echo "$$dir1" | sed -e "$$sed_first"`; \ if test "$$first" != "."; then \ if test "$$first" = ".."; then \ dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \ dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \ else \ first2=`echo "$$dir2" | sed -e "$$sed_first"`; \ if test "$$first2" = "$$first"; then \ dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \ else \ dir2="../$$dir2"; \ fi; \ dir0="$$dir0"/"$$first"; \ fi; \ fi; \ dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \ done; \ reldir="$$dir2" GZIP_ENV = --best DIST_ARCHIVES = $(distdir).tar.bz2 distuninstallcheck_listfiles = find . -type f -print distcleancheck_listfiles = find . -type f -print ACLOCAL = @ACLOCAL@ ACLOCAL_AMFLAGS = @ACLOCAL_AMFLAGS@ ALL_LINGUAS = @ALL_LINGUAS@ AMTAR = @AMTAR@ AR = @AR@ AS = @AS@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ AWK = @AWK@ BONOBOUI_CFLAGS = @BONOBOUI_CFLAGS@ BONOBOUI_GLADE_CFLAGS = @BONOBOUI_GLADE_CFLAGS@ BONOBOUI_GLADE_LIBS = @BONOBOUI_GLADE_LIBS@ BONOBOUI_LIBS = @BONOBOUI_LIBS@ BONOBOUI_SINGLE_INCLUDES = @BONOBOUI_SINGLE_INCLUDES@ CATALOGS = @CATALOGS@ CATOBJEXT = @CATOBJEXT@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ CYGPATH_W = @CYGPATH_W@ DATADIRNAME = @DATADIRNAME@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DUMPBIN = @DUMPBIN@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_MKENUMS = @GLIB_MKENUMS@ GMOFILES = @GMOFILES@ GMSGFMT = @GMSGFMT@ GREP = @GREP@ GTKDOC_CHECK = @GTKDOC_CHECK@ GTKDOC_MKPDF = @GTKDOC_MKPDF@ GTKDOC_REBASE = @GTKDOC_REBASE@ HTML_DIR = @HTML_DIR@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INSTOBJEXT = @INSTOBJEXT@ INTLLIBS = @INTLLIBS@ INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@ INTLTOOL_MERGE = @INTLTOOL_MERGE@ INTLTOOL_PERL = @INTLTOOL_PERL@ INTLTOOL_UPDATE = @INTLTOOL_UPDATE@ LD = @LD@ LDFLAGS = @LDFLAGS@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIPO = @LIPO@ LN_S = @LN_S@ LTLIBOBJS = @LTLIBOBJS@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MKDIR_P = @MKDIR_P@ MKINSTALLDIRS = @MKINSTALLDIRS@ MSGFMT = @MSGFMT@ MSGFMT_OPTS = @MSGFMT_OPTS@ MSGMERGE = @MSGMERGE@ NM = @NM@ NMEDIT = @NMEDIT@ OBJDUMP = @OBJDUMP@ OBJEXT = @OBJEXT@ OTOOL = @OTOOL@ OTOOL64 = @OTOOL64@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_URL = @PACKAGE_URL@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ PATH_TO_XRDB = @PATH_TO_XRDB@ PKG_CONFIG = @PKG_CONFIG@ POFILES = @POFILES@ POPT_LIBS = @POPT_LIBS@ POSUB = @POSUB@ PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@ PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@ RANLIB = @RANLIB@ SED = @SED@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ STRIP = @STRIP@ USE_NLS = @USE_NLS@ VERSION = @VERSION@ WARN_CFLAGS = @WARN_CFLAGS@ XGETTEXT = @XGETTEXT@ XMKMF = @XMKMF@ X_CFLAGS = @X_CFLAGS@ X_EXTRA_LIBS = @X_EXTRA_LIBS@ X_LIBS = @X_LIBS@ X_PRE_LIBS = @X_PRE_LIBS@ YACC = @YACC@ YFLAGS = @YFLAGS@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ abs_top_srcdir = @abs_top_srcdir@ ac_ct_CC = @ac_ct_CC@ ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ am__include = @am__include@ am__leading_dot = @am__leading_dot@ am__quote = @am__quote@ am__tar = @am__tar@ am__untar = @am__untar@ bindir = @bindir@ build = @build@ build_alias = @build_alias@ build_cpu = @build_cpu@ build_os = @build_os@ build_vendor = @build_vendor@ builddir = @builddir@ datadir = @datadir@ datarootdir = @datarootdir@ docdir = @docdir@ dvidir = @dvidir@ exec_prefix = @exec_prefix@ host = @host@ host_alias = @host_alias@ host_cpu = @host_cpu@ host_os = @host_os@ host_vendor = @host_vendor@ htmldir = @htmldir@ includedir = @includedir@ infodir = @infodir@ install_sh = @install_sh@ libdir = @libdir@ libexecdir = @libexecdir@ localedir = @localedir@ localstatedir = @localstatedir@ lt_ECHO = @lt_ECHO@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ sysconfdir = @sysconfdir@ target_alias = @target_alias@ top_build_prefix = @top_build_prefix@ top_builddir = @top_builddir@ top_srcdir = @top_srcdir@ SUBDIRS = bonobo glade samples tests tools po doc libincludedir = $(includedir)/libbonoboui-2.0 libinclude_HEADERS = \ bonobo.h \ libbonoboui.h EXTRA_DIST = \ MAINTAINERS \ libbonoboui-zip.in \ changes.txt \ gtk-doc.make DISTCLEANFILES = DISTCHECK_CONFIGURE_FLAGS = --enable-gtk-doc all: config.h $(MAKE) $(AM_MAKEFLAGS) all-recursive .SUFFIXES: am--refresh: @: $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps) @for dep in $?; do \ case '$(am__configure_deps)' in \ *$$dep*) \ echo ' cd $(srcdir) && $(AUTOMAKE) --foreign'; \ $(am__cd) $(srcdir) && $(AUTOMAKE) --foreign \ && exit 0; \ exit 1;; \ esac; \ done; \ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign Makefile'; \ $(am__cd) $(top_srcdir) && \ $(AUTOMAKE) --foreign Makefile .PRECIOUS: Makefile Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status @case '$?' in \ *config.status*) \ echo ' $(SHELL) ./config.status'; \ $(SHELL) ./config.status;; \ *) \ echo ' cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe)'; \ cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) $(SHELL) ./config.status --recheck $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) $(am__cd) $(srcdir) && $(AUTOCONF) $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) $(am__cd) $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS) $(am__aclocal_m4_deps): config.h: stamp-h1 @if test ! -f $@; then \ rm -f stamp-h1; \ $(MAKE) $(AM_MAKEFLAGS) stamp-h1; \ else :; fi stamp-h1: $(srcdir)/config.h.in $(top_builddir)/config.status @rm -f stamp-h1 cd $(top_builddir) && $(SHELL) ./config.status config.h $(srcdir)/config.h.in: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) ($(am__cd) $(top_srcdir) && $(AUTOHEADER)) rm -f stamp-h1 touch $@ distclean-hdr: -rm -f config.h stamp-h1 libbonoboui-zip: $(top_builddir)/config.status $(srcdir)/libbonoboui-zip.in cd $(top_builddir) && $(SHELL) ./config.status $@ mostlyclean-libtool: -rm -f *.lo clean-libtool: -rm -rf .libs _libs distclean-libtool: -rm -f libtool config.lt install-libincludeHEADERS: $(libinclude_HEADERS) @$(NORMAL_INSTALL) test -z "$(libincludedir)" || $(MKDIR_P) "$(DESTDIR)$(libincludedir)" @list='$(libinclude_HEADERS)'; test -n "$(libincludedir)" || list=; \ for p in $$list; do \ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ echo "$$d$$p"; \ done | $(am__base_list) | \ while read files; do \ echo " $(INSTALL_HEADER) $$files '$(DESTDIR)$(libincludedir)'"; \ $(INSTALL_HEADER) $$files "$(DESTDIR)$(libincludedir)" || exit $$?; \ done uninstall-libincludeHEADERS: @$(NORMAL_UNINSTALL) @list='$(libinclude_HEADERS)'; test -n "$(libincludedir)" || list=; \ files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ test -n "$$files" || exit 0; \ echo " ( cd '$(DESTDIR)$(libincludedir)' && rm -f" $$files ")"; \ cd "$(DESTDIR)$(libincludedir)" && rm -f $$files # This directory's subdirectories are mostly independent; you can cd # into them and run `make' without going through this Makefile. # To change the values of `make' variables: instead of editing Makefiles, # (1) if the variable is set in `config.status', edit `config.status' # (which will cause the Makefiles to be regenerated when you run `make'); # (2) otherwise, pass the desired values on the `make' command line. $(RECURSIVE_TARGETS): @fail= failcom='exit 1'; \ for f in x $$MAKEFLAGS; do \ case $$f in \ *=* | --[!k]*);; \ *k*) failcom='fail=yes';; \ esac; \ done; \ dot_seen=no; \ target=`echo $@ | sed s/-recursive//`; \ list='$(SUBDIRS)'; for subdir in $$list; do \ echo "Making $$target in $$subdir"; \ if test "$$subdir" = "."; then \ dot_seen=yes; \ local_target="$$target-am"; \ else \ local_target="$$target"; \ fi; \ ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ || eval $$failcom; \ done; \ if test "$$dot_seen" = "no"; then \ $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \ fi; test -z "$$fail" $(RECURSIVE_CLEAN_TARGETS): @fail= failcom='exit 1'; \ for f in x $$MAKEFLAGS; do \ case $$f in \ *=* | --[!k]*);; \ *k*) failcom='fail=yes';; \ esac; \ done; \ dot_seen=no; \ case "$@" in \ distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \ *) list='$(SUBDIRS)' ;; \ esac; \ rev=''; for subdir in $$list; do \ if test "$$subdir" = "."; then :; else \ rev="$$subdir $$rev"; \ fi; \ done; \ rev="$$rev ."; \ target=`echo $@ | sed s/-recursive//`; \ for subdir in $$rev; do \ echo "Making $$target in $$subdir"; \ if test "$$subdir" = "."; then \ local_target="$$target-am"; \ else \ local_target="$$target"; \ fi; \ ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ || eval $$failcom; \ done && test -z "$$fail" tags-recursive: list='$(SUBDIRS)'; for subdir in $$list; do \ test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \ done ctags-recursive: list='$(SUBDIRS)'; for subdir in $$list; do \ test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \ done ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ END { if (nonempty) { for (i in files) print i; }; }'`; \ mkid -fID $$unique tags: TAGS TAGS: tags-recursive $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) set x; \ here=`pwd`; \ if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \ include_option=--etags-include; \ empty_fix=.; \ else \ include_option=--include; \ empty_fix=; \ fi; \ list='$(SUBDIRS)'; for subdir in $$list; do \ if test "$$subdir" = .; then :; else \ test ! -f $$subdir/TAGS || \ set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \ fi; \ done; \ list='$(SOURCES) $(HEADERS) config.h.in $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ END { if (nonempty) { for (i in files) print i; }; }'`; \ shift; \ if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ test -n "$$unique" || unique=$$empty_fix; \ if test $$# -gt 0; then \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ "$$@" $$unique; \ else \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ $$unique; \ fi; \ fi ctags: CTAGS CTAGS: ctags-recursive $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) list='$(SOURCES) $(HEADERS) config.h.in $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ END { if (nonempty) { for (i in files) print i; }; }'`; \ test -z "$(CTAGS_ARGS)$$unique" \ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ $$unique GTAGS: here=`$(am__cd) $(top_builddir) && pwd` \ && $(am__cd) $(top_srcdir) \ && gtags -i $(GTAGS_ARGS) "$$here" distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags distdir: $(DISTFILES) $(am__remove_distdir) test -d "$(distdir)" || mkdir "$(distdir)" @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ dist_files=`for file in $$list; do echo $$file; done | \ sed -e "s|^$$srcdirstrip/||;t" \ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ case $$dist_files in \ */*) $(MKDIR_P) `echo "$$dist_files" | \ sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ sort -u` ;; \ esac; \ for file in $$dist_files; do \ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ if test -d $$d/$$file; then \ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ if test -d "$(distdir)/$$file"; then \ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ else \ test -f "$(distdir)/$$file" \ || cp -p $$d/$$file "$(distdir)/$$file" \ || exit 1; \ fi; \ done @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \ if test "$$subdir" = .; then :; else \ test -d "$(distdir)/$$subdir" \ || $(MKDIR_P) "$(distdir)/$$subdir" \ || exit 1; \ fi; \ done @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \ if test "$$subdir" = .; then :; else \ dir1=$$subdir; dir2="$(distdir)/$$subdir"; \ $(am__relativize); \ new_distdir=$$reldir; \ dir1=$$subdir; dir2="$(top_distdir)"; \ $(am__relativize); \ new_top_distdir=$$reldir; \ echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \ echo " am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \ ($(am__cd) $$subdir && \ $(MAKE) $(AM_MAKEFLAGS) \ top_distdir="$$new_top_distdir" \ distdir="$$new_distdir" \ am__remove_distdir=: \ am__skip_length_check=: \ am__skip_mode_fix=: \ distdir) \ || exit 1; \ fi; \ done -test -n "$(am__skip_mode_fix)" \ || find "$(distdir)" -type d ! -perm -755 \ -exec chmod u+rwx,go+rx {} \; -o \ ! -type d ! -perm -444 -links 1 -exec chmod a+r {} \; -o \ ! -type d ! -perm -400 -exec chmod a+r {} \; -o \ ! -type d ! -perm -444 -exec $(install_sh) -c -m a+r {} {} \; \ || chmod -R a+r "$(distdir)" dist-gzip: distdir tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz $(am__remove_distdir) dist-bzip2: distdir tardir=$(distdir) && $(am__tar) | bzip2 -9 -c >$(distdir).tar.bz2 $(am__remove_distdir) dist-lzma: distdir tardir=$(distdir) && $(am__tar) | lzma -9 -c >$(distdir).tar.lzma $(am__remove_distdir) dist-xz: distdir tardir=$(distdir) && $(am__tar) | xz -c >$(distdir).tar.xz $(am__remove_distdir) dist-tarZ: distdir tardir=$(distdir) && $(am__tar) | compress -c >$(distdir).tar.Z $(am__remove_distdir) dist-shar: distdir shar $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).shar.gz $(am__remove_distdir) dist-zip: distdir -rm -f $(distdir).zip zip -rq $(distdir).zip $(distdir) $(am__remove_distdir) dist dist-all: distdir tardir=$(distdir) && $(am__tar) | bzip2 -9 -c >$(distdir).tar.bz2 $(am__remove_distdir) # This target untars the dist file and tries a VPATH configuration. Then # it guarantees that the distribution is self-contained by making another # tarfile. distcheck: dist case '$(DIST_ARCHIVES)' in \ *.tar.gz*) \ GZIP=$(GZIP_ENV) gzip -dc $(distdir).tar.gz | $(am__untar) ;;\ *.tar.bz2*) \ bzip2 -dc $(distdir).tar.bz2 | $(am__untar) ;;\ *.tar.lzma*) \ lzma -dc $(distdir).tar.lzma | $(am__untar) ;;\ *.tar.xz*) \ xz -dc $(distdir).tar.xz | $(am__untar) ;;\ *.tar.Z*) \ uncompress -c $(distdir).tar.Z | $(am__untar) ;;\ *.shar.gz*) \ GZIP=$(GZIP_ENV) gzip -dc $(distdir).shar.gz | unshar ;;\ *.zip*) \ unzip $(distdir).zip ;;\ esac chmod -R a-w $(distdir); chmod a+w $(distdir) mkdir $(distdir)/_build mkdir $(distdir)/_inst chmod a-w $(distdir) test -d $(distdir)/_build || exit 0; \ dc_install_base=`$(am__cd) $(distdir)/_inst && pwd | sed -e 's,^[^:\\/]:[\\/],/,'` \ && dc_destdir="$${TMPDIR-/tmp}/am-dc-$$$$/" \ && am__cwd=`pwd` \ && $(am__cd) $(distdir)/_build \ && ../configure --srcdir=.. --prefix="$$dc_install_base" \ $(DISTCHECK_CONFIGURE_FLAGS) \ && $(MAKE) $(AM_MAKEFLAGS) \ && $(MAKE) $(AM_MAKEFLAGS) dvi \ && $(MAKE) $(AM_MAKEFLAGS) check \ && $(MAKE) $(AM_MAKEFLAGS) install \ && $(MAKE) $(AM_MAKEFLAGS) installcheck \ && $(MAKE) $(AM_MAKEFLAGS) uninstall \ && $(MAKE) $(AM_MAKEFLAGS) distuninstallcheck_dir="$$dc_install_base" \ distuninstallcheck \ && chmod -R a-w "$$dc_install_base" \ && ({ \ (cd ../.. && umask 077 && mkdir "$$dc_destdir") \ && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" install \ && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" uninstall \ && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" \ distuninstallcheck_dir="$$dc_destdir" distuninstallcheck; \ } || { rm -rf "$$dc_destdir"; exit 1; }) \ && rm -rf "$$dc_destdir" \ && $(MAKE) $(AM_MAKEFLAGS) dist \ && rm -rf $(DIST_ARCHIVES) \ && $(MAKE) $(AM_MAKEFLAGS) distcleancheck \ && cd "$$am__cwd" \ || exit 1 $(am__remove_distdir) @(echo "$(distdir) archives ready for distribution: "; \ list='$(DIST_ARCHIVES)'; for i in $$list; do echo $$i; done) | \ sed -e 1h -e 1s/./=/g -e 1p -e 1x -e '$$p' -e '$$x' distuninstallcheck: @$(am__cd) '$(distuninstallcheck_dir)' \ && test `$(distuninstallcheck_listfiles) | wc -l` -le 1 \ || { echo "ERROR: files left after uninstall:" ; \ if test -n "$(DESTDIR)"; then \ echo " (check DESTDIR support)"; \ fi ; \ $(distuninstallcheck_listfiles) ; \ exit 1; } >&2 distcleancheck: distclean @if test '$(srcdir)' = . ; then \ echo "ERROR: distcleancheck can only run from a VPATH build" ; \ exit 1 ; \ fi @test `$(distcleancheck_listfiles) | wc -l` -eq 0 \ || { echo "ERROR: files left in build directory after distclean:" ; \ $(distcleancheck_listfiles) ; \ exit 1; } >&2 check-am: all-am check: check-recursive all-am: Makefile $(HEADERS) config.h installdirs: installdirs-recursive installdirs-am: for dir in "$(DESTDIR)$(libincludedir)"; do \ test -z "$$dir" || $(MKDIR_P) "$$dir"; \ done install: install-recursive install-exec: install-exec-recursive install-data: install-data-recursive uninstall: uninstall-recursive install-am: all-am @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am installcheck: installcheck-recursive install-strip: $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ `test -z '$(STRIP)' || \ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install mostlyclean-generic: clean-generic: distclean-generic: -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) -test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES) maintainer-clean-generic: @echo "This command is intended for maintainers to use" @echo "it deletes files that may require special tools to rebuild." clean: clean-recursive clean-am: clean-generic clean-libtool mostlyclean-am distclean: distclean-recursive -rm -f $(am__CONFIG_DISTCLEAN_FILES) -rm -f Makefile distclean-am: clean-am distclean-generic distclean-hdr \ distclean-libtool distclean-tags dvi: dvi-recursive dvi-am: html: html-recursive html-am: info: info-recursive info-am: install-data-am: install-libincludeHEADERS install-dvi: install-dvi-recursive install-dvi-am: install-exec-am: install-html: install-html-recursive install-html-am: install-info: install-info-recursive install-info-am: install-man: install-pdf: install-pdf-recursive install-pdf-am: install-ps: install-ps-recursive install-ps-am: installcheck-am: maintainer-clean: maintainer-clean-recursive -rm -f $(am__CONFIG_DISTCLEAN_FILES) -rm -rf $(top_srcdir)/autom4te.cache -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic mostlyclean: mostlyclean-recursive mostlyclean-am: mostlyclean-generic mostlyclean-libtool pdf: pdf-recursive pdf-am: ps: ps-recursive ps-am: uninstall-am: uninstall-libincludeHEADERS .MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) all \ ctags-recursive install-am install-strip tags-recursive .PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \ all all-am am--refresh check check-am clean clean-generic \ clean-libtool ctags ctags-recursive dist dist-all dist-bzip2 \ dist-gzip dist-lzma dist-shar dist-tarZ dist-xz dist-zip \ distcheck distclean distclean-generic distclean-hdr \ distclean-libtool distclean-tags distcleancheck distdir \ distuninstallcheck dvi dvi-am html html-am info info-am \ install install-am install-data install-data-am install-dvi \ install-dvi-am install-exec install-exec-am install-html \ install-html-am install-info install-info-am \ install-libincludeHEADERS install-man install-pdf \ install-pdf-am install-ps install-ps-am install-strip \ installcheck installcheck-am installdirs installdirs-am \ maintainer-clean maintainer-clean-generic mostlyclean \ mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \ tags tags-recursive uninstall uninstall-am \ uninstall-libincludeHEADERS # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. .NOEXPORT: libbonoboui-2.24.5/missing0000755000076400007640000002623311546334700012450 00000000000000#! /bin/sh # Common stub for a few missing GNU programs while installing. scriptversion=2009-04-28.21; # UTC # Copyright (C) 1996, 1997, 1999, 2000, 2002, 2003, 2004, 2005, 2006, # 2008, 2009 Free Software Foundation, Inc. # Originally by Fran,cois Pinard , 1996. # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2, or (at your option) # any later version. # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # You should have received a copy of the GNU General Public License # along with this program. If not, see . # As a special exception to the GNU General Public License, if you # distribute this file as part of a program that contains a # configuration script generated by Autoconf, you may include it under # the same distribution terms that you use for the rest of that program. if test $# -eq 0; then echo 1>&2 "Try \`$0 --help' for more information" exit 1 fi run=: sed_output='s/.* --output[ =]\([^ ]*\).*/\1/p' sed_minuso='s/.* -o \([^ ]*\).*/\1/p' # In the cases where this matters, `missing' is being run in the # srcdir already. if test -f configure.ac; then configure_ac=configure.ac else configure_ac=configure.in fi msg="missing on your system" case $1 in --run) # Try to run requested program, and just exit if it succeeds. run= shift "$@" && exit 0 # Exit code 63 means version mismatch. This often happens # when the user try to use an ancient version of a tool on # a file that requires a minimum version. In this case we # we should proceed has if the program had been absent, or # if --run hadn't been passed. if test $? = 63; then run=: msg="probably too old" fi ;; -h|--h|--he|--hel|--help) echo "\ $0 [OPTION]... PROGRAM [ARGUMENT]... Handle \`PROGRAM [ARGUMENT]...' for when PROGRAM is missing, or return an error status if there is no known handling for PROGRAM. Options: -h, --help display this help and exit -v, --version output version information and exit --run try to run the given command, and emulate it if it fails Supported PROGRAM values: aclocal touch file \`aclocal.m4' autoconf touch file \`configure' autoheader touch file \`config.h.in' autom4te touch the output file, or create a stub one automake touch all \`Makefile.in' files bison create \`y.tab.[ch]', if possible, from existing .[ch] flex create \`lex.yy.c', if possible, from existing .c help2man touch the output file lex create \`lex.yy.c', if possible, from existing .c makeinfo touch the output file tar try tar, gnutar, gtar, then tar without non-portable flags yacc create \`y.tab.[ch]', if possible, from existing .[ch] Version suffixes to PROGRAM as well as the prefixes \`gnu-', \`gnu', and \`g' are ignored when checking the name. Send bug reports to ." exit $? ;; -v|--v|--ve|--ver|--vers|--versi|--versio|--version) echo "missing $scriptversion (GNU Automake)" exit $? ;; -*) echo 1>&2 "$0: Unknown \`$1' option" echo 1>&2 "Try \`$0 --help' for more information" exit 1 ;; esac # normalize program name to check for. program=`echo "$1" | sed ' s/^gnu-//; t s/^gnu//; t s/^g//; t'` # Now exit if we have it, but it failed. Also exit now if we # don't have it and --version was passed (most likely to detect # the program). This is about non-GNU programs, so use $1 not # $program. case $1 in lex*|yacc*) # Not GNU programs, they don't have --version. ;; tar*) if test -n "$run"; then echo 1>&2 "ERROR: \`tar' requires --run" exit 1 elif test "x$2" = "x--version" || test "x$2" = "x--help"; then exit 1 fi ;; *) if test -z "$run" && ($1 --version) > /dev/null 2>&1; then # We have it, but it failed. exit 1 elif test "x$2" = "x--version" || test "x$2" = "x--help"; then # Could not run --version or --help. This is probably someone # running `$TOOL --version' or `$TOOL --help' to check whether # $TOOL exists and not knowing $TOOL uses missing. exit 1 fi ;; esac # If it does not exist, or fails to run (possibly an outdated version), # try to emulate it. case $program in aclocal*) echo 1>&2 "\ WARNING: \`$1' is $msg. You should only need it if you modified \`acinclude.m4' or \`${configure_ac}'. You might want to install the \`Automake' and \`Perl' packages. Grab them from any GNU archive site." touch aclocal.m4 ;; autoconf*) echo 1>&2 "\ WARNING: \`$1' is $msg. You should only need it if you modified \`${configure_ac}'. You might want to install the \`Autoconf' and \`GNU m4' packages. Grab them from any GNU archive site." touch configure ;; autoheader*) echo 1>&2 "\ WARNING: \`$1' is $msg. You should only need it if you modified \`acconfig.h' or \`${configure_ac}'. You might want to install the \`Autoconf' and \`GNU m4' packages. Grab them from any GNU archive site." files=`sed -n 's/^[ ]*A[CM]_CONFIG_HEADER(\([^)]*\)).*/\1/p' ${configure_ac}` test -z "$files" && files="config.h" touch_files= for f in $files; do case $f in *:*) touch_files="$touch_files "`echo "$f" | sed -e 's/^[^:]*://' -e 's/:.*//'`;; *) touch_files="$touch_files $f.in";; esac done touch $touch_files ;; automake*) echo 1>&2 "\ WARNING: \`$1' is $msg. You should only need it if you modified \`Makefile.am', \`acinclude.m4' or \`${configure_ac}'. You might want to install the \`Automake' and \`Perl' packages. Grab them from any GNU archive site." find . -type f -name Makefile.am -print | sed 's/\.am$/.in/' | while read f; do touch "$f"; done ;; autom4te*) echo 1>&2 "\ WARNING: \`$1' is needed, but is $msg. You might have modified some files without having the proper tools for further handling them. You can get \`$1' as part of \`Autoconf' from any GNU archive site." file=`echo "$*" | sed -n "$sed_output"` test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"` if test -f "$file"; then touch $file else test -z "$file" || exec >$file echo "#! /bin/sh" echo "# Created by GNU Automake missing as a replacement of" echo "# $ $@" echo "exit 0" chmod +x $file exit 1 fi ;; bison*|yacc*) echo 1>&2 "\ WARNING: \`$1' $msg. You should only need it if you modified a \`.y' file. You may need the \`Bison' package in order for those modifications to take effect. You can get \`Bison' from any GNU archive site." rm -f y.tab.c y.tab.h if test $# -ne 1; then eval LASTARG="\${$#}" case $LASTARG in *.y) SRCFILE=`echo "$LASTARG" | sed 's/y$/c/'` if test -f "$SRCFILE"; then cp "$SRCFILE" y.tab.c fi SRCFILE=`echo "$LASTARG" | sed 's/y$/h/'` if test -f "$SRCFILE"; then cp "$SRCFILE" y.tab.h fi ;; esac fi if test ! -f y.tab.h; then echo >y.tab.h fi if test ! -f y.tab.c; then echo 'main() { return 0; }' >y.tab.c fi ;; lex*|flex*) echo 1>&2 "\ WARNING: \`$1' is $msg. You should only need it if you modified a \`.l' file. You may need the \`Flex' package in order for those modifications to take effect. You can get \`Flex' from any GNU archive site." rm -f lex.yy.c if test $# -ne 1; then eval LASTARG="\${$#}" case $LASTARG in *.l) SRCFILE=`echo "$LASTARG" | sed 's/l$/c/'` if test -f "$SRCFILE"; then cp "$SRCFILE" lex.yy.c fi ;; esac fi if test ! -f lex.yy.c; then echo 'main() { return 0; }' >lex.yy.c fi ;; help2man*) echo 1>&2 "\ WARNING: \`$1' is $msg. You should only need it if you modified a dependency of a manual page. You may need the \`Help2man' package in order for those modifications to take effect. You can get \`Help2man' from any GNU archive site." file=`echo "$*" | sed -n "$sed_output"` test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"` if test -f "$file"; then touch $file else test -z "$file" || exec >$file echo ".ab help2man is required to generate this page" exit $? fi ;; makeinfo*) echo 1>&2 "\ WARNING: \`$1' is $msg. You should only need it if you modified a \`.texi' or \`.texinfo' file, or any other file indirectly affecting the aspect of the manual. The spurious call might also be the consequence of using a buggy \`make' (AIX, DU, IRIX). You might want to install the \`Texinfo' package or the \`GNU make' package. Grab either from any GNU archive site." # The file to touch is that specified with -o ... file=`echo "$*" | sed -n "$sed_output"` test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"` if test -z "$file"; then # ... or it is the one specified with @setfilename ... infile=`echo "$*" | sed 's/.* \([^ ]*\) *$/\1/'` file=`sed -n ' /^@setfilename/{ s/.* \([^ ]*\) *$/\1/ p q }' $infile` # ... or it is derived from the source name (dir/f.texi becomes f.info) test -z "$file" && file=`echo "$infile" | sed 's,.*/,,;s,.[^.]*$,,'`.info fi # If the file does not exist, the user really needs makeinfo; # let's fail without touching anything. test -f $file || exit 1 touch $file ;; tar*) shift # We have already tried tar in the generic part. # Look for gnutar/gtar before invocation to avoid ugly error # messages. if (gnutar --version > /dev/null 2>&1); then gnutar "$@" && exit 0 fi if (gtar --version > /dev/null 2>&1); then gtar "$@" && exit 0 fi firstarg="$1" if shift; then case $firstarg in *o*) firstarg=`echo "$firstarg" | sed s/o//` tar "$firstarg" "$@" && exit 0 ;; esac case $firstarg in *h*) firstarg=`echo "$firstarg" | sed s/h//` tar "$firstarg" "$@" && exit 0 ;; esac fi echo 1>&2 "\ WARNING: I can't seem to be able to run \`tar' with the given arguments. You may want to install GNU tar or Free paxutils, or check the command line arguments." exit 1 ;; *) echo 1>&2 "\ WARNING: \`$1' is needed, and is $msg. You might have modified some files without having the proper tools for further handling them. Check the \`README' file, it often tells you about the needed prerequisites for installing this package. You may also peek at any GNU archive site, in case some other package would contain this missing \`$1' program." exit 1 ;; esac exit 0 # Local variables: # eval: (add-hook 'write-file-hooks 'time-stamp) # time-stamp-start: "scriptversion=" # time-stamp-format: "%:y-%02m-%02d.%02H" # time-stamp-time-zone: "UTC" # time-stamp-end: "; # UTC" # End: libbonoboui-2.24.5/ChangeLog0000644000076400007640000060124011200301552012602 000000000000002009-05-06 Christian Persch More gtk single include fixes. Bug #535475. * bonobo/bonobo-control.c: * bonobo/bonobo-ui-container.c: * bonobo/bonobo-widget.c: 2009-03-06 Kjartan Maraas * NEWS: Updated for release. * bonobo/Makefile.am: * bonobo/bonobo-canvas-component.c: (impl_Bonobo_Canvas_Component_update): * bonobo/bonobo-control-frame.c: * bonobo/bonobo-control.c: * bonobo/bonobo-dock-layout.c: (remove_item): * bonobo/bonobo-dock.c: (drag_floating), (bonobo_dock_add_floating_item), (bonobo_dock_set_client_area): * bonobo/bonobo-plug.c: * bonobo/bonobo-selector-widget.c: * bonobo/bonobo-socket.c: * bonobo/bonobo-ui-config-widget.c: * bonobo/bonobo-ui-engine-config.c: (bonobo_ui_engine_config_configure): * bonobo/bonobo-ui-engine.c: (widget_unref), (state_update_new), (state_update_destroy), (bonobo_ui_engine_construct), (bonobo_ui_engine_sync), (bonobo_ui_engine_stamp_root): * bonobo/bonobo-ui-internal-toolbar.c: * bonobo/bonobo-ui-main.c: * bonobo/bonobo-ui-preferences.c: * bonobo/bonobo-ui-sync-keys.c: * bonobo/bonobo-ui-sync-menu.c: (bonobo_ui_sync_menu_add_popup), (impl_bonobo_ui_sync_menu_build): * bonobo/bonobo-ui-sync-status.c: * bonobo/bonobo-ui-sync-toolbar.c: * bonobo/bonobo-ui-toolbar-button-item.c: (unparent_items): * bonobo/bonobo-ui-toolbar-control-item.c: * bonobo/bonobo-ui-toolbar-item.c: * bonobo/bonobo-ui-toolbar-item.h: * bonobo/bonobo-ui-toolbar-popup-item.c: * bonobo/bonobo-ui-toolbar-toggle-button-item.c: * bonobo/bonobo-ui-toolbar.c: (bonobo_ui_toolbar_construct): * bonobo/bonobo-ui-util.c: * bonobo/bonobo-window.c: * glade/glade-bonobo.c: * samples/bonoboui/hello.c: * samples/canvdemo/circle.c: * samples/canvdemo/main.c: * samples/canvdemo/square.c: * samples/container/bonobo-sample-container.c: * samples/controls/bonobo-sample-controls.c: * tests/control/test-control.c: * tests/test-events.c: * tests/test-focus.c: * tests/test-moniker.c: * tests/test-reparent.c: (main): * tests/test-selector.c: * tests/test-sensitivity.c: (main): * tests/test-toolbar.c: * tests/test-ui-auto.c: * tests/test-ui.c: * tools/browser/window.c: (bonobo_browser_create_window): Make everything build with deprecations enabled in glib/gtk+. 2008-12-09 Kjartan Maraas * samples/canvdemo/circle.c: (circle_control_new): * samples/canvdemo/square.c: * tests/test-filesel.c: * tools/browser/component-details.c: * tools/browser/component-details.h: * tools/browser/component-list.c: * tools/browser/component-list.h: More gtk+ include cleanups. Patch from Przemysław Grzegorczyk. Closes bug #563711. 2008-10-18 Cosimo Cecchi * configure.in: Only enforce single includes under maintainer mode. 2008-10-18 Cosimo Cecchi * bonobo/Makefile.am: * bonobo/bonobo-a11y.c: * bonobo/bonobo-canvas-component.c: * bonobo/bonobo-canvas-item.c: * bonobo/bonobo-control-frame.c: * bonobo/bonobo-dock-item-grip.c: * bonobo/bonobo-dock-item.c: * bonobo/bonobo-file-selector-util.c: * bonobo/bonobo-socket.c: * bonobo/bonobo-ui-engine-config.c: * bonobo/bonobo-ui-main.c: * bonobo/bonobo-ui-toolbar-popup-item.c: * bonobo/bonobo-ui-util.c: * configure.in: Use and enforce single GTK+/GLib includes. 2008-09-22 Kjartan Maraas * NEWS: Update * configure.in: Release 2.24.0 2008-08-29 Cosimo Cecchi * bonobo/libbonoboui-2.0-uninstalled.pc.in: * bonobo/libbonoboui-2.0.pc.in: Do not require gnome-vfs anymore. 2008-08-28 Kjartan Maraas * samples/canvdemo/main.c: (create_app), (main): Remove some unused vars (Andreas Köhler) * samples/compound-doc/paint-component-simple.c: (update_view_foreach), (view_factory), (render_fn): * tests/control/test-control.c: (test_gtk_weakrefs): * tests/dock_demo.c: (delete_callback), (main): Don't use deprecated glib/gtk+ api. * tests/test-moniker.c: (main): Add missing fprintf format specifier. * tools/browser/oaf-helper.c: (get_string_value), (bonobo_component_get_locale_name), (bonobo_component_get_locale_desc), (num_query_matches), (is_component_active), (bonobo_component_get_repoids): More Cleanups (TM). 2008-08-05 Olav Vitters * configure.in: Post release version bump. ==================== libbonoboui 2.23.5 ===================== 2008-08-05 Olav Vitters * NEWS: Prepare 2.23.5. 2008-08-04 Cosimo Cecchi reviewed by: Michael Meeks * bonobo/bonobo-file-selector-util.c: (run_file_selector): * configure.in: Remove gnome-vfs dependency (#544831). 2008-06-19 Christian Persch * bonobo/bonobo-canvas-component.c: (root_item_hack_get_type): * bonobo/bonobo-canvas-item.h: * bonobo/bonobo-dock-band.h: * bonobo/bonobo-dock-item.h: * bonobo/bonobo-dock.h: * bonobo/bonobo-plug.h: * bonobo/bonobo-property-control.h: * bonobo/bonobo-selector-widget.h: * bonobo/bonobo-selector.h: * bonobo/bonobo-socket.h: * bonobo/bonobo-ui-config-widget.h: * bonobo/bonobo-ui-sync.c: * bonobo/bonobo-ui-toolbar-button-item.h: * bonobo/bonobo-ui-toolbar-control-item.h: * bonobo/bonobo-ui-toolbar-item.h: * bonobo/bonobo-ui-toolbar-popup-item.h: * bonobo/bonobo-ui-toolbar-toggle-button-item.h: * bonobo/bonobo-ui-toolbar.h: * bonobo/bonobo-ui-xml.c: * bonobo/bonobo-ui-xml.h: * bonobo/bonobo-widget.h: * bonobo/bonobo-window.h: * bonobo/bonobo-wrapper.h: * samples/compound-doc/bonobo-hello/hello-embeddable.h: * samples/compound-doc/bonobo-hello/hello-view.h: Use GType and the G_TYPE_* macros instead of the deprecated GtkType and GTK_* macros. Allows building libbonoboui using programmes with GTK_DISABLE_DEPRECATED again. ==================== libbonoboui 2.23.4 ===================== 2008-06-14 Christian Persch * Makefile.am: * NEWS: * autogen.sh: * configure.in: Prepare 2.23.4. 2008-05-29 Christian Persch * bonobo/bonobo-a11y.h: * bonobo/bonobo-canvas-component.h: * bonobo/bonobo-canvas-item.h: * bonobo/bonobo-control-frame.h: * bonobo/bonobo-control.h: * bonobo/bonobo-dock-item-grip.h: * bonobo/bonobo-embeddable-factory.h: * bonobo/bonobo-file-selector-util.h: * bonobo/bonobo-plug.h: * bonobo/bonobo-socket.h: * bonobo/bonobo-ui-component.h: * bonobo/bonobo-ui-container.h: * bonobo/bonobo-ui-engine.h: * bonobo/bonobo-ui-private.h: * bonobo/bonobo-ui-sync-keys.h: * bonobo/bonobo-ui-sync-menu.h: * bonobo/bonobo-ui-sync-status.h: * bonobo/bonobo-ui-sync.h: * bonobo/bonobo-ui-toolbar-button-item.h: * bonobo/bonobo-ui-toolbar-control-item.h: * bonobo/bonobo-ui-toolbar-item.h: * bonobo/bonobo-ui-toolbar-popup-item.h: * bonobo/bonobo-ui-toolbar-toggle-button-item.h: * bonobo/bonobo-ui-toolbar.h: * bonobo/bonobo-ui-util.h: * bonobo/bonobo-widget.h: * bonobo/bonobo-window.h: * bonobo/bonobo-wrapper.h: Include instead of single headers. Bug #535475. 2008-05-28 Cosimo Cecchi reviewed by: Michael Meeks * bonobo/bonobo-ui-util.c: (is_super), (is_hyper), (is_meta), (bonobo_ui_util_accel_parse), (bonobo_ui_util_accel_name): Add support for Super/Hyper/Meta in keybindings. Patch by Ted Gould. (#525626). ==================== libbonoboui 2.22.0 ===================== 2008-03-10 Kjartan Maraas * NEWS: Update. * configure.in: Bump version. ==================== libbonoboui 2.21.90 ==================== 2008-01-28 Kjartan Maraas * NEWS: Update * configure.in: Bump version. 2008-01-23 Kjartan Maraas * bonobo/Makefile.am: Link to popt * bonobo/bonobo-ui-init-gtk.c: #include * configure.in: Check for popt * tests/test-ui.c: (cb_do_hide_toolbar): Fix a leak. 2008-01-22 Tor Lillqvist * libbonoboui-zip.in: Look for catalogs in share/locale first, as that is where they will be with a properly built GNU gettext. 2007-11-13 Christian Persch * bonobo/bonobo-ui-util.c: (bonobo_help_display_cb): Restore the fix for bug #125046. 2007-11-13 Christian Persch * configure.in: Update version after branching. 2007-11-12 Kjartan Maraas * bonobo/bonobo-selector-widget.c: Remove redundant include. 2007-11-12 J.H.M. Dassen (Ray) * bonobo/bonobo-ui-util.c: (bonobo_help_display_cb): Disabled the dialog for now due to breaking the string freeze. 2007-11-11 J.H.M. Dassen (Ray) * bonobo/bonobo-ui-util.c: (bonobo_help_display_cb): Use a dialog for the "Help not found" message. Bug #125046. Patch from Matthias Clasen with correction from Christian Persch. ============================= 2.20.0 ===================== 2007-08-19 Gilles Dartiguelongue * samples/container/bonobo-sample-container.c: (main): * tests/Makefile.am: * tests/test-moniker.c: (main): move to GOption and fix a typoe in Makefile.am ============================= 2.19.6 ===================== 2007-07-30 Christian Persch * autogen.sh: * configure.in: Build fixes. 2007-07-11 Christian Persch * configure.in: Temporarily remove the deprecation flags so we can build with gtk+ trunk. Bug #455597. 2007-06-19 Gustavo J. A. M. Carneiro * configure.in: Bump verison. ============================= 2.19.4 ===================== 2007-06-19 Gustavo J. A. M. Carneiro * NEWS: update * configure.in: Bump version to 2.19.4. 2007-03-23 Christian Persch * bonobo/Makefile.am: * bonobo/bonobo-canvas-item.c: * bonobo/bonobo-dock-item-grip.c: * bonobo/bonobo-dock-item.c: * bonobo/bonobo-file-selector-util.c: * bonobo/bonobo-plug.c: * bonobo/bonobo-selector-widget.c: * bonobo/bonobo-selector.c: * bonobo/bonobo-ui-config-widget.c: * bonobo/bonobo-ui-engine-config.c: * bonobo/bonobo-ui-engine.c: * bonobo/bonobo-ui-init-gtk.c: * bonobo/bonobo-ui-main.c: * bonobo/bonobo-ui-sync-menu.c: * bonobo/bonobo-ui-sync-toolbar.c: * bonobo/bonobo-ui-toolbar.c: * bonobo/bonobo-ui-util.c: * bonobo/bonobo-window.c: * bonobo/bonobo-zoomable.c: * tests/control/test-control.c: * tests/test-focus.c: * tests/test-sensitivity.c: * tests/test-toolbar.c: * tests/test-ui.c: Use glib/gi18n[-lib].h instead of bonobo-i18n.h. Bug #419535. 2007-03-17 Kjartan Maraas * tools/browser/bonobo-browser.desktop.in: Remove Application from the categories. ============================= 2.18.0 ===================== 2007-02-27 Kjartan Maraas * bonobo/bonobo-dock.c: (get_docked_item_by_name): * bonobo/bonobo-ui-util.c: Remove unneeded trailing commas. ============================= 2.17.94 ==================== 2006-02-26 Kjartan Maraas bonobo/Makefile.am: Fix the previous fix. configure.in: Bump version again. ============================= 2.17.93 ==================== 2007-02-26 Kjartan Maraas * bonobo/Makefile.am: Make sure bonobo-ui-type-builtins.c has #include * configure.in: Bump version. ============================= 2.17.92 ===================== 2007-02-20 Kjartan Maraas * MAINTAINERS: Add myself. * Makefile.am: Dist MAINTAINERS * NEWS: Update. ============================= 2.17.91 ===================== 2007-01-30 Christian Persch * bonobo/bonobo-ui-toolbar-popup-item.c: (set_arrow_orientation), (bonobo_ui_toolbar_popup_item_finalize), (bonobo_ui_toolbar_popup_item_class_init), (bonobo_ui_toolbar_popup_item_init), (bonobo_ui_toolbar_popup_item_construct): Fix a bug introduced by the switch to GtkArrow by creating one arrow per widget, not a global one. Silence a compiler warning, and add a comment explaining why it's ok to do so here. Bug #162312. * tests/test-toolbar.c: (main): Quit when closing the window. 2007-01-23 Kjartan Maraas * tests/test-sensitivity.c: (main): Fix build with older compilers. Patch from Jens Granseuer. Closes bug #399475. ========================= 2.17.90 ======================= 2007-01-22 Kjartan Maraas * bonobo/bonobo-plug.c: (bonobo_plug_finalize): * tools/browser/component-info.c: (free_all_members): Remove more checks before g_free(). 2007-01-15 Kjartan Maraas * samples/container/bonobo-sample-container.c: (window_destroyed), (window_title), (verb_HelpAbout), (verb_FileExit), (verb_Activate), (window_create), (main): * tests/dock_demo.c: (main): * tests/test-events.c: (main): * tests/test-filesel.c: (main): * tests/test-focus.c: (main): * tests/test-moniker.c: (main): * tests/test-reparent.c: (main): * tests/test-selector.c: (main): * tests/test-sensitivity.c: (main): * tests/test-toolbar.c: (main): * tests/test-ui-auto.c: (main): * tests/test-ui.c: (main): Unref the GnomeProgram in these. 2007-01-14 Kjartan Maraas * bonobo/libbonoboui-2.0-uninstalled.pc.in: * bonobo/libbonoboui-2.0.pc.in: Add gnome-vfs-2.0 to Requires.private. 2007-01-13 Marko Anastasov * configure.in: Add gnome-vfs and gnome-vfs-module to BONOBOUI_MODULES. 2007-01-09 Christian Persch * bonobo/Makefile.am: * configure.in: Bump version to 2.17.1. Define BONOBO_LOCALEDIR in Makefile.am, NOT in configure. 2007-01-09 Christian Persch R acconfig.h: * autogen.sh: * bonobo/Makefile.am: * configure.in: Use GNOME_MAINTAINER_MODE_DEFINES which will only define the deprecations if you build with --enable-maintainer-mode. Misc autoconf cleanup. 2007-01-09 Christian Persch * bonobo/bonobo-ui-init-gtk.c: Instead of just including popt.h, include gnome-init.h with GNOME_DISABLE_DEPRECATED undefined. 2006-12-19 Kjartan Maraas * bonobo/libbonoboui-2.0.pc.in: Move ORBit2 and libxml2 to Requires.private. Samuel Thibault. Closes bug #352191. 2006-12-14 Kjartan Maraas * bonobo/bonobo-canvas-item.c: * bonobo/bonobo-control-frame.c: * bonobo/bonobo-control.c: * bonobo/bonobo-plug.c: Make it build with the Quartz backend. Patch from Min Sik Kim Closes bug #382692. 2006-12-14 Kjartan Maraas * bonobo/bonobo-dock-layout.c: (bonobo_dock_layout_create_string): Guard against NULL to avoid crashes on Win32 at least. Patch from Andreas Köhler. Closes bug #379365. 2006-12-14 Kjartan Maraas * bonobo/bonobo-ui-toolbar-popup-item.c: (set_arrow_orientation), (impl_set_orientation), (bonobo_ui_toolbar_popup_item_class_init), (bonobo_ui_toolbar_popup_item_construct): Use GtkArrow to draw the arrows instead of hardcoding them internally. Patch from Diego Escalante Urrelo. Closes bug #162312. 2006-12-14 Kjartan Maraas * bonobo/bonobo-control.c: * bonobo/bonobo-selector-widget.c: (bonobo_selector_widget_init): * bonobo/bonobo-ui-private.h: * bonobo/bonobo-ui-sync-toolbar.c: (impl_bonobo_ui_sync_toolbar_state): * samples/compound-doc/bonobo-hello/hello-view.c: (view_new): * tools/browser/component-details.c: (component_details_init), (component_details_get_info): A bunch of cleanups: - Don't use C++ type comments - Pass NULL to gtk_label_new() to save some work. 2006-12-10 Gustavo J. A. M. Carneiro * bonobo/bonobo-ui-init-gtk.c: Add missing #include . 2006-12-10 P. Henrique Silva reviewed by: Gustavo Carneiro * bonobo/bonobo-canvas-item.c (gbi_update, gbi_realize), (gbi_unrealize, gbi_finalize, bonobo_canvas_item_init): * bonobo/bonobo-dock-band.c (bonobo_dock_band_init), (bonobo_dock_band_map, bonobo_dock_band_unmap), (bonobo_dock_band_finalize): * bonobo/bonobo-dock-item-grip.c (bonobo_dock_item_grip_init), (bonobo_dock_item_grip_key_press_event), (bonobo_dock_item_grip_class_init): * bonobo/bonobo-dock-item.c (bonobo_dock_item_init), (bonobo_dock_item_finalize, bonobo_dock_item_unrealize), (bonobo_dock_item_float_window_expose, bonobo_dock_item_expose), (bonobo_dock_item_add, bonobo_dock_item_remove): * bonobo/bonobo-dock.c (bonobo_dock_init, bonobo_dock_map), (bonobo_dock_unmap, bonobo_dock_finalize): * bonobo/bonobo-plug.c (bonobo_plug_realize), (bonobo_plug_unrealize, bonobo_plug_map, bonobo_plug_dispose), (bonobo_plug_finalize, bonobo_plug_size_allocate), (bonobo_plug_size_request, bonobo_plug_expose_event), (bonobo_plug_init): * bonobo/bonobo-selector-widget.c: (bonobo_selector_widget_finalize, bonobo_selector_widget_init): * bonobo/bonobo-selector.c (bonobo_selector_finalize), (bonobo_selector_init): * bonobo/bonobo-socket.c (bonobo_socket_finalize), (bonobo_socket_dispose, bonobo_socket_realize), (bonobo_socket_unrealize, bonobo_socket_expose_event), (bonobo_socket_hierarchy_changed, bonobo_socket_focus_in), (bonobo_socket_focus_out, bonobo_socket_size_allocate), (bonobo_socket_size_request, bonobo_socket_show), (bonobo_socket_init): * bonobo/bonobo-ui-config-widget.c (bonobo_ui_config_widget_init), (bonobo_ui_config_widget_finalize): * bonobo/bonobo-ui-toolbar-button-item.c (impl_finalize), (impl_set_style, bonobo_ui_toolbar_button_item_init): * bonobo/bonobo-ui-toolbar-control-item.c: (impl_toolbar_reconfigured, impl_dispose), (impl_create_menu_proxy, impl_notify, impl_map_event), (bonobo_ui_toolbar_control_item_init): * bonobo/bonobo-ui-toolbar-item.c (impl_finalize), (bonobo_ui_toolbar_item_init): * bonobo/bonobo-ui-toolbar-popup-itemc (impl_set_orientation), (bonobo_ui_toolbar_popup_item_init): * bonobo/bonobo-ui-toolbar-toggle-button-item.c: (bonobo_ui_toolbar_toggle_button_item_init): * bonobo/bonobo-ui-toolbar.c (impl_dispose, impl_finalize), (bonobo_ui_toolbar_init): * bonobo/bonobo-widget.c (bonobo_widget_dispose), (bonobo_widget_finalize, bonobo_widget_remove), (bonobo_widget_init): * bonobo/bonobo-window.c (bonobo_window_dispose), (bonobo_window_finalize, bonobo_window_key_press_event), (bonobo_window_key_release_event, bonobo_window_init): Bug 383497 - build fails: deprecated macros used in libbonoboui. 2006-11-15 Kjartan Maraas * bonobo/bonobo-ui-internal-toolbar.c: (impl_style_changed): Fix a GList leak. 2006-11-15 Kjartan Maraas * bonobo/bonobo-canvas-component.c: (impl_Bonobo_Canvas_Component_realize): Remove unused bits. * bonobo/bonobo-control-frame.c: (control_connection_died_cb), (bonobo_control_frame_get_remote_window), (bonobo_control_frame_dispose), (bonobo_control_frame_finalize): Rename dprintf() to dbgprintf() to avoid conflict with libc function. * bonobo/bonobo-control.c: (control_frame_connection_died_cb), (bonobo_control_add_listener), (impl_Bonobo_Control_getWindowId), (bonobo_control_destroy), (bonobo_control_finalize), (bonobo_control_set_plug): dprintf() -> dbgprintf(). * bonobo/bonobo-plug.c: (bonobo_plug_new_for_display), (bonobo_plug_set_control), (bonobo_plug_delete_event), (bonobo_plug_realize), (bonobo_plug_unrealize), (bonobo_plug_map), (bonobo_plug_dispose), (bonobo_plug_size_allocate), (bonobo_plug_size_request), (bonobo_plug_expose_event): Same again. * bonobo/bonobo-socket.c: (bonobo_socket_finalize), (bonobo_socket_dispose), (bonobo_socket_realize), (bonobo_socket_unrealize), (bonobo_socket_expose_event), (bonobo_socket_focus_in), (bonobo_socket_focus_out), (bonobo_socket_size_allocate), (bonobo_socket_size_request), (bonobo_socket_show), (bonobo_socket_plug_removed): Same again. * bonobo/bonobo-ui-engine.c: (info_free_fn), (bonobo_ui_engine_object_set), (bonobo_ui_engine_dispose), (impl_finalize): And here. * bonobo/bonobo-ui-private.h: Rename the declarations. * bonobo/bonobo-ui-sync-menu.c: (impl_bonobo_ui_sync_menu_update_root): Fix a compiler warning. * tests/control/test-control.c: (destroy_cb): More renaming. 2006-10-08 Matthew Barnes * doc/api/libbonoboui-docs.sgml: Add an index to the API docs. ======================== 2.15.1 =========================== 2006-08-28 Federico Mena Quintero * bonobo/bonobo-ui-sync-menu.c (widget_has_accel): Free the list of closures if we find a match. Patch by Cecilia González . 2006-08-21 Cecilia Gonzalez Fixes #352628: * bonobo/bonobo-ui-sync-menu.c (impl_bonobo_ui_sync_menu_state): Check if a accelerator closure exists already and avoid multiple addings of the same accelerator. (widget_has_accel): New function that checks if a widget has an specific accelerator. This fixes memory growth when switching components in Evolution. 2006-08-14 Kjartan Maraas * tools/browser/window.c: (verb_HelpAbout): Fix the about dialog. Patch from Matthias Clasen. Closes bug #351127. 2006-08-10 Manuel Clos * bonobo/bonobo-ui-sync-menu.c: Set the menubar to the correct detachable state. Closes bug #80156. ============================= 2.15.0 ====================== 2006-08-07 Kjartan Maraas * bonobo/bonobo-control.h: * bonobo/bonobo-widget.h: Sentinel markup patch from Marcus Meissner Closes bug #308444. 2006-08-07 Kjartan Maraas * bonobo/bonobo-ui-engine.c: (check_excess_widgets): Use G_OBJECT_GET_CLASS() to before passing stuff on to G_OBJECT_CLASS_NAME(). Patch from Narayana Pattipati. Closes bug #109883. 2006-08-07 Kjartan Maraas * bonobo/bonobo-ui-preferences.c: (bonobo_ui_preferences_get_toolbar_style): Fix for strict aliasing warning from GCC. Patch from mmeisner at suse de. Closes bug #308446. * configure.in: Bump version. 2006-08-04 Kjartan Maraas * samples/canvdemo/circle.c: Fix headers. * samples/canvdemo/square.c: Fix headers. * samples/controls/bonobo-sample-controls.c: Same here. 2006-06-17 Nickolay V. Shmyrev * bonobo/bonobo-dock-item.c: (bonobo_dock_item_detach): Fixes bug #167944. One can move detached toolbars again. 2006-06-17 Kjartan Maraas * tools/browser/oaf-helper.c: (get_lang): Patch from Joe Marcus Clarke to fix a crash when LANG is NULL. Closes bug #166430. 2006-06-17 Kjartan Maraas * configure.in: Patch from Przemysław Grzegorczyk for po/LINGUAS support. * po/LINGUAS: Closes bug #338544. 2006-06-16 Tor Lillqvist * tools/browser/oaf-helper.c: Use g_win32_getlocale() on Win32. 2006-05-17 Kjartan Maraas * bonobo/bonobo-canvas-component.c: (bonobo_canvas_new): * bonobo/bonobo-canvas-item.c: * bonobo/bonobo-control-frame.c: (bonobo_control_frame_get_remote_window): * bonobo/bonobo-control.c: (bonobo_control_window_id_from_x11), (create_plug), (impl_Bonobo_Control_getWindowId), (bonobo_control_construct), (bonobo_control_do_popup_full): * bonobo/bonobo-dock-band.c: (bonobo_dock_band_remove), (bonobo_dock_band_insert): * bonobo/bonobo-dock-item-grip.c: (bonobo_dock_item_grip_dock), (bonobo_dock_item_grip_undock): * bonobo/bonobo-dock-item.c: (bonobo_dock_item_unrealize), (bonobo_dock_item_size_allocate), (bonobo_dock_item_add): * bonobo/bonobo-dock.c: (drag_new), (_bonobo_dock_handle_key_nav): * bonobo/bonobo-plug.c: * bonobo/bonobo-selector-widget.c: * bonobo/bonobo-selector.c: * bonobo/bonobo-socket.c: * bonobo/bonobo-ui-config-widget.c: (set_values): * bonobo/bonobo-ui-engine.c: (bonobo_ui_engine_widget_set): * bonobo/bonobo-ui-internal-toolbar.c: * bonobo/bonobo-ui-preferences.c: * bonobo/bonobo-ui-sync-keys.c: (bonobo_ui_sync_keys_binding_handle): * bonobo/bonobo-ui-sync-toolbar.c: (impl_bonobo_ui_sync_toolbar_state), (toolbar_build_control): * bonobo/bonobo-ui-sync.c: * bonobo/bonobo-ui-toolbar-button-item.c: * bonobo/bonobo-ui-toolbar-control-item.c: (get_parent_toolbar), (bonobo_ui_toolbar_control_item_instance_init): * bonobo/bonobo-ui-toolbar-item.c: * bonobo/bonobo-ui-toolbar-popup-item.c: * bonobo/bonobo-ui-toolbar-toggle-button-item.c: * bonobo/bonobo-ui-toolbar.c: (item_destroy_cb), (popup_window_map_cb), (popup_item_toggled_cb), (size_allocate_helper), (impl_dispose), (impl_size_allocate), (bonobo_ui_toolbar_insert): * bonobo/bonobo-ui-util.c: (bonobo_ui_util_xml_set_image): * bonobo/bonobo-ui-xml.c: (dump_internals): * bonobo/bonobo-widget.c: (bonobo_widget_construct_control): * bonobo/bonobo-window.c: * samples/canvdemo/main.c: (create_app): * samples/canvdemo/square.c: * tests/control/test-control.c: (main): * tests/test-focus.c: (main): * tests/test-moniker.c: * tests/test-reparent.c: * tests/test-sensitivity.c: (main): * tests/test-ui-auto.c: (test_engine_misc), (test_ui_performance): * tests/test-ui.c: (toggled_cb), (main): * tools/browser/bonobo-browser.xml: * tools/browser/component-details.c: (component_details_init): * tools/browser/component-list.c: (sort_component_active), (sort_component_name), (sort_component_type), (sort_component_iid), (component_list_init), (component_list_finalize), (component_list_get_selected_iid): * tools/browser/oaf-helper.c: (get_lang), (bonobo_component_get_repoids): * tools/browser/window.c: (verb_HelpAbout): - Remove dead code - Remove extraneous semi-colons - Fix typos - Fix format specifiers - Fix compiler warnings - Mark some code as static - Rename some variables 2006-04-18 Kjartan Maraas * configure.in: Remove obsolete entry for no_NO * po/no.po: And the translation. 2006-04-02 Vladimer Sichinava * configure.in: Added "ka" (Georgian) to ALL_LINGUAS 2006-03-28 Nickolay V. Shmyrev * bonobo/bonobo-dock-item.c: * bonobo/bonobo-dock-item.h: Export bonobo_dock_item_set_behavior in headers. Fix for the bug #336306. 2006-02-21 Gustavo J. A. M. Carneiro * bonobo/bonobo-widget.c (control_new_async_cb): Missing unref on object. Fixes Bug 331590: "bonobo widget code leaks CORBA Object reference". Patch by Adriano Winter Bess. 2006-02-21 Nickolay V. Shmyrev * tools/browser/bonobo-browser.desktop.in: Update desktop file. Fix for the bugs #331647 and #328466. Thanks to Stephane Loeuillet and Vincent Untz. 2006-01-17 Emmanuele Bassi * configure.in: post release bump to 2.13.2 2006-01-16 Emmanuele Bassi * NEWS: release 2.13.1 2006-01-16 Emmanuele Bassi * configure.in: depend on libgnome >= 2.13.7 since it fixes the previous include hack. * bonobo/bonobo-ui-init-gtk.c: * bonobo/bonobo-ui-preferences.c: * bonobo/bonobo-ui-util.c: revert previous hack. 2006-01-16 Emmanuele Bassi * bonobo/bonobo-ui-init-gtk.c: * bonobo/bonobo-ui-preferences.c: * bonobo/bonobo-ui-util.c: HACK! compilation fixes manually including popt.h 2006-01-16 Emmanuele Bassi * bonobo/bonobo-ui-init-gtk.c: (bonobo_ui_gtk_module_info_get): Apply a patch from Christian Persch that makes libbonoboui use the correct struct member for parsing command line arguments using GOption. 2006-01-12 Abel Cheung * configure.in: Added "zh_HK" to ALL_LINGUAS. 2006-01-09 Kjartan Maraas * bonobo/bonobo-ui-init-gtk.c: (bonobo_ui_gtk_pre_args_parse), (bonobo_ui_gtk_post_args_parse), (bonobo_ui_gtk_module_get_goption_group), (bonobo_ui_gtk_module_info_get): Fix leaks introduced by the move to GOption. (Christian Perch) Closes bug #326237. * configure.in: Bump version. 2006-01-06 Abel Cheung * configure.in: Added "mk" to ALL_LINGUAS. 2005-09-29 Christian Persch * configure.in: Bump version to 2.13.0, and require libbonobo and bonobo-activation 2.13.0. * bonobo/bonobo-ui-init-gtk.c: (bonobo_ui_gtk_pre_args_parse), (bonobo_ui_gtk_post_args_parse), (bonobo_ui_gtk_module_info_get): Enable GOption argument parsing in gnome_program_init. Patch by Pawel Sliwowski , bug #307312. 2005-09-10 Erdal Ronahi * po/ku.po: Added Kurdish Translation 2005-08-31 Gustavo J. A. M. Carneiro * bonobo/bonobo-selector-widget.c (get_lang_list): Use g_get_language_names instead of the deprecated gnome_i18n_get_language_list(). 2005-08-19 Kjartan Maraas * Version 2.10.1: Fix up the release confusion I created. 2005-08-17 Michael Meeks * Version 2.10.0 2005-07-13 Nickolay V. Shmyrev reviewed by: Michael Meeks * bonobo/bonobo-ui-sync-status.c: (impl_bonobo_ui_sync_status_build): * doc/ui-xml.txt: Add options to pack control in statusbar. 2005-03-14 Not Zed * bonobo/bonobo-ui-node.c (bonobo_ui_node_get_attr): use xmlStrDup, since free_string uses xmlFree. See bug #170282. 2005-05-30 Rodrigo Moya * tools/browser/window.c (bonobo_browser_create_window): fixed widgets spacing and use stock icons where possible. 2005-05-06 Balamurali Viswanathan * bonobo/bonobo-ui-engine.c (bonobo_ui_engine_sync): Add a check for NULL in g_warning. 2005-04-17 Tor Lillqvist * configure.in: Require GTK+ and GObject 2.6. * bonobo/Makefile.am: Add bonobo-ui-win32.c. Pass also the compile-time prefix as PREFIX to the compilations. * bonobo/bonobo-ui-main.c (do_low_level_init): On Win32, register an own XML file open callback that takes a UTF-8 file name and uses g_fopen(). * bonobo/bonobo-ui-util.c (find_pixmap_in_path, bonobo_ui_util_get_ui_fname): Use GLib path manipulation functions g_path_is_absolute() and g_build_filename(). * bonobo/bonobo-ui-win32.c: New file, for Win32. Contains DLL entry point DllMain() and helper functions to get the localedir, datadir and uidir at run-time using the end-user machine specific installation prefix. (DllMain): Here I use a very minimal DllMain() that just tucks away the DLL handle for later use. This feels much safer than the more complex DllMain() functions I have occasionally used that call GLib functions and whatnot. (setup): Helper function that looks up the DLL's location at run-time and detetmines the installation folder from that. (_bonobo_ui_get_localedir, _bonobo_ui_get_datadir, _bonobo_ui_get_uidir): Return the run-time directories. * bonobo/bonobo-ui-private.h: Declare above helper functions and redefine the BONOBO_LOCALEDIR etc macros from Makefile.am to call them. 2005-03-30 Steve Murphy * configure.in: Added "rw" to ALL_LINGUAS. 2005-03-24 Tor Lillqvist Initial port to Windows: * configure.in: Bump version to 2.9.0. (gnome-2-10 branch is 2.8.x.) Call AC_CANONICAL_HOST before checking $host. Check for Win32, and force shared library build on Win32. Check for extra X libraries only if GTK+ target is x11. * libbonoboui-zip.in: New file, used to build zip format distribution for Win32. * configure.in * Makefile.am: Expand and dist it. * bonobo/Makefile.am: Explicitly link with INTLLIBS. * bonobo/bonobo-canvas-component.c * bonobo/bonobo-dock-item.c * bonobo/bonobo-ui-main.c: Include gdkx.h only if GDK_WINDOWING_X11. * bonobo/bonobo-canvas-item.c * bonobo/bonobo-control.c * bonobo/bonobo-control-frame.c * bonobo/bonobo-plug.c * bonobo/bonobo-socket.c: Include gdkx.h or gdkwin32.h depending on GDK backend. Correspondingly, use GDK_WINDOW_XWINDOW() or GDK_WINDOW_HWND(). Ditto for gdk_xid_table_lookup_for_display() or gdk_win32_handle_table_lookup(). Setup X error handler only on X11. * bonobo/bonobo-file-selector-util.c: Do without GnomeVFS on Win32. * bonobo/bonobo-plug.c (bonobo_plug_button_event): Stubbed implementation on Win32. Unclear whether anything needs to be done. * bonobo/bonobo-selector-widget.c: Undefine GNOME_DISABLE_DEPRECATED and include gnome-i18n.h to get prototype for gnome_i18n_get_language_list(). * bonobo/bonobo-ui-main.c: Do bonobo_setup_x_error_handler() only on X11. (do_low_level_init): Set CORBA context X11 display only on X11. * tests/test-reparent.c: Add and remove the widgets through timeouts, makes it work more reliably on Win32. 2005-02-08 Christian Rose * configure.in: Added "xh" to ALL_LINGUAS. 2005-02-05 Gustavo J. A. M. Carneiro * tools/browser/Makefile.am (CLEANFILES): Add bonobo-browser.desktop. * configure.in: Version 2.8.1. * NEWS: Update. 2005-02-02 Markus Meissner * bonobo/bonobo-selector.c (bonobo_selector_new): fix g_object_new termination. 2005-01-22 Benjamin Berg * bonobo/bonobo-dock-item-grip.c (bonobo_dock_item_grip_expose): The orientation passed to gtk_paint_handle should not be the same as the orientation of the widget, but turned by 90°. Fixes #162761. 2004-01-10 Arvind Samptur * bonobo/bonobo-dock-item.c (bonobo_dock_item_detach): Don't create a new vbox/hbox if we had already had a detached toolbar and had actually hidden it. (bonobo_dock_item_unmap): set the floating hidden status (bonobo_dock_item_unrealize): invoke bonobo_dock_item_unfloat() when we are detached and hidden (bonobo_dock_item_unfloat): reset floating hidden status Fixes #161137 (bonobo_dock_item_attach): fix a compiler warning about a GtkWidget* not being used. 2005-01-04 JP Rosevear * bonobo/bonobo-ui-sync-toolbar.c (impl_bonobo_ui_sync_toolbar_update_root): use bonobo_ui_sync_toolbar_get_look instead of parse_look so that hlook and vlook are also handled 2005-01-11 Kjartan Maraas * bonobo/bonobo-dock-item-grip.c: (bonobo_dock_item_grip_get_accessible): Fix string. s/Un dock/Undock/. Closes bug #132211. 2004-12-11 Gustavo J. A. M. Carneiro * samples/canvdemo/Makefile.am (EXTRA_DIST): Remove CanvDemo.server, fixes #160558. * samples/controls/Makefile.am (EXTRA_DIST): Remove $(server_in_files) and $(server_DATA). Fixes #160380. 2004-12-02 Dwayne Bailey * configure.in: Added "zu" to ALL_LINGUAS. 2004-11-15 Dwayne Bailey * configure.in: Added "nso" to ALL_LINGUAS. Sat Nov 13 01:05:27 2004 Jonathan Blandford * bonobo/bonobo-canvas-item.c: * bonobo/bonobo-selector-widget.c: * bonobo/bonobo-selector.c: * bonobo/bonobo-ui-toolbar.c: * bonobo/bonobo-window.c: * tests/test-filesel.c: s/libgnome\/gnome-i18n.h/glib/gi18n.h/g 2004-10-21 Marco Pesenti Gritti reviewed by: Michael Meeks * bonobo/bonobo-ui-sync-toolbar.c: (impl_bonobo_ui_sync_toolbar_state), (toolbar_build_widget): Deprecate pack-end behavior and add a space type for separators. 2004-10-04 Gustavo J. A. M. Carneiro * bonobo/bonobo-control.c (bonobo_control_set_transient_for): See if there is already a GdkWindow wrapper registered for the x11_id, reuse it if it exists, otherwise request new one. Fixes #151378. 2004-10-02 Jesus Bravo Alvarez * configure.in: Added gl (Galician) to ALL_LINGUAS. 2004-09-29 Matthias Clasen Merged from the gnome-2-8 branch by Federico Mena Quintero : * bonobo/bonobo-ui-toolbar-control-item.c: Remove a broken and unneeded finalizer, avoid warnings when toolbars are destroyed, and make control toolitems non-homogeneous. 2004-09-27 Damien Carbery Fixes #153629 * tools/browser/bonobo-browser.c: include locale.h. 2004-09-25 Matthias Clasen * bonobo/bonobo-ui-preferences.c (bonobo_ui_preferences_get_toolbar_style): Match the prototype. 2004-09-25 Federico Mena Quintero * Merged the fixes from the toolbar-rework branch. 2004-09-21 Rodrigo Moya * tools/Makefile.am: added new tools directory. * tools/browser/*: get the Bonobo component browser from bonobo-support module. * configure.in: * Makefile.am: added new directories to the build. 2004-09-14 Tomasz Kłoczko * configure.in: remove AC_SUBST() for CFLAGS, CPPFLAGS and LDFLAGS variables (substed by default). 2004-09-13 Mark McLoughlin * configure.in: Version 2.8.0. 2004-09-08 Gora Mohanty * configure.in: Added 'or' to ALL_LINGUAS. 2004-08-16 Christian Rose * configure.in: Added "bs" to ALL_LINGUAS. 2004-08-11 Kjartan Maraas * bonobo/bonobo-control.c: (bonobo_control_get_ambient_properties), (bonobo_control_set_transient_for): NULL vs 0 stuff. * bonobo/bonobo-dock-layout.c: (bonobo_dock_layout_create_string): Same. * bonobo/bonobo-selector.c: (bonobo_selector_instance_init), (bonobo_selector_set_property): Same here too. * bonobo/bonobo-socket.c: Use correct type for the bitfield. * bonobo/bonobo-ui-preferences.c: (keys_changed_fn): gtk_idle_add() is deprecated. Use g_idle_add instead. * bonobo/bonobo-ui-sync-status.c: (impl_bonobo_ui_sync_status_state): Cast to avoid a warning. * bonobo/bonobo-ui-sync-toolbar.c: (get_dock_item): Fix warning. * bonobo/bonobo-window.c: (bonobo_window_instance_init): NULL vs 0 again * samples/compound-doc/container/document.c: (sample_doc_new): Ansi argument list again. * samples/container/bonobo-sample-container.c: NULL vs 0 again. * tests/test-moniker.c: Same here. 2004-08-11 Kjartan Maraas * configure.in: Added nb to ALL_LINGUAS. 2004-06-25 Muktha * bonobo/bonobo-ui-engine.c (check_excess_widgets): Add a check for NULL in g_message. 2004-05-14 Michael Meeks * Version 2.6.1 2004-05-14 Takao Fujiwara * bonobo/bonobo-ui-util.c (bonobo_ui_util_translate_ui): use direct gettext call to cover all domains. * bonobo/bonobo-ui-main.c (do_low_level_init) (bonobo_ui_init_full): initialize i18n bits / gettext package / code-set. * bonobo/Makefile.am: define BONOBO_EXPLICIT_TRANSLATION_DOMAIN. (#13872) 2004-05-12 Michael Meeks * bonobo/bonobo-ui-util.c (bonobo_ui_util_set_ui): don't add a broken file to the cache. * bonobo/bonobo-ui-node.c (bonobo_ui_node_to_string): add pre-condition. 2004-04-27 Michael Meeks * bonobo/bonobo-dock-band.c (check_guint_arg): add pre-condition. 2004-04-16 Iñaki Larrañaga * configure.in: Added "eu" (Basque) to ALL_LINGUAS. 2004-04-09 Guntupalli Karunakar * configure.in: Added "gu" (Gujarati) to ALL_LINGUAS. 2004-03-31 Christian Rose * configure.in: Added "af" to ALL_LINGUAS. 2004-03-30 Adam Weinberger * configure.in: Added en_CA to ALL_LINGUAS. 2004-03-29 Mark McLoughlin * configure.in: Version 2.6.0. 2004-03-21 Alastair McKinstry * configure.in: Added ga to ALL_LINGUAS. 2004-03-18 Alexander Larsson * bonobo/bonobo-control-frame.c (bonobo_control_frame_set_ui_container): Move activated check inside check for NIL, since we use this function with NIL from dispose. 2004-03-16 Gareth Owen * configure.in: Added en_GB to ALL_LINGUAS 2004-03-15 Alexander Larsson * doc/api/Makefile.am: Pass flag needed to access all gtk-doc:ed headers. Fixed gtk-doc build on 64bit systems. 2004-03-09 Michael Meeks * Version 2.5.4 2004-03-08 Michael Meeks * bonobo/bonobo-ui-toolbar-toggle-button-item.h, * bonobo/bonobo-ui-toolbar-button-item.h, * bonobo/bonobo-ui-toolbar-item.h, * bonobo/bonobo-ui-toolbar.h: add deprecated flags, should never have been exposed. 2004-03-07 Glynn Foster * bonobo/Makefile.am, bonobo/libbonoboui-2.0-uninstalled.pc.in, configure.in: Add uninstalled pc file, so that we can link the library without installing it. 2004-03-05 Michael Meeks * bonobo/bonobo-file-selector-util.c (response_cb): don't do bad things. 2004-03-04 Guntupalli Karunakar * configure.in: Added "pa" (Punjabi) to ALL_LINGUAS. 2004-02-25 Danilo Šegan * configure.in: Added sr@ije to ALL_LINGUAS. 2004-02-24 Michael Meeks * Version 2.5.3. 2004-02-18 Michael Meeks * bonobo/bonobo-dock-item.c (check_guint_arg): add pre-condition. (get_preferred_height, get_preferred_width): return 0 if we have no child; odd. 2004-02-16 Arvind Samptur * bonobo/bonobo-window.c: (bonobo_window_class_init): upd. (bonobo_window_focus): bin: always was a bad idea. 2004-02-07 Robert Sedak * configure.in: Added "hr" (Croatian) to ALL_LINGUAS. 2004-01-25 Jody Goldberg * bonobo/bonobo-dock-* : revert the use of the G_DEFINE_TYPE macros until the new typename prefixed versions are put into a release. right now CVS prefixes, and 2.3.2 does not, but cvs has not yet bumped it version. Which makes a mess. 2004-01-25 Michael Meeks * bonobo/*.c: add #include "config.h"s where they were missing - thanks to Morten. 2004-01-23 Jody Goldberg * bonobo/bonobo-dock-band.h : Use the G_TYPE macros in place of GTK_CHECK * bonobo/bonobo-dock-item-grip.h : ditto. * bonobo/bonobo-dock-item.h : ditto. * bonobo/bonobo-dock-layout.h : ditto. * bonobo/bonobo-dock.h : ditto. * bonobo/bonobo-dock-band.c : Port to G_DEFINE_TYPE in place of GNOME_CLASS_BOILERPLATE * bonobo/bonobo-dock-item-grip.c : ditto. * bonobo/bonobo-dock-item.c : ditto. * bonobo/bonobo-dock.c : ditto. * configure.in : bump gobject req to 2.3.2 to enable the use of G_DEFINE_TYPE 2004-01-21 Fernando Herrera * bonobo/bonobo-ui-init-gtk.c: Remove gxid-host and gxid-port from POPT_ARGs (they are not supported on gtk 2.3) 2004-01-15 Michael Meeks * Version 2.5.2 2004-01-15 Jason Leach * configure.in: require gtk2 >= 2.3.1 2004-01-14 Albert Chin-A-Young * bonobo/bonobo-dock-item.h, bonobo/bonobo-dock-band.h, bonobo/bonobo-dock.h: fix (signed) enum bitfields * bonobo/bonobo-canvas-item.c: fix trailing comma in enum. * bonobo/bonobo-ui-util.c (read_four_bytes): bin bogus const. 2004-01-12 Sergey V. Udaltsov * bonobo/bonobo-ui-util.c (bonobo_ui_util_xml_set_image): handle image loading with a defined size for svg artwork. 2004-01-07 Alexander Larsson * bonobo/bonobo-ui-sync-status.c (impl_bonobo_ui_sync_status_build): Handle the pack-start behaviour attribute 2004-01-07 Michael Meeks * bonobo/bonobo-ui-sync-status.c (has_item_to_the_right): add to deal with pack-end fun. (impl_bonobo_ui_sync_status_state): upd. logic. 2003-12-30 Federico Mena Quintero * bonobo/bonobo-control.c (impl_Bonobo_Control_activate): Ahem, flip my reversed condition. 2003-12-29 Federico Mena Quintero * bonobo/bonobo-control.c (impl_Bonobo_Control_activate): Fixed the emission logic; actually test against the old activation state. Also, call bonobo_control_activate_notify() to notify the control frame. 2003-12-15 JP Rosevear * bonobo/bonobo-ui-sync-toolbar.c (toolbar_build_widget): do a memmove instead of a strcpy because the strings overlap 2003-12-11 Michael Meeks * bonobo/bonobo-ui-toolbar.c (size_allocate_helper): fix bug where item + where small item was < sizeof expander popup would cause the last 2 items to always hit the expander. Cleaned up logic, simplified a tad. X#49949 2003-12-08 Michael Meeks * Version 2.5.1 * bonobo/bonobo-control.c (bonobo_control_do_popup_full), (bonobo_control_do_popup_path): split out / add a more useful API variant. 2003-12-05 Jan Arne Petersen * bonobo/bonobo-file-selector-util.c: (response_cb), (create_gtk_selector): Replace GtkFileSelection with GtkFileChooser. * samples/compound-doc/container/container-filesel.c: (container_request_file): * samples/compound-doc/container/container-filesel.h: * samples/compound-doc/container/container-menu.c: (load_response_cb), (save_response_cb), (verb_FileSaveAs_cb), (verb_FileLoad_cb): ditto. 2003-12-06 Michael Meeks * tests/test-ui.c (main): add keys test. * bonobo/bonobo-ui-engine.c (impl_emit_verb_on, impl_emit_event_on): inhibit event / verb emission on insensitive command nodes, fixes keybindings problem; thanks to Chris Toshok. * bonobo/bonobo-control.c (create_plug): emit 'plug_created' signal. (bonobo_control_get_plug): expose and document. 2003-10-29 Michael Meeks * Makefile.am (DISTCLEANFILES): add . 2003-10-29 Michael Meeks * Version 2.4.1 2003-10-29 Steve Chaplin * configure.in: add setup for PKG_CONFIG, fixing configure bug. 2003-10-08 Mark McLoughlin * COPYING.LIB: added LGPL. COPYING is GPL. 2003-10-06 Christian Rose * configure.in: Added "mr" to ALL_LINGUAS. 2003-09-28 Gediminas Paulauskas * configure.in: Added lt to ALL_LINGUAS. 2003-09-22 Kjartan Maraas * bonobo/bonobo-ui-sync-menu.h: * bonobo/bonobo-ui-sync-toolbar.h: Added missing prototypes to get rid of warnings. Fixes bug #122757. 2003-09-15 Martin Kretzschmar * bonobo/bonobo-ui-sync-menu.c (impl_bonobo_ui_sync_menu_build) (impl_bonobo_ui_sync_menu_build_placeholder): use gtk_separator_menu_item_new to create separators, fixes #122314 ( screen reader menu item count) (Michael gave the hint). 2003-09-09 Taneem Ahmed * configure.in: Added "bn" to ALL_LINGUAS. 2003-08-31 Christian Rose * configure.in: Added "ne" to ALL_LINGUAS. 2003-08-31 Laurent Dhima * configure.in: Added "sq" to ALL_LINGUAS. 2003-08-27 Michael Meeks * Version 2.4.0 2003-08-22 Samúel Jón Gunnarsson * configure.in: Added "is" to ALL_LINGUAS. 2003-08-21 Martin Kretzschmar * samples/container/bonobo-sample-container.c: define POPT_TABLEEND when compiling with older popt 2003-08-11 Michael Meeks * Version 2.3.6 2003-08-06 Yuedong Du * bonobo/bonobo-ui-util.c: (bonobo_ui_util_build_help_menu): add shortcut F1 to help menu entry, fix bug 47376 2003-08-04 Federico Mena Quintero Fixes #118705. * bonobo/bonobo-socket.c (BonoboSocketPrivate): Removed the toplevel field, as GtkSocket already has such a field. (bonobo_socket_hierarchy_changed): Oops, chain to the parent handler. (bonobo_socket_finalize): Don't tweak priv->toplevel. (bonobo_socket_instance_init): Likewise. (bonobo_socket_dispose): Use the GtkSocket's toplevel. * bonobo/bonobo-ui-toolbar-button-item.c (bonobo_ui_toolbar_button_item_construct): Unset GTK_CAN_FOCUS. 2003-07-28 Padraig O'Briain * bonobo/bonobo-dock-item-grip.c: Check what widget still exists before referring to it. This fixes bug #118041. 2003-07-23 Federico Mena Quintero * bonobo/bonobo-socket.c (bonobo_socket_instance_init): Create a private structure for the socket. (bonobo_socket_finalize): Free the private structure. (toplevel_set_focus_cb): New callback for GtkWindow::set_focus(). We use this to keep track of the focused widget and activate/deactivate the control frame as appropriate --- our focus_in/out handlers will not be called if the embedded plug is in-process. (bonobo_socket_hierarchy_changed): New handler for GtkWidget::hierarchy_changed(). We must monitor the focused widget on our toplevel, so we pick up toplevel changes here. 2003-07-09 Michael Meeks * doc/api/tmpl/bonobo-widget.sgml: fix docs. 2003-06-10 Michael Meeks * Version 2.3.3 2003-06-10 Michael Meeks * tests/control/test-control.c (test_gtk_weakrefs): instantiate a button to test, not a base GTK_OBJECT 2003-06-10 Michael Meeks * doc/api/Makefile.am (INCLUDES): setup right. * bonobo/Makefile.am: fix write-protected srcdir horrors. * samples/container/Makefile.am: dist -ui.xml 2003-06-10 Michael Meeks * configure.in: require libbonobo >= 2.3.3 * bonobo/Makefile.am: add -DGDK_MULTIHEAD_SAFE * bonobo/bonobo-canvas-component.c (impl_Bonobo_Canvas_Component_realize), (impl_Bonobo_Canvas_Component_draw): upd. * bonobo/bonobo-canvas-item.c (gbi_draw, gbi_realize): handle the wid more sanely. 2003-06-10 Morten Welinder * bonobo/bonobo-canvas-component.c (impl_Bonobo_Canvas_Component_realize), (impl_Bonobo_Canvas_Component_draw), * bonobo/bonobo-canvas-item.c (impl_Bonobo_Canvas_ComponentProxy_grabFocus), * bonobo/bonobo-control-frame.c (bonobo_control_frame_get_remote_window), * bonobo/bonobo-control.c (bonobo_control_set_transient_for): multi-head fixes. * bonobo/bonobo-plug.c (bonobo_plug_button_event) (bonobo_plug_button_event, bonobo_plug_button_event): ditto. 2003-06-10 Michael Meeks * bonobo/bonobo-plug.c (bonobo_plug_new_for_display): impl. (bonobo_plug_construct_full): impl. * configure.in: bin multi-head checks. * bonobo/bonobo-ui-init-gtk.c (bonobo_ui_gtk_options), * bonobo/bonobo-dock-item.c (bonobo_dock_item_motion), * bonobo/bonobo-control.c (impl_Bonobo_Control_getWindowId), * bonobo/bonobo-dock-item.c (bonobo_dock_item_realize), * bonobo/bonobo-control.c (bonobo_control_do_popup_full): bin multi-head conditionals. * bonobo/bonobo-control-frame.c (bonobo_control_frame_get_remote_window_id): clean out the not HAVE_MULTIHEAD path. 2003-06-10 Morten Welinder * bonobo/bonobo-dock-item.c (bonobo_dock_item_drag_end) (bonobo_dock_item_grab_pointer): multi head fixes. * bonobo/bonobo-ui-main.c (do_low_level_init): ditto. * bonobo/bonobo-ui-toolbar.c (hide_popup_window): ditto. 2003-06-10 Michael Meeks * samples/controls/bonobo-sample-controls.c (main): bin registration iid generation. * samples/canvdemo/circle.c (main): ditto. 2003-05-12 Michael Meeks * bonobo/bonobo-ui-toolbar.c (bonobo_ui_toolbar_class_init): bin clobber_focus. * bonobo/bonobo-ui-toolbar-item.c (bonobo_ui_toolbar_item_class_init): bin clobber_focus * bonobo/bonobo-dock-item.c (bonobo_gtk_container_focus_move): bin this. (bonobo_widget_clobber_focus): bin this too. (bonobo_dock_item_class_init): upd. #78220 2003-05-06 Michael Meeks * configure.in: bump version to 2.3.1 2003-05-29 Jody Goldberg * bonobo/bonobo-dock-item.c (bonobo_dock_item_size_allocate) : respect widget direction. (bonobo_dock_item_button_changed) : ditto. (bonobo_dock_item_paint) : remove some dead code. 2003-05-23 Telsa Gwynne * configure.in: Added "cy" (Welsh) to ALL_LINGUAS 2003-05-19 Christian Neumair * bonobo/bonobo-selector.c: Fixed a minor typo. 2003-05-19 Kenneth Rohde Christiansen * configure.in: Added Limburgish to ALL_LINGUAS 2003-05-15 Bob Gibbs * bonobo-canvas-component.[ch]: (bonobo_canvas_component_factory_new): new. Convenience to replace old embeddable way of creating the canvas component. (impl_Bonobo_Canvas_Component_bounds): Mapped state for crossing event. (impl_Bonobo_Canvas_Component_contains): Fixed to return proper inside/outside value. Was always returning true. (impl_Bonobo_Canvas_Component_update): Call rih group update here vice inside rih_update. Solves for case where a request_update is made while the component is waiting for a response. (handle_event): new. Passes the remote item's event back into the local pseudo-canvas so that canvas items can see events the normal way as if they were not using bonobo. (rih_update): Moved rih group update into impl_Bonobo_Canvas_Component_update. This solves for case where a request_update is made while the component is waiting for a response to its last Bonobo_Canvas_ComponentProxy_requestUpdate. (impl_Bonobo_Canvas_Component_event): Added do_update_flag check to prevent signal from being emitted when any pseudo-canvas is in its do_update. Fixed alloc/de-alloc of gdk_event structure. (handle_event_later): new. Emits event signal sometime after do_update finishes. (free_event): removed. Replaced by gdk_event_free. (impl_Bonobo_Canvas_Component_setBounds): Added do_update_flag check to prevent signal from being emitted when any pseudo-canvas is in its do_update. This procedure is in IDL but does not appear to be invoke by the client ever. (set_bounds_later): new. Emits bounds signal sometime after do_update finishes. (bonobo_canvas_new): Put into container to prevent gtk warning. (bonobo_canvas_component_factory_new): new. Convenience to replace old embeddable way of creating the canvas component. * bonobo-canvas-item.c (gbi_set_property): Moved proxy_size_allocate call from gbi_set_property to gbi_realize. Sometimes widget is not realized when user sets the properties. (gdk_event_to_bonobo_event): fixed x/y mixup for motion notify (bonobo_canvas_item_class_init): Make sure set_property callback is initialized before calling install_property. (impl_Bonobo_Canvas_ComponentProxy_requestUpdate): Added idle_handler that gets invoked whenever the canvas has already had one added. This solves for case of NEED_UPDATE flags getting out of sync and canvas refusing to update the remote item forever thereafter. See code for further details. (create_proxy): Fixed to allocate space for base epv before initializing. * samples/canvdemo/*: Added demo / test program & docs. 2003-05-13 Hidetoshi Tajima * configure.in (LDFLAGS): * bonobo/Makefile.am (libbonoboui_2_la_LIBADD): add -lX11 to LDFLAGS, fixing #112531. 2003-05-13 Anders Carlsson * bonobo/bonobo-ui-preferences.c: Accept both-horiz as well. 2003-05-12 Gustavo J. A. M. Carneiro * MAINTAINERS: Declare myself as documentation maintainer. 2003-05-09 Masahiro Sakai * bonobo/Makefile.am (libbonoboui_2_la_LIBADD): * tests/Makefile.am (LDADD): remove -lpopt. Now -lpopt is supplied by libgnome-2.0.pc. 2003-05-08 Anders Carlsson * bonobo/bonobo-ui-preferences.c: Add a NULL entry last in the list of toolbar styles so we won't get a segfault when the gconf key is invalid. 2003-05-06 Danilo Šegan * configure.in: Added "sr" and "sr@Latn" to ALL_LINGUAS. 2003-04-29 Malcolm Tredinnick * bonobo/Makefile.am (libbonoboui_2_la_LIBADD): Fix link order. 2003-04-18 Masahiro Sakai * configure.in: call AC_LIBTOOL_WIN32_DLL. * bonobo/Makefile.am (libbonoboui_2_la_LIBADD): add -lpopt. * bonobo/Makefile.am (libbonoboui_2_la_LDFLAG): add -no-undefined. * glade/Makefile.am (libbonobo_la_LDFLAGS): ditto. 2003-04-15 Michael Meeks * samples/container/*: the start of a nice sample container from Sergey V. Oudaltsov * samples/container/Makefile.am, * samples/Makefile.am, * configure.in: add sample container to build. 2003-04-14 Michael Meeks * bonobo/bonobo-dock-item-grip.c (bonobo_dock_item_grip_instance_init): disable can-focus. * bonobo/bonobo-ui-toolbar-button-item.c (bonobo_ui_toolbar_button_item_construct): ditto. * bonobo/bonobo-dock.c (bonobo_dock_focus_roll): bin this. * bonobo/bonobo-window.c (bonobo_window_key_press_event) (bonobo_window_key_release_event, bonobo_window_focus): bin allow_all_focus nonsense. 2003-04-11 Padraig O'Briain * bonobo/bonobo-canvas-component.c, bonobo/bonobo-control-frame.c, bonobo/bonobo-control.c, bonobo/bonobo-property-control.c, bonobo/bonobo-ui-component.c, bonobo/bonobo-ui-container.c, bonobo/bonobo-zoomable-frame.c, bonobo/bonobo-zoomable.c: Remove semicolon after macro BONOBO_TYPE_FUNC_FULL; this fixes compiler warning when using FORTE compiler. 2003-04-07 Gustavo Giraldez * bonobo/bonobo-ui-toolbar.c (impl_get_property): Add container's border_width to the returned preferred_width and preferred_height so the toolbar gets enough allocation space when it's in a non-exclusive dock item. 2003-03-26 Christian Rose * configure.in: Added "yi" to ALL_LINGUAS. 2003-03-24 Gustavo J. A. M. Carneiro * Makefile.am (EXTRA_DIST): Include gtk-doc.make in the distribution. * doc/api/figures/Makefile.am: Don't delete the png files when doing make maintainer-clean. * configure.in: Use the macro GTK_DOC_CHECK to check for gtk-doc. * Makefile.am (DISTCHECK_CONFIGURE_FLAGS): Pass --enable-gtk-doc to configure when making distcheck, otherwise it fails. * autogen.sh (REQUIRED_AUTOMAKE_VERSION): require automake 1.6. 2003-03-21 Guntupalli Karunakar * configure.in: Added "ml" in ALL_LINGUUAS 2003-03-04 Radek Doulik * bonobo/bonobo-ui-engine.c (execute_state_updates): increase/decrease bonobo_ui_engine_inhibit_events counter (real_exec_verb): return if bonobo_ui_engine_inhibit_events counter > 0 (real_emit_ui_event): ditto 2003-03-01 Dave Camp * bonobo/bonobo-ui-toolbar-control-item.c: (impl_set_tooltip), (impl_realize), (impl_unrealize), (impl_size_allocate), (impl_map), (impl_unmap), (bonobo_ui_toolbar_control_item_class_init), (bonobo_ui_toolbar_control_item_construct): Implement tooltips with an input only window instead of a GtkEventBox. 2003-02-28 Michael Meeks * bonobo/bonobo-ui-util.c (bonobo_ui_util_xml_set_image): NULL check on text, to guard against broken client XML, add warning too. 2003-02-25 Rodney Dawes * *: create gnome-2-2 branch and commit following patch to HEAD * bonobo/bonobo-ui-sync-toolbar.c: Move _set_border_width () call * bonobo/bonobo-ui-toolbar.c: Add shadow_type style property, to match GtkToolbar drawing 2003-02-21 Roozbeh Pournader * configure.in: Added "fa" to ALL_LINGUAS. 2003-02-14 Alex Duggan * configure.in: require gtk+ >= 2.2.0 for the multi-screen stuff. 2003-02-09 Christian Rose * configure.in: Added "kn" to ALL_LINGUAS. 2003-02-06 Christian Rose * configure.in: Added "id" to ALL_LINGUAS. 2003-02-03 Gustavo J. A. M. Carneiro * configure.in: Write makefile doc/api/figures/Makefile. * doc/api/tmpl/bonobo-control-frame.sgml: Include the figure control-frame.png. * doc/api/tmpl/bonobo-control.sgml: Include control.png figure. * doc/api/figures/control-frame.dia, doc/api/figures/control.dia: New uml class diagrams showing the Bonobo::Control and Bonobo::ControlFrame interfaces. * doc/api/figures/Makefile.am: New makefile to convert .dia to .png. * doc/api/Makefile.am (HTML_IMAGES): Include the two new figures. 2003-01-29 Gustavo J. A. M. Carneiro * bonobo/bonobo-zoomable.h: Removed declaration of the non-implememented function bonobo_zoomable_corba_object_create(). 2003-01-27 Gustavo J. A. M. Carneiro * doc/api/Makefile.am (content_files): Added ui-faq.xml. * doc/api/libbonoboui-docs.sgml: Include the new FAQ in the docs. * doc/api/ui-faq.xml: ditto * doc/ui-faq.txt: Converted all of this to docbook and moved to api/ui-faq.xml 2003-01-22 Gustavo J. A. M. Carneiro * doc/api/libbonoboui-sections.txt: Removed canvas sections. * doc/api/Makefile.am (IGNORE_HFILES): Don't ignore bonobo-ui-engine-config.h. Ignore canvas headers. * doc/api/libbonoboui-docs.sgml: Added some missing sections. Removed canvas sections, since I realized they're deprecated. * doc/api/tmpl/bonobo-item-container.sgml, doc/api/tmpl/bonobo-item-handler.sgml, doc/api/tmpl/bonobo-ui-toolbar-button-item.sgml, doc/api/tmpl/bonobo-ui-toolbar-icon.sgml, doc/api/tmpl/bonobo-ui-toolbar-item.sgml, doc/api/tmpl/bonobo-ui-toolbar-toggle-button-item.sgml, doc/api/tmpl/bonobo-win.sgml: Removed these files. * doc/api/tmpl/bonobo-a11y.sgml, doc/api/tmpl/bonobo-file-selector-util.sgml, doc/api/tmpl/bonobo-property-control.sgml, doc/api/tmpl/bonobo-selector-widget.sgml, doc/api/tmpl/bonobo-ui-config-widget.sgml, doc/api/tmpl/bonobo-ui-engine-config.sgml, doc/api/tmpl/bonobo-ui-main.sgml, doc/api/tmpl/bonobo-ui-preferences.sgml, doc/api/tmpl/bonobo-window.sgml, doc/api/tmpl/bonobo-wrapper.sgml: Added these new template files. * doc/api/tmpl/bonobo-socket.sgml: Some changes to convert from SGML to XML. * doc/api/libbonoboui-docs.sgml: Added the main documentation file, based on bonobo-api.sgml, converted to XML and docbook 4.1.2. * doc/api/libbonoboui.types: Added this file, with list of GObject type's, for gtkdoc-scangobj. * doc/api/Makefile.am: Replaced this entire makefile, based on libbonobo's doc/api/Makefile.am. * doc/Makefile.am (SUBDIRS): Enable recursion into the 'api' directory, to build the api docs. * configure.in: Added gtk-doc check and --enable argument; Write doc/api/Makefile. * doc/api/tmpl/bonobo-ui-component.sgml, doc/api/tmpl/bonobo-ui-container.sgml: replaced #bonobo-ui-util with an appropriate xref. * bonobo/bonobo-window.h, bonobo/bonobo-selector.h, bonobo/bonobo-canvas-item.h, bonobo/bonobo-canvas-component.h: Split struct declaration from typedef, otherwise gtkdoc gets confused. 2003-01-22 Marius Andreiana * configure.in: added 'ro' to ALL_LINGUAS 2003-01-22 Christian Rose * configure.in: Added "mn" to ALL_LINGUAS. 2003-01-21 Michael Meeks * Version 2.2.0 * bonobo/bonobo-ui-toolbar.c (accumulate_item_size): split from (update_sizes): here and account for the popup's item's size itself if items moved there. 2003-01-21 Kang Jeong-Hee * bonobo/bonobo-ui-toolbar.c (show_popup_window): fix #76310, popup going off the side of the screen unhelpfully. 2003-01-16 Pablo Saratxaga * configure.in: Added Amharic (am) and Dutch (nl) to ALL_LINGUAS 2003-01-15 Michael Meeks * configure.in: add a check for people with stale / non-parallel installable gdk-pixbuf's - it seems there are a number of such people. 2003-01-06 Michael Meeks * Version 2.1.2 2002-12-17 Kjartan Maraas * Fix Makefile.am's for libtool's non-understanding of -pthread. 2002-12-13 Michael Meeks * bonobo/bonobo-ui-util.c (bonobo_help_display_cb): re-hash so we can still allow components to register their own custom prefix intead of using the main program's always. 2002-12-02 Marcus * bonobo/bonobo-ui-util.c (bonobo_help_display_cb): fix search datadir to use existing GnomeProgram if available. 2002-12-02 Gustavo Carneiro * bonobo/bonobo-ui-engine.c (add_debug_menu): fix leak. 2002-11-25 Michael Meeks * Version 2.1.1 2002-11-22 Michael Meeks * bonobo/bonobo-ui-sync-menu.c (class_init): upd. (impl_bonobo_ui_sync_menu_wrap_widget): impl. * bonobo/bonobo-ui-engine.c (bonobo_ui_engine_widget_set): use the synchronizer. * bonobo/bonobo-ui-sync-toolbar.c (class_init): upd. (impl_bonobo_ui_sync_toolbar_wrap_widget): impl. * bonobo/bonobo-ui-sync.c (bonobo_ui_sync_wrap_widget): impl. * tests/test-ui.c (main): insert a menu widget. 2002-11-20 Michael Meeks * bonobo/bonobo-file-selector-util.c (create_bonobo_selector): fix acute brokenness, thanks to NotZed. 2002-11-20 hhetter@suse.de * bonobo/bonobo-ui-component.c (ui_event), (impl_Bonobo_UIComponent_execVerb): 64bit safe va-list termination. 2002-11-18 Michael Meeks * tests/test-ui.c (cb_do_popup): don't destroy popup immediately after popup ;-) 2002-11-11 Michael Meeks * bonobo/bonobo-ui-component.c (bonobo_ui_component_set_translate): don't segv later if we have a NULL / bogus xml string coming in. 2002-11-10 Ole Laursen * configure.in: Added da to ALL_LINGUAS. 2002-11-09 Dmitry G. Mastrukov * configure.in: Added Belarusian to ALL_LINGUAS 2002-11-06 Stanislav Brabec * samples/controls/Makefile.am, samples/compound-doc/bonobo-hello/Makefile.am: Fix $(prefix)/lib -> $(libdir). 2002-11-05 Balamurali Viswanathan * bonobo/bonobo-ui-init-gtk.c: Change POPT_ARG_STRING to POPT_ARG_INT for the screen argument 2002-11-04 Mark McLoughlin * bonobo/bonobo-ui-util.c: (bonobo_ui_util_xml_get_icon_size): impl reading a named icon size from a node's "icon_size" attribute. (bonobo_ui_util_xml_set_image): use this icon size. 2002-11-04 Michael Meeks * samples/controls/bonobo-sample-controls.c (bonobo_entry_control_new): do life instrumentation on the entry. * bonobo/bonobo-control.c: (bonobo_control_class_init): added disconnected signal. (bonobo_control_life_set_purge): impl. (bonobo_control_disconnected): impl. (control_frame_connection_died_cb): upd. (bonobo_control_unset_control_frame): kill timeout on frame. (bonobo_control_construct): setup timeout on construct'n. (control_life_idle_cb, control_life_disconnected): impl. (bonobo_control_life_instrument): impl. (bonobo_control_life_get_count): impl. 2002-11-01 Gustavo Carneiro * bonobo/bonobo-ui-engine.c (add_debug_menu): impl. (bonobo_ui_engine_construct): do it if BONOBO_DEBUG is defined. 2002-11-01 Michael Meeks * Version 2.1.0 2002-11-01 Michael Meeks * bonobo/bonobo-ui-toolbar-control-item.c (bonobo_ui_toolbar_control_item_construct): upd. (bonobo_ui_toolbar_control_item_new_widget): impl. clean to allow non-control items. * tests/test-ui.c (main): test it. * bonobo/bonobo-ui-engine.c (bonobo_ui_engine_widget_set): impl helper. * bonobo/bonobo-ui-component.c (bonobo_ui_component_widget_set): impl. so we can do in-proc shortcuts to make theming nicer in nautilus / galeon. 2002-10-31 Mark McLoughlin * configure.in: require libxml - fixes breakage from removing it from bonobo-activation's pkg-config requirements. 2002-10-22 Gustavo Carneiro * doc/ui-faq.txt: add item. 2002-10-18 Michael Meeks * Version 2.0.3.2 2002-10-17 Michael Meeks * bonobo/bonobo-ui-toolbar.c (impl_finalize), (impl_dispose): unlink widgets we destroy, don't free the list until here - otherwise we can't remove any widgets as we chain to parent (doh) - thanks Jaka / Satyajit 2002-10-08 Michael Meeks * bonobo/bonobo-ui-toolbar-button-item.c (set_label): re-write for Morten to make it substantially more efficient. 2002-10-01 Michael Meeks * Version 2.0.3.1 2002-10-01 Michael Meeks * bonobo/bonobo-control-frame.c (bonobo_control_frame_get_popup_component): don't use un-initialized return value. 2002-09-30 Michael Meeks * tests/test-filesel.c (get_files): make it quit nicely; #94368 2002-09-19 Michael Meeks * samples/controls/Makefile.am: Add CLEANFILES so that make clean deletes Bonobo_Sample_Controls.server and Bonobo_Sample_controls.server.in 2002-09-17 Michael Meeks * bonobo/bonobo-ui-toolbar.c (impl_dispose): free list here no in finalize (impl_finalize): upd. (bonobo_ui_toolbar_insert): only sink/ref if we didn't own it already. (item_destroy_cb): unref the object on remove. 2002-09-16 Michael Meeks * bonobo/bonobo-ui-engine.c (prune_node): never unref a root widget. 2002-09-12 Michael Meeks * bonobo/bonobo-ui-node.c (bonobo_ui_node_copy): fix; not that anyone uses it in fact. (bonobo_ui_node_add_child): simplify. 2002-09-09 Gustavo Carneiro * doc/ui-faq.txt: add BonoboCustomize note. 2002-09-03 Michael Meeks * bonobo/bonobo-ui-engine.c (bonobo_ui_engine_stamp_root): don't leak references as we re-stamp the root. 2002-09-02 Michael Meeks * bonobo/bonobo-ui-node.c (bonobo_ui_node_ref): fix bad bogon. * bonobo/bonobo-window.c (bonobo_window_realize): kill; we don't need to flush the cache, on settings changed, we use stock icons properly now. (setting_changed_cb): bin. * bonobo/bonobo-ui-util.c (bonobo_ui_util_xml_set_image): bin the widget direction in the cache. (bonobo_ui_image_cache_trash): bin. (bonobo_ui_util_xml_set_image): upd. 2002-08-31 Jacob Berkman * tests/Makefile.am (LDADD): add -lpopt 2002-08-30 Michael Meeks * Version 2.0.3 2002-08-30 Michael Meeks * bonobo/bonobo-ui-util.c (bonobo_ui_image_set_pixbuf): fix pixbuf leak on theme change. (bonobo_ui_util_xml_get_pixbuf): kill. (bonobo_ui_image_set_stock): impl. for speed. (bonobo_ui_util_xml_set_image): impl from its' guts, handle stock icons more efficiently, and far more sanely. * bonobo/bonobo-ui-sync-toolbar.c (impl_bonobo_ui_sync_toolbar_state): upd. (cmd_get_toolbar_image): kill. * bonobo/bonobo-ui-sync-menu.c (impl_bonobo_ui_sync_menu_state): upd. (cmd_get_menu_pixbuf): kill. 2002-08-28 Michael Meeks * Version 2.0.2 2002-08-23 Michael Meeks * bonobo/bonobo-ui-sync-toolbar.c (impl_bonobo_ui_sync_toolbar_remove_root): fix leak. * bonobo/bonobo-ui-util.c (bonobo_ui_util_build_help_menu): don't leak id. * bonobo/bonobo-ui-engine.c (do_sync): add ref/unref pair on node around here #90600 * bonobo/bonobo-ui-xml.c (node_free): unref don't free. (bonobo_ui_xml_finalize): ditto. (free_nodedata_tree): set data to NULL after info free. * bonobo/bonobo-ui-node.c (node_free_internal): move tree unlinkage into here, unlink if we have ->prev node too. (bonobo_ui_node_unref, bonobo_ui_node_ref): impl. (bonobo_ui_node_free): implement in terms of unref. (bonobo_ui_node_new, bonobo_ui_node_copy): assign to 1. 2002-08-21 Michael Meeks * bonobo/bonobo-socket.c (bonobo_socket_add_id): since in-proc we know that Gtk+ will go through a 4 step process: a) size_request the toplevel b) allocate the toplevel to the requested size c) realize the toplevel d) map the toplevel and since we have to add the plug at step 'c' - having missed stepps a and b, - but since we know that the size_request in a) is done fine via CORBA, and that the other end is already realized (c), we simply add a size request on the in-proc child plug to replace step b) before continuing the chain to map. This fixes a number of flickers / size allocation issues. 2002-08-20 Peteris Krisjanis * configure.in (ALL_LINGUAS): Added Latvian (lv) languaga support. 2002-08-20 Michael Meeks * bonobo/bonobo-socket.c (bonobo_socket_size_allocate): kill hacks around sizing logic - requires a fixed gtk+ * bonobo/bonobo-plug.c (bonobo_plug_map): impl. 2002-08-19 Michael Meeks * bonobo/bonobo-socket.c (bonobo_socket_add_id): impl. * bonobo/bonobo-control-frame.c (bonobo_control_frame_get_remote_window): use bonobo_socket_add_id. * bonobo/bonobo-control.c (impl_Bonobo_Control_getWindowId): just realize the widget so we can do sizing here, we get mapped on the size_allocate (that's coming). * bonobo/bonobo-plug.c (bonobo_plug_size_allocate): show the widget if we have a sensible size allocation. * bonobo/bonobo-socket.c (bonobo_socket_show): kill the check-resize hack here. 2002-08-16 Michael Meeks * bonobo/bonobo-control-frame.c (bonobo_control_frame_size_request): set size to 1x1 on failure not 0x0. 2002-08-19 Michael Meeks * bonobo/bonobo-window.c (bonobo_window_realize): bin 'destroy' handling on GtkSettings, thanks to rhult. 2002-08-17 Simos Xenitellis * configure.in: Added el to ALL_LINGUAS. 2002-08-16 Michael Meeks * bonobo/bonobo-ui-util.c (bonobo_ui_image_cache_trash): impl. (bonobo_ui_util_xml_get_pixbuf): split hash and hash on screen ptr too if doing multi-head. * bonobo/bonobo-window.c (setting_changed_cb), (bonobo_window_realize): impl. to catch theme changes. (bonobo_window_class_init): upd. 2002-08-15 Michael Meeks * bonobo/bonobo-window.c (construct_priv): put the dock inside an hbox, inside the window, with the status outside the dock, so re-arrangement works better. #82546, #89261 (bonobo_window_get_contents): just use the dock. (bonobo_window_set_contents): ditto. (bonobo_window_show_all): upd. (bonobo_window_focus): upd. Thanks to herzi@abi02.de for the initial patch. 2002-08-06 Federico Mena Quintero * bonobo/bonobo-socket.c (bonobo_socket_expose_event): Call the handler of our parent class. 2002-08-05 Michael Meeks * Version 2.0.1 2002-07-27 James Henstridge * glade/glade-bonobo.c (dock_item_set_behavior): add function to handle behavior property for BonoboDockItem objects. (dock_item_build): free dockitem->name to trap potential memory leak. (add_dock_item): behavior is a widget property, rather than a child packing property (we were ignoring it anyway). 2002-07-26 Gustavo Noronha Silva * configure.in: added pt_BR to ALL_LINGUAS 2002-07-17 Michael Meeks * bonobo/bonobo-ui-engine.c (real_exec_verb): copy the verb over the emission, dup the component. (impl_emit_event_on): same fix. 2002-07-17 Morten Welinder * bonobo/bonobo-ui-util.c (bonobo_ui_util_build_help_menu): No foo. 2002-07-16 Brian Cameron * samples/compound-doc/container/Makefile.am No longer install sample-container-2. 2002-07-11 Michael Meeks * bonobo/bonobo-ui-node.c (bonobo_ui_node_get_path_child): impl. & optimize. * bonobo/bonobo-ui-xml.c (find_child): kill. (xml_get_path): upd. * bonobo/bonobo-ui-toolbar.c (bonobo_ui_toolbar_instance_init): set the a11y role on the toolbar to ROLE_TOOL_BAR. 2002-07-11 Michael Meeks * bonobo/bonobo-ui-toolbar.c (bonobo_ui_toolbar_insert): guard against re-enterancy during the realize. (parentize_widget): prune cruft that is in gtk_widget_set_parent anyway. (bonobo_ui_toolbar_insert): remove bogus assertion, we could have been destroyed in the meantime, by an incoming remote unref. 2002-07-01 Michael Meeks * bonobo/bonobo-ui-sync-menu.c (bonobo_ui_sync_menu_new): create an accel group if we don't get one. 2002-06-28 Michael Meeks * tests/control/test-control.c (run_tests): get re-parenting ref counting right ... (destroy_test): assert that the container widget got correctly destroyed. * bonobo/bonobo-plug.c (bonobo_plug_realize), (bonobo_plug_unrealize): remove bogus ref/unref on control - originally not being used, but exposing a nasty leak since Mark removed the show () after plug creation. Thanks to Dave Camp for the lead. 2002-06-27 Mark McLoughlin * bonobo/bonobo-dock-item.c: include config.h. (bonobo_dock_item_realize): Use the root window on same screen as the dock for the parent of the float window. (bonobo_dock_item_motion): also get the location of the pointer relative to the same root window. 2002-06-25 Mark McLoughlin * bonobo/bonobo-control.c: (impl_Bonobo_Control_getWindowId): s/gdk_get_default_screen/gdk_screen_get_default/ s/gdk_get_default_display/gdk_display_get_default/ 2002-06-25 Mark McLoughlin * configure.in: actually add check for multihead gtk+ this time. 2002-06-18 Mark McLoughlin * bonobo/bonobo-control-frame.c: (bonobo_control_frame_get_remote_window_id): impl with multiscreen support. (bonobo_control_frame_get_remote_window): use it here. * bonobo/bonobo-control.c: (create_plug): don't show the plug here. (parse_cookie): parse ',' delimited string returning the screen number. (impl_Bonobo_Control_getWindowId): parse the cookie and set the screen on which the plug should realize accordingly. (bonobo_control_do_popup_full): show the menu on the same screen as the plug. * bonobo/bonobo-ui-init-gtk.c: use HAVE_GTK_MULTIHEAD. * configure.in: add check for multihead gtk+. 2002-06-11 Michael Meeks * tests/test-focus.c (add_control): switch back to Sample_Entry so we can test transience. 2002-06-11 Michael Meeks * configure.in (gnomelocaledir): setup properly. 2002-06-10 Naba Kumar * configure.in: Added hi in ALL_LINGUAS 2002-06-05 Michael Meeks * Version 2.0.0 2002-06-05 Michael Meeks * bonobo/*.h: add dummy bin-compat padding for future expansion. Mon Jun 03 15:30:08 2002 George Lebl * configure.in, po/cs.po: add a basic Czech translation 2002-06-01 Michael Meeks * Version 1.118.0 2002-06-01 Michael Meeks * configure.in: bump reqs. 2002-05-31 Federico Mena Quintero * bonobo/bonobo-control-frame.c (bonobo_control_frame_size_request): Do not g_return_if_fail() if we haven't been bound to a control yet. Rather, return 0 for the requisition, which means "I don't care about what I get assigned". 2002-05-31 Michael Meeks * bonobo/bonobo-socket.c (bonobo_socket_show): force a check_resize before we show, since the queued idle resize is just way too ugly. Fixes Nautilus new window creation / flicker. (bonobo_socket_class_init): upd. 2002-05-31 Michael Meeks * bonobo/bonobo-socket.c (bonobo_socket_size_request): fix some truly stupid things happening with mixed up widths / heights. * bonobo/bonobo-control.c (impl_Bonobo_Control_setSize): fill out a bit. * bonobo/bonobo-socket.c (bonobo_socket_instance_init): immediate resize. (bonobo_socket_size_allocate): for in-proc chain immediately to size alloc the child. (bonobo_socket_size_request): fix something very dumb with mixed up / uninitialized width / height. 2002-05-30 Kristian Rietveld * bonobo/bonobo-dock-item.c (bonobo_dock_item_set_behavior): added this (non-public, but exported) function. 2002-05-28 Gustavo Giráldez * bonobo/bonobo-ui-util.c (bonobo_ui_util_fixup_icons): Don't leak the pixbuf. 2002-05-27 Michael Meeks * Version 1.117.1 2002-05-24 Paolo Maggi * bonobo/bonobo-file-selector-util.c (cancel_clicked_cb): NULL the user_data. (run_file_selector): handle NULL user_data without crashing, so 'Cancel' works - sigh. 2002-05-23 Michael Meeks * bonobo/bonobo-ui-engine-config.c (bonobo_ui_engine_config_construct), (bonobo_ui_engine_config_new): store transient parent. (dialog_new): set transient parent #82592 * bonobo/bonobo-ui-engine.c (bonobo_ui_engine_construct): pass the view as the transient parent if it's a GtkWindow. 2002-05-22 Gustavo Giráldez * bonobo/bonobo-ui-config-widget.c (look_cb, set_values, widgets_init): Add "Text only" option. 2002-05-22 Gustavo Giráldez * bonobo/bonobo-ui-config-widget.c (look_cb): Changed "text" by "both_horiz" for priority text setting. 2002-05-20 Michael Meeks * Version 1.117.0 * configure.in: prune message-of-doom 2002-05-20 Paolo Maggi * bonobo/bonobo-file-selector-util.c (run_file_selector): handle dialog not being activated properly correctly. 2002-05-17 Michael Meeks * configure.in: bump version to 1.116.1 * bonobo/bonobo-control.c (bonobo_control_destroy): destroy the widget before unreffing it, so it's lifecycle is closely coupled with the BonoboControl's, as expected. (create_plug): sink the plug. * tests/control/test-control.c: implement (DESTROY_CONTROL) regression test. 2002-05-15 Michael Meeks * bonobo/bonobo-ui-util.c (bonobo_ui_util_build_help_menu): port. (bonobo_help_display_cb): ditto. (bonobo_help_file_find_file): kill. (help_display_closure_free): impl. 2002-05-14 Michael Meeks * bonobo/bonobo-ui-preferences.c (toolbar_styles): update to handle "text" and "both_horiz" * bonobo/bonobo-ui-sync-toolbar.c (parse_look): change the 'text' -> 'both_horiz' and add the 'text' == text only setting. * doc/ui-xml.txt: update to reflect the changes. * bonobo/bonobo-ui-toolbar.c (set_attributes_on_child): add a text only attribute. 2002-05-14 Michael Meeks * bonobo/bonobo-widget.c: update docs. 2002-05-13 Balamurali Viswanathan * bonobo/bonobo-ui-init-gtk.c: pass the "screen" argument onto gtk+ * configure.in: check for multi-head gdk. 2002-05-13 Michael Meeks * bonobo/bonobo-socket.c (bonobo_socket_set_control_frame), * bonobo/bonobo-control-frame.c (bonobo_control_frame_set_socket), * bonobo/bonobo-control.c (bonobo_control_set_plug), * bonobo/bonobo-plug.c (bonobo_plug_set_control): fix the same problem, so that we can transfer ownership of the object without problems - it seems we never did this before. 2002-05-13 Michael Meeks * bonobo/bonobo-ui-engine.c (bonobo_ui_engine_set_ui_container): unset the old engine before setting the new. * tests/test-ui-auto.c (test_engine_container): add. (test_ui_engine): upd. * bonobo/bonobo-ui-engine-private.h: move BonoboUIEnginePrivate here for the regression tests. 2002-05-11 Michael Meeks * bonobo/bonobo-control-frame.c (impl_Bonobo_ControlFrame_getToplevelId): actually invoke the getToplevelId on the ControlFrame not the Control - doh, thanks Jon-Kare, #80782 2002-05-10 Pablo Saratxaga * configure.in: Added Vietnamese (vi) to ALL_LINGUAS 2002-05-09 Michael Meeks * po/POTFILES.in: update. 2002-05-07 Jon KÃ¥re Hellan * bonobo/bonobo-control.c (bonobo_control_set_transient_for): Catch exception. 2002-04-29 Anders Carlsson * Release 1.116.0 2002-04-28 Anders Carlsson * bonobo/bonobo-ui-main.c (do_low_level_init): Revert change made by Alex Graveley since it breaks nautilus (and probably other things too). 2002-04-28 Murray Cumming * Corrected libglade version requirement, because jamesh decremented the libglade version. 2002-04-26 Alex Graveley * bonobo/bonobo-ui-main.c (do_low_level_init): Use gdk_get_display(), instead of the gdk internal variable gdk_display, which can sometimes be NULL. This fixes a startup crash on Solaris. 2002-04-18 Murray Cumming * glade/glade-bonobo.c: Changed GladeWidgetInfo::class to classname, now that libglade has corrected its use of the C++ keyword. 2002-04-23 Murray Cumming * bonobo/bonobo-window.[h|c]: bonobo_window_new() is now just a convenience wrapper for g_object_new(). This is possible because BonoboWindow now has a "win_name" property and the UIContainer is created in the *_instance_init function. 2002-04-23 Murray Cumming * bonobo/bonobo-selector.[h|c] BonoboSelector now has an "interfaces_required" property, and the child BonoboSelectorWidget is instantiated in the *_instance_init() function, so that bonobo_selector_new() can now be just a convenience wrapper for g_object_new(). 2002-04-22 Jacob Berkman * bonobo/bonobo-window.c: * bonobo/bonobo-selector.c: revert changes again as they break (at least) nautilus 2002-04-22 Murray Cumming * bonobo/bonobo-window.c: (bonbo_window_construct) Recommitted, with bonobo_window_construct() implementation which was ommitted somehow before. 2002-04-22 jacob berkman * bonobo/bonobo-window.c (bonobo_window_construct): revert previous commit as it broke the build and wasn't approved by the release team 2002-04-22 Murray Cumming * glade/glade-bonobo.h: reverted part of previous commit - I had committed part of another pending patch that depends on a not-yet-applied libglade patch. 2002-04-22 Murray Cumming * bonobo/bonobo-selector.[h|c] BonoboSelector now has an "interfaces_required" property, and the child BonoboSelectorWidget is instantiated in the *_instance_init() function, so that bonobo_selector_new() can now be just a convenience wrapper for g_object_new(). 2002-04-22 Murray Cumming * bonobo/bonobo-window.[h|c]: bonobo_window_new() is now just a convenience wrapper for g_object_new(). This is possible because BonoboWindow now has a "win_name" property and the UIContainer is created in the *_instance_init function. 2002-04-19 jacob berkman * COPYING: add 2002-04-15 Michael Meeks * bonobo/bonobo-ui-sync-status.c (impl_bonobo_ui_sync_status_build): get signal connection lifetime right - thanks to Morten. * bonobo/bonobo-widget.c (bonobo_widget_construct_control_from_objref): don't auto-activate the control; this sucked and confused people lots. 2002-04-15 Michael Meeks * Version 1.115.0 2002-04-15 Michael Meeks * bonobo/bonobo-ui-node.c (do_parse): set the replaceEntities flag on the context, split out common code. (bonobo_ui_node_from_file), (bonobo_ui_node_from_string): upd. * tests/test-ui-auto.c (test_ui_node_parsing, test_xml_roundtrip): impl. * bonobo/bonobo-ui-node.c (uiGetEntity): axe, unneeded. * bonobo/bonobo-ui-util.c (bonobo_ui_util_translate_ui): make it more efficient and obvious. 2002-04-12 Michael Meeks * bonobo/bonobo-control.c (bonobo_control_get_remote_ui_container): set ui_container to NIL on exception. 2002-04-14 Murray Cumming * bonobo/bonobo-dock-band.c: bonobo_dock_band_new() is now just a convenience wrapper for g_object_new(), now that the widget_queue_resize() call is in the instance_init() function. 2002-04-13 Anders Carlsson * bonobo/bonobo-dock-item.c (bonobo_widget_clobber_focus): Also reverse the focus list on GTK_DIR_LEFT. 2002-03-29 Jody Goldberg * bonobo/bonobo-ui-main.c (gdk_x_error) : replace with gdk_x_error_func so that gdb does not get confused. 2002-04-11 Murray Cumming * bonobo/bonobo-dock-item.c: Corrected "orientation-changed" signal paratemeter types registration. 2002-04-11 Michael Meeks * bonobo/bonobo-ui-sync-menu.c (label_same): do proper label comparisons. (str_uscore_equal): kill, not needed now. 2002-04-11 Michael Meeks * bonobo/bonobo-ui-sync-menu.c (impl_bonobo_ui_sync_menu_state): set the mnemonic (doh). 2002-04-09 Michael Meeks * bonobo/bonobo-ui-sync-menu.c (impl_bonobo_ui_sync_menu_state): don't re-build accel labels when we don't need to, freeze / thaw the label appropriately. 2002-04-06 Michael Meeks * tests/test-focus.c (add_control): split out. (main): from here & add 'new control' button. 2002-04-09 Jeroen Zwartepoorte * bonobo/bonobo-dock-item.c: (bonobo_dock_item_size_allocate): Remove space around toolbar handle widget so it looks like the gnome 1.4 handle. 2002-04-03 jacob berkman * bonobo/bonobo-ui-container.h: include gmacros.h before using a macro defined there (fixes nautilus build errors) 2002-04-01 Murray Cumming * bonobo/bonobo-a11y.h, bonobo/bonobo-control-internal.h, bonobo/bonobo-ui-container.h, bonobo/bonobo-ui-node-private.h, bonobo/bonobo-ui-node.h, bonobo/bonobo-ui-private.h, bonobo/bonobo-ui-util.h, bonobo/bonobo-ui-xml.h, bonobo/bonobo-window.h: Added G_BEGIN_DECLS/G_END_DECLS for use with C++. 2002-03-29 Mark McLoughlin * bonobo/bonobo-plug.c: (bonobo_plug_button_event): ungrab the pointer here, so our parents can do grabs. 2002-04-01 Michael Meeks * bonobo/bonobo-ui-sync-toolbar.c (create_dockitem): remove bogus double detachable check. (impl_bonobo_ui_sync_toolbar_update_root): set detachable (or not) on sync. * bonobo/bonobo-dock-item.c (bonobo_dock_item_set_locked): impl. 2002-03-28 jacob berkman * bonobo/bonobo-selector.c (signals): * bonobo/bonobo-ui-engine.c (signals): these should be static 2002-03-28 Michael Meeks * bonobo/bonobo-file-selector-util.c (create_control): do an explicit construct to avoid the warning. * bonobo/bonobo-widget.c (bonobo_widget_launch_component): move activation exception warning to (bonobo_widget_new_control): here. 2002-03-27 Michael Meeks * bonobo/bonobo-window.c (bonobo_window_key_release_event): chain to key_release not key_press. 2002-03-26 Michael Meeks * bonobo/bonobo-ui-toolbar-item.c (bonobo_ui_toolbar_item_class_init): clobber focus handling for items here. * bonobo/bonobo-dock-item-grip.c (bonobo_dock_item_grip_key_press_event): only allow band traversal if not floating. * bonobo/bonobo-dock.c (bonobo_dock_focus_roll): upd. to include floating children. * bonobo/bonobo-ui-toolbar.c (bonobo_ui_toolbar_class_init): klobber focus stuff. * bonobo/bonobo-dock-item.c (bonobo_dock_item_focus): rename (bonobo_widget_clobber_focus): to this. 2002-03-26 Michael Meeks * bonobo/bonobo-dock-item-grip.c (bonobo_dock_item_grip_dock), (bonobo_dock_item_grip_undock): split out of (bonobo_dock_item_grip_activate): here. (bonobo_dock_item_grip_do_action): use them. (bonobo_dock_item_grip_get_n_actions): impl. 2002-03-25 Michael Meeks * bonobo/bonobo-a11y.c (bonobo_a11y_get_atk_object), (bonobo_a11y_set_atk_object): impl. (bonobo_a11y_get_derived_type_for): publicise.a (bonobo_a11y_add_actions_interface): impl. (bonobo_a11y_action_get_name), (bonobo_a11y_action_get_keybinding), (bonobo_a11y_action_do_action), (bonobo_a11y_action_get_n_actions), (bonobo_a11y_action_get_description): impl. (bonobo_a11y_action_set_description): don't impl. (bonobo_a11y_action_get_type), (bonobo_a11y_action_if_finalize), (bonobo_a11y_action_if_init): impl. * bonobo/bonobo-ui-toolbar-separator-item.c (impl_get_accessible): upd. * bonobo/bonobo-dock-item-grip.c (grip_item_do_action): impl. * bonobo/bonobo-ui-toolbar.c (bonobo_ui_toolbar_instance_init): don't let it focus. * bonobo/bonobo-a11y.c (bonobo_a11y_create_accessible_for): add custom interface addition vararag. (bonobo_a11y_get_derived_type_for): do it. * tests/test-ui.c (cb_do_popup): destroy the popup after use. 2002-03-25 Michael Meeks * bonobo/bonobo-window.c (bonobo_window_focus): impl. (bonobo_window_key_press_event): Make Alt-F10 roll through the dock items. (bonobo_window_class_init): upd. (bonobo_window_key_press_event): upd. (bonobo_window_key_release_event): impl. * bonobo/bonobo-dock-item.c (bonobo_dock_item_focus): impl. (bonobo_gtk_container_focus_move): cut & paste. (bonobo_dock_item_get_grip): impl. 2002-03-23 Michael Meeks * bonobo/bonobo-dock-item.c (bonobo_dock_item_unfloat): impl. (bonobo_dock_item_attach): use it. 2002-03-22 Michael Meeks * bonobo/bonobo-dock.c (get_band_list): split out of (bonobo_dock_add_item): here. (bonobo_dock_handle_key_nav): impl. (find_band_list): impl. (new_band_setup): split from (drag_new): here. (insert_into_band_list): impl. (bonobo_dock_focus_roll): impl. * bonobo/bonobo-dock-band.c (bonobo_dock_band_handle_key_nav): impl. (bonobo_dock_band_insert): fix theoretical parental confusion. * bonobo/bonobo-dock-item.c (bonobo_dock_item_instance_init): create the grip (bonobo_dock_item_size_allocate): size the grip. (draw_textured_frame): kill. (bonobo_dock_item_paint): just propagate the expose to the grip. (bonobo_dock_item_remove): special case the grip. (bonobo_dock_item_forall): impl. (bonobo_dock_item_realize), (bonobo_dock_item_unmap), (bonobo_dock_item_map): handle grip. (bonobo_dock_item_construct): hide grip if neccessary. (bonobo_dock_item_grab_pointer): also grab keyboard. (bonobo_dock_item_drag_end): impl & release k/b (bonobo_dock_item_button_changed): upd. (bonobo_dock_item_remove): upd. * bonobo/bonobo-dock-item-grip.[ch]: impl. * bonobo/bonobo-ui-toolbar-button-item.c (bonobo_ui_toolbar_button_item_construct): allow these items to take focus. 2002-03-21 Michael Meeks * bonobo/bonobo-a11y.c Remove ugly get_accessible clobbering code. (bonobo_a11y_get_derived_type_for): remove the cruft, we'll just override get_accessible for each widget. (bonobo_a11y_create_accessible_for): impl. * bonobo/bonobo-ui-toolbar-separator-item.c (impl_get_accessible), (separator_ref_state_set), (separator_item_a11y_init), (separator_item_a11y_class_init): impl. 2002-03-21 Michael Meeks * bonobo/bonobo-a11y.c (bonobo_a11y_register_type_for): impl. (bonobo_a11y_clobber_atk_junk_code): do the hacks neccessary to make a11y clean enough to use. (recursive_a11y_clobber): ug. (bonobo_a11y_get_accessible): urgh. (bonobo_a11y_get_derived_type_for): impl. 2002-03-19 Murray Cumming * bonobo/libbonobo-2.0.pc.in: Added libgnome dependency. 2002-03-18 Michael Meeks * Version 1.113.0 2002-03-14 Michael Meeks * bonobo/bonobo-ui-preferences.c (bonobo_ui_preferences_shutdown): always shutdown gconf. * tests/*.c: use gnome_program_init so we get a11y support where neccessary. 2002-03-13 Michael Meeks * bonobo/bonobo-ui-main.c (libbonoboui_module_info_get): impl. (do_low_level_init): split out of (bonobo_ui_init_full): here. (libbonoboui_post_args_parse): impl. * bonobo/bonobo-ui-init-gtk.c: move from libgnomeui 2002-03-11 Michael Meeks * bonobo/bonobo-ui-main.c (bonobo_ui_init_full): use DisplayString not gdk_get_display. * samples/controls/bonobo-sample-controls.c (main): ditto. 2002-03-11 Changwoo Ryu * configure.in: Added 'ko' to ALL_LINGUAS. 2002-03-08 Michael Meeks * bonobo/bonobo-ui-main.c (bonobo_ui_init_full): initialize the display context setting so it correctly matches the normalized name returned from gdk_display_name. 2002-03-06 Michael Meeks * samples/controls/bonobo-sample-controls.c (main): do per display init. 2002-03-05 Michael Meeks * bonobo/bonobo-ui-config-widget.c (row_activated_cb): rename to (list_selection_changed): this. (set_values): move up & expand. (list_selection_changed): use set_values. 2002-03-05 Christian Meyer * configure.in: Added 'de' to ALL_LINGUAS. 2002-03-04 Michael Meeks * tests/test-ui.c (main): fix leak. * bonobo/bonobo-ui-util.c (bonobo_ui_util_xml_get_icon_widget), (bonobo_ui_util_xml_get_pixbuf), (lookup_stock_compat): lookup pixmaps not stock items. 2002-03-04 Michael Meeks * Version 1.112.1 2002-03-04 Michael Meeks * tests/test-ui-auto.c (test_ui_performance): use top_srcdir. * bonobo/bonobo-ui-sync-status.c (impl_bonobo_ui_sync_status_state): get 'resize_grip' from the parent 'status' node, and don't show the grip if we have controls / items shown to the right. 2002-03-02 James Willcox * bonobo/bonobo-file-selector-util.c (run_file_selector): fix for FILESEL_OPEN_MULTI 2002-03-02 Paolo Maggi * bonobo/bonobo-widget.c (bonobo_widget_construct_control): bw is a floating objetc so to unref (and kill it) we have to call gtk_object_sink (bonobo_widget_new_control_from_objref): call CORBA_exception_free to free the ev (bonobo_widget_new_control): ditto 2002-02-27 Michael Meeks * bonobo/bonobo-zoomable-frame.c (bonobo_zoomable_frame_bind_to_zoomable), (bonobo_zoomable_frame_dispose): only hold a CORBA ref on the remote zoomable, to ease ref counting issues with BonoboControl. 2002-02-27 Mark McLoughlin * bonobo/bonobo-control.c: (bonobo_control_get_popup_ui_container): fix race condition/re-entrancy bug. 2002-02-26 Paolo Maggi * configure.in: now libbonoboui needs gtk+ 1.3.14 * bonobo/bonobo-ui-sync-status.c (impl_bonobo_ui_sync_status_state): Show the resize grip if resize_grip is set to 1. * bonobo/bonobo-file-selector-ui.c: fixed to work with the new GtkFileSelection API for multiple files 2002-02-24 Jody Goldberg * bonobo/bonobo-ui-component.h (BonoboUIVerb) : const the name to silence some warnings. 2002-02-25 Michael Meeks * bonobo/bonobo-ui-toolbar.c (impl_set_property): fix uint -> boolean. 2002-02-25 Johan Dahlin * bonobo/bonobo-ui-engine.h (BONOBO_IS_UI_ENGINE): Make macros and bonobo_ui_engine_get_type public 2002-02-25 Hasbullah Bin Pit * configure.in: REALLY Added Malay (ms)to ALL_LINGUAS. 2002-02-20 Michael Meeks * bonobo/bonobo-control-frame.c (control_connection_died_cb): upd. to disconnect us safely & fire a "system_exception" signal. * tests/Makefile.am (-DBONOBO_TOPBUILDDIR): define. * tests/test-ui-auto.c (test_ui_performance): use it. 2002-02-20 Michael Meeks * bonobo/bonobo-ui-engine.c (class_init): add cmd_id & commands_id. (find_sync_for_node): we have no sync. for commands. * bonobo/bonobo-ui-sync-keys.c (impl_bonobo_ui_sync_keys_can_handle): accel. * bonobo/bonobo-ui-sync-menu.c (impl_bonobo_ui_sync_menu_can_handle): expand scope to accelerate. * bonobo/bonobo-ui-sync-toolbar.c (impl_bonobo_ui_sync_toolbar_can_handle): ditto. 2002-02-19 Michael Meeks * bonobo/bonobo-ui-sync-menu.c (impl_bonobo_ui_sync_menu_can_handle): optimize. * bonobo/bonobo-ui-sync-toolbar.c (impl_bonobo_ui_sync_toolbar_can_handle): ditto. * bonobo/bonobo-ui-util.c (lookup_stock_compat): improve the mapping 2002-02-19 James Willcox * bonobo/bonobo-file-selector-util.c (run_file_selector): Fixed the behavior of bonobo_file_selector_open returning a local path instead of a text uri when using the GTK file selector. 2002-02-19 Michael Meeks * Version 1.112.0 2002-02-18 Gediminas Paulauskas * configure.in: remove GNOME_COMMON_INIT, GNOME_PLATFORM_GNOME_2 macros to match latest gnome-common. 2002-02-17 Zbigniew Chyla * bonobo/bonobo-zoomable.c (bonobo_zoomable_class_init): Fixed typo in translatable string. * configure.in (ALL_LINGUAS): Added pl (Polish). 2002-02-15 Michael Meeks * bonobo/Makefile.am: add deprecated flags. * tests/test-moniker.c (display_as_control): fix ref. leak. 2002-02-14 Michael Meeks * bonobo/bonobo-control-frame.c (bonobo_control_frame_get_popup_component): implement. * bonobo/bonobo-ui-engine-config.c (bonobo_ui_engine_config_serialize), (bonobo_ui_engine_config_hydrate): port to gconf. 2002-02-13 Michael Meeks * bonobo/bonobo-ui-engine-config.c (response_fn, dialog_new): upd. * bonobo/bonobo-ui-config-widget.c (populate_list): port away from GtkList. * bonobo/bonobo-ui-component.c (bonobo_ui_component_new_default): upd. pid printf. * samples/controls/bonobo-sample-controls.c (bonobo_entry_control_new): remove visual push/pop. * samples/bonoboui/hello.c (hello_new): upd window handling. * bonobo/bonobo-ui-util.c (bonobo_ui_util_xml_get_icon_widget): upd. pixbuf ref counting. * bonobo/bonobo-ui-toolbar.c (show_popup_window): use gtk_window_move not widget_set_uposition (bonobo_ui_toolbar_insert): upd. * bonobo/bonobo-canvas-component.c (impl_Bonobo_Canvas_Component_unrealize): update pixbuf ref/unref (bonobo_canvas_new): prune gdk_rgb_init * bonobo/bonobo-dock-item.c (bonobo_dock_item_grab_pointer): unref don't destroy cursor. (bonobo_dock_item_detach): remove hints. 2002-02-13 Michael Meeks * bonobo/bonobo-selector.c (bonobo_selector_class_init): fix signal_new arg. ordering. * bonobo/bonobo-ui-engine.c (get_parent_path): rename to (find_last_slash): this. (bonobo_ui_engine_xml_set_prop): upd. to re-write the parent path on the stack. * tests/*.c: port. * bonobo/*.c: more deprecated bits removal. 2002-02-12 Michael Meeks * bonobo/bonobo-selector-widget.c: port from CList, re-write several innards. * configure.in: depend on gconf >= 1.1.8 * bonobo/bonobo-ui-preferences.c (bonobo_ui_preferences_shutdown): unref the gconf client. 2002-02-11 Michael Meeks * bonobo/bonobo-selector.c: port. * bonobo/bonobo-file-selector-util.c: port. * bonobo/*.[ch]: lots of porting action, too boring to enumerate. * bonobo/bonobo-canvas-item.c (bonobo_canvas_item_get_type): kill. (gbi_finalize): upd. (gbi_set_property): re-write. (gbi_class_init): port. * bonobo/bonobo-canvas-item.h: * bonobo/bonobo-canvas-component.h: add deprecated guards. 2002-02-11 Michael Meeks * bonobo/bonobo-ui-xml.c (do_set_id): only do sanity checks where absolutely neccessary, accelerate, remove redundant NULL check. (set_id): upd. (xml_get_path): do on-stack path splitting to avoid locking / malloc overheads. (bonobo_ui_xml_path_split), (bonobo_ui_xml_path_freev): kill. * bonobo/bonobo-ui-node.c (bonobo_ui_node_unlink): tolerate NULL nodes silently. * tests/test-ui-auto.c (test_ui_performance): more beef. 2002-02-11 Michael Meeks * Version 1.111.0 2002-02-11 Michael Meeks * bonobo/bonobo-ui-engine.h: fix G_BEGIN_DECLS 2002-02-10 Pauli Virtanen * configure.in (ALL_LINGUAS): Added "fi" (Finnish). 2002-02-08 Michael Meeks * bonobo/bonobo-ui-engine.c (bonobo_ui_engine_xml_set_prop): optimize some more. 2002-02-07 Michael Meeks * bonobo/bonobo-plug.c: port & (bonobo_plug_get_type): kill. * bonobo/bonobo-canvas-component.c: port & (root_item_hack_get_type): kill. * bonobo/bonobo-dock-item.h: make the bits marked 'private' private. * bonobo/bonobo-dock-item.c: port & (bonobo_dock_item_get_type): remove (bonobo_dock_item_destroy): remove. * bonobo/bonobo-dock-band.c: port & (bonobo_dock_band_get_type), (bonobo_dock_band_destroy): remove remove bogus empty private structs. * bonobo/bonobo-ui-sync.h: ditto. * bonobo/Makefile.am (INCLUDES): define BONOBO_UI_INTERNAL. * bonobo/bonobo-ui-engine.h: re-arrange into public and guard internal bits so they don't get used erroneously. * bonobo/bonobo-ui-xml.h: guard entirely with internal API guards. * bonobo/bonobo-dock.c (bonobo_dock_class_init), (drag_end, connect_drag_signals), (bonobo_dock_new, bonobo_dock_add_item), (bonobo_dock_unmap, bonobo_dock_map): port. (bonobo_dock_get_type): kill. * bonobo/*.c: remove deprecated bits - lots of work. 2002-02-06 Michael Meeks * bonobo/bonobo-ui-engine.c (bonobo_ui_engine_update): remove access syscalls slowing us down. (bonobo_ui_engine_xml_set_prop): optimize setting the same prop multiple times. 2002-02-05 Michael Meeks * configure.in: require GConf >= 1.1.7 * bonobo/bonobo-ui-main.c (bonobo_ui_debug_shutdown): upd. * bonobo/bonobo-ui-preferences.c remove no_gconf boolean throught. (bonobo_ui_gconf_leaks_refs): remove. (bonobo_ui_preferences_shutdown): do a gconf_debug_shutdown. 2002-02-05 Mark McLoughlin * bonobo/bonobo-ui-sync-menu.c: (impl_bonobo_ui_sync_menu_build): check whether the attribute is set in the cmd_node also. Fix leak. * tests/test-events.c: (main): some error checking. 2002-02-04 Michael Meeks * Version 1.110.2 2002-02-04 Michael Meeks * tests/test-ui-auto.c (test_ui_node_attrs): split from (test_ui_node): here (test_ui_node_inserts): impl. (test_engine_default_placeholder): impl. * bonobo/bonobo-ui-node.c (bonobo_ui_node_insert_before): unlink new_before before operating & simplify flow. * tests/test-ui-auto.c (test_engine_misc): rename 2002-02-04 Michael Meeks * Version 1.110.1 2002-02-04 Michael Meeks * tests/test-ui.c (main): remove bogus thaw, unhide the placeholder containing radio buttons 2002-02-04 Paolo Maggi * bonobo/bonobo-file-selector-ui.c: updated to work with the new GtkTreeView based GtkFileSelection widget 2002-02-04 Michael Meeks * bonobo/bonobo-ui-engine.c (impl_emit_event_on): hold refs on the engine. (class_init): setup state_id 2002-02-02 Michael Meeks * bonobo/bonobo-ui-node.c (do_set_attr): fix heinous bug. * tests/test-ui-auto.c (test_ui_node): impl. 2002-02-02 Michael Meeks * samples/bonoboui/hello.c (utf8_reverse): copy from glib/glib/gpattern.c (hello_on_button_click): use it not g_strreverse. * bonobo/bonobo-ui-node.c (bonobo_ui_node_set_attr_by_id): split out into (do_set_attr): here. (bonobo_ui_node_try_set_attr): impl. * bonobo/bonobo-ui-engine.c (set_cmd_attr): only signal / re-build if different. 2002-02-01 Michael Meeks * bonobo/bonobo-ui-engine.c (set_cmd_attr): take a quark 2002-01-31 Jens Finke * bonobo/bonobo-property-control.c (bonobo_property_control_new): Don't create property control object here. This is done by bonobo_property_control_new_full. 2002-01-29 Michael Meeks * Version 1.110.0 2002-01-28 Szabolcs Ban * configure.in Added Hungarian language. 2002-01-28 Alexander Shopov * configure.in (ALL_LINGUAS): Added "bg" (Bulgarian). 2002-01-25 Darin Adler * bonobo/bonobo-ui-util.c: (bonobo_ui_util_xml_to_pixbuf), (bonobo_ui_util_build_help_menu): Wean from , use new g_ascii_xxx calls instead. 2002-01-25 Michael Meeks * bonobo/bonobo-ui-sync-toolbar.c (impl_bonobo_ui_sync_toolbar_state): fix silly with sensitivity. 2002-01-24 Michael Meeks * bonobo/bonobo-ui-toolbar-control-item.c (bonobo_ui_toolbar_control_item_set_sensitive): impl. * bonobo/bonobo-ui-sync-toolbar.c (impl_bonobo_ui_sync_toolbar_state): add sensitivity set for controls. * bonobo/bonobo-ui-toolbar.c (hide_not_fitting_items): remove cruft. 2002-01-22 Michael Meeks * bonobo/bonobo-ui-engine.c (state_update_new): sensitivity fix from stable. 2002-01-22 Michael Meeks * bonobo/bonobo-ui-preferences.c (bonobo_ui_gconf_leaks_refs): allow gconf to be turned off. (bonobo_ui_preferences_get_toolbar_style): upd. (bonobo_ui_preferences_add_engine): upd. (bonobo_ui_preferences_remove_engine): upd. (get): upd. * tests/test-ui-auto.c: add. 2002-01-21 Michael Meeks * glade/glade-bonobo.c (glade_bonobo_widget_new): release the property bag after using it. * configure.in: require libbonobo >= 1.109.1 * bonobo/bonobo-ui-component.c (impl_set_prop): upd. * bonobo/bonobo-ui-container.c (impl_Bonobo_UIContainer_setAttr): upd. * bonobo/bonobo-ui-engine.c (get_parent_path), (bonobo_ui_engine_xml_set_prop): forward port from stable - fix node ownership issues, add component argument. 2002-01-18 Michael Meeks * bonobo/bonobo-control-frame.c (impl_Bonobo_ControlFrame_queueResize): queue resize on the socket. 2002-01-20 Hasbullah Bin Pit * configure.ini: Added Malay (ms)to ALL_LINGUAS. * po/ms.po: Added Malay Malay Translation by Mohamad Afifi Omar (App) . 2002-01-18 Michael Meeks * bonobo/bonobo-ui-toolbar-item.c (impl_set_style): move optimization (bonobo_ui_toolbar_item_set_style): here for speed in bonobo case. * bonobo/bonobo-ui-component.c (impl_freeze): optimize for repeated freeze/thaws. (impl_thaw): ditto. 2002-01-16 Michael Meeks * bonobo/bonobo-ui-util.c (lookup_stock_compat): implement a more compatible mapping for the old stock names. 2002-01-15 Johan Dahlin * bonobo/bonobo-canvas-component.h (BONOBO_TYPE_CANVAS_COMPONENT): Add * bonobo/bonobo-ui-config-widget.h (BONOBO_TYPE_UI_CONFIG_WIDGET): Add * bonobo/bonobo-selector-widget.h (BONOBO_TYPE_SELECTOR_WIDGET): Add * bonobo/bonobo-selector.h (BONOBO_TYPE_SELECTOR): Add 2002-01-15 Michael Meeks * Version 1.109.2 2002-01-15 Michael Meeks * bonobo/bonobo-ui-preferences.c (bonobo_ui_preferences_remove_engine): remove assert, we can double dispose. * bonobo/bonobo-ui-engine.c (impl_finalize): move loads of guff into (bonobo_ui_engine_dispose): here. (bonobo_ui_engine_update): tolerate a NULL tree. * bonobo/bonobo-window.c (bonobo_window_dispose): do an explicit dispose on the engine. * bonobo/bonobo-ui-engine.c (impl_dispose): freeze/thaw the engine, since we can get bogus 'updates' happening from re-enterancy as we release the tree. (bonobo_ui_engine_dispose): split from dispose. 2002-01-14 Anders Carlsson * bonobo/bonobo-ui-engine.c: (impl_dispose), (bonobo_ui_engine_construct): Add/remove engine from preferences list; * bonobo/bonobo-ui-preferences.c: (update_engines_idle_callback), (keys_changed_fn), (bonobo_ui_preferences_add_engine), (bonobo_ui_preferences_remove_engine), (bonobo_ui_preferences_get_toolbar_style): Add support for notification, remove unused functions. * bonobo/bonobo-ui-preferences.h: * bonobo/bonobo-ui-sync-menu.c: (impl_bonobo_ui_sync_menu_state), (impl_bonobo_ui_sync_menu_build): Always create image menu items, update image in sync_state. * bonobo/bonobo-ui-sync-toolbar.c: (parse_look), (create_dockitem): Use bonobo_ui_preferences_get_toolbar_style. * bonobo/bonobo-window.c: (construct_priv): * tests/test-ui.c: (dump_prefs): Remove unneeded calls. 2002-01-10 Michael Meeks * bonobo/bonobo-ui-sync-menu.c (impl_dispose): destroy the hash table here. (impl_finalize): kill this. (init): setup the hash with free methods. (radio_group_remove): upd. (radio_group_destroy): kill. (radio_group_add): upd. * bonobo/bonobo-ui-engine.c (impl_dispose): move component de-register to here (impl_finalize): from here. * Version 1.109.1 2002-01-10 Michael Meeks * samples/controls/Makefile.am: fix dist. * Version 1.109.0 2002-01-09 Michael Meeks * bonobo/bonobo-ui-sync-toolbar.c (bonobo_ui_sync_toolbar_new): take a ref on the dock. (impl_dispose): impl. (impl_finalize): kill. (class_init): upd. * bonobo/bonobo-ui-sync-status.c (impl_dispose): impl. (class_init): upd. (bonobo_ui_sync_status_new): take a ref on status. * bonobo/bonobo-ui-sync-menu.c (impl_dispose): impl. (class_init): add dispose. (bonobo_ui_sync_menu_new): hold references on the various bits. * bonobo/bonobo-ui-engine.c (widget_unref): impl. (info_free_fn, prune_node, bonobo_ui_engine_object_set), (bonobo_ui_engine_sync, bonobo_ui_engine_stamp_root): hold a reference on the info->widget member. (custom_widget_unparent): don't do extra refs. 2002-01-09 Michael Meeks * Makefile.am: remove monikers. * monikers/: remove, in libgnome now. 2002-01-08 Paolo Maggi * bonobo/bonobo-file-selector-util.c: gtkeditable.h #included (ok_clicked_cb): fixed a bug with mode == FILESEL_OPEN_MULTI (create_gtk_selector): almost rewritten * tests/test-filesel.c (get_files): set the default file name when calling bonobo_file_selector_save 2002-01-08 Darin Adler * bonobo/Makefile.am: Remove unnecessary "cd srcdir" from build rule that screwed up distcheck. 2002-01-07 Rodrigo Moya * monikers/bonobo-moniker-config.c: implemented config: moniker, based in GConf * monikers/bonobo-config-bag.[ch]: PropertyBag implementation for the config: moniker, based on bonobo-config's BonoboConfigBag * monikers/bonobo-moniker-extra.[ch]: added new moniker 2002-01-07 Michael Meeks * bonobo/bonobo-widget.c (bonobo_widget_construct_control): nail daft leak. 2002-01-04 Darin Adler * bonobo/bonobo-ui-sync-status.c: (impl_bonobo_ui_sync_status_state): Check for NULL before calling atoi. 2002-01-04 jacob berkman * bonobo/bonobo-control.c (bonobo_control_auto_merge): only set the container if we are still active after getting the remote container, as we could be de-activated before finishing with an original activation call (impl_Bonobo_Control_activate): only emit the activated signal if we are still active (same deal as above) 2002-01-04 Anders Carlsson * bonobo/bonobo-ui-sync-status.c: Show the resize grip by default, and only disable it if resize_grip is set to 0. 2002-01-03 Bill Haneman * bonobo/bonobo-socket.h: Add missing BONOBO_TYPE_SOCKET macro. 2002-01-03 Anders Carlsson * bonobo/bonobo-ui-sync-toolbar.c (impl_bonobo_ui_sync_toolbar_update_root): Plug a leak. 2002-01-02 Dave Camp * bonobo/bonobo-control-frame.c (impl_Bonobo_ControlFrame_notifyActivated): (impl_Bonobo_ControlFrame_activateURI): Use g_signal_emit instead of gtk_signal_emit, and cast the control frame to GObject rather than GtkObject. 2002-01-02 Michael Meeks * bonobo/bonobo-ui-component.c (impl_Bonobo_UIComponent__get_name): stub. (impl_Bonobo_UIComponent_unsetContainer), (impl_Bonobo_UIComponent_setContainer): impl. (bonobo_ui_component_class_init): fully populate epv. * bonobo/bonobo-ui-engine.c (sub_component_destroy): de-register the component. * bonobo/bonobo-ui-component.c (bonobo_ui_component_unset_container): remove redundant 'rm' command; and just deregister. * bonobo/bonobo-window.c (bonobo_window_dispose): impl. (destroy_priv): fold into (bonobo_window_finalize): here & upd. (bonobo_window_class_init): upd. * bonobo/bonobo-ui-sync-status.c (impl_bonobo_ui_sync_status_state): kill redundant braces - grr. 2001-12-31 Michael Meeks * bonobo/bonobo-ui-sync-menu.c (impl_bonobo_ui_sync_menu_state): kill warning. * bonobo/bonobo-plug.c (bonobo_plug_dispose): kill bogus ref. * bonobo/bonobo-control.c (bonobo_control_construct): sink the widget - we own it. * tests/control/test-control.c (create_frame), (create_control): add weak refs on the pointers we keep. (destroy_test): do some checks on the objects to make sure they are released. 2001-12-29 Anders Carlsson * doc/ui-xml.txt (Example): Update docs. * bonobo/bonobo-ui-sync-status.c (impl_bonobo_ui_sync_status_state): Check for resize_grip property. (impl_bonobo_ui_sync_status_build): Likewise. * bonobo/bonobo-ui-sync-toolbar.c (cmd_get_toolbar_image): Use GTK_ICON_SIZE_LARGE_TOOLBAR since that's what everyone else uses. 2001-12-28 Jens Finke * bonobo/bonobo-property-control.c (impl_Bonobo_PropertyControl_notifyAction), (bonobo_property_control_destroy), (bonobo_property_control_class_init), (bonobo_property_control_new_full), (bonobo_property_control_new): Replaced functions from gtk based type system with new gobject based functions. * bonobo/bonobo-ui-marshal.list: Added 'VOID:INT,INT'. 2001-12-27 Duarte Loreto * configure.in: Added portuguese to ALL_LINGUAS 2001-12-23 Takayuki KUSANO * configure.in: Added "ja" to ALL_LINGUAS. 2001-12-21 Michael Meeks * bonobo/bonobo-control-frame.c (bonobo_control_frame_class_init): kill setting the 'unimplemented' bits - that sucks. * bonobo/bonobo-control.c (bonobo_control_class_init): ditto. 2001-12-21 Michael Meeks * bonobo/bonobo-ui-sync-menu.c (impl_bonobo_ui_sync_menu_state): accelerate pixbuf sets. (cmd_get_menu_pixbuf): upd. * bonobo/bonobo-ui-toolbar-control-item.c (impl_set_icon): upd. but this can never have worked. * bonobo/bonobo-ui-toolbar-button-item.c (bonobo_ui_toolbar_button_item_set_image): un-type the image pointer so we can shoehorn GdkPixbufs in. (bonobo_ui_toolbar_button_item_construct, impl_set_icon): upd. (set_image): re-impl. for more efficiency. * bonobo/bonobo-ui-sync-toolbar.c (cmd_get_toolbar_image): upd. * bonobo/bonobo-ui-util.c (bonobo_ui_util_xml_get_pixbuf): update sig. (bonobo_ui_image_set_pixbuf): impl. 2001-12-20 Rodrigo Moya * tests/test-moniker.c: added exception's text to error messages * monikers/bonobo-moniker-extra.[ch]: extra moniker factory * monikers/bonobo-moniker-conf-indirect.c: implemented new conf_indirect: moniker * configure.in: * Makefile.am: added monikers directory 2001-12-20 Michael Meeks * bonobo/*.c: use bonobo_ui_node_peek_attr to save doing lots of wasteful malloc / frees all over the shop. 2001-12-20 Michael Meeks * bonobo/bonobo-ui-util.c (bonobo_ui_util_xml_get_pixbuf): stub. 2001-12-18 Michael Meeks * bonobo/bonobo-ui-node.c (bonobo_ui_node_peek_attr): impl. 2001-12-17 Michael Meeks * bonobo/bonobo-ui-engine.c (bonobo_ui_engine_update): find the sync once here. (bonobo_ui_engine_update_node): simplify checks. * bonobo/bonobo-ui-sync-menu.c (impl_bonobo_ui_sync_menu_state): pass 'sync' here. * bonobo/bonobo-control-frame.c (bonobo_control_frame_set_propbag): fix cast. * bonobo/bonobo-ui-engine.c (bonobo_ui_engine_update): instrument with 'access' calls. 2001-12-15 Michael Meeks * bonobo/bonobo-control.c (bonobo_control_do_popup): fixup return value. * bonobo/bonobo-ui-engine.c (bonobo_ui_engine_sync): after sync, all dirty flags must be TRUE. (replace_override_fn): work out which attrs changed. (override_fn): set all attrs to changed on override. * bonobo/bonobo-ui-node.c (bonobo_ui_node_transparent): treat separators differently - they tend to have no attrs, but are not 'transparent'. 2001-12-18 Darin Adler * bonobo/bonobo-ui-component.c: (bonobo_ui_component_set_tree): * bonobo/bonobo-ui-engine.c: (bonobo_ui_engine_xml_get): Use g_free to free the result of bonobo_ui_node_to_string. * bonobo/bonobo-ui-node.c: (bonobo_ui_node_to_string): Change function and documentation so that you use g_free to free the result rather than bonobo_ui_node_free_string. 2001-12-17 Darin Adler * bonobo/bonobo-ui-node.c: (bonobo_ui_node_to_string): Fix bug where bonobo_ui_node_to_string was returning a string that you must free with g_free, not bonobo_ui_node_free_string. * bonobo/bonobo-ui-engine.c: (bonobo_ui_engine_xml_get_prop): Fix comment that mentions the wrong function to free the resulting string. 2001-12-17 Mark McLoughlin * bonobo/bonobo-plug.c: (bonobo_plug_set_property), (bonobo_plug_get_property), (bonobo_plug_button_event): fix stylistic faux pas. 2001-12-14 Michael Meeks * Version 1.108.1 2001-12-14 Mark McLoughlin * bonobo/bonobo-control.[ch]: (bonobo_control_do_popup_full): impl to expose other gtk_menu_popup args. (bonobo_control_do_popup): use. 2001-12-13 Michael Meeks * bonobo/bonobo-control.c (bonobo_control_get_popup_ui_container): upd. (bonobo_control_destroy): upd. * bonobo/bonobo-ui-engine.c (bonobo_ui_engine_build_control): upd. referencing. * tests/test-ui.c: update. 2001-12-13 Michael Meeks * tests/test-reparent.c (main): destroy the window after use. * bonobo/bonobo-control.c (bonobo_control_class_init): upd. (bonobo_control_dispose): rename to (bonobo_control_destroy): this. * bonobo/bonobo-plug.c (bonobo_plug_class_init): upd. (bonobo_plug_unrealize, bonobo_plug_realize): impl, upd. take / release ref on realize / unrealize. (bonobo_plug_set_control): only hold a g_object ref. * tests/control/test-control.c (simple_tests): impl. (main): upd. * bonobo/bonobo-ui-toolbar-control-item.c (bonobo_ui_toolbar_control_item_construct): upd. ref counting. * bonobo/bonobo-ui-component.c (bonobo_ui_component_set_container): only take a CORBA ref on the container. (bonobo_ui_component_unset_container): upd. * bonobo/bonobo-ui-preferences.c (bonobo_ui_preferences_shutdown): impl. * bonobo/bonobo-ui-private.h: add. * bonobo/Makefile.am: upd. * tests/test-ui.c (main): Do a bonobo_ui_debug_shutdown. * tests/test-selector.c (main): ditto. * bonobo/bonobo-ui-main.c (bonobo_ui_debug_shutdown): add for internal use. 2001-12-13 Mark McLoughlin * bonobo/bonobo-plug.c: (bonobo_plug_set_property), (bonobo_plug_get_property), (bonobo_plug_finalize), (bonobo_plug_class_init), (bonobo_plug_init): add "event_forwarding" property. (bonobo_plug_button_event): impl forwarding of button events. (bonobo_plug_class_init): upd. * tests/test-events.c: test it. * tests/Makefile.am: upd. 2001-12-12 Michael Meeks * bonobo/bonobo-ui-engine.c (bonobo_ui_engine_set_ui_container): warning fix. 2001-12-12 jacob berkman * bonobo/bonobo-*.h (BONOBO_IS_*_CLASS): s/obj/klass/ where appropriate 2001-12-12 Michael Meeks * tests/test-reparent.c: do the out of proc re-parent, it works ! :-) * tests/test-control.c: upd. referencing. * tests/test-ui.c: upd. referencing. * doc/control.txt: upd. * bonobo/bonobo-widget.c (bonobo_widget_dispose): release the frame's ref. * bonobo/bonobo-socket.c (bonobo_socket_dispose): upd. (bonobo_socket_set_control_frame): take B. ref. * bonobo/bonobo-plug.c (bonobo_plug_set_control): take a B. ref, remove crack smoking mess. * bonobo/bonobo-control.c (control_frame_connection_died_cb): loose a single B. ref. (bonobo_control_notify_plug_died): kill. (bonobo_control_dispose): NULL widget on dispose. * bonobo/bonobo-control-frame.c (bonobo_control_frame_bind_to_control): upd. referencing. * bonobo/bonobo-window.c (bonobo_window_construct): deal with UI contianer referencing. * bonobo/bonobo-ui-container.c (bonobo_ui_container_class_init): upd. (bonobo_ui_container_dispose): impl, unhook from the engine. (bonobo_ui_container_set_engine): upd. (blank_engine): kill heap of dung. * bonobo/bonobo-ui-engine.c (class_init): upd. (impl_dispose): impl, unhook from the ui container. (bonobo_ui_engine_set_ui_container): upd. (blank_container): kill evil smelling mess. (sub_component_destroy): upd, kill signal mess, don't blank our UI container - why was that there ?a 2001-12-08 Michael Meeks * tests/test-moniker.c (display_as_control): dump the exception string. 2001-12-12 George Lebl * bonobo/bonobo-dock-item.c, bonobo/bonobo-plug.c, bonobo/bonobo-selector-widget.c, bonobo/bonobo-selector.c, bonobo/bonobo-ui-config-widget.c: s/guint/GtkType/ inside the _get_type methods, for greater enjoyment on 64 bit platforms * bonobo/bonobo-ui-util.c: Patch a small memleak 2001-12-12 Michael Meeks * Version 1.108.0 2001-12-12 jacob berkman * bonobo/Makefile.am: build built sources in $(srcdir) 2001-12-10 jacob berkman * glade/glade-gnome.c (add_dock_item): fix dock item placement * glade/glade-bonobo.c: allow more values for boolean true 2001-12-09 James Henstridge * bonobo/bonobo-ui-config-widget.c (widgets_init): use mnemonics for button labels here as well. * bonobo/bonobo-ui-sync-menu.c (impl_bonobo_ui_sync_menu_state): just call gtk_label_set_use_underline() to set up the mnemonic. 2001-12-07 jacob berkman * bonobo/Makefile.am: some fixes to generated files * bonobo/Makefile.am (libbonoboui.defs): forgot to add a rule for libbonoboui.defs * configure.in: look for glib-mkenums 2001-12-06 jacob berkman * bonobo/bonobo-ui-toolbar.h (BonoboUIToolbarStyle): reformat so that glib-mkenums likes us * bonobo/bonobo-dock-layout.[ch]: make it a GObject rather than a GtkObject * bonobo/Makefile.am: add builtin type files * glade/glade-bonobo.c (dock_allow_floating): (dock_item_set_shadow_type): handle some properties (dock_item_build): set the dock name (add_dock_item): (dock_build_children): ported from libglade 1 (glade_module_register_widgets): tell glade about the new widgets we can do 2001-12-06 Rodrigo Moya * samples/compound-doc/bonobo-hello/Makefile.am: * samples/controls/Makefile.am: install sample servers in $(prefix)/lib/bonobo-2.0/samples, and added server.in.in files and needed Makefile rules for converting them to server.in 2001-12-04 Darin Adler * bonobo/bonobo-ui-toolbar.c: (impl_destroy): Sink the tooltips rather than unrefing them. 2001-12-04 Michael Meeks * bonobo/bonobo-plug.c (bonobo_plug_expose_event): chain to parent. 2001-12-03 Laszlo Peter * bonobo/bonobo-plug.c: * bonobo/bonobo-socket.c: Fix some void functions returning values. 2001-11-30 Michael Meeks * Version 1.107.0 2001-12-02 Seth Nickell * bonobo/Makefile.am: * bonobo/bonobo-property-control.c: (bonobo_property_control_changed): Add bonobo-property-control back into the build, and fix one minor type error. 2001-11-26 Michael Meeks * bonobo/bonobo-control-frame.c (bonobo_control_frame_get_remote_window): disable hack around GtkPlug / Socket bugs. 2001-11-26 Michael Meeks * bonobo/bonobo-ui-main.c (bonobo_ui_main): impl. * bonobo/bonobo-socket.c (bonobo_socket_show_all): fix prototype. 2001-11-26 jacob berkman * bonobo/bonobo-socket.[ch] (bonobo_socket_get_type): return a GType rather than guint 2001-11-19 Michael Meeks * bonobo/bonobo-socket.c (bonobo_socket_class_init): upd. (bonobo_socket_show_all): empty impl - don't propagate. Tue Nov 20 21:17:03 2001 Owen Taylor * bonobo/bonobo-control-frame.c (bonobo_control_frame_get_control_property): Finish renaming opt_ev argument in function body as well. * samples/compound-doc/container/{component.h, document.h}: Include glib-object.h instead of specific gobject/* header files. 2001-11-20 Mark McLoughlin * bonobo/bonobo-control-frame.[ch]: (bonobo_control_frame_get_control_property_bag): renamed exception param to 'opt_ev' to indicate that it's optional. 2001-11-19 Michael Meeks * bonobo/bonobo-plug.c (bonobo_plug_dispose): update to use bonobo_socket_disposed. * bonobo/bonobo-socket.c (bonobo_socket_disposed): impl. internal method to replace GTK_OBJECT_DESTROYED 2001-11-18 Peter Williams * bonobo/bonobo-ui-marshal-main.c: Same. * bonobo/bonobo-ui-xml.c: See below. * bonobo/bonobo-ui-engine.c: Include glib-object.h instead of gobject/gsignal.h * bonobo/bonobo-ui-component.c: Remove a double-include of bonobo-types.h * bonobo/bonobo-ui-xml.h: Include glib-object.h instead of gobject/gobject.h * bonobo/bonobo-canvas-item.c (prepare_state): See below. * bonobo/bonobo-canvas-component.c (restore_state): Don't try to set the xoffset / yoffset members of GtkLayout; they've been removed. 2001-11-15 Michael Meeks * tests/control/test-control.c (run_tests): beef up the tests with some re-parenting action. * bonobo/bonobo-plug.c (bonobo_plug_expose_event): add debug rendering. * bonobo/bonobo-control-internal.h: turn off control debugging for a cleaner feel ... * bonobo/bonobo-control-frame.c (bonobo_control_frame_set_remote_window): rename to (bonobo_control_frame_get_remote_window): this to better reflect function. (bonobo_control_frame_get_remote_window): make it map the widget too. (dump_geom, dump_gdk_tree): debugging tools ... * bonobo/bonobo-control.c (bonobo_control_notify_plug_died): handle an inproc unrealize differently to a destroy. (bonobo_control_init): split out (impl_Bonobo_Control_getWindowId): demand re-create plug. (create_plug): impl & upd. * bonobo/bonobo-plug.c (bonobo_plug_size_allocate), (bonobo_plug_expose_event, bonobo_plug_size_request): add. (bonobo_plug_dispose): distinguish between a parent's unrealize and a dispose * bonobo/bonobo-socket.c (bonobo_socket_size_allocate), (bonobo_plug_expose_event, bonobo_socket_size_request): add for debugging. * bonobo/bonobo-ui-component.c (bonobo_ui_component_unset_container): forward port fix from stable. 2001-11-14 Michael Meeks * bonobo/bonobo-control-frame.c (bonobo_control_frame_get_popup_component): stub. 2001-11-14 Michael Meeks * tests/test-ui.c (do_sane_popup, main): test it. * bonobo/bonobo-control.c (impl_Bonobo_Control_getPopupContainer): impl. (bonobo_control_get_popup_ui_container): impl. (bonobo_control_set_popup_ui_container): impl. (bonobo_control_get_popup_ui_component): impl. (bonobo_control_dispose): upd. (bonobo_control_do_popup): impl. * bonobo/bonobo-control-frame.c (bonobo_control_frame_control_activate), (bonobo_control_frame_control_deactivate): kill debug. 2001-11-14 Michael Meeks * bonobo/bonobo-control-frame.c (bonobo_control_frame_class_init): fill out the unimplemented methods & upd handler. (bonobo_control_frame_set_remote_window): use getWindowId (bonobo_control_frame_bind_to_control): do a setFrame (always). (impl_Bonobo_ControlFrame_getUIHandler): rename to (impl_Bonobo_ControlFrame_getUIContainer): this. (bonobo_control_frame_bind_to_control): upd. for new setFrame. * bonobo/bonobo-control.c (impl_Bonobo_Control_getWindowId): impl. (impl_Bonobo_Control_getPopupContainer): stub. (impl_Bonobo_Control_setFrame): upd - just set frame. (bonobo_control_class_init): fill out the unimpl methods & update to include the new methods. (bonobo_control_get_remote_ui_container): upd. for new name. * bonobo/bonobo-socket.c (bonobo_socket_focus_out), (bonobo_socket_focus_in): upd. to chain always. 2001-11-12 Michael Meeks * bonobo/bonobo-ui-component.c (impl_xml_get), (bonobo_ui_component_get, bonobo_ui_component_set), (impl_xml_set, bonobo_ui_component_rm, impl_xml_rm), (bonobo_ui_component_freeze, impl_freeze), (bonobo_ui_component_thaw, impl_thaw), (bonobo_ui_component_set_prop, impl_set_prop), (impl_get_prop, bonobo_ui_component_get_prop), (bonobo_ui_component_path_exists, impl_exists): move pre-conditions to somewhere actualy useful. 2001-11-12 Michael Meeks * bonobo/bonobo-control.c (control_frame_connection_died_cb): upd. fixup casts. 2001-11-12 Michael Meeks * bonobo/bonobo-control-frame.c: kill plug_xid, it's transient and stale ... (bonobo_control_frame_bind_to_control): prune get id out of here. (bonobo_control_frame_set_remote_window): re-write to always fetch the plug x11 id. * bonobo/bonobo-socket.c (bonobo_socket_realize): hold a ref around the set_remote_window. * tests/test-ui.c (main): disable statusa set. 2001-11-09 Michael Meeks * tests/test-ui.c (main): check every possible CORBA_Environment. 2001-11-08 Mark McLoughlin * bonobo/bonobo-ui-container.h: kill non-existent bonobo_ui_container_construct * bonobo/libbonoboui-2.0.pc.in: add libgnomecanvas-2.0. * doc/object-hierarchy.txt: add. * doc/Makefile.am: add object-hierarchy.txt, ui-across-boundaries.txt, control.txt and compdoc.html. 2001-11-09 Michael Meeks * bonobo/bonobo-control-frame.c (bonobo_control_frame_bind_to_control): add paranoid check. * bonobo/bonobo-ui-component.c (bonobo_ui_component_unset_container): fix possible re-enterancy issue. * bonobo/bonobo-socket.c (bonobo_socket_plug_removed): impl. (bonobo_socket_class_init): hook. * tests/test-moniker.c (display_as_control): use bonobo_main. (main): debug_shutdown. 2001-11-08 Michael Meeks * glade/glade-bonobo.c (bonobo_window_find_internal_child): impl. (glade_module_register_widgets): upd. 2001-11-08 Michael Meeks * bonobo/bonobo-control.c (bonobo_control_construct): don't hold a ref on ourselves. * bonobo/bonobo-plug.c (bonobo_plug_delete_event): don't chain to a NULL pointer. 2001-11-08 Michael Meeks * bonobo/bonobo-ui-container.c (impl_Bonobo_UIContainer_setNode): upd. spelling for Darin. (impl_Bonobo_UIContainer_getAttr): upd. * bonobo/bonobo-ui-component.c (impl_get_prop): ditto. * bonobo/bonobo-plug.c (bonobo_plug_destroy_event): rename (bonobo_plug_delete_event): to this. 2001-11-07 jacob berkman * glade/Makefile.am (glademoduledir): install into our prefix rather than libglade's * configure.in: remove glade module dir check 2001-11-07 Michael Meeks * bonobo/bonobo-control-frame.c (bonobo_control_frame_set_remote_window): add disgusting hacks around GtkPlug brokenness in the in-proc case. * bonobo/bonobo-widget.c (bonobo_widget_construct_control_from_objref): remove sinking feeling. * bonobo/bonobo-control-frame.c (bonobo_control_frame_set_remote_window): an ugly, ugly hack to make the control play ball in-proc. * bonobo/bonobo-plug.c (bonobo_plug_realize): impl. (bonobo_plug_class_init): hook. * tests/control/test-control.c (create_frame): remove bogus remote faking, we need to fool Gdk too. 2001-11-07 Michael Meeks * bonobo/bonobo-ui-component.c (impl_get_prop): make the check faster. * tests/test-ui.c (main): update test. * bonobo/bonobo-ui-container.c (impl_Bonobo_UIContainer_getAttr): check it & fire the right exceptions. * bonobo/bonobo-ui-engine.c (bonobo_ui_engine_xml_get_prop): add invalid_path arg. * bonobo/bonobo-ui-xml.c (bonobo_ui_xml_finalize): chain to parent properly & upd. (bonobo_ui_xml_dispose): impl. (bonobo_ui_xml_class_init): hook. * bonobo/bonobo-ui-preferences.c (DEFINE_BONOBO_UI_PREFERENCE): cache the value localy. * bonobo/Makefile.am: don't build / install bonobo-wrapper.h * bonobo/bonobo-widget.c (bonobo_widget_class_init): upd. (bonobo_widget_remove): impl. 2001-11-05 Mark McLoughlin * bonobo/bonobo-ui-toolbar.c: (size_allocate_helper): don't assume we have to be the last widget on the list to be the last visible widget. * bonobo/bonobo-ui-toolbar-popup-item.c: (impl_set_orientation): don't unref pixbuf. 2001-11-06 Michael Meeks * bonobo/bonobo-zoomable.c (impl_Bonobo_Zoomable__get_preferredLevels): use a memcpy to be slightly efficient. (impl_Bonobo_Zoomable__get_preferredLevelNames): make legible. 2001-11-06 Michael Meeks * bonobo/bonobo-zoomable.c (bonobo_zoomable_class_init): fix bounds. * bonobo/bonobo-zoomable-frame.c: substantialy re-write. (bonobo_zoomable_frame_bind_to_zoomable): add opt_ev. 2001-11-06 Michael Meeks * bonobo/bonobo-zoomable.c (bonobo_zoomable_free_preferred_zoom_level_arrays): handle double destroys. (bonobo_zoomable_destroy): rename to (bonobo_zoomable_dispose): this & upd. (bonobo_zoomable_finalize): upd. (bonobo_zoomable_from_servant): simplify. (impl_Bonobo_Zoomable_setLevel), (impl_Bonobo_Zoomable_zoomOut), (impl_Bonobo_Zoomable_zoomIn), (impl_Bonobo_Zoomable_zoomFit), (impl_Bonobo_Zoomable_zoomDefault), (impl_Bonobo_Zoomable_setFrame): clean + gsignal. (bonobo_zoomable_new): prune cruft. (bonobo_zoomable_report_zoom_level_changed): add opt_ev. (bonobo_zoomable_report_zoom_parameters_changed): ditto. (bonobo_zoomable_class_init): upd. for g_signal. (bonobo_zoomable_get_arg): rename to (bonobo_zoomable_get_property): this. (bonobo_zoomable_set_parameters_full): upd. 2001-11-06 Michael Meeks * bonobo/bonobo-widget.c (bonobo_widget_dispose): re-order for more safety & simplify. (bonobo_widget_get_objref): use the frame's version, not our own private, stale copy. (bonobo_widget_get_uih): rename to (bonobo_widget_get_ui_container): use the frame's version. (bonobo_widget_construct_control): kill priv->server. (bonobo_widget_construct_control_from_objref): remove ui container management. (bonobo_widget_dispose): ditto. * bonobo/bonobo-widget.h: kill bonobo_widget_new_subdoc decl. add bonobo_widget_get_uih compat method. * bonobo/bonobo-plug.c (bonobo_plug_dispose): pull the child out before it can be disposed of. * bonobo/bonobo-control.c (bonobo_control_dispose): unref the plug on dispose. (bonobo_control_construct): take a ref on the widget. * bonobo/bonobo-ui-component.c (impl_get_prop): silently return NULL even with a NULL opt_ev, if we get a NonExistantAttr. * tests/test-ui.c (main): regression test it. 2001-11-05 Michael Meeks * Version 1.106.0 2001-11-05 Michael Meeks * configure.in: update all dep versions, & ver. * bonobo/*.[ch]: s/Helix Code/Ximian/ * bonobo/bonobo-ui-util.c (bonobo_ui_util_set_pixbuf, bonobo_ui_util_set_ui): add optional CORBA_Environments. * libbonoboui.h: update. * bonobo/bonobo-canvas-component.c (bonobo_canvas_component_get_ui_container): add opt_ev. (bonobo_canvas_component_ungrab): ditto. (bonobo_canvas_component_grab): 2001-11-02 Michael Meeks * bonobo/bonobo-control.c (bonobo_control_init): use set_plug to associate it correctly with the control. * bonobo/bonobo-socket.c (bonobo_socket_size_request): upd to accelerate. * bonobo/bonobo-control.c (control_frame_connection_died_cb): stub. (add_connection_listener): impl. (bonobo_control_add_listener): impl. (bonobo_control_unset_control_frame): unlisten on frame, re-order to re-enterancy guard. (impl_Bonobo_Control_setFrame): add listener, hold refs. * bonobo/bonobo-control-frame.c (add_connection_listener): remove. (bonobo_control_frame_bind_to_control): upd. (control_connection_died_cb): stub. 2001-11-01 Michael Meeks * bonobo/bonobo-control.c (bonobo_control_construct): put the widget inside the plug; oh yes. * tests/control/test-control.c (create_control): upd. * bonobo/bonobo-control-frame.c (bonobo_control_frame_set_remote_window): drasticaly simplify. (bonobo_control_frame_set_inproc_widget): kill; Owen doesn't like it; sigh. (bonobo_control_frame_bind_to_control): update. * bonobo/bonobo-socket.c (bonobo_socket_realize): upd. * bonobo/bonobo-control.c (bonobo_control_set_control_frame): privatize - makes no sense to be public, split into (bonobo_control_unset_control_frame): here and (impl_Bonobo_Control_setFrame): here. Return the plug's window id. (bonobo_control_init): always setup the plug. 2001-11-01 Michael Meeks * bonobo/bonobo-socket.c (bonobo_socket_unrealize): impl. (bonobo_socket_class_init): hook. (bonobo_socket_unrealize): unset the REALIZED flag before we chain - bug in Gtk+. * bonobo/bonobo-control-frame.c (bonobo_control_frame_set_inproc_widget): impl. to do aweful GtkPlug / Socket skullduggery - we know we're in-proc well before the plug / socket is realized. * bonobo/bonobo-control.c (bonobo_control_set_control_frame): setup inproc_frame. * bonobo/bonobo-control-frame.c (bonobo_control_frame_bind_to_control): upd, unset the frame on the control if we are releasing it, setup inproc_control if we're in-proc. (bonobo_control_frame_set_ui_container): short circuit re-set. (bonobo_control_frame_dispose): use the generic routines. (bonobo_control_frame_set_propbag): upd. for sloppier bonobo ref methods. * bonobo/bonobo-control.c: s/control_frame/frame/ 2001-11-01 Michael Meeks * bonobo/bonobo-control.c (bonobo_control_set_control_frame): de-activate exiting frame. (bonobo_control_dispose): use the std. methods, destroy not unref toplevel widget. (bonobo_control_set_properties): short circuit re-set. (bonobo_control_set_ui_component): short circuit re-set, unset the ui_component's container on release, dup the incoming ref. (bonobo_control_notify_plug_died): update for new ORBit2 API. 2001-11-01 Michael Meeks * tests/control/test-control.c (main): use bonobo_debug_shutdown. * tests/test-sensitivity.c (main): ditto * tests/test-reparent.c (main): ditto * tests/test-focus.c (main): ditto. 2001-10-31 Michael Meeks * tests/control/test-control.c (main): upd. (run_tests, create_test, create_frame), (create_control, destroy_test, mainloop_for): impl. 2001-10-30 jacob berkman * bonobo/bonobo-control.c (ORBIT2_INTERNAL_API): define this so that we build with current orbit * bonobo/libbonoboui-2.0.pc.in (Cflags): * bonobo/Makefile.am (libbonoboincludedir): * Makefile.am (libincludedir): use libbonoboui-2.0 rather than gnome-2.0 2001-10-31 Michael Meeks * configure.in: add test-control.c * tests/control/test-control.c: add. * tests/control/Makefile.am: add. 2001-10-31 Michael Meeks * bonobo/bonobo-plug.c (bonobo_plug_destroy_event): hack the mjmess out - this is never called it seems. * bonobo/bonobo-socket.c (bonobo_socket_focus_in), (bonobo_socket_focus_out): fix broken focus chaining. * bonobo/bonobo-widget.c (bonobo_widget_finalize): re-impl. (bonobo_widget_dispose): impl. (bonobo_widget_class_init): hook. * bonobo/bonobo-ui-toolbar-control-item.c (impl_finalize, impl_dispose): re-impl. (class_init): hook. (bonobo_ui_toolbar_control_item_new): upd. * tests/test-ui.c (main): give a relative path for std-ui.xml 2001-10-31 Michael Meeks * bonobo/bonobo-ui-toolbar-control-item.c (set_control_property_bag_value): don't set things on a NULL bag. * bonobo/bonobo-ui-util.c (bonobo_ui_util_get_ui_fname): fix silly. * bonobo/bonobo-control.c (bonobo_control_set_transient_for): re-impl, fix leak. 2001-10-30 Michael Meeks * bonobo/bonobo-control-frame.c (bonobo_control_frame_bind_to_control): shortcut re-sets, only take a CORBA ref. (bonobo_control_frame_dispose): only release a CORBA ref. * bonobo/bonobo-control.c (bonobo_control_notify_plug_died): impl. * bonobo/bonobo-plug.c (bonobo_plug_destroy_event): impl. (bonobo_plug_dispose): notify control that plug died. * bonobo/bonobo-control.c (bonobo_control_plug_destroy_cb): kill. (bonobo_control_plug_destroy_event_cb): kill. (impl_Bonobo_Control_setWindowId): don't connect them. * bonobo/bonobo-control-frame.c (bonobo_control_frame_sync_unrealize): kill. (bonobo_control_frame_sync_realize): simplify. s/priv->container/priv->socket/ remove the hbox hack. (bonobo_control_frame_construct): kill hbox code, add ev. (bonobo_control_frame_socket_state_changed): kill, move into the socket -> loose a signal & unsafety. (bonobo_control_frame_autoactivate_focus_in): kill. (bonobo_control_frame_autoactivate_focus_out): kill. (bonobo_control_frame_create_socket): fold back into (bonobo_control_frame_construct): here & upd. (bonobo_control_frame_new): upd. (bonobo_control_frame_init): create the socket here. (bonobo_control_frame_get_widget): return the socket. (bonobo_control_frame_realize): kill in favour of (bonobo_control_frame_set_remote_window): me & upd. (bonobo_control_frame_destroy): kill. (bonobo_control_frame_set_propbag): take a ref on the incoming prop bag. (bonobo_control_frame_dispose): unref the propbag. * bonobo/bonobo-socket.c (bonobo_socket_state_changed, bonobo_socket_focus_in), (bonobo_socket_focus_out): impl. (bonobo_socket_class_init): hook up. (bonobo_socket_size_request): use CORBA if we are not realized yet. * changes.txt: upd. * bonobo/bonobo-socket.c (bonobo_socket_unrealize): kill. (bonobo_socket_class_init): upd. * bonobo/bonobo-control.c (impl_Bonobo_Control_getDesiredSize): upd. signature. (impl_Bonobo_Control_realize): kill. (impl_Bonobo_Control_unrealize): kill. (bonobo_control_set_control_frame): shortcut re-sets. * bonobo/bonobo-control-frame.c (get_toplevel_fn): rename to (impl_Bonobo_ControlFrame_getToplevelId): this & re-impl. (add_toplevel_prop): kill. (bonobo_control_frame_set_propbag): upd. (impl_Bonobo_ControlFrame_getAmbientProperties): no demand property bag instantiation nonsense. * doc/control.txt (Note 2): add Darin's input. 2001-10-27 Michael Meeks * bonobo/bonobo-control-frame.c (bonobo_control_frame_get_socket), (bonobo_control_frame_set_socket): impl. (bonobo_control_frame_dispose): impl. (bonobo_control_frame_finalize): move stuff to dispose. (bonobo_control_frame_socket_destroy): kill the mess. (bonobo_control_frame_create_socket): don't connect to destroy. * bonobo/bonobo-socket.c (bonobo_socket_dispose): impl. (bonobo_socket_finalize): stub. (bonobo_socket_set_control_frame): impl. (bonobo_socket_get_control_frame): impl. (bonobo_socket_init): kill. * doc/control.txt (interactions): fix typo. (Misc Notes): add to describe Marks' tests. 2001-10-25 Michael Meeks * bonobo/bonobo-control.c (impl_Bonobo_Control_setWindowId): kill is_local, GtkPlug / GtkSocket now do this for us. (idle_destroy_socket): kill. (remove_destroy_idle): kill. (impl_Bonobo_Control_setWindowId): completely re-write & simplify. (bonobo_control_dispose): chain to parent dispoze method; sigh. (bonobo_gtk_widget_from_x11_id): kill. (bonobo_control_finalize): remove destroy_idle mess. * bonobo/bonobo-control-internal.h: add. * bonobo/bonobo-control-frame.c (bonobo_control_frame_sync_realize): kill remote call to realize. (bonobo_control_frame_sync_unrealize): ditto. * bonobo/bonobo-control.c (process_events): kill. (impl_Bonobo_Control_realize), (impl_Bonobo_Control_unrealize): stub. * bonobo/bonobo-control-frame.c (bonobo_control_frame_destroy): chain to parent. 2001-10-29 jacob berkman * tests/test-filesel.c (main): * tests/test-ui.c (main): * tests/test-focus.c (main): * samples/bonoboui/hello.c: use GETTEXT_PACKAGE where appropriate * samples/controls/Makefile.am: use INTLTOOL rules * configure.in: drop the 2 from the package name, use intltool, set GETTEXT_PACKAGE, and use AM_GLIB_GNU_GETTEXT * acconfig.h: add GETTEXT_PACKAGE * Makefile.am (SUBDIRS): dist intltool-* rather than xml-i18n-* 2001-10-28 Seth Nickell * bonobo/bonobo-canvas-component.c: (bonobo_canvas_component_new): * bonobo/bonobo-canvas-component.h: * bonobo/bonobo-control-frame.c: (bonobo_control_frame_new): * bonobo/bonobo-control-frame.h: * bonobo/bonobo-control.c: * bonobo/bonobo-control.h: * bonobo/bonobo-embeddable-factory.h: * bonobo/bonobo-property-control.c: * bonobo/bonobo-property-control.h: * bonobo/bonobo-ui-component.c: (ui_event), (impl_Bonobo_UIComponent_execVerb), (bonobo_ui_component_new): * bonobo/bonobo-ui-component.h: * bonobo/bonobo-ui-container.c: (bonobo_ui_container_new): * bonobo/bonobo-ui-container.h: * bonobo/bonobo-ui-xml.c: (bonobo_ui_xml_new): * bonobo/bonobo-ui-xml.h: * bonobo/bonobo-widget.c: (bonobo_widget_new_control_async), (bonobo_widget_new_control_from_objref), (bonobo_widget_new_control): * bonobo/bonobo-widget.h: * bonobo/bonobo-zoomable-frame.c: * bonobo/bonobo-zoomable-frame.h: * bonobo/bonobo-zoomable.c: * bonobo/bonobo-zoomable.h: Convert Bonobo TYPE macros from: BONOBO_..._TYPE to BONOBO_TYPE_... Add #defines to the old style for compatibility, but add a magic comment so its easy to remove them in the future. See also: http://www.stanford.edu/~snickell/bonobo_type_convert.pl (converts source code to use the new macros) 2001-10-26 Michael Meeks * tests/test-ui.c (dump_prefs): impl. (main): invoke. 2001-10-26 Michael Meeks * glade/glade-bonobo.c (glade_module_register_widgets): use the new, new API - the pace of change ... 2001-10-26 Michael Meeks * glade/glade-bonobo.c (glade_module_register_widgets): don't use glade_register_widget - it doesn't exist. Use glade_standard_build_widget for a BonoboWindow. Use 8 stop tabs. 2001-10-25 Michael Meeks * doc/control.txt: add re-design of Control / ControlFrame thoughts. 2001-10-24 jacob berkman * glade/glade-bonobo.c: move from libglade/glade/ * configure.in: add libglade checks * Makefile.am: build glade/ 2001-10-24 Michael Meeks * Upd. all factories from _OAF_FACTORY to _ACTIVATION_FACTORY. * tests/test-ui.c (main): add a friendly warning so people know it hasn't crashed. * bonobo/bonobo-ui-sync-menu.c (impl_bonobo_ui_sync_menu_build): honour get_menus_have_icons. 2001-10-24 Michael Meeks * configure.in: add gconf; yuck. * bonobo/bonobo-ui-preferences.[ch]: impl. * bonobo/bonobo-ui-sync-status.c (impl_bonobo_ui_sync_status_build): upd. prefs * bonobo/bonobo-selector-widget.c (bonobo_selector_widget_init): upd. prefs. * bonobo/bonobo-window.c (construct_priv): upd. prefs. * bonobo/bonobo-ui-sync-toolbar.c (parse_look), (create_dockitem): upd. prefs. * bonobo/bonobo-ui-sync-menu.c (add_tearoff): upd prefs. 2001-10-23 Michael Meeks * tests/test-moniker.c (display_as_stream): upd. (main): make async a global option. re-order to kill redundant prototypes. do a ui_init so we can use Gtk+. (display_control_async_cb): impl. (display_as_control): upd. * bonobo/bonobo-widget.c (bonobo_widget_construct_control_from_objref), (bonobo_widget_construct_control), (bonobo_widget_launch_component): add CORBA_Environments. (bonobo_widget_new_control_from_objref), (bonobo_widget_new_control): setup the CORBA_Environments. * bonobo/bonobo-widget.c (bonobo_widget_new_control_async): impl. (control_new_async_cb): impl. 2001-10-20 Michael Meeks * bonobo/bonobo-file-selector-util.c (run_file_slector): remove window_set_icon - we just need the transient and we get the icon just fine. 2001-10-20 Michael Meeks * bonobo/bonobo-control.c (bonobo_control_plug_destroy_event_cb): call new method. (bonobo_control_plug_destroy_cb): ditto. (impl_Bonobo_Control_setWindowId): unset. (bonobo_control_finalize): upd. (bonobo_control_set_plug): impl. (bonobo_control_get_plug): impl. (bonobo_control_dispose): impl. (bonobo_control_class_init): hook it up. * bonobo/bonobo-plug.c (bonobo_plug_dispose): impl. (bonobo_plug_set_control): impl. (bonobo_plug_get_control): impl. (bonobo_plug_class_init): hook dispose. * bonobo/bonobo-control-frame.c (get_toplevel_fn): if we are not the real toplevel, ie. our toplevel == a BonoboPlug then recurse up the tree via. CORBA. * bonobo/bonobo-selector.c (DEFAULT_INTERFACE): make it Bonobo/Control so we can test effectively. * bonobo/bonobo-selector-widget.c (free_lang_list): kill. (get_lang_list): re-write, converts a glist into a gslist for oaf - sigh. (get_filtered_objects): don't free the list. 2001-10-20 Michael Meeks * bonobo/bonobo-control-frame.c (check_ambient_propbag): don't do redundant set of toplevel property. * samples/controls/bonobo-sample-controls.c (bonobo_entry_control_new): fixup. 2001-10-20 Michael Meeks * bonobo/bonobo-ui-sync-menu.c (impl_bonobo_ui_sync_menu_build): only set stuff from the stockid if we don't have it set already. * samples/bonoboui/hello.c: finish re-write. * bonobo/bonobo-ui-component.c (bonobo_ui_component_add_verb_list_with_data), (bonobo_ui_component_add_verb_list): constipate. 2001-10-20 Michael Meeks * samples/bonoboui/hello.c: kill all redundant forward prototypes, substantialy re-write, clean the mess. Remove swathes of C++ style comments. * samples/bonoboui/Makefile.am: rewrite. * configure.in: update bonoboui-hello to bonoboui 2001-10-18 Michael Meeks * samples/controls/bonobo-sample-controls.c (bonobo_entry_control_new): upd. for new param spec mappings. 2001-10-18 Michael Meeks * bonobo/bonobo-ui-marshal.list (VOID): don't generate an ENUM marshaler. * bonobo/bonobo-ui-component.c (ui_event): dont use G_TYPE_ENUM it sucks. (bonobo_ui_component_add_listener_full): register the enum as an int. 2001-10-17 Michael Meeks * bonobo/bonobo-file-selector-util.c (run_file_slector): use g_getenv. * bonobo/bonobo-control.c (bonobo_control_x11_from_window_id): upd. sig. 2001-10-16 Michael Meeks * tests/test-moniker.c (display_as_stream): split chunks into (dump_stream): here. (disp_stream_async_cb, display_as_stream_async): impl. 2001-10-10 Havoc Pennington * bonobo/bonobo-ui-util.c (bonobo_ui_util_set_ui): fix docs to reflect that arg should be datadir not prefix (bonobo_ui_util_get_ui_fname): fix docs to reflect that arg should be datadir not prefix 2001-10-11 Michael Meeks * bonobo/bonobo-ui-util.c (bonobo_ui_util_get_ui_fname): update to allow absolute file name paths, and fall back to a straight prefix / file_name conflation. version gnome-2.0/ui * bonobo/Makefile.am (BONOBOUIDIR): version dir. * bonobo/bonobo-socket.c (bonobo_socket_destroy): rename to (bonobo_socket_finalize): and finalize instead. (bonobo_socket_class_init): upd. 2001-10-05 Michael Meeks * bonobo/bonobo-ui-util.c (lookup_stock_compat): rename gnome-stock-pixmap- prefix to gnome-stock- for compat. 2001-10-08 Abel Cheung * samples/controls/*: Rename bonobo-sample-controls -> bonobo-sample-controls-2 , to enable parallel install with bonobo 1.0.x . 2001-09-27 Michael Meeks * Version 1.103 2001-09-25 Darin Adler * bonobo/bonobo-ui-util.c: (lookup_stock_compat): Update for change in g_ascii_strdown API. 2001-09-24 Havoc Pennington * autogen.sh, configure.in: destroy CERTIFIED_GNOMIE 2001-09-22 Wang Jian * configure.in(ALL_LINGUAS): Added zh_CN for Simplified Chinese. 2001-06-21 Pablo Saratxaga * configure.in: Added Catalan (ca) to $ALL_LINGUAS 2001-09-20 Frank Belew * configure.in: removed AM_CONDITIONAL(FALSE...) 2001-09-20 Fatih Demir * configure.in: Added "ta" to the languages list. 2001-09-19 Darin Adler * bonobo/bonobo-control.c: (impl_Bonobo_Control_setWindowId): Fix parameter type to match new ORBit rules for string-like types. * bonobo/bonobo-file-selector-util.c: Add missing include of . 2001-09-15 Murray Cumming * samples/bonboui-hello: Now uses gtk stock items for menus and toolbars. Corrected symlink suggestion to include gnome/ui in path. 2001-09-07 Martin Baulig Removing the libgnome dependency - part I. * bonobo/bonobo-ui-main.c (bonobo_ui_init_full): Call g_set_prgname(). * bonobo/bonobo-file-selector-util.c (listener_cb): Make the `event_name' and `any' arguments const to make it compile without warnings. (create_control): Usfe g_get_prgname() instead of gnome_program_get_app_id(). (concat_dir_and_file): New static function, copied from libgnome. (ok_clicked_cb): Use the local concat_dir_and_file() instead of g_concat_dir_and_file() from libgnome. * bonobo/bonobo-dock-item.c: #include instead of . 2001-09-07 Martin Baulig * samples/bonoboui-hello/helloapp.c: Don't #include . * samples/bonoboui-hello/main.c: ditto. * tests/test-selector.c: ditto. 2001-09-07 Martin Baulig * bonobo/bonobo-ui-component.c (ui_event, impl_Bonobo_UIComponent_execVerb): Reflect latest bonobo_closure_invoke() API changes. 2001-09-07 Martin Baulig * bonobo/bonobo-canvas-component.c: Use the bonobo-ui-marshal.[ch] marshalling functions. * bonobo/bonobo-control-frame.c: ditto. * bonobo/bonobo-ui-engine.c: ditto. * bonobo/bonobo-ui-xml.c: ditto. * bonobo/bonobo-ui-marshal.list: Added `VOID:STRING,BOOLEAN', `BOOLEAN:POINTER', `VOID:POINTER,STRING', `VOID:POINTER,POINTER'. 2001-09-07 Glynn Foster * Makefile.am: Change includedir to gnome-2.0/ instead of gnome/2/ 2001-09-03 Michael Meeks * bonobo/bonobo-ui-component.c (bonobo_ui_component_set_status): do escaping on set string. * bonobo/bonobo-ui-node.c (append_escaped_text): cpy from glib. (internal_to_string): do entity encoding for basic entities. * tests/test-ui.c (main): upd. regression tests. 2001-09-06 Anders Carlsson * bonobo/Makefile.am (libbonoboincludedir): Change includedir to gnome-2.0/ instead of gnome/2/ * bonobo/libbonoboui-2.0.pc.in (Cflags): Likewise. Sun Sep 02 23:32:07 2001 George Lebl * bonobo/bonobo-ui-main.c (bonobo_ui_init_full): libgnome_module_info is now libgnome_module_info_get () Sun Sep 02 00:50:00 2001 George Lebl * bonobo/bonobo-file-selector-util.c (create_control): gnome_program_get_name is now called gnome_program_get_app_id so use that. 2001-08-31 Abel Cheung * configure.in (ALL_LINGUAS): zh_TW.Big5 -> zh_TW 2001-08-24 jacob berkman * tests/test-filesel.c: test for bonobo-file-selector * bonobo/bonobo-file-selector-util.[ch]: import libgnomefilesel 2001-08-22 Michael Meeks * tests/test-ui.c (main): do a batch of 1000 sets for profiling. * bonobo/bonobo-ui-node.c (uiCharacters): use g_string_append_len 2001-08-22 Michael Meeks * bonobo/*: convert to GQuark more fully, use static initializers. * bonobo/bonobo-ui-node.c (cleanhash): prune if & clean prototype ( from Darin ). (bonobo_ui_node_get_attr): simplify to use dup without conditional. (bonobo_ui_node_get_content): ditto. (bonobo_ui_node_copy_attrs): ditto. * Merged to 2001-08-22 from bonobo: ui-shrink branch. 2001-08-22 Michael Meeks * bonobo/bonobo-ui-component.c (bonobo_ui_component_set_status): update path - since tree no longer has empty child content nodes. 2001-08-21 Michael Meeks * bonobo/bonobo-ui-engine.c (state_update_new): efficiency wins. (hide_placeholder_if_empty_or_hidden): ditto. * bonobo/bonobo-ui-xml.c (do_insert): optimize. (merge): more efficiency tweaking. * bonobo/bonobo-ui-engine.c (move_dirt_cmd_to_widget): accelerate loop, use name_id (update_commands_state): ditto. * bonobo/bonobo-ui-xml.c (bonobo_ui_xml_set_dirty, merge): quick compares for placeholder. (find_child, merge): accelerate name lookups. * tests/test-ui.c (main): update status check. * bonobo/bonobo-ui-node.c (uiEndElement): fix empty content pruning bug. (bonobo_ui_node_replace): swap arg. order; it was wrong. * bonobo/bonobo-ui-util.c (bonobo_ui_util_translate_ui): encode strings for libxml transport issues. * bonobo/bonobo-ui-node.c (bonobo_ui_node_move_children): impl. * bonobo/bonobo-ui-xml.c (override_node_with), (reinstate_old_node): use it. (move_children): kill it - slow. * bonobo/bonobo-ui-engine.c (class_init): setup cached ids for "id", "verb", "name" (node_get_id): fix horrible inefficiencies. (cmd_to_node_add_node): upd. (cmd_to_node_remove_node): upd. (impl_emit_verb_on): upd. (cmd_get_node): upd. (impl_emit_event_on): upd. (bonobo_ui_engine_get_cmd_node): upd. * bonobo/bonobo-ui-xml.c (bonobo_ui_xml_class_init): setup name_id. (do_set_id): use it. (bonobo_ui_xml_make_path): ditto & optimize. 2001-08-21 Michael Meeks * Merged libbonoboui to here: * bonobo/bonobo-ui-xml.c (bonobo_ui_xml_dump), (override_node_with): port to new code. (bonobo_ui_xml_merge): ditto. * bonobo/bonobo-ui-util.c (bonobo_ui_util_translate_ui): re-implement for new node structures. * bonobo/bonobo-ui-node.c (bonobo_ui_node_from_string, bonobo_ui_node_from_file): reimpl. (parse_state_new, parse_state_free): impl. (bonobo_ui_node_str_from_id): impl. (internal_to_string): impl. (bonobo_ui_node_to_string): re-impl. 2001-08-20 Michael Meeks * bonobo/bonobo-ui-node.c (bonobo_ui_node_new), (bonobo_ui_node_new_child, bonobo_ui_node_copy): rewrite. (node_free_internal): impl. (bonobo_ui_node_free, bonobo_ui_node_set_data), (bonobo_ui_node_get_data): rewrite. (bonobo_ui_node_get_id, cleanhash): impl. (bonobo_ui_node_set_attr_by_id): impl. (bonobo_ui_node_set_attr): upd. (bonobo_ui_node_remove_attr): upd. (bonobo_ui_node_unlink, bonobo_ui_node_insert_before), (bonobo_ui_node_add_child, bonobo_ui_node_set_content), (bonobo_ui_node_replace): rewrite. (bonobo_ui_node_peek_content): impl (bonobo_ui_node_next): re-impl. (bonobo_ui_node_prev, bonobo_ui_node_children), (bonobo_ui_node_get_name, bonobo_ui_node_parent): rewrite. (bonobo_ui_node_has_name): reimpl. (bonobo_ui_node_has_name_by_id): impl. (bonobo_ui_node_transparent): reimpl. (bonobo_ui_node_copy_attrs): reimpl. (node_free_attrs): impl. (do_strip): kill. (bonobo_ui_node_strip): make a noop. * bonobo/bonobo-ui-node-private.h: add. 2001-08-22 Michael Meeks * bonobo/bonobo-ui-util.c (free_loaded_node_cache), (free_node_cache_entry, bonobo_ui_util_set_ui): (node_hash, node_equal): port Alex' cache code from bonobo stable. (bonobo_ui_util_new_ui): remove 'strip' 2001-08-22 Anders Carlsson * bonobo/bonobo-ui-component.c (impl_xml_get): Free our ev. 2001-08-20 Michael Meeks * bonobo/bonobo-ui-node.c (bonobo_ui_node_from_file): update to unlink root node as well, and strip earlier. 2001-08-20 Michael Meeks * tests/test-ui.c (main): Make the 'Insensitive' item insensitive - woah ! * bonobo/bonobo-ui-container.c (impl_Bonobo_UIContainer_setNode): silently accept xml being empty without doing anything. * bonobo/bonobo-ui-component.c (impl_xml_set): return if xml is empty. * bonobo/bonobo-ui-node.c (bonobo_ui_node_from_string): unlink the root node from the doc. 2001-08-18 Darin Adler * configure.in: Add GLIB_GENMARSHAL. * bonobo/Makefile.am: Build marshal files in a simpler way. * bonobo/.cvsignore: * bonobo/bonoboui-marshal-main.c: * bonobo/bonoboui-marshal.list: * bonobo/bonobo-ui-component.c: * bonobo/bonobo-ui-marshal-main.c: * bonobo/bonobo-ui-marshal.list: Changed name of marshal files. * samples/bonoboui-hello/Makefile.am: * samples/controls/Makefile.am: * tests/Makefile.am: Removed extra -I directives. 2001-08-17 Cody Russell * bonobo/bonobo-zoomable.c: bonobo_zoomable_new() should be using g_object_new(), not gtk_type_new(). 2001-08-16 Fatih Demir * configure.in: Added "tr" to the languages list. 2001-08-14 Michael Meeks * configure.in: depend on bonobo-activation >= 0.9.1 * samples/controls/Makefile.am (serverdir): s/oaf/server/ update directory to install to. 2001-08-14 Michael Meeks * bonobo/bonobo-control-frame.c (get_toplevel_fn): fixup allocator mixup. * tests/test-focus.c (main): upd. (clicked_fn): add to kill transient thing. 2001-08-13 Michael Meeks * bonobo/bonobo-canvas-component.h: add missing includes. * bonobo/bonobo-canvas-component.c: squash warning. * bonobo/bonobo-ui-engine.c (bonobo_ui_engine_exec_verb): stub. (bonobo_ui_engine_ui_event): stub. * configure.in: depend on libbonobo >= 1.101.2 * bonobo/bonobo-ui-container.c (bonobo_ui_container_class_init): upd. (impl_Bonobo_UIContainer_execVerb), (Bonobo_UIContainer_uiEvent): impl. 2001-08-09 Peter Williams * Makefile.am (EXTRA_DIST): Typo fix. 2001-08-08 Michael Meeks * configure.in: build samples/controls. add xml-i18n-tools. * samples/controls/Makefile.am: fixup. 2001-08-07 Michael Meeks * configure.in: use PKG_CHECK_MODULES, depend on libbonobo >= 1.101.1 * bonobo/bonobo-control.c (bonobo_control_set_transient_for), (bonobo_control_unset_transient_for): impl. (window_transient_realize_gdk_cb): impl. (window_transient_unrealize_gdk_cb): (window_set_transient_for_gdk): impl. * bonobo/bonobo-control-frame.c: Sort out transient issues. (impl_Bonobo_ControlFrame_getAmbientProperties): demand create the ambient property bag. (get_toplevel_fn): impl. (add_toplevel_prop): impl. (bonobo_control_frame_set_propbag): upd. (check_ambient_propbag): impl. (bonobo_control_frame_destroy): impl to remove property to kill race. (bonobo_control_frame_class_init): hook it up. 2001-08-07 Michael Meeks * bonobo/Makefile.am: don't distribute marshal-sources. 2001-08-06 Michael Meeks * bonobo/bonobo-control.c (bonobo_control_window_id_from_x11): fix to return correctlty CORBA allocated type. * bonobo/bonobo-control-frame.c (bonobo_control_frame_set_remote_window): upd. 2001-08-08 Darin Adler * README: Help people find the information about using and hacking on this library, which is, for the moment, in another package. 2001-08-08 Cody Russell * bonobo/*.[ch]: Ensure that all get_type () functions are declared as G_GNUC_CONST and that their return values are either GType or GtkType, not guint. 2001-08-07 Darin Adler * Makefile.am: * configure.in: No need to build intl directory given how we use gettext. 2001-08-07 Martin Baulig * configure.in: Fix the PKG_CHECK_MODULES checks. You need to check for all dependencies for any given target in a single PKG_CHECK_MODULES command, otherwise you'll get duplicate -ldl etc. into your *.la files. * */Makefile.am: Use the correct _CFLAGS and _LIBS. 2001-08-06 Darin Adler * configure.in: Use PKG_CHECK_MODULES instead of GNOME_PKGCONFIG_CHECK_MODULES. 2001-08-06 Martin Baulig * bonobo/bonobo-ui-main.c: #include , not . * samples/compound-doc/container/container.c: Ditto. 2001-08-05 Michael Meeks * Makefile.am: add changes.txt 2001-08-01 Darin Adler * samples/bonoboui-hello/main.c: * tests/test-selector.c: Update to . 2001-08-01 Michael Meeks * bonobo/bonobo-selector-widget.c: update for bonobo-activation. 2001-08-01 ERDI Gergo * changes.txt: Added note about new opt_ev's * bonobo/bonobo-control.h: Add opt_ev's around the place * bonobo/bonobo-control-frame.h: ditto 2001-08-01 Michael Meeks * samples/controls/sample-control-container.c (main): upd. 2001-07-31 Abel Cheung * configure.in: Added zh_TW.Big5 to ALL_LINGUAS. 2001-07-31 Michael Meeks * tests/test-ui.c, * tests/test-sensitivity.c, * tests/test-moniker.c, * tests/test-focus.c, * tests/test-container.c, * bonobo/bonobo-window.c, * bonobo/bonobo-ui-main.c, * bonobo/bonobo-ui-container.c, * samples/controls/sample-control-factory.c, * samples/controls/sample-control-container.c: remove redundant liboaf.h includes. 2001-07-30 ERDI Gergo * bonobo/Makefile.am: Create our own marshallers instead of relying on libbonobo * bonobo/bonobo-ui-component.c: Use these marshallers 2001-07-30 Mikael Hallendal * tests/test-selector.c: include libgnome/libgnome.h instead 2001-07-31 Michael Meeks * tests/test-ui.c (main): fixup set_containers. 2001-07-31 Jamil Geor * bonobo/bonobo-ui-component.c (bonobo_ui_component_unset_container), (bonobo_ui_component_set_container): add opt_ev. * bonobo/bonobo-control.c (bonobo_control_finalize), (bonobo_control_auto_merge): upd. 2001-07-30 Michael Meeks * samples/bonoboui-hello/helloapp.c: kill libgnomeui includes. * tests/test-moniker.c (display_as_stream): show helpful exceptions. 2001-07-30 Michael Meeks * bonobo/bonobo-ui-component.c (bonobo_ui_component_add_verb): upd. (bonobo_ui_component_add_verb_full): gclosureize. (bonobo_ui_component_add_listener): upd. (bonobo_ui_component_add_listener_full): gclosureize. (listener_destroy, verb_destroy): ditto. (ui_event): upd invoke. (marshal_VOID__USER_DATA_STRING): impl manualy to do some leve of nasty backwards compat with the Gnome::UIInfo stuff. (remove_verb): update. (bonobo_ui_component_remove_verb_by_closure): impl. (bonobo_ui_component_remove_verb_by_func): remove (bonobo_ui_component_remove_verb_by_data): remove. (remove_listener): upd. (bonobo_ui_component_remove_listener_by_closure): impl. (bonobo_ui_component_remove_listener_by_data): kill. (bonobo_ui_component_remove_listener_by_func): kill. 2001-07-29 Maciej Stachowiak * samples/bonoboui-hello/helloapp.h: Include instead of to fix build. 2001-07-29 Murray Cumming * samples/bonoboui-hello/helloapp.c: Corrected the 'can't find xml' warning. 2001-07-28 Murray Cumming * samples/bonoboui-hello: Added this example, which is meant to be a more sane and understandable bonoboui example than tests/test-ui. 2001-07-28 Murray Cumming * tests/test-ui.c: Corrected the 'can't find std-ui.xml' warning - ~/.gnome/ui is no longer used. 2001-07-28 Michael Meeks * tests/Makefile.am: install test-moniker. * tests/test-moniker.c: add POPT_AUTOHELP 2001-07-27 Michael Meeks * bonobo/bonobo-control.c (window_id_demangle): rename to (bonobo_control_x11_from_window_id): this, and publicise. (bonobo_control_windowid_from_x11): rename to (bonobo_control_window_id_from_x11): this & add compat macro. * bonobo/bonobo-control-frame.c (bonobo_control_frame_set_remote_window): upd. 2001-07-24 Michael Meeks * bonobo/bonobo-ui-main.c (bonobo_ui_init_full): init. bonobo inside here - of course :-) 2001-07-23 Michael Meeks * bonobo/bonobo-ui-component.c (impl_set_prop): re-write to use setAttr. (impl_get_prop): upd. for getAttr. * bonobo/bonobo-ui-container.c (impl_Bonobo_UIContainer_getAttr), (impl_Bonobo_UIContainer_setAttr): impl. (bonobo_ui_container_class_init): hook em up. * bonobo/bonobo-ui-engine.c (bonobo_ui_engine_xml_set_prop): forward port from Alex's bonobo 1.0 UI work (bonobo_ui_engine_xml_get_prop): ditto. 2001-07-23 Martin Baulig * bonobo/bonobo-ui-engine-config.[ch]: Ported to GObject. * bonobo/bonobo-ui-sync.[ch]: Ported to GObject. * bonobo/bonobo-ui-sync-keys.[ch]: Ported to GObject. * bonobo/bonobo-ui-sync-menus.[ch]: Ported to GObject. * bonobo/bonobo-ui-sync-toolbar.[ch]: Ported to GObject. * bonobo/bonobo-ui-sync-status.[ch]: Ported to GObject. 2001-07-23 Martin Baulig * bonobo/bonobo-widget.c (bonobo_widget_construct_control): `bw->priv->server' is already a CORBA_Object, don't call BONOBO_OBJREF on it. 2001-07-23 Martin Baulig * bonobo/bonobo-ui-engine.c (BonoboUIEngineClass): Added "destroy" signal. * bonobo/bonobo-ui-container.c (bonobo_ui_container_set_engine): Connect to the engine's "destroy" signal. 2001-07-22 Martin Baulig * bonobo/bonobo-ui-xml.c (bonobo_ui_xml_strip): Removed. (bonobo_ui_xml_merge): Don't call bonobo_ui_xml_strip. 2001-07-22 Mike Kestner * configure.in : produce the samples Makefiles. * libbonoboui.h : kill the removed header files. * bonobo/Makefile.am : remove the cs, view, vframe, and embed files. * bonobo/bonobo-embeddable.[ch]: * bonobo/bonobo-client-site.[ch]: * bonobo/bonobo-view.[ch]: * bonobo/bonobo-view-frame.[ch]: killed. * bonobo/bonobo-canvas-item.c : switch from embeddable prop to a CanvasComponentFactory property. * bonobo/bonobo-widget.c : removed the subdoc functions. * samples/Makefile.am : activate the compound-doc build * samples/compound-doc/Makefile.am : activate container build 2001-07-22 Joe Shaw * bonobo/bonobo-ui-sync-status.c (bonobo_ui_sync_status_new): Use the GObject signal functions since BonoboUIEngine is a GObject now. 2001-07-21 Dan Damian * libbonoboui.h: changed reference from bonobo-win.h to bonobo-window.h * bonobo/bonobo-window.h: ditto. 2001-07-20 Michael Meeks * bonobo/bonobo-ui-engine.c (PARENT_TYPE): make it inherit from a GObject since the structures do: doh. * bonobo/bonobo-window.c (destroy_priv): g_object_unref the BonoboUIEngine, not gtk_object_unref. * bonobo/bonobo-ui-toolbar-item.c (impl_destroy): protect against double destroys - these seem to happen; argh. * bonobo/bonobo-canvas-component.c (rih_destroy): ditto. * bonobo/bonobo-wrapper.c (bonobo_wrapper_destroy): ditto. * bonobo/bonobo-ui-toolbar-button-item.c (impl_destroy): ditto. 2001-07-19 Michael Meeks * bonobo/bonobo-ui-node.c (bonobo_ui_node_strip): NULL all the node's parents: they are now orphand. * bonobo/bonobo-ui-engine.c (bonobo_ui_engine_xml_merge_tree): remove redundant strip. * bonobo/bonobo-ui-util.c (lookup_stock_compat): impl. (bonobo_ui_util_xml_get_icon_widget): obfuscate stock code to provide reasonable backwards compat, show the widget we return. * tests/test-ui.c (main): upd. * bonobo/bonobo-ui-util.c (bonobo_ui_util_new_menu), (bonobo_ui_util_new_placeholder), (bonobo_ui_util_set_radiogroup), (bonobo_ui_util_set_toggle), (bonobo_ui_util_new_std_toolbar): (bonobo_ui_util_new_toggle_toolbar), (bonobo_ui_util_xml_set_pix_fname), (bonobo_ui_util_xml_set_pix_stock), (bonobo_ui_util_xml_set_pix_xpm), (bonobo_ui_util_build_accel): kill. * changes.txt: upd. 2001-07-19 Michael Meeks * bonobo/bonobo-ui-toolbar-button-item.c: upd. * bonobo/Makefile.am: remove bonobo-ui-toolbar-icon.[ch] * bonobo/bonobo-ui-toolbar-icon.[ch]: remove. * bonobo/bonobo-ui-sync-menu.c (impl_bonobo_ui_sync_menu_build): upd. 2001-07-19 Michael Meeks * tests/test-ui.c (main): hack out test encode / decode. * bonobo/bonobo-ui-sync-toolbar.c (do_config_popup): simplify. * bonobo/bonobo-ui-sync-menu.c (impl_bonobo_ui_sync_menu_build): ditto. * bonobo/bonobo-ui-component.c (bonobo_ui_component_get_prop): simplify removing decode. (bonobo_ui_component_set_prop): simplify removing encode. (bonobo_ui_component_set_status): ditto. * bonobo/bonobo-ui-sync-toolbar.c (impl_bonobo_ui_sync_toolbar_state): ditto. * bonobo/bonobo-ui-sync-toolbar.c (impl_bonobo_ui_sync_toolbar_state): ditto. * bonobo/bonobo-ui-sync-status.c (impl_bonobo_ui_sync_status_state): ditto. * bonobo/bonobo-ui-sync-menu.c (put_hint_in_statusbar): ditto. * bonobo/bonobo-ui-sync-menu.c (impl_bonobo_ui_sync_menu_state): ditto. * bonobo/bonobo-ui-config-widget.c (populate_list): ditto. * bonobo/bonobo-selector-widget.c (get_lang_list): cut and paste from Nautilus - ug. (free_lang_list): impl. (get_filtered_objects): internationalize properly & simplify. * bonobo/bonobo-ui-util.c (bonobo_ui_util_decode_str), (bonobo_ui_util_encode_str): kill. * bonobo/bonobo-ui-util.h (bonobo_ui_util_encode_str), (bonobo_ui_util_encode_str): turn into g_strdup aliases - now libxml2 can cope with utf-8 fine. 2001-07-19 Michael Meeks * bonobo/bonobo-selector.c (bonobo_selector_construct): connect the "response" not "clicked" signal on GtkDialog. s/button_callback/response/callback/, don't listen on "close" (response_callback): upd. use bonobo_main_quit. (cancel_callback): remove: redundant. (ok_callback): upd. (bonobo_selector_select_id): upd & handle dialog_run correctly. * tests/test-selector.c (main): hack out loads of cruft, simplify to a single function. 2001-07-19 Anders Carlsson * tests/test-selector.c: Change include of bonobo-win.h to bonobo-window.h * tests/test-ui.c: Change include of bonobo-win.h to bonobo-window.h * bonobo/bonobo-win.c: Remove file. * bonobo/bonobo-win.h: Remove file. * bonobo/bonobo-ui-xml.c (bonobo_ui_xml_set_dirty): Change reference to bonobo-window.c * bonobo/Makefile.am (libbonoboinclude_HEADERS): Change bonobo-win.h to bonobo-window.h (libbonoboui_2_la_SOURCES): Change bonobo-win.c to bonobo-window.c * changes.txt: Add change about bonobo-window.[ch] 2001-07-19 Martin Baulig * bonobo/bonobo-ui-sync-menu.c, bonobo/bonobo-ui-sync-toolbar.c: Added "stockid=`stockid'" attribute to the XML node which you can use to get GtkStock items. * bonobo/bonobo-ui-util.c (bonobo_ui_util_xml_get_icon_pixmap_widget): Made second argument of this function a GtkIconSize. 2001-07-18 Michael Meeks * bonobo/bonobo-selector-widget.c (server_list_compare): kill. (get_filtered_objects): impl. (build_id_query_fragment): impl. - essentialy use oaf directly, thus removing bonobo_directory_* permanantly. * tests/Makefile.am: rename selector_test to conform to the grand plan. 2001-07-19 Martin Baulig * bonobo/bonobo-ui-engine.[ch]: Ported to GObject. * bonobo/bonobo-ui-xml.[ch]: Ported to GObject. 2001-07-17 Michael Meeks * bonobo/Makefile.am (libbonoboinclude_HEADERS): remove bonobo-ui-compat.h: extremely stale. 2001-07-17 Michael Meeks * bonobo/bonobo-ui-sync-status.c (impl_bonobo_ui_sync_status_build): don't have a 'resize grip' on the statusbar. * bonobo/bonobo-ui-component.c (impl_get_prop): free the string. * bonobo/bonobo-ui-toolbar.c (impl_destroy): cope with a NULL priv->popup_item. (impl_remove): don't do a typechecked cast - popup_item can be NULL. (impl_destroy): check before unref. * bonobo/bonobo-wrapper.c (bonobo_wrapper_draw): kill. * bonobo/bonobo-ui-toolbar.c (impl_draw): kill. * bonobo/bonobo-ui-component.c (bonobo_ui_component_new_default): make default name just getpid () + static idx. * bonobo/bonobo-ui-toolbar-separator-item.c (impl_expose_event): move the draw impl. here. (impl_draw): kill. * bonobo/bonobo-ui-toolbar.c (impl_expose_event): return TRUE from expose. * libbonoboui.h: include bonobo-ui-main.h * tests/test-reparent.c (main): do a bonobo_ui_init. 2001-07-12 Michael Meeks * bonobo/bonobo-ui-toolbar.c (impl_expose_event): port to Gtk+ 2.0 2001-07-13 Darin Adler * configure.in: Remove duplicate macros. * doc/.cvsignore: Ignore some generated files. 2001-07-12 Murray Cumming * doc directory: Added some files from the original bonobo module, which deal with UI stuff. Maybe others should go in too, but I don't know whether the component stuff is in libbonobo or libbonoboui. 2001-07-12 Martin Baulig * bonobo/bonobo-ui-engine.c: Fix signal marshaller for EMIT_EVENT_ON. * bonobo/bonobo-ui-component.c: Fix signal marshaller for UI_EVENT. 2001-07-05 Tim Mooney * bonobo/bonobo-view.c: add a placeholder member to _BonoboViewPrivate struct, since most compilers object to empty structs. 2001-07-07 Michael Meeks * bonobo/bonobo-ui-container.c (bonobo_ui_container_set_engine): port to GObject. * bonobo/bonobo-ui-main.c (bonobo_ui_init_full): always init gtk+, leave gnome_ bits as optional on full_init. * bonobo/bonobo-win.c (bonobo_window_construct): add ui container bits. (bonobo_window_new): ditto. (bonobo_window_get_ui_container): impl. (bonobo_window_set_ui_container): remove. * bonobo/bonobo-ui-engine-config.c (create_popup_engine): set view to NULL. 2001-07-06 Michael Meeks * bonobo/bonobo-ui-engine.c (bonobo_ui_engine_get_view): impl. (bonobo_ui_engine_new, bonobo_ui_engine_construct): upd, adding view. (bonobo_ui_engine_get_ui_container): impl. for symmetry. (bonobo_ui_engine_set_ui_container): upd. preconditions. * bonobo/bonobo-win.c (construct_priv): set the view. * bonobo/bonobo-ui-container.c (bonobo_ui_container_set_win), (bonobo_ui_container_get_win): remove; deprecated. upd. * bonobo/bonobo-win.c (bonobo_window_deregister_dead_components), (bonobo_window_register_component), (bonobo_window_deregister_component), (bonobo_window_deregister_component_by_ref), (bonobo_window_deregister_get_component_names), (bonobo_window_component_get), (bonobo_window_xml_node_exists), (bonobo_window_object_set), (bonobo_window_object_get), (bonobo_window_xml_merge_tree), (bonobo_window_xml_merge), (bonobo_window_xml_rm), (bonobo_window_freeze), (bonobo_window_thaw), (bonobo_window_xml_get), (bonobo_window_dump), (bonobo_window_set_ui_container): remove a few deprecated methods NB. use the equivalents on the BonoboUIEngine. * bonobo/bonobo-win.h: kill from header too. * tests/test-ui.c (main): don't call bonobo_ui_init - it get's libgnome to do seriously whacked out things. 2001-07-06 Christian Rose * configure.in: Added sv to ALL_LINGUAS. 2001-07-02 Carlos Perelló Marín * bonobo/bonobo-canvas-component.c, bonobo/bonobo-control.c, bonobo/bonobo-control-frame.c, bonobo/bonobo-embeddable.c, bonobo/bonobo-ui-component.c, bonobo/bonobo-view.c: /s/g_signal_newc/g_signal_new/ to sync with the latest glib. 2001-06-29 Anders Carlsson * bonobo/bonobo-ui-component.c (impl_get_prop): Use CORBA_free since bonobo_ui_component_get returns a CORBA_char. Sat Jun 30 16:11:37 2001 Jonathan Blandford * bonobo/bonobo-embeddable.c (make_canvas_component): change g_signal_connect_data arguments to match new signature (impl_Bonobo_Embeddable_createView): ditto * bonobo/bonobo-ui-engine.c (bonobo_ui_engine_set_ui_container): ditto. 2001-06-28 Michael Meeks * bonobo/*.h: update for new gmacros location, requires HEAD glib. * *.c: include string.h where neccessary, update includes, misc warning fixes. 2001-06-26 Darin Adler * bonobo/bonobo-win.c: (construct_priv): Don't connect a signal handler. (bonobo_window_key_press_event): Use a default handler, and call the inherited one first. This gives the focused widget first crack at the event, and prevents us from having two things that both handle the same event. (bonobo_window_class_init): Point to the default handler. 2001-06-21 Mike Kestner * bonobo/bonobo-ui-node.c (do_strip): Move XML_TEXT_NODE to the "suspicious" branch so whitespace nodes are stripped from the tree. 2001-06-19 Héctor García Álvarez * configure.in: added "es" for Spanish to $ALL_LINGUAS 2001-06-15 Dietmar Maurer * bonobo/bonobo-view.c: added something to the empty structure to stop compiler warnings on solaris. * bonobo/bonobo-ui-sync.c (bonobo_ui_sync_state): return void (bonobo_ui_sync_state_placeholder): return void 2001-06-13 Stanislav Visnovsky * configure.in: Added "sk" for Slovak to $ALL_LINGUAS 2001-06-10 Martin Baulig * bonobo/bonobo-ui-engine-config.c: #ifdef FIXME all gnome-config calls. Sun Jun 10 01:27:57 2001 Malcolm Tredinnick * bonobo/bonobo-control.c (impl_Bonobo_Control_focus): altered a gtk_container_focus() call to be a gtk_widget_child_focus() call (matching a recent gtk+ change). 2001-06-07 Pablo Saratxaga * configure.in: Added "az", "wa" and Norwegian to $ALL_LINGUAS 2001-06-01 Joe Shaw * bonobo/bonobo-canvas-component.c: Added _bonobo_boolean_handled_accumulator(), ripped from gtk+/gtk/gtkmain.c. 2001-05-31 Joe Shaw * bonobo/bonobo-canvas-component.c: GObjectify. Change calls to GNOME_CANVAS_ITEM_CLASS() to GNOME_CANVAS_ITEM_GET_CLASS(). Make gcc_destroy() gcc_finalize(). * bonobo/bonobo-embeddable.c: GObjectify. Change bonobo_embeddable_destroy() to bonobo_embeddable_finalize() * bonobo/bonobo-view.c: GObjectify. Delete gnome_marshal_NONE__DOUBLE. 2001-05-30 Dietmar Maurer * bonobo/bonobo-control.c (bonobo_control_set_properties): pass a Bonobo_PropertyBag instead of a BonoboPropertyBag (bonobo_control_get_properties): return a Bonobo_PropertyBag 2001-05-30 Johan Dahlin * bonobo/bonobo-ui-toolbar-item.h: Removed duplicate prototypes. 2001-05-30 Christophe Merlet * configure.in: Added fr to $ALL_LINGUAS 2001-05-25 Joe Shaw * bonobo/bonobo-ui-engine-config.c (dialog_new), bonobo/bonobo-selector.c (bonobo_selector_construct): GTK_STOCK_BUTTON_OK -> GTK_STOCK_OK 2001-05-19 Martin Baulig * bonobo/bonobo-plug.[ch]: Derive from GtkPlug. * bonobo/bonobo-socket.[ch]: Derive from GtkSocket. * bonobo/bonobo-control.c (process_events): Use g_main_context_pending() and g_main_context_iteration() instead of gtk_events_pending() and gtk_main_iteration(). 2001-05-06 Martin Baulig * bonobo/bonobo-ui-toolbar-control-item.c (set_control_property_bag_value): Use the new bonobo_pbclient_set_value(). 2001-05-02 Michael Meeks * bonobo/bonobo-embeddable.c (impl_Bonobo_Embeddable_advise), (impl_Bonobo_Embeddable_unadvise): kill. (bonobo_embeddable_class_init): upd. * changes.txt: add to document changes * bonobo/Makefile.am: remove bonobo-desktop.[ch] * bonobo/bonobo-desktop.[ch]: remove. 2001-05-02 Michael Meeks * bonobo/bonobo-widget.c (bonobo_widget_launch_component), (bonobo_widget_get_objref): kill BonoboObjectClient * bonobo/bonobo-client-site.c (bonobo_client_site_bind_embeddable), (bonobo_client_site_get_embeddable): kill BonoboObjectClient. 2001-05-01 Michael Meeks * bonobo/bonobo-ui-component.c (bonobo_ui_component_set_container), (bonobo_ui_component_unset_container, impl_set_prop), (bonobo_ui_component_add_verb_list_with_data): kill theoretical re-enterancy issues. 2001-05-01 Martin Baulig * bonobo/bonobo-control.[ch]: Use GObject, not GtkObject. * bonobo/bonobo-control-frame.[ch]: Likewise. * bonobo/bonobo-ui-component.[ch]: Likewise. * bonobo/bonobo-ui-container.[ch]: Likewise. * bonobo/bonobo-ui-engine.c (impl_destroy): Removed and put all the stuff into finalize; `destroy' may be run multiple times with GTK+ 2.0, so it's easier to have this in finalize. * bonobo/bonobo-widget.c (bonobo_widget_destroy): Renamed to bonobo_widget_finalize(), we use `finalize' since `destroy' may be run multiple times. 2001-05-01 Martin Baulig * bonobo/Makefile.am: Install all our header files. 2001-05-01 Martin Baulig * libbonoboui.h: Don't #include bonobo-print.h and bonobo-print-client.h for the moment. 2001-05-01 Martin Baulig * bonobo/bonobo-win.c (construct_priv): #ifdef FIXME call to gtk_menu_bar_set_shadow_type(). 2001-05-01 Martin Baulig * bonobo/bonobo-selector-widget.c: #include instead of . * bonobo/bonobo-ui-sync-static.c: Likewise. * bonobo/bonobo-ui-sync-menu.c: #include instead of . * bonobo/bonobo-ui-sync-toolbar.c: Likewise. * bonobo/bonobo-win.c: Likewise. * bonobo/bonobo-ui-sync-menu.h: #include . 2001-05-01 Martin Baulig * bonobo/bonobo-ui-main.[ch]: New files. (bonobo_ui_init, bonobo_ui_init_full): New functions to initialize libbonoboui. (bonobo_setup_x_error_handler): Moved here from libbonobo. 2001-05-01 Martin Baulig * tests/*.c: Make the tests actually work. * Makefile.am (SUBDIRS): Added tests/. 2001-05-01 Martin Baulig * bonobo/libbonoboui-2.0.pc.in: Make this actually work. 2001-04-25 Martin Baulig * bonobo/bonobo-dock.[ch], bonobo/bonobo-dock-item.[ch], bonobo/bonobo-dock-band.[ch], bonobo/bonobo-dock-layout.[ch]: Moved here from libgnomeui/libgnomeui/gnome-dock*.[ch] and renamed from GnomeDock -> BonoboDock. * bonobo/bonobo-ui-sync-toolbar.[ch], bonobo/bonobo-win.c: s/GnomeDock/BonoboDock/g; s/gnome_dock/bonobo_dock/g;. 2001-04-24 Martin Baulig * bonobo/bonobo-ui-sync-menu.c (impl_bonobo_ui_sync_menu_state): Use GtkImageMenuItem instead of GtkPixmapMenuItem. (impl_bonobo_ui_sync_menu_state): Comment out accelerator stuff. * bonobo/bonobo-ui-sync-toolbar.c (cmd_get_toolbar_pixbuf): Renamed to cmd_get_toolbar_image() and let it return a GtkWidget. * bonobo/bonobo-ui-toolbar-button-item.c (create_pixmap_widget_from_pixbuf): Removed. (set_icon): Renamed to set_image() and let it return a GtkWidget. * bonobo/bonobo-ui-toolbar-button-item.h (bonobo_ui_toolbar_button_item_set_icon): Renamed to bonobo_ui_toolbar_button_set_image() and changed argument from GdkPixbuf to GtkWidget. (BonoboUIToolbarButtonItemClass): Changed argument of `set_icon' from GdkPixbuf to GtkWidget. * bonobo/bonobo-ui-util.c (get_stock_pixbuf): Removed. (bonobo_ui_util_xml_get_icon_pixbuf): Removed. (bonobo_ui_util_xml_get_icon_pixmap_widget): Move functionality from bonobo_ui_util_xml_get_icon_pixbuf() and use the GtkStock system. 2001-04-24 Martin Baulig * configure.in: Depend on libgnome. * bonobo/Makefile.am (INCLUDES): Added BONOBO_UIDIR. * bonobo/bonobo-ui-util.c (convert_from_chromakey, pixbuf_from_imlib): Removed. (get_stock_pixbuf): Use find_pixmap_in_path() instead of gnome_pixmap_file(). (find_pixmap_in_path): Use gnome_program_locate_file() to locate the pixmap file instead of our own parser. (bonobo_ui_util_xml_get_icon_pixmap_widget): Create and return a GtkImage instead of a GnomePixmap. (bonobo_ui_util_build_help_menu): `#ifdef FIXME' this. 2001-04-24 Martin Baulig * bonobo/bonobo-insert-component.xpm: constify this. * bonobo/bonobo-selector-widget.c (bonobo_selector_widget_init): use GdkPixbuf/GtkImage instead of GnomePixmap. 2001-04-24 Martin Baulig * bonobo/bonobo-selector.[ch]: Use GtkDialog, not GnomeDialog. * bonobo/bonobo-ui-engine-config.c (dialog_new): Use GtkDialog, not GnomeDialog. 2001-04-24 Martin Baulig * bonobo/bonobo-zoomable.h (BonoboZoomableClass): Added `POA_Bonobo_Zoomable__epv epv'. (bonobo_zoomable_get_epv): Removed. (bonobo_zoomable_corba_object_create): Removed. (bonobo_zoomable_construct): Removed. * bonobo/bonobo-zoomable-frame.h (BonoboZoomableFrameClass): Added `POA_Bonobo_ZoomableFrame__epv epv'. (bonobo_zoomable_frame_get_epv): Removed. (bonobo_zoomable_frame_corba_object_create): Removed. (bonobo_zoomable_frame_construct): Removed. * bonobo/bonobo-zoomable.c, bonobo/bonobo-zoomable-frame.c: Use the new BonoboObject API (the code which was formerly known as BonoboXObject). 2001-04-24 Martin Baulig * bonobo/*.c: Did the basic GTK+ 2.0 porting work, but without any real code changes. 2001-04-24 Martin Baulig * bonobo/Makefile.am (INCLUDES, libbonoboui_la_LIBADD): Use the correct CFLAGS and LIBS to make this actually work. (libbonoboui_la_SOURCES): Removed bonobo-item-container.c and bonobo-property-bag-xml.c. * bonobo/bonobo-insert-component.xpm: Moved this here from the staging directory. 2001-04-19 Michael Meeks * *.[ch]: s/bonobo-xobject/bonobo-object/g; s/BonoboXObject/BonoboObject/g; s/bonobo_x_object/bonobo_object/g; s/BONOBO_X_/BONOBO_/g; s///; s/BEGIN_GNOME_DECLS/G_BEGIN_DECLS/g; s/END_GNOME_DECLS/G_END_DECLS/g; 2001-04-19 Michael Meeks * bonobo/Makefile.am: add. * bonobo/libbonoboui-2.0.pc.in: add. 2001-04-18 Michael Meeks * tests/Makefile.am: upd. 2001-04-18 Michael Meeks * bonobo.h: add. * libbonoboui.h: add libbonoboui-2.24.5/samples/0000775000076400007640000000000011546335131012570 500000000000000libbonoboui-2.24.5/samples/Makefile.am0000644000076400007640000000007411173072741014544 00000000000000SUBDIRS = bonoboui controls container compound-doc canvdemo libbonoboui-2.24.5/samples/bonoboui/0000775000076400007640000000000011546335131014404 500000000000000libbonoboui-2.24.5/samples/bonoboui/Makefile.am0000644000076400007640000000076711173072741016371 00000000000000noinst_PROGRAMS = bonobo-hello INCLUDES = \ -DGNOMELOCALEDIR=\""$(datadir)/locale"\" \ -I$(top_srcdir) \ -DBONOBO_UIDIR=\""$(datadir)/gnome/ui/"\" \ -DG_LOG_DOMAIN=\"Bonobo\" \ -DVERSION=\"$(VERSION)\" \ $(WARN_CFLAGS) \ $(BONOBOUI_CFLAGS) \ -DHELLO_SRCDIR=\""$(srcdir)"/\" LDADD = $(top_builddir)/bonobo/libbonoboui-2.la $(BONOBOUI_LIBS) bonobo_hello_SOURCES = \ hello.c uidir = $(datadir)/gnome-2.0/ui ui_DATA = Bonobo_Sample_Hello.xml EXTRA_DIST=$(ui_DATA) libbonoboui-2.24.5/samples/bonoboui/Bonobo_Sample_Hello.xml0000644000076400007640000000370011173072741020707 00000000000000 libbonoboui-2.24.5/samples/bonoboui/hello.c0000644000076400007640000002046011173072741015574 00000000000000/* * hello.c * * A hello world application using the Bonobo UI handler * * Authors: * Michael Meeks * Murray Cumming * Havoc Pennington * * Copyright (C) 1999 Red Hat, Inc. * 2001 Murray Cumming, * 2001 Ximian, Inc. * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License as * published by the Free Software Foundation; either version 2 of the * License, or (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 * USA */ #undef GTK_DISABLE_DEPRECATED #include #include #include #include /* Keep a list of all open application windows */ static GSList *app_list = NULL; #define HELLO_UI_XML "Bonobo_Sample_Hello.xml" /* A single forward prototype - try and keep these * to a minumum by ordering your code nicely */ static GtkWidget *hello_new (void); static void hello_on_menu_file_new (BonoboUIComponent *uic, gpointer user_data, const gchar *verbname) { gtk_widget_show_all (hello_new ()); } static void show_nothing_dialog(GtkWidget* parent) { GtkWidget* dialog; dialog = gtk_message_dialog_new ( GTK_WINDOW (parent), GTK_DIALOG_MODAL | GTK_DIALOG_DESTROY_WITH_PARENT, GTK_MESSAGE_INFO, GTK_BUTTONS_OK, _("This does nothing; it is only a demonstration.")); gtk_dialog_run (GTK_DIALOG (dialog)); gtk_widget_destroy (GTK_WIDGET (dialog)); } static void hello_on_menu_file_open (BonoboUIComponent *uic, gpointer user_data, const gchar *verbname) { show_nothing_dialog (GTK_WIDGET (user_data)); } static void hello_on_menu_file_save (BonoboUIComponent *uic, gpointer user_data, const gchar *verbname) { show_nothing_dialog (GTK_WIDGET (user_data)); } static void hello_on_menu_file_saveas (BonoboUIComponent *uic, gpointer user_data, const gchar *verbname) { show_nothing_dialog (GTK_WIDGET (user_data)); } static void hello_on_menu_file_exit (BonoboUIComponent *uic, gpointer user_data, const gchar *verbname) { /* FIXME: quit the mainloop nicely */ exit (0); } static void hello_on_menu_file_close (BonoboUIComponent *uic, gpointer user_data, const gchar *verbname) { GtkWidget *app = user_data; /* Remove instance: */ app_list = g_slist_remove (app_list, app); gtk_widget_destroy (app); if (!app_list) hello_on_menu_file_exit(uic, user_data, verbname); } static void hello_on_menu_edit_undo (BonoboUIComponent *uic, gpointer user_data, const gchar *verbname) { show_nothing_dialog (GTK_WIDGET (user_data)); } static void hello_on_menu_edit_redo (BonoboUIComponent *uic, gpointer user_data, const gchar *verbname) { show_nothing_dialog (GTK_WIDGET (user_data)); } static void hello_on_menu_help_about (BonoboUIComponent *uic, gpointer user_data, const gchar *verbname) { GtkWidget *dialog; dialog = gtk_message_dialog_new ( GTK_WINDOW (user_data), GTK_DIALOG_MODAL | GTK_DIALOG_DESTROY_WITH_PARENT, GTK_MESSAGE_INFO, GTK_BUTTONS_OK, _("BonoboUI-Hello.")); gtk_dialog_run (GTK_DIALOG (dialog)); gtk_widget_destroy (GTK_WIDGET (dialog)); } static gchar * utf8_reverse (const char *string) { int len; gchar *result; const gchar *p; gchar *m, *r, skip; len = strlen (string); result = g_new (gchar, len + 1); r = result + len; p = string; while (*p) { skip = g_utf8_skip[*(guchar*)p]; r -= skip; for (m = r; skip; skip--) *m++ = *p++; } result[len] = 0; return result; } static void hello_on_button_click (GtkWidget* w, gpointer user_data) { gchar *text; GtkLabel *label = GTK_LABEL (user_data); text = utf8_reverse (gtk_label_get_text (label)); gtk_label_set_text (label, text); g_free (text); } /* * These verb names are standard, see libonobobui/doc/std-ui.xml * to find a list of standard verb names. * The menu items are specified in Bonobo_Sample_Hello.xml and * given names which map to these verbs here. */ static const BonoboUIVerb hello_verbs [] = { BONOBO_UI_VERB ("FileNew", hello_on_menu_file_new), BONOBO_UI_VERB ("FileOpen", hello_on_menu_file_open), BONOBO_UI_VERB ("FileSave", hello_on_menu_file_save), BONOBO_UI_VERB ("FileSaveAs", hello_on_menu_file_saveas), BONOBO_UI_VERB ("FileClose", hello_on_menu_file_close), BONOBO_UI_VERB ("FileExit", hello_on_menu_file_exit), BONOBO_UI_VERB ("EditUndo", hello_on_menu_edit_undo), BONOBO_UI_VERB ("EditRedo", hello_on_menu_edit_redo), BONOBO_UI_VERB ("HelpAbout", hello_on_menu_help_about), BONOBO_UI_VERB_END }; static BonoboWindow * hello_create_main_window (void) { BonoboWindow *win; BonoboUIContainer *ui_container; BonoboUIComponent *ui_component; win = BONOBO_WINDOW (bonobo_window_new (GETTEXT_PACKAGE, _("Gnome Hello"))); /* Create Container: */ ui_container = bonobo_window_get_ui_container (win); /* This determines where the UI configuration info. will be stored */ bonobo_ui_engine_config_set_path (bonobo_window_get_ui_engine (win), "/hello-app/UIConfig/kvps"); /* Create a UI component with which to communicate with the window */ ui_component = bonobo_ui_component_new_default (); /* Associate the BonoboUIComponent with the container */ bonobo_ui_component_set_container ( ui_component, BONOBO_OBJREF (ui_container), NULL); /* NB. this creates a relative file name from the current dir, * in production you want to pass the application's datadir * see Makefile.am to see how HELLO_SRCDIR gets set. */ bonobo_ui_util_set_ui (ui_component, "", /* data dir */ HELLO_SRCDIR HELLO_UI_XML, "bonobo-hello", NULL); /* Associate our verb -> callback mapping with the BonoboWindow */ /* All the callback's user_data pointers will be set to 'win' */ bonobo_ui_component_add_verb_list_with_data (ui_component, hello_verbs, win); return win; } static gint delete_event_cb (GtkWidget *window, GdkEventAny *e, gpointer user_data) { hello_on_menu_file_close (NULL, window, NULL); /* Prevent the window's destruction, since we destroyed it * ourselves with hello_app_close() */ return TRUE; } static GtkWidget * hello_new (void) { GtkWidget *label; GtkWidget *frame; GtkWidget *button; BonoboWindow *win; win = hello_create_main_window(); /* Create Button: */ button = gtk_button_new (); gtk_container_set_border_width (GTK_CONTAINER (button), 10); /* Create Label and put it in the Button: */ label = gtk_label_new (_("Hello, World!")); gtk_container_add (GTK_CONTAINER (button), label); /* Connect the Button's 'clicked' signal to the signal handler: * pass label as the data, so that the signal handler can use it. */ g_signal_connect ( GTK_OBJECT (button), "clicked", G_CALLBACK(hello_on_button_click), label); gtk_window_set_resizable (GTK_WINDOW (win), TRUE); gtk_window_set_default_size (GTK_WINDOW (win), 250, 350); /* Create Frame and add it to the main BonoboWindow: */ frame = gtk_frame_new (NULL); gtk_frame_set_shadow_type (GTK_FRAME (frame), GTK_SHADOW_IN); gtk_container_add (GTK_CONTAINER (frame), button); bonobo_window_set_contents (win, frame); /* Connect to the delete_event: a close from the window manager */ g_signal_connect (GTK_OBJECT (win), "delete_event", G_CALLBACK (delete_event_cb), NULL); /* Append ourself to the list of windows */ app_list = g_slist_prepend (app_list, win); return GTK_WIDGET(win); } int main (int argc, char* argv[]) { GtkWidget *app; /* Setup translaton domain */ bindtextdomain (GETTEXT_PACKAGE, GNOMELOCALEDIR); textdomain (GETTEXT_PACKAGE); if (!bonobo_ui_init ("bonobo-hello", VERSION, &argc, argv)) g_error (_("Cannot init libbonoboui code")); app = hello_new (); gtk_widget_show_all (GTK_WIDGET (app)); bonobo_main (); return 0; } libbonoboui-2.24.5/samples/bonoboui/Makefile.in0000664000076400007640000004262211546334701016401 00000000000000# Makefile.in generated by automake 1.11.1 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, # Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY, to the extent permitted by law; without # even the implied warranty of MERCHANTABILITY or FITNESS FOR A # PARTICULAR PURPOSE. @SET_MAKE@ VPATH = @srcdir@ pkgdatadir = $(datadir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ pkglibdir = $(libdir)/@PACKAGE@ pkglibexecdir = $(libexecdir)/@PACKAGE@ am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd install_sh_DATA = $(install_sh) -c -m 644 install_sh_PROGRAM = $(install_sh) -c install_sh_SCRIPT = $(install_sh) -c INSTALL_HEADER = $(INSTALL_DATA) transform = $(program_transform_name) NORMAL_INSTALL = : PRE_INSTALL = : POST_INSTALL = : NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : build_triplet = @build@ host_triplet = @host@ noinst_PROGRAMS = bonobo-hello$(EXEEXT) subdir = samples/bonoboui DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/configure.in am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs CONFIG_HEADER = $(top_builddir)/config.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = PROGRAMS = $(noinst_PROGRAMS) am_bonobo_hello_OBJECTS = hello.$(OBJEXT) bonobo_hello_OBJECTS = $(am_bonobo_hello_OBJECTS) bonobo_hello_LDADD = $(LDADD) am__DEPENDENCIES_1 = bonobo_hello_DEPENDENCIES = $(top_builddir)/bonobo/libbonoboui-2.la \ $(am__DEPENDENCIES_1) DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir) depcomp = $(SHELL) $(top_srcdir)/depcomp am__depfiles_maybe = depfiles am__mv = mv -f COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) LTCOMPILE = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \ --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) CCLD = $(CC) LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \ --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \ $(LDFLAGS) -o $@ SOURCES = $(bonobo_hello_SOURCES) DIST_SOURCES = $(bonobo_hello_SOURCES) am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; am__vpath_adj = case $$p in \ $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \ *) f=$$p;; \ esac; am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`; am__install_max = 40 am__nobase_strip_setup = \ srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'` am__nobase_strip = \ for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||" am__nobase_list = $(am__nobase_strip_setup); \ for p in $$list; do echo "$$p $$p"; done | \ sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \ $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \ if (++n[$$2] == $(am__install_max)) \ { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \ END { for (dir in files) print dir, files[dir] }' am__base_list = \ sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \ sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g' am__installdirs = "$(DESTDIR)$(uidir)" DATA = $(ui_DATA) ETAGS = etags CTAGS = ctags DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ACLOCAL_AMFLAGS = @ACLOCAL_AMFLAGS@ ALL_LINGUAS = @ALL_LINGUAS@ AMTAR = @AMTAR@ AR = @AR@ AS = @AS@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ AWK = @AWK@ BONOBOUI_CFLAGS = @BONOBOUI_CFLAGS@ BONOBOUI_GLADE_CFLAGS = @BONOBOUI_GLADE_CFLAGS@ BONOBOUI_GLADE_LIBS = @BONOBOUI_GLADE_LIBS@ BONOBOUI_LIBS = @BONOBOUI_LIBS@ BONOBOUI_SINGLE_INCLUDES = @BONOBOUI_SINGLE_INCLUDES@ CATALOGS = @CATALOGS@ CATOBJEXT = @CATOBJEXT@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ CYGPATH_W = @CYGPATH_W@ DATADIRNAME = @DATADIRNAME@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DUMPBIN = @DUMPBIN@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_MKENUMS = @GLIB_MKENUMS@ GMOFILES = @GMOFILES@ GMSGFMT = @GMSGFMT@ GREP = @GREP@ GTKDOC_CHECK = @GTKDOC_CHECK@ GTKDOC_MKPDF = @GTKDOC_MKPDF@ GTKDOC_REBASE = @GTKDOC_REBASE@ HTML_DIR = @HTML_DIR@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INSTOBJEXT = @INSTOBJEXT@ INTLLIBS = @INTLLIBS@ INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@ INTLTOOL_MERGE = @INTLTOOL_MERGE@ INTLTOOL_PERL = @INTLTOOL_PERL@ INTLTOOL_UPDATE = @INTLTOOL_UPDATE@ LD = @LD@ LDFLAGS = @LDFLAGS@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIPO = @LIPO@ LN_S = @LN_S@ LTLIBOBJS = @LTLIBOBJS@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MKDIR_P = @MKDIR_P@ MKINSTALLDIRS = @MKINSTALLDIRS@ MSGFMT = @MSGFMT@ MSGFMT_OPTS = @MSGFMT_OPTS@ MSGMERGE = @MSGMERGE@ NM = @NM@ NMEDIT = @NMEDIT@ OBJDUMP = @OBJDUMP@ OBJEXT = @OBJEXT@ OTOOL = @OTOOL@ OTOOL64 = @OTOOL64@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_URL = @PACKAGE_URL@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ PATH_TO_XRDB = @PATH_TO_XRDB@ PKG_CONFIG = @PKG_CONFIG@ POFILES = @POFILES@ POPT_LIBS = @POPT_LIBS@ POSUB = @POSUB@ PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@ PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@ RANLIB = @RANLIB@ SED = @SED@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ STRIP = @STRIP@ USE_NLS = @USE_NLS@ VERSION = @VERSION@ WARN_CFLAGS = @WARN_CFLAGS@ XGETTEXT = @XGETTEXT@ XMKMF = @XMKMF@ X_CFLAGS = @X_CFLAGS@ X_EXTRA_LIBS = @X_EXTRA_LIBS@ X_LIBS = @X_LIBS@ X_PRE_LIBS = @X_PRE_LIBS@ YACC = @YACC@ YFLAGS = @YFLAGS@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ abs_top_srcdir = @abs_top_srcdir@ ac_ct_CC = @ac_ct_CC@ ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ am__include = @am__include@ am__leading_dot = @am__leading_dot@ am__quote = @am__quote@ am__tar = @am__tar@ am__untar = @am__untar@ bindir = @bindir@ build = @build@ build_alias = @build_alias@ build_cpu = @build_cpu@ build_os = @build_os@ build_vendor = @build_vendor@ builddir = @builddir@ datadir = @datadir@ datarootdir = @datarootdir@ docdir = @docdir@ dvidir = @dvidir@ exec_prefix = @exec_prefix@ host = @host@ host_alias = @host_alias@ host_cpu = @host_cpu@ host_os = @host_os@ host_vendor = @host_vendor@ htmldir = @htmldir@ includedir = @includedir@ infodir = @infodir@ install_sh = @install_sh@ libdir = @libdir@ libexecdir = @libexecdir@ localedir = @localedir@ localstatedir = @localstatedir@ lt_ECHO = @lt_ECHO@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ sysconfdir = @sysconfdir@ target_alias = @target_alias@ top_build_prefix = @top_build_prefix@ top_builddir = @top_builddir@ top_srcdir = @top_srcdir@ INCLUDES = \ -DGNOMELOCALEDIR=\""$(datadir)/locale"\" \ -I$(top_srcdir) \ -DBONOBO_UIDIR=\""$(datadir)/gnome/ui/"\" \ -DG_LOG_DOMAIN=\"Bonobo\" \ -DVERSION=\"$(VERSION)\" \ $(WARN_CFLAGS) \ $(BONOBOUI_CFLAGS) \ -DHELLO_SRCDIR=\""$(srcdir)"/\" LDADD = $(top_builddir)/bonobo/libbonoboui-2.la $(BONOBOUI_LIBS) bonobo_hello_SOURCES = \ hello.c uidir = $(datadir)/gnome-2.0/ui ui_DATA = Bonobo_Sample_Hello.xml EXTRA_DIST = $(ui_DATA) all: all-am .SUFFIXES: .SUFFIXES: .c .lo .o .obj $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps) @for dep in $?; do \ case '$(am__configure_deps)' in \ *$$dep*) \ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ && { if test -f $@; then exit 0; else break; fi; }; \ exit 1;; \ esac; \ done; \ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign samples/bonoboui/Makefile'; \ $(am__cd) $(top_srcdir) && \ $(AUTOMAKE) --foreign samples/bonoboui/Makefile .PRECIOUS: Makefile Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status @case '$?' in \ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(am__aclocal_m4_deps): clean-noinstPROGRAMS: @list='$(noinst_PROGRAMS)'; test -n "$$list" || exit 0; \ echo " rm -f" $$list; \ rm -f $$list || exit $$?; \ test -n "$(EXEEXT)" || exit 0; \ list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \ echo " rm -f" $$list; \ rm -f $$list bonobo-hello$(EXEEXT): $(bonobo_hello_OBJECTS) $(bonobo_hello_DEPENDENCIES) @rm -f bonobo-hello$(EXEEXT) $(LINK) $(bonobo_hello_OBJECTS) $(bonobo_hello_LDADD) $(LIBS) mostlyclean-compile: -rm -f *.$(OBJEXT) distclean-compile: -rm -f *.tab.c @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/hello.Po@am__quote@ .c.o: @am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< @am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(COMPILE) -c $< .c.obj: @am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'` @am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(COMPILE) -c `$(CYGPATH_W) '$<'` .c.lo: @am__fastdepCC_TRUE@ $(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< @am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(LTCOMPILE) -c -o $@ $< mostlyclean-libtool: -rm -f *.lo clean-libtool: -rm -rf .libs _libs install-uiDATA: $(ui_DATA) @$(NORMAL_INSTALL) test -z "$(uidir)" || $(MKDIR_P) "$(DESTDIR)$(uidir)" @list='$(ui_DATA)'; test -n "$(uidir)" || list=; \ for p in $$list; do \ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ echo "$$d$$p"; \ done | $(am__base_list) | \ while read files; do \ echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(uidir)'"; \ $(INSTALL_DATA) $$files "$(DESTDIR)$(uidir)" || exit $$?; \ done uninstall-uiDATA: @$(NORMAL_UNINSTALL) @list='$(ui_DATA)'; test -n "$(uidir)" || list=; \ files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ test -n "$$files" || exit 0; \ echo " ( cd '$(DESTDIR)$(uidir)' && rm -f" $$files ")"; \ cd "$(DESTDIR)$(uidir)" && rm -f $$files ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ END { if (nonempty) { for (i in files) print i; }; }'`; \ mkid -fID $$unique tags: TAGS TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) set x; \ here=`pwd`; \ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ END { if (nonempty) { for (i in files) print i; }; }'`; \ shift; \ if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ test -n "$$unique" || unique=$$empty_fix; \ if test $$# -gt 0; then \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ "$$@" $$unique; \ else \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ $$unique; \ fi; \ fi ctags: CTAGS CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ END { if (nonempty) { for (i in files) print i; }; }'`; \ test -z "$(CTAGS_ARGS)$$unique" \ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ $$unique GTAGS: here=`$(am__cd) $(top_builddir) && pwd` \ && $(am__cd) $(top_srcdir) \ && gtags -i $(GTAGS_ARGS) "$$here" distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ dist_files=`for file in $$list; do echo $$file; done | \ sed -e "s|^$$srcdirstrip/||;t" \ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ case $$dist_files in \ */*) $(MKDIR_P) `echo "$$dist_files" | \ sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ sort -u` ;; \ esac; \ for file in $$dist_files; do \ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ if test -d $$d/$$file; then \ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ if test -d "$(distdir)/$$file"; then \ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ else \ test -f "$(distdir)/$$file" \ || cp -p $$d/$$file "$(distdir)/$$file" \ || exit 1; \ fi; \ done check-am: all-am check: check-am all-am: Makefile $(PROGRAMS) $(DATA) installdirs: for dir in "$(DESTDIR)$(uidir)"; do \ test -z "$$dir" || $(MKDIR_P) "$$dir"; \ done install: install-am install-exec: install-exec-am install-data: install-data-am uninstall: uninstall-am install-am: all-am @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am installcheck: installcheck-am install-strip: $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ `test -z '$(STRIP)' || \ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install mostlyclean-generic: clean-generic: distclean-generic: -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) maintainer-clean-generic: @echo "This command is intended for maintainers to use" @echo "it deletes files that may require special tools to rebuild." clean: clean-am clean-am: clean-generic clean-libtool clean-noinstPROGRAMS \ mostlyclean-am distclean: distclean-am -rm -rf ./$(DEPDIR) -rm -f Makefile distclean-am: clean-am distclean-compile distclean-generic \ distclean-tags dvi: dvi-am dvi-am: html: html-am html-am: info: info-am info-am: install-data-am: install-uiDATA install-dvi: install-dvi-am install-dvi-am: install-exec-am: install-html: install-html-am install-html-am: install-info: install-info-am install-info-am: install-man: install-pdf: install-pdf-am install-pdf-am: install-ps: install-ps-am install-ps-am: installcheck-am: maintainer-clean: maintainer-clean-am -rm -rf ./$(DEPDIR) -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic mostlyclean: mostlyclean-am mostlyclean-am: mostlyclean-compile mostlyclean-generic \ mostlyclean-libtool pdf: pdf-am pdf-am: ps: ps-am ps-am: uninstall-am: uninstall-uiDATA .MAKE: install-am install-strip .PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \ clean-libtool clean-noinstPROGRAMS ctags distclean \ distclean-compile distclean-generic distclean-libtool \ distclean-tags distdir dvi dvi-am html html-am info info-am \ install install-am install-data install-data-am install-dvi \ install-dvi-am install-exec install-exec-am install-html \ install-html-am install-info install-info-am install-man \ install-pdf install-pdf-am install-ps install-ps-am \ install-strip install-uiDATA installcheck installcheck-am \ installdirs maintainer-clean maintainer-clean-generic \ mostlyclean mostlyclean-compile mostlyclean-generic \ mostlyclean-libtool pdf pdf-am ps ps-am tags uninstall \ uninstall-am uninstall-uiDATA # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. .NOEXPORT: libbonoboui-2.24.5/samples/canvdemo/0000775000076400007640000000000011546335131014364 500000000000000libbonoboui-2.24.5/samples/canvdemo/flow.png0000644000076400007640000004116611173072741015770 00000000000000PNG  IHDRd~STsBITO IDATx{u}?&!$B$ !` n% /ت*xTV=j=G[ZzE 'n6( `BWAruwgvfwv;_{^;-U*!\<=` *:/ӳ}n|{LcϾe?227N]NM[6972|[jOu!l٤[ىwFƵu>;QwWV]ؑ./iUd,Fs1{w*N>=Z!@ḚS1,MeN$!*Z8HZeQP$4ШE01D1ͪ-bW6 aE *291:*0|SGgŸ<%8WMoeۯ@MW2tQk8jol|@}Ĭ"Z Tb3K?y^~S.t\}_BW@ .puZɓ'k+ih" @YL{OoY Ra1 ͕^ɷ&_bۋJGm޹^?]}0*Ή{k'[1F74~Vfe_-j6햶̨چmfFܴ0^ο{0mذg ])9IJ}h"ZfvIM{Rn;L;ʙ1^x-[xm,gj~PGXEvbF7k?~cMoiHr73kѲ8B&ճ%ɟ֐Pf-&d!G]ϬOiGhx-O2f'GIVQ*j3x-Z> ]#Nh1v1b%:Nf2Ū{״Nau<4QyuݯNLkPğOr+lZ@cZnfci2fIpbHrG5\!m9$YEc+ѻ!ךf3L;wk]nτ#ǧ]hs?ZnfP_.bԹ{6l0wЅh!,6SQ>#]CK1#=̄bVx-7W3vڡR<{Yti*Y;dÙ~fgΖ{dn&xOSqbUdCYӽ΢ٌ{ 7|d\Gt-uf'(86 5@pl& aO2(aW H@̈́tDX#,@$aȏ"@D,GX(aH"Eu@~ַ+ bH"E" @~~> ޹s/8@L4OLm۶/% ŵk~ᝏȺu9䐴K۷oF=tIf8f̘'f5г6oGn}Cʶ-8}իWg5гMOH"E" @~o|[ ])dv @K?qvĻ6K.$t #,w}C@:Y @$aH`)JK`r-wyg*HAXB*JErCW@ `T*Qw1y UKT/ @ @~* P,}bhQm\evؖ˦ڢӲg2F<&yL IJ8~J5r \Ei9Iš;KVu Qh9T1oQ]h |7> {㟜N^$UEE;C*fӎ\[sq٨cnc%1~}7[:GXlzܪ{LԑP!f2JsktL&Yo*J-ʿ4޶CXoș @exXj2Ӵ= 2]߽Əyn[@>;,.L^UAۛs':0Y(<;<=.TT%tm`{G@3ٽگw5rѲ$ɷ7m^_ !byǼц4L6.[CQ0y%fS; rb9x1ijQ#<-_ jB/_ŌܲTm4}Bz{N'),N~QǞƃV{,D̲MWTUk{[dt*_U'&y:(aU '9=rW#V/JonQoV=0ʝJcH-ʧC'kC:~:{WlEK"@nh ?44@D,GX(>nh̝;w])@~̙1 @$aHMCW*?Y, 0P2 =h@_zgwu)S.2cƌm:nZ*veЅ@k_Ù@dOiӦ)|#~ЁP,>:SJe A"B@:RNv)~%,vjΝ:@r:n>&,vJgcRNEHK/]pa*HAihHgٸqc*HGtJgK'N R;%,BrSN ]H92 1aS:@r:>&tAr]wN䮻UV_ m۶JرcΝ[n|u(ǎ+(Vs2,>c~ǎՀAB۷o_xeJm۶{lZ(s0B/_z:hѢ׿GqDBr|}C"i) +* +x;B{UPH"@ +V7nٳC@^yEL6(`g͟?~wӉŋs1|pB($Eb Yܺu… W\dthi"@,^GuԴiӂN_o?sCB!p„Eꪫ<=#t!P, n;/U9AN(aqgq^{У>nݺN;-t!"@>/qK$ťP8y׬Yz38#ҹ_}ա \P8yw/)Ǖޱ|vW!Œkgښ+3z=e>ս(-Jt44@]v%W%O<Sg1T,mFZ̻qiG-?E]4v· 'mXz['|2w 7kkHlZV_?[d(Jeƌ?9昄@'|rIZʣ+* b3s˦=n_?[d(˗/}%E}o])tJ2<<|UWu{EYiruk+Kק|>`WB7lٲ:еat}ZkFFF=XIYw_yE?ZAngzի᷿wy.aQky BbX\~O?R醋/n ])t1,.X`ܹ>&y䑧zSO ]'شiS*H̟?7>+o~'O])ts?zAR9îڣ>:t-@`ݚ?~_G/;sOI4t+.\؍6uQ[n۲eˏ_ zBWW^fWPzԩSCWA+7կ]IuFgy%\2wЅTwVRs9[n۶-t3O~[V*t GXرcw ('I1cܹ3tP :",f@g2 P8bt~%,f@gY(a1:@3 ,EHHX(a1:@30vXEHBgp 3FgKbt!!E3 #,f.@3s !E3 _մiBW@ Bt!K  ,JX̀"Я ,JX̀"$v͛7 ,BB~WZ R3 M>}ҤI RRjksj4[hQ*dY=t cH"E"eKRfg |g ]) zgGPF w~߄%,V*ۣS$K R{eP"mYmT5-{|Qki>9fRwW|1C@:aq4զ{)J9/I=5#tS]oLu&ȇP,Gu漦vѰe bhG8 #,Й>:\_鵤m4Gz"@Cgq{j..$k\FG9F;sJ7hƍ'M4>׽{]v eЩ3ftMvXsu]$:{Rikꎈ1J>VM7n8qbm+)?i[k=xRIX i4VN>=ʨd)Vo1t #,C.Y>䓵rÆ /ĉc0~^Mb%0JX\￿9+[&)SEZk;V&˧zEmЬ-X d)U|饗jb 8S<ЅHRi=s=ۈ(9+Ge]Obeo Ruice 5&LHCben8 t ,?Fc塇$zo5VEɨϭ-v-կ] 6be]|kceUclX @XY,cbed9eʔLXlt+yxs+wuצQRl[TPZ@@X+Ge5Vn_W? ߍ꘣1ƥy׮T*Pu=ňٺP{J*Խ}9Ҿd лr2Xկ~]zWkcG- XL&o֗{l4 FX~*Vnڴs+Gc冚?~|Ll#V&sϻoTȦ .BƒMFU[E5FmQݍI-(f՝Wx<;UOf3kYaU5^붮~a*՛Fo0XJ{{CCCM?`X9Ν;y'xu?4j.NLL˧-ʶ{T6~ꎦM+ޢQU^TsOKu rhiU찪=t2r[(~*DiӦ|dXY3g(cuU-t;ƏOHuc\v(b.۞A-f-e$L_N^sJRh*mmT2HodO63jjܢJ"rǎ[,|J]@Α#~hvt2Tִ_RӄgLfIB{G}ÿ\om\tiz:uѡ.X ;/_]-G5Vbۮ(>=Ԑ|1m [kc\MgekϥdMGNxcηZmQ'UڲzwPlQG yUCzcݫ3TFn9ZK-O_ T{"G7I9IUǘڟ&k+1dEiZh}@-'~mQȝWiG}N]BˑԽMl)mUCѯBG$ܥ[Wu}uwE]Ii:Hgm6Ʋ1ti>I~Mu{ӡJ*)UM;r'Wq:ٮN7 xK @~5-ꈘ@M;^s J;ٕ±EYd4MO@/XدE W9t{ݖ_% U/ԐD!t54ޟ@$aȏ"@D4,52aȏih$,g>뮻|(7OӡK E",s9KvmxG=Ѕ=44_W;w ]W_ w @~fϞe˖U'o>nSH"Yfm@۷?!,E ?կ|kTٱcs"_,E ?f*JO@ fT57;cߢњ?rV4VN^$UuĿ-mO;r*~{c_E '/uݯǪnc,,e0b/ȵ +L(&E7~%<׮Ѿ`&sK3# ]E2ϝ:`(^v(aTZIm`{-ے:3ٽگߢ|稵48f{t"=5=Oϊl\3\`NܢbG*^c ?MIlu31BU z!◍ٯbFnYU\>!Mw]=zLԱ޲$&l̥ HQEIL'BUuro繫sxVE@Q_-zTzsz9gƍ7w>Nz`Yi%tSk:ڭ!E ';vxG;菽?ޡd˗/]@NƎ;sU@$aH"E '6mUdӦM_WCW@:"E 'JŗIDX("_'.%\Z$,9CYguϝ;7t!@2 @$aȉsHXr",@$aȉ"@ D,DX("aH"E"$,9Y("aȉPD")S| ]@N{oaT*%NX @$aH"[^:t#,9YvyBW@:"~ᡫ a/^ T*\sM*su]/rBre ]F'dɒۿ=BBj/ҝwN<9t-P: Ї>Rw;ydIRYHi֬Y3eʔеI'wwo{BE 'W>CWѩE|ɒb];wnB`E 'c=N͟?=yO*hW\q. 1 W^yꩧf̘=ox~LJfΜ97 Yr뮻:) bs=RIR6I .]Hdʕ۶m;CBj۶m[`($EDRRf͚u衇. IXrv*ڴm۶gIA;֭{<̄ƘZǴ\ţ3lڗqآ1%E '+ _u3cbqT}*ҦeM;B1VZԂc]OӒFOylcYbŘ1c; LC)bg1ۯkam/;V6ji}⣯L,9)4}ݷcǎ.=u<_k֭ .4> a R}_C$нp ykM֥ap@N Y~wߝ'^ݲ#dژ-r ;d9@N o#8KiQ^/2FjёmZRG6ڽ-jl^x[n EkM%nQW]b~MȖwE4,X{W#t/.[]HRVB+_Yhb…zj c =أ>zg."bu]Q\^x,9)PX|_͝;7t!VTЅ@Y++V;v @N Y5qȜih 'zի:t{uJw_rЅ@_Yrr!",j+_QG?Ȗ"ٶmۂ VX!C7,KΜ9s ! 6z뭾2',Z`g+ s"??x*lܸn BB;|ts\ _OЅDZpinЅ/zj_ ,94iҡ8f̘1_nݺ}gw]HG>ύ+y7gΜr@SYtr "۹s1@s"CXt:@ @NVX?t4!,1;9ٴiӺuBWA"N8{^*hBgKn[*hBg_IA0E wAg!,9Yzp*hBgիUЄ"CXr",E wAsN9",9YYJEg`Йbxwrس4@ _$Dp .WGuT /+CW]',}_`A*?яU@LC91 PD"apE 'J%t &,91 PD"E ':E$, GXr"("aH" y&@N^\p(RYE`P̚5k֬Y($-W J5Y "@.]]ﭶu7zWR`8M;Q%5iwW8@lLR}L纨Jq84iu7ݺD{YCO1 _|ꩧ7֭[۷woYiRM֘^Yz[\juЅSE 'K.'>O>ϝ;wʔ)˖-ۺukX~dUB@E '{PJ?Ǿ o{=쳟&M*+\`$Vɰ6Yr2wܹsv2͛o喑ŋO<\.ۿ '0vجG9|Ira7NZoל66=y@"y%K~g.ᇇ#uךќ5t{E746(YwWQUCXzQRGFFFFF֬Y3gΜw_5yХeu-Myj9BbqiyNzCY"C^yn'LP./-o7߬2b~ x篿[n}\^lّG㵣t2TX T @N/^|^C~s>S^"7>[n;qΝrK/=餓Ə@Or)&L] @6^|ťK,]C-W^y[t6ᄋrK_A.!,ر{fϛ7i6iҤVZ㏟s9 @E M6-[ldd?ٳg3&VۅE+"OElݺ;fġy]ve'tfEׯFFFn香3g뮻u{](6aG6SN9\.&tHXپ}~jFܼyscO> &.apE(_|qҥ###K.>}z\я~t1%Euk֬~}w'/SN ]WjHX^cǎ+VT3 :묏~vڤIB`K˖-=tS>g^rw̞=\.3f Z[*ʪUk׮=39s&O4HJXmٲnYxĉM79qlr|M7͜93t]E &. r%,ٸqҥKGFFnӧWOFЅa [n###w}r|r!,ׯBW@::;w\:ϞyrOc=B6֯_}?t! ,o6o|7,Ydʔ)Չ??;vlxE3U؋LCӗ.LC"@{ihG2ksvLH[hQ*rꫯUP駟m&OR0 U䠃V(B@j:D$,IX SŋCW@:"~}*HG9җt<,J5О:(t f:cRT*B > L[d "۰X{VwccbnQHlLMG.5bAhѢ|0tӷaRLV*J?M9{Gne[|٦5G [{K6n{G7?)m{4"@mXL">MtZӆ\ D] XX{Q3z"mJml#/f_?E$,vE4wӻzM'UћEix.Hi֨c;I[^,yca/6J[D@mguW d'5.U{c1uꓦW$06erpӻbjne2 PD}JcI;HEfLmZ.:ۨY:~շaZ6]d2 MgIv+M"@}B:K@NLC@$aȉ"@ @~EE 'HX DgE ?"@!RwGqD*H+_w5溎UIDATy]tEK  QLCIX dݺu6m ]@N>g? ]@NMt\ @$E" D$,IXroŊ a?yUrnݺ??mB@ "LCIX @$a~uօtE '?E$,9T*R)t#,9HX DgE" @NtHXr",@$aȉ"@ @N*JHMXP8"E$,IXrPD"aE" @NtHXr77SN ]|L.Qt$,IX d͚5[l ]@N;Gy$t#,91cƄ BW@:>:H:D$,IX ^zu*HGXrz[t|t5k|kBHAX ih"ZߜIENDB`libbonoboui-2.24.5/samples/canvdemo/CanvDemo.sgml0000644000076400007640000004623311173072741016673 00000000000000 ]>
Bonobo Canvas Component Demo Robert Gibbs 0.0.0 April, 2003 Draft The Gnome Canvas widget provides an abstraction layer between drawing objects and a drawing area. Using the Gnome Canvas object abstraction alone it is possible to build a large scale graphical application with minimal coupling between objects. The Bonobo Canvas Component takes the canvas abstraction one step further by allowing individual canvas groups or items to be set up as Corba servers. Using the canvas component abstraction it is possible to actual break up the job of rendering to canvas into separate programs such that the only coupling between the programs is at the IDL level. Introduction This is a simple demonstration program to show how Bonobo Canvas Components can be used. A circle process and a square process are factory servers of canvas items to a client main program canvas. The demonstration shows how the item can be updated from the client side via click and drag or from the server side via a periodic update loop. In a more extreme case it shows how one server can be used to simultaneously update the canvas items on multiple clients. The Square Server The square program simply adds a Gnome Canvas Rectangle item to the canvas. It sets up signal handler for drag and drop events and sets up a timeout for moving on its own. A push button is used to start and stop the timeout, and a spin button is used to change the timeout speed. Looking at the code you can see the difference in implementing the square program with and without Bonobo. Square Set Up Code #ifdef WITH_BONOBO typedef struct { int state; int dragging; int timer; double pos; double inc; double last_x; double last_y; const char *color; GtkWidget *button; GnomeCanvasItem *item; } ObjectData; static BonoboObject * control_factory (BonoboGenericFactory *this, const char *object_id, GSList **list) { ... li = g_slist_last(*list); if (li) { object = (ObjectData*)li->data; } if (!object || object->button) { object = g_new0(ObjectData, 1); *list = g_slist_append(*list, object); } widget = square_control_new (object); gtk_widget_show_all(widget); control = bonobo_control_new (widget); bonobo_control_life_instrument (control); ... } static BonoboCanvasComponent * item_factory(GnomeCanvas *canvas, gpointer data) { ... li = g_slist_last(*list); if (li) { object = (ObjectData*)li->data; } if (!object || object->button) { object = g_new0(ObjectData, 1); *list = g_slist_append(*list, object); } item = canvas_item_new(canvas, object); return bonobo_canvas_component_new(item); } static BonoboObject * bonobo_item_factory (BonoboGenericFactory *factory, const char *component, gpointer data) { ... object = BONOBO_OBJECT( bonobo_canvas_component_factory_new ( item_factory, data)); ... } int main (int argc, char *argv []) { GSList *list = NULL; ... iid = bonobo_activation_make_registration_id ( "OAFIID:SquareItem_Factory", gdk_display_get_name (gdk_display_get_default())); iid2 = bonobo_activation_make_registration_id ( 5B "OAFIID:Square_ControllerFactory", gdk_display_get_name (gdk_display_get_default())); factory = BONOBO_OBJECT(bonobo_generic_factory_new (iid, bonobo_item_factory, &:list)); if (factory) { bonobo_running_context_auto_exit_unref(factory); } retval = bonobo_generic_factory_main (iid, (BonoboFactoryCallback)control_factory, &:list); ... } #else static gboolean quit_cb (GtkWidget *widget, GdkEventAny *event, gpointer dummy) { ... } int main (int argc, char *argv[]) { GtkWidget *app, *canvas, *box, *hbox, *control; ObjectData object; ... canvas = gnome_canvas_new(); gtk_box_pack_start_defaults (GTK_BOX (box), canvas); canvas_item_new(GNOME_CANVAS(canvas), object); ... control = square_control_new(&:object); ... } #endif There are two main programs. If you comment the #define WITH_BONOBO preprocessing command, the program will build as a Gnome Canvas demonstration; otherwise, it builds a Bonobo Canvas Component program. The Gnome Canvas version creates a top level window with a canvas and the control components then adds the square canvas item to it. The primary difference with the Bonobo version is that because it is a server, it must be able to handle requests from multiple clients. It is up to the implementer whether it can refuse to serve more than one client or it can serve all requesting clients. The ObjectData structure has all information needed keep track of the square: where it is on the canvas, how fast it is moving, is it being dragged, etc. In the non-Bonobo program, a single instance of the ObjectData structure is declared at the top of the main program. In the Bonobo version, a GSList linked list is declared at the top of the main program. The linked list is used to keep track of multiple squares that could be served to multiple requestors. (Note, this program leaks objects and memory when clients disconnect. Sorry.) The Circle Server The circle server program is almost exactly the same as the square server. Aside from the obvious difference that is serves an ellipse item instead of a rectangle item, it does something different with its linked list. Rather than having a linked list of ObjectData structures, the circle server has a single CommonData structure. The CommonData structure has a linked list of ObjectData structures that contain the served canvas items and widget references to the canvas items controls. Circle Data Structures typedef struct { int state; int dragging; int timer; double speed; double pos; double inc; double last_x; double last_y; const char *color; GSList *list; } CommonData; typedef struct { GtkWidget *button; GtkAdjustment *adj; GnomeCanvasItem *item; } ObjectData; You can imagine what happens here. Any change to one circle will cause all the other circles to update to reflect the change assuming all of the events are handled properly in the circle program. Running it Altogether To see it in action, make sure you build square.c with the #define WITH_BONOBO directive in place. If you don't want to install the CanvDemo.server oaf file, just run the ./square and ./circle from a terminal. From another terminal run 1 or more copies of the main program ./main&. Press the stop button for the circle. You'll see all the circles stop. Now click and drag the circle as fast as you can. Try increasing the speed to 1000 for all the controls. A speed of 1000 translates to 100 updates per second per canvas item. You shouldn't have any trouble driving your CPU usage up to 100%. Ok this looks kind of cool, but what use is it? I'm still trying to figure this out myself. Here's my situation: I have to maintain a 30,000 line program that has to plot lots of information from various obscure data sources. Not only is the job of getting the data non-trivial, but converting the data into some form for which it can be plotted is also complex. I suspect that breaking the program down by data source into a bunch of smaller programs may simplify maintenance and may make it easier for inexperienced programmers to navigate through the code. How Canvas Components Work I recently spent some time debugging some of the this code so I figure this is a good time to document what I have learned. The canvas component code is not yet perfect (if you can believe it.) This documentation only describes the parts of the logic that gave me the most trouble. Hopefully by writing this, I'll give the next person who needs to debug it a little bit of a head start. To really understand how this interface works knowledge of how the Gnome Canvas is required first. I don't yet have this knowledge, but I can suggest some places to start: http://developer.gnome.org/doc/books/WGA/index.html, http://developer.gnome.org/doc/GGAD/ggad.html, and of course the gnome-canvas.c source code itself. By far the most complex part of the interface is the request and do update logic. The Gnome Canvas conserves processing by separating its calculation task from it graphics rendering task as the graphics rendering tends to be repeated more often due to expose events. In the do_update calculation task the sorted vector path is determined. In the draw task the graphics are sent to the screen. As a result of user interaction or a change at its data source, the canvas item may make an update request at anytime. When the request is made, a flag is set in the canvas item and the canvas sets up an idle callback. During the idle callback the canvas runs the do_update routine. During the do_update the canvas is manipulating the NEED_UPDATE flags on its item tree and it cannot allow any item to change its NEED_UPDATE status while it is in this loop. For the non-Bonobo case, items are prevented from requesting updates by calling GDK_THREADS_ENTER(). This invokes a semaphore locking scheme. For a single process, multi-threaded program this works fine. In the Bonobo case, there are two or more processes communicating, so even if each process is single threaded, the application as a whole will behave as if it is multi-threaded and the GDK thread support will not work because GDK has no knowledge about other processes that are communicating through Bonobo. In the Bonobo canvas component model, there are two entry points that can inititiate a canvas item update request. The component side may change a property of its canvas item due to a change in a database or some other data representation. The container side may request an update due to an expose or resize event. In either case the communication flow is roughly the same. The flow diagram for an update requested by the component is shown in the diagram below. When the component changes a property, a NEED_UPDATE flag is set internal to the canvas item. Sometime later the component's component canvas idle_handler is called. The initiates the rih_update.
Bonobo Canvas Component Update Flow Diagram
The rih_update from the component sets up another idle callback for the canvas item in the container. When the container's idle handler is invoked, invoke_update is finally called on the component side and the component item is updated. When the update is requested from the conatainer side there is less processing. The flow starts out on the right in the diagram above. Once invoke_update is called at the component side, this is the end of the update. The logic can break down if both the container and component request an update at approximately the same time. Lets say the container makes an update request on one if its canvas components. It would set up an idle_handler and proceed to call do_update from within the idle_handler. Just before do_update gets called on the container side, the component makes a request_update call. Next the container starts to process do_update. From somewhere within the do_update procedure, the container calls Bonobo_Canvas_Component_update on the component side. At this time the component processes the update call, but also requires that the container process the components request_update. But, the container cannot process the component's request_update without corrupting its NEED_UPDATE flags. One answer to this problem (the one implemented presently) is to have the container set up its own idle callback to process the component's update request as soon as it finishes with its do_update. For a case where there are multiple components and multiple containers where a change to one component may effect all others the problem gets even more interesting. In the circle.c example program changing one circle component at the server causes all other circle components to change. Here we have a case where an event signal from one component might trigger a request_update for a component that is a member of a different canvas. This case is described below: Canvas NEED_UPDATE Synchronization Problem Process 1 (component), 2 (canvas), and 3 (canvas). Object A and B. 1 is a component factory. 2 and 3 are canvas's. Each canvas activates an object from process 1 such that object A belongs to 2 and object B belongs to 3. For object A: 1 rih_update() -> 2 requestUpdate(). For object B: 3 gbi_event() -> 1 event(). The process 1 stack trace shows event() gets called at 1 prior to returning from rih_update(). The second call was waiting in the queue. It is as if calling requestUpdate() causes event() to be called. I suspect this has to happen because if event() had actually come from 2 then the processes would otherwise be in a deadlock. Of course the Corba ORB doesn't necessarily know what would cause a deadlock and what wouldn't. A Deadlock Problem For object A: 1 rih_update() -> 2 requestUpdate(). For object B: 2 gbi_event() -> 1 event(). Or maybe the return value just goes on the queue and we have to peel everything away until we get to the return value we need. What would happen if process 1 called 2 and waited for a return value. When 2 gets called, it needs to call 1 to finish, but 1 is busy waiting for 2 to return something. Cases where canvas in danger of getting out of sync are limited to whatever is called when either the component canvas or the container canvas are in do_update. For the component this is during rih_update where Bonobo_Canvas_ComponentProxy_requestUpdate is called. For the container this is limited to gbi_update where Bonobo_Canvas_Component_update is called. During each of these time periods on either process we need to ensure that a method call coming from the stack does not indirectly cause a canvas_item_request_update to be called. All of the methods in the idl need to be looked at to assess the possibility of any of them triggering the request. All Procedures Possible During do_update Component: update - not an issue. This trace will stay internal to the component and canvas. realize, unrealize, map, unmap - all internal. draw - danger - restore_state could request an update if GNOME_CANVAS_ITEM_NEED_AFFINE is set. It may be necessary to always set this to 0 if we are inside do_update. also could be handled with an idle since there is no return value. I think it is OK to request an update on the canvas root item even when inside do_update. render - internal no issue. contains - internal. bounds - danger: Same issue as draw. This at the moment appears to be unused. event - danger: this gets passes to the application - who knows what happens from there. setCanvasSize - no problem. setBounds - sends a gtk bounds event out. - application could request updates but I think is highly unlikely. Container: requestUpdate - problem but handled w/idle handler since has void return value. grabFocus, ungrabFocus - internal getUIContainer - no issue. Possible ramifications of dropping return value for emit_event: If container has the component attached to a group created on the container side and the component needs to decide whether it or its container should handle the event for its canvas item, there may be cases where the results will not get there. If someone is trying to do this, it is probably an unhealthy coupling anyway. The interface will not guarantee the correct return value sent by the component. For someone to be doing this, they would have a very tight coupling case. I suspect they would have much bigger problems then this return value.
libbonoboui-2.24.5/samples/canvdemo/Makefile.am0000664000076400007640000000140611546334570016347 00000000000000noinst_PROGRAMS = main square circle INCLUDES = -I$(top_srcdir) $(BONOBOUI_CFLAGS) main_SOURCES = main.c square_SOURCE = square.c circle_SOURCES = circle.c main_LDADD = $(top_builddir)/bonobo/libbonoboui-2.la $(BONOBOUI_LIBS) square_LDADD = $(top_builddir)/bonobo/libbonoboui-2.la $(BONOBOUI_LIBS) circle_LDADD = $(top_builddir)/bonobo/libbonoboui-2.la $(BONOBOUI_LIBS) serverdir = $(libdir)/bonobo/servers server_in_files = CanvDemo.server.in server_DATA = $(server_in_files:.server.in=.server) $(server_in_files): $(server_in_files:.server.in=.server.in.in) sed -e "s|\@LIBEXECDIR\@|$(libexecdir)|" $< > $@ EXTRA_DIST= flow.png \ CanvDemo.server.in.in CanvDemo.sgml CanvDemo.html CLEANFILES = $(server_in_files) $(server_DATA) @INTLTOOL_SERVER_RULE@ libbonoboui-2.24.5/samples/canvdemo/square.c0000644000076400007640000002263411173072741015756 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ #undef GTK_DISABLE_DEPRECATED #include /* Comment the below line out and rebuild to see the difference with and without Bonobo. */ #define WITH_BONOBO #include #include #include #include #ifdef WITH_BONOBO #include #include #endif #define INITSPEED 100.0 typedef struct { int state; int dragging; int timer; double pos; double inc; double last_x; double last_y; const char *color; GtkWidget *button; GnomeCanvasItem *item; } ObjectData; static int move_component(ObjectData *object) { object->pos += object->inc; if (object->pos > 50 || object->pos < -50) object->inc *= -1.0; if (object->inc >= 0) object->color = "purple"; else object->color = "red"; if (object->item && object->state) { gnome_canvas_item_set(object->item, "x1", object->pos, "x2", object->pos + 20, "outline_color", "orange", "fill_color", object->color, NULL); } return 1; } static void update_button(GtkButton *button, ObjectData *object) { gtk_button_set_label(button, object->state ? "Stop" : "Start"); } static void on_press(GtkButton *button, ObjectData *object) { object->state = !object->state; update_button(button, object); } static void set_speed(GtkAdjustment *adj, ObjectData *object) { if (object->timer) g_source_remove(object->timer); if (adj->value > 0) object->timer = g_timeout_add((int) (10000/adj->value), (GSourceFunc)move_component, object); } GtkWidget * square_control_new (ObjectData *object) { GtkWidget *button, *frame, *spin, *hbox, *spin_label; GtkObject *adj; frame = gtk_frame_new("Square"); hbox = gtk_hbox_new(FALSE, 2); gtk_container_add(GTK_CONTAINER(frame), hbox); button = gtk_button_new(); gtk_box_pack_start (GTK_BOX (hbox), button, FALSE, FALSE, 0); spin_label = gtk_label_new ("Speed:"); gtk_box_pack_start (GTK_BOX (hbox), spin_label, FALSE, FALSE, 0); adj = gtk_adjustment_new(INITSPEED, 0.0, 1000.0, 1.0, 10.0, 10.0); spin = gtk_spin_button_new(GTK_ADJUSTMENT(adj), 0.0, 0); gtk_box_pack_start (GTK_BOX (hbox), spin, FALSE, FALSE, 0); gtk_widget_show_all(frame); object->button = button; g_signal_connect(button, "clicked", G_CALLBACK(on_press), object); g_signal_connect(adj, "value_changed", G_CALLBACK(set_speed), object); update_button(GTK_BUTTON(button), object); set_speed(GTK_ADJUSTMENT(adj), object); return frame; } static void drag_component(ObjectData *object, gpointer data) { if (object->item) { gnome_canvas_item_move (object->item, object->last_x, object->last_y); } } static gboolean item_event (GnomeCanvasItem *item, GdkEvent *event, ObjectData *object) { double item_x, item_y; item_x = event->button.x; item_y = event->button.y; gnome_canvas_item_w2i (item->parent, &item_x, &item_y); switch (event->type) { case GDK_BUTTON_PRESS: switch (event->button.button) { case 1: object->last_x = item_x; object->last_y = item_y; object->dragging = TRUE; break; default: break; } break; case GDK_MOTION_NOTIFY: if (object->dragging && (event->motion.state & GDK_BUTTON1_MASK)) { object->last_x = item_x - object->last_x; object->last_y = item_y - object->last_y; drag_component(object, NULL); object->last_x = item_x; object->last_y = item_y; } break; case GDK_BUTTON_RELEASE: object->dragging = FALSE; break; default: break; } return FALSE; } static GnomeCanvasItem * canvas_item_new (GnomeCanvas *canvas, ObjectData *object) { GnomeCanvasItem *group; group = gnome_canvas_item_new ( GNOME_CANVAS_GROUP (gnome_canvas_root (canvas)), gnome_canvas_group_get_type (), NULL); object->item = gnome_canvas_item_new ( GNOME_CANVAS_GROUP (group), gnome_canvas_rect_get_type (), "x1", 0.0, "y1", 0.0, "x2", 20.0, "y2", 20.0, "outline_color", "violet", "fill_color", "brown", NULL); g_signal_connect(G_OBJECT(object->item), "event", G_CALLBACK (item_event), object); return group; } #ifdef WITH_BONOBO static BonoboObject * control_factory (BonoboGenericFactory *this, const char *object_id, GSList **list) { BonoboControl *control = NULL; GtkWidget *widget; GSList *li; ObjectData *object = NULL; g_return_val_if_fail (object_id != NULL, NULL); if (!strcmp (object_id, "OAFIID:Square_Controller")) { li = g_slist_last(*list); if (li) { object = li->data; } if (!object || object->button) { object = g_new0(ObjectData, 1); *list = g_slist_append(*list, object); } widget = square_control_new (object); gtk_widget_show_all(widget); control = bonobo_control_new (widget); bonobo_control_life_instrument (control); } return BONOBO_OBJECT(control); } static BonoboCanvasComponent * item_factory(GnomeCanvas *canvas, gpointer data) { GSList **list = (GSList **) data; GSList *li; ObjectData *object = NULL; GnomeCanvasItem *item; li = g_slist_last(*list); if (li) { object = li->data; } if (!object || object->item) { object = g_new0(ObjectData, 1); *list = g_slist_append(*list, object); } object->state = 1; object->pos = 0.0; object->inc = 8.0; item = canvas_item_new(canvas, object); return bonobo_canvas_component_new(item); } static BonoboObject * bonobo_item_factory (BonoboGenericFactory *factory, const char *component, gpointer data) { BonoboObject *object = NULL; g_return_val_if_fail (component != NULL, NULL); if (!strcmp (component, "OAFIID:SquareItem")) { g_print("activation requested\n"); object = BONOBO_OBJECT( bonobo_canvas_component_factory_new ( item_factory, data)); } else { g_print("attempted to activate w/ bad oid %s\n", component); } return object; } int main (int argc, char *argv []) { char *iid, *iid2; int retval; BonoboObject *factory; GSList *list = NULL; if (!bonobo_ui_init (argv[0], VERSION, &argc, argv)) g_error (_("Could not initialize Bonobo UI")); iid = bonobo_activation_make_registration_id ( "OAFIID:SquareItem_Factory", gdk_display_get_name (gdk_display_get_default())); iid2 = bonobo_activation_make_registration_id ( "OAFIID:Square_ControllerFactory", gdk_display_get_name (gdk_display_get_default())); factory = BONOBO_OBJECT(bonobo_generic_factory_new (iid, bonobo_item_factory, &list)); if (factory) { bonobo_running_context_auto_exit_unref(factory); } retval = bonobo_generic_factory_main (iid2, (BonoboFactoryCallback)control_factory, &list); g_free (iid); g_free (iid2); return retval; } #else static gboolean quit_cb (GtkWidget *widget, GdkEventAny *event, gpointer dummy) { gtk_main_quit (); return TRUE; } int main (int argc, char *argv[]) { GtkWidget *app, *canvas, *box, *hbox, *control; ObjectData object; gtk_init (&argc, &argv); memset(&object, 0, sizeof(object)); object.state = 1; object.inc = 8.0; app = gtk_window_new (GTK_WINDOW_TOPLEVEL); gtk_widget_set_usize (GTK_WIDGET(app), 400, 300); g_signal_connect(app, "delete_event", G_CALLBACK(quit_cb), NULL); box = gtk_vbox_new (FALSE, 2); gtk_container_add(GTK_CONTAINER(app), box); canvas = gnome_canvas_new(); gtk_box_pack_start_defaults (GTK_BOX (box), canvas); canvas_item_new(GNOME_CANVAS(canvas), &object); hbox = gtk_hbox_new(FALSE, 2); gtk_box_pack_start (GTK_BOX (box), hbox, FALSE, FALSE, 0); control = square_control_new(&object); gtk_box_pack_start (GTK_BOX (hbox), control, FALSE, FALSE, 0); gtk_widget_show_all (GTK_WIDGET(app)); g_signal_connect(app, "delete_event", G_CALLBACK(quit_cb), NULL); gtk_main (); return 0; } #endif libbonoboui-2.24.5/samples/canvdemo/circle.c0000644000076400007640000002215511173072741015715 00000000000000/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ #undef GTK_DISABLE_DEPRECATED #include "config.h" #include #include #include #include #include #include #include typedef struct { int state; int dragging; int timer; double speed; double pos; double inc; double last_x; double last_y; const char *color; GSList *list; } CommonData; typedef struct { GtkWidget *button; GtkAdjustment *adj; GnomeCanvasItem *item; } ObjectData; static void move_component(ObjectData *object, CommonData *com) { if (object->item) { gnome_canvas_item_set(object->item, "y1", com->pos, "y2", com->pos + 20, "outline_color", "black", "fill_color", com->color, NULL); } } static gboolean move_all_components(CommonData *com) { if (com->state && com->list) { com->pos += com->inc; if (com->pos > 50 || com->pos < -50) com->inc *= -1.0; if (com->inc >= 0) com->color = "blue"; else com->color = "green"; g_slist_foreach(com->list, (GFunc)move_component, com); } return 1; } static void update_button(ObjectData *object, CommonData *com) { if (object->button) { gtk_button_set_label(GTK_BUTTON(object->button), com->state ? "Stop" : "Start"); } } static void on_press (GtkWidget *button, CommonData *com) { GSList *list = com->list; com->state = !com->state; g_slist_foreach(list, (GFunc)update_button, com); } static void update_speed_label(ObjectData *object, int value) { if (object->adj) { gtk_adjustment_set_value(object->adj, (double)value); } } static void set_speed(GtkAdjustment *adj, CommonData *com) { int speed = adj->value > 0 ? (int) (10000/adj->value) : 0; if (speed != com->speed) { if (com->timer) g_source_remove(com->timer); if (speed > 0) com->timer = g_timeout_add(speed, (GSourceFunc)move_all_components, com); com->speed = speed; g_slist_foreach(com->list, (GFunc)update_speed_label, GINT_TO_POINTER((int)adj->value)); } } BonoboObject * circle_control_new (CommonData *com) { BonoboPropertyBag *pb; BonoboControl *control; GParamSpec **pspecs; guint n_pspecs; GtkWidget *button, *frame, *spin, *hbox, *spin_label; GtkObject *adj; GSList **list = &com->list; GSList *li; ObjectData *object = NULL; frame = gtk_frame_new("Circle"); hbox = gtk_hbox_new(FALSE, 2); gtk_container_add(GTK_CONTAINER(frame), hbox); button = gtk_button_new(); gtk_box_pack_start (GTK_BOX (hbox), button, FALSE, FALSE, 0); spin_label = gtk_label_new ("Speed:"); gtk_box_pack_start (GTK_BOX (hbox), spin_label, FALSE, FALSE, 0); adj = gtk_adjustment_new(100.0, 0.0, 1000.0, 1.0, 10.0, 0.0); g_signal_connect(adj, "value_changed", G_CALLBACK(set_speed), com); spin = gtk_spin_button_new(GTK_ADJUSTMENT(adj), 0.0, 0); gtk_box_pack_start (GTK_BOX (hbox), spin, FALSE, FALSE, 0); gtk_widget_show_all(frame); control = bonobo_control_new (frame); pb = bonobo_property_bag_new (NULL, NULL, NULL); bonobo_control_set_properties (control, BONOBO_OBJREF (pb), NULL); bonobo_object_unref (BONOBO_OBJECT (pb)); g_signal_connect(button, "clicked", G_CALLBACK(on_press), com); pspecs = g_object_class_list_properties ( G_OBJECT_GET_CLASS (button), &n_pspecs); bonobo_property_bag_map_params ( pb, G_OBJECT (button), (const GParamSpec **)pspecs, n_pspecs); g_free (pspecs); bonobo_control_life_instrument (control); li = g_slist_last(*list); if (li) { object = li->data; } if (!object || object->button) { object = g_new0(ObjectData, 1); *list = g_slist_append(*list, object); } object->button = button; object->adj = GTK_ADJUSTMENT(adj); update_button(object, com); set_speed(GTK_ADJUSTMENT(adj), com); return BONOBO_OBJECT (control); } static BonoboObject * control_factory (BonoboGenericFactory *this, const char *object_id, gpointer data) { BonoboObject *object = NULL; g_return_val_if_fail (object_id != NULL, NULL); if (!strcmp (object_id, "OAFIID:Circle_Controller")) { object = circle_control_new ((CommonData *) data); } return object; } static void drag_component(ObjectData *object, CommonData *com) { if (object->item) { gnome_canvas_item_move (object->item, com->last_x, com->last_y); } } static gboolean item_event (GnomeCanvasItem *item, GdkEvent *event, CommonData *com) { double item_x, item_y; item_x = event->button.x; item_y = event->button.y; gnome_canvas_item_w2i (item->parent, &item_x, &item_y); switch (event->type) { case GDK_BUTTON_PRESS: switch (event->button.button) { case 1: com->last_x = item_x; com->last_y = item_y; com->dragging = TRUE; break; default: break; } break; case GDK_MOTION_NOTIFY: if (com->dragging && (event->motion.state & GDK_BUTTON1_MASK)) { com->last_x = item_x - com->last_x; com->last_y = item_y - com->last_y; g_slist_foreach(com->list, (GFunc)drag_component, com); com->last_x = item_x; com->last_y = item_y; } break; case GDK_BUTTON_RELEASE: com->dragging = FALSE; break; } return FALSE; } static GnomeCanvasItem* canvas_item_new(GnomeCanvas *canvas, gpointer data) { GnomeCanvasItem *item; GnomeCanvasItem *group; GSList **list = &((CommonData *)data)->list; GSList *li; ObjectData *object = NULL; group = gnome_canvas_item_new ( GNOME_CANVAS_GROUP (gnome_canvas_root (canvas)), gnome_canvas_group_get_type (), NULL); item = gnome_canvas_item_new ( GNOME_CANVAS_GROUP (group), gnome_canvas_ellipse_get_type (), "x1", 0.0, "y1", 0.0, "x2", 20.0, "y2", 20.0, "outline_color", "red", "fill_color", "blue", NULL); li = g_slist_last(*list); if (li) { object = li->data; } if (!object || object->item) { object = g_new0(ObjectData, 1); *list = g_slist_append(*list, object); } object->item = item; g_signal_connect(G_OBJECT(item), "event", G_CALLBACK (item_event), data); return (group); } static BonoboCanvasComponent * item_factory (GnomeCanvas *canvas, gpointer data) { GnomeCanvasItem *group; BonoboCanvasComponent *component; group = canvas_item_new(canvas, data); component = bonobo_canvas_component_new (group); return component; } static BonoboObject * bonobo_item_factory (BonoboGenericFactory *factory, const char *component, gpointer data) { BonoboObject *object = NULL; g_return_val_if_fail (component != NULL, NULL); if (!strcmp (component, "OAFIID:CircleItem")) { g_print("activation requested\n"); object = BONOBO_OBJECT( bonobo_canvas_component_factory_new ( item_factory, data)); } else { g_print("attempted to activate w/ bad oid %s\n", component); } return object; } int main (int argc, char *argv []) { int retval; BonoboObject *factory; CommonData data; data.state = 1; data.list = NULL; data.pos = 0.0; data.inc = 2.0; data.timer = 0; data.speed = 0; if (!bonobo_ui_init (argv[0], VERSION, &argc, argv)) g_error (_("Could not initialize Bonobo UI")); factory = BONOBO_OBJECT (bonobo_generic_factory_new ("OAFIID:CircleItem_Factory", bonobo_item_factory, &data)); if (factory) bonobo_running_context_auto_exit_unref (factory); retval = bonobo_generic_factory_main ("OAFIID:Circle_ControllerFactory", control_factory, &data); return retval; } libbonoboui-2.24.5/samples/canvdemo/CanvDemo.html0000644000076400007640000005025111173072741016670 00000000000000 Bonobo Canvas Component Demo
libbonoboui-2.24.5/samples/canvdemo/CanvDemo.server.in.in0000644000076400007640000000661511173072741020251 00000000000000 libbonoboui-2.24.5/samples/canvdemo/Makefile.in0000664000076400007640000004465111546334701016365 00000000000000# Makefile.in generated by automake 1.11.1 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, # Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY, to the extent permitted by law; without # even the implied warranty of MERCHANTABILITY or FITNESS FOR A # PARTICULAR PURPOSE. @SET_MAKE@ VPATH = @srcdir@ pkgdatadir = $(datadir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ pkglibdir = $(libdir)/@PACKAGE@ pkglibexecdir = $(libexecdir)/@PACKAGE@ am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd install_sh_DATA = $(install_sh) -c -m 644 install_sh_PROGRAM = $(install_sh) -c install_sh_SCRIPT = $(install_sh) -c INSTALL_HEADER = $(INSTALL_DATA) transform = $(program_transform_name) NORMAL_INSTALL = : PRE_INSTALL = : POST_INSTALL = : NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : build_triplet = @build@ host_triplet = @host@ noinst_PROGRAMS = main$(EXEEXT) square$(EXEEXT) circle$(EXEEXT) subdir = samples/canvdemo DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/configure.in am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs CONFIG_HEADER = $(top_builddir)/config.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = PROGRAMS = $(noinst_PROGRAMS) am_circle_OBJECTS = circle.$(OBJEXT) circle_OBJECTS = $(am_circle_OBJECTS) am__DEPENDENCIES_1 = circle_DEPENDENCIES = $(top_builddir)/bonobo/libbonoboui-2.la \ $(am__DEPENDENCIES_1) am_main_OBJECTS = main.$(OBJEXT) main_OBJECTS = $(am_main_OBJECTS) main_DEPENDENCIES = $(top_builddir)/bonobo/libbonoboui-2.la \ $(am__DEPENDENCIES_1) square_SOURCES = square.c square_OBJECTS = square.$(OBJEXT) square_DEPENDENCIES = $(top_builddir)/bonobo/libbonoboui-2.la \ $(am__DEPENDENCIES_1) DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir) depcomp = $(SHELL) $(top_srcdir)/depcomp am__depfiles_maybe = depfiles am__mv = mv -f COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) LTCOMPILE = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \ --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) CCLD = $(CC) LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \ --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \ $(LDFLAGS) -o $@ SOURCES = $(circle_SOURCES) $(main_SOURCES) square.c DIST_SOURCES = $(circle_SOURCES) $(main_SOURCES) square.c am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; am__vpath_adj = case $$p in \ $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \ *) f=$$p;; \ esac; am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`; am__install_max = 40 am__nobase_strip_setup = \ srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'` am__nobase_strip = \ for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||" am__nobase_list = $(am__nobase_strip_setup); \ for p in $$list; do echo "$$p $$p"; done | \ sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \ $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \ if (++n[$$2] == $(am__install_max)) \ { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \ END { for (dir in files) print dir, files[dir] }' am__base_list = \ sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \ sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g' am__installdirs = "$(DESTDIR)$(serverdir)" DATA = $(server_DATA) ETAGS = etags CTAGS = ctags DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ACLOCAL_AMFLAGS = @ACLOCAL_AMFLAGS@ ALL_LINGUAS = @ALL_LINGUAS@ AMTAR = @AMTAR@ AR = @AR@ AS = @AS@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ AWK = @AWK@ BONOBOUI_CFLAGS = @BONOBOUI_CFLAGS@ BONOBOUI_GLADE_CFLAGS = @BONOBOUI_GLADE_CFLAGS@ BONOBOUI_GLADE_LIBS = @BONOBOUI_GLADE_LIBS@ BONOBOUI_LIBS = @BONOBOUI_LIBS@ BONOBOUI_SINGLE_INCLUDES = @BONOBOUI_SINGLE_INCLUDES@ CATALOGS = @CATALOGS@ CATOBJEXT = @CATOBJEXT@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ CYGPATH_W = @CYGPATH_W@ DATADIRNAME = @DATADIRNAME@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DUMPBIN = @DUMPBIN@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_MKENUMS = @GLIB_MKENUMS@ GMOFILES = @GMOFILES@ GMSGFMT = @GMSGFMT@ GREP = @GREP@ GTKDOC_CHECK = @GTKDOC_CHECK@ GTKDOC_MKPDF = @GTKDOC_MKPDF@ GTKDOC_REBASE = @GTKDOC_REBASE@ HTML_DIR = @HTML_DIR@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INSTOBJEXT = @INSTOBJEXT@ INTLLIBS = @INTLLIBS@ INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@ INTLTOOL_MERGE = @INTLTOOL_MERGE@ INTLTOOL_PERL = @INTLTOOL_PERL@ INTLTOOL_UPDATE = @INTLTOOL_UPDATE@ LD = @LD@ LDFLAGS = @LDFLAGS@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIPO = @LIPO@ LN_S = @LN_S@ LTLIBOBJS = @LTLIBOBJS@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MKDIR_P = @MKDIR_P@ MKINSTALLDIRS = @MKINSTALLDIRS@ MSGFMT = @MSGFMT@ MSGFMT_OPTS = @MSGFMT_OPTS@ MSGMERGE = @MSGMERGE@ NM = @NM@ NMEDIT = @NMEDIT@ OBJDUMP = @OBJDUMP@ OBJEXT = @OBJEXT@ OTOOL = @OTOOL@ OTOOL64 = @OTOOL64@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_URL = @PACKAGE_URL@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ PATH_TO_XRDB = @PATH_TO_XRDB@ PKG_CONFIG = @PKG_CONFIG@ POFILES = @POFILES@ POPT_LIBS = @POPT_LIBS@ POSUB = @POSUB@ PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@ PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@ RANLIB = @RANLIB@ SED = @SED@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ STRIP = @STRIP@ USE_NLS = @USE_NLS@ VERSION = @VERSION@ WARN_CFLAGS = @WARN_CFLAGS@ XGETTEXT = @XGETTEXT@ XMKMF = @XMKMF@ X_CFLAGS = @X_CFLAGS@ X_EXTRA_LIBS = @X_EXTRA_LIBS@ X_LIBS = @X_LIBS@ X_PRE_LIBS = @X_PRE_LIBS@ YACC = @YACC@ YFLAGS = @YFLAGS@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ abs_top_srcdir = @abs_top_srcdir@ ac_ct_CC = @ac_ct_CC@ ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ am__include = @am__include@ am__leading_dot = @am__leading_dot@ am__quote = @am__quote@ am__tar = @am__tar@ am__untar = @am__untar@ bindir = @bindir@ build = @build@ build_alias = @build_alias@ build_cpu = @build_cpu@ build_os = @build_os@ build_vendor = @build_vendor@ builddir = @builddir@ datadir = @datadir@ datarootdir = @datarootdir@ docdir = @docdir@ dvidir = @dvidir@ exec_prefix = @exec_prefix@ host = @host@ host_alias = @host_alias@ host_cpu = @host_cpu@ host_os = @host_os@ host_vendor = @host_vendor@ htmldir = @htmldir@ includedir = @includedir@ infodir = @infodir@ install_sh = @install_sh@ libdir = @libdir@ libexecdir = @libexecdir@ localedir = @localedir@ localstatedir = @localstatedir@ lt_ECHO = @lt_ECHO@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ sysconfdir = @sysconfdir@ target_alias = @target_alias@ top_build_prefix = @top_build_prefix@ top_builddir = @top_builddir@ top_srcdir = @top_srcdir@ INCLUDES = -I$(top_srcdir) $(BONOBOUI_CFLAGS) main_SOURCES = main.c square_SOURCE = square.c circle_SOURCES = circle.c main_LDADD = $(top_builddir)/bonobo/libbonoboui-2.la $(BONOBOUI_LIBS) square_LDADD = $(top_builddir)/bonobo/libbonoboui-2.la $(BONOBOUI_LIBS) circle_LDADD = $(top_builddir)/bonobo/libbonoboui-2.la $(BONOBOUI_LIBS) serverdir = $(libdir)/bonobo/servers server_in_files = CanvDemo.server.in server_DATA = $(server_in_files:.server.in=.server) EXTRA_DIST = flow.png \ CanvDemo.server.in.in CanvDemo.sgml CanvDemo.html CLEANFILES = $(server_in_files) $(server_DATA) all: all-am .SUFFIXES: .SUFFIXES: .c .lo .o .obj $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps) @for dep in $?; do \ case '$(am__configure_deps)' in \ *$$dep*) \ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ && { if test -f $@; then exit 0; else break; fi; }; \ exit 1;; \ esac; \ done; \ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign samples/canvdemo/Makefile'; \ $(am__cd) $(top_srcdir) && \ $(AUTOMAKE) --foreign samples/canvdemo/Makefile .PRECIOUS: Makefile Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status @case '$?' in \ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(am__aclocal_m4_deps): clean-noinstPROGRAMS: @list='$(noinst_PROGRAMS)'; test -n "$$list" || exit 0; \ echo " rm -f" $$list; \ rm -f $$list || exit $$?; \ test -n "$(EXEEXT)" || exit 0; \ list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \ echo " rm -f" $$list; \ rm -f $$list circle$(EXEEXT): $(circle_OBJECTS) $(circle_DEPENDENCIES) @rm -f circle$(EXEEXT) $(LINK) $(circle_OBJECTS) $(circle_LDADD) $(LIBS) main$(EXEEXT): $(main_OBJECTS) $(main_DEPENDENCIES) @rm -f main$(EXEEXT) $(LINK) $(main_OBJECTS) $(main_LDADD) $(LIBS) square$(EXEEXT): $(square_OBJECTS) $(square_DEPENDENCIES) @rm -f square$(EXEEXT) $(LINK) $(square_OBJECTS) $(square_LDADD) $(LIBS) mostlyclean-compile: -rm -f *.$(OBJEXT) distclean-compile: -rm -f *.tab.c @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/circle.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/main.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/square.Po@am__quote@ .c.o: @am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< @am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(COMPILE) -c $< .c.obj: @am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'` @am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(COMPILE) -c `$(CYGPATH_W) '$<'` .c.lo: @am__fastdepCC_TRUE@ $(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< @am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(LTCOMPILE) -c -o $@ $< mostlyclean-libtool: -rm -f *.lo clean-libtool: -rm -rf .libs _libs install-serverDATA: $(server_DATA) @$(NORMAL_INSTALL) test -z "$(serverdir)" || $(MKDIR_P) "$(DESTDIR)$(serverdir)" @list='$(server_DATA)'; test -n "$(serverdir)" || list=; \ for p in $$list; do \ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ echo "$$d$$p"; \ done | $(am__base_list) | \ while read files; do \ echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(serverdir)'"; \ $(INSTALL_DATA) $$files "$(DESTDIR)$(serverdir)" || exit $$?; \ done uninstall-serverDATA: @$(NORMAL_UNINSTALL) @list='$(server_DATA)'; test -n "$(serverdir)" || list=; \ files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ test -n "$$files" || exit 0; \ echo " ( cd '$(DESTDIR)$(serverdir)' && rm -f" $$files ")"; \ cd "$(DESTDIR)$(serverdir)" && rm -f $$files ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ END { if (nonempty) { for (i in files) print i; }; }'`; \ mkid -fID $$unique tags: TAGS TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) set x; \ here=`pwd`; \ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ END { if (nonempty) { for (i in files) print i; }; }'`; \ shift; \ if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ test -n "$$unique" || unique=$$empty_fix; \ if test $$# -gt 0; then \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ "$$@" $$unique; \ else \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ $$unique; \ fi; \ fi ctags: CTAGS CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ END { if (nonempty) { for (i in files) print i; }; }'`; \ test -z "$(CTAGS_ARGS)$$unique" \ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ $$unique GTAGS: here=`$(am__cd) $(top_builddir) && pwd` \ && $(am__cd) $(top_srcdir) \ && gtags -i $(GTAGS_ARGS) "$$here" distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ dist_files=`for file in $$list; do echo $$file; done | \ sed -e "s|^$$srcdirstrip/||;t" \ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ case $$dist_files in \ */*) $(MKDIR_P) `echo "$$dist_files" | \ sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ sort -u` ;; \ esac; \ for file in $$dist_files; do \ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ if test -d $$d/$$file; then \ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ if test -d "$(distdir)/$$file"; then \ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ else \ test -f "$(distdir)/$$file" \ || cp -p $$d/$$file "$(distdir)/$$file" \ || exit 1; \ fi; \ done check-am: all-am check: check-am all-am: Makefile $(PROGRAMS) $(DATA) installdirs: for dir in "$(DESTDIR)$(serverdir)"; do \ test -z "$$dir" || $(MKDIR_P) "$$dir"; \ done install: install-am install-exec: install-exec-am install-data: install-data-am uninstall: uninstall-am install-am: all-am @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am installcheck: installcheck-am install-strip: $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ `test -z '$(STRIP)' || \ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install mostlyclean-generic: clean-generic: -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES) distclean-generic: -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) maintainer-clean-generic: @echo "This command is intended for maintainers to use" @echo "it deletes files that may require special tools to rebuild." clean: clean-am clean-am: clean-generic clean-libtool clean-noinstPROGRAMS \ mostlyclean-am distclean: distclean-am -rm -rf ./$(DEPDIR) -rm -f Makefile distclean-am: clean-am distclean-compile distclean-generic \ distclean-tags dvi: dvi-am dvi-am: html: html-am html-am: info: info-am info-am: install-data-am: install-serverDATA install-dvi: install-dvi-am install-dvi-am: install-exec-am: install-html: install-html-am install-html-am: install-info: install-info-am install-info-am: install-man: install-pdf: install-pdf-am install-pdf-am: install-ps: install-ps-am install-ps-am: installcheck-am: maintainer-clean: maintainer-clean-am -rm -rf ./$(DEPDIR) -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic mostlyclean: mostlyclean-am mostlyclean-am: mostlyclean-compile mostlyclean-generic \ mostlyclean-libtool pdf: pdf-am pdf-am: ps: ps-am ps-am: uninstall-am: uninstall-serverDATA .MAKE: install-am install-strip .PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \ clean-libtool clean-noinstPROGRAMS ctags distclean \ distclean-compile distclean-generic distclean-libtool \ distclean-tags distdir dvi dvi-am html html-am info info-am \ install install-am install-data install-data-am install-dvi \ install-dvi-am install-exec install-exec-am install-html \ install-html-am install-info install-info-am install-man \ install-pdf install-pdf-am install-ps install-ps-am \ install-serverDATA install-strip installcheck installcheck-am \ installdirs maintainer-clean maintainer-clean-generic \ mostlyclean mostlyclean-compile mostlyclean-generic \ mostlyclean-libtool pdf pdf-am ps ps-am tags uninstall \ uninstall-am uninstall-serverDATA $(server_in_files): $(server_in_files:.server.in=.server.in.in) sed -e "s|\@LIBEXECDIR\@|$(libexecdir)|" $< > $@ @INTLTOOL_SERVER_RULE@ # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. .NOEXPORT: libbonoboui-2.24.5/samples/canvdemo/main.c0000644000076400007640000001425111173072741015376 00000000000000#undef GTK_DISABLE_DEPRECATED #include "config.h" #include #include #include #include /* static gboolean test_event (GnomeCanvasItem *item, GdkEvent *event, GnomeCanvasItem *item2) { double item_x, item_y; static double last_x, last_y; static gboolean dragging = FALSE; item_x = event->button.x; item_y = event->button.y; gnome_canvas_item_w2i (item->parent, &item_x, &item_y); switch (event->type) { case GDK_BUTTON_PRESS: printf("GDK_BUTTON_PRESS\n"); switch (event->button.button) { case 1: last_x = item_x; last_y = item_y; dragging = TRUE; break; default: break; } break; case GDK_MOTION_NOTIFY: printf("GDK_MOTION_NOTIFY\n"); if (dragging && (event->motion.state & GDK_BUTTON1_MASK)) { last_x = item_x - last_x; last_y = item_y - last_y; gnome_canvas_item_move(item2, last_x, last_y); last_x = item_x; last_y = item_y; } break; case GDK_BUTTON_RELEASE: printf("GDK_BUTTON_RELEASE\n"); dragging = FALSE; break; case GDK_ENTER_NOTIFY: printf("GDK_ENTER_NOTIFY\n"); break; case GDK_LEAVE_NOTIFY: printf("GDK_LEAVE_NOTIFY\n"); break; case GDK_KEY_PRESS: printf("GDK_KEY_PRESS\n"); break; case GDK_KEY_RELEASE: printf("GDK_KEY_RELEASE\n"); break; case GDK_FOCUS_CHANGE: printf("GDK_FOCUS_CHANGE\n"); break; default: printf("OTHER\n"); break; } return FALSE; } static GnomeCanvasGroup* setup_return_test(GnomeCanvasGroup *group) { GnomeCanvasItem *group2, *item2; group2 = gnome_canvas_item_new ( GNOME_CANVAS_GROUP (group), gnome_canvas_group_get_type (), NULL); item2 = gnome_canvas_item_new ( GNOME_CANVAS_GROUP (group2), gnome_canvas_rect_get_type (), "x1", 90.0, "y1", 90.0, "x2", 110.0, "y2", 110.0, "outline_color", "black", "fill_color", "red", NULL); g_signal_connect(G_OBJECT(group2), "event", G_CALLBACK (test_event), item2); return GNOME_CANVAS_GROUP(group2); } */ static void on_destroy (GtkWidget *app, void *data) { g_print ("Thank you for using canvas components!\n"); bonobo_main_quit (); } GnomeCanvasItem* get_square(GnomeCanvasGroup* group) { CORBA_Object server; GnomeCanvasItem *item; CORBA_Environment ev; CORBA_exception_init (&ev); server = bonobo_activation_activate_from_id ("OAFIID:SquareItem", 0, NULL, &ev); if (server == CORBA_OBJECT_NIL || BONOBO_EX (&ev)) { g_warning (_("Could not activate square: '%s'"), bonobo_exception_get_text (&ev)); CORBA_exception_free(&ev); exit(0); } g_print("Got square component connect.\n"); item = gnome_canvas_item_new (group, bonobo_canvas_item_get_type (), "corba_factory", server, NULL); /* I think this tells the object it is OK to exit. CORBA_Object_release(server, &ev);*/ bonobo_object_release_unref(server, &ev); CORBA_exception_free(&ev); return item; } GnomeCanvasItem* get_circle(GnomeCanvasGroup* group) { CORBA_Object server; GnomeCanvasItem *item; CORBA_Environment ev; CORBA_exception_init (&ev); server = bonobo_activation_activate_from_id ("OAFIID:CircleItem", 0, NULL, &ev); if (server == CORBA_OBJECT_NIL || BONOBO_EX (&ev)) { g_warning (_("Could activate Circle: '%s'"), bonobo_exception_get_text (&ev)); CORBA_exception_free(&ev); exit(0); } g_print("Got circle component connect.\n"); item = gnome_canvas_item_new (group, bonobo_canvas_item_get_type (), "corba_factory", server, NULL); /* I think this tells the object it is OK to exit. Probably want to call this when I close. or bonobo_object_release_unref(server, &ev) CORBA_Object_release(server, &ev);*/ bonobo_object_release_unref(server, &ev); CORBA_exception_free(&ev); return item; } static guint create_app (void) { GtkWidget *canvas, *window, *box, *hbox, *control; window = gtk_window_new(GTK_WINDOW_TOPLEVEL); g_signal_connect (G_OBJECT(window), "destroy", G_CALLBACK(on_destroy), NULL); gtk_widget_set_usize (GTK_WIDGET(window), 400, 300); box = gtk_vbox_new (FALSE, 2); gtk_container_add(GTK_CONTAINER(window), box); canvas = gnome_canvas_new(); gtk_box_pack_start_defaults (GTK_BOX (box), canvas); get_square(gnome_canvas_root(GNOME_CANVAS(canvas))); get_circle(gnome_canvas_root(GNOME_CANVAS(canvas))); hbox = gtk_hbox_new(FALSE, 2); gtk_box_pack_start (GTK_BOX (box), hbox, FALSE, FALSE, 0); control = bonobo_widget_new_control("OAFIID:Circle_Controller", NULL); gtk_box_pack_start (GTK_BOX (hbox), control, FALSE, FALSE, 0); control = bonobo_widget_new_control("OAFIID:Square_Controller", NULL); gtk_box_pack_start (GTK_BOX (hbox), control, FALSE, FALSE, 0); gtk_widget_show_all (GTK_WIDGET(window)); return FALSE; } int main (int argc, char** argv) { if (!bonobo_ui_init (argv[0], VERSION, &argc, argv)) g_error ("Could not initialize libbonoboui!\n"); gtk_idle_add ((GtkFunction) create_app, NULL); bonobo_main (); return 0; } libbonoboui-2.24.5/samples/Makefile.in0000664000076400007640000004315111546334701014563 00000000000000# Makefile.in generated by automake 1.11.1 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, # Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY, to the extent permitted by law; without # even the implied warranty of MERCHANTABILITY or FITNESS FOR A # PARTICULAR PURPOSE. @SET_MAKE@ VPATH = @srcdir@ pkgdatadir = $(datadir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ pkglibdir = $(libdir)/@PACKAGE@ pkglibexecdir = $(libexecdir)/@PACKAGE@ am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd install_sh_DATA = $(install_sh) -c -m 644 install_sh_PROGRAM = $(install_sh) -c install_sh_SCRIPT = $(install_sh) -c INSTALL_HEADER = $(INSTALL_DATA) transform = $(program_transform_name) NORMAL_INSTALL = : PRE_INSTALL = : POST_INSTALL = : NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : build_triplet = @build@ host_triplet = @host@ subdir = samples DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/configure.in am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs CONFIG_HEADER = $(top_builddir)/config.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = SOURCES = DIST_SOURCES = RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \ html-recursive info-recursive install-data-recursive \ install-dvi-recursive install-exec-recursive \ install-html-recursive install-info-recursive \ install-pdf-recursive install-ps-recursive install-recursive \ installcheck-recursive installdirs-recursive pdf-recursive \ ps-recursive uninstall-recursive RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \ distclean-recursive maintainer-clean-recursive AM_RECURSIVE_TARGETS = $(RECURSIVE_TARGETS:-recursive=) \ $(RECURSIVE_CLEAN_TARGETS:-recursive=) tags TAGS ctags CTAGS \ distdir ETAGS = etags CTAGS = ctags DIST_SUBDIRS = $(SUBDIRS) DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) am__relativize = \ dir0=`pwd`; \ sed_first='s,^\([^/]*\)/.*$$,\1,'; \ sed_rest='s,^[^/]*/*,,'; \ sed_last='s,^.*/\([^/]*\)$$,\1,'; \ sed_butlast='s,/*[^/]*$$,,'; \ while test -n "$$dir1"; do \ first=`echo "$$dir1" | sed -e "$$sed_first"`; \ if test "$$first" != "."; then \ if test "$$first" = ".."; then \ dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \ dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \ else \ first2=`echo "$$dir2" | sed -e "$$sed_first"`; \ if test "$$first2" = "$$first"; then \ dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \ else \ dir2="../$$dir2"; \ fi; \ dir0="$$dir0"/"$$first"; \ fi; \ fi; \ dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \ done; \ reldir="$$dir2" ACLOCAL = @ACLOCAL@ ACLOCAL_AMFLAGS = @ACLOCAL_AMFLAGS@ ALL_LINGUAS = @ALL_LINGUAS@ AMTAR = @AMTAR@ AR = @AR@ AS = @AS@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ AWK = @AWK@ BONOBOUI_CFLAGS = @BONOBOUI_CFLAGS@ BONOBOUI_GLADE_CFLAGS = @BONOBOUI_GLADE_CFLAGS@ BONOBOUI_GLADE_LIBS = @BONOBOUI_GLADE_LIBS@ BONOBOUI_LIBS = @BONOBOUI_LIBS@ BONOBOUI_SINGLE_INCLUDES = @BONOBOUI_SINGLE_INCLUDES@ CATALOGS = @CATALOGS@ CATOBJEXT = @CATOBJEXT@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ CYGPATH_W = @CYGPATH_W@ DATADIRNAME = @DATADIRNAME@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DUMPBIN = @DUMPBIN@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_MKENUMS = @GLIB_MKENUMS@ GMOFILES = @GMOFILES@ GMSGFMT = @GMSGFMT@ GREP = @GREP@ GTKDOC_CHECK = @GTKDOC_CHECK@ GTKDOC_MKPDF = @GTKDOC_MKPDF@ GTKDOC_REBASE = @GTKDOC_REBASE@ HTML_DIR = @HTML_DIR@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INSTOBJEXT = @INSTOBJEXT@ INTLLIBS = @INTLLIBS@ INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@ INTLTOOL_MERGE = @INTLTOOL_MERGE@ INTLTOOL_PERL = @INTLTOOL_PERL@ INTLTOOL_UPDATE = @INTLTOOL_UPDATE@ LD = @LD@ LDFLAGS = @LDFLAGS@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIPO = @LIPO@ LN_S = @LN_S@ LTLIBOBJS = @LTLIBOBJS@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MKDIR_P = @MKDIR_P@ MKINSTALLDIRS = @MKINSTALLDIRS@ MSGFMT = @MSGFMT@ MSGFMT_OPTS = @MSGFMT_OPTS@ MSGMERGE = @MSGMERGE@ NM = @NM@ NMEDIT = @NMEDIT@ OBJDUMP = @OBJDUMP@ OBJEXT = @OBJEXT@ OTOOL = @OTOOL@ OTOOL64 = @OTOOL64@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_URL = @PACKAGE_URL@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ PATH_TO_XRDB = @PATH_TO_XRDB@ PKG_CONFIG = @PKG_CONFIG@ POFILES = @POFILES@ POPT_LIBS = @POPT_LIBS@ POSUB = @POSUB@ PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@ PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@ RANLIB = @RANLIB@ SED = @SED@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ STRIP = @STRIP@ USE_NLS = @USE_NLS@ VERSION = @VERSION@ WARN_CFLAGS = @WARN_CFLAGS@ XGETTEXT = @XGETTEXT@ XMKMF = @XMKMF@ X_CFLAGS = @X_CFLAGS@ X_EXTRA_LIBS = @X_EXTRA_LIBS@ X_LIBS = @X_LIBS@ X_PRE_LIBS = @X_PRE_LIBS@ YACC = @YACC@ YFLAGS = @YFLAGS@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ abs_top_srcdir = @abs_top_srcdir@ ac_ct_CC = @ac_ct_CC@ ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ am__include = @am__include@ am__leading_dot = @am__leading_dot@ am__quote = @am__quote@ am__tar = @am__tar@ am__untar = @am__untar@ bindir = @bindir@ build = @build@ build_alias = @build_alias@ build_cpu = @build_cpu@ build_os = @build_os@ build_vendor = @build_vendor@ builddir = @builddir@ datadir = @datadir@ datarootdir = @datarootdir@ docdir = @docdir@ dvidir = @dvidir@ exec_prefix = @exec_prefix@ host = @host@ host_alias = @host_alias@ host_cpu = @host_cpu@ host_os = @host_os@ host_vendor = @host_vendor@ htmldir = @htmldir@ includedir = @includedir@ infodir = @infodir@ install_sh = @install_sh@ libdir = @libdir@ libexecdir = @libexecdir@ localedir = @localedir@ localstatedir = @localstatedir@ lt_ECHO = @lt_ECHO@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ sysconfdir = @sysconfdir@ target_alias = @target_alias@ top_build_prefix = @top_build_prefix@ top_builddir = @top_builddir@ top_srcdir = @top_srcdir@ SUBDIRS = bonoboui controls container compound-doc canvdemo all: all-recursive .SUFFIXES: $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps) @for dep in $?; do \ case '$(am__configure_deps)' in \ *$$dep*) \ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ && { if test -f $@; then exit 0; else break; fi; }; \ exit 1;; \ esac; \ done; \ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign samples/Makefile'; \ $(am__cd) $(top_srcdir) && \ $(AUTOMAKE) --foreign samples/Makefile .PRECIOUS: Makefile Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status @case '$?' in \ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(am__aclocal_m4_deps): mostlyclean-libtool: -rm -f *.lo clean-libtool: -rm -rf .libs _libs # This directory's subdirectories are mostly independent; you can cd # into them and run `make' without going through this Makefile. # To change the values of `make' variables: instead of editing Makefiles, # (1) if the variable is set in `config.status', edit `config.status' # (which will cause the Makefiles to be regenerated when you run `make'); # (2) otherwise, pass the desired values on the `make' command line. $(RECURSIVE_TARGETS): @fail= failcom='exit 1'; \ for f in x $$MAKEFLAGS; do \ case $$f in \ *=* | --[!k]*);; \ *k*) failcom='fail=yes';; \ esac; \ done; \ dot_seen=no; \ target=`echo $@ | sed s/-recursive//`; \ list='$(SUBDIRS)'; for subdir in $$list; do \ echo "Making $$target in $$subdir"; \ if test "$$subdir" = "."; then \ dot_seen=yes; \ local_target="$$target-am"; \ else \ local_target="$$target"; \ fi; \ ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ || eval $$failcom; \ done; \ if test "$$dot_seen" = "no"; then \ $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \ fi; test -z "$$fail" $(RECURSIVE_CLEAN_TARGETS): @fail= failcom='exit 1'; \ for f in x $$MAKEFLAGS; do \ case $$f in \ *=* | --[!k]*);; \ *k*) failcom='fail=yes';; \ esac; \ done; \ dot_seen=no; \ case "$@" in \ distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \ *) list='$(SUBDIRS)' ;; \ esac; \ rev=''; for subdir in $$list; do \ if test "$$subdir" = "."; then :; else \ rev="$$subdir $$rev"; \ fi; \ done; \ rev="$$rev ."; \ target=`echo $@ | sed s/-recursive//`; \ for subdir in $$rev; do \ echo "Making $$target in $$subdir"; \ if test "$$subdir" = "."; then \ local_target="$$target-am"; \ else \ local_target="$$target"; \ fi; \ ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ || eval $$failcom; \ done && test -z "$$fail" tags-recursive: list='$(SUBDIRS)'; for subdir in $$list; do \ test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \ done ctags-recursive: list='$(SUBDIRS)'; for subdir in $$list; do \ test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \ done ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ END { if (nonempty) { for (i in files) print i; }; }'`; \ mkid -fID $$unique tags: TAGS TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) set x; \ here=`pwd`; \ if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \ include_option=--etags-include; \ empty_fix=.; \ else \ include_option=--include; \ empty_fix=; \ fi; \ list='$(SUBDIRS)'; for subdir in $$list; do \ if test "$$subdir" = .; then :; else \ test ! -f $$subdir/TAGS || \ set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \ fi; \ done; \ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ END { if (nonempty) { for (i in files) print i; }; }'`; \ shift; \ if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ test -n "$$unique" || unique=$$empty_fix; \ if test $$# -gt 0; then \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ "$$@" $$unique; \ else \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ $$unique; \ fi; \ fi ctags: CTAGS CTAGS: ctags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ END { if (nonempty) { for (i in files) print i; }; }'`; \ test -z "$(CTAGS_ARGS)$$unique" \ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ $$unique GTAGS: here=`$(am__cd) $(top_builddir) && pwd` \ && $(am__cd) $(top_srcdir) \ && gtags -i $(GTAGS_ARGS) "$$here" distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ dist_files=`for file in $$list; do echo $$file; done | \ sed -e "s|^$$srcdirstrip/||;t" \ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ case $$dist_files in \ */*) $(MKDIR_P) `echo "$$dist_files" | \ sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ sort -u` ;; \ esac; \ for file in $$dist_files; do \ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ if test -d $$d/$$file; then \ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ if test -d "$(distdir)/$$file"; then \ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ else \ test -f "$(distdir)/$$file" \ || cp -p $$d/$$file "$(distdir)/$$file" \ || exit 1; \ fi; \ done @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \ if test "$$subdir" = .; then :; else \ test -d "$(distdir)/$$subdir" \ || $(MKDIR_P) "$(distdir)/$$subdir" \ || exit 1; \ fi; \ done @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \ if test "$$subdir" = .; then :; else \ dir1=$$subdir; dir2="$(distdir)/$$subdir"; \ $(am__relativize); \ new_distdir=$$reldir; \ dir1=$$subdir; dir2="$(top_distdir)"; \ $(am__relativize); \ new_top_distdir=$$reldir; \ echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \ echo " am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \ ($(am__cd) $$subdir && \ $(MAKE) $(AM_MAKEFLAGS) \ top_distdir="$$new_top_distdir" \ distdir="$$new_distdir" \ am__remove_distdir=: \ am__skip_length_check=: \ am__skip_mode_fix=: \ distdir) \ || exit 1; \ fi; \ done check-am: all-am check: check-recursive all-am: Makefile installdirs: installdirs-recursive installdirs-am: install: install-recursive install-exec: install-exec-recursive install-data: install-data-recursive uninstall: uninstall-recursive install-am: all-am @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am installcheck: installcheck-recursive install-strip: $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ `test -z '$(STRIP)' || \ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install mostlyclean-generic: clean-generic: distclean-generic: -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) maintainer-clean-generic: @echo "This command is intended for maintainers to use" @echo "it deletes files that may require special tools to rebuild." clean: clean-recursive clean-am: clean-generic clean-libtool mostlyclean-am distclean: distclean-recursive -rm -f Makefile distclean-am: clean-am distclean-generic distclean-tags dvi: dvi-recursive dvi-am: html: html-recursive html-am: info: info-recursive info-am: install-data-am: install-dvi: install-dvi-recursive install-dvi-am: install-exec-am: install-html: install-html-recursive install-html-am: install-info: install-info-recursive install-info-am: install-man: install-pdf: install-pdf-recursive install-pdf-am: install-ps: install-ps-recursive install-ps-am: installcheck-am: maintainer-clean: maintainer-clean-recursive -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic mostlyclean: mostlyclean-recursive mostlyclean-am: mostlyclean-generic mostlyclean-libtool pdf: pdf-recursive pdf-am: ps: ps-recursive ps-am: uninstall-am: .MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) ctags-recursive \ install-am install-strip tags-recursive .PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \ all all-am check check-am clean clean-generic clean-libtool \ ctags ctags-recursive distclean distclean-generic \ distclean-libtool distclean-tags distdir dvi dvi-am html \ html-am info info-am install install-am install-data \ install-data-am install-dvi install-dvi-am install-exec \ install-exec-am install-html install-html-am install-info \ install-info-am install-man install-pdf install-pdf-am \ install-ps install-ps-am install-strip installcheck \ installcheck-am installdirs installdirs-am maintainer-clean \ maintainer-clean-generic mostlyclean mostlyclean-generic \ mostlyclean-libtool pdf pdf-am ps ps-am tags tags-recursive \ uninstall uninstall-am # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. .NOEXPORT: libbonoboui-2.24.5/samples/compound-doc/0000775000076400007640000000000011546335131015157 500000000000000libbonoboui-2.24.5/samples/compound-doc/Makefile.am0000644000076400007640000000007411173072741017133 00000000000000SUBDIRS = container . OLDSUBDIRS = container bonobo-hello libbonoboui-2.24.5/samples/compound-doc/Makefile.in0000664000076400007640000004321611546334701017154 00000000000000# Makefile.in generated by automake 1.11.1 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, # Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY, to the extent permitted by law; without # even the implied warranty of MERCHANTABILITY or FITNESS FOR A # PARTICULAR PURPOSE. @SET_MAKE@ VPATH = @srcdir@ pkgdatadir = $(datadir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ pkglibdir = $(libdir)/@PACKAGE@ pkglibexecdir = $(libexecdir)/@PACKAGE@ am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd install_sh_DATA = $(install_sh) -c -m 644 install_sh_PROGRAM = $(install_sh) -c install_sh_SCRIPT = $(install_sh) -c INSTALL_HEADER = $(INSTALL_DATA) transform = $(program_transform_name) NORMAL_INSTALL = : PRE_INSTALL = : POST_INSTALL = : NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : build_triplet = @build@ host_triplet = @host@ subdir = samples/compound-doc DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/configure.in am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs CONFIG_HEADER = $(top_builddir)/config.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = SOURCES = DIST_SOURCES = RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \ html-recursive info-recursive install-data-recursive \ install-dvi-recursive install-exec-recursive \ install-html-recursive install-info-recursive \ install-pdf-recursive install-ps-recursive install-recursive \ installcheck-recursive installdirs-recursive pdf-recursive \ ps-recursive uninstall-recursive RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \ distclean-recursive maintainer-clean-recursive AM_RECURSIVE_TARGETS = $(RECURSIVE_TARGETS:-recursive=) \ $(RECURSIVE_CLEAN_TARGETS:-recursive=) tags TAGS ctags CTAGS \ distdir ETAGS = etags CTAGS = ctags DIST_SUBDIRS = $(SUBDIRS) DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) am__relativize = \ dir0=`pwd`; \ sed_first='s,^\([^/]*\)/.*$$,\1,'; \ sed_rest='s,^[^/]*/*,,'; \ sed_last='s,^.*/\([^/]*\)$$,\1,'; \ sed_butlast='s,/*[^/]*$$,,'; \ while test -n "$$dir1"; do \ first=`echo "$$dir1" | sed -e "$$sed_first"`; \ if test "$$first" != "."; then \ if test "$$first" = ".."; then \ dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \ dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \ else \ first2=`echo "$$dir2" | sed -e "$$sed_first"`; \ if test "$$first2" = "$$first"; then \ dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \ else \ dir2="../$$dir2"; \ fi; \ dir0="$$dir0"/"$$first"; \ fi; \ fi; \ dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \ done; \ reldir="$$dir2" ACLOCAL = @ACLOCAL@ ACLOCAL_AMFLAGS = @ACLOCAL_AMFLAGS@ ALL_LINGUAS = @ALL_LINGUAS@ AMTAR = @AMTAR@ AR = @AR@ AS = @AS@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ AWK = @AWK@ BONOBOUI_CFLAGS = @BONOBOUI_CFLAGS@ BONOBOUI_GLADE_CFLAGS = @BONOBOUI_GLADE_CFLAGS@ BONOBOUI_GLADE_LIBS = @BONOBOUI_GLADE_LIBS@ BONOBOUI_LIBS = @BONOBOUI_LIBS@ BONOBOUI_SINGLE_INCLUDES = @BONOBOUI_SINGLE_INCLUDES@ CATALOGS = @CATALOGS@ CATOBJEXT = @CATOBJEXT@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ CYGPATH_W = @CYGPATH_W@ DATADIRNAME = @DATADIRNAME@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DUMPBIN = @DUMPBIN@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_MKENUMS = @GLIB_MKENUMS@ GMOFILES = @GMOFILES@ GMSGFMT = @GMSGFMT@ GREP = @GREP@ GTKDOC_CHECK = @GTKDOC_CHECK@ GTKDOC_MKPDF = @GTKDOC_MKPDF@ GTKDOC_REBASE = @GTKDOC_REBASE@ HTML_DIR = @HTML_DIR@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INSTOBJEXT = @INSTOBJEXT@ INTLLIBS = @INTLLIBS@ INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@ INTLTOOL_MERGE = @INTLTOOL_MERGE@ INTLTOOL_PERL = @INTLTOOL_PERL@ INTLTOOL_UPDATE = @INTLTOOL_UPDATE@ LD = @LD@ LDFLAGS = @LDFLAGS@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIPO = @LIPO@ LN_S = @LN_S@ LTLIBOBJS = @LTLIBOBJS@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MKDIR_P = @MKDIR_P@ MKINSTALLDIRS = @MKINSTALLDIRS@ MSGFMT = @MSGFMT@ MSGFMT_OPTS = @MSGFMT_OPTS@ MSGMERGE = @MSGMERGE@ NM = @NM@ NMEDIT = @NMEDIT@ OBJDUMP = @OBJDUMP@ OBJEXT = @OBJEXT@ OTOOL = @OTOOL@ OTOOL64 = @OTOOL64@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_URL = @PACKAGE_URL@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ PATH_TO_XRDB = @PATH_TO_XRDB@ PKG_CONFIG = @PKG_CONFIG@ POFILES = @POFILES@ POPT_LIBS = @POPT_LIBS@ POSUB = @POSUB@ PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@ PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@ RANLIB = @RANLIB@ SED = @SED@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ STRIP = @STRIP@ USE_NLS = @USE_NLS@ VERSION = @VERSION@ WARN_CFLAGS = @WARN_CFLAGS@ XGETTEXT = @XGETTEXT@ XMKMF = @XMKMF@ X_CFLAGS = @X_CFLAGS@ X_EXTRA_LIBS = @X_EXTRA_LIBS@ X_LIBS = @X_LIBS@ X_PRE_LIBS = @X_PRE_LIBS@ YACC = @YACC@ YFLAGS = @YFLAGS@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ abs_top_srcdir = @abs_top_srcdir@ ac_ct_CC = @ac_ct_CC@ ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ am__include = @am__include@ am__leading_dot = @am__leading_dot@ am__quote = @am__quote@ am__tar = @am__tar@ am__untar = @am__untar@ bindir = @bindir@ build = @build@ build_alias = @build_alias@ build_cpu = @build_cpu@ build_os = @build_os@ build_vendor = @build_vendor@ builddir = @builddir@ datadir = @datadir@ datarootdir = @datarootdir@ docdir = @docdir@ dvidir = @dvidir@ exec_prefix = @exec_prefix@ host = @host@ host_alias = @host_alias@ host_cpu = @host_cpu@ host_os = @host_os@ host_vendor = @host_vendor@ htmldir = @htmldir@ includedir = @includedir@ infodir = @infodir@ install_sh = @install_sh@ libdir = @libdir@ libexecdir = @libexecdir@ localedir = @localedir@ localstatedir = @localstatedir@ lt_ECHO = @lt_ECHO@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ sysconfdir = @sysconfdir@ target_alias = @target_alias@ top_build_prefix = @top_build_prefix@ top_builddir = @top_builddir@ top_srcdir = @top_srcdir@ SUBDIRS = container . OLDSUBDIRS = container bonobo-hello all: all-recursive .SUFFIXES: $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps) @for dep in $?; do \ case '$(am__configure_deps)' in \ *$$dep*) \ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ && { if test -f $@; then exit 0; else break; fi; }; \ exit 1;; \ esac; \ done; \ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign samples/compound-doc/Makefile'; \ $(am__cd) $(top_srcdir) && \ $(AUTOMAKE) --foreign samples/compound-doc/Makefile .PRECIOUS: Makefile Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status @case '$?' in \ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(am__aclocal_m4_deps): mostlyclean-libtool: -rm -f *.lo clean-libtool: -rm -rf .libs _libs # This directory's subdirectories are mostly independent; you can cd # into them and run `make' without going through this Makefile. # To change the values of `make' variables: instead of editing Makefiles, # (1) if the variable is set in `config.status', edit `config.status' # (which will cause the Makefiles to be regenerated when you run `make'); # (2) otherwise, pass the desired values on the `make' command line. $(RECURSIVE_TARGETS): @fail= failcom='exit 1'; \ for f in x $$MAKEFLAGS; do \ case $$f in \ *=* | --[!k]*);; \ *k*) failcom='fail=yes';; \ esac; \ done; \ dot_seen=no; \ target=`echo $@ | sed s/-recursive//`; \ list='$(SUBDIRS)'; for subdir in $$list; do \ echo "Making $$target in $$subdir"; \ if test "$$subdir" = "."; then \ dot_seen=yes; \ local_target="$$target-am"; \ else \ local_target="$$target"; \ fi; \ ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ || eval $$failcom; \ done; \ if test "$$dot_seen" = "no"; then \ $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \ fi; test -z "$$fail" $(RECURSIVE_CLEAN_TARGETS): @fail= failcom='exit 1'; \ for f in x $$MAKEFLAGS; do \ case $$f in \ *=* | --[!k]*);; \ *k*) failcom='fail=yes';; \ esac; \ done; \ dot_seen=no; \ case "$@" in \ distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \ *) list='$(SUBDIRS)' ;; \ esac; \ rev=''; for subdir in $$list; do \ if test "$$subdir" = "."; then :; else \ rev="$$subdir $$rev"; \ fi; \ done; \ rev="$$rev ."; \ target=`echo $@ | sed s/-recursive//`; \ for subdir in $$rev; do \ echo "Making $$target in $$subdir"; \ if test "$$subdir" = "."; then \ local_target="$$target-am"; \ else \ local_target="$$target"; \ fi; \ ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ || eval $$failcom; \ done && test -z "$$fail" tags-recursive: list='$(SUBDIRS)'; for subdir in $$list; do \ test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \ done ctags-recursive: list='$(SUBDIRS)'; for subdir in $$list; do \ test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \ done ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ END { if (nonempty) { for (i in files) print i; }; }'`; \ mkid -fID $$unique tags: TAGS TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) set x; \ here=`pwd`; \ if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \ include_option=--etags-include; \ empty_fix=.; \ else \ include_option=--include; \ empty_fix=; \ fi; \ list='$(SUBDIRS)'; for subdir in $$list; do \ if test "$$subdir" = .; then :; else \ test ! -f $$subdir/TAGS || \ set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \ fi; \ done; \ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ END { if (nonempty) { for (i in files) print i; }; }'`; \ shift; \ if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ test -n "$$unique" || unique=$$empty_fix; \ if test $$# -gt 0; then \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ "$$@" $$unique; \ else \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ $$unique; \ fi; \ fi ctags: CTAGS CTAGS: ctags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ END { if (nonempty) { for (i in files) print i; }; }'`; \ test -z "$(CTAGS_ARGS)$$unique" \ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ $$unique GTAGS: here=`$(am__cd) $(top_builddir) && pwd` \ && $(am__cd) $(top_srcdir) \ && gtags -i $(GTAGS_ARGS) "$$here" distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ dist_files=`for file in $$list; do echo $$file; done | \ sed -e "s|^$$srcdirstrip/||;t" \ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ case $$dist_files in \ */*) $(MKDIR_P) `echo "$$dist_files" | \ sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ sort -u` ;; \ esac; \ for file in $$dist_files; do \ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ if test -d $$d/$$file; then \ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ if test -d "$(distdir)/$$file"; then \ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ else \ test -f "$(distdir)/$$file" \ || cp -p $$d/$$file "$(distdir)/$$file" \ || exit 1; \ fi; \ done @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \ if test "$$subdir" = .; then :; else \ test -d "$(distdir)/$$subdir" \ || $(MKDIR_P) "$(distdir)/$$subdir" \ || exit 1; \ fi; \ done @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \ if test "$$subdir" = .; then :; else \ dir1=$$subdir; dir2="$(distdir)/$$subdir"; \ $(am__relativize); \ new_distdir=$$reldir; \ dir1=$$subdir; dir2="$(top_distdir)"; \ $(am__relativize); \ new_top_distdir=$$reldir; \ echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \ echo " am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \ ($(am__cd) $$subdir && \ $(MAKE) $(AM_MAKEFLAGS) \ top_distdir="$$new_top_distdir" \ distdir="$$new_distdir" \ am__remove_distdir=: \ am__skip_length_check=: \ am__skip_mode_fix=: \ distdir) \ || exit 1; \ fi; \ done check-am: all-am check: check-recursive all-am: Makefile installdirs: installdirs-recursive installdirs-am: install: install-recursive install-exec: install-exec-recursive install-data: install-data-recursive uninstall: uninstall-recursive install-am: all-am @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am installcheck: installcheck-recursive install-strip: $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ `test -z '$(STRIP)' || \ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install mostlyclean-generic: clean-generic: distclean-generic: -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) maintainer-clean-generic: @echo "This command is intended for maintainers to use" @echo "it deletes files that may require special tools to rebuild." clean: clean-recursive clean-am: clean-generic clean-libtool mostlyclean-am distclean: distclean-recursive -rm -f Makefile distclean-am: clean-am distclean-generic distclean-tags dvi: dvi-recursive dvi-am: html: html-recursive html-am: info: info-recursive info-am: install-data-am: install-dvi: install-dvi-recursive install-dvi-am: install-exec-am: install-html: install-html-recursive install-html-am: install-info: install-info-recursive install-info-am: install-man: install-pdf: install-pdf-recursive install-pdf-am: install-ps: install-ps-recursive install-ps-am: installcheck-am: maintainer-clean: maintainer-clean-recursive -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic mostlyclean: mostlyclean-recursive mostlyclean-am: mostlyclean-generic mostlyclean-libtool pdf: pdf-recursive pdf-am: ps: ps-recursive ps-am: uninstall-am: .MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) ctags-recursive \ install-am install-strip tags-recursive .PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \ all all-am check check-am clean clean-generic clean-libtool \ ctags ctags-recursive distclean distclean-generic \ distclean-libtool distclean-tags distdir dvi dvi-am html \ html-am info info-am install install-am install-data \ install-data-am install-dvi install-dvi-am install-exec \ install-exec-am install-html install-html-am install-info \ install-info-am install-man install-pdf install-pdf-am \ install-ps install-ps-am install-strip installcheck \ installcheck-am installdirs installdirs-am maintainer-clean \ maintainer-clean-generic mostlyclean mostlyclean-generic \ mostlyclean-libtool pdf pdf-am ps ps-am tags tags-recursive \ uninstall uninstall-am # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. .NOEXPORT: libbonoboui-2.24.5/samples/compound-doc/container/0000775000076400007640000000000011546335131017141 500000000000000libbonoboui-2.24.5/samples/compound-doc/container/Makefile.am0000644000076400007640000000077011173072741021120 00000000000000INCLUDES = \ -DGNOMELOCALEDIR=\""$(datadir)/locale"\" \ -I$(top_srcdir) \ $(BONOBOUI_CFLAGS) noinst_PROGRAMS = sample-container-2 sample_container_2_SOURCES = \ container.c \ container.h \ component.c \ component.h \ container-filesel.h \ container-filesel.c \ container-menu.h \ container-menu.c \ document.c \ document.h \ doc-view.c \ doc-view.h sample_container_2_LDADD = \ $(top_builddir)/bonobo/libbonoboui-2.la \ $(BONOBOUI_LIBS) \ $(INTLLIBS) libbonoboui-2.24.5/samples/compound-doc/container/container-menu.h0000644000076400007640000000021611173072741022154 00000000000000#ifndef SAMPLE_CONTAINER_MENU_H #define SAMPLE_CONTAINER_MENU_H #include "container.h" void sample_app_fill_menu (SampleApp * app); #endif libbonoboui-2.24.5/samples/compound-doc/container/container.c0000644000076400007640000000354611173072741021216 00000000000000#undef GTK_DISABLE_DEPRECATED #include "config.h" #include #include #include #include #include "container.h" #include "document.h" #include "container-menu.h" void sample_app_exit (SampleApp *app) { GList *l; for (l = app->doc_views; l; l = l->next) g_object_unref (G_OBJECT (l->data)); g_object_unref (G_OBJECT (app->doc)); gtk_widget_destroy (app->win); g_free (app); bonobo_main_quit (); } static gint delete_cb (GtkWidget *caller, GdkEvent *event, SampleApp *app) { sample_app_exit (app); return TRUE; } static SampleApp * sample_app_new (SampleDoc *doc) { SampleApp *app = g_new0 (SampleApp, 1); GtkWidget *view; /* Create a document */ app->doc = sample_doc_new (); if (!app->doc) { g_free (app); return NULL; } /* Create toplevel window */ app->win = bonobo_window_new ("sample-doc-container", "Sample Document container"); gtk_window_set_default_size (GTK_WINDOW (app->win), 400, 600); g_signal_connect_data (G_OBJECT (app->win), "delete_event", G_CALLBACK (delete_cb), app, NULL, 0); /* Create and merge the UI elements. */ sample_app_fill_menu (app); /* Create a doc view and stuff it into a box in the toplevel. */ app->box = gtk_vbox_new (FALSE, 10); bonobo_window_set_contents (BONOBO_WINDOW (app->win), app->box); view = sample_doc_view_new (app->doc, BONOBO_OBJREF ( bonobo_window_get_ui_container (BONOBO_WINDOW (app->win)))); app->doc_views = g_list_prepend (app->doc_views, view); app->curr_view = view; gtk_widget_show_all (app->win); return app; } int main (int argc, char **argv) { SampleDoc *doc; SampleApp *app; free (malloc (8)); if (!bonobo_ui_init ("container", VERSION, &argc, argv)) g_error ("Could not initialize libbonoboui!\n"); doc = sample_doc_new (); app = sample_app_new (doc); bonobo_main (); return 0; } libbonoboui-2.24.5/samples/compound-doc/container/component.h0000644000076400007640000000271411173072741021237 00000000000000#ifndef SAMPLE_COMPONENT_H #define SAMPLE_COMPONENT_H #include #include #define SAMPLE_COMPONENT_TYPE (sample_component_get_type ()) #define SAMPLE_COMPONENT(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), SAMPLE_COMPONENT_TYPE, SampleComponent)) #define SAMPLE_COMPONENT_CLASS(k) (G_TYPE_CHECK_CLASS_CAST((k), SAMPLE_COMPONENT_TYPE, SampleComponentClass)) #define SAMPLE_IS_COMPONENT(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), SAMPLE_COMPONENT_TYPE)) #define SAMPLE_IS_COMPONENT_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), SAMPLE_COMPONENT_TYPE)) typedef struct _SampleComponent SampleComponent; typedef struct _SampleComponentClass SampleComponentClass; typedef struct _SampleComponentPrivate SampleComponentPrivate; struct _SampleComponent { GObject parent; SampleComponentPrivate *priv; }; struct _SampleComponentClass { GObjectClass parent_class; void (*changed) (GObject *obj); }; GType sample_component_get_type (void); SampleComponent *sample_component_new (gchar *iid); SampleComponent *sample_component_new_from_storage (Bonobo_Storage storage); void sample_component_move (SampleComponent *, gdouble x, gdouble y); void sample_component_resize (SampleComponent *, gdouble width, gdouble height); gboolean sample_component_is_dirty (SampleComponent *); void sample_component_get_affine (SampleComponent *, gdouble *); Bonobo_Unknown sample_component_get_server (SampleComponent *); #endif libbonoboui-2.24.5/samples/compound-doc/container/container-menu.c0000644000076400007640000001162711173072741022157 00000000000000#include "config.h" #include #include #include #include #include "container-menu.h" #include "container.h" #include "container-filesel.h" #include "document.h" static void verb_AddComponent_cb (BonoboUIComponent *uic, gpointer user_data, const char *cname) { SampleApp *inst = user_data; char *required_interfaces [2] = { "IDL:Bonobo/CanvasComponentFactory:1.0", NULL }; char *obj_id; /* Ask the user to select a component. */ obj_id = bonobo_selector_select_id ( "Select an embeddable Bonobo component to add", (const gchar **) required_interfaces); if (!obj_id) return; sample_doc_add_component (inst->doc, obj_id); g_free (obj_id); } static void load_response_cb (GtkWidget *caller, gint response, SampleApp *app) { GtkWidget *fs = app->fileselection; gchar *filename; if (response == GTK_RESPONSE_OK) { filename = gtk_file_chooser_get_filename (GTK_FILE_CHOOSER (fs)); if (filename) sample_doc_load (app->doc, filename); g_free (filename); } gtk_widget_destroy (fs); } static void save_response_cb (GtkWidget *caller, gint response, SampleApp *app) { GtkWidget *fs = app->fileselection; gchar *filename; if (response == GTK_RESPONSE_OK) { filename = gtk_file_chooser_get_filename (GTK_FILE_CHOOSER (fs)); if (filename) sample_doc_save (app->doc, filename); g_free (filename); } gtk_widget_destroy (fs); } static void verb_FileSaveAs_cb (BonoboUIComponent *uic, gpointer user_data, const char *cname) { SampleApp *app = user_data; container_request_file (app, TRUE, G_CALLBACK (save_response_cb), app); } static void verb_FileLoad_cb (BonoboUIComponent *uic, gpointer user_data, const char *cname) { SampleApp *app = user_data; container_request_file (app, FALSE, G_CALLBACK (load_response_cb), app); } static void verb_PrintPreview_cb (BonoboUIComponent *uic, gpointer user_data, const char *cname) { #if 0 SampleApp *app = user_data; sample_app_print_preview (app); #else g_warning ("Print Preview not implemented yet."); #endif } static void verb_HelpAbout_cb (BonoboUIComponent *uic, gpointer user_data, const char *cname) { #if 0 /* gnome_about would require a libgnomeui dependency */ static const gchar *authors[] = { "RDI Gerg ", "Mike Kestner ", NULL }; GtkWidget *about = gnome_about_new ("sample-container-2", VERSION, "(C) 2000-2001 RDI Gerg, Mike Kestner, and Ximian, Inc", authors, "Bonobo sample container", NULL); gtk_widget_show (about); #endif } static void verb_FileExit_cb (BonoboUIComponent *uic, gpointer user_data, const char *cname) { SampleApp *app = user_data; sample_app_exit (app); } /* * The menus. */ static char ui_commands [] = "\n" " \n" " \n" " \n" " \n" " \n" " \n" ""; static char ui_data [] = "\n" " \n" " \n" " " " \n" "\n" " \n" "\n" " \n" "\n" " \n" " \n" " \n" " \n" " \n" "\n" " \n" " \n" " \n" ""; static BonoboUIVerb sample_app_verbs[] = { BONOBO_UI_VERB ("AddEmbeddable", verb_AddComponent_cb), BONOBO_UI_VERB ("FileOpen", verb_FileLoad_cb), BONOBO_UI_VERB ("FileSaveAs", verb_FileSaveAs_cb), BONOBO_UI_VERB ("PrintPreview", verb_PrintPreview_cb), BONOBO_UI_VERB ("FileExit", verb_FileExit_cb), BONOBO_UI_VERB ("HelpAbout", verb_HelpAbout_cb), BONOBO_UI_VERB_END }; void sample_app_fill_menu (SampleApp *app) { Bonobo_UIContainer corba_uic; BonoboUIComponent *uic; uic = bonobo_ui_component_new ("sample"); corba_uic = BONOBO_OBJREF (bonobo_window_get_ui_container ( BONOBO_WINDOW (app->win))); bonobo_ui_component_set_container (uic, corba_uic, NULL); bonobo_ui_component_set_translate (uic, "/", ui_commands, NULL); bonobo_ui_component_set_translate (uic, "/", ui_data, NULL); bonobo_ui_component_add_verb_list_with_data (uic, sample_app_verbs, app); } libbonoboui-2.24.5/samples/compound-doc/container/doc-view.c0000644000076400007640000000637711173072741020756 00000000000000#include "config.h" #include #include #include #include #include #include "doc-view.h" typedef struct { SampleDoc *doc; Bonobo_UIContainer uic; GnomeCanvas *canvas; GnomeCanvasItem *selection; GnomeCanvasItem *handle_group; } SampleDocView; static void layout_changed_cb (SampleComponent *comp, GnomeCanvasItem *item) { gdouble affine [6]; sample_component_get_affine (comp, affine); gnome_canvas_item_affine_absolute (item, affine); } static gboolean item_pressed_cb (GnomeCanvasItem *item, SampleDocView *view) { if (view->selection && (view->selection != item)) gnome_canvas_item_set (view->selection, "selected", FALSE, NULL); view->selection = item; gnome_canvas_item_set (view->selection, "selected", TRUE, NULL); return TRUE; } static void add_canvas_item (SampleDocView *view, SampleComponent *comp) { GnomeCanvasItem *item; gdouble affine[6]; item = gnome_canvas_item_new (gnome_canvas_root (view->canvas), bonobo_canvas_item_get_type (), "corba_server", sample_component_get_server (comp), "corba_ui_container", view->uic, NULL); sample_component_get_affine (comp, affine); gnome_canvas_item_affine_absolute (item, affine); g_signal_connect_data (G_OBJECT (comp), "changed", G_CALLBACK (layout_changed_cb), item, NULL, 0); g_signal_connect_data (G_OBJECT (item), "button_press_event", G_CALLBACK (item_pressed_cb), view, NULL, 0); } static void add_components (SampleDocView *view) { GList *l, *comps; comps = sample_doc_get_components (view->doc); for (l = comps; l; l = l->next) add_canvas_item (view, SAMPLE_COMPONENT (l->data)); g_list_free (comps); } static void background_cb (GnomeCanvasItem *item, GdkEvent *event, SampleDocView *view) { if (view->selection && (event->button.button == 1)) { g_object_unref (view->handle_group); view->handle_group = NULL; view->selection = NULL; } } static void destroy_view (GObject *obj, SampleDocView *view) { g_object_unref (G_OBJECT (view->doc)); bonobo_object_release_unref (view->uic, NULL); g_free (view); } GtkWidget * sample_doc_view_new (SampleDoc *doc, Bonobo_UIContainer uic) { SampleDocView *view; GtkWidget *canvas; GnomeCanvasItem *bg; view = g_new0 (SampleDocView, 1); if (!view) return NULL; canvas = gnome_canvas_new (); view->canvas = GNOME_CANVAS (canvas); gnome_canvas_set_scroll_region (view->canvas, -400.0, -300.0, 400.0, 300.0); g_signal_connect_data (G_OBJECT (canvas), "finalize", G_CALLBACK (destroy_view), view, NULL, 0); bg = gnome_canvas_item_new (gnome_canvas_root (view->canvas), gnome_canvas_rect_get_type (), "x1", -400.0, "y1", -300.0, "x2", 400.0, "y2", 300.0, "fill_color", "white", NULL); g_signal_connect_data (G_OBJECT (bg), "button_press_event", G_CALLBACK (background_cb), view, NULL, 0); view->uic = bonobo_object_dup_ref (uic, NULL); g_object_ref (G_OBJECT (doc)); view->doc = doc; add_components (view); gtk_widget_show_all (canvas); return canvas; } libbonoboui-2.24.5/samples/compound-doc/container/container.h0000644000076400007640000000075611173072741021223 00000000000000#ifndef SAMPLE_CONTAINER_H #define SAMPLE_CONTAINER_H #include #include "document.h" #include "doc-view.h" typedef struct _SampleApp SampleApp; typedef struct _SampleClientSite SampleClientSite; struct _SampleApp { SampleDoc *doc; GList *doc_views; GtkWidget *curr_view; GtkWidget *win; GtkWidget *box; GtkWidget *fileselection; }; void sample_app_exit (SampleApp *app); #endif /* SAMPLE_CONTAINER_H */ libbonoboui-2.24.5/samples/compound-doc/container/component.c0000644000076400007640000001102411173072741021224 00000000000000#include "component.h" #include #include struct _SampleComponentPrivate { Bonobo_Unknown server; gdouble x; gdouble y; gdouble width; gdouble height; }; enum SIGNALS { CHANGED, LAST_SIGNAL }; static guint signals [LAST_SIGNAL] = { 0 }; static GObjectClass *component_parent_class; static void sample_component_finalize (GObject *obj) { SampleComponent *comp = SAMPLE_COMPONENT (obj); bonobo_object_release_unref (comp->priv->server, NULL); g_free (comp->priv); component_parent_class->finalize (obj); } static void sample_component_class_init (GObjectClass *klass) { component_parent_class = g_type_class_peek_parent (klass); signals [CHANGED] = g_signal_new ( "changed", G_TYPE_FROM_CLASS (klass), G_SIGNAL_RUN_LAST, G_STRUCT_OFFSET (SampleComponentClass, changed), NULL, NULL, g_cclosure_marshal_VOID__VOID, G_TYPE_NONE, 0); klass->finalize = sample_component_finalize; } static void sample_component_instance_init (GObject *obj) { SampleComponent *comp = SAMPLE_COMPONENT (obj); comp->priv = g_new0 (SampleComponentPrivate, 1); comp->priv->server = CORBA_OBJECT_NIL; comp->priv->x = 0.0; comp->priv->y = 0.0; comp->priv->height = 0.0; comp->priv->width = 0.0; } GType sample_component_get_type (void) { static GType type = 0; if (!type) { GTypeInfo info = { sizeof (SampleComponentClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) sample_component_class_init, NULL, NULL, /* class_data */ sizeof (SampleComponent), 0, /* n_preallocs */ (GInstanceInitFunc) sample_component_instance_init }; type = g_type_register_static (G_TYPE_OBJECT, "SampleComponent", &info, 0); } return type; } SampleComponent * sample_component_new (gchar *object_id) { SampleComponent *comp; Bonobo_Unknown server; CORBA_Environment ev; comp = g_object_new (SAMPLE_COMPONENT_TYPE, NULL); CORBA_exception_init (&ev); server = bonobo_activation_activate_from_id (object_id, 0, NULL, &ev); if ((server == CORBA_OBJECT_NIL) || BONOBO_EX (&ev)) { CORBA_exception_free (&ev); g_object_unref (G_OBJECT (comp)); return NULL; } comp->priv->server = bonobo_object_dup_ref (server, &ev); Bonobo_Unknown_unref (server, &ev); CORBA_exception_free (&ev); return comp; } SampleComponent * sample_component_new_from_storage (Bonobo_Storage storage) { g_warning ("Nope, not yet. Storage loading be broke still."); #if 0 Bonobo_Unknown persist; Bonobo_Unknown prop_stream; CORBA_Environment ev; CORBA_exception_init (&ev); switch (comp->priv->persist_type) { case PSTREAM: persist = Bonobo_Unknown_queryInterface ( comp->server, "IDL:Bonobo/PersistStream:1.0", &ev); if (persist != CORBA_OBJECT_NIL) { Bonobo_PersistStream_load (persist, subdir, "", &ev); Bonobo_Unknown_unref (persist, &ev); } break; case PSTORAGE: persist = Bonobo_Unknown_queryInterface ( comp->server, "IDL:Bonobo/PersistStorage:1.0", &ev); if (persist != CORBA_OBJECT_NIL) { Bonobo_PersistStorage_load (persist, subdir, "", &ev); Bonobo_Unknown_unref (persist, &ev); } break; default: g_warning ("Unexpected Persist type encountered."); return; } if (BONOBO_EX (&ev)) { char *msg = bonobo_exception_get_text (&ev); gnome_warning_dialog (msg); g_free (msg); } #endif return NULL; } gboolean sample_component_is_dirty (SampleComponent *comp) { CORBA_Environment ev; Bonobo_Persist persist; gboolean dirty = FALSE; g_return_val_if_fail (SAMPLE_IS_COMPONENT (comp), FALSE); CORBA_exception_init (&ev); persist = Bonobo_Unknown_queryInterface ( comp->priv->server, "IDL:Bonobo/Persist:1.0", &ev); if (persist != CORBA_OBJECT_NIL) { dirty = Bonobo_Persist_isDirty (persist, &ev); Bonobo_Unknown_unref (persist, &ev); } CORBA_exception_free (&ev); return FALSE; } void sample_component_move (SampleComponent *comp, gdouble x, gdouble y) { g_return_if_fail (SAMPLE_IS_COMPONENT (comp)); comp->priv->x = x; comp->priv->y = y; g_signal_emit (G_OBJECT (comp), signals [CHANGED], 0); } void sample_component_resize (SampleComponent *comp, gdouble width, gdouble height) { g_return_if_fail (SAMPLE_IS_COMPONENT (comp)); comp->priv->width = width; comp->priv->height = height; g_signal_emit (G_OBJECT (comp), signals [CHANGED], 0); } void sample_component_get_affine (SampleComponent *comp, gdouble *aff) { art_affine_identity (aff); art_affine_translate (aff, comp->priv->x, comp->priv->y); } Bonobo_Unknown sample_component_get_server (SampleComponent *comp) { return comp->priv->server; } libbonoboui-2.24.5/samples/compound-doc/container/document.h0000644000076400007640000000237011173072741021051 00000000000000#ifndef SAMPLE_DOC_H #define SAMPLE_DOC_H #include #include "component.h" #define SAMPLE_DOC_TYPE (sample_doc_get_type ()) #define SAMPLE_DOC(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), SAMPLE_DOC_TYPE, SampleDoc)) #define SAMPLE_DOC_CLASS(k) (G_TYPE_CHECK_CLASS_CAST((k), SAMPLE_DOC_TYPE, SampleDocClass)) #define SAMPLE_IS_DOC(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), SAMPLE_DOC_TYPE)) #define SAMPLE_IS_DOC_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), SAMPLE_DOC_TYPE)) typedef struct _SampleDoc SampleDoc; typedef struct _SampleDocPrivate SampleDocPrivate; struct _SampleDoc { GObject parent; SampleDocPrivate *priv; }; typedef struct { GObjectClass parent_class; /* Signals */ void (*component_added) (SampleDoc *, SampleComponent *); void (*component_removed) (SampleDoc *, SampleComponent *); } SampleDocClass; GType sample_doc_get_type (void); SampleDoc *sample_doc_new (void); gchar *sample_doc_get_filename (SampleDoc *); gboolean sample_doc_is_dirty (SampleDoc *); void sample_doc_add_component (SampleDoc *, gchar *iid); GList *sample_doc_get_components (SampleDoc *); void sample_doc_load (SampleDoc *, const gchar *filename); void sample_doc_save (SampleDoc *, const gchar *filename); #endif libbonoboui-2.24.5/samples/compound-doc/container/container-filesel.h0000644000076400007640000000035611173072741022640 00000000000000#ifndef SAMPLE_CONTAINER_FILESEL_H #define SAMPLE_CONTAINER_FILESEL_H #include "container.h" void container_request_file (SampleApp *app, gboolean save, GCallback cb, gpointer user_data); #endif libbonoboui-2.24.5/samples/compound-doc/container/Makefile.in0000664000076400007640000004021311546334701021130 00000000000000# Makefile.in generated by automake 1.11.1 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, # Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY, to the extent permitted by law; without # even the implied warranty of MERCHANTABILITY or FITNESS FOR A # PARTICULAR PURPOSE. @SET_MAKE@ VPATH = @srcdir@ pkgdatadir = $(datadir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ pkglibdir = $(libdir)/@PACKAGE@ pkglibexecdir = $(libexecdir)/@PACKAGE@ am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd install_sh_DATA = $(install_sh) -c -m 644 install_sh_PROGRAM = $(install_sh) -c install_sh_SCRIPT = $(install_sh) -c INSTALL_HEADER = $(INSTALL_DATA) transform = $(program_transform_name) NORMAL_INSTALL = : PRE_INSTALL = : POST_INSTALL = : NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : build_triplet = @build@ host_triplet = @host@ noinst_PROGRAMS = sample-container-2$(EXEEXT) subdir = samples/compound-doc/container DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in ChangeLog ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/configure.in am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs CONFIG_HEADER = $(top_builddir)/config.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = PROGRAMS = $(noinst_PROGRAMS) am_sample_container_2_OBJECTS = container.$(OBJEXT) \ component.$(OBJEXT) container-filesel.$(OBJEXT) \ container-menu.$(OBJEXT) document.$(OBJEXT) doc-view.$(OBJEXT) sample_container_2_OBJECTS = $(am_sample_container_2_OBJECTS) am__DEPENDENCIES_1 = sample_container_2_DEPENDENCIES = \ $(top_builddir)/bonobo/libbonoboui-2.la $(am__DEPENDENCIES_1) \ $(am__DEPENDENCIES_1) DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir) depcomp = $(SHELL) $(top_srcdir)/depcomp am__depfiles_maybe = depfiles am__mv = mv -f COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) LTCOMPILE = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \ --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) CCLD = $(CC) LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \ --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \ $(LDFLAGS) -o $@ SOURCES = $(sample_container_2_SOURCES) DIST_SOURCES = $(sample_container_2_SOURCES) ETAGS = etags CTAGS = ctags DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ACLOCAL_AMFLAGS = @ACLOCAL_AMFLAGS@ ALL_LINGUAS = @ALL_LINGUAS@ AMTAR = @AMTAR@ AR = @AR@ AS = @AS@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ AWK = @AWK@ BONOBOUI_CFLAGS = @BONOBOUI_CFLAGS@ BONOBOUI_GLADE_CFLAGS = @BONOBOUI_GLADE_CFLAGS@ BONOBOUI_GLADE_LIBS = @BONOBOUI_GLADE_LIBS@ BONOBOUI_LIBS = @BONOBOUI_LIBS@ BONOBOUI_SINGLE_INCLUDES = @BONOBOUI_SINGLE_INCLUDES@ CATALOGS = @CATALOGS@ CATOBJEXT = @CATOBJEXT@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ CYGPATH_W = @CYGPATH_W@ DATADIRNAME = @DATADIRNAME@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DUMPBIN = @DUMPBIN@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_MKENUMS = @GLIB_MKENUMS@ GMOFILES = @GMOFILES@ GMSGFMT = @GMSGFMT@ GREP = @GREP@ GTKDOC_CHECK = @GTKDOC_CHECK@ GTKDOC_MKPDF = @GTKDOC_MKPDF@ GTKDOC_REBASE = @GTKDOC_REBASE@ HTML_DIR = @HTML_DIR@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INSTOBJEXT = @INSTOBJEXT@ INTLLIBS = @INTLLIBS@ INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@ INTLTOOL_MERGE = @INTLTOOL_MERGE@ INTLTOOL_PERL = @INTLTOOL_PERL@ INTLTOOL_UPDATE = @INTLTOOL_UPDATE@ LD = @LD@ LDFLAGS = @LDFLAGS@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIPO = @LIPO@ LN_S = @LN_S@ LTLIBOBJS = @LTLIBOBJS@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MKDIR_P = @MKDIR_P@ MKINSTALLDIRS = @MKINSTALLDIRS@ MSGFMT = @MSGFMT@ MSGFMT_OPTS = @MSGFMT_OPTS@ MSGMERGE = @MSGMERGE@ NM = @NM@ NMEDIT = @NMEDIT@ OBJDUMP = @OBJDUMP@ OBJEXT = @OBJEXT@ OTOOL = @OTOOL@ OTOOL64 = @OTOOL64@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_URL = @PACKAGE_URL@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ PATH_TO_XRDB = @PATH_TO_XRDB@ PKG_CONFIG = @PKG_CONFIG@ POFILES = @POFILES@ POPT_LIBS = @POPT_LIBS@ POSUB = @POSUB@ PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@ PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@ RANLIB = @RANLIB@ SED = @SED@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ STRIP = @STRIP@ USE_NLS = @USE_NLS@ VERSION = @VERSION@ WARN_CFLAGS = @WARN_CFLAGS@ XGETTEXT = @XGETTEXT@ XMKMF = @XMKMF@ X_CFLAGS = @X_CFLAGS@ X_EXTRA_LIBS = @X_EXTRA_LIBS@ X_LIBS = @X_LIBS@ X_PRE_LIBS = @X_PRE_LIBS@ YACC = @YACC@ YFLAGS = @YFLAGS@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ abs_top_srcdir = @abs_top_srcdir@ ac_ct_CC = @ac_ct_CC@ ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ am__include = @am__include@ am__leading_dot = @am__leading_dot@ am__quote = @am__quote@ am__tar = @am__tar@ am__untar = @am__untar@ bindir = @bindir@ build = @build@ build_alias = @build_alias@ build_cpu = @build_cpu@ build_os = @build_os@ build_vendor = @build_vendor@ builddir = @builddir@ datadir = @datadir@ datarootdir = @datarootdir@ docdir = @docdir@ dvidir = @dvidir@ exec_prefix = @exec_prefix@ host = @host@ host_alias = @host_alias@ host_cpu = @host_cpu@ host_os = @host_os@ host_vendor = @host_vendor@ htmldir = @htmldir@ includedir = @includedir@ infodir = @infodir@ install_sh = @install_sh@ libdir = @libdir@ libexecdir = @libexecdir@ localedir = @localedir@ localstatedir = @localstatedir@ lt_ECHO = @lt_ECHO@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ sysconfdir = @sysconfdir@ target_alias = @target_alias@ top_build_prefix = @top_build_prefix@ top_builddir = @top_builddir@ top_srcdir = @top_srcdir@ INCLUDES = \ -DGNOMELOCALEDIR=\""$(datadir)/locale"\" \ -I$(top_srcdir) \ $(BONOBOUI_CFLAGS) sample_container_2_SOURCES = \ container.c \ container.h \ component.c \ component.h \ container-filesel.h \ container-filesel.c \ container-menu.h \ container-menu.c \ document.c \ document.h \ doc-view.c \ doc-view.h sample_container_2_LDADD = \ $(top_builddir)/bonobo/libbonoboui-2.la \ $(BONOBOUI_LIBS) \ $(INTLLIBS) all: all-am .SUFFIXES: .SUFFIXES: .c .lo .o .obj $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps) @for dep in $?; do \ case '$(am__configure_deps)' in \ *$$dep*) \ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ && { if test -f $@; then exit 0; else break; fi; }; \ exit 1;; \ esac; \ done; \ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign samples/compound-doc/container/Makefile'; \ $(am__cd) $(top_srcdir) && \ $(AUTOMAKE) --foreign samples/compound-doc/container/Makefile .PRECIOUS: Makefile Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status @case '$?' in \ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(am__aclocal_m4_deps): clean-noinstPROGRAMS: @list='$(noinst_PROGRAMS)'; test -n "$$list" || exit 0; \ echo " rm -f" $$list; \ rm -f $$list || exit $$?; \ test -n "$(EXEEXT)" || exit 0; \ list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \ echo " rm -f" $$list; \ rm -f $$list sample-container-2$(EXEEXT): $(sample_container_2_OBJECTS) $(sample_container_2_DEPENDENCIES) @rm -f sample-container-2$(EXEEXT) $(LINK) $(sample_container_2_OBJECTS) $(sample_container_2_LDADD) $(LIBS) mostlyclean-compile: -rm -f *.$(OBJEXT) distclean-compile: -rm -f *.tab.c @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/component.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/container-filesel.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/container-menu.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/container.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/doc-view.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/document.Po@am__quote@ .c.o: @am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< @am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(COMPILE) -c $< .c.obj: @am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'` @am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(COMPILE) -c `$(CYGPATH_W) '$<'` .c.lo: @am__fastdepCC_TRUE@ $(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< @am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(LTCOMPILE) -c -o $@ $< mostlyclean-libtool: -rm -f *.lo clean-libtool: -rm -rf .libs _libs ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ END { if (nonempty) { for (i in files) print i; }; }'`; \ mkid -fID $$unique tags: TAGS TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) set x; \ here=`pwd`; \ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ END { if (nonempty) { for (i in files) print i; }; }'`; \ shift; \ if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ test -n "$$unique" || unique=$$empty_fix; \ if test $$# -gt 0; then \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ "$$@" $$unique; \ else \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ $$unique; \ fi; \ fi ctags: CTAGS CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ END { if (nonempty) { for (i in files) print i; }; }'`; \ test -z "$(CTAGS_ARGS)$$unique" \ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ $$unique GTAGS: here=`$(am__cd) $(top_builddir) && pwd` \ && $(am__cd) $(top_srcdir) \ && gtags -i $(GTAGS_ARGS) "$$here" distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ dist_files=`for file in $$list; do echo $$file; done | \ sed -e "s|^$$srcdirstrip/||;t" \ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ case $$dist_files in \ */*) $(MKDIR_P) `echo "$$dist_files" | \ sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ sort -u` ;; \ esac; \ for file in $$dist_files; do \ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ if test -d $$d/$$file; then \ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ if test -d "$(distdir)/$$file"; then \ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ else \ test -f "$(distdir)/$$file" \ || cp -p $$d/$$file "$(distdir)/$$file" \ || exit 1; \ fi; \ done check-am: all-am check: check-am all-am: Makefile $(PROGRAMS) installdirs: install: install-am install-exec: install-exec-am install-data: install-data-am uninstall: uninstall-am install-am: all-am @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am installcheck: installcheck-am install-strip: $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ `test -z '$(STRIP)' || \ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install mostlyclean-generic: clean-generic: distclean-generic: -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) maintainer-clean-generic: @echo "This command is intended for maintainers to use" @echo "it deletes files that may require special tools to rebuild." clean: clean-am clean-am: clean-generic clean-libtool clean-noinstPROGRAMS \ mostlyclean-am distclean: distclean-am -rm -rf ./$(DEPDIR) -rm -f Makefile distclean-am: clean-am distclean-compile distclean-generic \ distclean-tags dvi: dvi-am dvi-am: html: html-am html-am: info: info-am info-am: install-data-am: install-dvi: install-dvi-am install-dvi-am: install-exec-am: install-html: install-html-am install-html-am: install-info: install-info-am install-info-am: install-man: install-pdf: install-pdf-am install-pdf-am: install-ps: install-ps-am install-ps-am: installcheck-am: maintainer-clean: maintainer-clean-am -rm -rf ./$(DEPDIR) -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic mostlyclean: mostlyclean-am mostlyclean-am: mostlyclean-compile mostlyclean-generic \ mostlyclean-libtool pdf: pdf-am pdf-am: ps: ps-am ps-am: uninstall-am: .MAKE: install-am install-strip .PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \ clean-libtool clean-noinstPROGRAMS ctags distclean \ distclean-compile distclean-generic distclean-libtool \ distclean-tags distdir dvi dvi-am html html-am info info-am \ install install-am install-data install-data-am install-dvi \ install-dvi-am install-exec install-exec-am install-html \ install-html-am install-info install-info-am install-man \ install-pdf install-pdf-am install-ps install-ps-am \ install-strip installcheck installcheck-am installdirs \ maintainer-clean maintainer-clean-generic mostlyclean \ mostlyclean-compile mostlyclean-generic mostlyclean-libtool \ pdf pdf-am ps ps-am tags uninstall uninstall-am # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. .NOEXPORT: libbonoboui-2.24.5/samples/compound-doc/container/container-filesel.c0000644000076400007640000000131111173072741022623 00000000000000#include "config.h" #include #include "container-filesel.h" #include "container.h" void container_request_file (SampleApp *app, gboolean save, GCallback cb, gpointer user_data) { GtkWidget *fs; app->fileselection = fs = gtk_file_chooser_dialog_new ("Select file", GTK_WINDOW (app->win), save ? GTK_FILE_CHOOSER_ACTION_SAVE : GTK_FILE_CHOOSER_ACTION_OPEN, GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL, save ? GTK_STOCK_SAVE : GTK_STOCK_OPEN, GTK_RESPONSE_OK, NULL); g_signal_connect (G_OBJECT (fs), "response", G_CALLBACK (cb), user_data); gtk_window_set_modal (GTK_WINDOW (fs), TRUE); gtk_widget_show (fs); } libbonoboui-2.24.5/samples/compound-doc/container/doc-view.h0000644000076400007640000000031111173072741020741 00000000000000#ifndef _SAMPLE_DOC_VIEW_H #define _SAMPLE_DOC_VIEW_H #include #include #include "document.h" GtkWidget *sample_doc_view_new (SampleDoc *, Bonobo_UIContainer); #endif libbonoboui-2.24.5/samples/compound-doc/container/ChangeLog0000644000076400007640000002306311173072741020636 000000000000002009-03-06 Kjartan Maraas reviewed by: * container.c: ===================================== 2.24.1 ============================ 2008-12-09 Kjartan Maraas * container-filesel.c: * container-menu.c: * container.c: * doc-view.h: 2008-08-28 Kjartan Maraas * container-print.c: (sample_app_print_preview): Don't use deprecated api. 2002-02-13 Michael Meeks * container.c (sample_app_new): upd. sizing. 2001-10-08 Abel Cheung * Makefile.am, container-menu.c(verb_HelpAbout_cb): Rename sample-container -> sample-container-2 , for parallel install with bonobo 1.0.x . 2001-08-18 Darin Adler * Makefile.am: Removed extra -I directives. 2001-08-13 Michael Meeks * doc-view.c: kill warnings. (item_pressed_cb): return TRUE at random. * document.c (sample_doc_class_init): ditto. * document.c (sample_doc_set_filename): kill. 2001-07-31 Michael Meeks * document.c, * container.c, * component.c: remove redundant liboaf.h includes. 2001-07-24 Michael Meeks * container.c (sample_app_exit): bonobo_main_quit. (main): fixup inits. 2001-07-22 Mike Kestner * samples/compound-doc/container/Makefile.am : add new document and doc-view files. Prune some unnecessary at least temporarily until further 2.0 porting can be done (eg the print API). * samples/compound-doc/container/container.c : port to 2.0. * samples/compound-doc/container/container-filesel.c : port to 2.0. * samples/compound-doc/container/container-menu.c : port to 2.0. * samples/compound-doc/container/component.c : now a model object. * samples/compound-doc/container/document.c : new parent model object. * samples/compound-doc/container/doc-view.c : new document view. 2001-02-06 Michael Meeks * component.c (object_print): gtk_object_unref the print_client. 2001-02-06 Michael Meeks * component.c (sample_client_site_get_type): upd. (sample_client_site_new): upd. 2001-01-17 Michael Meeks * component.c (sample_client_site_new): upd. 2000-12-11 Michael Meeks * container.c (add_moniker_async): impl. (made_moniker_cb): remove. (make_moniker): prune async bits. (final_setup): clean. 2000-12-08 Michael Meeks * container.c (do_add_cb): upd. 2000-12-01 Michael Meeks * container.c (resolve_and_add): upd. (do_add): add async callback. 2000-11-28 Michael Meeks * container.c (make_moniker): upd. 2000-11-20 Michael Meeks * container-io.c (save_component): add write flag and check for exception. 2000-10-24 Michael Meeks * container.c (final_setup): disable the 'query:' moniker until Miguel likes it. Wed Oct 25 11:04:03 2000 Dietmar Maurer * container-io.c: use Bonobo_Storage_open_stream instead of Bonobo_Storage_create_stream, and Bonobo_Unknown_unref instead of Bonobo_Stream_close. Thu Oct 19 10:30:28 2000 Dietmar Maurer * component.c (load_stream_cb): use bonobo_stream_open instead of bonobo_stream_fs_open * container-io.c (sample_container_save): use CORBA OpenMode flags 2000-10-11 Michael Meeks * container-menu.c (sample_app_fill_menu): use bonobo_ui_component_set_translate. 2000-10-09 Michael Meeks * component.c (component_user_context_cb): emasculate. 2000-09-12 Michael Meeks * container-menu.c (xml_dump_cb): add for debugging. 2000-08-14 Michael Meeks * container.c (resolve_and_add): unref the moniker. 2000-08-12 Michael Meeks * container-menu.c (add_cb): selector update. * container.c (sample_app_add_component): update activation 2000-08-11 Michael Meeks * container.c (final_setup): make dependent on environment variable: BONOBO_MONIKER_TEST 2000-08-10 Michael Meeks * component.c (sample_site_add_frame): publicize and rename to (sample_client_site_add_frame): this. (add_frame_cb): upd. * container.c (sample_app_add_component): split part into (sample_app_add_embeddable): here, and publicize. (sample_app_add_embeddable): add a frame. 2000-08-09 Michael Meeks * container.c (final_setup): add moniker test code. * component.c (load_stream_cb): txt -> text. 2000-08-02 Michael Meeks * container.c (sample_app_exit): unref the UI handler here. (sample_app_shutdown, main): kill this kludge, this is now fixed in the UIHandler code. 2000-07-26 Michael Meeks * container-io.c (STORAGE_TYPE): change to efs. 2000-07-23 Michael Meeks * Massive clean, rename, re-write huge chunks, everything is now officialy my fault. * container-print.c (sample_app_print_preview): allow each component a larger, square space to render to. * container-menu.c: Prune all GUI conditionals, you just need to save a compound document and use it on startup to get this effect. (add_cb): use gnome_bonobo_select_id (about_cb): update authors / copyright. * container.c (sample_app_remove_component): don't do more work than neccessary, don't container_remove, just destroy the containing widget. Move into: * component.c (component_del): where it belongs. 2000-07-13 Michael Meeks * container-print.c (sample_app_print_preview): kill unref of print preview widget, and also context. * component.c (load_stream_cb): update to show exception nicely. 2000-07-12 Michael Meeks * container.c (sample_app_shutdown): unref the ui_handler. (main): hook in & add obejct_shutdown (sample_app_remove_component): remove ourselfs from the container 2000-07-10 Michael Meeks * component.c (component_del): unref the client site too. * container.c (sample_app_create): bump init size. 2000-07-06 Michael Meeks * container-io.c (save_component): unref the sub directory. * component.c: re-order to kill ugly prototypes. * container.c (sample_app_exit): unref not destroy container. * container-io.c (save_component): release the stream. (load_component_id): unref stream. (open_stream): remove; use CORBA interface instead. (sample_container_save): unref storage after use. * component-io.c: Totaly re-stucture, fix exception handling and the mess with CORBA_Environments. * component-io.h: update. 2000-07-05 Michael Meeks * component-io.c (component_save_id): use write_string as you should. 2000-07-03 Michael Meeks * container-io.c (load_component_id_stream_read): update. 2000-06-28 Michael Meeks * container-menu.c (sample_app_file_menu): add a placeholder. 2000-06-26 Michael Meeks * container-io.c (save_component): close the streams after opening them [ duh ]. 2000-06-24 Michael Meeks * container-io.c (sample_container_save): simplify logic. * component-io.c (component_load): add check on stream. * container-io.c: kill redundant prototypes. (open_stream): add mode flag. (create_stream, load_component_id ,load_component): use it. (load_component): free the id. (load_component_id_stream_read): re-write. (load_component_id): robustify. 2000-06-24 Michael Meeks * container-io.c (save_component): make it more robust. 2000-06-23 Michael Meeks * container-io.c (sample_container_load): use STORAGE_TYPE ("efs") define to help vfs switch. (sample_container_save): ditto. 2000-05-26 Dan Winship * component.c (load_stream_cb): * component-io.c (component_load, component_save): Update for Bonobo_PersistStream_{load,save} changes. 2000-05-22 ERDI Gergo * Makefile.am (sample_container_SOURCES): Add the new sources * container-filesel.[ch]: Separated file request GUI (idea from the original `sample-container' * component-io.[ch]: separated component-level IO from other component operations * container-io.h: Use consts whereever possible * container.c (final_setup): Removed a compile-time warning, and renamed `a' to something more informative 2000-05-05 Michael Meeks * container.c (sample_app_exit): kill redundant forward definitions. 2000-05-04 Michael Meeks * container.c (sample_app_create): return the app. (final_setup): load files. (main): use popt for args. 2000-05-03 Michael Meeks * container-menu.c: update shortcut to kill clash. 2000-04-24 ERDI Gergo * hello-container-print.[ch]: Printing * hello-container.h (hello_app_exit): New function to allow graceful exit from any point of the program * hello-container-menu.c (hello_app_create_menus): Create a default menu for the container (application-specific menu) * hello-container.c (hello_app_create): Create a menu for the components to use * hello-component.c (component_user_context_cb): Context menu implementation (component_print): Render a component to a print canvas 2000-04-23 ERDI Gergo * hello-container.c: Added compile-time option to use OAF instead of GOAD libbonoboui-2.24.5/samples/compound-doc/container/document.c0000644000076400007640000000644611173072741021054 00000000000000#include #include #include "config.h" #include "document.h" struct _SampleDocPrivate { GList *components; gchar *filename; BonoboStorage *storage; gboolean is_dirty; }; static GObjectClass *doc_parent_class; enum SIGNALS { COMPONENT_ADDED, COMPONENT_REMOVED, LAST_SIGNAL }; static guint signals [LAST_SIGNAL] = { 0 }; void sample_doc_finalize (GObject *obj) { SampleDoc *doc = SAMPLE_DOC (obj); GList *l; for (l = doc->priv->components; l; l = l->next) { g_object_unref (G_OBJECT (l->data)); } g_list_free (doc->priv->components); if (doc->priv->storage) bonobo_object_unref (doc->priv->storage); g_free (doc->priv->filename); g_free (doc->priv); doc_parent_class->finalize (obj); } static void sample_doc_class_init (GObjectClass *klass) { /* SampleDocClass *doc_class = SAMPLE_DOC_CLASS (klass); */ doc_parent_class = g_type_class_peek_parent (klass); signals [COMPONENT_ADDED] = g_signal_new ( "component_added", G_TYPE_FROM_CLASS (klass), G_SIGNAL_RUN_LAST, G_STRUCT_OFFSET (SampleDocClass, component_added), NULL, NULL, g_cclosure_marshal_VOID__POINTER, G_TYPE_NONE, 1, G_TYPE_POINTER); signals [COMPONENT_REMOVED] = g_signal_new ( "component_removed", G_TYPE_FROM_CLASS (klass), G_SIGNAL_RUN_LAST, G_STRUCT_OFFSET (SampleDocClass, component_removed), NULL, NULL, g_cclosure_marshal_VOID__POINTER, G_TYPE_NONE, 1, G_TYPE_POINTER); klass->finalize = sample_doc_finalize; } static void sample_doc_instance_init (GObject *obj) { SampleDoc *doc = SAMPLE_DOC (obj); doc->priv = g_new0 (SampleDocPrivate, 1); } GType sample_doc_get_type (void) { static GType type = 0; if (!type) { GTypeInfo info = { sizeof (SampleDocClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) sample_doc_class_init, NULL, NULL, /* class_data */ sizeof (SampleDoc), 0, /* n_preallocs */ (GInstanceInitFunc) sample_doc_instance_init }; type = g_type_register_static (G_TYPE_OBJECT, "SampleDoc", &info, 0); } return type; } SampleDoc * sample_doc_new (void) { SampleDoc *doc = g_object_new (SAMPLE_DOC_TYPE, NULL); return doc; } gchar * sample_doc_get_filename (SampleDoc *doc) { g_return_val_if_fail (SAMPLE_IS_DOC (doc), NULL); return g_strdup (doc->priv->filename); } gboolean sample_doc_is_dirty (SampleDoc *doc) { GList *l; g_return_val_if_fail (SAMPLE_IS_DOC (doc), FALSE); if (doc->priv->is_dirty) return TRUE; for (l = doc->priv->components; l; l = l->next) { SampleComponent *comp = (SampleComponent *) l->data; if (!comp) continue; if (sample_component_is_dirty (comp)) return TRUE; } return FALSE; } void sample_doc_add_component (SampleDoc *doc, gchar *iid) { SampleComponent *comp; g_return_if_fail (SAMPLE_IS_DOC (doc)); doc->priv->is_dirty = TRUE; comp = sample_component_new (iid); doc->priv->components = g_list_prepend (doc->priv->components, comp); g_signal_emit (G_OBJECT (doc), signals [COMPONENT_ADDED], 0, comp); } GList * sample_doc_get_components (SampleDoc *doc) { return g_list_copy (doc->priv->components); } void sample_doc_load (SampleDoc *doc, const gchar *filename) { g_warning ("No file load yet."); } void sample_doc_save (SampleDoc *doc, const gchar *filename) { g_warning ("No file save yet."); } libbonoboui-2.24.5/samples/container/0000775000076400007640000000000011546335131014552 500000000000000libbonoboui-2.24.5/samples/container/Bonobo_Sample_Container-ui.xml0000644000076400007640000000237211173072741022353 00000000000000 libbonoboui-2.24.5/samples/container/Makefile.am0000644000076400007640000000066411173072741016533 00000000000000noinst_PROGRAMS = bonobo-sample-container INCLUDES = \ -DGNOMELOCALEDIR=\""$(datadir)/locale"\" \ -I$(top_srcdir) \ $(BONOBOUI_CFLAGS) bonobo_sample_container_SOURCES = \ bonobo-sample-container.c bonobo_sample_container_LDADD = \ $(top_builddir)/bonobo/libbonoboui-2.la \ $(BONOBOUI_LIBS) \ $(INTLLIBS) uidir = $(datadir)/gnome-2.0/ui ui_DATA = Bonobo_Sample_Container-ui.xml EXTRA_DIST = $(ui_DATA)libbonoboui-2.24.5/samples/container/bonobo-sample-container.c0000644000076400007640000001215211173072741021353 00000000000000#undef GTK_DISABLE_DEPRECATED #include #include #include #define APPNAME "TestContainer" #define APPVERSION "1.0" #define UI_XML "Bonobo_Sample_Container-ui.xml" static gchar **files = NULL; static gboolean use_gtk_window = FALSE; static const GOptionEntry options[] = { { "gtk", 'g', 0, G_OPTION_ARG_NONE, &use_gtk_window, "Use GtkWindow instead of BonoboWindow (default)", NULL }, { G_OPTION_REMAINING, '\0', 0, G_OPTION_ARG_FILENAME_ARRAY, &files, NULL, "FILE" }, { NULL } }; /* * FIXME: TODO: * * + Add a Menu item 'activate' to do a control_frame_activate / * trigger a UI merge / de-merge. * + Add gtk-only mode */ static void window_destroyed (GtkWindow * window, gpointer user_data) { g_warning ("FIXME: should count toplevels"); bonobo_main_quit (); } static void window_title (GtkWindow * window, const char *moniker, gboolean use_gtk) { char *title; title = g_strdup_printf ("%s - in a %s", moniker, g_type_name_from_instance ((gpointer) window)); gtk_window_set_title (window, title); g_free (title); } static void verb_HelpAbout (BonoboUIComponent * uic, gpointer user_data, const char *cname) { g_message ("Unfortunately I cannot use gnome_about API - it would introduce more dependencies to libbonoboui"); } static void verb_FileExit (BonoboUIComponent * uic, gpointer user_data, const char *cname) { bonobo_main_quit (); } static void verb_Activate (BonoboUIComponent * uic, gpointer user_data, const char *cname) { bonobo_control_frame_control_activate (bonobo_widget_get_control_frame (BONOBO_WIDGET (bonobo_window_get_contents (BONOBO_WINDOW (user_data))))); } static BonoboUIVerb bonobo_app_verbs[] = { BONOBO_UI_VERB ("FileExit", verb_FileExit), BONOBO_UI_VERB ("HelpAbout", verb_HelpAbout), BONOBO_UI_VERB ("Activate", verb_Activate), BONOBO_UI_VERB_END }; static void window_create (const char *moniker, gboolean use_gtk) { GtkWidget *window; GtkWidget *control; BonoboUIContainer *ui_container; if (use_gtk) { window = gtk_window_new (GTK_WINDOW_TOPLEVEL); ui_container = CORBA_OBJECT_NIL; } else { BonoboUIComponent *ui_comp = bonobo_ui_component_new_default (); window = bonobo_window_new (APPNAME, APPNAME); ui_container = bonobo_window_get_ui_container (BONOBO_WINDOW (window)); bonobo_ui_component_set_container (ui_comp, BONOBO_OBJREF (ui_container), NULL); bonobo_ui_util_set_ui (ui_comp, "", UI_XML, APPNAME, NULL); bonobo_ui_component_add_verb_list_with_data (ui_comp, bonobo_app_verbs, window); } window_title (GTK_WINDOW (window), moniker, use_gtk); control = bonobo_widget_new_control (moniker, BONOBO_OBJREF (ui_container)); if (!control) { g_warning ("Couldn't create a control for '%s'", moniker); return; } if (use_gtk) { gtk_container_add (GTK_CONTAINER (window), control); } else bonobo_window_set_contents (BONOBO_WINDOW (window), control); g_signal_connect (window, "destroy", G_CALLBACK (window_destroyed ), NULL); gtk_widget_show_all (window); } int main (int argc, char *argv[]) { int i; GOptionContext *context; GnomeProgram *program; context = g_option_context_new (NULL); g_option_context_add_main_entries (context, options, "bonobo-sample-container"); program = gnome_program_init (APPNAME, APPVERSION, LIBBONOBOUI_MODULE, argc, argv, GNOME_PARAM_GOPTION_CONTEXT, context, GNOME_PARAM_NONE); /* Check for argument consistency. */ if (files == NULL) { g_message ("Must specify a filename"); return 1; } for (i = 0; i < g_strv_length (files); i++) { char *moniker; /* FIXME: we should do some auto-detection here */ moniker = g_strdup_printf ("file:%s", files[i]); window_create (moniker, use_gtk_window); } bonobo_main (); g_object_unref (program); return 0; } libbonoboui-2.24.5/samples/container/Makefile.in0000664000076400007640000004277211546334701016555 00000000000000# Makefile.in generated by automake 1.11.1 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, # Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY, to the extent permitted by law; without # even the implied warranty of MERCHANTABILITY or FITNESS FOR A # PARTICULAR PURPOSE. @SET_MAKE@ VPATH = @srcdir@ pkgdatadir = $(datadir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ pkglibdir = $(libdir)/@PACKAGE@ pkglibexecdir = $(libexecdir)/@PACKAGE@ am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd install_sh_DATA = $(install_sh) -c -m 644 install_sh_PROGRAM = $(install_sh) -c install_sh_SCRIPT = $(install_sh) -c INSTALL_HEADER = $(INSTALL_DATA) transform = $(program_transform_name) NORMAL_INSTALL = : PRE_INSTALL = : POST_INSTALL = : NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : build_triplet = @build@ host_triplet = @host@ noinst_PROGRAMS = bonobo-sample-container$(EXEEXT) subdir = samples/container DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/configure.in am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs CONFIG_HEADER = $(top_builddir)/config.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = PROGRAMS = $(noinst_PROGRAMS) am_bonobo_sample_container_OBJECTS = \ bonobo-sample-container.$(OBJEXT) bonobo_sample_container_OBJECTS = \ $(am_bonobo_sample_container_OBJECTS) am__DEPENDENCIES_1 = bonobo_sample_container_DEPENDENCIES = \ $(top_builddir)/bonobo/libbonoboui-2.la $(am__DEPENDENCIES_1) \ $(am__DEPENDENCIES_1) DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir) depcomp = $(SHELL) $(top_srcdir)/depcomp am__depfiles_maybe = depfiles am__mv = mv -f COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) LTCOMPILE = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \ --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) CCLD = $(CC) LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \ --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \ $(LDFLAGS) -o $@ SOURCES = $(bonobo_sample_container_SOURCES) DIST_SOURCES = $(bonobo_sample_container_SOURCES) am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; am__vpath_adj = case $$p in \ $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \ *) f=$$p;; \ esac; am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`; am__install_max = 40 am__nobase_strip_setup = \ srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'` am__nobase_strip = \ for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||" am__nobase_list = $(am__nobase_strip_setup); \ for p in $$list; do echo "$$p $$p"; done | \ sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \ $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \ if (++n[$$2] == $(am__install_max)) \ { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \ END { for (dir in files) print dir, files[dir] }' am__base_list = \ sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \ sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g' am__installdirs = "$(DESTDIR)$(uidir)" DATA = $(ui_DATA) ETAGS = etags CTAGS = ctags DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ACLOCAL_AMFLAGS = @ACLOCAL_AMFLAGS@ ALL_LINGUAS = @ALL_LINGUAS@ AMTAR = @AMTAR@ AR = @AR@ AS = @AS@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ AWK = @AWK@ BONOBOUI_CFLAGS = @BONOBOUI_CFLAGS@ BONOBOUI_GLADE_CFLAGS = @BONOBOUI_GLADE_CFLAGS@ BONOBOUI_GLADE_LIBS = @BONOBOUI_GLADE_LIBS@ BONOBOUI_LIBS = @BONOBOUI_LIBS@ BONOBOUI_SINGLE_INCLUDES = @BONOBOUI_SINGLE_INCLUDES@ CATALOGS = @CATALOGS@ CATOBJEXT = @CATOBJEXT@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ CYGPATH_W = @CYGPATH_W@ DATADIRNAME = @DATADIRNAME@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DUMPBIN = @DUMPBIN@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_MKENUMS = @GLIB_MKENUMS@ GMOFILES = @GMOFILES@ GMSGFMT = @GMSGFMT@ GREP = @GREP@ GTKDOC_CHECK = @GTKDOC_CHECK@ GTKDOC_MKPDF = @GTKDOC_MKPDF@ GTKDOC_REBASE = @GTKDOC_REBASE@ HTML_DIR = @HTML_DIR@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INSTOBJEXT = @INSTOBJEXT@ INTLLIBS = @INTLLIBS@ INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@ INTLTOOL_MERGE = @INTLTOOL_MERGE@ INTLTOOL_PERL = @INTLTOOL_PERL@ INTLTOOL_UPDATE = @INTLTOOL_UPDATE@ LD = @LD@ LDFLAGS = @LDFLAGS@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIPO = @LIPO@ LN_S = @LN_S@ LTLIBOBJS = @LTLIBOBJS@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MKDIR_P = @MKDIR_P@ MKINSTALLDIRS = @MKINSTALLDIRS@ MSGFMT = @MSGFMT@ MSGFMT_OPTS = @MSGFMT_OPTS@ MSGMERGE = @MSGMERGE@ NM = @NM@ NMEDIT = @NMEDIT@ OBJDUMP = @OBJDUMP@ OBJEXT = @OBJEXT@ OTOOL = @OTOOL@ OTOOL64 = @OTOOL64@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_URL = @PACKAGE_URL@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ PATH_TO_XRDB = @PATH_TO_XRDB@ PKG_CONFIG = @PKG_CONFIG@ POFILES = @POFILES@ POPT_LIBS = @POPT_LIBS@ POSUB = @POSUB@ PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@ PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@ RANLIB = @RANLIB@ SED = @SED@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ STRIP = @STRIP@ USE_NLS = @USE_NLS@ VERSION = @VERSION@ WARN_CFLAGS = @WARN_CFLAGS@ XGETTEXT = @XGETTEXT@ XMKMF = @XMKMF@ X_CFLAGS = @X_CFLAGS@ X_EXTRA_LIBS = @X_EXTRA_LIBS@ X_LIBS = @X_LIBS@ X_PRE_LIBS = @X_PRE_LIBS@ YACC = @YACC@ YFLAGS = @YFLAGS@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ abs_top_srcdir = @abs_top_srcdir@ ac_ct_CC = @ac_ct_CC@ ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ am__include = @am__include@ am__leading_dot = @am__leading_dot@ am__quote = @am__quote@ am__tar = @am__tar@ am__untar = @am__untar@ bindir = @bindir@ build = @build@ build_alias = @build_alias@ build_cpu = @build_cpu@ build_os = @build_os@ build_vendor = @build_vendor@ builddir = @builddir@ datadir = @datadir@ datarootdir = @datarootdir@ docdir = @docdir@ dvidir = @dvidir@ exec_prefix = @exec_prefix@ host = @host@ host_alias = @host_alias@ host_cpu = @host_cpu@ host_os = @host_os@ host_vendor = @host_vendor@ htmldir = @htmldir@ includedir = @includedir@ infodir = @infodir@ install_sh = @install_sh@ libdir = @libdir@ libexecdir = @libexecdir@ localedir = @localedir@ localstatedir = @localstatedir@ lt_ECHO = @lt_ECHO@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ sysconfdir = @sysconfdir@ target_alias = @target_alias@ top_build_prefix = @top_build_prefix@ top_builddir = @top_builddir@ top_srcdir = @top_srcdir@ INCLUDES = \ -DGNOMELOCALEDIR=\""$(datadir)/locale"\" \ -I$(top_srcdir) \ $(BONOBOUI_CFLAGS) bonobo_sample_container_SOURCES = \ bonobo-sample-container.c bonobo_sample_container_LDADD = \ $(top_builddir)/bonobo/libbonoboui-2.la \ $(BONOBOUI_LIBS) \ $(INTLLIBS) uidir = $(datadir)/gnome-2.0/ui ui_DATA = Bonobo_Sample_Container-ui.xml EXTRA_DIST = $(ui_DATA) all: all-am .SUFFIXES: .SUFFIXES: .c .lo .o .obj $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps) @for dep in $?; do \ case '$(am__configure_deps)' in \ *$$dep*) \ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ && { if test -f $@; then exit 0; else break; fi; }; \ exit 1;; \ esac; \ done; \ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign samples/container/Makefile'; \ $(am__cd) $(top_srcdir) && \ $(AUTOMAKE) --foreign samples/container/Makefile .PRECIOUS: Makefile Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status @case '$?' in \ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(am__aclocal_m4_deps): clean-noinstPROGRAMS: @list='$(noinst_PROGRAMS)'; test -n "$$list" || exit 0; \ echo " rm -f" $$list; \ rm -f $$list || exit $$?; \ test -n "$(EXEEXT)" || exit 0; \ list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \ echo " rm -f" $$list; \ rm -f $$list bonobo-sample-container$(EXEEXT): $(bonobo_sample_container_OBJECTS) $(bonobo_sample_container_DEPENDENCIES) @rm -f bonobo-sample-container$(EXEEXT) $(LINK) $(bonobo_sample_container_OBJECTS) $(bonobo_sample_container_LDADD) $(LIBS) mostlyclean-compile: -rm -f *.$(OBJEXT) distclean-compile: -rm -f *.tab.c @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bonobo-sample-container.Po@am__quote@ .c.o: @am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< @am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(COMPILE) -c $< .c.obj: @am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'` @am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(COMPILE) -c `$(CYGPATH_W) '$<'` .c.lo: @am__fastdepCC_TRUE@ $(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< @am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(LTCOMPILE) -c -o $@ $< mostlyclean-libtool: -rm -f *.lo clean-libtool: -rm -rf .libs _libs install-uiDATA: $(ui_DATA) @$(NORMAL_INSTALL) test -z "$(uidir)" || $(MKDIR_P) "$(DESTDIR)$(uidir)" @list='$(ui_DATA)'; test -n "$(uidir)" || list=; \ for p in $$list; do \ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ echo "$$d$$p"; \ done | $(am__base_list) | \ while read files; do \ echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(uidir)'"; \ $(INSTALL_DATA) $$files "$(DESTDIR)$(uidir)" || exit $$?; \ done uninstall-uiDATA: @$(NORMAL_UNINSTALL) @list='$(ui_DATA)'; test -n "$(uidir)" || list=; \ files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ test -n "$$files" || exit 0; \ echo " ( cd '$(DESTDIR)$(uidir)' && rm -f" $$files ")"; \ cd "$(DESTDIR)$(uidir)" && rm -f $$files ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ END { if (nonempty) { for (i in files) print i; }; }'`; \ mkid -fID $$unique tags: TAGS TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) set x; \ here=`pwd`; \ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ END { if (nonempty) { for (i in files) print i; }; }'`; \ shift; \ if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ test -n "$$unique" || unique=$$empty_fix; \ if test $$# -gt 0; then \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ "$$@" $$unique; \ else \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ $$unique; \ fi; \ fi ctags: CTAGS CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ END { if (nonempty) { for (i in files) print i; }; }'`; \ test -z "$(CTAGS_ARGS)$$unique" \ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ $$unique GTAGS: here=`$(am__cd) $(top_builddir) && pwd` \ && $(am__cd) $(top_srcdir) \ && gtags -i $(GTAGS_ARGS) "$$here" distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ dist_files=`for file in $$list; do echo $$file; done | \ sed -e "s|^$$srcdirstrip/||;t" \ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ case $$dist_files in \ */*) $(MKDIR_P) `echo "$$dist_files" | \ sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ sort -u` ;; \ esac; \ for file in $$dist_files; do \ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ if test -d $$d/$$file; then \ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ if test -d "$(distdir)/$$file"; then \ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ else \ test -f "$(distdir)/$$file" \ || cp -p $$d/$$file "$(distdir)/$$file" \ || exit 1; \ fi; \ done check-am: all-am check: check-am all-am: Makefile $(PROGRAMS) $(DATA) installdirs: for dir in "$(DESTDIR)$(uidir)"; do \ test -z "$$dir" || $(MKDIR_P) "$$dir"; \ done install: install-am install-exec: install-exec-am install-data: install-data-am uninstall: uninstall-am install-am: all-am @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am installcheck: installcheck-am install-strip: $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ `test -z '$(STRIP)' || \ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install mostlyclean-generic: clean-generic: distclean-generic: -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) maintainer-clean-generic: @echo "This command is intended for maintainers to use" @echo "it deletes files that may require special tools to rebuild." clean: clean-am clean-am: clean-generic clean-libtool clean-noinstPROGRAMS \ mostlyclean-am distclean: distclean-am -rm -rf ./$(DEPDIR) -rm -f Makefile distclean-am: clean-am distclean-compile distclean-generic \ distclean-tags dvi: dvi-am dvi-am: html: html-am html-am: info: info-am info-am: install-data-am: install-uiDATA install-dvi: install-dvi-am install-dvi-am: install-exec-am: install-html: install-html-am install-html-am: install-info: install-info-am install-info-am: install-man: install-pdf: install-pdf-am install-pdf-am: install-ps: install-ps-am install-ps-am: installcheck-am: maintainer-clean: maintainer-clean-am -rm -rf ./$(DEPDIR) -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic mostlyclean: mostlyclean-am mostlyclean-am: mostlyclean-compile mostlyclean-generic \ mostlyclean-libtool pdf: pdf-am pdf-am: ps: ps-am ps-am: uninstall-am: uninstall-uiDATA .MAKE: install-am install-strip .PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \ clean-libtool clean-noinstPROGRAMS ctags distclean \ distclean-compile distclean-generic distclean-libtool \ distclean-tags distdir dvi dvi-am html html-am info info-am \ install install-am install-data install-data-am install-dvi \ install-dvi-am install-exec install-exec-am install-html \ install-html-am install-info install-info-am install-man \ install-pdf install-pdf-am install-ps install-ps-am \ install-strip install-uiDATA installcheck installcheck-am \ installdirs maintainer-clean maintainer-clean-generic \ mostlyclean mostlyclean-compile mostlyclean-generic \ mostlyclean-libtool pdf pdf-am ps ps-am tags uninstall \ uninstall-am uninstall-uiDATA # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. .NOEXPORT: libbonoboui-2.24.5/samples/controls/0000775000076400007640000000000011546335131014433 500000000000000libbonoboui-2.24.5/samples/controls/Makefile.am0000664000076400007640000000137111546334570016417 00000000000000Bonobo_Sample_Controls.server.in: Bonobo_Sample_Controls.server.in.in sed -e "s|\@prefix\@|$(prefix)|" $< > $@ samplesdir = $(libdir)/bonobo-2.0/samples samples_PROGRAMS = bonobo-sample-controls-2 INCLUDES = \ -DGNOMELOCALEDIR=\""$(datadir)/locale"\" \ -I$(top_srcdir) \ $(BONOBOUI_CFLAGS) bonobo_sample_controls_2_SOURCES = \ bonobo-sample-controls.c bonobo_sample_controls_2_LDADD = \ $(top_builddir)/bonobo/libbonoboui-2.la \ $(BONOBOUI_LIBS) \ $(INTLLIBS) serverdir = $(libdir)/bonobo/servers server_in_files = Bonobo_Sample_Controls.server.in server_DATA = $(server_in_files:.server.in=.server) @INTLTOOL_SERVER_RULE@ EXTRA_DIST = Bonobo_Sample_Controls.server.in.in CLEANFILES = $(server_in_files) $(server_DATA) libbonoboui-2.24.5/samples/controls/Bonobo_Sample_Controls.server.in.in0000644000076400007640000000163111173072741023217 00000000000000 libbonoboui-2.24.5/samples/controls/bonobo-sample-controls.c0000644000076400007640000000604011173072741021114 00000000000000/* * bonobo-clock-control.c * * Author: * Michael Meeks (michael@ximian.com) * * Copyright 2001, Ximian, Inc. */ #undef GTK_DISABLE_DEPRECATED #include #include #include #include #undef USE_SCROLLED static void activate_cb (GtkEditable *editable, BonoboControl *control) { GtkWidget *dialog; dialog = gtk_message_dialog_new ( NULL, 0, GTK_MESSAGE_INFO, GTK_BUTTONS_OK, "This dialog demonstrates transient dialogs"); bonobo_control_set_transient_for ( control, GTK_WINDOW (dialog), NULL); gtk_dialog_run (GTK_DIALOG (dialog)); gtk_widget_destroy (dialog); } BonoboObject * bonobo_entry_control_new (void) { BonoboPropertyBag *pb; BonoboControl *control; GtkWidget *entry; GParamSpec **pspecs; guint n_pspecs; GtkWidget *box; int i; /* Create the control. */ box = gtk_vbox_new (FALSE, 0); for (i = 0; i < 3; i++) { entry = gtk_entry_new (); gtk_box_pack_start (GTK_BOX (box), entry, FALSE, FALSE, 0); gtk_widget_show (entry); } gtk_widget_show (box); #ifdef USE_SCROLLED { GtkWidget *canvas, *scrolled; GnomeCanvasItem *item; canvas = gnome_canvas_new (); gtk_widget_show (canvas); item = gnome_canvas_item_new ( gnome_canvas_root (GNOME_CANVAS (canvas)), GNOME_TYPE_CANVAS_WIDGET, "x", 0.0, "y", 0.0, "width", 100.0, "height", 100.0, "widget", box, NULL); gnome_canvas_item_show (item); scrolled = gtk_scrolled_window_new (NULL, NULL); gtk_scrolled_window_set_policy ( GTK_SCROLLED_WINDOW (scrolled), GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC); gtk_container_add ( GTK_CONTAINER (scrolled), canvas); gtk_widget_show (scrolled); control = bonobo_control_new (scrolled); } #else control = bonobo_control_new (box); #endif pb = bonobo_property_bag_new (NULL, NULL, NULL); bonobo_control_set_properties (control, BONOBO_OBJREF (pb), NULL); bonobo_object_unref (BONOBO_OBJECT (pb)); g_signal_connect ( GTK_OBJECT (entry), "activate", G_CALLBACK (activate_cb), control); pspecs = g_object_class_list_properties ( G_OBJECT_GET_CLASS (entry), &n_pspecs); bonobo_property_bag_map_params ( pb, G_OBJECT (entry), (const GParamSpec **)pspecs, n_pspecs); g_free (pspecs); bonobo_control_life_instrument (control); return BONOBO_OBJECT (control); } static BonoboObject * control_factory (BonoboGenericFactory *this, const char *object_id, void *data) { BonoboObject *object = NULL; g_return_val_if_fail (object_id != NULL, NULL); if (!strcmp (object_id, "OAFIID:Bonobo_Sample_Entry")) object = bonobo_entry_control_new (); return object; } int main (int argc, char *argv []) { int retval; if (!bonobo_ui_init ("bonobo-sample-controls-2", VERSION, &argc, argv)) g_error (_("Could not initialize Bonobo UI")); retval = bonobo_generic_factory_main ("OAFIID:Bonobo_Sample_ControlFactory", control_factory, NULL); return retval; } libbonoboui-2.24.5/samples/controls/Makefile.in0000664000076400007640000004731311546334701016432 00000000000000# Makefile.in generated by automake 1.11.1 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, # Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY, to the extent permitted by law; without # even the implied warranty of MERCHANTABILITY or FITNESS FOR A # PARTICULAR PURPOSE. @SET_MAKE@ VPATH = @srcdir@ pkgdatadir = $(datadir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ pkglibdir = $(libdir)/@PACKAGE@ pkglibexecdir = $(libexecdir)/@PACKAGE@ am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd install_sh_DATA = $(install_sh) -c -m 644 install_sh_PROGRAM = $(install_sh) -c install_sh_SCRIPT = $(install_sh) -c INSTALL_HEADER = $(INSTALL_DATA) transform = $(program_transform_name) NORMAL_INSTALL = : PRE_INSTALL = : POST_INSTALL = : NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : build_triplet = @build@ host_triplet = @host@ samples_PROGRAMS = bonobo-sample-controls-2$(EXEEXT) subdir = samples/controls DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/configure.in am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs CONFIG_HEADER = $(top_builddir)/config.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = am__installdirs = "$(DESTDIR)$(samplesdir)" "$(DESTDIR)$(serverdir)" PROGRAMS = $(samples_PROGRAMS) am_bonobo_sample_controls_2_OBJECTS = \ bonobo-sample-controls.$(OBJEXT) bonobo_sample_controls_2_OBJECTS = \ $(am_bonobo_sample_controls_2_OBJECTS) am__DEPENDENCIES_1 = bonobo_sample_controls_2_DEPENDENCIES = \ $(top_builddir)/bonobo/libbonoboui-2.la $(am__DEPENDENCIES_1) \ $(am__DEPENDENCIES_1) DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir) depcomp = $(SHELL) $(top_srcdir)/depcomp am__depfiles_maybe = depfiles am__mv = mv -f COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) LTCOMPILE = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \ --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) CCLD = $(CC) LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \ --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \ $(LDFLAGS) -o $@ SOURCES = $(bonobo_sample_controls_2_SOURCES) DIST_SOURCES = $(bonobo_sample_controls_2_SOURCES) am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; am__vpath_adj = case $$p in \ $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \ *) f=$$p;; \ esac; am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`; am__install_max = 40 am__nobase_strip_setup = \ srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'` am__nobase_strip = \ for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||" am__nobase_list = $(am__nobase_strip_setup); \ for p in $$list; do echo "$$p $$p"; done | \ sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \ $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \ if (++n[$$2] == $(am__install_max)) \ { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \ END { for (dir in files) print dir, files[dir] }' am__base_list = \ sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \ sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g' DATA = $(server_DATA) ETAGS = etags CTAGS = ctags DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ACLOCAL_AMFLAGS = @ACLOCAL_AMFLAGS@ ALL_LINGUAS = @ALL_LINGUAS@ AMTAR = @AMTAR@ AR = @AR@ AS = @AS@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ AWK = @AWK@ BONOBOUI_CFLAGS = @BONOBOUI_CFLAGS@ BONOBOUI_GLADE_CFLAGS = @BONOBOUI_GLADE_CFLAGS@ BONOBOUI_GLADE_LIBS = @BONOBOUI_GLADE_LIBS@ BONOBOUI_LIBS = @BONOBOUI_LIBS@ BONOBOUI_SINGLE_INCLUDES = @BONOBOUI_SINGLE_INCLUDES@ CATALOGS = @CATALOGS@ CATOBJEXT = @CATOBJEXT@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ CYGPATH_W = @CYGPATH_W@ DATADIRNAME = @DATADIRNAME@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DUMPBIN = @DUMPBIN@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GLIB_MKENUMS = @GLIB_MKENUMS@ GMOFILES = @GMOFILES@ GMSGFMT = @GMSGFMT@ GREP = @GREP@ GTKDOC_CHECK = @GTKDOC_CHECK@ GTKDOC_MKPDF = @GTKDOC_MKPDF@ GTKDOC_REBASE = @GTKDOC_REBASE@ HTML_DIR = @HTML_DIR@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INSTOBJEXT = @INSTOBJEXT@ INTLLIBS = @INTLLIBS@ INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@ INTLTOOL_MERGE = @INTLTOOL_MERGE@ INTLTOOL_PERL = @INTLTOOL_PERL@ INTLTOOL_UPDATE = @INTLTOOL_UPDATE@ LD = @LD@ LDFLAGS = @LDFLAGS@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIPO = @LIPO@ LN_S = @LN_S@ LTLIBOBJS = @LTLIBOBJS@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MKDIR_P = @MKDIR_P@ MKINSTALLDIRS = @MKINSTALLDIRS@ MSGFMT = @MSGFMT@ MSGFMT_OPTS = @MSGFMT_OPTS@ MSGMERGE = @MSGMERGE@ NM = @NM@ NMEDIT = @NMEDIT@ OBJDUMP = @OBJDUMP@ OBJEXT = @OBJEXT@ OTOOL = @OTOOL@ OTOOL64 = @OTOOL64@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_URL = @PACKAGE_URL@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ PATH_TO_XRDB = @PATH_TO_XRDB@ PKG_CONFIG = @PKG_CONFIG@ POFILES = @POFILES@ POPT_LIBS = @POPT_LIBS@ POSUB = @POSUB@ PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@ PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@ RANLIB = @RANLIB@ SED = @SED@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ STRIP = @STRIP@ USE_NLS = @USE_NLS@ VERSION = @VERSION@ WARN_CFLAGS = @WARN_CFLAGS@ XGETTEXT = @XGETTEXT@ XMKMF = @XMKMF@ X_CFLAGS = @X_CFLAGS@ X_EXTRA_LIBS = @X_EXTRA_LIBS@ X_LIBS = @X_LIBS@ X_PRE_LIBS = @X_PRE_LIBS@ YACC = @YACC@ YFLAGS = @YFLAGS@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ abs_top_srcdir = @abs_top_srcdir@ ac_ct_CC = @ac_ct_CC@ ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ am__include = @am__include@ am__leading_dot = @am__leading_dot@ am__quote = @am__quote@ am__tar = @am__tar@ am__untar = @am__untar@ bindir = @bindir@ build = @build@ build_alias = @build_alias@ build_cpu = @build_cpu@ build_os = @build_os@ build_vendor = @build_vendor@ builddir = @builddir@ datadir = @datadir@ datarootdir = @datarootdir@ docdir = @docdir@ dvidir = @dvidir@ exec_prefix = @exec_prefix@ host = @host@ host_alias = @host_alias@ host_cpu = @host_cpu@ host_os = @host_os@ host_vendor = @host_vendor@ htmldir = @htmldir@ includedir = @includedir@ infodir = @infodir@ install_sh = @install_sh@ libdir = @libdir@ libexecdir = @libexecdir@ localedir = @localedir@ localstatedir = @localstatedir@ lt_ECHO = @lt_ECHO@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ sysconfdir = @sysconfdir@ target_alias = @target_alias@ top_build_prefix = @top_build_prefix@ top_builddir = @top_builddir@ top_srcdir = @top_srcdir@ samplesdir = $(libdir)/bonobo-2.0/samples INCLUDES = \ -DGNOMELOCALEDIR=\""$(datadir)/locale"\" \ -I$(top_srcdir) \ $(BONOBOUI_CFLAGS) bonobo_sample_controls_2_SOURCES = \ bonobo-sample-controls.c bonobo_sample_controls_2_LDADD = \ $(top_builddir)/bonobo/libbonoboui-2.la \ $(BONOBOUI_LIBS) \ $(INTLLIBS) serverdir = $(libdir)/bonobo/servers server_in_files = Bonobo_Sample_Controls.server.in server_DATA = $(server_in_files:.server.in=.server) EXTRA_DIST = Bonobo_Sample_Controls.server.in.in CLEANFILES = $(server_in_files) $(server_DATA) all: all-am .SUFFIXES: .SUFFIXES: .c .lo .o .obj $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps) @for dep in $?; do \ case '$(am__configure_deps)' in \ *$$dep*) \ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ && { if test -f $@; then exit 0; else break; fi; }; \ exit 1;; \ esac; \ done; \ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign samples/controls/Makefile'; \ $(am__cd) $(top_srcdir) && \ $(AUTOMAKE) --foreign samples/controls/Makefile .PRECIOUS: Makefile Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status @case '$?' in \ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(am__aclocal_m4_deps): install-samplesPROGRAMS: $(samples_PROGRAMS) @$(NORMAL_INSTALL) test -z "$(samplesdir)" || $(MKDIR_P) "$(DESTDIR)$(samplesdir)" @list='$(samples_PROGRAMS)'; test -n "$(samplesdir)" || list=; \ for p in $$list; do echo "$$p $$p"; done | \ sed 's/$(EXEEXT)$$//' | \ while read p p1; do if test -f $$p || test -f $$p1; \ then echo "$$p"; echo "$$p"; else :; fi; \ done | \ sed -e 'p;s,.*/,,;n;h' -e 's|.*|.|' \ -e 'p;x;s,.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/' | \ sed 'N;N;N;s,\n, ,g' | \ $(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1 } \ { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \ if ($$2 == $$4) files[d] = files[d] " " $$1; \ else { print "f", $$3 "/" $$4, $$1; } } \ END { for (d in files) print "f", d, files[d] }' | \ while read type dir files; do \ if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \ test -z "$$files" || { \ echo " $(INSTALL_PROGRAM_ENV) $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL_PROGRAM) $$files '$(DESTDIR)$(samplesdir)$$dir'"; \ $(INSTALL_PROGRAM_ENV) $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL_PROGRAM) $$files "$(DESTDIR)$(samplesdir)$$dir" || exit $$?; \ } \ ; done uninstall-samplesPROGRAMS: @$(NORMAL_UNINSTALL) @list='$(samples_PROGRAMS)'; test -n "$(samplesdir)" || list=; \ files=`for p in $$list; do echo "$$p"; done | \ sed -e 'h;s,^.*/,,;s/$(EXEEXT)$$//;$(transform)' \ -e 's/$$/$(EXEEXT)/' `; \ test -n "$$list" || exit 0; \ echo " ( cd '$(DESTDIR)$(samplesdir)' && rm -f" $$files ")"; \ cd "$(DESTDIR)$(samplesdir)" && rm -f $$files clean-samplesPROGRAMS: @list='$(samples_PROGRAMS)'; test -n "$$list" || exit 0; \ echo " rm -f" $$list; \ rm -f $$list || exit $$?; \ test -n "$(EXEEXT)" || exit 0; \ list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \ echo " rm -f" $$list; \ rm -f $$list bonobo-sample-controls-2$(EXEEXT): $(bonobo_sample_controls_2_OBJECTS) $(bonobo_sample_controls_2_DEPENDENCIES) @rm -f bonobo-sample-controls-2$(EXEEXT) $(LINK) $(bonobo_sample_controls_2_OBJECTS) $(bonobo_sample_controls_2_LDADD) $(LIBS) mostlyclean-compile: -rm -f *.$(OBJEXT) distclean-compile: -rm -f *.tab.c @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bonobo-sample-controls.Po@am__quote@ .c.o: @am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< @am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(COMPILE) -c $< .c.obj: @am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'` @am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(COMPILE) -c `$(CYGPATH_W) '$<'` .c.lo: @am__fastdepCC_TRUE@ $(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< @am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(LTCOMPILE) -c -o $@ $< mostlyclean-libtool: -rm -f *.lo clean-libtool: -rm -rf .libs _libs install-serverDATA: $(server_DATA) @$(NORMAL_INSTALL) test -z "$(serverdir)" || $(MKDIR_P) "$(DESTDIR)$(serverdir)" @list='$(server_DATA)'; test -n "$(serverdir)" || list=; \ for p in $$list; do \ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ echo "$$d$$p"; \ done | $(am__base_list) | \ while read files; do \ echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(serverdir)'"; \ $(INSTALL_DATA) $$files "$(DESTDIR)$(serverdir)" || exit $$?; \ done uninstall-serverDATA: @$(NORMAL_UNINSTALL) @list='$(server_DATA)'; test -n "$(serverdir)" || list=; \ files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ test -n "$$files" || exit 0; \ echo " ( cd '$(DESTDIR)$(serverdir)' && rm -f" $$files ")"; \ cd "$(DESTDIR)$(serverdir)" && rm -f $$files ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ END { if (nonempty) { for (i in files) print i; }; }'`; \ mkid -fID $$unique tags: TAGS TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) set x; \ here=`pwd`; \ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ END { if (nonempty) { for (i in files) print i; }; }'`; \ shift; \ if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ test -n "$$unique" || unique=$$empty_fix; \ if test $$# -gt 0; then \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ "$$@" $$unique; \ else \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ $$unique; \ fi; \ fi ctags: CTAGS CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ END { if (nonempty) { for (i in files) print i; }; }'`; \ test -z "$(CTAGS_ARGS)$$unique" \ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ $$unique GTAGS: here=`$(am__cd) $(top_builddir) && pwd` \ && $(am__cd) $(top_srcdir) \ && gtags -i $(GTAGS_ARGS) "$$here" distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ dist_files=`for file in $$list; do echo $$file; done | \ sed -e "s|^$$srcdirstrip/||;t" \ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ case $$dist_files in \ */*) $(MKDIR_P) `echo "$$dist_files" | \ sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ sort -u` ;; \ esac; \ for file in $$dist_files; do \ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ if test -d $$d/$$file; then \ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ if test -d "$(distdir)/$$file"; then \ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ else \ test -f "$(distdir)/$$file" \ || cp -p $$d/$$file "$(distdir)/$$file" \ || exit 1; \ fi; \ done check-am: all-am check: check-am all-am: Makefile $(PROGRAMS) $(DATA) installdirs: for dir in "$(DESTDIR)$(samplesdir)" "$(DESTDIR)$(serverdir)"; do \ test -z "$$dir" || $(MKDIR_P) "$$dir"; \ done install: install-am install-exec: install-exec-am install-data: install-data-am uninstall: uninstall-am install-am: all-am @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am installcheck: installcheck-am install-strip: $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ `test -z '$(STRIP)' || \ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install mostlyclean-generic: clean-generic: -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES) distclean-generic: -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) maintainer-clean-generic: @echo "This command is intended for maintainers to use" @echo "it deletes files that may require special tools to rebuild." clean: clean-am clean-am: clean-generic clean-libtool clean-samplesPROGRAMS \ mostlyclean-am distclean: distclean-am -rm -rf ./$(DEPDIR) -rm -f Makefile distclean-am: clean-am distclean-compile distclean-generic \ distclean-tags dvi: dvi-am dvi-am: html: html-am html-am: info: info-am info-am: install-data-am: install-samplesPROGRAMS install-serverDATA install-dvi: install-dvi-am install-dvi-am: install-exec-am: install-html: install-html-am install-html-am: install-info: install-info-am install-info-am: install-man: install-pdf: install-pdf-am install-pdf-am: install-ps: install-ps-am install-ps-am: installcheck-am: maintainer-clean: maintainer-clean-am -rm -rf ./$(DEPDIR) -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic mostlyclean: mostlyclean-am mostlyclean-am: mostlyclean-compile mostlyclean-generic \ mostlyclean-libtool pdf: pdf-am pdf-am: ps: ps-am ps-am: uninstall-am: uninstall-samplesPROGRAMS uninstall-serverDATA .MAKE: install-am install-strip .PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \ clean-libtool clean-samplesPROGRAMS ctags distclean \ distclean-compile distclean-generic distclean-libtool \ distclean-tags distdir dvi dvi-am html html-am info info-am \ install install-am install-data install-data-am install-dvi \ install-dvi-am install-exec install-exec-am install-html \ install-html-am install-info install-info-am install-man \ install-pdf install-pdf-am install-ps install-ps-am \ install-samplesPROGRAMS install-serverDATA install-strip \ installcheck installcheck-am installdirs maintainer-clean \ maintainer-clean-generic mostlyclean mostlyclean-compile \ mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \ tags uninstall uninstall-am uninstall-samplesPROGRAMS \ uninstall-serverDATA Bonobo_Sample_Controls.server.in: Bonobo_Sample_Controls.server.in.in sed -e "s|\@prefix\@|$(prefix)|" $< > $@ @INTLTOOL_SERVER_RULE@ # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. .NOEXPORT: libbonoboui-2.24.5/aclocal.m40000664000076400007640000126510511546334675012732 00000000000000# generated automatically by aclocal 1.11.1 -*- Autoconf -*- # Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, # 2005, 2006, 2007, 2008, 2009 Free Software Foundation, Inc. # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY, to the extent permitted by law; without # even the implied warranty of MERCHANTABILITY or FITNESS FOR A # PARTICULAR PURPOSE. m4_ifndef([AC_AUTOCONF_VERSION], [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl m4_if(m4_defn([AC_AUTOCONF_VERSION]), [2.65],, [m4_warning([this file was generated for autoconf 2.65. You have another version of autoconf. It may work, but is not guaranteed to. If you have problems, you may need to regenerate the build system entirely. To do so, use the procedure documented by the package, typically `autoreconf'.])]) # Copyright (C) 2002, 2003, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # AM_AUTOMAKE_VERSION(VERSION) # ---------------------------- # Automake X.Y traces this macro to ensure aclocal.m4 has been # generated from the m4 files accompanying Automake X.Y. # (This private macro should not be called outside this file.) AC_DEFUN([AM_AUTOMAKE_VERSION], [am__api_version='1.11' dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to dnl require some minimum version. Point them to the right macro. m4_if([$1], [1.11.1], [], [AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl ]) # _AM_AUTOCONF_VERSION(VERSION) # ----------------------------- # aclocal traces this macro to find the Autoconf version. # This is a private macro too. Using m4_define simplifies # the logic in aclocal, which can simply ignore this definition. m4_define([_AM_AUTOCONF_VERSION], []) # AM_SET_CURRENT_AUTOMAKE_VERSION # ------------------------------- # Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced. # This function is AC_REQUIREd by AM_INIT_AUTOMAKE. AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION], [AM_AUTOMAKE_VERSION([1.11.1])dnl m4_ifndef([AC_AUTOCONF_VERSION], [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl _AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))]) # AM_AUX_DIR_EXPAND -*- Autoconf -*- # Copyright (C) 2001, 2003, 2005 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # For projects using AC_CONFIG_AUX_DIR([foo]), Autoconf sets # $ac_aux_dir to `$srcdir/foo'. In other projects, it is set to # `$srcdir', `$srcdir/..', or `$srcdir/../..'. # # Of course, Automake must honor this variable whenever it calls a # tool from the auxiliary directory. The problem is that $srcdir (and # therefore $ac_aux_dir as well) can be either absolute or relative, # depending on how configure is run. This is pretty annoying, since # it makes $ac_aux_dir quite unusable in subdirectories: in the top # source directory, any form will work fine, but in subdirectories a # relative path needs to be adjusted first. # # $ac_aux_dir/missing # fails when called from a subdirectory if $ac_aux_dir is relative # $top_srcdir/$ac_aux_dir/missing # fails if $ac_aux_dir is absolute, # fails when called from a subdirectory in a VPATH build with # a relative $ac_aux_dir # # The reason of the latter failure is that $top_srcdir and $ac_aux_dir # are both prefixed by $srcdir. In an in-source build this is usually # harmless because $srcdir is `.', but things will broke when you # start a VPATH build or use an absolute $srcdir. # # So we could use something similar to $top_srcdir/$ac_aux_dir/missing, # iff we strip the leading $srcdir from $ac_aux_dir. That would be: # am_aux_dir='\$(top_srcdir)/'`expr "$ac_aux_dir" : "$srcdir//*\(.*\)"` # and then we would define $MISSING as # MISSING="\${SHELL} $am_aux_dir/missing" # This will work as long as MISSING is not called from configure, because # unfortunately $(top_srcdir) has no meaning in configure. # However there are other variables, like CC, which are often used in # configure, and could therefore not use this "fixed" $ac_aux_dir. # # Another solution, used here, is to always expand $ac_aux_dir to an # absolute PATH. The drawback is that using absolute paths prevent a # configured tree to be moved without reconfiguration. AC_DEFUN([AM_AUX_DIR_EXPAND], [dnl Rely on autoconf to set up CDPATH properly. AC_PREREQ([2.50])dnl # expand $ac_aux_dir to an absolute path am_aux_dir=`cd $ac_aux_dir && pwd` ]) # AM_CONDITIONAL -*- Autoconf -*- # Copyright (C) 1997, 2000, 2001, 2003, 2004, 2005, 2006, 2008 # Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # serial 9 # AM_CONDITIONAL(NAME, SHELL-CONDITION) # ------------------------------------- # Define a conditional. AC_DEFUN([AM_CONDITIONAL], [AC_PREREQ(2.52)dnl ifelse([$1], [TRUE], [AC_FATAL([$0: invalid condition: $1])], [$1], [FALSE], [AC_FATAL([$0: invalid condition: $1])])dnl AC_SUBST([$1_TRUE])dnl AC_SUBST([$1_FALSE])dnl _AM_SUBST_NOTMAKE([$1_TRUE])dnl _AM_SUBST_NOTMAKE([$1_FALSE])dnl m4_define([_AM_COND_VALUE_$1], [$2])dnl if $2; then $1_TRUE= $1_FALSE='#' else $1_TRUE='#' $1_FALSE= fi AC_CONFIG_COMMANDS_PRE( [if test -z "${$1_TRUE}" && test -z "${$1_FALSE}"; then AC_MSG_ERROR([[conditional "$1" was never defined. Usually this means the macro was only invoked conditionally.]]) fi])]) # Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2009 # Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # serial 10 # There are a few dirty hacks below to avoid letting `AC_PROG_CC' be # written in clear, in which case automake, when reading aclocal.m4, # will think it sees a *use*, and therefore will trigger all it's # C support machinery. Also note that it means that autoscan, seeing # CC etc. in the Makefile, will ask for an AC_PROG_CC use... # _AM_DEPENDENCIES(NAME) # ---------------------- # See how the compiler implements dependency checking. # NAME is "CC", "CXX", "GCJ", or "OBJC". # We try a few techniques and use that to set a single cache variable. # # We don't AC_REQUIRE the corresponding AC_PROG_CC since the latter was # modified to invoke _AM_DEPENDENCIES(CC); we would have a circular # dependency, and given that the user is not expected to run this macro, # just rely on AC_PROG_CC. AC_DEFUN([_AM_DEPENDENCIES], [AC_REQUIRE([AM_SET_DEPDIR])dnl AC_REQUIRE([AM_OUTPUT_DEPENDENCY_COMMANDS])dnl AC_REQUIRE([AM_MAKE_INCLUDE])dnl AC_REQUIRE([AM_DEP_TRACK])dnl ifelse([$1], CC, [depcc="$CC" am_compiler_list=], [$1], CXX, [depcc="$CXX" am_compiler_list=], [$1], OBJC, [depcc="$OBJC" am_compiler_list='gcc3 gcc'], [$1], UPC, [depcc="$UPC" am_compiler_list=], [$1], GCJ, [depcc="$GCJ" am_compiler_list='gcc3 gcc'], [depcc="$$1" am_compiler_list=]) AC_CACHE_CHECK([dependency style of $depcc], [am_cv_$1_dependencies_compiler_type], [if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then # We make a subdir and do the tests there. Otherwise we can end up # making bogus files that we don't know about and never remove. For # instance it was reported that on HP-UX the gcc test will end up # making a dummy file named `D' -- because `-MD' means `put the output # in D'. mkdir conftest.dir # Copy depcomp to subdir because otherwise we won't find it if we're # using a relative directory. cp "$am_depcomp" conftest.dir cd conftest.dir # We will build objects and dependencies in a subdirectory because # it helps to detect inapplicable dependency modes. For instance # both Tru64's cc and ICC support -MD to output dependencies as a # side effect of compilation, but ICC will put the dependencies in # the current directory while Tru64 will put them in the object # directory. mkdir sub am_cv_$1_dependencies_compiler_type=none if test "$am_compiler_list" = ""; then am_compiler_list=`sed -n ['s/^#*\([a-zA-Z0-9]*\))$/\1/p'] < ./depcomp` fi am__universal=false m4_case([$1], [CC], [case " $depcc " in #( *\ -arch\ *\ -arch\ *) am__universal=true ;; esac], [CXX], [case " $depcc " in #( *\ -arch\ *\ -arch\ *) am__universal=true ;; esac]) for depmode in $am_compiler_list; do # Setup a source with many dependencies, because some compilers # like to wrap large dependency lists on column 80 (with \), and # we should not choose a depcomp mode which is confused by this. # # We need to recreate these files for each test, as the compiler may # overwrite some of them when testing with obscure command lines. # This happens at least with the AIX C compiler. : > sub/conftest.c for i in 1 2 3 4 5 6; do echo '#include "conftst'$i'.h"' >> sub/conftest.c # Using `: > sub/conftst$i.h' creates only sub/conftst1.h with # Solaris 8's {/usr,}/bin/sh. touch sub/conftst$i.h done echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf # We check with `-c' and `-o' for the sake of the "dashmstdout" # mode. It turns out that the SunPro C++ compiler does not properly # handle `-M -o', and we need to detect this. Also, some Intel # versions had trouble with output in subdirs am__obj=sub/conftest.${OBJEXT-o} am__minus_obj="-o $am__obj" case $depmode in gcc) # This depmode causes a compiler race in universal mode. test "$am__universal" = false || continue ;; nosideeffect) # after this tag, mechanisms are not by side-effect, so they'll # only be used when explicitly requested if test "x$enable_dependency_tracking" = xyes; then continue else break fi ;; msvisualcpp | msvcmsys) # This compiler won't grok `-c -o', but also, the minuso test has # not run yet. These depmodes are late enough in the game, and # so weak that their functioning should not be impacted. am__obj=conftest.${OBJEXT-o} am__minus_obj= ;; none) break ;; esac if depmode=$depmode \ source=sub/conftest.c object=$am__obj \ depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \ $SHELL ./depcomp $depcc -c $am__minus_obj sub/conftest.c \ >/dev/null 2>conftest.err && grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 && grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 && grep $am__obj sub/conftest.Po > /dev/null 2>&1 && ${MAKE-make} -s -f confmf > /dev/null 2>&1; then # icc doesn't choke on unknown options, it will just issue warnings # or remarks (even with -Werror). So we grep stderr for any message # that says an option was ignored or not supported. # When given -MP, icc 7.0 and 7.1 complain thusly: # icc: Command line warning: ignoring option '-M'; no argument required # The diagnosis changed in icc 8.0: # icc: Command line remark: option '-MP' not supported if (grep 'ignoring option' conftest.err || grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else am_cv_$1_dependencies_compiler_type=$depmode break fi fi done cd .. rm -rf conftest.dir else am_cv_$1_dependencies_compiler_type=none fi ]) AC_SUBST([$1DEPMODE], [depmode=$am_cv_$1_dependencies_compiler_type]) AM_CONDITIONAL([am__fastdep$1], [ test "x$enable_dependency_tracking" != xno \ && test "$am_cv_$1_dependencies_compiler_type" = gcc3]) ]) # AM_SET_DEPDIR # ------------- # Choose a directory name for dependency files. # This macro is AC_REQUIREd in _AM_DEPENDENCIES AC_DEFUN([AM_SET_DEPDIR], [AC_REQUIRE([AM_SET_LEADING_DOT])dnl AC_SUBST([DEPDIR], ["${am__leading_dot}deps"])dnl ]) # AM_DEP_TRACK # ------------ AC_DEFUN([AM_DEP_TRACK], [AC_ARG_ENABLE(dependency-tracking, [ --disable-dependency-tracking speeds up one-time build --enable-dependency-tracking do not reject slow dependency extractors]) if test "x$enable_dependency_tracking" != xno; then am_depcomp="$ac_aux_dir/depcomp" AMDEPBACKSLASH='\' fi AM_CONDITIONAL([AMDEP], [test "x$enable_dependency_tracking" != xno]) AC_SUBST([AMDEPBACKSLASH])dnl _AM_SUBST_NOTMAKE([AMDEPBACKSLASH])dnl ]) # Generate code to set up dependency tracking. -*- Autoconf -*- # Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2008 # Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. #serial 5 # _AM_OUTPUT_DEPENDENCY_COMMANDS # ------------------------------ AC_DEFUN([_AM_OUTPUT_DEPENDENCY_COMMANDS], [{ # Autoconf 2.62 quotes --file arguments for eval, but not when files # are listed without --file. Let's play safe and only enable the eval # if we detect the quoting. case $CONFIG_FILES in *\'*) eval set x "$CONFIG_FILES" ;; *) set x $CONFIG_FILES ;; esac shift for mf do # Strip MF so we end up with the name of the file. mf=`echo "$mf" | sed -e 's/:.*$//'` # Check whether this is an Automake generated Makefile or not. # We used to match only the files named `Makefile.in', but # some people rename them; so instead we look at the file content. # Grep'ing the first line is not enough: some people post-process # each Makefile.in and add a new line on top of each file to say so. # Grep'ing the whole file is not good either: AIX grep has a line # limit of 2048, but all sed's we know have understand at least 4000. if sed -n 's,^#.*generated by automake.*,X,p' "$mf" | grep X >/dev/null 2>&1; then dirpart=`AS_DIRNAME("$mf")` else continue fi # Extract the definition of DEPDIR, am__include, and am__quote # from the Makefile without running `make'. DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"` test -z "$DEPDIR" && continue am__include=`sed -n 's/^am__include = //p' < "$mf"` test -z "am__include" && continue am__quote=`sed -n 's/^am__quote = //p' < "$mf"` # When using ansi2knr, U may be empty or an underscore; expand it U=`sed -n 's/^U = //p' < "$mf"` # Find all dependency output files, they are included files with # $(DEPDIR) in their names. We invoke sed twice because it is the # simplest approach to changing $(DEPDIR) to its actual value in the # expansion. for file in `sed -n " s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \ sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do # Make sure the directory exists. test -f "$dirpart/$file" && continue fdir=`AS_DIRNAME(["$file"])` AS_MKDIR_P([$dirpart/$fdir]) # echo "creating $dirpart/$file" echo '# dummy' > "$dirpart/$file" done done } ])# _AM_OUTPUT_DEPENDENCY_COMMANDS # AM_OUTPUT_DEPENDENCY_COMMANDS # ----------------------------- # This macro should only be invoked once -- use via AC_REQUIRE. # # This code is only required when automatic dependency tracking # is enabled. FIXME. This creates each `.P' file that we will # need in order to bootstrap the dependency handling code. AC_DEFUN([AM_OUTPUT_DEPENDENCY_COMMANDS], [AC_CONFIG_COMMANDS([depfiles], [test x"$AMDEP_TRUE" != x"" || _AM_OUTPUT_DEPENDENCY_COMMANDS], [AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir"]) ]) # Do all the work for Automake. -*- Autoconf -*- # Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, # 2005, 2006, 2008, 2009 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # serial 16 # This macro actually does too much. Some checks are only needed if # your package does certain things. But this isn't really a big deal. # AM_INIT_AUTOMAKE(PACKAGE, VERSION, [NO-DEFINE]) # AM_INIT_AUTOMAKE([OPTIONS]) # ----------------------------------------------- # The call with PACKAGE and VERSION arguments is the old style # call (pre autoconf-2.50), which is being phased out. PACKAGE # and VERSION should now be passed to AC_INIT and removed from # the call to AM_INIT_AUTOMAKE. # We support both call styles for the transition. After # the next Automake release, Autoconf can make the AC_INIT # arguments mandatory, and then we can depend on a new Autoconf # release and drop the old call support. AC_DEFUN([AM_INIT_AUTOMAKE], [AC_PREREQ([2.62])dnl dnl Autoconf wants to disallow AM_ names. We explicitly allow dnl the ones we care about. m4_pattern_allow([^AM_[A-Z]+FLAGS$])dnl AC_REQUIRE([AM_SET_CURRENT_AUTOMAKE_VERSION])dnl AC_REQUIRE([AC_PROG_INSTALL])dnl if test "`cd $srcdir && pwd`" != "`pwd`"; then # Use -I$(srcdir) only when $(srcdir) != ., so that make's output # is not polluted with repeated "-I." AC_SUBST([am__isrc], [' -I$(srcdir)'])_AM_SUBST_NOTMAKE([am__isrc])dnl # test to see if srcdir already configured if test -f $srcdir/config.status; then AC_MSG_ERROR([source directory already configured; run "make distclean" there first]) fi fi # test whether we have cygpath if test -z "$CYGPATH_W"; then if (cygpath --version) >/dev/null 2>/dev/null; then CYGPATH_W='cygpath -w' else CYGPATH_W=echo fi fi AC_SUBST([CYGPATH_W]) # Define the identity of the package. dnl Distinguish between old-style and new-style calls. m4_ifval([$2], [m4_ifval([$3], [_AM_SET_OPTION([no-define])])dnl AC_SUBST([PACKAGE], [$1])dnl AC_SUBST([VERSION], [$2])], [_AM_SET_OPTIONS([$1])dnl dnl Diagnose old-style AC_INIT with new-style AM_AUTOMAKE_INIT. m4_if(m4_ifdef([AC_PACKAGE_NAME], 1)m4_ifdef([AC_PACKAGE_VERSION], 1), 11,, [m4_fatal([AC_INIT should be called with package and version arguments])])dnl AC_SUBST([PACKAGE], ['AC_PACKAGE_TARNAME'])dnl AC_SUBST([VERSION], ['AC_PACKAGE_VERSION'])])dnl _AM_IF_OPTION([no-define],, [AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE", [Name of package]) AC_DEFINE_UNQUOTED(VERSION, "$VERSION", [Version number of package])])dnl # Some tools Automake needs. AC_REQUIRE([AM_SANITY_CHECK])dnl AC_REQUIRE([AC_ARG_PROGRAM])dnl AM_MISSING_PROG(ACLOCAL, aclocal-${am__api_version}) AM_MISSING_PROG(AUTOCONF, autoconf) AM_MISSING_PROG(AUTOMAKE, automake-${am__api_version}) AM_MISSING_PROG(AUTOHEADER, autoheader) AM_MISSING_PROG(MAKEINFO, makeinfo) AC_REQUIRE([AM_PROG_INSTALL_SH])dnl AC_REQUIRE([AM_PROG_INSTALL_STRIP])dnl AC_REQUIRE([AM_PROG_MKDIR_P])dnl # We need awk for the "check" target. The system "awk" is bad on # some platforms. AC_REQUIRE([AC_PROG_AWK])dnl AC_REQUIRE([AC_PROG_MAKE_SET])dnl AC_REQUIRE([AM_SET_LEADING_DOT])dnl _AM_IF_OPTION([tar-ustar], [_AM_PROG_TAR([ustar])], [_AM_IF_OPTION([tar-pax], [_AM_PROG_TAR([pax])], [_AM_PROG_TAR([v7])])]) _AM_IF_OPTION([no-dependencies],, [AC_PROVIDE_IFELSE([AC_PROG_CC], [_AM_DEPENDENCIES(CC)], [define([AC_PROG_CC], defn([AC_PROG_CC])[_AM_DEPENDENCIES(CC)])])dnl AC_PROVIDE_IFELSE([AC_PROG_CXX], [_AM_DEPENDENCIES(CXX)], [define([AC_PROG_CXX], defn([AC_PROG_CXX])[_AM_DEPENDENCIES(CXX)])])dnl AC_PROVIDE_IFELSE([AC_PROG_OBJC], [_AM_DEPENDENCIES(OBJC)], [define([AC_PROG_OBJC], defn([AC_PROG_OBJC])[_AM_DEPENDENCIES(OBJC)])])dnl ]) _AM_IF_OPTION([silent-rules], [AC_REQUIRE([AM_SILENT_RULES])])dnl dnl The `parallel-tests' driver may need to know about EXEEXT, so add the dnl `am__EXEEXT' conditional if _AM_COMPILER_EXEEXT was seen. This macro dnl is hooked onto _AC_COMPILER_EXEEXT early, see below. AC_CONFIG_COMMANDS_PRE(dnl [m4_provide_if([_AM_COMPILER_EXEEXT], [AM_CONDITIONAL([am__EXEEXT], [test -n "$EXEEXT"])])])dnl ]) dnl Hook into `_AC_COMPILER_EXEEXT' early to learn its expansion. Do not dnl add the conditional right here, as _AC_COMPILER_EXEEXT may be further dnl mangled by Autoconf and run in a shell conditional statement. m4_define([_AC_COMPILER_EXEEXT], m4_defn([_AC_COMPILER_EXEEXT])[m4_provide([_AM_COMPILER_EXEEXT])]) # When config.status generates a header, we must update the stamp-h file. # This file resides in the same directory as the config header # that is generated. The stamp files are numbered to have different names. # Autoconf calls _AC_AM_CONFIG_HEADER_HOOK (when defined) in the # loop where config.status creates the headers, so we can generate # our stamp files there. AC_DEFUN([_AC_AM_CONFIG_HEADER_HOOK], [# Compute $1's index in $config_headers. _am_arg=$1 _am_stamp_count=1 for _am_header in $config_headers :; do case $_am_header in $_am_arg | $_am_arg:* ) break ;; * ) _am_stamp_count=`expr $_am_stamp_count + 1` ;; esac done echo "timestamp for $_am_arg" >`AS_DIRNAME(["$_am_arg"])`/stamp-h[]$_am_stamp_count]) # Copyright (C) 2001, 2003, 2005, 2008 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # AM_PROG_INSTALL_SH # ------------------ # Define $install_sh. AC_DEFUN([AM_PROG_INSTALL_SH], [AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl if test x"${install_sh}" != xset; then case $am_aux_dir in *\ * | *\ *) install_sh="\${SHELL} '$am_aux_dir/install-sh'" ;; *) install_sh="\${SHELL} $am_aux_dir/install-sh" esac fi AC_SUBST(install_sh)]) # Copyright (C) 2003, 2005 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # serial 2 # Check whether the underlying file-system supports filenames # with a leading dot. For instance MS-DOS doesn't. AC_DEFUN([AM_SET_LEADING_DOT], [rm -rf .tst 2>/dev/null mkdir .tst 2>/dev/null if test -d .tst; then am__leading_dot=. else am__leading_dot=_ fi rmdir .tst 2>/dev/null AC_SUBST([am__leading_dot])]) # Add --enable-maintainer-mode option to configure. -*- Autoconf -*- # From Jim Meyering # Copyright (C) 1996, 1998, 2000, 2001, 2002, 2003, 2004, 2005, 2008 # Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # serial 5 # AM_MAINTAINER_MODE([DEFAULT-MODE]) # ---------------------------------- # Control maintainer-specific portions of Makefiles. # Default is to disable them, unless `enable' is passed literally. # For symmetry, `disable' may be passed as well. Anyway, the user # can override the default with the --enable/--disable switch. AC_DEFUN([AM_MAINTAINER_MODE], [m4_case(m4_default([$1], [disable]), [enable], [m4_define([am_maintainer_other], [disable])], [disable], [m4_define([am_maintainer_other], [enable])], [m4_define([am_maintainer_other], [enable]) m4_warn([syntax], [unexpected argument to AM@&t@_MAINTAINER_MODE: $1])]) AC_MSG_CHECKING([whether to am_maintainer_other maintainer-specific portions of Makefiles]) dnl maintainer-mode's default is 'disable' unless 'enable' is passed AC_ARG_ENABLE([maintainer-mode], [ --][am_maintainer_other][-maintainer-mode am_maintainer_other make rules and dependencies not useful (and sometimes confusing) to the casual installer], [USE_MAINTAINER_MODE=$enableval], [USE_MAINTAINER_MODE=]m4_if(am_maintainer_other, [enable], [no], [yes])) AC_MSG_RESULT([$USE_MAINTAINER_MODE]) AM_CONDITIONAL([MAINTAINER_MODE], [test $USE_MAINTAINER_MODE = yes]) MAINT=$MAINTAINER_MODE_TRUE AC_SUBST([MAINT])dnl ] ) AU_DEFUN([jm_MAINTAINER_MODE], [AM_MAINTAINER_MODE]) # Check to see how 'make' treats includes. -*- Autoconf -*- # Copyright (C) 2001, 2002, 2003, 2005, 2009 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # serial 4 # AM_MAKE_INCLUDE() # ----------------- # Check to see how make treats includes. AC_DEFUN([AM_MAKE_INCLUDE], [am_make=${MAKE-make} cat > confinc << 'END' am__doit: @echo this is the am__doit target .PHONY: am__doit END # If we don't find an include directive, just comment out the code. AC_MSG_CHECKING([for style of include used by $am_make]) am__include="#" am__quote= _am_result=none # First try GNU make style include. echo "include confinc" > confmf # Ignore all kinds of additional output from `make'. case `$am_make -s -f confmf 2> /dev/null` in #( *the\ am__doit\ target*) am__include=include am__quote= _am_result=GNU ;; esac # Now try BSD make style include. if test "$am__include" = "#"; then echo '.include "confinc"' > confmf case `$am_make -s -f confmf 2> /dev/null` in #( *the\ am__doit\ target*) am__include=.include am__quote="\"" _am_result=BSD ;; esac fi AC_SUBST([am__include]) AC_SUBST([am__quote]) AC_MSG_RESULT([$_am_result]) rm -f confinc confmf ]) # Fake the existence of programs that GNU maintainers use. -*- Autoconf -*- # Copyright (C) 1997, 1999, 2000, 2001, 2003, 2004, 2005, 2008 # Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # serial 6 # AM_MISSING_PROG(NAME, PROGRAM) # ------------------------------ AC_DEFUN([AM_MISSING_PROG], [AC_REQUIRE([AM_MISSING_HAS_RUN]) $1=${$1-"${am_missing_run}$2"} AC_SUBST($1)]) # AM_MISSING_HAS_RUN # ------------------ # Define MISSING if not defined so far and test if it supports --run. # If it does, set am_missing_run to use it, otherwise, to nothing. AC_DEFUN([AM_MISSING_HAS_RUN], [AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl AC_REQUIRE_AUX_FILE([missing])dnl if test x"${MISSING+set}" != xset; then case $am_aux_dir in *\ * | *\ *) MISSING="\${SHELL} \"$am_aux_dir/missing\"" ;; *) MISSING="\${SHELL} $am_aux_dir/missing" ;; esac fi # Use eval to expand $SHELL if eval "$MISSING --run true"; then am_missing_run="$MISSING --run " else am_missing_run= AC_MSG_WARN([`missing' script is too old or missing]) fi ]) # Copyright (C) 2003, 2004, 2005, 2006 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # AM_PROG_MKDIR_P # --------------- # Check for `mkdir -p'. AC_DEFUN([AM_PROG_MKDIR_P], [AC_PREREQ([2.60])dnl AC_REQUIRE([AC_PROG_MKDIR_P])dnl dnl Automake 1.8 to 1.9.6 used to define mkdir_p. We now use MKDIR_P, dnl while keeping a definition of mkdir_p for backward compatibility. dnl @MKDIR_P@ is magic: AC_OUTPUT adjusts its value for each Makefile. dnl However we cannot define mkdir_p as $(MKDIR_P) for the sake of dnl Makefile.ins that do not define MKDIR_P, so we do our own dnl adjustment using top_builddir (which is defined more often than dnl MKDIR_P). AC_SUBST([mkdir_p], ["$MKDIR_P"])dnl case $mkdir_p in [[\\/$]]* | ?:[[\\/]]*) ;; */*) mkdir_p="\$(top_builddir)/$mkdir_p" ;; esac ]) # Helper functions for option handling. -*- Autoconf -*- # Copyright (C) 2001, 2002, 2003, 2005, 2008 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # serial 4 # _AM_MANGLE_OPTION(NAME) # ----------------------- AC_DEFUN([_AM_MANGLE_OPTION], [[_AM_OPTION_]m4_bpatsubst($1, [[^a-zA-Z0-9_]], [_])]) # _AM_SET_OPTION(NAME) # ------------------------------ # Set option NAME. Presently that only means defining a flag for this option. AC_DEFUN([_AM_SET_OPTION], [m4_define(_AM_MANGLE_OPTION([$1]), 1)]) # _AM_SET_OPTIONS(OPTIONS) # ---------------------------------- # OPTIONS is a space-separated list of Automake options. AC_DEFUN([_AM_SET_OPTIONS], [m4_foreach_w([_AM_Option], [$1], [_AM_SET_OPTION(_AM_Option)])]) # _AM_IF_OPTION(OPTION, IF-SET, [IF-NOT-SET]) # ------------------------------------------- # Execute IF-SET if OPTION is set, IF-NOT-SET otherwise. AC_DEFUN([_AM_IF_OPTION], [m4_ifset(_AM_MANGLE_OPTION([$1]), [$2], [$3])]) # Check to make sure that the build environment is sane. -*- Autoconf -*- # Copyright (C) 1996, 1997, 2000, 2001, 2003, 2005, 2008 # Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # serial 5 # AM_SANITY_CHECK # --------------- AC_DEFUN([AM_SANITY_CHECK], [AC_MSG_CHECKING([whether build environment is sane]) # Just in case sleep 1 echo timestamp > conftest.file # Reject unsafe characters in $srcdir or the absolute working directory # name. Accept space and tab only in the latter. am_lf=' ' case `pwd` in *[[\\\"\#\$\&\'\`$am_lf]]*) AC_MSG_ERROR([unsafe absolute working directory name]);; esac case $srcdir in *[[\\\"\#\$\&\'\`$am_lf\ \ ]]*) AC_MSG_ERROR([unsafe srcdir value: `$srcdir']);; esac # Do `set' in a subshell so we don't clobber the current shell's # arguments. Must try -L first in case configure is actually a # symlink; some systems play weird games with the mod time of symlinks # (eg FreeBSD returns the mod time of the symlink's containing # directory). if ( set X `ls -Lt "$srcdir/configure" conftest.file 2> /dev/null` if test "$[*]" = "X"; then # -L didn't work. set X `ls -t "$srcdir/configure" conftest.file` fi rm -f conftest.file if test "$[*]" != "X $srcdir/configure conftest.file" \ && test "$[*]" != "X conftest.file $srcdir/configure"; then # If neither matched, then we have a broken ls. This can happen # if, for instance, CONFIG_SHELL is bash and it inherits a # broken ls alias from the environment. This has actually # happened. Such a system could not be considered "sane". AC_MSG_ERROR([ls -t appears to fail. Make sure there is not a broken alias in your environment]) fi test "$[2]" = conftest.file ) then # Ok. : else AC_MSG_ERROR([newly created file is older than distributed files! Check your system clock]) fi AC_MSG_RESULT(yes)]) # Copyright (C) 2001, 2003, 2005 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # AM_PROG_INSTALL_STRIP # --------------------- # One issue with vendor `install' (even GNU) is that you can't # specify the program used to strip binaries. This is especially # annoying in cross-compiling environments, where the build's strip # is unlikely to handle the host's binaries. # Fortunately install-sh will honor a STRIPPROG variable, so we # always use install-sh in `make install-strip', and initialize # STRIPPROG with the value of the STRIP variable (set by the user). AC_DEFUN([AM_PROG_INSTALL_STRIP], [AC_REQUIRE([AM_PROG_INSTALL_SH])dnl # Installed binaries are usually stripped using `strip' when the user # run `make install-strip'. However `strip' might not be the right # tool to use in cross-compilation environments, therefore Automake # will honor the `STRIP' environment variable to overrule this program. dnl Don't test for $cross_compiling = yes, because it might be `maybe'. if test "$cross_compiling" != no; then AC_CHECK_TOOL([STRIP], [strip], :) fi INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s" AC_SUBST([INSTALL_STRIP_PROGRAM])]) # Copyright (C) 2006, 2008 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # serial 2 # _AM_SUBST_NOTMAKE(VARIABLE) # --------------------------- # Prevent Automake from outputting VARIABLE = @VARIABLE@ in Makefile.in. # This macro is traced by Automake. AC_DEFUN([_AM_SUBST_NOTMAKE]) # AM_SUBST_NOTMAKE(VARIABLE) # --------------------------- # Public sister of _AM_SUBST_NOTMAKE. AC_DEFUN([AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE($@)]) # Check how to create a tarball. -*- Autoconf -*- # Copyright (C) 2004, 2005 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # serial 2 # _AM_PROG_TAR(FORMAT) # -------------------- # Check how to create a tarball in format FORMAT. # FORMAT should be one of `v7', `ustar', or `pax'. # # Substitute a variable $(am__tar) that is a command # writing to stdout a FORMAT-tarball containing the directory # $tardir. # tardir=directory && $(am__tar) > result.tar # # Substitute a variable $(am__untar) that extract such # a tarball read from stdin. # $(am__untar) < result.tar AC_DEFUN([_AM_PROG_TAR], [# Always define AMTAR for backward compatibility. AM_MISSING_PROG([AMTAR], [tar]) m4_if([$1], [v7], [am__tar='${AMTAR} chof - "$$tardir"'; am__untar='${AMTAR} xf -'], [m4_case([$1], [ustar],, [pax],, [m4_fatal([Unknown tar format])]) AC_MSG_CHECKING([how to create a $1 tar archive]) # Loop over all known methods to create a tar archive until one works. _am_tools='gnutar m4_if([$1], [ustar], [plaintar]) pax cpio none' _am_tools=${am_cv_prog_tar_$1-$_am_tools} # Do not fold the above two line into one, because Tru64 sh and # Solaris sh will not grok spaces in the rhs of `-'. for _am_tool in $_am_tools do case $_am_tool in gnutar) for _am_tar in tar gnutar gtar; do AM_RUN_LOG([$_am_tar --version]) && break done am__tar="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$$tardir"' am__tar_="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$tardir"' am__untar="$_am_tar -xf -" ;; plaintar) # Must skip GNU tar: if it does not support --format= it doesn't create # ustar tarball either. (tar --version) >/dev/null 2>&1 && continue am__tar='tar chf - "$$tardir"' am__tar_='tar chf - "$tardir"' am__untar='tar xf -' ;; pax) am__tar='pax -L -x $1 -w "$$tardir"' am__tar_='pax -L -x $1 -w "$tardir"' am__untar='pax -r' ;; cpio) am__tar='find "$$tardir" -print | cpio -o -H $1 -L' am__tar_='find "$tardir" -print | cpio -o -H $1 -L' am__untar='cpio -i -H $1 -d' ;; none) am__tar=false am__tar_=false am__untar=false ;; esac # If the value was cached, stop now. We just wanted to have am__tar # and am__untar set. test -n "${am_cv_prog_tar_$1}" && break # tar/untar a dummy directory, and stop if the command works rm -rf conftest.dir mkdir conftest.dir echo GrepMe > conftest.dir/file AM_RUN_LOG([tardir=conftest.dir && eval $am__tar_ >conftest.tar]) rm -rf conftest.dir if test -s conftest.tar; then AM_RUN_LOG([$am__untar /dev/null 2>&1 && break fi done rm -rf conftest.dir AC_CACHE_VAL([am_cv_prog_tar_$1], [am_cv_prog_tar_$1=$_am_tool]) AC_MSG_RESULT([$am_cv_prog_tar_$1])]) AC_SUBST([am__tar]) AC_SUBST([am__untar]) ]) # _AM_PROG_TAR # gnome-common.m4 # dnl GNOME_COMMON_INIT AC_DEFUN([GNOME_COMMON_INIT], [ dnl this macro should come after AC_CONFIG_MACRO_DIR AC_BEFORE([AC_CONFIG_MACRO_DIR], [$0]) dnl ensure that when the Automake generated makefile calls aclocal, dnl it honours the $ACLOCAL_FLAGS environment variable ACLOCAL_AMFLAGS="\${ACLOCAL_FLAGS}" if test -n "$ac_macro_dir"; then ACLOCAL_AMFLAGS="-I $ac_macro_dir $ACLOCAL_AMFLAGS" fi AC_SUBST([ACLOCAL_AMFLAGS]) ]) AC_DEFUN([GNOME_DEBUG_CHECK], [ AC_ARG_ENABLE([debug], AC_HELP_STRING([--enable-debug], [turn on debugging]),, [enable_debug=no]) if test x$enable_debug = xyes ; then AC_DEFINE(GNOME_ENABLE_DEBUG, 1, [Enable additional debugging at the expense of performance and size]) fi ]) dnl GNOME_MAINTAINER_MODE_DEFINES () dnl define DISABLE_DEPRECATED dnl AC_DEFUN([GNOME_MAINTAINER_MODE_DEFINES], [ AC_REQUIRE([AM_MAINTAINER_MODE]) DISABLE_DEPRECATED="" if test $USE_MAINTAINER_MODE = yes; then DOMAINS="G ATK PANGO GDK GDK_PIXBUF GTK GCONF BONOBO BONOBO_UI GNOME LIBGLADE VTE GNOME_VFS WNCK LIBSOUP" for DOMAIN in $DOMAINS; do DISABLE_DEPRECATED="$DISABLE_DEPRECATED -D${DOMAIN}_DISABLE_DEPRECATED -D${DOMAIN}_DISABLE_SINGLE_INCLUDES" done fi AC_SUBST(DISABLE_DEPRECATED) ]) dnl GNOME_COMPILE_WARNINGS dnl Turn on many useful compiler warnings dnl For now, only works on GCC AC_DEFUN([GNOME_COMPILE_WARNINGS],[ dnl ****************************** dnl More compiler warnings dnl ****************************** AC_ARG_ENABLE(compile-warnings, AC_HELP_STRING([--enable-compile-warnings=@<:@no/minimum/yes/maximum/error@:>@], [Turn on compiler warnings]),, [enable_compile_warnings="m4_default([$1],[yes])"]) warnCFLAGS= if test "x$GCC" != xyes; then enable_compile_warnings=no fi warning_flags= realsave_CFLAGS="$CFLAGS" case "$enable_compile_warnings" in no) warning_flags= ;; minimum) warning_flags="-Wall" ;; yes) warning_flags="-Wall -Wmissing-prototypes" ;; maximum|error) warning_flags="-Wall -Wmissing-prototypes -Wnested-externs -Wpointer-arith" CFLAGS="$warning_flags $CFLAGS" for option in -Wno-sign-compare; do SAVE_CFLAGS="$CFLAGS" CFLAGS="$CFLAGS $option" AC_MSG_CHECKING([whether gcc understands $option]) AC_TRY_COMPILE([], [], has_option=yes, has_option=no,) CFLAGS="$SAVE_CFLAGS" AC_MSG_RESULT($has_option) if test $has_option = yes; then warning_flags="$warning_flags $option" fi unset has_option unset SAVE_CFLAGS done unset option if test "$enable_compile_warnings" = "error" ; then warning_flags="$warning_flags -Werror" fi ;; *) AC_MSG_ERROR(Unknown argument '$enable_compile_warnings' to --enable-compile-warnings) ;; esac CFLAGS="$realsave_CFLAGS" AC_MSG_CHECKING(what warning flags to pass to the C compiler) AC_MSG_RESULT($warning_flags) AC_ARG_ENABLE(iso-c, AC_HELP_STRING([--enable-iso-c], [Try to warn if code is not ISO C ]),, [enable_iso_c=no]) AC_MSG_CHECKING(what language compliance flags to pass to the C compiler) complCFLAGS= if test "x$enable_iso_c" != "xno"; then if test "x$GCC" = "xyes"; then case " $CFLAGS " in *[\ \ ]-ansi[\ \ ]*) ;; *) complCFLAGS="$complCFLAGS -ansi" ;; esac case " $CFLAGS " in *[\ \ ]-pedantic[\ \ ]*) ;; *) complCFLAGS="$complCFLAGS -pedantic" ;; esac fi fi AC_MSG_RESULT($complCFLAGS) WARN_CFLAGS="$warning_flags $complCFLAGS" AC_SUBST(WARN_CFLAGS) ]) dnl For C++, do basically the same thing. AC_DEFUN([GNOME_CXX_WARNINGS],[ AC_ARG_ENABLE(cxx-warnings, AC_HELP_STRING([--enable-cxx-warnings=@<:@no/minimum/yes@:>@] [Turn on compiler warnings.]),, [enable_cxx_warnings="m4_default([$1],[minimum])"]) AC_MSG_CHECKING(what warning flags to pass to the C++ compiler) warnCXXFLAGS= if test "x$GXX" != xyes; then enable_cxx_warnings=no fi if test "x$enable_cxx_warnings" != "xno"; then if test "x$GXX" = "xyes"; then case " $CXXFLAGS " in *[\ \ ]-Wall[\ \ ]*) ;; *) warnCXXFLAGS="-Wall -Wno-unused" ;; esac ## -W is not all that useful. And it cannot be controlled ## with individual -Wno-xxx flags, unlike -Wall if test "x$enable_cxx_warnings" = "xyes"; then warnCXXFLAGS="$warnCXXFLAGS -Wshadow -Woverloaded-virtual" fi fi fi AC_MSG_RESULT($warnCXXFLAGS) AC_ARG_ENABLE(iso-cxx, AC_HELP_STRING([--enable-iso-cxx], [Try to warn if code is not ISO C++ ]),, [enable_iso_cxx=no]) AC_MSG_CHECKING(what language compliance flags to pass to the C++ compiler) complCXXFLAGS= if test "x$enable_iso_cxx" != "xno"; then if test "x$GXX" = "xyes"; then case " $CXXFLAGS " in *[\ \ ]-ansi[\ \ ]*) ;; *) complCXXFLAGS="$complCXXFLAGS -ansi" ;; esac case " $CXXFLAGS " in *[\ \ ]-pedantic[\ \ ]*) ;; *) complCXXFLAGS="$complCXXFLAGS -pedantic" ;; esac fi fi AC_MSG_RESULT($complCXXFLAGS) WARN_CXXFLAGS="$CXXFLAGS $warnCXXFLAGS $complCXXFLAGS" AC_SUBST(WARN_CXXFLAGS) ]) dnl IT_PROG_INTLTOOL([MINIMUM-VERSION], [no-xml]) # serial 40 IT_PROG_INTLTOOL AC_DEFUN([IT_PROG_INTLTOOL], [ AC_PREREQ([2.50])dnl AC_REQUIRE([AM_NLS])dnl case "$am__api_version" in 1.[01234]) AC_MSG_ERROR([Automake 1.5 or newer is required to use intltool]) ;; *) ;; esac if test -n "$1"; then AC_MSG_CHECKING([for intltool >= $1]) INTLTOOL_REQUIRED_VERSION_AS_INT=`echo $1 | awk -F. '{ print $ 1 * 1000 + $ 2 * 100 + $ 3; }'` INTLTOOL_APPLIED_VERSION=`intltool-update --version | head -1 | cut -d" " -f3` [INTLTOOL_APPLIED_VERSION_AS_INT=`echo $INTLTOOL_APPLIED_VERSION | awk -F. '{ print $ 1 * 1000 + $ 2 * 100 + $ 3; }'` ] AC_MSG_RESULT([$INTLTOOL_APPLIED_VERSION found]) test "$INTLTOOL_APPLIED_VERSION_AS_INT" -ge "$INTLTOOL_REQUIRED_VERSION_AS_INT" || AC_MSG_ERROR([Your intltool is too old. You need intltool $1 or later.]) fi AC_PATH_PROG(INTLTOOL_UPDATE, [intltool-update]) AC_PATH_PROG(INTLTOOL_MERGE, [intltool-merge]) AC_PATH_PROG(INTLTOOL_EXTRACT, [intltool-extract]) if test -z "$INTLTOOL_UPDATE" -o -z "$INTLTOOL_MERGE" -o -z "$INTLTOOL_EXTRACT"; then AC_MSG_ERROR([The intltool scripts were not found. Please install intltool.]) fi INTLTOOL_DESKTOP_RULE='%.desktop: %.desktop.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' INTLTOOL_DIRECTORY_RULE='%.directory: %.directory.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' INTLTOOL_KEYS_RULE='%.keys: %.keys.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -k -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' INTLTOOL_PROP_RULE='%.prop: %.prop.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' INTLTOOL_OAF_RULE='%.oaf: %.oaf.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -o -p $(top_srcdir)/po $< [$]@' INTLTOOL_PONG_RULE='%.pong: %.pong.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' INTLTOOL_SERVER_RULE='%.server: %.server.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -o -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' INTLTOOL_SHEET_RULE='%.sheet: %.sheet.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' INTLTOOL_SOUNDLIST_RULE='%.soundlist: %.soundlist.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' INTLTOOL_UI_RULE='%.ui: %.ui.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' INTLTOOL_XML_RULE='%.xml: %.xml.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' INTLTOOL_XML_NOMERGE_RULE='%.xml: %.xml.in $(INTLTOOL_MERGE) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u /tmp $< [$]@' INTLTOOL_XAM_RULE='%.xam: %.xml.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' INTLTOOL_KBD_RULE='%.kbd: %.kbd.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -m -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' INTLTOOL_CAVES_RULE='%.caves: %.caves.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' INTLTOOL_SCHEMAS_RULE='%.schemas: %.schemas.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -s -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' INTLTOOL_THEME_RULE='%.theme: %.theme.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' INTLTOOL_SERVICE_RULE='%.service: %.service.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' INTLTOOL_POLICY_RULE='%.policy: %.policy.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' _IT_SUBST(INTLTOOL_DESKTOP_RULE) _IT_SUBST(INTLTOOL_DIRECTORY_RULE) _IT_SUBST(INTLTOOL_KEYS_RULE) _IT_SUBST(INTLTOOL_PROP_RULE) _IT_SUBST(INTLTOOL_OAF_RULE) _IT_SUBST(INTLTOOL_PONG_RULE) _IT_SUBST(INTLTOOL_SERVER_RULE) _IT_SUBST(INTLTOOL_SHEET_RULE) _IT_SUBST(INTLTOOL_SOUNDLIST_RULE) _IT_SUBST(INTLTOOL_UI_RULE) _IT_SUBST(INTLTOOL_XAM_RULE) _IT_SUBST(INTLTOOL_KBD_RULE) _IT_SUBST(INTLTOOL_XML_RULE) _IT_SUBST(INTLTOOL_XML_NOMERGE_RULE) _IT_SUBST(INTLTOOL_CAVES_RULE) _IT_SUBST(INTLTOOL_SCHEMAS_RULE) _IT_SUBST(INTLTOOL_THEME_RULE) _IT_SUBST(INTLTOOL_SERVICE_RULE) _IT_SUBST(INTLTOOL_POLICY_RULE) # Check the gettext tools to make sure they are GNU AC_PATH_PROG(XGETTEXT, xgettext) AC_PATH_PROG(MSGMERGE, msgmerge) AC_PATH_PROG(MSGFMT, msgfmt) AC_PATH_PROG(GMSGFMT, gmsgfmt, $MSGFMT) if test -z "$XGETTEXT" -o -z "$MSGMERGE" -o -z "$MSGFMT"; then AC_MSG_ERROR([GNU gettext tools not found; required for intltool]) fi xgversion="`$XGETTEXT --version|grep '(GNU ' 2> /dev/null`" mmversion="`$MSGMERGE --version|grep '(GNU ' 2> /dev/null`" mfversion="`$MSGFMT --version|grep '(GNU ' 2> /dev/null`" if test -z "$xgversion" -o -z "$mmversion" -o -z "$mfversion"; then AC_MSG_ERROR([GNU gettext tools not found; required for intltool]) fi AC_PATH_PROG(INTLTOOL_PERL, perl) if test -z "$INTLTOOL_PERL"; then AC_MSG_ERROR([perl not found]) fi AC_MSG_CHECKING([for perl >= 5.8.1]) $INTLTOOL_PERL -e "use 5.8.1;" > /dev/null 2>&1 if test $? -ne 0; then AC_MSG_ERROR([perl 5.8.1 is required for intltool]) else IT_PERL_VERSION="`$INTLTOOL_PERL -e \"printf '%vd', $^V\"`" AC_MSG_RESULT([$IT_PERL_VERSION]) fi if test "x$2" != "xno-xml"; then AC_MSG_CHECKING([for XML::Parser]) if `$INTLTOOL_PERL -e "require XML::Parser" 2>/dev/null`; then AC_MSG_RESULT([ok]) else AC_MSG_ERROR([XML::Parser perl module is required for intltool]) fi fi # Substitute ALL_LINGUAS so we can use it in po/Makefile AC_SUBST(ALL_LINGUAS) # Set DATADIRNAME correctly if it is not set yet # (copied from glib-gettext.m4) if test -z "$DATADIRNAME"; then AC_LINK_IFELSE( [AC_LANG_PROGRAM([[]], [[extern int _nl_msg_cat_cntr; return _nl_msg_cat_cntr]])], [DATADIRNAME=share], [case $host in *-*-solaris*) dnl On Solaris, if bind_textdomain_codeset is in libc, dnl GNU format message catalog is always supported, dnl since both are added to the libc all together. dnl Hence, we'd like to go with DATADIRNAME=share dnl in this case. AC_CHECK_FUNC(bind_textdomain_codeset, [DATADIRNAME=share], [DATADIRNAME=lib]) ;; *) [DATADIRNAME=lib] ;; esac]) fi AC_SUBST(DATADIRNAME) IT_PO_SUBDIR([po]) ]) # IT_PO_SUBDIR(DIRNAME) # --------------------- # All po subdirs have to be declared with this macro; the subdir "po" is # declared by IT_PROG_INTLTOOL. # AC_DEFUN([IT_PO_SUBDIR], [AC_PREREQ([2.53])dnl We use ac_top_srcdir inside AC_CONFIG_COMMANDS. dnl dnl The following CONFIG_COMMANDS should be executed at the very end dnl of config.status. AC_CONFIG_COMMANDS_PRE([ AC_CONFIG_COMMANDS([$1/stamp-it], [ if [ ! grep "^# INTLTOOL_MAKEFILE$" "$1/Makefile.in" > /dev/null ]; then AC_MSG_ERROR([$1/Makefile.in.in was not created by intltoolize.]) fi rm -f "$1/stamp-it" "$1/stamp-it.tmp" "$1/POTFILES" "$1/Makefile.tmp" >"$1/stamp-it.tmp" [sed '/^#/d s/^[[].*] *// /^[ ]*$/d '"s|^| $ac_top_srcdir/|" \ "$srcdir/$1/POTFILES.in" | sed '$!s/$/ \\/' >"$1/POTFILES" ] [sed '/^POTFILES =/,/[^\\]$/ { /^POTFILES =/!d r $1/POTFILES } ' "$1/Makefile.in" >"$1/Makefile"] rm -f "$1/Makefile.tmp" mv "$1/stamp-it.tmp" "$1/stamp-it" ]) ])dnl ]) # _IT_SUBST(VARIABLE) # ------------------- # Abstract macro to do either _AM_SUBST_NOTMAKE or AC_SUBST # AC_DEFUN([_IT_SUBST], [ AC_SUBST([$1]) m4_ifdef([_AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE([$1])]) ] ) # deprecated macros AU_ALIAS([AC_PROG_INTLTOOL], [IT_PROG_INTLTOOL]) # A hint is needed for aclocal from Automake <= 1.9.4: # AC_DEFUN([AC_PROG_INTLTOOL], ...) # libtool.m4 - Configure libtool for the host system. -*-Autoconf-*- # # Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005, # 2006, 2007, 2008 Free Software Foundation, Inc. # Written by Gordon Matzigkeit, 1996 # # This file is free software; the Free Software Foundation gives # unlimited permission to copy and/or distribute it, with or without # modifications, as long as this notice is preserved. m4_define([_LT_COPYING], [dnl # Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005, # 2006, 2007, 2008 Free Software Foundation, Inc. # Written by Gordon Matzigkeit, 1996 # # This file is part of GNU Libtool. # # GNU Libtool is free software; you can redistribute it and/or # modify it under the terms of the GNU General Public License as # published by the Free Software Foundation; either version 2 of # the License, or (at your option) any later version. # # As a special exception to the GNU General Public License, # if you distribute this file as part of a program or library that # is built using GNU Libtool, you may include this file under the # same distribution terms that you use for the rest of that program. # # GNU Libtool is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with GNU Libtool; see the file COPYING. If not, a copy # can be downloaded from http://www.gnu.org/licenses/gpl.html, or # obtained by writing to the Free Software Foundation, Inc., # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. ]) # serial 56 LT_INIT # LT_PREREQ(VERSION) # ------------------ # Complain and exit if this libtool version is less that VERSION. m4_defun([LT_PREREQ], [m4_if(m4_version_compare(m4_defn([LT_PACKAGE_VERSION]), [$1]), -1, [m4_default([$3], [m4_fatal([Libtool version $1 or higher is required], 63)])], [$2])]) # _LT_CHECK_BUILDDIR # ------------------ # Complain if the absolute build directory name contains unusual characters m4_defun([_LT_CHECK_BUILDDIR], [case `pwd` in *\ * | *\ *) AC_MSG_WARN([Libtool does not cope well with whitespace in `pwd`]) ;; esac ]) # LT_INIT([OPTIONS]) # ------------------ AC_DEFUN([LT_INIT], [AC_PREREQ([2.58])dnl We use AC_INCLUDES_DEFAULT AC_BEFORE([$0], [LT_LANG])dnl AC_BEFORE([$0], [LT_OUTPUT])dnl AC_BEFORE([$0], [LTDL_INIT])dnl m4_require([_LT_CHECK_BUILDDIR])dnl dnl Autoconf doesn't catch unexpanded LT_ macros by default: m4_pattern_forbid([^_?LT_[A-Z_]+$])dnl m4_pattern_allow([^(_LT_EOF|LT_DLGLOBAL|LT_DLLAZY_OR_NOW|LT_MULTI_MODULE)$])dnl dnl aclocal doesn't pull ltoptions.m4, ltsugar.m4, or ltversion.m4 dnl unless we require an AC_DEFUNed macro: AC_REQUIRE([LTOPTIONS_VERSION])dnl AC_REQUIRE([LTSUGAR_VERSION])dnl AC_REQUIRE([LTVERSION_VERSION])dnl AC_REQUIRE([LTOBSOLETE_VERSION])dnl m4_require([_LT_PROG_LTMAIN])dnl dnl Parse OPTIONS _LT_SET_OPTIONS([$0], [$1]) # This can be used to rebuild libtool when needed LIBTOOL_DEPS="$ltmain" # Always use our own libtool. LIBTOOL='$(SHELL) $(top_builddir)/libtool' AC_SUBST(LIBTOOL)dnl _LT_SETUP # Only expand once: m4_define([LT_INIT]) ])# LT_INIT # Old names: AU_ALIAS([AC_PROG_LIBTOOL], [LT_INIT]) AU_ALIAS([AM_PROG_LIBTOOL], [LT_INIT]) dnl aclocal-1.4 backwards compatibility: dnl AC_DEFUN([AC_PROG_LIBTOOL], []) dnl AC_DEFUN([AM_PROG_LIBTOOL], []) # _LT_CC_BASENAME(CC) # ------------------- # Calculate cc_basename. Skip known compiler wrappers and cross-prefix. m4_defun([_LT_CC_BASENAME], [for cc_temp in $1""; do case $cc_temp in compile | *[[\\/]]compile | ccache | *[[\\/]]ccache ) ;; distcc | *[[\\/]]distcc | purify | *[[\\/]]purify ) ;; \-*) ;; *) break;; esac done cc_basename=`$ECHO "X$cc_temp" | $Xsed -e 's%.*/%%' -e "s%^$host_alias-%%"` ]) # _LT_FILEUTILS_DEFAULTS # ---------------------- # It is okay to use these file commands and assume they have been set # sensibly after `m4_require([_LT_FILEUTILS_DEFAULTS])'. m4_defun([_LT_FILEUTILS_DEFAULTS], [: ${CP="cp -f"} : ${MV="mv -f"} : ${RM="rm -f"} ])# _LT_FILEUTILS_DEFAULTS # _LT_SETUP # --------- m4_defun([_LT_SETUP], [AC_REQUIRE([AC_CANONICAL_HOST])dnl AC_REQUIRE([AC_CANONICAL_BUILD])dnl _LT_DECL([], [host_alias], [0], [The host system])dnl _LT_DECL([], [host], [0])dnl _LT_DECL([], [host_os], [0])dnl dnl _LT_DECL([], [build_alias], [0], [The build system])dnl _LT_DECL([], [build], [0])dnl _LT_DECL([], [build_os], [0])dnl dnl AC_REQUIRE([AC_PROG_CC])dnl AC_REQUIRE([LT_PATH_LD])dnl AC_REQUIRE([LT_PATH_NM])dnl dnl AC_REQUIRE([AC_PROG_LN_S])dnl test -z "$LN_S" && LN_S="ln -s" _LT_DECL([], [LN_S], [1], [Whether we need soft or hard links])dnl dnl AC_REQUIRE([LT_CMD_MAX_LEN])dnl _LT_DECL([objext], [ac_objext], [0], [Object file suffix (normally "o")])dnl _LT_DECL([], [exeext], [0], [Executable file suffix (normally "")])dnl dnl m4_require([_LT_FILEUTILS_DEFAULTS])dnl m4_require([_LT_CHECK_SHELL_FEATURES])dnl m4_require([_LT_CMD_RELOAD])dnl m4_require([_LT_CHECK_MAGIC_METHOD])dnl m4_require([_LT_CMD_OLD_ARCHIVE])dnl m4_require([_LT_CMD_GLOBAL_SYMBOLS])dnl _LT_CONFIG_LIBTOOL_INIT([ # See if we are running on zsh, and set the options which allow our # commands through without removal of \ escapes INIT. if test -n "\${ZSH_VERSION+set}" ; then setopt NO_GLOB_SUBST fi ]) if test -n "${ZSH_VERSION+set}" ; then setopt NO_GLOB_SUBST fi _LT_CHECK_OBJDIR m4_require([_LT_TAG_COMPILER])dnl _LT_PROG_ECHO_BACKSLASH case $host_os in aix3*) # AIX sometimes has problems with the GCC collect2 program. For some # reason, if we set the COLLECT_NAMES environment variable, the problems # vanish in a puff of smoke. if test "X${COLLECT_NAMES+set}" != Xset; then COLLECT_NAMES= export COLLECT_NAMES fi ;; esac # Sed substitution that helps us do robust quoting. It backslashifies # metacharacters that are still active within double-quoted strings. sed_quote_subst='s/\([["`$\\]]\)/\\\1/g' # Same as above, but do not quote variable references. double_quote_subst='s/\([["`\\]]\)/\\\1/g' # Sed substitution to delay expansion of an escaped shell variable in a # double_quote_subst'ed string. delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g' # Sed substitution to delay expansion of an escaped single quote. delay_single_quote_subst='s/'\''/'\'\\\\\\\'\''/g' # Sed substitution to avoid accidental globbing in evaled expressions no_glob_subst='s/\*/\\\*/g' # Global variables: ofile=libtool can_build_shared=yes # All known linkers require a `.a' archive for static linking (except MSVC, # which needs '.lib'). libext=a with_gnu_ld="$lt_cv_prog_gnu_ld" old_CC="$CC" old_CFLAGS="$CFLAGS" # Set sane defaults for various variables test -z "$CC" && CC=cc test -z "$LTCC" && LTCC=$CC test -z "$LTCFLAGS" && LTCFLAGS=$CFLAGS test -z "$LD" && LD=ld test -z "$ac_objext" && ac_objext=o _LT_CC_BASENAME([$compiler]) # Only perform the check for file, if the check method requires it test -z "$MAGIC_CMD" && MAGIC_CMD=file case $deplibs_check_method in file_magic*) if test "$file_magic_cmd" = '$MAGIC_CMD'; then _LT_PATH_MAGIC fi ;; esac # Use C for the default configuration in the libtool script LT_SUPPORTED_TAG([CC]) _LT_LANG_C_CONFIG _LT_LANG_DEFAULT_CONFIG _LT_CONFIG_COMMANDS ])# _LT_SETUP # _LT_PROG_LTMAIN # --------------- # Note that this code is called both from `configure', and `config.status' # now that we use AC_CONFIG_COMMANDS to generate libtool. Notably, # `config.status' has no value for ac_aux_dir unless we are using Automake, # so we pass a copy along to make sure it has a sensible value anyway. m4_defun([_LT_PROG_LTMAIN], [m4_ifdef([AC_REQUIRE_AUX_FILE], [AC_REQUIRE_AUX_FILE([ltmain.sh])])dnl _LT_CONFIG_LIBTOOL_INIT([ac_aux_dir='$ac_aux_dir']) ltmain="$ac_aux_dir/ltmain.sh" ])# _LT_PROG_LTMAIN # So that we can recreate a full libtool script including additional # tags, we accumulate the chunks of code to send to AC_CONFIG_COMMANDS # in macros and then make a single call at the end using the `libtool' # label. # _LT_CONFIG_LIBTOOL_INIT([INIT-COMMANDS]) # ---------------------------------------- # Register INIT-COMMANDS to be passed to AC_CONFIG_COMMANDS later. m4_define([_LT_CONFIG_LIBTOOL_INIT], [m4_ifval([$1], [m4_append([_LT_OUTPUT_LIBTOOL_INIT], [$1 ])])]) # Initialize. m4_define([_LT_OUTPUT_LIBTOOL_INIT]) # _LT_CONFIG_LIBTOOL([COMMANDS]) # ------------------------------ # Register COMMANDS to be passed to AC_CONFIG_COMMANDS later. m4_define([_LT_CONFIG_LIBTOOL], [m4_ifval([$1], [m4_append([_LT_OUTPUT_LIBTOOL_COMMANDS], [$1 ])])]) # Initialize. m4_define([_LT_OUTPUT_LIBTOOL_COMMANDS]) # _LT_CONFIG_SAVE_COMMANDS([COMMANDS], [INIT_COMMANDS]) # ----------------------------------------------------- m4_defun([_LT_CONFIG_SAVE_COMMANDS], [_LT_CONFIG_LIBTOOL([$1]) _LT_CONFIG_LIBTOOL_INIT([$2]) ]) # _LT_FORMAT_COMMENT([COMMENT]) # ----------------------------- # Add leading comment marks to the start of each line, and a trailing # full-stop to the whole comment if one is not present already. m4_define([_LT_FORMAT_COMMENT], [m4_ifval([$1], [ m4_bpatsubst([m4_bpatsubst([$1], [^ *], [# ])], [['`$\]], [\\\&])]m4_bmatch([$1], [[!?.]$], [], [.]) )]) # _LT_DECL([CONFIGNAME], VARNAME, VALUE, [DESCRIPTION], [IS-TAGGED?]) # ------------------------------------------------------------------- # CONFIGNAME is the name given to the value in the libtool script. # VARNAME is the (base) name used in the configure script. # VALUE may be 0, 1 or 2 for a computed quote escaped value based on # VARNAME. Any other value will be used directly. m4_define([_LT_DECL], [lt_if_append_uniq([lt_decl_varnames], [$2], [, ], [lt_dict_add_subkey([lt_decl_dict], [$2], [libtool_name], [m4_ifval([$1], [$1], [$2])]) lt_dict_add_subkey([lt_decl_dict], [$2], [value], [$3]) m4_ifval([$4], [lt_dict_add_subkey([lt_decl_dict], [$2], [description], [$4])]) lt_dict_add_subkey([lt_decl_dict], [$2], [tagged?], [m4_ifval([$5], [yes], [no])])]) ]) # _LT_TAGDECL([CONFIGNAME], VARNAME, VALUE, [DESCRIPTION]) # -------------------------------------------------------- m4_define([_LT_TAGDECL], [_LT_DECL([$1], [$2], [$3], [$4], [yes])]) # lt_decl_tag_varnames([SEPARATOR], [VARNAME1...]) # ------------------------------------------------ m4_define([lt_decl_tag_varnames], [_lt_decl_filter([tagged?], [yes], $@)]) # _lt_decl_filter(SUBKEY, VALUE, [SEPARATOR], [VARNAME1..]) # --------------------------------------------------------- m4_define([_lt_decl_filter], [m4_case([$#], [0], [m4_fatal([$0: too few arguments: $#])], [1], [m4_fatal([$0: too few arguments: $#: $1])], [2], [lt_dict_filter([lt_decl_dict], [$1], [$2], [], lt_decl_varnames)], [3], [lt_dict_filter([lt_decl_dict], [$1], [$2], [$3], lt_decl_varnames)], [lt_dict_filter([lt_decl_dict], $@)])[]dnl ]) # lt_decl_quote_varnames([SEPARATOR], [VARNAME1...]) # -------------------------------------------------- m4_define([lt_decl_quote_varnames], [_lt_decl_filter([value], [1], $@)]) # lt_decl_dquote_varnames([SEPARATOR], [VARNAME1...]) # --------------------------------------------------- m4_define([lt_decl_dquote_varnames], [_lt_decl_filter([value], [2], $@)]) # lt_decl_varnames_tagged([SEPARATOR], [VARNAME1...]) # --------------------------------------------------- m4_define([lt_decl_varnames_tagged], [m4_assert([$# <= 2])dnl _$0(m4_quote(m4_default([$1], [[, ]])), m4_ifval([$2], [[$2]], [m4_dquote(lt_decl_tag_varnames)]), m4_split(m4_normalize(m4_quote(_LT_TAGS)), [ ]))]) m4_define([_lt_decl_varnames_tagged], [m4_ifval([$3], [lt_combine([$1], [$2], [_], $3)])]) # lt_decl_all_varnames([SEPARATOR], [VARNAME1...]) # ------------------------------------------------ m4_define([lt_decl_all_varnames], [_$0(m4_quote(m4_default([$1], [[, ]])), m4_if([$2], [], m4_quote(lt_decl_varnames), m4_quote(m4_shift($@))))[]dnl ]) m4_define([_lt_decl_all_varnames], [lt_join($@, lt_decl_varnames_tagged([$1], lt_decl_tag_varnames([[, ]], m4_shift($@))))dnl ]) # _LT_CONFIG_STATUS_DECLARE([VARNAME]) # ------------------------------------ # Quote a variable value, and forward it to `config.status' so that its # declaration there will have the same value as in `configure'. VARNAME # must have a single quote delimited value for this to work. m4_define([_LT_CONFIG_STATUS_DECLARE], [$1='`$ECHO "X$][$1" | $Xsed -e "$delay_single_quote_subst"`']) # _LT_CONFIG_STATUS_DECLARATIONS # ------------------------------ # We delimit libtool config variables with single quotes, so when # we write them to config.status, we have to be sure to quote all # embedded single quotes properly. In configure, this macro expands # each variable declared with _LT_DECL (and _LT_TAGDECL) into: # # ='`$ECHO "X$" | $Xsed -e "$delay_single_quote_subst"`' m4_defun([_LT_CONFIG_STATUS_DECLARATIONS], [m4_foreach([_lt_var], m4_quote(lt_decl_all_varnames), [m4_n([_LT_CONFIG_STATUS_DECLARE(_lt_var)])])]) # _LT_LIBTOOL_TAGS # ---------------- # Output comment and list of tags supported by the script m4_defun([_LT_LIBTOOL_TAGS], [_LT_FORMAT_COMMENT([The names of the tagged configurations supported by this script])dnl available_tags="_LT_TAGS"dnl ]) # _LT_LIBTOOL_DECLARE(VARNAME, [TAG]) # ----------------------------------- # Extract the dictionary values for VARNAME (optionally with TAG) and # expand to a commented shell variable setting: # # # Some comment about what VAR is for. # visible_name=$lt_internal_name m4_define([_LT_LIBTOOL_DECLARE], [_LT_FORMAT_COMMENT(m4_quote(lt_dict_fetch([lt_decl_dict], [$1], [description])))[]dnl m4_pushdef([_libtool_name], m4_quote(lt_dict_fetch([lt_decl_dict], [$1], [libtool_name])))[]dnl m4_case(m4_quote(lt_dict_fetch([lt_decl_dict], [$1], [value])), [0], [_libtool_name=[$]$1], [1], [_libtool_name=$lt_[]$1], [2], [_libtool_name=$lt_[]$1], [_libtool_name=lt_dict_fetch([lt_decl_dict], [$1], [value])])[]dnl m4_ifval([$2], [_$2])[]m4_popdef([_libtool_name])[]dnl ]) # _LT_LIBTOOL_CONFIG_VARS # ----------------------- # Produce commented declarations of non-tagged libtool config variables # suitable for insertion in the LIBTOOL CONFIG section of the `libtool' # script. Tagged libtool config variables (even for the LIBTOOL CONFIG # section) are produced by _LT_LIBTOOL_TAG_VARS. m4_defun([_LT_LIBTOOL_CONFIG_VARS], [m4_foreach([_lt_var], m4_quote(_lt_decl_filter([tagged?], [no], [], lt_decl_varnames)), [m4_n([_LT_LIBTOOL_DECLARE(_lt_var)])])]) # _LT_LIBTOOL_TAG_VARS(TAG) # ------------------------- m4_define([_LT_LIBTOOL_TAG_VARS], [m4_foreach([_lt_var], m4_quote(lt_decl_tag_varnames), [m4_n([_LT_LIBTOOL_DECLARE(_lt_var, [$1])])])]) # _LT_TAGVAR(VARNAME, [TAGNAME]) # ------------------------------ m4_define([_LT_TAGVAR], [m4_ifval([$2], [$1_$2], [$1])]) # _LT_CONFIG_COMMANDS # ------------------- # Send accumulated output to $CONFIG_STATUS. Thanks to the lists of # variables for single and double quote escaping we saved from calls # to _LT_DECL, we can put quote escaped variables declarations # into `config.status', and then the shell code to quote escape them in # for loops in `config.status'. Finally, any additional code accumulated # from calls to _LT_CONFIG_LIBTOOL_INIT is expanded. m4_defun([_LT_CONFIG_COMMANDS], [AC_PROVIDE_IFELSE([LT_OUTPUT], dnl If the libtool generation code has been placed in $CONFIG_LT, dnl instead of duplicating it all over again into config.status, dnl then we will have config.status run $CONFIG_LT later, so it dnl needs to know what name is stored there: [AC_CONFIG_COMMANDS([libtool], [$SHELL $CONFIG_LT || AS_EXIT(1)], [CONFIG_LT='$CONFIG_LT'])], dnl If the libtool generation code is destined for config.status, dnl expand the accumulated commands and init code now: [AC_CONFIG_COMMANDS([libtool], [_LT_OUTPUT_LIBTOOL_COMMANDS], [_LT_OUTPUT_LIBTOOL_COMMANDS_INIT])]) ])#_LT_CONFIG_COMMANDS # Initialize. m4_define([_LT_OUTPUT_LIBTOOL_COMMANDS_INIT], [ # The HP-UX ksh and POSIX shell print the target directory to stdout # if CDPATH is set. (unset CDPATH) >/dev/null 2>&1 && unset CDPATH sed_quote_subst='$sed_quote_subst' double_quote_subst='$double_quote_subst' delay_variable_subst='$delay_variable_subst' _LT_CONFIG_STATUS_DECLARATIONS LTCC='$LTCC' LTCFLAGS='$LTCFLAGS' compiler='$compiler_DEFAULT' # Quote evaled strings. for var in lt_decl_all_varnames([[ \ ]], lt_decl_quote_varnames); do case \`eval \\\\\$ECHO "X\\\\\$\$var"\` in *[[\\\\\\\`\\"\\\$]]*) eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"X\\\$\$var\\" | \\\$Xsed -e \\"\\\$sed_quote_subst\\"\\\`\\\\\\"" ;; *) eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\"" ;; esac done # Double-quote double-evaled strings. for var in lt_decl_all_varnames([[ \ ]], lt_decl_dquote_varnames); do case \`eval \\\\\$ECHO "X\\\\\$\$var"\` in *[[\\\\\\\`\\"\\\$]]*) eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"X\\\$\$var\\" | \\\$Xsed -e \\"\\\$double_quote_subst\\" -e \\"\\\$sed_quote_subst\\" -e \\"\\\$delay_variable_subst\\"\\\`\\\\\\"" ;; *) eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\"" ;; esac done # Fix-up fallback echo if it was mangled by the above quoting rules. case \$lt_ECHO in *'\\\[$]0 --fallback-echo"')dnl " lt_ECHO=\`\$ECHO "X\$lt_ECHO" | \$Xsed -e 's/\\\\\\\\\\\\\\\[$]0 --fallback-echo"\[$]/\[$]0 --fallback-echo"/'\` ;; esac _LT_OUTPUT_LIBTOOL_INIT ]) # LT_OUTPUT # --------- # This macro allows early generation of the libtool script (before # AC_OUTPUT is called), incase it is used in configure for compilation # tests. AC_DEFUN([LT_OUTPUT], [: ${CONFIG_LT=./config.lt} AC_MSG_NOTICE([creating $CONFIG_LT]) cat >"$CONFIG_LT" <<_LTEOF #! $SHELL # Generated by $as_me. # Run this file to recreate a libtool stub with the current configuration. lt_cl_silent=false SHELL=\${CONFIG_SHELL-$SHELL} _LTEOF cat >>"$CONFIG_LT" <<\_LTEOF AS_SHELL_SANITIZE _AS_PREPARE exec AS_MESSAGE_FD>&1 exec AS_MESSAGE_LOG_FD>>config.log { echo AS_BOX([Running $as_me.]) } >&AS_MESSAGE_LOG_FD lt_cl_help="\ \`$as_me' creates a local libtool stub from the current configuration, for use in further configure time tests before the real libtool is generated. Usage: $[0] [[OPTIONS]] -h, --help print this help, then exit -V, --version print version number, then exit -q, --quiet do not print progress messages -d, --debug don't remove temporary files Report bugs to ." lt_cl_version="\ m4_ifset([AC_PACKAGE_NAME], [AC_PACKAGE_NAME ])config.lt[]dnl m4_ifset([AC_PACKAGE_VERSION], [ AC_PACKAGE_VERSION]) configured by $[0], generated by m4_PACKAGE_STRING. Copyright (C) 2008 Free Software Foundation, Inc. This config.lt script is free software; the Free Software Foundation gives unlimited permision to copy, distribute and modify it." while test $[#] != 0 do case $[1] in --version | --v* | -V ) echo "$lt_cl_version"; exit 0 ;; --help | --h* | -h ) echo "$lt_cl_help"; exit 0 ;; --debug | --d* | -d ) debug=: ;; --quiet | --q* | --silent | --s* | -q ) lt_cl_silent=: ;; -*) AC_MSG_ERROR([unrecognized option: $[1] Try \`$[0] --help' for more information.]) ;; *) AC_MSG_ERROR([unrecognized argument: $[1] Try \`$[0] --help' for more information.]) ;; esac shift done if $lt_cl_silent; then exec AS_MESSAGE_FD>/dev/null fi _LTEOF cat >>"$CONFIG_LT" <<_LTEOF _LT_OUTPUT_LIBTOOL_COMMANDS_INIT _LTEOF cat >>"$CONFIG_LT" <<\_LTEOF AC_MSG_NOTICE([creating $ofile]) _LT_OUTPUT_LIBTOOL_COMMANDS AS_EXIT(0) _LTEOF chmod +x "$CONFIG_LT" # configure is writing to config.log, but config.lt does its own redirection, # appending to config.log, which fails on DOS, as config.log is still kept # open by configure. Here we exec the FD to /dev/null, effectively closing # config.log, so it can be properly (re)opened and appended to by config.lt. if test "$no_create" != yes; then lt_cl_success=: test "$silent" = yes && lt_config_lt_args="$lt_config_lt_args --quiet" exec AS_MESSAGE_LOG_FD>/dev/null $SHELL "$CONFIG_LT" $lt_config_lt_args || lt_cl_success=false exec AS_MESSAGE_LOG_FD>>config.log $lt_cl_success || AS_EXIT(1) fi ])# LT_OUTPUT # _LT_CONFIG(TAG) # --------------- # If TAG is the built-in tag, create an initial libtool script with a # default configuration from the untagged config vars. Otherwise add code # to config.status for appending the configuration named by TAG from the # matching tagged config vars. m4_defun([_LT_CONFIG], [m4_require([_LT_FILEUTILS_DEFAULTS])dnl _LT_CONFIG_SAVE_COMMANDS([ m4_define([_LT_TAG], m4_if([$1], [], [C], [$1]))dnl m4_if(_LT_TAG, [C], [ # See if we are running on zsh, and set the options which allow our # commands through without removal of \ escapes. if test -n "${ZSH_VERSION+set}" ; then setopt NO_GLOB_SUBST fi cfgfile="${ofile}T" trap "$RM \"$cfgfile\"; exit 1" 1 2 15 $RM "$cfgfile" cat <<_LT_EOF >> "$cfgfile" #! $SHELL # `$ECHO "$ofile" | sed 's%^.*/%%'` - Provide generalized library-building support services. # Generated automatically by $as_me ($PACKAGE$TIMESTAMP) $VERSION # Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`: # NOTE: Changes made to this file will be lost: look at ltmain.sh. # _LT_COPYING _LT_LIBTOOL_TAGS # ### BEGIN LIBTOOL CONFIG _LT_LIBTOOL_CONFIG_VARS _LT_LIBTOOL_TAG_VARS # ### END LIBTOOL CONFIG _LT_EOF case $host_os in aix3*) cat <<\_LT_EOF >> "$cfgfile" # AIX sometimes has problems with the GCC collect2 program. For some # reason, if we set the COLLECT_NAMES environment variable, the problems # vanish in a puff of smoke. if test "X${COLLECT_NAMES+set}" != Xset; then COLLECT_NAMES= export COLLECT_NAMES fi _LT_EOF ;; esac _LT_PROG_LTMAIN # We use sed instead of cat because bash on DJGPP gets confused if # if finds mixed CR/LF and LF-only lines. Since sed operates in # text mode, it properly converts lines to CR/LF. This bash problem # is reportedly fixed, but why not run on old versions too? sed '/^# Generated shell functions inserted here/q' "$ltmain" >> "$cfgfile" \ || (rm -f "$cfgfile"; exit 1) _LT_PROG_XSI_SHELLFNS sed -n '/^# Generated shell functions inserted here/,$p' "$ltmain" >> "$cfgfile" \ || (rm -f "$cfgfile"; exit 1) mv -f "$cfgfile" "$ofile" || (rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile") chmod +x "$ofile" ], [cat <<_LT_EOF >> "$ofile" dnl Unfortunately we have to use $1 here, since _LT_TAG is not expanded dnl in a comment (ie after a #). # ### BEGIN LIBTOOL TAG CONFIG: $1 _LT_LIBTOOL_TAG_VARS(_LT_TAG) # ### END LIBTOOL TAG CONFIG: $1 _LT_EOF ])dnl /m4_if ], [m4_if([$1], [], [ PACKAGE='$PACKAGE' VERSION='$VERSION' TIMESTAMP='$TIMESTAMP' RM='$RM' ofile='$ofile'], []) ])dnl /_LT_CONFIG_SAVE_COMMANDS ])# _LT_CONFIG # LT_SUPPORTED_TAG(TAG) # --------------------- # Trace this macro to discover what tags are supported by the libtool # --tag option, using: # autoconf --trace 'LT_SUPPORTED_TAG:$1' AC_DEFUN([LT_SUPPORTED_TAG], []) # C support is built-in for now m4_define([_LT_LANG_C_enabled], []) m4_define([_LT_TAGS], []) # LT_LANG(LANG) # ------------- # Enable libtool support for the given language if not already enabled. AC_DEFUN([LT_LANG], [AC_BEFORE([$0], [LT_OUTPUT])dnl m4_case([$1], [C], [_LT_LANG(C)], [C++], [_LT_LANG(CXX)], [Java], [_LT_LANG(GCJ)], [Fortran 77], [_LT_LANG(F77)], [Fortran], [_LT_LANG(FC)], [Windows Resource], [_LT_LANG(RC)], [m4_ifdef([_LT_LANG_]$1[_CONFIG], [_LT_LANG($1)], [m4_fatal([$0: unsupported language: "$1"])])])dnl ])# LT_LANG # _LT_LANG(LANGNAME) # ------------------ m4_defun([_LT_LANG], [m4_ifdef([_LT_LANG_]$1[_enabled], [], [LT_SUPPORTED_TAG([$1])dnl m4_append([_LT_TAGS], [$1 ])dnl m4_define([_LT_LANG_]$1[_enabled], [])dnl _LT_LANG_$1_CONFIG($1)])dnl ])# _LT_LANG # _LT_LANG_DEFAULT_CONFIG # ----------------------- m4_defun([_LT_LANG_DEFAULT_CONFIG], [AC_PROVIDE_IFELSE([AC_PROG_CXX], [LT_LANG(CXX)], [m4_define([AC_PROG_CXX], defn([AC_PROG_CXX])[LT_LANG(CXX)])]) AC_PROVIDE_IFELSE([AC_PROG_F77], [LT_LANG(F77)], [m4_define([AC_PROG_F77], defn([AC_PROG_F77])[LT_LANG(F77)])]) AC_PROVIDE_IFELSE([AC_PROG_FC], [LT_LANG(FC)], [m4_define([AC_PROG_FC], defn([AC_PROG_FC])[LT_LANG(FC)])]) dnl The call to [A][M_PROG_GCJ] is quoted like that to stop aclocal dnl pulling things in needlessly. AC_PROVIDE_IFELSE([AC_PROG_GCJ], [LT_LANG(GCJ)], [AC_PROVIDE_IFELSE([A][M_PROG_GCJ], [LT_LANG(GCJ)], [AC_PROVIDE_IFELSE([LT_PROG_GCJ], [LT_LANG(GCJ)], [m4_ifdef([AC_PROG_GCJ], [m4_define([AC_PROG_GCJ], defn([AC_PROG_GCJ])[LT_LANG(GCJ)])]) m4_ifdef([A][M_PROG_GCJ], [m4_define([A][M_PROG_GCJ], defn([A][M_PROG_GCJ])[LT_LANG(GCJ)])]) m4_ifdef([LT_PROG_GCJ], [m4_define([LT_PROG_GCJ], defn([LT_PROG_GCJ])[LT_LANG(GCJ)])])])])]) AC_PROVIDE_IFELSE([LT_PROG_RC], [LT_LANG(RC)], [m4_define([LT_PROG_RC], defn([LT_PROG_RC])[LT_LANG(RC)])]) ])# _LT_LANG_DEFAULT_CONFIG # Obsolete macros: AU_DEFUN([AC_LIBTOOL_CXX], [LT_LANG(C++)]) AU_DEFUN([AC_LIBTOOL_F77], [LT_LANG(Fortran 77)]) AU_DEFUN([AC_LIBTOOL_FC], [LT_LANG(Fortran)]) AU_DEFUN([AC_LIBTOOL_GCJ], [LT_LANG(Java)]) dnl aclocal-1.4 backwards compatibility: dnl AC_DEFUN([AC_LIBTOOL_CXX], []) dnl AC_DEFUN([AC_LIBTOOL_F77], []) dnl AC_DEFUN([AC_LIBTOOL_FC], []) dnl AC_DEFUN([AC_LIBTOOL_GCJ], []) # _LT_TAG_COMPILER # ---------------- m4_defun([_LT_TAG_COMPILER], [AC_REQUIRE([AC_PROG_CC])dnl _LT_DECL([LTCC], [CC], [1], [A C compiler])dnl _LT_DECL([LTCFLAGS], [CFLAGS], [1], [LTCC compiler flags])dnl _LT_TAGDECL([CC], [compiler], [1], [A language specific compiler])dnl _LT_TAGDECL([with_gcc], [GCC], [0], [Is the compiler the GNU compiler?])dnl # If no C compiler was specified, use CC. LTCC=${LTCC-"$CC"} # If no C compiler flags were specified, use CFLAGS. LTCFLAGS=${LTCFLAGS-"$CFLAGS"} # Allow CC to be a program name with arguments. compiler=$CC ])# _LT_TAG_COMPILER # _LT_COMPILER_BOILERPLATE # ------------------------ # Check for compiler boilerplate output or warnings with # the simple compiler test code. m4_defun([_LT_COMPILER_BOILERPLATE], [m4_require([_LT_DECL_SED])dnl ac_outfile=conftest.$ac_objext echo "$lt_simple_compile_test_code" >conftest.$ac_ext eval "$ac_compile" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err _lt_compiler_boilerplate=`cat conftest.err` $RM conftest* ])# _LT_COMPILER_BOILERPLATE # _LT_LINKER_BOILERPLATE # ---------------------- # Check for linker boilerplate output or warnings with # the simple link test code. m4_defun([_LT_LINKER_BOILERPLATE], [m4_require([_LT_DECL_SED])dnl ac_outfile=conftest.$ac_objext echo "$lt_simple_link_test_code" >conftest.$ac_ext eval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err _lt_linker_boilerplate=`cat conftest.err` $RM -r conftest* ])# _LT_LINKER_BOILERPLATE # _LT_REQUIRED_DARWIN_CHECKS # ------------------------- m4_defun_once([_LT_REQUIRED_DARWIN_CHECKS],[ case $host_os in rhapsody* | darwin*) AC_CHECK_TOOL([DSYMUTIL], [dsymutil], [:]) AC_CHECK_TOOL([NMEDIT], [nmedit], [:]) AC_CHECK_TOOL([LIPO], [lipo], [:]) AC_CHECK_TOOL([OTOOL], [otool], [:]) AC_CHECK_TOOL([OTOOL64], [otool64], [:]) _LT_DECL([], [DSYMUTIL], [1], [Tool to manipulate archived DWARF debug symbol files on Mac OS X]) _LT_DECL([], [NMEDIT], [1], [Tool to change global to local symbols on Mac OS X]) _LT_DECL([], [LIPO], [1], [Tool to manipulate fat objects and archives on Mac OS X]) _LT_DECL([], [OTOOL], [1], [ldd/readelf like tool for Mach-O binaries on Mac OS X]) _LT_DECL([], [OTOOL64], [1], [ldd/readelf like tool for 64 bit Mach-O binaries on Mac OS X 10.4]) AC_CACHE_CHECK([for -single_module linker flag],[lt_cv_apple_cc_single_mod], [lt_cv_apple_cc_single_mod=no if test -z "${LT_MULTI_MODULE}"; then # By default we will add the -single_module flag. You can override # by either setting the environment variable LT_MULTI_MODULE # non-empty at configure time, or by adding -multi_module to the # link flags. rm -rf libconftest.dylib* echo "int foo(void){return 1;}" > conftest.c echo "$LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \ -dynamiclib -Wl,-single_module conftest.c" >&AS_MESSAGE_LOG_FD $LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \ -dynamiclib -Wl,-single_module conftest.c 2>conftest.err _lt_result=$? if test -f libconftest.dylib && test ! -s conftest.err && test $_lt_result = 0; then lt_cv_apple_cc_single_mod=yes else cat conftest.err >&AS_MESSAGE_LOG_FD fi rm -rf libconftest.dylib* rm -f conftest.* fi]) AC_CACHE_CHECK([for -exported_symbols_list linker flag], [lt_cv_ld_exported_symbols_list], [lt_cv_ld_exported_symbols_list=no save_LDFLAGS=$LDFLAGS echo "_main" > conftest.sym LDFLAGS="$LDFLAGS -Wl,-exported_symbols_list,conftest.sym" AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])], [lt_cv_ld_exported_symbols_list=yes], [lt_cv_ld_exported_symbols_list=no]) LDFLAGS="$save_LDFLAGS" ]) case $host_os in rhapsody* | darwin1.[[012]]) _lt_dar_allow_undefined='${wl}-undefined ${wl}suppress' ;; darwin1.*) _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;; darwin*) # darwin 5.x on # if running on 10.5 or later, the deployment target defaults # to the OS version, if on x86, and 10.4, the deployment # target defaults to 10.4. Don't you love it? case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in 10.0,*86*-darwin8*|10.0,*-darwin[[91]]*) _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;; 10.[[012]]*) _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;; 10.*) _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;; esac ;; esac if test "$lt_cv_apple_cc_single_mod" = "yes"; then _lt_dar_single_mod='$single_module' fi if test "$lt_cv_ld_exported_symbols_list" = "yes"; then _lt_dar_export_syms=' ${wl}-exported_symbols_list,$output_objdir/${libname}-symbols.expsym' else _lt_dar_export_syms='~$NMEDIT -s $output_objdir/${libname}-symbols.expsym ${lib}' fi if test "$DSYMUTIL" != ":"; then _lt_dsymutil='~$DSYMUTIL $lib || :' else _lt_dsymutil= fi ;; esac ]) # _LT_DARWIN_LINKER_FEATURES # -------------------------- # Checks for linker and compiler features on darwin m4_defun([_LT_DARWIN_LINKER_FEATURES], [ m4_require([_LT_REQUIRED_DARWIN_CHECKS]) _LT_TAGVAR(archive_cmds_need_lc, $1)=no _LT_TAGVAR(hardcode_direct, $1)=no _LT_TAGVAR(hardcode_automatic, $1)=yes _LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported _LT_TAGVAR(whole_archive_flag_spec, $1)='' _LT_TAGVAR(link_all_deplibs, $1)=yes _LT_TAGVAR(allow_undefined_flag, $1)="$_lt_dar_allow_undefined" case $cc_basename in ifort*) _lt_dar_can_shared=yes ;; *) _lt_dar_can_shared=$GCC ;; esac if test "$_lt_dar_can_shared" = "yes"; then output_verbose_link_cmd=echo _LT_TAGVAR(archive_cmds, $1)="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}" _LT_TAGVAR(module_cmds, $1)="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}" _LT_TAGVAR(archive_expsym_cmds, $1)="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}" _LT_TAGVAR(module_expsym_cmds, $1)="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}" m4_if([$1], [CXX], [ if test "$lt_cv_apple_cc_single_mod" != "yes"; then _LT_TAGVAR(archive_cmds, $1)="\$CC -r -keep_private_externs -nostdlib -o \${lib}-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \${lib}-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring${_lt_dsymutil}" _LT_TAGVAR(archive_expsym_cmds, $1)="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -r -keep_private_externs -nostdlib -o \${lib}-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \${lib}-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring${_lt_dar_export_syms}${_lt_dsymutil}" fi ],[]) else _LT_TAGVAR(ld_shlibs, $1)=no fi ]) # _LT_SYS_MODULE_PATH_AIX # ----------------------- # Links a minimal program and checks the executable # for the system default hardcoded library path. In most cases, # this is /usr/lib:/lib, but when the MPI compilers are used # the location of the communication and MPI libs are included too. # If we don't find anything, use the default library path according # to the aix ld manual. m4_defun([_LT_SYS_MODULE_PATH_AIX], [m4_require([_LT_DECL_SED])dnl AC_LINK_IFELSE(AC_LANG_PROGRAM,[ lt_aix_libpath_sed=' /Import File Strings/,/^$/ { /^0/ { s/^0 *\(.*\)$/\1/ p } }' aix_libpath=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"` # Check for a 64-bit object if we didn't find anything. if test -z "$aix_libpath"; then aix_libpath=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"` fi],[]) if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi ])# _LT_SYS_MODULE_PATH_AIX # _LT_SHELL_INIT(ARG) # ------------------- m4_define([_LT_SHELL_INIT], [ifdef([AC_DIVERSION_NOTICE], [AC_DIVERT_PUSH(AC_DIVERSION_NOTICE)], [AC_DIVERT_PUSH(NOTICE)]) $1 AC_DIVERT_POP ])# _LT_SHELL_INIT # _LT_PROG_ECHO_BACKSLASH # ----------------------- # Add some code to the start of the generated configure script which # will find an echo command which doesn't interpret backslashes. m4_defun([_LT_PROG_ECHO_BACKSLASH], [_LT_SHELL_INIT([ # Check that we are running under the correct shell. SHELL=${CONFIG_SHELL-/bin/sh} case X$lt_ECHO in X*--fallback-echo) # Remove one level of quotation (which was required for Make). ECHO=`echo "$lt_ECHO" | sed 's,\\\\\[$]\\[$]0,'[$]0','` ;; esac ECHO=${lt_ECHO-echo} if test "X[$]1" = X--no-reexec; then # Discard the --no-reexec flag, and continue. shift elif test "X[$]1" = X--fallback-echo; then # Avoid inline document here, it may be left over : elif test "X`{ $ECHO '\t'; } 2>/dev/null`" = 'X\t' ; then # Yippee, $ECHO works! : else # Restart under the correct shell. exec $SHELL "[$]0" --no-reexec ${1+"[$]@"} fi if test "X[$]1" = X--fallback-echo; then # used as fallback echo shift cat <<_LT_EOF [$]* _LT_EOF exit 0 fi # The HP-UX ksh and POSIX shell print the target directory to stdout # if CDPATH is set. (unset CDPATH) >/dev/null 2>&1 && unset CDPATH if test -z "$lt_ECHO"; then if test "X${echo_test_string+set}" != Xset; then # find a string as large as possible, as long as the shell can cope with it for cmd in 'sed 50q "[$]0"' 'sed 20q "[$]0"' 'sed 10q "[$]0"' 'sed 2q "[$]0"' 'echo test'; do # expected sizes: less than 2Kb, 1Kb, 512 bytes, 16 bytes, ... if { echo_test_string=`eval $cmd`; } 2>/dev/null && { test "X$echo_test_string" = "X$echo_test_string"; } 2>/dev/null then break fi done fi if test "X`{ $ECHO '\t'; } 2>/dev/null`" = 'X\t' && echo_testing_string=`{ $ECHO "$echo_test_string"; } 2>/dev/null` && test "X$echo_testing_string" = "X$echo_test_string"; then : else # The Solaris, AIX, and Digital Unix default echo programs unquote # backslashes. This makes it impossible to quote backslashes using # echo "$something" | sed 's/\\/\\\\/g' # # So, first we look for a working echo in the user's PATH. lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR for dir in $PATH /usr/ucb; do IFS="$lt_save_ifs" if (test -f $dir/echo || test -f $dir/echo$ac_exeext) && test "X`($dir/echo '\t') 2>/dev/null`" = 'X\t' && echo_testing_string=`($dir/echo "$echo_test_string") 2>/dev/null` && test "X$echo_testing_string" = "X$echo_test_string"; then ECHO="$dir/echo" break fi done IFS="$lt_save_ifs" if test "X$ECHO" = Xecho; then # We didn't find a better echo, so look for alternatives. if test "X`{ print -r '\t'; } 2>/dev/null`" = 'X\t' && echo_testing_string=`{ print -r "$echo_test_string"; } 2>/dev/null` && test "X$echo_testing_string" = "X$echo_test_string"; then # This shell has a builtin print -r that does the trick. ECHO='print -r' elif { test -f /bin/ksh || test -f /bin/ksh$ac_exeext; } && test "X$CONFIG_SHELL" != X/bin/ksh; then # If we have ksh, try running configure again with it. ORIGINAL_CONFIG_SHELL=${CONFIG_SHELL-/bin/sh} export ORIGINAL_CONFIG_SHELL CONFIG_SHELL=/bin/ksh export CONFIG_SHELL exec $CONFIG_SHELL "[$]0" --no-reexec ${1+"[$]@"} else # Try using printf. ECHO='printf %s\n' if test "X`{ $ECHO '\t'; } 2>/dev/null`" = 'X\t' && echo_testing_string=`{ $ECHO "$echo_test_string"; } 2>/dev/null` && test "X$echo_testing_string" = "X$echo_test_string"; then # Cool, printf works : elif echo_testing_string=`($ORIGINAL_CONFIG_SHELL "[$]0" --fallback-echo '\t') 2>/dev/null` && test "X$echo_testing_string" = 'X\t' && echo_testing_string=`($ORIGINAL_CONFIG_SHELL "[$]0" --fallback-echo "$echo_test_string") 2>/dev/null` && test "X$echo_testing_string" = "X$echo_test_string"; then CONFIG_SHELL=$ORIGINAL_CONFIG_SHELL export CONFIG_SHELL SHELL="$CONFIG_SHELL" export SHELL ECHO="$CONFIG_SHELL [$]0 --fallback-echo" elif echo_testing_string=`($CONFIG_SHELL "[$]0" --fallback-echo '\t') 2>/dev/null` && test "X$echo_testing_string" = 'X\t' && echo_testing_string=`($CONFIG_SHELL "[$]0" --fallback-echo "$echo_test_string") 2>/dev/null` && test "X$echo_testing_string" = "X$echo_test_string"; then ECHO="$CONFIG_SHELL [$]0 --fallback-echo" else # maybe with a smaller string... prev=: for cmd in 'echo test' 'sed 2q "[$]0"' 'sed 10q "[$]0"' 'sed 20q "[$]0"' 'sed 50q "[$]0"'; do if { test "X$echo_test_string" = "X`eval $cmd`"; } 2>/dev/null then break fi prev="$cmd" done if test "$prev" != 'sed 50q "[$]0"'; then echo_test_string=`eval $prev` export echo_test_string exec ${ORIGINAL_CONFIG_SHELL-${CONFIG_SHELL-/bin/sh}} "[$]0" ${1+"[$]@"} else # Oops. We lost completely, so just stick with echo. ECHO=echo fi fi fi fi fi fi # Copy echo and quote the copy suitably for passing to libtool from # the Makefile, instead of quoting the original, which is used later. lt_ECHO=$ECHO if test "X$lt_ECHO" = "X$CONFIG_SHELL [$]0 --fallback-echo"; then lt_ECHO="$CONFIG_SHELL \\\$\[$]0 --fallback-echo" fi AC_SUBST(lt_ECHO) ]) _LT_DECL([], [SHELL], [1], [Shell to use when invoking shell scripts]) _LT_DECL([], [ECHO], [1], [An echo program that does not interpret backslashes]) ])# _LT_PROG_ECHO_BACKSLASH # _LT_ENABLE_LOCK # --------------- m4_defun([_LT_ENABLE_LOCK], [AC_ARG_ENABLE([libtool-lock], [AS_HELP_STRING([--disable-libtool-lock], [avoid locking (might break parallel builds)])]) test "x$enable_libtool_lock" != xno && enable_libtool_lock=yes # Some flags need to be propagated to the compiler or linker for good # libtool support. case $host in ia64-*-hpux*) # Find out which ABI we are using. echo 'int i;' > conftest.$ac_ext if AC_TRY_EVAL(ac_compile); then case `/usr/bin/file conftest.$ac_objext` in *ELF-32*) HPUX_IA64_MODE="32" ;; *ELF-64*) HPUX_IA64_MODE="64" ;; esac fi rm -rf conftest* ;; *-*-irix6*) # Find out which ABI we are using. echo '[#]line __oline__ "configure"' > conftest.$ac_ext if AC_TRY_EVAL(ac_compile); then if test "$lt_cv_prog_gnu_ld" = yes; then case `/usr/bin/file conftest.$ac_objext` in *32-bit*) LD="${LD-ld} -melf32bsmip" ;; *N32*) LD="${LD-ld} -melf32bmipn32" ;; *64-bit*) LD="${LD-ld} -melf64bmip" ;; esac else case `/usr/bin/file conftest.$ac_objext` in *32-bit*) LD="${LD-ld} -32" ;; *N32*) LD="${LD-ld} -n32" ;; *64-bit*) LD="${LD-ld} -64" ;; esac fi fi rm -rf conftest* ;; x86_64-*kfreebsd*-gnu|x86_64-*linux*|ppc*-*linux*|powerpc*-*linux*| \ s390*-*linux*|s390*-*tpf*|sparc*-*linux*) # Find out which ABI we are using. echo 'int i;' > conftest.$ac_ext if AC_TRY_EVAL(ac_compile); then case `/usr/bin/file conftest.o` in *32-bit*) case $host in x86_64-*kfreebsd*-gnu) LD="${LD-ld} -m elf_i386_fbsd" ;; x86_64-*linux*) LD="${LD-ld} -m elf_i386" ;; ppc64-*linux*|powerpc64-*linux*) LD="${LD-ld} -m elf32ppclinux" ;; s390x-*linux*) LD="${LD-ld} -m elf_s390" ;; sparc64-*linux*) LD="${LD-ld} -m elf32_sparc" ;; esac ;; *64-bit*) case $host in x86_64-*kfreebsd*-gnu) LD="${LD-ld} -m elf_x86_64_fbsd" ;; x86_64-*linux*) LD="${LD-ld} -m elf_x86_64" ;; ppc*-*linux*|powerpc*-*linux*) LD="${LD-ld} -m elf64ppc" ;; s390*-*linux*|s390*-*tpf*) LD="${LD-ld} -m elf64_s390" ;; sparc*-*linux*) LD="${LD-ld} -m elf64_sparc" ;; esac ;; esac fi rm -rf conftest* ;; *-*-sco3.2v5*) # On SCO OpenServer 5, we need -belf to get full-featured binaries. SAVE_CFLAGS="$CFLAGS" CFLAGS="$CFLAGS -belf" AC_CACHE_CHECK([whether the C compiler needs -belf], lt_cv_cc_needs_belf, [AC_LANG_PUSH(C) AC_LINK_IFELSE([AC_LANG_PROGRAM([[]],[[]])],[lt_cv_cc_needs_belf=yes],[lt_cv_cc_needs_belf=no]) AC_LANG_POP]) if test x"$lt_cv_cc_needs_belf" != x"yes"; then # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf CFLAGS="$SAVE_CFLAGS" fi ;; sparc*-*solaris*) # Find out which ABI we are using. echo 'int i;' > conftest.$ac_ext if AC_TRY_EVAL(ac_compile); then case `/usr/bin/file conftest.o` in *64-bit*) case $lt_cv_prog_gnu_ld in yes*) LD="${LD-ld} -m elf64_sparc" ;; *) if ${LD-ld} -64 -r -o conftest2.o conftest.o >/dev/null 2>&1; then LD="${LD-ld} -64" fi ;; esac ;; esac fi rm -rf conftest* ;; esac need_locks="$enable_libtool_lock" ])# _LT_ENABLE_LOCK # _LT_CMD_OLD_ARCHIVE # ------------------- m4_defun([_LT_CMD_OLD_ARCHIVE], [AC_CHECK_TOOL(AR, ar, false) test -z "$AR" && AR=ar test -z "$AR_FLAGS" && AR_FLAGS=cru _LT_DECL([], [AR], [1], [The archiver]) _LT_DECL([], [AR_FLAGS], [1]) AC_CHECK_TOOL(STRIP, strip, :) test -z "$STRIP" && STRIP=: _LT_DECL([], [STRIP], [1], [A symbol stripping program]) AC_CHECK_TOOL(RANLIB, ranlib, :) test -z "$RANLIB" && RANLIB=: _LT_DECL([], [RANLIB], [1], [Commands used to install an old-style archive]) # Determine commands to create old-style static archives. old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs' old_postinstall_cmds='chmod 644 $oldlib' old_postuninstall_cmds= if test -n "$RANLIB"; then case $host_os in openbsd*) old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB -t \$oldlib" ;; *) old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB \$oldlib" ;; esac old_archive_cmds="$old_archive_cmds~\$RANLIB \$oldlib" fi _LT_DECL([], [old_postinstall_cmds], [2]) _LT_DECL([], [old_postuninstall_cmds], [2]) _LT_TAGDECL([], [old_archive_cmds], [2], [Commands used to build an old-style archive]) ])# _LT_CMD_OLD_ARCHIVE # _LT_COMPILER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS, # [OUTPUT-FILE], [ACTION-SUCCESS], [ACTION-FAILURE]) # ---------------------------------------------------------------- # Check whether the given compiler option works AC_DEFUN([_LT_COMPILER_OPTION], [m4_require([_LT_FILEUTILS_DEFAULTS])dnl m4_require([_LT_DECL_SED])dnl AC_CACHE_CHECK([$1], [$2], [$2=no m4_if([$4], , [ac_outfile=conftest.$ac_objext], [ac_outfile=$4]) echo "$lt_simple_compile_test_code" > conftest.$ac_ext lt_compiler_flag="$3" # Insert the option either (1) after the last *FLAGS variable, or # (2) before a word containing "conftest.", or (3) at the end. # Note that $ac_compile itself does not contain backslashes and begins # with a dollar sign (not a hyphen), so the echo should work correctly. # The option is referenced via a variable to avoid confusing sed. lt_compile=`echo "$ac_compile" | $SED \ -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` (eval echo "\"\$as_me:__oline__: $lt_compile\"" >&AS_MESSAGE_LOG_FD) (eval "$lt_compile" 2>conftest.err) ac_status=$? cat conftest.err >&AS_MESSAGE_LOG_FD echo "$as_me:__oline__: \$? = $ac_status" >&AS_MESSAGE_LOG_FD if (exit $ac_status) && test -s "$ac_outfile"; then # The compiler can only warn and ignore the option if not recognized # So say no if there are warnings other than the usual output. $ECHO "X$_lt_compiler_boilerplate" | $Xsed -e '/^$/d' >conftest.exp $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2 if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then $2=yes fi fi $RM conftest* ]) if test x"[$]$2" = xyes; then m4_if([$5], , :, [$5]) else m4_if([$6], , :, [$6]) fi ])# _LT_COMPILER_OPTION # Old name: AU_ALIAS([AC_LIBTOOL_COMPILER_OPTION], [_LT_COMPILER_OPTION]) dnl aclocal-1.4 backwards compatibility: dnl AC_DEFUN([AC_LIBTOOL_COMPILER_OPTION], []) # _LT_LINKER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS, # [ACTION-SUCCESS], [ACTION-FAILURE]) # ---------------------------------------------------- # Check whether the given linker option works AC_DEFUN([_LT_LINKER_OPTION], [m4_require([_LT_FILEUTILS_DEFAULTS])dnl m4_require([_LT_DECL_SED])dnl AC_CACHE_CHECK([$1], [$2], [$2=no save_LDFLAGS="$LDFLAGS" LDFLAGS="$LDFLAGS $3" echo "$lt_simple_link_test_code" > conftest.$ac_ext if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then # The linker can only warn and ignore the option if not recognized # So say no if there are warnings if test -s conftest.err; then # Append any errors to the config.log. cat conftest.err 1>&AS_MESSAGE_LOG_FD $ECHO "X$_lt_linker_boilerplate" | $Xsed -e '/^$/d' > conftest.exp $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2 if diff conftest.exp conftest.er2 >/dev/null; then $2=yes fi else $2=yes fi fi $RM -r conftest* LDFLAGS="$save_LDFLAGS" ]) if test x"[$]$2" = xyes; then m4_if([$4], , :, [$4]) else m4_if([$5], , :, [$5]) fi ])# _LT_LINKER_OPTION # Old name: AU_ALIAS([AC_LIBTOOL_LINKER_OPTION], [_LT_LINKER_OPTION]) dnl aclocal-1.4 backwards compatibility: dnl AC_DEFUN([AC_LIBTOOL_LINKER_OPTION], []) # LT_CMD_MAX_LEN #--------------- AC_DEFUN([LT_CMD_MAX_LEN], [AC_REQUIRE([AC_CANONICAL_HOST])dnl # find the maximum length of command line arguments AC_MSG_CHECKING([the maximum length of command line arguments]) AC_CACHE_VAL([lt_cv_sys_max_cmd_len], [dnl i=0 teststring="ABCD" case $build_os in msdosdjgpp*) # On DJGPP, this test can blow up pretty badly due to problems in libc # (any single argument exceeding 2000 bytes causes a buffer overrun # during glob expansion). Even if it were fixed, the result of this # check would be larger than it should be. lt_cv_sys_max_cmd_len=12288; # 12K is about right ;; gnu*) # Under GNU Hurd, this test is not required because there is # no limit to the length of command line arguments. # Libtool will interpret -1 as no limit whatsoever lt_cv_sys_max_cmd_len=-1; ;; cygwin* | mingw* | cegcc*) # On Win9x/ME, this test blows up -- it succeeds, but takes # about 5 minutes as the teststring grows exponentially. # Worse, since 9x/ME are not pre-emptively multitasking, # you end up with a "frozen" computer, even though with patience # the test eventually succeeds (with a max line length of 256k). # Instead, let's just punt: use the minimum linelength reported by # all of the supported platforms: 8192 (on NT/2K/XP). lt_cv_sys_max_cmd_len=8192; ;; amigaos*) # On AmigaOS with pdksh, this test takes hours, literally. # So we just punt and use a minimum line length of 8192. lt_cv_sys_max_cmd_len=8192; ;; netbsd* | freebsd* | openbsd* | darwin* | dragonfly*) # This has been around since 386BSD, at least. Likely further. if test -x /sbin/sysctl; then lt_cv_sys_max_cmd_len=`/sbin/sysctl -n kern.argmax` elif test -x /usr/sbin/sysctl; then lt_cv_sys_max_cmd_len=`/usr/sbin/sysctl -n kern.argmax` else lt_cv_sys_max_cmd_len=65536 # usable default for all BSDs fi # And add a safety zone lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4` lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3` ;; interix*) # We know the value 262144 and hardcode it with a safety zone (like BSD) lt_cv_sys_max_cmd_len=196608 ;; osf*) # Dr. Hans Ekkehard Plesser reports seeing a kernel panic running configure # due to this test when exec_disable_arg_limit is 1 on Tru64. It is not # nice to cause kernel panics so lets avoid the loop below. # First set a reasonable default. lt_cv_sys_max_cmd_len=16384 # if test -x /sbin/sysconfig; then case `/sbin/sysconfig -q proc exec_disable_arg_limit` in *1*) lt_cv_sys_max_cmd_len=-1 ;; esac fi ;; sco3.2v5*) lt_cv_sys_max_cmd_len=102400 ;; sysv5* | sco5v6* | sysv4.2uw2*) kargmax=`grep ARG_MAX /etc/conf/cf.d/stune 2>/dev/null` if test -n "$kargmax"; then lt_cv_sys_max_cmd_len=`echo $kargmax | sed 's/.*[[ ]]//'` else lt_cv_sys_max_cmd_len=32768 fi ;; *) lt_cv_sys_max_cmd_len=`(getconf ARG_MAX) 2> /dev/null` if test -n "$lt_cv_sys_max_cmd_len"; then lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4` lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3` else # Make teststring a little bigger before we do anything with it. # a 1K string should be a reasonable start. for i in 1 2 3 4 5 6 7 8 ; do teststring=$teststring$teststring done SHELL=${SHELL-${CONFIG_SHELL-/bin/sh}} # If test is not a shell built-in, we'll probably end up computing a # maximum length that is only half of the actual maximum length, but # we can't tell. while { test "X"`$SHELL [$]0 --fallback-echo "X$teststring$teststring" 2>/dev/null` \ = "XX$teststring$teststring"; } >/dev/null 2>&1 && test $i != 17 # 1/2 MB should be enough do i=`expr $i + 1` teststring=$teststring$teststring done # Only check the string length outside the loop. lt_cv_sys_max_cmd_len=`expr "X$teststring" : ".*" 2>&1` teststring= # Add a significant safety factor because C++ compilers can tack on # massive amounts of additional arguments before passing them to the # linker. It appears as though 1/2 is a usable value. lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 2` fi ;; esac ]) if test -n $lt_cv_sys_max_cmd_len ; then AC_MSG_RESULT($lt_cv_sys_max_cmd_len) else AC_MSG_RESULT(none) fi max_cmd_len=$lt_cv_sys_max_cmd_len _LT_DECL([], [max_cmd_len], [0], [What is the maximum length of a command?]) ])# LT_CMD_MAX_LEN # Old name: AU_ALIAS([AC_LIBTOOL_SYS_MAX_CMD_LEN], [LT_CMD_MAX_LEN]) dnl aclocal-1.4 backwards compatibility: dnl AC_DEFUN([AC_LIBTOOL_SYS_MAX_CMD_LEN], []) # _LT_HEADER_DLFCN # ---------------- m4_defun([_LT_HEADER_DLFCN], [AC_CHECK_HEADERS([dlfcn.h], [], [], [AC_INCLUDES_DEFAULT])dnl ])# _LT_HEADER_DLFCN # _LT_TRY_DLOPEN_SELF (ACTION-IF-TRUE, ACTION-IF-TRUE-W-USCORE, # ACTION-IF-FALSE, ACTION-IF-CROSS-COMPILING) # ---------------------------------------------------------------- m4_defun([_LT_TRY_DLOPEN_SELF], [m4_require([_LT_HEADER_DLFCN])dnl if test "$cross_compiling" = yes; then : [$4] else lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_status=$lt_dlunknown cat > conftest.$ac_ext <<_LT_EOF [#line __oline__ "configure" #include "confdefs.h" #if HAVE_DLFCN_H #include #endif #include #ifdef RTLD_GLOBAL # define LT_DLGLOBAL RTLD_GLOBAL #else # ifdef DL_GLOBAL # define LT_DLGLOBAL DL_GLOBAL # else # define LT_DLGLOBAL 0 # endif #endif /* We may have to define LT_DLLAZY_OR_NOW in the command line if we find out it does not work in some platform. */ #ifndef LT_DLLAZY_OR_NOW # ifdef RTLD_LAZY # define LT_DLLAZY_OR_NOW RTLD_LAZY # else # ifdef DL_LAZY # define LT_DLLAZY_OR_NOW DL_LAZY # else # ifdef RTLD_NOW # define LT_DLLAZY_OR_NOW RTLD_NOW # else # ifdef DL_NOW # define LT_DLLAZY_OR_NOW DL_NOW # else # define LT_DLLAZY_OR_NOW 0 # endif # endif # endif # endif #endif void fnord() { int i=42;} int main () { void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW); int status = $lt_dlunknown; if (self) { if (dlsym (self,"fnord")) status = $lt_dlno_uscore; else if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore; /* dlclose (self); */ } else puts (dlerror ()); return status; }] _LT_EOF if AC_TRY_EVAL(ac_link) && test -s conftest${ac_exeext} 2>/dev/null; then (./conftest; exit; ) >&AS_MESSAGE_LOG_FD 2>/dev/null lt_status=$? case x$lt_status in x$lt_dlno_uscore) $1 ;; x$lt_dlneed_uscore) $2 ;; x$lt_dlunknown|x*) $3 ;; esac else : # compilation failed $3 fi fi rm -fr conftest* ])# _LT_TRY_DLOPEN_SELF # LT_SYS_DLOPEN_SELF # ------------------ AC_DEFUN([LT_SYS_DLOPEN_SELF], [m4_require([_LT_HEADER_DLFCN])dnl if test "x$enable_dlopen" != xyes; then enable_dlopen=unknown enable_dlopen_self=unknown enable_dlopen_self_static=unknown else lt_cv_dlopen=no lt_cv_dlopen_libs= case $host_os in beos*) lt_cv_dlopen="load_add_on" lt_cv_dlopen_libs= lt_cv_dlopen_self=yes ;; mingw* | pw32* | cegcc*) lt_cv_dlopen="LoadLibrary" lt_cv_dlopen_libs= ;; cygwin*) lt_cv_dlopen="dlopen" lt_cv_dlopen_libs= ;; darwin*) # if libdl is installed we need to link against it AC_CHECK_LIB([dl], [dlopen], [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"],[ lt_cv_dlopen="dyld" lt_cv_dlopen_libs= lt_cv_dlopen_self=yes ]) ;; *) AC_CHECK_FUNC([shl_load], [lt_cv_dlopen="shl_load"], [AC_CHECK_LIB([dld], [shl_load], [lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-ldld"], [AC_CHECK_FUNC([dlopen], [lt_cv_dlopen="dlopen"], [AC_CHECK_LIB([dl], [dlopen], [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"], [AC_CHECK_LIB([svld], [dlopen], [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-lsvld"], [AC_CHECK_LIB([dld], [dld_link], [lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-ldld"]) ]) ]) ]) ]) ]) ;; esac if test "x$lt_cv_dlopen" != xno; then enable_dlopen=yes else enable_dlopen=no fi case $lt_cv_dlopen in dlopen) save_CPPFLAGS="$CPPFLAGS" test "x$ac_cv_header_dlfcn_h" = xyes && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H" save_LDFLAGS="$LDFLAGS" wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\" save_LIBS="$LIBS" LIBS="$lt_cv_dlopen_libs $LIBS" AC_CACHE_CHECK([whether a program can dlopen itself], lt_cv_dlopen_self, [dnl _LT_TRY_DLOPEN_SELF( lt_cv_dlopen_self=yes, lt_cv_dlopen_self=yes, lt_cv_dlopen_self=no, lt_cv_dlopen_self=cross) ]) if test "x$lt_cv_dlopen_self" = xyes; then wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $lt_prog_compiler_static\" AC_CACHE_CHECK([whether a statically linked program can dlopen itself], lt_cv_dlopen_self_static, [dnl _LT_TRY_DLOPEN_SELF( lt_cv_dlopen_self_static=yes, lt_cv_dlopen_self_static=yes, lt_cv_dlopen_self_static=no, lt_cv_dlopen_self_static=cross) ]) fi CPPFLAGS="$save_CPPFLAGS" LDFLAGS="$save_LDFLAGS" LIBS="$save_LIBS" ;; esac case $lt_cv_dlopen_self in yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;; *) enable_dlopen_self=unknown ;; esac case $lt_cv_dlopen_self_static in yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;; *) enable_dlopen_self_static=unknown ;; esac fi _LT_DECL([dlopen_support], [enable_dlopen], [0], [Whether dlopen is supported]) _LT_DECL([dlopen_self], [enable_dlopen_self], [0], [Whether dlopen of programs is supported]) _LT_DECL([dlopen_self_static], [enable_dlopen_self_static], [0], [Whether dlopen of statically linked programs is supported]) ])# LT_SYS_DLOPEN_SELF # Old name: AU_ALIAS([AC_LIBTOOL_DLOPEN_SELF], [LT_SYS_DLOPEN_SELF]) dnl aclocal-1.4 backwards compatibility: dnl AC_DEFUN([AC_LIBTOOL_DLOPEN_SELF], []) # _LT_COMPILER_C_O([TAGNAME]) # --------------------------- # Check to see if options -c and -o are simultaneously supported by compiler. # This macro does not hard code the compiler like AC_PROG_CC_C_O. m4_defun([_LT_COMPILER_C_O], [m4_require([_LT_DECL_SED])dnl m4_require([_LT_FILEUTILS_DEFAULTS])dnl m4_require([_LT_TAG_COMPILER])dnl AC_CACHE_CHECK([if $compiler supports -c -o file.$ac_objext], [_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)], [_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=no $RM -r conftest 2>/dev/null mkdir conftest cd conftest mkdir out echo "$lt_simple_compile_test_code" > conftest.$ac_ext lt_compiler_flag="-o out/conftest2.$ac_objext" # Insert the option either (1) after the last *FLAGS variable, or # (2) before a word containing "conftest.", or (3) at the end. # Note that $ac_compile itself does not contain backslashes and begins # with a dollar sign (not a hyphen), so the echo should work correctly. lt_compile=`echo "$ac_compile" | $SED \ -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` (eval echo "\"\$as_me:__oline__: $lt_compile\"" >&AS_MESSAGE_LOG_FD) (eval "$lt_compile" 2>out/conftest.err) ac_status=$? cat out/conftest.err >&AS_MESSAGE_LOG_FD echo "$as_me:__oline__: \$? = $ac_status" >&AS_MESSAGE_LOG_FD if (exit $ac_status) && test -s out/conftest2.$ac_objext then # The compiler can only warn and ignore the option if not recognized # So say no if there are warnings $ECHO "X$_lt_compiler_boilerplate" | $Xsed -e '/^$/d' > out/conftest.exp $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2 if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then _LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes fi fi chmod u+w . 2>&AS_MESSAGE_LOG_FD $RM conftest* # SGI C++ compiler will create directory out/ii_files/ for # template instantiation test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files $RM out/* && rmdir out cd .. $RM -r conftest $RM conftest* ]) _LT_TAGDECL([compiler_c_o], [lt_cv_prog_compiler_c_o], [1], [Does compiler simultaneously support -c and -o options?]) ])# _LT_COMPILER_C_O # _LT_COMPILER_FILE_LOCKS([TAGNAME]) # ---------------------------------- # Check to see if we can do hard links to lock some files if needed m4_defun([_LT_COMPILER_FILE_LOCKS], [m4_require([_LT_ENABLE_LOCK])dnl m4_require([_LT_FILEUTILS_DEFAULTS])dnl _LT_COMPILER_C_O([$1]) hard_links="nottested" if test "$_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)" = no && test "$need_locks" != no; then # do not overwrite the value of need_locks provided by the user AC_MSG_CHECKING([if we can lock with hard links]) hard_links=yes $RM conftest* ln conftest.a conftest.b 2>/dev/null && hard_links=no touch conftest.a ln conftest.a conftest.b 2>&5 || hard_links=no ln conftest.a conftest.b 2>/dev/null && hard_links=no AC_MSG_RESULT([$hard_links]) if test "$hard_links" = no; then AC_MSG_WARN([`$CC' does not support `-c -o', so `make -j' may be unsafe]) need_locks=warn fi else need_locks=no fi _LT_DECL([], [need_locks], [1], [Must we lock files when doing compilation?]) ])# _LT_COMPILER_FILE_LOCKS # _LT_CHECK_OBJDIR # ---------------- m4_defun([_LT_CHECK_OBJDIR], [AC_CACHE_CHECK([for objdir], [lt_cv_objdir], [rm -f .libs 2>/dev/null mkdir .libs 2>/dev/null if test -d .libs; then lt_cv_objdir=.libs else # MS-DOS does not allow filenames that begin with a dot. lt_cv_objdir=_libs fi rmdir .libs 2>/dev/null]) objdir=$lt_cv_objdir _LT_DECL([], [objdir], [0], [The name of the directory that contains temporary libtool files])dnl m4_pattern_allow([LT_OBJDIR])dnl AC_DEFINE_UNQUOTED(LT_OBJDIR, "$lt_cv_objdir/", [Define to the sub-directory in which libtool stores uninstalled libraries.]) ])# _LT_CHECK_OBJDIR # _LT_LINKER_HARDCODE_LIBPATH([TAGNAME]) # -------------------------------------- # Check hardcoding attributes. m4_defun([_LT_LINKER_HARDCODE_LIBPATH], [AC_MSG_CHECKING([how to hardcode library paths into programs]) _LT_TAGVAR(hardcode_action, $1)= if test -n "$_LT_TAGVAR(hardcode_libdir_flag_spec, $1)" || test -n "$_LT_TAGVAR(runpath_var, $1)" || test "X$_LT_TAGVAR(hardcode_automatic, $1)" = "Xyes" ; then # We can hardcode non-existent directories. if test "$_LT_TAGVAR(hardcode_direct, $1)" != no && # If the only mechanism to avoid hardcoding is shlibpath_var, we # have to relink, otherwise we might link with an installed library # when we should be linking with a yet-to-be-installed one ## test "$_LT_TAGVAR(hardcode_shlibpath_var, $1)" != no && test "$_LT_TAGVAR(hardcode_minus_L, $1)" != no; then # Linking always hardcodes the temporary library directory. _LT_TAGVAR(hardcode_action, $1)=relink else # We can link without hardcoding, and we can hardcode nonexisting dirs. _LT_TAGVAR(hardcode_action, $1)=immediate fi else # We cannot hardcode anything, or else we can only hardcode existing # directories. _LT_TAGVAR(hardcode_action, $1)=unsupported fi AC_MSG_RESULT([$_LT_TAGVAR(hardcode_action, $1)]) if test "$_LT_TAGVAR(hardcode_action, $1)" = relink || test "$_LT_TAGVAR(inherit_rpath, $1)" = yes; then # Fast installation is not supported enable_fast_install=no elif test "$shlibpath_overrides_runpath" = yes || test "$enable_shared" = no; then # Fast installation is not necessary enable_fast_install=needless fi _LT_TAGDECL([], [hardcode_action], [0], [How to hardcode a shared library path into an executable]) ])# _LT_LINKER_HARDCODE_LIBPATH # _LT_CMD_STRIPLIB # ---------------- m4_defun([_LT_CMD_STRIPLIB], [m4_require([_LT_DECL_EGREP]) striplib= old_striplib= AC_MSG_CHECKING([whether stripping libraries is possible]) if test -n "$STRIP" && $STRIP -V 2>&1 | $GREP "GNU strip" >/dev/null; then test -z "$old_striplib" && old_striplib="$STRIP --strip-debug" test -z "$striplib" && striplib="$STRIP --strip-unneeded" AC_MSG_RESULT([yes]) else # FIXME - insert some real tests, host_os isn't really good enough case $host_os in darwin*) if test -n "$STRIP" ; then striplib="$STRIP -x" old_striplib="$STRIP -S" AC_MSG_RESULT([yes]) else AC_MSG_RESULT([no]) fi ;; *) AC_MSG_RESULT([no]) ;; esac fi _LT_DECL([], [old_striplib], [1], [Commands to strip libraries]) _LT_DECL([], [striplib], [1]) ])# _LT_CMD_STRIPLIB # _LT_SYS_DYNAMIC_LINKER([TAG]) # ----------------------------- # PORTME Fill in your ld.so characteristics m4_defun([_LT_SYS_DYNAMIC_LINKER], [AC_REQUIRE([AC_CANONICAL_HOST])dnl m4_require([_LT_DECL_EGREP])dnl m4_require([_LT_FILEUTILS_DEFAULTS])dnl m4_require([_LT_DECL_OBJDUMP])dnl m4_require([_LT_DECL_SED])dnl AC_MSG_CHECKING([dynamic linker characteristics]) m4_if([$1], [], [ if test "$GCC" = yes; then case $host_os in darwin*) lt_awk_arg="/^libraries:/,/LR/" ;; *) lt_awk_arg="/^libraries:/" ;; esac lt_search_path_spec=`$CC -print-search-dirs | awk $lt_awk_arg | $SED -e "s/^libraries://" -e "s,=/,/,g"` if $ECHO "$lt_search_path_spec" | $GREP ';' >/dev/null ; then # if the path contains ";" then we assume it to be the separator # otherwise default to the standard path separator (i.e. ":") - it is # assumed that no part of a normal pathname contains ";" but that should # okay in the real world where ";" in dirpaths is itself problematic. lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED -e 's/;/ /g'` else lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"` fi # Ok, now we have the path, separated by spaces, we can step through it # and add multilib dir if necessary. lt_tmp_lt_search_path_spec= lt_multi_os_dir=`$CC $CPPFLAGS $CFLAGS $LDFLAGS -print-multi-os-directory 2>/dev/null` for lt_sys_path in $lt_search_path_spec; do if test -d "$lt_sys_path/$lt_multi_os_dir"; then lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path/$lt_multi_os_dir" else test -d "$lt_sys_path" && \ lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path" fi done lt_search_path_spec=`$ECHO $lt_tmp_lt_search_path_spec | awk ' BEGIN {RS=" "; FS="/|\n";} { lt_foo=""; lt_count=0; for (lt_i = NF; lt_i > 0; lt_i--) { if ($lt_i != "" && $lt_i != ".") { if ($lt_i == "..") { lt_count++; } else { if (lt_count == 0) { lt_foo="/" $lt_i lt_foo; } else { lt_count--; } } } } if (lt_foo != "") { lt_freq[[lt_foo]]++; } if (lt_freq[[lt_foo]] == 1) { print lt_foo; } }'` sys_lib_search_path_spec=`$ECHO $lt_search_path_spec` else sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib" fi]) library_names_spec= libname_spec='lib$name' soname_spec= shrext_cmds=".so" postinstall_cmds= postuninstall_cmds= finish_cmds= finish_eval= shlibpath_var= shlibpath_overrides_runpath=unknown version_type=none dynamic_linker="$host_os ld.so" sys_lib_dlsearch_path_spec="/lib /usr/lib" need_lib_prefix=unknown hardcode_into_libs=no # when you set need_version to no, make sure it does not cause -set_version # flags to be left without arguments need_version=unknown case $host_os in aix3*) version_type=linux library_names_spec='${libname}${release}${shared_ext}$versuffix $libname.a' shlibpath_var=LIBPATH # AIX 3 has no versioning support, so we append a major version to the name. soname_spec='${libname}${release}${shared_ext}$major' ;; aix[[4-9]]*) version_type=linux need_lib_prefix=no need_version=no hardcode_into_libs=yes if test "$host_cpu" = ia64; then # AIX 5 supports IA64 library_names_spec='${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext}$versuffix $libname${shared_ext}' shlibpath_var=LD_LIBRARY_PATH else # With GCC up to 2.95.x, collect2 would create an import file # for dependence libraries. The import file would start with # the line `#! .'. This would cause the generated library to # depend on `.', always an invalid library. This was fixed in # development snapshots of GCC prior to 3.0. case $host_os in aix4 | aix4.[[01]] | aix4.[[01]].*) if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)' echo ' yes ' echo '#endif'; } | ${CC} -E - | $GREP yes > /dev/null; then : else can_build_shared=no fi ;; esac # AIX (on Power*) has no versioning support, so currently we can not hardcode correct # soname into executable. Probably we can add versioning support to # collect2, so additional links can be useful in future. if test "$aix_use_runtimelinking" = yes; then # If using run time linking (on AIX 4.2 or later) use lib.so # instead of lib.a to let people know that these are not # typical AIX shared libraries. library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' else # We preserve .a as extension for shared libraries through AIX4.2 # and later when we are not doing run time linking. library_names_spec='${libname}${release}.a $libname.a' soname_spec='${libname}${release}${shared_ext}$major' fi shlibpath_var=LIBPATH fi ;; amigaos*) case $host_cpu in powerpc) # Since July 2007 AmigaOS4 officially supports .so libraries. # When compiling the executable, add -use-dynld -Lsobjs: to the compileline. library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' ;; m68k) library_names_spec='$libname.ixlibrary $libname.a' # Create ${libname}_ixlibrary.a entries in /sys/libs. finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`$ECHO "X$lib" | $Xsed -e '\''s%^.*/\([[^/]]*\)\.ixlibrary$%\1%'\''`; test $RM /sys/libs/${libname}_ixlibrary.a; $show "cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a"; cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a || exit 1; done' ;; esac ;; beos*) library_names_spec='${libname}${shared_ext}' dynamic_linker="$host_os ld.so" shlibpath_var=LIBRARY_PATH ;; bsdi[[45]]*) version_type=linux need_version=no library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' soname_spec='${libname}${release}${shared_ext}$major' finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir' shlibpath_var=LD_LIBRARY_PATH sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib" sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib" # the default ld.so.conf also contains /usr/contrib/lib and # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow # libtool to hard-code these into programs ;; cygwin* | mingw* | pw32* | cegcc*) version_type=windows shrext_cmds=".dll" need_version=no need_lib_prefix=no case $GCC,$host_os in yes,cygwin* | yes,mingw* | yes,pw32* | yes,cegcc*) library_names_spec='$libname.dll.a' # DLL is installed to $(libdir)/../bin by postinstall_cmds postinstall_cmds='base_file=`basename \${file}`~ dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i; echo \$dlname'\''`~ dldir=$destdir/`dirname \$dlpath`~ test -d \$dldir || mkdir -p \$dldir~ $install_prog $dir/$dlname \$dldir/$dlname~ chmod a+x \$dldir/$dlname~ if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then eval '\''$striplib \$dldir/$dlname'\'' || exit \$?; fi' postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~ dlpath=$dir/\$dldll~ $RM \$dlpath' shlibpath_overrides_runpath=yes case $host_os in cygwin*) # Cygwin DLLs use 'cyg' prefix rather than 'lib' soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}' sys_lib_search_path_spec="/usr/lib /lib/w32api /lib /usr/local/lib" ;; mingw* | cegcc*) # MinGW DLLs use traditional 'lib' prefix soname_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}' sys_lib_search_path_spec=`$CC -print-search-dirs | $GREP "^libraries:" | $SED -e "s/^libraries://" -e "s,=/,/,g"` if $ECHO "$sys_lib_search_path_spec" | [$GREP ';[c-zC-Z]:/' >/dev/null]; then # It is most probably a Windows format PATH printed by # mingw gcc, but we are running on Cygwin. Gcc prints its search # path with ; separators, and with drive letters. We can handle the # drive letters (cygwin fileutils understands them), so leave them, # especially as we might pass files found there to a mingw objdump, # which wouldn't understand a cygwinified path. Ahh. sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'` else sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"` fi ;; pw32*) # pw32 DLLs use 'pw' prefix rather than 'lib' library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}' ;; esac ;; *) library_names_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext} $libname.lib' ;; esac dynamic_linker='Win32 ld.exe' # FIXME: first we should search . and the directory the executable is in shlibpath_var=PATH ;; darwin* | rhapsody*) dynamic_linker="$host_os dyld" version_type=darwin need_lib_prefix=no need_version=no library_names_spec='${libname}${release}${major}$shared_ext ${libname}$shared_ext' soname_spec='${libname}${release}${major}$shared_ext' shlibpath_overrides_runpath=yes shlibpath_var=DYLD_LIBRARY_PATH shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`' m4_if([$1], [],[ sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/local/lib"]) sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib' ;; dgux*) version_type=linux need_lib_prefix=no need_version=no library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname$shared_ext' soname_spec='${libname}${release}${shared_ext}$major' shlibpath_var=LD_LIBRARY_PATH ;; freebsd1*) dynamic_linker=no ;; freebsd* | dragonfly*) # DragonFly does not have aout. When/if they implement a new # versioning mechanism, adjust this. if test -x /usr/bin/objformat; then objformat=`/usr/bin/objformat` else case $host_os in freebsd[[123]]*) objformat=aout ;; *) objformat=elf ;; esac fi version_type=freebsd-$objformat case $version_type in freebsd-elf*) library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}' need_version=no need_lib_prefix=no ;; freebsd-*) library_names_spec='${libname}${release}${shared_ext}$versuffix $libname${shared_ext}$versuffix' need_version=yes ;; esac shlibpath_var=LD_LIBRARY_PATH case $host_os in freebsd2*) shlibpath_overrides_runpath=yes ;; freebsd3.[[01]]* | freebsdelf3.[[01]]*) shlibpath_overrides_runpath=yes hardcode_into_libs=yes ;; freebsd3.[[2-9]]* | freebsdelf3.[[2-9]]* | \ freebsd4.[[0-5]] | freebsdelf4.[[0-5]] | freebsd4.1.1 | freebsdelf4.1.1) shlibpath_overrides_runpath=no hardcode_into_libs=yes ;; *) # from 4.6 on, and DragonFly shlibpath_overrides_runpath=yes hardcode_into_libs=yes ;; esac ;; gnu*) version_type=linux need_lib_prefix=no need_version=no library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}' soname_spec='${libname}${release}${shared_ext}$major' shlibpath_var=LD_LIBRARY_PATH hardcode_into_libs=yes ;; hpux9* | hpux10* | hpux11*) # Give a soname corresponding to the major version so that dld.sl refuses to # link against other versions. version_type=sunos need_lib_prefix=no need_version=no case $host_cpu in ia64*) shrext_cmds='.so' hardcode_into_libs=yes dynamic_linker="$host_os dld.so" shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=yes # Unless +noenvvar is specified. library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' soname_spec='${libname}${release}${shared_ext}$major' if test "X$HPUX_IA64_MODE" = X32; then sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib" else sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64" fi sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec ;; hppa*64*) shrext_cmds='.sl' hardcode_into_libs=yes dynamic_linker="$host_os dld.sl" shlibpath_var=LD_LIBRARY_PATH # How should we handle SHLIB_PATH shlibpath_overrides_runpath=yes # Unless +noenvvar is specified. library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' soname_spec='${libname}${release}${shared_ext}$major' sys_lib_search_path_spec="/usr/lib/pa20_64 /usr/ccs/lib/pa20_64" sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec ;; *) shrext_cmds='.sl' dynamic_linker="$host_os dld.sl" shlibpath_var=SHLIB_PATH shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' soname_spec='${libname}${release}${shared_ext}$major' ;; esac # HP-UX runs *really* slowly unless shared libraries are mode 555. postinstall_cmds='chmod 555 $lib' ;; interix[[3-9]]*) version_type=linux need_lib_prefix=no need_version=no library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}' soname_spec='${libname}${release}${shared_ext}$major' dynamic_linker='Interix 3.x ld.so.1 (PE, like ELF)' shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=no hardcode_into_libs=yes ;; irix5* | irix6* | nonstopux*) case $host_os in nonstopux*) version_type=nonstopux ;; *) if test "$lt_cv_prog_gnu_ld" = yes; then version_type=linux else version_type=irix fi ;; esac need_lib_prefix=no need_version=no soname_spec='${libname}${release}${shared_ext}$major' library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext} $libname${shared_ext}' case $host_os in irix5* | nonstopux*) libsuff= shlibsuff= ;; *) case $LD in # libtool.m4 will add one of these switches to LD *-32|*"-32 "|*-melf32bsmip|*"-melf32bsmip ") libsuff= shlibsuff= libmagic=32-bit;; *-n32|*"-n32 "|*-melf32bmipn32|*"-melf32bmipn32 ") libsuff=32 shlibsuff=N32 libmagic=N32;; *-64|*"-64 "|*-melf64bmip|*"-melf64bmip ") libsuff=64 shlibsuff=64 libmagic=64-bit;; *) libsuff= shlibsuff= libmagic=never-match;; esac ;; esac shlibpath_var=LD_LIBRARY${shlibsuff}_PATH shlibpath_overrides_runpath=no sys_lib_search_path_spec="/usr/lib${libsuff} /lib${libsuff} /usr/local/lib${libsuff}" sys_lib_dlsearch_path_spec="/usr/lib${libsuff} /lib${libsuff}" hardcode_into_libs=yes ;; # No shared lib support for Linux oldld, aout, or coff. linux*oldld* | linux*aout* | linux*coff*) dynamic_linker=no ;; # This must be Linux ELF. linux* | k*bsd*-gnu) version_type=linux need_lib_prefix=no need_version=no library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' soname_spec='${libname}${release}${shared_ext}$major' finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir' shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=no # Some binutils ld are patched to set DT_RUNPATH save_LDFLAGS=$LDFLAGS save_libdir=$libdir eval "libdir=/foo; wl=\"$_LT_TAGVAR(lt_prog_compiler_wl, $1)\"; \ LDFLAGS=\"\$LDFLAGS $_LT_TAGVAR(hardcode_libdir_flag_spec, $1)\"" AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])], [AS_IF([ ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir" >/dev/null], [shlibpath_overrides_runpath=yes])]) LDFLAGS=$save_LDFLAGS libdir=$save_libdir # This implies no fast_install, which is unacceptable. # Some rework will be needed to allow for fast_install # before this can be enabled. hardcode_into_libs=yes # Add ABI-specific directories to the system library path. sys_lib_dlsearch_path_spec="/lib64 /usr/lib64 /lib /usr/lib" # Append ld.so.conf contents to the search path if test -f /etc/ld.so.conf; then lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \[$]2)); skip = 1; } { if (!skip) print \[$]0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;/^[ ]*hwcap[ ]/d;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '` sys_lib_dlsearch_path_spec="$sys_lib_dlsearch_path_spec $lt_ld_extra" fi # We used to test for /lib/ld.so.1 and disable shared libraries on # powerpc, because MkLinux only supported shared libraries with the # GNU dynamic linker. Since this was broken with cross compilers, # most powerpc-linux boxes support dynamic linking these days and # people can always --disable-shared, the test was removed, and we # assume the GNU/Linux dynamic linker is in use. dynamic_linker='GNU/Linux ld.so' ;; netbsd*) version_type=sunos need_lib_prefix=no need_version=no if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix' finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' dynamic_linker='NetBSD (a.out) ld.so' else library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}' soname_spec='${libname}${release}${shared_ext}$major' dynamic_linker='NetBSD ld.elf_so' fi shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=yes hardcode_into_libs=yes ;; newsos6) version_type=linux library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=yes ;; *nto* | *qnx*) version_type=qnx need_lib_prefix=no need_version=no library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' soname_spec='${libname}${release}${shared_ext}$major' shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=no hardcode_into_libs=yes dynamic_linker='ldqnx.so' ;; openbsd*) version_type=sunos sys_lib_dlsearch_path_spec="/usr/lib" need_lib_prefix=no # Some older versions of OpenBSD (3.3 at least) *do* need versioned libs. case $host_os in openbsd3.3 | openbsd3.3.*) need_version=yes ;; *) need_version=no ;; esac library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix' finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' shlibpath_var=LD_LIBRARY_PATH if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then case $host_os in openbsd2.[[89]] | openbsd2.[[89]].*) shlibpath_overrides_runpath=no ;; *) shlibpath_overrides_runpath=yes ;; esac else shlibpath_overrides_runpath=yes fi ;; os2*) libname_spec='$name' shrext_cmds=".dll" need_lib_prefix=no library_names_spec='$libname${shared_ext} $libname.a' dynamic_linker='OS/2 ld.exe' shlibpath_var=LIBPATH ;; osf3* | osf4* | osf5*) version_type=osf need_lib_prefix=no need_version=no soname_spec='${libname}${release}${shared_ext}$major' library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' shlibpath_var=LD_LIBRARY_PATH sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib" sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec" ;; rdos*) dynamic_linker=no ;; solaris*) version_type=linux need_lib_prefix=no need_version=no library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' soname_spec='${libname}${release}${shared_ext}$major' shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=yes hardcode_into_libs=yes # ldd complains unless libraries are executable postinstall_cmds='chmod +x $lib' ;; sunos4*) version_type=sunos library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix' finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir' shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=yes if test "$with_gnu_ld" = yes; then need_lib_prefix=no fi need_version=yes ;; sysv4 | sysv4.3*) version_type=linux library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' soname_spec='${libname}${release}${shared_ext}$major' shlibpath_var=LD_LIBRARY_PATH case $host_vendor in sni) shlibpath_overrides_runpath=no need_lib_prefix=no runpath_var=LD_RUN_PATH ;; siemens) need_lib_prefix=no ;; motorola) need_lib_prefix=no need_version=no shlibpath_overrides_runpath=no sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib' ;; esac ;; sysv4*MP*) if test -d /usr/nec ;then version_type=linux library_names_spec='$libname${shared_ext}.$versuffix $libname${shared_ext}.$major $libname${shared_ext}' soname_spec='$libname${shared_ext}.$major' shlibpath_var=LD_LIBRARY_PATH fi ;; sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*) version_type=freebsd-elf need_lib_prefix=no need_version=no library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}' soname_spec='${libname}${release}${shared_ext}$major' shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=yes hardcode_into_libs=yes if test "$with_gnu_ld" = yes; then sys_lib_search_path_spec='/usr/local/lib /usr/gnu/lib /usr/ccs/lib /usr/lib /lib' else sys_lib_search_path_spec='/usr/ccs/lib /usr/lib' case $host_os in sco3.2v5*) sys_lib_search_path_spec="$sys_lib_search_path_spec /lib" ;; esac fi sys_lib_dlsearch_path_spec='/usr/lib' ;; tpf*) # TPF is a cross-target only. Preferred cross-host = GNU/Linux. version_type=linux need_lib_prefix=no need_version=no library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=no hardcode_into_libs=yes ;; uts4*) version_type=linux library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' soname_spec='${libname}${release}${shared_ext}$major' shlibpath_var=LD_LIBRARY_PATH ;; *) dynamic_linker=no ;; esac AC_MSG_RESULT([$dynamic_linker]) test "$dynamic_linker" = no && can_build_shared=no variables_saved_for_relink="PATH $shlibpath_var $runpath_var" if test "$GCC" = yes; then variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH" fi if test "${lt_cv_sys_lib_search_path_spec+set}" = set; then sys_lib_search_path_spec="$lt_cv_sys_lib_search_path_spec" fi if test "${lt_cv_sys_lib_dlsearch_path_spec+set}" = set; then sys_lib_dlsearch_path_spec="$lt_cv_sys_lib_dlsearch_path_spec" fi _LT_DECL([], [variables_saved_for_relink], [1], [Variables whose values should be saved in libtool wrapper scripts and restored at link time]) _LT_DECL([], [need_lib_prefix], [0], [Do we need the "lib" prefix for modules?]) _LT_DECL([], [need_version], [0], [Do we need a version for libraries?]) _LT_DECL([], [version_type], [0], [Library versioning type]) _LT_DECL([], [runpath_var], [0], [Shared library runtime path variable]) _LT_DECL([], [shlibpath_var], [0],[Shared library path variable]) _LT_DECL([], [shlibpath_overrides_runpath], [0], [Is shlibpath searched before the hard-coded library search path?]) _LT_DECL([], [libname_spec], [1], [Format of library name prefix]) _LT_DECL([], [library_names_spec], [1], [[List of archive names. First name is the real one, the rest are links. The last name is the one that the linker finds with -lNAME]]) _LT_DECL([], [soname_spec], [1], [[The coded name of the library, if different from the real name]]) _LT_DECL([], [postinstall_cmds], [2], [Command to use after installation of a shared archive]) _LT_DECL([], [postuninstall_cmds], [2], [Command to use after uninstallation of a shared archive]) _LT_DECL([], [finish_cmds], [2], [Commands used to finish a libtool library installation in a directory]) _LT_DECL([], [finish_eval], [1], [[As "finish_cmds", except a single script fragment to be evaled but not shown]]) _LT_DECL([], [hardcode_into_libs], [0], [Whether we should hardcode library paths into libraries]) _LT_DECL([], [sys_lib_search_path_spec], [2], [Compile-time system search path for libraries]) _LT_DECL([], [sys_lib_dlsearch_path_spec], [2], [Run-time system search path for libraries]) ])# _LT_SYS_DYNAMIC_LINKER # _LT_PATH_TOOL_PREFIX(TOOL) # -------------------------- # find a file program which can recognize shared library AC_DEFUN([_LT_PATH_TOOL_PREFIX], [m4_require([_LT_DECL_EGREP])dnl AC_MSG_CHECKING([for $1]) AC_CACHE_VAL(lt_cv_path_MAGIC_CMD, [case $MAGIC_CMD in [[\\/*] | ?:[\\/]*]) lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path. ;; *) lt_save_MAGIC_CMD="$MAGIC_CMD" lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR dnl $ac_dummy forces splitting on constant user-supplied paths. dnl POSIX.2 word splitting is done only on the output of word expansions, dnl not every word. This closes a longstanding sh security hole. ac_dummy="m4_if([$2], , $PATH, [$2])" for ac_dir in $ac_dummy; do IFS="$lt_save_ifs" test -z "$ac_dir" && ac_dir=. if test -f $ac_dir/$1; then lt_cv_path_MAGIC_CMD="$ac_dir/$1" if test -n "$file_magic_test_file"; then case $deplibs_check_method in "file_magic "*) file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"` MAGIC_CMD="$lt_cv_path_MAGIC_CMD" if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null | $EGREP "$file_magic_regex" > /dev/null; then : else cat <<_LT_EOF 1>&2 *** Warning: the command libtool uses to detect shared libraries, *** $file_magic_cmd, produces output that libtool cannot recognize. *** The result is that libtool may fail to recognize shared libraries *** as such. This will affect the creation of libtool libraries that *** depend on shared libraries, but programs linked with such libtool *** libraries will work regardless of this problem. Nevertheless, you *** may want to report the problem to your system manager and/or to *** bug-libtool@gnu.org _LT_EOF fi ;; esac fi break fi done IFS="$lt_save_ifs" MAGIC_CMD="$lt_save_MAGIC_CMD" ;; esac]) MAGIC_CMD="$lt_cv_path_MAGIC_CMD" if test -n "$MAGIC_CMD"; then AC_MSG_RESULT($MAGIC_CMD) else AC_MSG_RESULT(no) fi _LT_DECL([], [MAGIC_CMD], [0], [Used to examine libraries when file_magic_cmd begins with "file"])dnl ])# _LT_PATH_TOOL_PREFIX # Old name: AU_ALIAS([AC_PATH_TOOL_PREFIX], [_LT_PATH_TOOL_PREFIX]) dnl aclocal-1.4 backwards compatibility: dnl AC_DEFUN([AC_PATH_TOOL_PREFIX], []) # _LT_PATH_MAGIC # -------------- # find a file program which can recognize a shared library m4_defun([_LT_PATH_MAGIC], [_LT_PATH_TOOL_PREFIX(${ac_tool_prefix}file, /usr/bin$PATH_SEPARATOR$PATH) if test -z "$lt_cv_path_MAGIC_CMD"; then if test -n "$ac_tool_prefix"; then _LT_PATH_TOOL_PREFIX(file, /usr/bin$PATH_SEPARATOR$PATH) else MAGIC_CMD=: fi fi ])# _LT_PATH_MAGIC # LT_PATH_LD # ---------- # find the pathname to the GNU or non-GNU linker AC_DEFUN([LT_PATH_LD], [AC_REQUIRE([AC_PROG_CC])dnl AC_REQUIRE([AC_CANONICAL_HOST])dnl AC_REQUIRE([AC_CANONICAL_BUILD])dnl m4_require([_LT_DECL_SED])dnl m4_require([_LT_DECL_EGREP])dnl AC_ARG_WITH([gnu-ld], [AS_HELP_STRING([--with-gnu-ld], [assume the C compiler uses GNU ld @<:@default=no@:>@])], [test "$withval" = no || with_gnu_ld=yes], [with_gnu_ld=no])dnl ac_prog=ld if test "$GCC" = yes; then # Check if gcc -print-prog-name=ld gives a path. AC_MSG_CHECKING([for ld used by $CC]) case $host in *-*-mingw*) # gcc leaves a trailing carriage return which upsets mingw ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;; *) ac_prog=`($CC -print-prog-name=ld) 2>&5` ;; esac case $ac_prog in # Accept absolute paths. [[\\/]]* | ?:[[\\/]]*) re_direlt='/[[^/]][[^/]]*/\.\./' # Canonicalize the pathname of ld ac_prog=`$ECHO "$ac_prog"| $SED 's%\\\\%/%g'` while $ECHO "$ac_prog" | $GREP "$re_direlt" > /dev/null 2>&1; do ac_prog=`$ECHO $ac_prog| $SED "s%$re_direlt%/%"` done test -z "$LD" && LD="$ac_prog" ;; "") # If it fails, then pretend we aren't using GCC. ac_prog=ld ;; *) # If it is relative, then search for the first ld in PATH. with_gnu_ld=unknown ;; esac elif test "$with_gnu_ld" = yes; then AC_MSG_CHECKING([for GNU ld]) else AC_MSG_CHECKING([for non-GNU ld]) fi AC_CACHE_VAL(lt_cv_path_LD, [if test -z "$LD"; then lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR for ac_dir in $PATH; do IFS="$lt_save_ifs" test -z "$ac_dir" && ac_dir=. if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then lt_cv_path_LD="$ac_dir/$ac_prog" # Check to see if the program is GNU ld. I'd rather use --version, # but apparently some variants of GNU ld only accept -v. # Break only if it was the GNU/non-GNU ld that we prefer. case `"$lt_cv_path_LD" -v 2>&1 &1 /dev/null 2>&1; then lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL' lt_cv_file_magic_cmd='func_win32_libid' else lt_cv_deplibs_check_method='file_magic file format pei*-i386(.*architecture: i386)?' lt_cv_file_magic_cmd='$OBJDUMP -f' fi ;; cegcc) # use the weaker test based on 'objdump'. See mingw*. lt_cv_deplibs_check_method='file_magic file format pe-arm-.*little(.*architecture: arm)?' lt_cv_file_magic_cmd='$OBJDUMP -f' ;; darwin* | rhapsody*) lt_cv_deplibs_check_method=pass_all ;; freebsd* | dragonfly*) if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then case $host_cpu in i*86 ) # Not sure whether the presence of OpenBSD here was a mistake. # Let's accept both of them until this is cleared up. lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD|DragonFly)/i[[3-9]]86 (compact )?demand paged shared library' lt_cv_file_magic_cmd=/usr/bin/file lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*` ;; esac else lt_cv_deplibs_check_method=pass_all fi ;; gnu*) lt_cv_deplibs_check_method=pass_all ;; hpux10.20* | hpux11*) lt_cv_file_magic_cmd=/usr/bin/file case $host_cpu in ia64*) lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|ELF-[[0-9]][[0-9]]) shared object file - IA64' lt_cv_file_magic_test_file=/usr/lib/hpux32/libc.so ;; hppa*64*) [lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|ELF-[0-9][0-9]) shared object file - PA-RISC [0-9].[0-9]'] lt_cv_file_magic_test_file=/usr/lib/pa20_64/libc.sl ;; *) lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|PA-RISC[[0-9]].[[0-9]]) shared library' lt_cv_file_magic_test_file=/usr/lib/libc.sl ;; esac ;; interix[[3-9]]*) # PIC code is broken on Interix 3.x, that's why |\.a not |_pic\.a here lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so|\.a)$' ;; irix5* | irix6* | nonstopux*) case $LD in *-32|*"-32 ") libmagic=32-bit;; *-n32|*"-n32 ") libmagic=N32;; *-64|*"-64 ") libmagic=64-bit;; *) libmagic=never-match;; esac lt_cv_deplibs_check_method=pass_all ;; # This must be Linux ELF. linux* | k*bsd*-gnu) lt_cv_deplibs_check_method=pass_all ;; netbsd*) if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$' else lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so|_pic\.a)$' fi ;; newos6*) lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (executable|dynamic lib)' lt_cv_file_magic_cmd=/usr/bin/file lt_cv_file_magic_test_file=/usr/lib/libnls.so ;; *nto* | *qnx*) lt_cv_deplibs_check_method=pass_all ;; openbsd*) if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|\.so|_pic\.a)$' else lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$' fi ;; osf3* | osf4* | osf5*) lt_cv_deplibs_check_method=pass_all ;; rdos*) lt_cv_deplibs_check_method=pass_all ;; solaris*) lt_cv_deplibs_check_method=pass_all ;; sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*) lt_cv_deplibs_check_method=pass_all ;; sysv4 | sysv4.3*) case $host_vendor in motorola) lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib) M[[0-9]][[0-9]]* Version [[0-9]]' lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*` ;; ncr) lt_cv_deplibs_check_method=pass_all ;; sequent) lt_cv_file_magic_cmd='/bin/file' lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB (shared object|dynamic lib )' ;; sni) lt_cv_file_magic_cmd='/bin/file' lt_cv_deplibs_check_method="file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB dynamic lib" lt_cv_file_magic_test_file=/lib/libc.so ;; siemens) lt_cv_deplibs_check_method=pass_all ;; pc) lt_cv_deplibs_check_method=pass_all ;; esac ;; tpf*) lt_cv_deplibs_check_method=pass_all ;; esac ]) file_magic_cmd=$lt_cv_file_magic_cmd deplibs_check_method=$lt_cv_deplibs_check_method test -z "$deplibs_check_method" && deplibs_check_method=unknown _LT_DECL([], [deplibs_check_method], [1], [Method to check whether dependent libraries are shared objects]) _LT_DECL([], [file_magic_cmd], [1], [Command to use when deplibs_check_method == "file_magic"]) ])# _LT_CHECK_MAGIC_METHOD # LT_PATH_NM # ---------- # find the pathname to a BSD- or MS-compatible name lister AC_DEFUN([LT_PATH_NM], [AC_REQUIRE([AC_PROG_CC])dnl AC_CACHE_CHECK([for BSD- or MS-compatible name lister (nm)], lt_cv_path_NM, [if test -n "$NM"; then # Let the user override the test. lt_cv_path_NM="$NM" else lt_nm_to_check="${ac_tool_prefix}nm" if test -n "$ac_tool_prefix" && test "$build" = "$host"; then lt_nm_to_check="$lt_nm_to_check nm" fi for lt_tmp_nm in $lt_nm_to_check; do lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR for ac_dir in $PATH /usr/ccs/bin/elf /usr/ccs/bin /usr/ucb /bin; do IFS="$lt_save_ifs" test -z "$ac_dir" && ac_dir=. tmp_nm="$ac_dir/$lt_tmp_nm" if test -f "$tmp_nm" || test -f "$tmp_nm$ac_exeext" ; then # Check to see if the nm accepts a BSD-compat flag. # Adding the `sed 1q' prevents false positives on HP-UX, which says: # nm: unknown option "B" ignored # Tru64's nm complains that /dev/null is an invalid object file case `"$tmp_nm" -B /dev/null 2>&1 | sed '1q'` in */dev/null* | *'Invalid file or object type'*) lt_cv_path_NM="$tmp_nm -B" break ;; *) case `"$tmp_nm" -p /dev/null 2>&1 | sed '1q'` in */dev/null*) lt_cv_path_NM="$tmp_nm -p" break ;; *) lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but continue # so that we can try to find one that supports BSD flags ;; esac ;; esac fi done IFS="$lt_save_ifs" done : ${lt_cv_path_NM=no} fi]) if test "$lt_cv_path_NM" != "no"; then NM="$lt_cv_path_NM" else # Didn't find any BSD compatible name lister, look for dumpbin. AC_CHECK_TOOLS(DUMPBIN, ["dumpbin -symbols" "link -dump -symbols"], :) AC_SUBST([DUMPBIN]) if test "$DUMPBIN" != ":"; then NM="$DUMPBIN" fi fi test -z "$NM" && NM=nm AC_SUBST([NM]) _LT_DECL([], [NM], [1], [A BSD- or MS-compatible name lister])dnl AC_CACHE_CHECK([the name lister ($NM) interface], [lt_cv_nm_interface], [lt_cv_nm_interface="BSD nm" echo "int some_variable = 0;" > conftest.$ac_ext (eval echo "\"\$as_me:__oline__: $ac_compile\"" >&AS_MESSAGE_LOG_FD) (eval "$ac_compile" 2>conftest.err) cat conftest.err >&AS_MESSAGE_LOG_FD (eval echo "\"\$as_me:__oline__: $NM \\\"conftest.$ac_objext\\\"\"" >&AS_MESSAGE_LOG_FD) (eval "$NM \"conftest.$ac_objext\"" 2>conftest.err > conftest.out) cat conftest.err >&AS_MESSAGE_LOG_FD (eval echo "\"\$as_me:__oline__: output\"" >&AS_MESSAGE_LOG_FD) cat conftest.out >&AS_MESSAGE_LOG_FD if $GREP 'External.*some_variable' conftest.out > /dev/null; then lt_cv_nm_interface="MS dumpbin" fi rm -f conftest*]) ])# LT_PATH_NM # Old names: AU_ALIAS([AM_PROG_NM], [LT_PATH_NM]) AU_ALIAS([AC_PROG_NM], [LT_PATH_NM]) dnl aclocal-1.4 backwards compatibility: dnl AC_DEFUN([AM_PROG_NM], []) dnl AC_DEFUN([AC_PROG_NM], []) # LT_LIB_M # -------- # check for math library AC_DEFUN([LT_LIB_M], [AC_REQUIRE([AC_CANONICAL_HOST])dnl LIBM= case $host in *-*-beos* | *-*-cygwin* | *-*-pw32* | *-*-darwin*) # These system don't have libm, or don't need it ;; *-ncr-sysv4.3*) AC_CHECK_LIB(mw, _mwvalidcheckl, LIBM="-lmw") AC_CHECK_LIB(m, cos, LIBM="$LIBM -lm") ;; *) AC_CHECK_LIB(m, cos, LIBM="-lm") ;; esac AC_SUBST([LIBM]) ])# LT_LIB_M # Old name: AU_ALIAS([AC_CHECK_LIBM], [LT_LIB_M]) dnl aclocal-1.4 backwards compatibility: dnl AC_DEFUN([AC_CHECK_LIBM], []) # _LT_COMPILER_NO_RTTI([TAGNAME]) # ------------------------------- m4_defun([_LT_COMPILER_NO_RTTI], [m4_require([_LT_TAG_COMPILER])dnl _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)= if test "$GCC" = yes; then _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin' _LT_COMPILER_OPTION([if $compiler supports -fno-rtti -fno-exceptions], lt_cv_prog_compiler_rtti_exceptions, [-fno-rtti -fno-exceptions], [], [_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)="$_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1) -fno-rtti -fno-exceptions"]) fi _LT_TAGDECL([no_builtin_flag], [lt_prog_compiler_no_builtin_flag], [1], [Compiler flag to turn off builtin functions]) ])# _LT_COMPILER_NO_RTTI # _LT_CMD_GLOBAL_SYMBOLS # ---------------------- m4_defun([_LT_CMD_GLOBAL_SYMBOLS], [AC_REQUIRE([AC_CANONICAL_HOST])dnl AC_REQUIRE([AC_PROG_CC])dnl AC_REQUIRE([LT_PATH_NM])dnl AC_REQUIRE([LT_PATH_LD])dnl m4_require([_LT_DECL_SED])dnl m4_require([_LT_DECL_EGREP])dnl m4_require([_LT_TAG_COMPILER])dnl # Check for command to grab the raw symbol name followed by C symbol from nm. AC_MSG_CHECKING([command to parse $NM output from $compiler object]) AC_CACHE_VAL([lt_cv_sys_global_symbol_pipe], [ # These are sane defaults that work on at least a few old systems. # [They come from Ultrix. What could be older than Ultrix?!! ;)] # Character class describing NM global symbol codes. symcode='[[BCDEGRST]]' # Regexp to match symbols that can be accessed directly from C. sympat='\([[_A-Za-z]][[_A-Za-z0-9]]*\)' # Define system-specific variables. case $host_os in aix*) symcode='[[BCDT]]' ;; cygwin* | mingw* | pw32* | cegcc*) symcode='[[ABCDGISTW]]' ;; hpux*) if test "$host_cpu" = ia64; then symcode='[[ABCDEGRST]]' fi ;; irix* | nonstopux*) symcode='[[BCDEGRST]]' ;; osf*) symcode='[[BCDEGQRST]]' ;; solaris*) symcode='[[BDRT]]' ;; sco3.2v5*) symcode='[[DT]]' ;; sysv4.2uw2*) symcode='[[DT]]' ;; sysv5* | sco5v6* | unixware* | OpenUNIX*) symcode='[[ABDT]]' ;; sysv4) symcode='[[DFNSTU]]' ;; esac # If we're using GNU nm, then use its standard symbol codes. case `$NM -V 2>&1` in *GNU* | *'with BFD'*) symcode='[[ABCDGIRSTW]]' ;; esac # Transform an extracted symbol line into a proper C declaration. # Some systems (esp. on ia64) link data and code symbols differently, # so use this general approach. lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern int \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'" # Transform an extracted symbol line into symbol name and symbol address lt_cv_sys_global_symbol_to_c_name_address="sed -n -e 's/^: \([[^ ]]*\) $/ {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([[^ ]]*\) \([[^ ]]*\)$/ {\"\2\", (void *) \&\2},/p'" lt_cv_sys_global_symbol_to_c_name_address_lib_prefix="sed -n -e 's/^: \([[^ ]]*\) $/ {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([[^ ]]*\) \(lib[[^ ]]*\)$/ {\"\2\", (void *) \&\2},/p' -e 's/^$symcode* \([[^ ]]*\) \([[^ ]]*\)$/ {\"lib\2\", (void *) \&\2},/p'" # Handle CRLF in mingw tool chain opt_cr= case $build_os in mingw*) opt_cr=`$ECHO 'x\{0,1\}' | tr x '\015'` # option cr in regexp ;; esac # Try without a prefix underscore, then with it. for ac_symprfx in "" "_"; do # Transform symcode, sympat, and symprfx into a raw symbol and a C symbol. symxfrm="\\1 $ac_symprfx\\2 \\2" # Write the raw and C identifiers. if test "$lt_cv_nm_interface" = "MS dumpbin"; then # Fake it for dumpbin and say T for any non-static function # and D for any global variable. # Also find C++ and __fastcall symbols from MSVC++, # which start with @ or ?. lt_cv_sys_global_symbol_pipe="$AWK ['"\ " {last_section=section; section=\$ 3};"\ " /Section length .*#relocs.*(pick any)/{hide[last_section]=1};"\ " \$ 0!~/External *\|/{next};"\ " / 0+ UNDEF /{next}; / UNDEF \([^|]\)*()/{next};"\ " {if(hide[section]) next};"\ " {f=0}; \$ 0~/\(\).*\|/{f=1}; {printf f ? \"T \" : \"D \"};"\ " {split(\$ 0, a, /\||\r/); split(a[2], s)};"\ " s[1]~/^[@?]/{print s[1], s[1]; next};"\ " s[1]~prfx {split(s[1],t,\"@\"); print t[1], substr(t[1],length(prfx))}"\ " ' prfx=^$ac_symprfx]" else lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[[ ]]\($symcode$symcode*\)[[ ]][[ ]]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'" fi # Check to see that the pipe works correctly. pipe_works=no rm -f conftest* cat > conftest.$ac_ext <<_LT_EOF #ifdef __cplusplus extern "C" { #endif char nm_test_var; void nm_test_func(void); void nm_test_func(void){} #ifdef __cplusplus } #endif int main(){nm_test_var='a';nm_test_func();return(0);} _LT_EOF if AC_TRY_EVAL(ac_compile); then # Now try to grab the symbols. nlist=conftest.nm if AC_TRY_EVAL(NM conftest.$ac_objext \| $lt_cv_sys_global_symbol_pipe \> $nlist) && test -s "$nlist"; then # Try sorting and uniquifying the output. if sort "$nlist" | uniq > "$nlist"T; then mv -f "$nlist"T "$nlist" else rm -f "$nlist"T fi # Make sure that we snagged all the symbols we need. if $GREP ' nm_test_var$' "$nlist" >/dev/null; then if $GREP ' nm_test_func$' "$nlist" >/dev/null; then cat <<_LT_EOF > conftest.$ac_ext #ifdef __cplusplus extern "C" { #endif _LT_EOF # Now generate the symbol file. eval "$lt_cv_sys_global_symbol_to_cdecl"' < "$nlist" | $GREP -v main >> conftest.$ac_ext' cat <<_LT_EOF >> conftest.$ac_ext /* The mapping between symbol names and symbols. */ const struct { const char *name; void *address; } lt__PROGRAM__LTX_preloaded_symbols[[]] = { { "@PROGRAM@", (void *) 0 }, _LT_EOF $SED "s/^$symcode$symcode* \(.*\) \(.*\)$/ {\"\2\", (void *) \&\2},/" < "$nlist" | $GREP -v main >> conftest.$ac_ext cat <<\_LT_EOF >> conftest.$ac_ext {0, (void *) 0} }; /* This works around a problem in FreeBSD linker */ #ifdef FREEBSD_WORKAROUND static const void *lt_preloaded_setup() { return lt__PROGRAM__LTX_preloaded_symbols; } #endif #ifdef __cplusplus } #endif _LT_EOF # Now try linking the two files. mv conftest.$ac_objext conftstm.$ac_objext lt_save_LIBS="$LIBS" lt_save_CFLAGS="$CFLAGS" LIBS="conftstm.$ac_objext" CFLAGS="$CFLAGS$_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)" if AC_TRY_EVAL(ac_link) && test -s conftest${ac_exeext}; then pipe_works=yes fi LIBS="$lt_save_LIBS" CFLAGS="$lt_save_CFLAGS" else echo "cannot find nm_test_func in $nlist" >&AS_MESSAGE_LOG_FD fi else echo "cannot find nm_test_var in $nlist" >&AS_MESSAGE_LOG_FD fi else echo "cannot run $lt_cv_sys_global_symbol_pipe" >&AS_MESSAGE_LOG_FD fi else echo "$progname: failed program was:" >&AS_MESSAGE_LOG_FD cat conftest.$ac_ext >&5 fi rm -rf conftest* conftst* # Do not use the global_symbol_pipe unless it works. if test "$pipe_works" = yes; then break else lt_cv_sys_global_symbol_pipe= fi done ]) if test -z "$lt_cv_sys_global_symbol_pipe"; then lt_cv_sys_global_symbol_to_cdecl= fi if test -z "$lt_cv_sys_global_symbol_pipe$lt_cv_sys_global_symbol_to_cdecl"; then AC_MSG_RESULT(failed) else AC_MSG_RESULT(ok) fi _LT_DECL([global_symbol_pipe], [lt_cv_sys_global_symbol_pipe], [1], [Take the output of nm and produce a listing of raw symbols and C names]) _LT_DECL([global_symbol_to_cdecl], [lt_cv_sys_global_symbol_to_cdecl], [1], [Transform the output of nm in a proper C declaration]) _LT_DECL([global_symbol_to_c_name_address], [lt_cv_sys_global_symbol_to_c_name_address], [1], [Transform the output of nm in a C name address pair]) _LT_DECL([global_symbol_to_c_name_address_lib_prefix], [lt_cv_sys_global_symbol_to_c_name_address_lib_prefix], [1], [Transform the output of nm in a C name address pair when lib prefix is needed]) ]) # _LT_CMD_GLOBAL_SYMBOLS # _LT_COMPILER_PIC([TAGNAME]) # --------------------------- m4_defun([_LT_COMPILER_PIC], [m4_require([_LT_TAG_COMPILER])dnl _LT_TAGVAR(lt_prog_compiler_wl, $1)= _LT_TAGVAR(lt_prog_compiler_pic, $1)= _LT_TAGVAR(lt_prog_compiler_static, $1)= AC_MSG_CHECKING([for $compiler option to produce PIC]) m4_if([$1], [CXX], [ # C++ specific cases for pic, static, wl, etc. if test "$GXX" = yes; then _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' case $host_os in aix*) # All AIX code is PIC. if test "$host_cpu" = ia64; then # AIX 5 now supports IA64 processor _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' fi ;; amigaos*) case $host_cpu in powerpc) # see comment about AmigaOS4 .so support _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' ;; m68k) # FIXME: we need at least 68020 code to build shared libraries, but # adding the `-m68020' flag to GCC prevents building anything better, # like `-m68040'. _LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4' ;; esac ;; beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*) # PIC is the default for these OSes. ;; mingw* | cygwin* | os2* | pw32* | cegcc*) # This hack is so that the source file can tell whether it is being # built for inclusion in a dll (and should export symbols for example). # Although the cygwin gcc ignores -fPIC, still need this for old-style # (--disable-auto-import) libraries m4_if([$1], [GCJ], [], [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT']) ;; darwin* | rhapsody*) # PIC is the default on this platform # Common symbols not allowed in MH_DYLIB files _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common' ;; *djgpp*) # DJGPP does not support shared libraries at all _LT_TAGVAR(lt_prog_compiler_pic, $1)= ;; interix[[3-9]]*) # Interix 3.x gcc -fpic/-fPIC options generate broken code. # Instead, we relocate shared libraries at runtime. ;; sysv4*MP*) if test -d /usr/nec; then _LT_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic fi ;; hpux*) # PIC is the default for 64-bit PA HP-UX, but not for 32-bit # PA HP-UX. On IA64 HP-UX, PIC is the default but the pic flag # sets the default TLS model and affects inlining. case $host_cpu in hppa*64*) ;; *) _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' ;; esac ;; *qnx* | *nto*) # QNX uses GNU C++, but need to define -shared option too, otherwise # it will coredump. _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared' ;; *) _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' ;; esac else case $host_os in aix[[4-9]]*) # All AIX code is PIC. if test "$host_cpu" = ia64; then # AIX 5 now supports IA64 processor _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' else _LT_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp' fi ;; chorus*) case $cc_basename in cxch68*) # Green Hills C++ Compiler # _LT_TAGVAR(lt_prog_compiler_static, $1)="--no_auto_instantiation -u __main -u __premain -u _abort -r $COOL_DIR/lib/libOrb.a $MVME_DIR/lib/CC/libC.a $MVME_DIR/lib/classix/libcx.s.a" ;; esac ;; dgux*) case $cc_basename in ec++*) _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' ;; ghcx*) # Green Hills C++ Compiler _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic' ;; *) ;; esac ;; freebsd* | dragonfly*) # FreeBSD uses GNU C++ ;; hpux9* | hpux10* | hpux11*) case $cc_basename in CC*) _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' _LT_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive' if test "$host_cpu" != ia64; then _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z' fi ;; aCC*) _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' _LT_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive' case $host_cpu in hppa*64*|ia64*) # +Z the default ;; *) _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z' ;; esac ;; *) ;; esac ;; interix*) # This is c89, which is MS Visual C++ (no shared libs) # Anyone wants to do a port? ;; irix5* | irix6* | nonstopux*) case $cc_basename in CC*) _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' # CC pic flag -KPIC is the default. ;; *) ;; esac ;; linux* | k*bsd*-gnu) case $cc_basename in KCC*) # KAI C++ Compiler _LT_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,' _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' ;; ecpc* ) # old Intel C++ for x86_64 which still supported -KPIC. _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' ;; icpc* ) # Intel C++, used to be incompatible with GCC. # ICC 10 doesn't accept -KPIC any more. _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' ;; pgCC* | pgcpp*) # Portland Group C++ compiler _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic' _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' ;; cxx*) # Compaq C++ # Make sure the PIC flag is empty. It appears that all Alpha # Linux and Compaq Tru64 Unix objects are PIC. _LT_TAGVAR(lt_prog_compiler_pic, $1)= _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' ;; xlc* | xlC*) # IBM XL 8.0 on PPC _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' _LT_TAGVAR(lt_prog_compiler_pic, $1)='-qpic' _LT_TAGVAR(lt_prog_compiler_static, $1)='-qstaticlink' ;; *) case `$CC -V 2>&1 | sed 5q` in *Sun\ C*) # Sun C++ 5.9 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ' ;; esac ;; esac ;; lynxos*) ;; m88k*) ;; mvs*) case $cc_basename in cxx*) _LT_TAGVAR(lt_prog_compiler_pic, $1)='-W c,exportall' ;; *) ;; esac ;; netbsd*) ;; *qnx* | *nto*) # QNX uses GNU C++, but need to define -shared option too, otherwise # it will coredump. _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared' ;; osf3* | osf4* | osf5*) case $cc_basename in KCC*) _LT_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,' ;; RCC*) # Rational C++ 2.4.1 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic' ;; cxx*) # Digital/Compaq C++ _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' # Make sure the PIC flag is empty. It appears that all Alpha # Linux and Compaq Tru64 Unix objects are PIC. _LT_TAGVAR(lt_prog_compiler_pic, $1)= _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' ;; *) ;; esac ;; psos*) ;; solaris*) case $cc_basename in CC*) # Sun C++ 4.2, 5.x and Centerline C++ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ' ;; gcx*) # Green Hills C++ Compiler _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC' ;; *) ;; esac ;; sunos4*) case $cc_basename in CC*) # Sun C++ 4.x _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic' _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' ;; lcc*) # Lucid _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic' ;; *) ;; esac ;; sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*) case $cc_basename in CC*) _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' ;; esac ;; tandem*) case $cc_basename in NCC*) # NonStop-UX NCC 3.20 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' ;; *) ;; esac ;; vxworks*) ;; *) _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no ;; esac fi ], [ if test "$GCC" = yes; then _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' case $host_os in aix*) # All AIX code is PIC. if test "$host_cpu" = ia64; then # AIX 5 now supports IA64 processor _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' fi ;; amigaos*) case $host_cpu in powerpc) # see comment about AmigaOS4 .so support _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' ;; m68k) # FIXME: we need at least 68020 code to build shared libraries, but # adding the `-m68020' flag to GCC prevents building anything better, # like `-m68040'. _LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4' ;; esac ;; beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*) # PIC is the default for these OSes. ;; mingw* | cygwin* | pw32* | os2* | cegcc*) # This hack is so that the source file can tell whether it is being # built for inclusion in a dll (and should export symbols for example). # Although the cygwin gcc ignores -fPIC, still need this for old-style # (--disable-auto-import) libraries m4_if([$1], [GCJ], [], [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT']) ;; darwin* | rhapsody*) # PIC is the default on this platform # Common symbols not allowed in MH_DYLIB files _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common' ;; hpux*) # PIC is the default for 64-bit PA HP-UX, but not for 32-bit # PA HP-UX. On IA64 HP-UX, PIC is the default but the pic flag # sets the default TLS model and affects inlining. case $host_cpu in hppa*64*) # +Z the default ;; *) _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' ;; esac ;; interix[[3-9]]*) # Interix 3.x gcc -fpic/-fPIC options generate broken code. # Instead, we relocate shared libraries at runtime. ;; msdosdjgpp*) # Just because we use GCC doesn't mean we suddenly get shared libraries # on systems that don't support them. _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no enable_shared=no ;; *nto* | *qnx*) # QNX uses GNU C++, but need to define -shared option too, otherwise # it will coredump. _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared' ;; sysv4*MP*) if test -d /usr/nec; then _LT_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic fi ;; *) _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' ;; esac else # PORTME Check for flag to pass linker flags through the system compiler. case $host_os in aix*) _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' if test "$host_cpu" = ia64; then # AIX 5 now supports IA64 processor _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' else _LT_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp' fi ;; mingw* | cygwin* | pw32* | os2* | cegcc*) # This hack is so that the source file can tell whether it is being # built for inclusion in a dll (and should export symbols for example). m4_if([$1], [GCJ], [], [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT']) ;; hpux9* | hpux10* | hpux11*) _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but # not for PA HP-UX. case $host_cpu in hppa*64*|ia64*) # +Z the default ;; *) _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z' ;; esac # Is there a better lt_prog_compiler_static that works with the bundled CC? _LT_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive' ;; irix5* | irix6* | nonstopux*) _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' # PIC (with -KPIC) is the default. _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' ;; linux* | k*bsd*-gnu) case $cc_basename in # old Intel for x86_64 which still supported -KPIC. ecc*) _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' ;; # icc used to be incompatible with GCC. # ICC 10 doesn't accept -KPIC any more. icc* | ifort*) _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' ;; # Lahey Fortran 8.1. lf95*) _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' _LT_TAGVAR(lt_prog_compiler_pic, $1)='--shared' _LT_TAGVAR(lt_prog_compiler_static, $1)='--static' ;; pgcc* | pgf77* | pgf90* | pgf95*) # Portland Group compilers (*not* the Pentium gcc compiler, # which looks to be a dead project) _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic' _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' ;; ccc*) _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' # All Alpha code is PIC. _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' ;; xl*) # IBM XL C 8.0/Fortran 10.1 on PPC _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' _LT_TAGVAR(lt_prog_compiler_pic, $1)='-qpic' _LT_TAGVAR(lt_prog_compiler_static, $1)='-qstaticlink' ;; *) case `$CC -V 2>&1 | sed 5q` in *Sun\ C*) # Sun C 5.9 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' ;; *Sun\ F*) # Sun Fortran 8.3 passes all unrecognized flags to the linker _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' _LT_TAGVAR(lt_prog_compiler_wl, $1)='' ;; esac ;; esac ;; newsos6) _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' ;; *nto* | *qnx*) # QNX uses GNU C++, but need to define -shared option too, otherwise # it will coredump. _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared' ;; osf3* | osf4* | osf5*) _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' # All OSF/1 code is PIC. _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' ;; rdos*) _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' ;; solaris*) _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' case $cc_basename in f77* | f90* | f95*) _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ';; *) _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,';; esac ;; sunos4*) _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ' _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC' _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' ;; sysv4 | sysv4.2uw2* | sysv4.3*) _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' ;; sysv4*MP*) if test -d /usr/nec ;then _LT_TAGVAR(lt_prog_compiler_pic, $1)='-Kconform_pic' _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' fi ;; sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*) _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' ;; unicos*) _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no ;; uts4*) _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic' _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' ;; *) _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no ;; esac fi ]) case $host_os in # For platforms which do not support PIC, -DPIC is meaningless: *djgpp*) _LT_TAGVAR(lt_prog_compiler_pic, $1)= ;; *) _LT_TAGVAR(lt_prog_compiler_pic, $1)="$_LT_TAGVAR(lt_prog_compiler_pic, $1)@&t@m4_if([$1],[],[ -DPIC],[m4_if([$1],[CXX],[ -DPIC],[])])" ;; esac AC_MSG_RESULT([$_LT_TAGVAR(lt_prog_compiler_pic, $1)]) _LT_TAGDECL([wl], [lt_prog_compiler_wl], [1], [How to pass a linker flag through the compiler]) # # Check to make sure the PIC flag actually works. # if test -n "$_LT_TAGVAR(lt_prog_compiler_pic, $1)"; then _LT_COMPILER_OPTION([if $compiler PIC flag $_LT_TAGVAR(lt_prog_compiler_pic, $1) works], [_LT_TAGVAR(lt_cv_prog_compiler_pic_works, $1)], [$_LT_TAGVAR(lt_prog_compiler_pic, $1)@&t@m4_if([$1],[],[ -DPIC],[m4_if([$1],[CXX],[ -DPIC],[])])], [], [case $_LT_TAGVAR(lt_prog_compiler_pic, $1) in "" | " "*) ;; *) _LT_TAGVAR(lt_prog_compiler_pic, $1)=" $_LT_TAGVAR(lt_prog_compiler_pic, $1)" ;; esac], [_LT_TAGVAR(lt_prog_compiler_pic, $1)= _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no]) fi _LT_TAGDECL([pic_flag], [lt_prog_compiler_pic], [1], [Additional compiler flags for building library objects]) # # Check to make sure the static flag actually works. # wl=$_LT_TAGVAR(lt_prog_compiler_wl, $1) eval lt_tmp_static_flag=\"$_LT_TAGVAR(lt_prog_compiler_static, $1)\" _LT_LINKER_OPTION([if $compiler static flag $lt_tmp_static_flag works], _LT_TAGVAR(lt_cv_prog_compiler_static_works, $1), $lt_tmp_static_flag, [], [_LT_TAGVAR(lt_prog_compiler_static, $1)=]) _LT_TAGDECL([link_static_flag], [lt_prog_compiler_static], [1], [Compiler flag to prevent dynamic linking]) ])# _LT_COMPILER_PIC # _LT_LINKER_SHLIBS([TAGNAME]) # ---------------------------- # See if the linker supports building shared libraries. m4_defun([_LT_LINKER_SHLIBS], [AC_REQUIRE([LT_PATH_LD])dnl AC_REQUIRE([LT_PATH_NM])dnl m4_require([_LT_FILEUTILS_DEFAULTS])dnl m4_require([_LT_DECL_EGREP])dnl m4_require([_LT_DECL_SED])dnl m4_require([_LT_CMD_GLOBAL_SYMBOLS])dnl m4_require([_LT_TAG_COMPILER])dnl AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries]) m4_if([$1], [CXX], [ _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols' case $host_os in aix[[4-9]]*) # If we're using GNU nm, then we don't want the "-C" option. # -C means demangle to AIX nm, but means don't demangle with GNU nm if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then _LT_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && ([substr](\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols' else _LT_TAGVAR(export_symbols_cmds, $1)='$NM -BCpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && ([substr](\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols' fi ;; pw32*) _LT_TAGVAR(export_symbols_cmds, $1)="$ltdll_cmds" ;; cygwin* | mingw* | cegcc*) _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGRS]][[ ]]/s/.*[[ ]]\([[^ ]]*\)/\1 DATA/;/^.*[[ ]]__nm__/s/^.*[[ ]]__nm__\([[^ ]]*\)[[ ]][[^ ]]*/\1 DATA/;/^I[[ ]]/d;/^[[AITW]][[ ]]/s/.* //'\'' | sort | uniq > $export_symbols' ;; *) _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols' ;; esac _LT_TAGVAR(exclude_expsyms, $1)=['_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*'] ], [ runpath_var= _LT_TAGVAR(allow_undefined_flag, $1)= _LT_TAGVAR(always_export_symbols, $1)=no _LT_TAGVAR(archive_cmds, $1)= _LT_TAGVAR(archive_expsym_cmds, $1)= _LT_TAGVAR(compiler_needs_object, $1)=no _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no _LT_TAGVAR(export_dynamic_flag_spec, $1)= _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols' _LT_TAGVAR(hardcode_automatic, $1)=no _LT_TAGVAR(hardcode_direct, $1)=no _LT_TAGVAR(hardcode_direct_absolute, $1)=no _LT_TAGVAR(hardcode_libdir_flag_spec, $1)= _LT_TAGVAR(hardcode_libdir_flag_spec_ld, $1)= _LT_TAGVAR(hardcode_libdir_separator, $1)= _LT_TAGVAR(hardcode_minus_L, $1)=no _LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported _LT_TAGVAR(inherit_rpath, $1)=no _LT_TAGVAR(link_all_deplibs, $1)=unknown _LT_TAGVAR(module_cmds, $1)= _LT_TAGVAR(module_expsym_cmds, $1)= _LT_TAGVAR(old_archive_from_new_cmds, $1)= _LT_TAGVAR(old_archive_from_expsyms_cmds, $1)= _LT_TAGVAR(thread_safe_flag_spec, $1)= _LT_TAGVAR(whole_archive_flag_spec, $1)= # include_expsyms should be a list of space-separated symbols to be *always* # included in the symbol list _LT_TAGVAR(include_expsyms, $1)= # exclude_expsyms can be an extended regexp of symbols to exclude # it will be wrapped by ` (' and `)$', so one must not match beginning or # end of line. Example: `a|bc|.*d.*' will exclude the symbols `a' and `bc', # as well as any symbol that contains `d'. _LT_TAGVAR(exclude_expsyms, $1)=['_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*'] # Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out # platforms (ab)use it in PIC code, but their linkers get confused if # the symbol is explicitly referenced. Since portable code cannot # rely on this symbol name, it's probably fine to never include it in # preloaded symbol tables. # Exclude shared library initialization/finalization symbols. dnl Note also adjust exclude_expsyms for C++ above. extract_expsyms_cmds= case $host_os in cygwin* | mingw* | pw32* | cegcc*) # FIXME: the MSVC++ port hasn't been tested in a loooong time # When not using gcc, we currently assume that we are using # Microsoft Visual C++. if test "$GCC" != yes; then with_gnu_ld=no fi ;; interix*) # we just hope/assume this is gcc and not c89 (= MSVC++) with_gnu_ld=yes ;; openbsd*) with_gnu_ld=no ;; esac _LT_TAGVAR(ld_shlibs, $1)=yes if test "$with_gnu_ld" = yes; then # If archive_cmds runs LD, not CC, wlarc should be empty wlarc='${wl}' # Set some defaults for GNU ld with shared library support. These # are reset later if shared libraries are not supported. Putting them # here allows them to be overridden if necessary. runpath_var=LD_RUN_PATH _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic' # ancient GNU ld didn't support --whole-archive et. al. if $LD --help 2>&1 | $GREP 'no-whole-archive' > /dev/null; then _LT_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive' else _LT_TAGVAR(whole_archive_flag_spec, $1)= fi supports_anon_versioning=no case `$LD -v 2>&1` in *\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.10.*) ;; # catch versions < 2.11 *\ 2.11.93.0.2\ *) supports_anon_versioning=yes ;; # RH7.3 ... *\ 2.11.92.0.12\ *) supports_anon_versioning=yes ;; # Mandrake 8.2 ... *\ 2.11.*) ;; # other 2.11 versions *) supports_anon_versioning=yes ;; esac # See if GNU ld supports shared libraries. case $host_os in aix[[3-9]]*) # On AIX/PPC, the GNU linker is very broken if test "$host_cpu" != ia64; then _LT_TAGVAR(ld_shlibs, $1)=no cat <<_LT_EOF 1>&2 *** Warning: the GNU linker, at least up to release 2.9.1, is reported *** to be unable to reliably create shared libraries on AIX. *** Therefore, libtool is disabling shared libraries support. If you *** really care for shared libraries, you may want to modify your PATH *** so that a non-GNU linker is found, and then restart. _LT_EOF fi ;; amigaos*) case $host_cpu in powerpc) # see comment about AmigaOS4 .so support _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' _LT_TAGVAR(archive_expsym_cmds, $1)='' ;; m68k) _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)' _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' _LT_TAGVAR(hardcode_minus_L, $1)=yes ;; esac ;; beos*) if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then _LT_TAGVAR(allow_undefined_flag, $1)=unsupported # Joseph Beckenbach says some releases of gcc # support --undefined. This deserves some investigation. FIXME _LT_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' else _LT_TAGVAR(ld_shlibs, $1)=no fi ;; cygwin* | mingw* | pw32* | cegcc*) # _LT_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless, # as there is no search path for DLLs. _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' _LT_TAGVAR(allow_undefined_flag, $1)=unsupported _LT_TAGVAR(always_export_symbols, $1)=no _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGRS]][[ ]]/s/.*[[ ]]\([[^ ]]*\)/\1 DATA/'\'' | $SED -e '\''/^[[AITW]][[ ]]/s/.*[[ ]]//'\'' | sort | uniq > $export_symbols' if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib' # If the export-symbols file already is a .def file (1st line # is EXPORTS), use it as is; otherwise, prepend... _LT_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then cp $export_symbols $output_objdir/$soname.def; else echo EXPORTS > $output_objdir/$soname.def; cat $export_symbols >> $output_objdir/$soname.def; fi~ $CC -shared $output_objdir/$soname.def $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib' else _LT_TAGVAR(ld_shlibs, $1)=no fi ;; interix[[3-9]]*) _LT_TAGVAR(hardcode_direct, $1)=no _LT_TAGVAR(hardcode_shlibpath_var, $1)=no _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc. # Instead, shared libraries are loaded at an image base (0x10000000 by # default) and relocated if they conflict, which is a slow very memory # consuming and fragmenting process. To avoid this, we pick a random, # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link # time. Moving up from 0x10000000 also allows more sbrk(2) space. _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' _LT_TAGVAR(archive_expsym_cmds, $1)='sed "s,^,_," $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--retain-symbols-file,$output_objdir/$soname.expsym ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' ;; gnu* | linux* | tpf* | k*bsd*-gnu) tmp_diet=no if test "$host_os" = linux-dietlibc; then case $cc_basename in diet\ *) tmp_diet=yes;; # linux-dietlibc with static linking (!diet-dyn) esac fi if $LD --help 2>&1 | $EGREP ': supported targets:.* elf' > /dev/null \ && test "$tmp_diet" = no then tmp_addflag= tmp_sharedflag='-shared' case $cc_basename,$host_cpu in pgcc*) # Portland Group C compiler _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $ECHO \"$new_convenience\"` ${wl}--no-whole-archive' tmp_addflag=' $pic_flag' ;; pgf77* | pgf90* | pgf95*) # Portland Group f77 and f90 compilers _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $ECHO \"$new_convenience\"` ${wl}--no-whole-archive' tmp_addflag=' $pic_flag -Mnomain' ;; ecc*,ia64* | icc*,ia64*) # Intel C compiler on ia64 tmp_addflag=' -i_dynamic' ;; efc*,ia64* | ifort*,ia64*) # Intel Fortran compiler on ia64 tmp_addflag=' -i_dynamic -nofor_main' ;; ifc* | ifort*) # Intel Fortran compiler tmp_addflag=' -nofor_main' ;; lf95*) # Lahey Fortran 8.1 _LT_TAGVAR(whole_archive_flag_spec, $1)= tmp_sharedflag='--shared' ;; xl[[cC]]*) # IBM XL C 8.0 on PPC (deal with xlf below) tmp_sharedflag='-qmkshrobj' tmp_addflag= ;; esac case `$CC -V 2>&1 | sed 5q` in *Sun\ C*) # Sun C 5.9 _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; $ECHO \"$new_convenience\"` ${wl}--no-whole-archive' _LT_TAGVAR(compiler_needs_object, $1)=yes tmp_sharedflag='-G' ;; *Sun\ F*) # Sun Fortran 8.3 tmp_sharedflag='-G' ;; esac _LT_TAGVAR(archive_cmds, $1)='$CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' if test "x$supports_anon_versioning" = xyes; then _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~ cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ echo "local: *; };" >> $output_objdir/$libname.ver~ $CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib' fi case $cc_basename in xlf*) # IBM XL Fortran 10.1 on PPC cannot create shared libs itself _LT_TAGVAR(whole_archive_flag_spec, $1)='--whole-archive$convenience --no-whole-archive' _LT_TAGVAR(hardcode_libdir_flag_spec, $1)= _LT_TAGVAR(hardcode_libdir_flag_spec_ld, $1)='-rpath $libdir' _LT_TAGVAR(archive_cmds, $1)='$LD -shared $libobjs $deplibs $compiler_flags -soname $soname -o $lib' if test "x$supports_anon_versioning" = xyes; then _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~ cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ echo "local: *; };" >> $output_objdir/$libname.ver~ $LD -shared $libobjs $deplibs $compiler_flags -soname $soname -version-script $output_objdir/$libname.ver -o $lib' fi ;; esac else _LT_TAGVAR(ld_shlibs, $1)=no fi ;; netbsd*) if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib' wlarc= else _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' fi ;; solaris*) if $LD -v 2>&1 | $GREP 'BFD 2\.8' > /dev/null; then _LT_TAGVAR(ld_shlibs, $1)=no cat <<_LT_EOF 1>&2 *** Warning: The releases 2.8.* of the GNU linker cannot reliably *** create shared libraries on Solaris systems. Therefore, libtool *** is disabling shared libraries support. We urge you to upgrade GNU *** binutils to release 2.9.1 or newer. Another option is to modify *** your PATH or compiler configuration so that the native linker is *** used, and then restart. _LT_EOF elif $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' else _LT_TAGVAR(ld_shlibs, $1)=no fi ;; sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX*) case `$LD -v 2>&1` in *\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.1[[0-5]].*) _LT_TAGVAR(ld_shlibs, $1)=no cat <<_LT_EOF 1>&2 *** Warning: Releases of the GNU linker prior to 2.16.91.0.3 can not *** reliably create shared libraries on SCO systems. Therefore, libtool *** is disabling shared libraries support. We urge you to upgrade GNU *** binutils to release 2.16.91.0.3 or newer. Another option is to modify *** your PATH or compiler configuration so that the native linker is *** used, and then restart. _LT_EOF ;; *) # For security reasons, it is highly recommended that you always # use absolute paths for naming shared libraries, and exclude the # DT_RUNPATH tag from executables and libraries. But doing so # requires that you compile everything twice, which is a pain. if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' else _LT_TAGVAR(ld_shlibs, $1)=no fi ;; esac ;; sunos4*) _LT_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags' wlarc= _LT_TAGVAR(hardcode_direct, $1)=yes _LT_TAGVAR(hardcode_shlibpath_var, $1)=no ;; *) if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' else _LT_TAGVAR(ld_shlibs, $1)=no fi ;; esac if test "$_LT_TAGVAR(ld_shlibs, $1)" = no; then runpath_var= _LT_TAGVAR(hardcode_libdir_flag_spec, $1)= _LT_TAGVAR(export_dynamic_flag_spec, $1)= _LT_TAGVAR(whole_archive_flag_spec, $1)= fi else # PORTME fill in a description of your system's linker (not GNU ld) case $host_os in aix3*) _LT_TAGVAR(allow_undefined_flag, $1)=unsupported _LT_TAGVAR(always_export_symbols, $1)=yes _LT_TAGVAR(archive_expsym_cmds, $1)='$LD -o $output_objdir/$soname $libobjs $deplibs $linker_flags -bE:$export_symbols -T512 -H512 -bM:SRE~$AR $AR_FLAGS $lib $output_objdir/$soname' # Note: this linker hardcodes the directories in LIBPATH if there # are no directories specified by -L. _LT_TAGVAR(hardcode_minus_L, $1)=yes if test "$GCC" = yes && test -z "$lt_prog_compiler_static"; then # Neither direct hardcoding nor static linking is supported with a # broken collect2. _LT_TAGVAR(hardcode_direct, $1)=unsupported fi ;; aix[[4-9]]*) if test "$host_cpu" = ia64; then # On IA64, the linker does run time linking by default, so we don't # have to do anything special. aix_use_runtimelinking=no exp_sym_flag='-Bexport' no_entry_flag="" else # If we're using GNU nm, then we don't want the "-C" option. # -C means demangle to AIX nm, but means don't demangle with GNU nm if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then _LT_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && ([substr](\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols' else _LT_TAGVAR(export_symbols_cmds, $1)='$NM -BCpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && ([substr](\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols' fi aix_use_runtimelinking=no # Test if we are trying to use run time linking or normal # AIX style linking. If -brtl is somewhere in LDFLAGS, we # need to do runtime linking. case $host_os in aix4.[[23]]|aix4.[[23]].*|aix[[5-9]]*) for ld_flag in $LDFLAGS; do if (test $ld_flag = "-brtl" || test $ld_flag = "-Wl,-brtl"); then aix_use_runtimelinking=yes break fi done ;; esac exp_sym_flag='-bexport' no_entry_flag='-bnoentry' fi # When large executables or shared objects are built, AIX ld can # have problems creating the table of contents. If linking a library # or program results in "error TOC overflow" add -mminimal-toc to # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS. _LT_TAGVAR(archive_cmds, $1)='' _LT_TAGVAR(hardcode_direct, $1)=yes _LT_TAGVAR(hardcode_direct_absolute, $1)=yes _LT_TAGVAR(hardcode_libdir_separator, $1)=':' _LT_TAGVAR(link_all_deplibs, $1)=yes _LT_TAGVAR(file_list_spec, $1)='${wl}-f,' if test "$GCC" = yes; then case $host_os in aix4.[[012]]|aix4.[[012]].*) # We only want to do this on AIX 4.2 and lower, the check # below for broken collect2 doesn't work under 4.3+ collect2name=`${CC} -print-prog-name=collect2` if test -f "$collect2name" && strings "$collect2name" | $GREP resolve_lib_name >/dev/null then # We have reworked collect2 : else # We have old collect2 _LT_TAGVAR(hardcode_direct, $1)=unsupported # It fails to find uninstalled libraries when the uninstalled # path is not listed in the libpath. Setting hardcode_minus_L # to unsupported forces relinking _LT_TAGVAR(hardcode_minus_L, $1)=yes _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' _LT_TAGVAR(hardcode_libdir_separator, $1)= fi ;; esac shared_flag='-shared' if test "$aix_use_runtimelinking" = yes; then shared_flag="$shared_flag "'${wl}-G' fi else # not using gcc if test "$host_cpu" = ia64; then # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release # chokes on -Wl,-G. The following line is correct: shared_flag='-G' else if test "$aix_use_runtimelinking" = yes; then shared_flag='${wl}-G' else shared_flag='${wl}-bM:SRE' fi fi fi _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-bexpall' # It seems that -bexpall does not export symbols beginning with # underscore (_), so it is better to generate a list of symbols to export. _LT_TAGVAR(always_export_symbols, $1)=yes if test "$aix_use_runtimelinking" = yes; then # Warning - without using the other runtime loading flags (-brtl), # -berok will link without error, but may produce a broken library. _LT_TAGVAR(allow_undefined_flag, $1)='-berok' # Determine the default libpath from the value encoded in an # empty executable. _LT_SYS_MODULE_PATH_AIX _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath" _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then $ECHO "X${wl}${allow_undefined_flag}" | $Xsed; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag" else if test "$host_cpu" = ia64; then _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $libdir:/usr/lib:/lib' _LT_TAGVAR(allow_undefined_flag, $1)="-z nodefs" _LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$exp_sym_flag:\$export_symbols" else # Determine the default libpath from the value encoded in an # empty executable. _LT_SYS_MODULE_PATH_AIX _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath" # Warning - without using the other run time loading flags, # -berok will link without error, but may produce a broken library. _LT_TAGVAR(no_undefined_flag, $1)=' ${wl}-bernotok' _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-berok' # Exported symbols can be pulled into shared objects from archives _LT_TAGVAR(whole_archive_flag_spec, $1)='$convenience' _LT_TAGVAR(archive_cmds_need_lc, $1)=yes # This is similar to how AIX traditionally builds its shared libraries. _LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs ${wl}-bnoentry $compiler_flags ${wl}-bE:$export_symbols${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname' fi fi ;; amigaos*) case $host_cpu in powerpc) # see comment about AmigaOS4 .so support _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' _LT_TAGVAR(archive_expsym_cmds, $1)='' ;; m68k) _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)' _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' _LT_TAGVAR(hardcode_minus_L, $1)=yes ;; esac ;; bsdi[[45]]*) _LT_TAGVAR(export_dynamic_flag_spec, $1)=-rdynamic ;; cygwin* | mingw* | pw32* | cegcc*) # When not using gcc, we currently assume that we are using # Microsoft Visual C++. # hardcode_libdir_flag_spec is actually meaningless, as there is # no search path for DLLs. _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' ' _LT_TAGVAR(allow_undefined_flag, $1)=unsupported # Tell ltmain to make .lib files, not .a files. libext=lib # Tell ltmain to make .dll files, not .so files. shrext_cmds=".dll" # FIXME: Setting linknames here is a bad hack. _LT_TAGVAR(archive_cmds, $1)='$CC -o $lib $libobjs $compiler_flags `$ECHO "X$deplibs" | $Xsed -e '\''s/ -lc$//'\''` -link -dll~linknames=' # The linker will automatically build a .lib file if we build a DLL. _LT_TAGVAR(old_archive_from_new_cmds, $1)='true' # FIXME: Should let the user specify the lib program. _LT_TAGVAR(old_archive_cmds, $1)='lib -OUT:$oldlib$oldobjs$old_deplibs' _LT_TAGVAR(fix_srcfile_path, $1)='`cygpath -w "$srcfile"`' _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes ;; darwin* | rhapsody*) _LT_DARWIN_LINKER_FEATURES($1) ;; dgux*) _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' _LT_TAGVAR(hardcode_shlibpath_var, $1)=no ;; freebsd1*) _LT_TAGVAR(ld_shlibs, $1)=no ;; # FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor # support. Future versions do this automatically, but an explicit c++rt0.o # does not break anything, and helps significantly (at the cost of a little # extra space). freebsd2.2*) _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags /usr/lib/c++rt0.o' _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' _LT_TAGVAR(hardcode_direct, $1)=yes _LT_TAGVAR(hardcode_shlibpath_var, $1)=no ;; # Unfortunately, older versions of FreeBSD 2 do not have this feature. freebsd2*) _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' _LT_TAGVAR(hardcode_direct, $1)=yes _LT_TAGVAR(hardcode_minus_L, $1)=yes _LT_TAGVAR(hardcode_shlibpath_var, $1)=no ;; # FreeBSD 3 and greater uses gcc -shared to do shared libraries. freebsd* | dragonfly*) _LT_TAGVAR(archive_cmds, $1)='$CC -shared -o $lib $libobjs $deplibs $compiler_flags' _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' _LT_TAGVAR(hardcode_direct, $1)=yes _LT_TAGVAR(hardcode_shlibpath_var, $1)=no ;; hpux9*) if test "$GCC" = yes; then _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -shared -fPIC ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $libobjs $deplibs $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' else _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' fi _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir' _LT_TAGVAR(hardcode_libdir_separator, $1)=: _LT_TAGVAR(hardcode_direct, $1)=yes # hardcode_minus_L: Not really in the search PATH, # but as the default location of the library. _LT_TAGVAR(hardcode_minus_L, $1)=yes _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' ;; hpux10*) if test "$GCC" = yes -a "$with_gnu_ld" = no; then _LT_TAGVAR(archive_cmds, $1)='$CC -shared -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags' else _LT_TAGVAR(archive_cmds, $1)='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags' fi if test "$with_gnu_ld" = no; then _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir' _LT_TAGVAR(hardcode_libdir_flag_spec_ld, $1)='+b $libdir' _LT_TAGVAR(hardcode_libdir_separator, $1)=: _LT_TAGVAR(hardcode_direct, $1)=yes _LT_TAGVAR(hardcode_direct_absolute, $1)=yes _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' # hardcode_minus_L: Not really in the search PATH, # but as the default location of the library. _LT_TAGVAR(hardcode_minus_L, $1)=yes fi ;; hpux11*) if test "$GCC" = yes -a "$with_gnu_ld" = no; then case $host_cpu in hppa*64*) _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags' ;; ia64*) _LT_TAGVAR(archive_cmds, $1)='$CC -shared -fPIC ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags' ;; *) _LT_TAGVAR(archive_cmds, $1)='$CC -shared -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags' ;; esac else case $host_cpu in hppa*64*) _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags' ;; ia64*) _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags' ;; *) _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags' ;; esac fi if test "$with_gnu_ld" = no; then _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir' _LT_TAGVAR(hardcode_libdir_separator, $1)=: case $host_cpu in hppa*64*|ia64*) _LT_TAGVAR(hardcode_direct, $1)=no _LT_TAGVAR(hardcode_shlibpath_var, $1)=no ;; *) _LT_TAGVAR(hardcode_direct, $1)=yes _LT_TAGVAR(hardcode_direct_absolute, $1)=yes _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' # hardcode_minus_L: Not really in the search PATH, # but as the default location of the library. _LT_TAGVAR(hardcode_minus_L, $1)=yes ;; esac fi ;; irix5* | irix6* | nonstopux*) if test "$GCC" = yes; then _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' # Try to use the -exported_symbol ld option, if it does not # work, assume that -exports_file does not work either and # implicitly export all symbols. save_LDFLAGS="$LDFLAGS" LDFLAGS="$LDFLAGS -shared ${wl}-exported_symbol ${wl}foo ${wl}-update_registry ${wl}/dev/null" AC_LINK_IFELSE(int foo(void) {}, _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations ${wl}-exports_file ${wl}$export_symbols -o $lib' ) LDFLAGS="$save_LDFLAGS" else _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib' _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -exports_file $export_symbols -o $lib' fi _LT_TAGVAR(archive_cmds_need_lc, $1)='no' _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' _LT_TAGVAR(hardcode_libdir_separator, $1)=: _LT_TAGVAR(inherit_rpath, $1)=yes _LT_TAGVAR(link_all_deplibs, $1)=yes ;; netbsd*) if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' # a.out else _LT_TAGVAR(archive_cmds, $1)='$LD -shared -o $lib $libobjs $deplibs $linker_flags' # ELF fi _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' _LT_TAGVAR(hardcode_direct, $1)=yes _LT_TAGVAR(hardcode_shlibpath_var, $1)=no ;; newsos6) _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' _LT_TAGVAR(hardcode_direct, $1)=yes _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' _LT_TAGVAR(hardcode_libdir_separator, $1)=: _LT_TAGVAR(hardcode_shlibpath_var, $1)=no ;; *nto* | *qnx*) ;; openbsd*) if test -f /usr/libexec/ld.so; then _LT_TAGVAR(hardcode_direct, $1)=yes _LT_TAGVAR(hardcode_shlibpath_var, $1)=no _LT_TAGVAR(hardcode_direct_absolute, $1)=yes if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-retain-symbols-file,$export_symbols' _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' else case $host_os in openbsd[[01]].* | openbsd2.[[0-7]] | openbsd2.[[0-7]].*) _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' ;; *) _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' ;; esac fi else _LT_TAGVAR(ld_shlibs, $1)=no fi ;; os2*) _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' _LT_TAGVAR(hardcode_minus_L, $1)=yes _LT_TAGVAR(allow_undefined_flag, $1)=unsupported _LT_TAGVAR(archive_cmds, $1)='$ECHO "LIBRARY $libname INITINSTANCE" > $output_objdir/$libname.def~$ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~$ECHO DATA >> $output_objdir/$libname.def~$ECHO " SINGLE NONSHARED" >> $output_objdir/$libname.def~$ECHO EXPORTS >> $output_objdir/$libname.def~emxexp $libobjs >> $output_objdir/$libname.def~$CC -Zdll -Zcrtdll -o $lib $libobjs $deplibs $compiler_flags $output_objdir/$libname.def' _LT_TAGVAR(old_archive_from_new_cmds, $1)='emximp -o $output_objdir/$libname.a $output_objdir/$libname.def' ;; osf3*) if test "$GCC" = yes; then _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*' _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' else _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*' _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib' fi _LT_TAGVAR(archive_cmds_need_lc, $1)='no' _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' _LT_TAGVAR(hardcode_libdir_separator, $1)=: ;; osf4* | osf5*) # as osf3* with the addition of -msym flag if test "$GCC" = yes; then _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*' _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' else _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*' _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags -msym -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib' _LT_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done; printf "%s\\n" "-hidden">> $lib.exp~ $CC -shared${allow_undefined_flag} ${wl}-input ${wl}$lib.exp $compiler_flags $libobjs $deplibs -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib~$RM $lib.exp' # Both c and cxx compiler support -rpath directly _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir' fi _LT_TAGVAR(archive_cmds_need_lc, $1)='no' _LT_TAGVAR(hardcode_libdir_separator, $1)=: ;; solaris*) _LT_TAGVAR(no_undefined_flag, $1)=' -z defs' if test "$GCC" = yes; then wlarc='${wl}' _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-z ${wl}text ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags' _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ $CC -shared ${wl}-z ${wl}text ${wl}-M ${wl}$lib.exp ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp' else case `$CC -V 2>&1` in *"Compilers 5.0"*) wlarc='' _LT_TAGVAR(archive_cmds, $1)='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags' _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$RM $lib.exp' ;; *) wlarc='${wl}' _LT_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $compiler_flags' _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ $CC -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp' ;; esac fi _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' _LT_TAGVAR(hardcode_shlibpath_var, $1)=no case $host_os in solaris2.[[0-5]] | solaris2.[[0-5]].*) ;; *) # The compiler driver will combine and reorder linker options, # but understands `-z linker_flag'. GCC discards it without `$wl', # but is careful enough not to reorder. # Supported since Solaris 2.6 (maybe 2.5.1?) if test "$GCC" = yes; then _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}-z ${wl}allextract$convenience ${wl}-z ${wl}defaultextract' else _LT_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract' fi ;; esac _LT_TAGVAR(link_all_deplibs, $1)=yes ;; sunos4*) if test "x$host_vendor" = xsequent; then # Use $CC to link under sequent, because it throws in some extra .o # files that make .init and .fini sections work. _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h $soname -o $lib $libobjs $deplibs $compiler_flags' else _LT_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags' fi _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' _LT_TAGVAR(hardcode_direct, $1)=yes _LT_TAGVAR(hardcode_minus_L, $1)=yes _LT_TAGVAR(hardcode_shlibpath_var, $1)=no ;; sysv4) case $host_vendor in sni) _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' _LT_TAGVAR(hardcode_direct, $1)=yes # is this really true??? ;; siemens) ## LD is ld it makes a PLAMLIB ## CC just makes a GrossModule. _LT_TAGVAR(archive_cmds, $1)='$LD -G -o $lib $libobjs $deplibs $linker_flags' _LT_TAGVAR(reload_cmds, $1)='$CC -r -o $output$reload_objs' _LT_TAGVAR(hardcode_direct, $1)=no ;; motorola) _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' _LT_TAGVAR(hardcode_direct, $1)=no #Motorola manual says yes, but my tests say they lie ;; esac runpath_var='LD_RUN_PATH' _LT_TAGVAR(hardcode_shlibpath_var, $1)=no ;; sysv4.3*) _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' _LT_TAGVAR(hardcode_shlibpath_var, $1)=no _LT_TAGVAR(export_dynamic_flag_spec, $1)='-Bexport' ;; sysv4*MP*) if test -d /usr/nec; then _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' _LT_TAGVAR(hardcode_shlibpath_var, $1)=no runpath_var=LD_RUN_PATH hardcode_runpath_var=yes _LT_TAGVAR(ld_shlibs, $1)=yes fi ;; sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*) _LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text' _LT_TAGVAR(archive_cmds_need_lc, $1)=no _LT_TAGVAR(hardcode_shlibpath_var, $1)=no runpath_var='LD_RUN_PATH' if test "$GCC" = yes; then _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' else _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' fi ;; sysv5* | sco3.2v5* | sco5v6*) # Note: We can NOT use -z defs as we might desire, because we do not # link with -lc, and that would cause any symbols used from libc to # always be unresolved, which means just about no library would # ever link correctly. If we're not using GNU ld we use -z text # though, which does catch some bad symbols but isn't as heavy-handed # as -z defs. _LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text' _LT_TAGVAR(allow_undefined_flag, $1)='${wl}-z,nodefs' _LT_TAGVAR(archive_cmds_need_lc, $1)=no _LT_TAGVAR(hardcode_shlibpath_var, $1)=no _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R,$libdir' _LT_TAGVAR(hardcode_libdir_separator, $1)=':' _LT_TAGVAR(link_all_deplibs, $1)=yes _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Bexport' runpath_var='LD_RUN_PATH' if test "$GCC" = yes; then _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' else _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' fi ;; uts4*) _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' _LT_TAGVAR(hardcode_shlibpath_var, $1)=no ;; *) _LT_TAGVAR(ld_shlibs, $1)=no ;; esac if test x$host_vendor = xsni; then case $host in sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*) _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Blargedynsym' ;; esac fi fi ]) AC_MSG_RESULT([$_LT_TAGVAR(ld_shlibs, $1)]) test "$_LT_TAGVAR(ld_shlibs, $1)" = no && can_build_shared=no _LT_TAGVAR(with_gnu_ld, $1)=$with_gnu_ld _LT_DECL([], [libext], [0], [Old archive suffix (normally "a")])dnl _LT_DECL([], [shrext_cmds], [1], [Shared library suffix (normally ".so")])dnl _LT_DECL([], [extract_expsyms_cmds], [2], [The commands to extract the exported symbol list from a shared archive]) # # Do we need to explicitly link libc? # case "x$_LT_TAGVAR(archive_cmds_need_lc, $1)" in x|xyes) # Assume -lc should be added _LT_TAGVAR(archive_cmds_need_lc, $1)=yes if test "$enable_shared" = yes && test "$GCC" = yes; then case $_LT_TAGVAR(archive_cmds, $1) in *'~'*) # FIXME: we may have to deal with multi-command sequences. ;; '$CC '*) # Test whether the compiler implicitly links with -lc since on some # systems, -lgcc has to come before -lc. If gcc already passes -lc # to ld, don't add -lc before -lgcc. AC_MSG_CHECKING([whether -lc should be explicitly linked in]) $RM conftest* echo "$lt_simple_compile_test_code" > conftest.$ac_ext if AC_TRY_EVAL(ac_compile) 2>conftest.err; then soname=conftest lib=conftest libobjs=conftest.$ac_objext deplibs= wl=$_LT_TAGVAR(lt_prog_compiler_wl, $1) pic_flag=$_LT_TAGVAR(lt_prog_compiler_pic, $1) compiler_flags=-v linker_flags=-v verstring= output_objdir=. libname=conftest lt_save_allow_undefined_flag=$_LT_TAGVAR(allow_undefined_flag, $1) _LT_TAGVAR(allow_undefined_flag, $1)= if AC_TRY_EVAL(_LT_TAGVAR(archive_cmds, $1) 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1) then _LT_TAGVAR(archive_cmds_need_lc, $1)=no else _LT_TAGVAR(archive_cmds_need_lc, $1)=yes fi _LT_TAGVAR(allow_undefined_flag, $1)=$lt_save_allow_undefined_flag else cat conftest.err 1>&5 fi $RM conftest* AC_MSG_RESULT([$_LT_TAGVAR(archive_cmds_need_lc, $1)]) ;; esac fi ;; esac _LT_TAGDECL([build_libtool_need_lc], [archive_cmds_need_lc], [0], [Whether or not to add -lc for building shared libraries]) _LT_TAGDECL([allow_libtool_libs_with_static_runtimes], [enable_shared_with_static_runtimes], [0], [Whether or not to disallow shared libs when runtime libs are static]) _LT_TAGDECL([], [export_dynamic_flag_spec], [1], [Compiler flag to allow reflexive dlopens]) _LT_TAGDECL([], [whole_archive_flag_spec], [1], [Compiler flag to generate shared objects directly from archives]) _LT_TAGDECL([], [compiler_needs_object], [1], [Whether the compiler copes with passing no objects directly]) _LT_TAGDECL([], [old_archive_from_new_cmds], [2], [Create an old-style archive from a shared archive]) _LT_TAGDECL([], [old_archive_from_expsyms_cmds], [2], [Create a temporary old-style archive to link instead of a shared archive]) _LT_TAGDECL([], [archive_cmds], [2], [Commands used to build a shared archive]) _LT_TAGDECL([], [archive_expsym_cmds], [2]) _LT_TAGDECL([], [module_cmds], [2], [Commands used to build a loadable module if different from building a shared archive.]) _LT_TAGDECL([], [module_expsym_cmds], [2]) _LT_TAGDECL([], [with_gnu_ld], [1], [Whether we are building with GNU ld or not]) _LT_TAGDECL([], [allow_undefined_flag], [1], [Flag that allows shared libraries with undefined symbols to be built]) _LT_TAGDECL([], [no_undefined_flag], [1], [Flag that enforces no undefined symbols]) _LT_TAGDECL([], [hardcode_libdir_flag_spec], [1], [Flag to hardcode $libdir into a binary during linking. This must work even if $libdir does not exist]) _LT_TAGDECL([], [hardcode_libdir_flag_spec_ld], [1], [[If ld is used when linking, flag to hardcode $libdir into a binary during linking. This must work even if $libdir does not exist]]) _LT_TAGDECL([], [hardcode_libdir_separator], [1], [Whether we need a single "-rpath" flag with a separated argument]) _LT_TAGDECL([], [hardcode_direct], [0], [Set to "yes" if using DIR/libNAME${shared_ext} during linking hardcodes DIR into the resulting binary]) _LT_TAGDECL([], [hardcode_direct_absolute], [0], [Set to "yes" if using DIR/libNAME${shared_ext} during linking hardcodes DIR into the resulting binary and the resulting library dependency is "absolute", i.e impossible to change by setting ${shlibpath_var} if the library is relocated]) _LT_TAGDECL([], [hardcode_minus_L], [0], [Set to "yes" if using the -LDIR flag during linking hardcodes DIR into the resulting binary]) _LT_TAGDECL([], [hardcode_shlibpath_var], [0], [Set to "yes" if using SHLIBPATH_VAR=DIR during linking hardcodes DIR into the resulting binary]) _LT_TAGDECL([], [hardcode_automatic], [0], [Set to "yes" if building a shared library automatically hardcodes DIR into the library and all subsequent libraries and executables linked against it]) _LT_TAGDECL([], [inherit_rpath], [0], [Set to yes if linker adds runtime paths of dependent libraries to runtime path list]) _LT_TAGDECL([], [link_all_deplibs], [0], [Whether libtool must link a program against all its dependency libraries]) _LT_TAGDECL([], [fix_srcfile_path], [1], [Fix the shell variable $srcfile for the compiler]) _LT_TAGDECL([], [always_export_symbols], [0], [Set to "yes" if exported symbols are required]) _LT_TAGDECL([], [export_symbols_cmds], [2], [The commands to list exported symbols]) _LT_TAGDECL([], [exclude_expsyms], [1], [Symbols that should not be listed in the preloaded symbols]) _LT_TAGDECL([], [include_expsyms], [1], [Symbols that must always be exported]) _LT_TAGDECL([], [prelink_cmds], [2], [Commands necessary for linking programs (against libraries) with templates]) _LT_TAGDECL([], [file_list_spec], [1], [Specify filename containing input files]) dnl FIXME: Not yet implemented dnl _LT_TAGDECL([], [thread_safe_flag_spec], [1], dnl [Compiler flag to generate thread safe objects]) ])# _LT_LINKER_SHLIBS # _LT_LANG_C_CONFIG([TAG]) # ------------------------ # Ensure that the configuration variables for a C compiler are suitably # defined. These variables are subsequently used by _LT_CONFIG to write # the compiler configuration to `libtool'. m4_defun([_LT_LANG_C_CONFIG], [m4_require([_LT_DECL_EGREP])dnl lt_save_CC="$CC" AC_LANG_PUSH(C) # Source file extension for C test sources. ac_ext=c # Object file extension for compiled C test sources. objext=o _LT_TAGVAR(objext, $1)=$objext # Code to be used in simple compile tests lt_simple_compile_test_code="int some_variable = 0;" # Code to be used in simple link tests lt_simple_link_test_code='int main(){return(0);}' _LT_TAG_COMPILER # Save the default compiler, since it gets overwritten when the other # tags are being tested, and _LT_TAGVAR(compiler, []) is a NOP. compiler_DEFAULT=$CC # save warnings/boilerplate of simple test code _LT_COMPILER_BOILERPLATE _LT_LINKER_BOILERPLATE if test -n "$compiler"; then _LT_COMPILER_NO_RTTI($1) _LT_COMPILER_PIC($1) _LT_COMPILER_C_O($1) _LT_COMPILER_FILE_LOCKS($1) _LT_LINKER_SHLIBS($1) _LT_SYS_DYNAMIC_LINKER($1) _LT_LINKER_HARDCODE_LIBPATH($1) LT_SYS_DLOPEN_SELF _LT_CMD_STRIPLIB # Report which library types will actually be built AC_MSG_CHECKING([if libtool supports shared libraries]) AC_MSG_RESULT([$can_build_shared]) AC_MSG_CHECKING([whether to build shared libraries]) test "$can_build_shared" = "no" && enable_shared=no # On AIX, shared libraries and static libraries use the same namespace, and # are all built from PIC. case $host_os in aix3*) test "$enable_shared" = yes && enable_static=no if test -n "$RANLIB"; then archive_cmds="$archive_cmds~\$RANLIB \$lib" postinstall_cmds='$RANLIB $lib' fi ;; aix[[4-9]]*) if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then test "$enable_shared" = yes && enable_static=no fi ;; esac AC_MSG_RESULT([$enable_shared]) AC_MSG_CHECKING([whether to build static libraries]) # Make sure either enable_shared or enable_static is yes. test "$enable_shared" = yes || enable_static=yes AC_MSG_RESULT([$enable_static]) _LT_CONFIG($1) fi AC_LANG_POP CC="$lt_save_CC" ])# _LT_LANG_C_CONFIG # _LT_PROG_CXX # ------------ # Since AC_PROG_CXX is broken, in that it returns g++ if there is no c++ # compiler, we have our own version here. m4_defun([_LT_PROG_CXX], [ pushdef([AC_MSG_ERROR], [_lt_caught_CXX_error=yes]) AC_PROG_CXX if test -n "$CXX" && ( test "X$CXX" != "Xno" && ( (test "X$CXX" = "Xg++" && `g++ -v >/dev/null 2>&1` ) || (test "X$CXX" != "Xg++"))) ; then AC_PROG_CXXCPP else _lt_caught_CXX_error=yes fi popdef([AC_MSG_ERROR]) ])# _LT_PROG_CXX dnl aclocal-1.4 backwards compatibility: dnl AC_DEFUN([_LT_PROG_CXX], []) # _LT_LANG_CXX_CONFIG([TAG]) # -------------------------- # Ensure that the configuration variables for a C++ compiler are suitably # defined. These variables are subsequently used by _LT_CONFIG to write # the compiler configuration to `libtool'. m4_defun([_LT_LANG_CXX_CONFIG], [AC_REQUIRE([_LT_PROG_CXX])dnl m4_require([_LT_FILEUTILS_DEFAULTS])dnl m4_require([_LT_DECL_EGREP])dnl AC_LANG_PUSH(C++) _LT_TAGVAR(archive_cmds_need_lc, $1)=no _LT_TAGVAR(allow_undefined_flag, $1)= _LT_TAGVAR(always_export_symbols, $1)=no _LT_TAGVAR(archive_expsym_cmds, $1)= _LT_TAGVAR(compiler_needs_object, $1)=no _LT_TAGVAR(export_dynamic_flag_spec, $1)= _LT_TAGVAR(hardcode_direct, $1)=no _LT_TAGVAR(hardcode_direct_absolute, $1)=no _LT_TAGVAR(hardcode_libdir_flag_spec, $1)= _LT_TAGVAR(hardcode_libdir_flag_spec_ld, $1)= _LT_TAGVAR(hardcode_libdir_separator, $1)= _LT_TAGVAR(hardcode_minus_L, $1)=no _LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported _LT_TAGVAR(hardcode_automatic, $1)=no _LT_TAGVAR(inherit_rpath, $1)=no _LT_TAGVAR(module_cmds, $1)= _LT_TAGVAR(module_expsym_cmds, $1)= _LT_TAGVAR(link_all_deplibs, $1)=unknown _LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds _LT_TAGVAR(no_undefined_flag, $1)= _LT_TAGVAR(whole_archive_flag_spec, $1)= _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no # Source file extension for C++ test sources. ac_ext=cpp # Object file extension for compiled C++ test sources. objext=o _LT_TAGVAR(objext, $1)=$objext # No sense in running all these tests if we already determined that # the CXX compiler isn't working. Some variables (like enable_shared) # are currently assumed to apply to all compilers on this platform, # and will be corrupted by setting them based on a non-working compiler. if test "$_lt_caught_CXX_error" != yes; then # Code to be used in simple compile tests lt_simple_compile_test_code="int some_variable = 0;" # Code to be used in simple link tests lt_simple_link_test_code='int main(int, char *[[]]) { return(0); }' # ltmain only uses $CC for tagged configurations so make sure $CC is set. _LT_TAG_COMPILER # save warnings/boilerplate of simple test code _LT_COMPILER_BOILERPLATE _LT_LINKER_BOILERPLATE # Allow CC to be a program name with arguments. lt_save_CC=$CC lt_save_LD=$LD lt_save_GCC=$GCC GCC=$GXX lt_save_with_gnu_ld=$with_gnu_ld lt_save_path_LD=$lt_cv_path_LD if test -n "${lt_cv_prog_gnu_ldcxx+set}"; then lt_cv_prog_gnu_ld=$lt_cv_prog_gnu_ldcxx else $as_unset lt_cv_prog_gnu_ld fi if test -n "${lt_cv_path_LDCXX+set}"; then lt_cv_path_LD=$lt_cv_path_LDCXX else $as_unset lt_cv_path_LD fi test -z "${LDCXX+set}" || LD=$LDCXX CC=${CXX-"c++"} compiler=$CC _LT_TAGVAR(compiler, $1)=$CC _LT_CC_BASENAME([$compiler]) if test -n "$compiler"; then # We don't want -fno-exception when compiling C++ code, so set the # no_builtin_flag separately if test "$GXX" = yes; then _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin' else _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)= fi if test "$GXX" = yes; then # Set up default GNU C++ configuration LT_PATH_LD # Check if GNU C++ uses GNU ld as the underlying linker, since the # archiving commands below assume that GNU ld is being used. if test "$with_gnu_ld" = yes; then _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib' _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic' # If archive_cmds runs LD, not CC, wlarc should be empty # XXX I think wlarc can be eliminated in ltcf-cxx, but I need to # investigate it a little bit more. (MM) wlarc='${wl}' # ancient GNU ld didn't support --whole-archive et. al. if eval "`$CC -print-prog-name=ld` --help 2>&1" | $GREP 'no-whole-archive' > /dev/null; then _LT_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive' else _LT_TAGVAR(whole_archive_flag_spec, $1)= fi else with_gnu_ld=no wlarc= # A generic and very simple default shared library creation # command for GNU C++ for the case where it uses the native # linker, instead of GNU ld. If possible, this setting should # overridden to take advantage of the native linker features on # the platform it is being used on. _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib' fi # Commands to make compiler produce verbose output that lists # what "hidden" libraries, object files and flags are used when # linking a shared library. output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "\-L"' else GXX=no with_gnu_ld=no wlarc= fi # PORTME: fill in a description of your system's C++ link characteristics AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries]) _LT_TAGVAR(ld_shlibs, $1)=yes case $host_os in aix3*) # FIXME: insert proper C++ library support _LT_TAGVAR(ld_shlibs, $1)=no ;; aix[[4-9]]*) if test "$host_cpu" = ia64; then # On IA64, the linker does run time linking by default, so we don't # have to do anything special. aix_use_runtimelinking=no exp_sym_flag='-Bexport' no_entry_flag="" else aix_use_runtimelinking=no # Test if we are trying to use run time linking or normal # AIX style linking. If -brtl is somewhere in LDFLAGS, we # need to do runtime linking. case $host_os in aix4.[[23]]|aix4.[[23]].*|aix[[5-9]]*) for ld_flag in $LDFLAGS; do case $ld_flag in *-brtl*) aix_use_runtimelinking=yes break ;; esac done ;; esac exp_sym_flag='-bexport' no_entry_flag='-bnoentry' fi # When large executables or shared objects are built, AIX ld can # have problems creating the table of contents. If linking a library # or program results in "error TOC overflow" add -mminimal-toc to # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS. _LT_TAGVAR(archive_cmds, $1)='' _LT_TAGVAR(hardcode_direct, $1)=yes _LT_TAGVAR(hardcode_direct_absolute, $1)=yes _LT_TAGVAR(hardcode_libdir_separator, $1)=':' _LT_TAGVAR(link_all_deplibs, $1)=yes _LT_TAGVAR(file_list_spec, $1)='${wl}-f,' if test "$GXX" = yes; then case $host_os in aix4.[[012]]|aix4.[[012]].*) # We only want to do this on AIX 4.2 and lower, the check # below for broken collect2 doesn't work under 4.3+ collect2name=`${CC} -print-prog-name=collect2` if test -f "$collect2name" && strings "$collect2name" | $GREP resolve_lib_name >/dev/null then # We have reworked collect2 : else # We have old collect2 _LT_TAGVAR(hardcode_direct, $1)=unsupported # It fails to find uninstalled libraries when the uninstalled # path is not listed in the libpath. Setting hardcode_minus_L # to unsupported forces relinking _LT_TAGVAR(hardcode_minus_L, $1)=yes _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' _LT_TAGVAR(hardcode_libdir_separator, $1)= fi esac shared_flag='-shared' if test "$aix_use_runtimelinking" = yes; then shared_flag="$shared_flag "'${wl}-G' fi else # not using gcc if test "$host_cpu" = ia64; then # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release # chokes on -Wl,-G. The following line is correct: shared_flag='-G' else if test "$aix_use_runtimelinking" = yes; then shared_flag='${wl}-G' else shared_flag='${wl}-bM:SRE' fi fi fi _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-bexpall' # It seems that -bexpall does not export symbols beginning with # underscore (_), so it is better to generate a list of symbols to # export. _LT_TAGVAR(always_export_symbols, $1)=yes if test "$aix_use_runtimelinking" = yes; then # Warning - without using the other runtime loading flags (-brtl), # -berok will link without error, but may produce a broken library. _LT_TAGVAR(allow_undefined_flag, $1)='-berok' # Determine the default libpath from the value encoded in an empty # executable. _LT_SYS_MODULE_PATH_AIX _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath" _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then $ECHO "X${wl}${allow_undefined_flag}" | $Xsed; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag" else if test "$host_cpu" = ia64; then _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $libdir:/usr/lib:/lib' _LT_TAGVAR(allow_undefined_flag, $1)="-z nodefs" _LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$exp_sym_flag:\$export_symbols" else # Determine the default libpath from the value encoded in an # empty executable. _LT_SYS_MODULE_PATH_AIX _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath" # Warning - without using the other run time loading flags, # -berok will link without error, but may produce a broken library. _LT_TAGVAR(no_undefined_flag, $1)=' ${wl}-bernotok' _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-berok' # Exported symbols can be pulled into shared objects from archives _LT_TAGVAR(whole_archive_flag_spec, $1)='$convenience' _LT_TAGVAR(archive_cmds_need_lc, $1)=yes # This is similar to how AIX traditionally builds its shared # libraries. _LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs ${wl}-bnoentry $compiler_flags ${wl}-bE:$export_symbols${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname' fi fi ;; beos*) if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then _LT_TAGVAR(allow_undefined_flag, $1)=unsupported # Joseph Beckenbach says some releases of gcc # support --undefined. This deserves some investigation. FIXME _LT_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' else _LT_TAGVAR(ld_shlibs, $1)=no fi ;; chorus*) case $cc_basename in *) # FIXME: insert proper C++ library support _LT_TAGVAR(ld_shlibs, $1)=no ;; esac ;; cygwin* | mingw* | pw32* | cegcc*) # _LT_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless, # as there is no search path for DLLs. _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' _LT_TAGVAR(allow_undefined_flag, $1)=unsupported _LT_TAGVAR(always_export_symbols, $1)=no _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib' # If the export-symbols file already is a .def file (1st line # is EXPORTS), use it as is; otherwise, prepend... _LT_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then cp $export_symbols $output_objdir/$soname.def; else echo EXPORTS > $output_objdir/$soname.def; cat $export_symbols >> $output_objdir/$soname.def; fi~ $CC -shared -nostdlib $output_objdir/$soname.def $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib' else _LT_TAGVAR(ld_shlibs, $1)=no fi ;; darwin* | rhapsody*) _LT_DARWIN_LINKER_FEATURES($1) ;; dgux*) case $cc_basename in ec++*) # FIXME: insert proper C++ library support _LT_TAGVAR(ld_shlibs, $1)=no ;; ghcx*) # Green Hills C++ Compiler # FIXME: insert proper C++ library support _LT_TAGVAR(ld_shlibs, $1)=no ;; *) # FIXME: insert proper C++ library support _LT_TAGVAR(ld_shlibs, $1)=no ;; esac ;; freebsd[[12]]*) # C++ shared libraries reported to be fairly broken before # switch to ELF _LT_TAGVAR(ld_shlibs, $1)=no ;; freebsd-elf*) _LT_TAGVAR(archive_cmds_need_lc, $1)=no ;; freebsd* | dragonfly*) # FreeBSD 3 and later use GNU C++ and GNU ld with standard ELF # conventions _LT_TAGVAR(ld_shlibs, $1)=yes ;; gnu*) ;; hpux9*) _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir' _LT_TAGVAR(hardcode_libdir_separator, $1)=: _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' _LT_TAGVAR(hardcode_direct, $1)=yes _LT_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH, # but as the default # location of the library. case $cc_basename in CC*) # FIXME: insert proper C++ library support _LT_TAGVAR(ld_shlibs, $1)=no ;; aCC*) _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -b ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' # Commands to make compiler produce verbose output that lists # what "hidden" libraries, object files and flags are used when # linking a shared library. # # There doesn't appear to be a way to prevent this compiler from # explicitly linking system object files so we need to strip them # from the output so that they don't get included in the library # dependencies. output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $EGREP "\-L"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; $ECHO "X$list" | $Xsed' ;; *) if test "$GXX" = yes; then _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -shared -nostdlib -fPIC ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' else # FIXME: insert proper C++ library support _LT_TAGVAR(ld_shlibs, $1)=no fi ;; esac ;; hpux10*|hpux11*) if test $with_gnu_ld = no; then _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir' _LT_TAGVAR(hardcode_libdir_separator, $1)=: case $host_cpu in hppa*64*|ia64*) ;; *) _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' ;; esac fi case $host_cpu in hppa*64*|ia64*) _LT_TAGVAR(hardcode_direct, $1)=no _LT_TAGVAR(hardcode_shlibpath_var, $1)=no ;; *) _LT_TAGVAR(hardcode_direct, $1)=yes _LT_TAGVAR(hardcode_direct_absolute, $1)=yes _LT_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH, # but as the default # location of the library. ;; esac case $cc_basename in CC*) # FIXME: insert proper C++ library support _LT_TAGVAR(ld_shlibs, $1)=no ;; aCC*) case $host_cpu in hppa*64*) _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' ;; ia64*) _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' ;; *) _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' ;; esac # Commands to make compiler produce verbose output that lists # what "hidden" libraries, object files and flags are used when # linking a shared library. # # There doesn't appear to be a way to prevent this compiler from # explicitly linking system object files so we need to strip them # from the output so that they don't get included in the library # dependencies. output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $GREP "\-L"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; $ECHO "X$list" | $Xsed' ;; *) if test "$GXX" = yes; then if test $with_gnu_ld = no; then case $host_cpu in hppa*64*) _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' ;; ia64*) _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' ;; *) _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' ;; esac fi else # FIXME: insert proper C++ library support _LT_TAGVAR(ld_shlibs, $1)=no fi ;; esac ;; interix[[3-9]]*) _LT_TAGVAR(hardcode_direct, $1)=no _LT_TAGVAR(hardcode_shlibpath_var, $1)=no _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc. # Instead, shared libraries are loaded at an image base (0x10000000 by # default) and relocated if they conflict, which is a slow very memory # consuming and fragmenting process. To avoid this, we pick a random, # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link # time. Moving up from 0x10000000 also allows more sbrk(2) space. _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' _LT_TAGVAR(archive_expsym_cmds, $1)='sed "s,^,_," $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--retain-symbols-file,$output_objdir/$soname.expsym ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' ;; irix5* | irix6*) case $cc_basename in CC*) # SGI C++ _LT_TAGVAR(archive_cmds, $1)='$CC -shared -all -multigot $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib' # Archives containing C++ object files must be created using # "CC -ar", where "CC" is the IRIX C++ compiler. This is # necessary to make sure instantiated templates are included # in the archive. _LT_TAGVAR(old_archive_cmds, $1)='$CC -ar -WR,-u -o $oldlib $oldobjs' ;; *) if test "$GXX" = yes; then if test "$with_gnu_ld" = no; then _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' else _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` -o $lib' fi fi _LT_TAGVAR(link_all_deplibs, $1)=yes ;; esac _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' _LT_TAGVAR(hardcode_libdir_separator, $1)=: _LT_TAGVAR(inherit_rpath, $1)=yes ;; linux* | k*bsd*-gnu) case $cc_basename in KCC*) # Kuck and Associates, Inc. (KAI) C++ Compiler # KCC will only create a shared library if the output file # ends with ".so" (or ".sl" for HP-UX), so rename the library # to its proper name (with version) after linking. _LT_TAGVAR(archive_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib' _LT_TAGVAR(archive_expsym_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib ${wl}-retain-symbols-file,$export_symbols; mv \$templib $lib' # Commands to make compiler produce verbose output that lists # what "hidden" libraries, object files and flags are used when # linking a shared library. # # There doesn't appear to be a way to prevent this compiler from # explicitly linking system object files so we need to strip them # from the output so that they don't get included in the library # dependencies. output_verbose_link_cmd='templist=`$CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1 | $GREP "ld"`; rm -f libconftest$shared_ext; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; $ECHO "X$list" | $Xsed' _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic' # Archives containing C++ object files must be created using # "CC -Bstatic", where "CC" is the KAI C++ compiler. _LT_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs' ;; icpc* | ecpc* ) # Intel C++ with_gnu_ld=yes # version 8.0 and above of icpc choke on multiply defined symbols # if we add $predep_objects and $postdep_objects, however 7.1 and # earlier do not add the objects themselves. case `$CC -V 2>&1` in *"Version 7."*) _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib' _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' ;; *) # Version 8.0 or newer tmp_idyn= case $host_cpu in ia64*) tmp_idyn=' -i_dynamic';; esac _LT_TAGVAR(archive_cmds, $1)='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' ;; esac _LT_TAGVAR(archive_cmds_need_lc, $1)=no _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic' _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive$convenience ${wl}--no-whole-archive' ;; pgCC* | pgcpp*) # Portland Group C++ compiler case `$CC -V` in *pgCC\ [[1-5]]* | *pgcpp\ [[1-5]]*) _LT_TAGVAR(prelink_cmds, $1)='tpldir=Template.dir~ rm -rf $tpldir~ $CC --prelink_objects --instantiation_dir $tpldir $objs $libobjs $compile_deplibs~ compile_command="$compile_command `find $tpldir -name \*.o | $NL2SP`"' _LT_TAGVAR(old_archive_cmds, $1)='tpldir=Template.dir~ rm -rf $tpldir~ $CC --prelink_objects --instantiation_dir $tpldir $oldobjs$old_deplibs~ $AR $AR_FLAGS $oldlib$oldobjs$old_deplibs `find $tpldir -name \*.o | $NL2SP`~ $RANLIB $oldlib' _LT_TAGVAR(archive_cmds, $1)='tpldir=Template.dir~ rm -rf $tpldir~ $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~ $CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | $NL2SP` $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname -o $lib' _LT_TAGVAR(archive_expsym_cmds, $1)='tpldir=Template.dir~ rm -rf $tpldir~ $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~ $CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | $NL2SP` $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname ${wl}-retain-symbols-file ${wl}$export_symbols -o $lib' ;; *) # Version 6 will use weak symbols _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname -o $lib' _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname ${wl}-retain-symbols-file ${wl}$export_symbols -o $lib' ;; esac _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}--rpath ${wl}$libdir' _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic' _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $ECHO \"$new_convenience\"` ${wl}--no-whole-archive' ;; cxx*) # Compaq C++ _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib' _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib ${wl}-retain-symbols-file $wl$export_symbols' runpath_var=LD_RUN_PATH _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir' _LT_TAGVAR(hardcode_libdir_separator, $1)=: # Commands to make compiler produce verbose output that lists # what "hidden" libraries, object files and flags are used when # linking a shared library. # # There doesn't appear to be a way to prevent this compiler from # explicitly linking system object files so we need to strip them # from the output so that they don't get included in the library # dependencies. output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "ld"`; templist=`$ECHO "X$templist" | $Xsed -e "s/\(^.*ld.*\)\( .*ld .*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; $ECHO "X$list" | $Xsed' ;; xl*) # IBM XL 8.0 on PPC, with GNU ld _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic' _LT_TAGVAR(archive_cmds, $1)='$CC -qmkshrobj $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' if test "x$supports_anon_versioning" = xyes; then _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~ cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ echo "local: *; };" >> $output_objdir/$libname.ver~ $CC -qmkshrobj $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib' fi ;; *) case `$CC -V 2>&1 | sed 5q` in *Sun\ C*) # Sun C++ 5.9 _LT_TAGVAR(no_undefined_flag, $1)=' -zdefs' _LT_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-retain-symbols-file ${wl}$export_symbols' _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; $ECHO \"$new_convenience\"` ${wl}--no-whole-archive' _LT_TAGVAR(compiler_needs_object, $1)=yes # Not sure whether something based on # $CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1 # would be better. output_verbose_link_cmd='echo' # Archives containing C++ object files must be created using # "CC -xar", where "CC" is the Sun C++ compiler. This is # necessary to make sure instantiated templates are included # in the archive. _LT_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs' ;; esac ;; esac ;; lynxos*) # FIXME: insert proper C++ library support _LT_TAGVAR(ld_shlibs, $1)=no ;; m88k*) # FIXME: insert proper C++ library support _LT_TAGVAR(ld_shlibs, $1)=no ;; mvs*) case $cc_basename in cxx*) # FIXME: insert proper C++ library support _LT_TAGVAR(ld_shlibs, $1)=no ;; *) # FIXME: insert proper C++ library support _LT_TAGVAR(ld_shlibs, $1)=no ;; esac ;; netbsd*) if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $predep_objects $libobjs $deplibs $postdep_objects $linker_flags' wlarc= _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' _LT_TAGVAR(hardcode_direct, $1)=yes _LT_TAGVAR(hardcode_shlibpath_var, $1)=no fi # Workaround some broken pre-1.5 toolchains output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP conftest.$objext | $SED -e "s:-lgcc -lc -lgcc::"' ;; *nto* | *qnx*) _LT_TAGVAR(ld_shlibs, $1)=yes ;; openbsd2*) # C++ shared libraries are fairly broken _LT_TAGVAR(ld_shlibs, $1)=no ;; openbsd*) if test -f /usr/libexec/ld.so; then _LT_TAGVAR(hardcode_direct, $1)=yes _LT_TAGVAR(hardcode_shlibpath_var, $1)=no _LT_TAGVAR(hardcode_direct_absolute, $1)=yes _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib' _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-retain-symbols-file,$export_symbols -o $lib' _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' _LT_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive' fi output_verbose_link_cmd=echo else _LT_TAGVAR(ld_shlibs, $1)=no fi ;; osf3* | osf4* | osf5*) case $cc_basename in KCC*) # Kuck and Associates, Inc. (KAI) C++ Compiler # KCC will only create a shared library if the output file # ends with ".so" (or ".sl" for HP-UX), so rename the library # to its proper name (with version) after linking. _LT_TAGVAR(archive_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo "$lib" | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib' _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' _LT_TAGVAR(hardcode_libdir_separator, $1)=: # Archives containing C++ object files must be created using # the KAI C++ compiler. case $host in osf3*) _LT_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs' ;; *) _LT_TAGVAR(old_archive_cmds, $1)='$CC -o $oldlib $oldobjs' ;; esac ;; RCC*) # Rational C++ 2.4.1 # FIXME: insert proper C++ library support _LT_TAGVAR(ld_shlibs, $1)=no ;; cxx*) case $host in osf3*) _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*' _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $soname `test -n "$verstring" && $ECHO "X${wl}-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib' _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' ;; *) _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*' _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib' _LT_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done~ echo "-hidden">> $lib.exp~ $CC -shared$allow_undefined_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname ${wl}-input ${wl}$lib.exp `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib~ $RM $lib.exp' _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir' ;; esac _LT_TAGVAR(hardcode_libdir_separator, $1)=: # Commands to make compiler produce verbose output that lists # what "hidden" libraries, object files and flags are used when # linking a shared library. # # There doesn't appear to be a way to prevent this compiler from # explicitly linking system object files so we need to strip them # from the output so that they don't get included in the library # dependencies. output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "ld" | $GREP -v "ld:"`; templist=`$ECHO "X$templist" | $Xsed -e "s/\(^.*ld.*\)\( .*ld.*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; $ECHO "X$list" | $Xsed' ;; *) if test "$GXX" = yes && test "$with_gnu_ld" = no; then _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*' case $host in osf3*) _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib ${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' ;; *) _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib ${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' ;; esac _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' _LT_TAGVAR(hardcode_libdir_separator, $1)=: # Commands to make compiler produce verbose output that lists # what "hidden" libraries, object files and flags are used when # linking a shared library. output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "\-L"' else # FIXME: insert proper C++ library support _LT_TAGVAR(ld_shlibs, $1)=no fi ;; esac ;; psos*) # FIXME: insert proper C++ library support _LT_TAGVAR(ld_shlibs, $1)=no ;; sunos4*) case $cc_basename in CC*) # Sun C++ 4.x # FIXME: insert proper C++ library support _LT_TAGVAR(ld_shlibs, $1)=no ;; lcc*) # Lucid # FIXME: insert proper C++ library support _LT_TAGVAR(ld_shlibs, $1)=no ;; *) # FIXME: insert proper C++ library support _LT_TAGVAR(ld_shlibs, $1)=no ;; esac ;; solaris*) case $cc_basename in CC*) # Sun C++ 4.2, 5.x and Centerline C++ _LT_TAGVAR(archive_cmds_need_lc,$1)=yes _LT_TAGVAR(no_undefined_flag, $1)=' -zdefs' _LT_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ $CC -G${allow_undefined_flag} ${wl}-M ${wl}$lib.exp -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp' _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' _LT_TAGVAR(hardcode_shlibpath_var, $1)=no case $host_os in solaris2.[[0-5]] | solaris2.[[0-5]].*) ;; *) # The compiler driver will combine and reorder linker options, # but understands `-z linker_flag'. # Supported since Solaris 2.6 (maybe 2.5.1?) _LT_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract' ;; esac _LT_TAGVAR(link_all_deplibs, $1)=yes output_verbose_link_cmd='echo' # Archives containing C++ object files must be created using # "CC -xar", where "CC" is the Sun C++ compiler. This is # necessary to make sure instantiated templates are included # in the archive. _LT_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs' ;; gcx*) # Green Hills C++ Compiler _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib' # The C++ compiler must be used to create the archive. _LT_TAGVAR(old_archive_cmds, $1)='$CC $LDFLAGS -archive -o $oldlib $oldobjs' ;; *) # GNU C++ compiler with Solaris linker if test "$GXX" = yes && test "$with_gnu_ld" = no; then _LT_TAGVAR(no_undefined_flag, $1)=' ${wl}-z ${wl}defs' if $CC --version | $GREP -v '^2\.7' > /dev/null; then _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib' _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ $CC -shared -nostdlib ${wl}-M $wl$lib.exp -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp' # Commands to make compiler produce verbose output that lists # what "hidden" libraries, object files and flags are used when # linking a shared library. output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "\-L"' else # g++ 2.7 appears to require `-G' NOT `-shared' on this # platform. _LT_TAGVAR(archive_cmds, $1)='$CC -G -nostdlib $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib' _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ $CC -G -nostdlib ${wl}-M $wl$lib.exp -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp' # Commands to make compiler produce verbose output that lists # what "hidden" libraries, object files and flags are used when # linking a shared library. output_verbose_link_cmd='$CC -G $CFLAGS -v conftest.$objext 2>&1 | $GREP "\-L"' fi _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $wl$libdir' case $host_os in solaris2.[[0-5]] | solaris2.[[0-5]].*) ;; *) _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}-z ${wl}allextract$convenience ${wl}-z ${wl}defaultextract' ;; esac fi ;; esac ;; sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*) _LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text' _LT_TAGVAR(archive_cmds_need_lc, $1)=no _LT_TAGVAR(hardcode_shlibpath_var, $1)=no runpath_var='LD_RUN_PATH' case $cc_basename in CC*) _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' ;; *) _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' ;; esac ;; sysv5* | sco3.2v5* | sco5v6*) # Note: We can NOT use -z defs as we might desire, because we do not # link with -lc, and that would cause any symbols used from libc to # always be unresolved, which means just about no library would # ever link correctly. If we're not using GNU ld we use -z text # though, which does catch some bad symbols but isn't as heavy-handed # as -z defs. _LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text' _LT_TAGVAR(allow_undefined_flag, $1)='${wl}-z,nodefs' _LT_TAGVAR(archive_cmds_need_lc, $1)=no _LT_TAGVAR(hardcode_shlibpath_var, $1)=no _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R,$libdir' _LT_TAGVAR(hardcode_libdir_separator, $1)=':' _LT_TAGVAR(link_all_deplibs, $1)=yes _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Bexport' runpath_var='LD_RUN_PATH' case $cc_basename in CC*) _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' ;; *) _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' ;; esac ;; tandem*) case $cc_basename in NCC*) # NonStop-UX NCC 3.20 # FIXME: insert proper C++ library support _LT_TAGVAR(ld_shlibs, $1)=no ;; *) # FIXME: insert proper C++ library support _LT_TAGVAR(ld_shlibs, $1)=no ;; esac ;; vxworks*) # FIXME: insert proper C++ library support _LT_TAGVAR(ld_shlibs, $1)=no ;; *) # FIXME: insert proper C++ library support _LT_TAGVAR(ld_shlibs, $1)=no ;; esac AC_MSG_RESULT([$_LT_TAGVAR(ld_shlibs, $1)]) test "$_LT_TAGVAR(ld_shlibs, $1)" = no && can_build_shared=no _LT_TAGVAR(GCC, $1)="$GXX" _LT_TAGVAR(LD, $1)="$LD" ## CAVEAT EMPTOR: ## There is no encapsulation within the following macros, do not change ## the running order or otherwise move them around unless you know exactly ## what you are doing... _LT_SYS_HIDDEN_LIBDEPS($1) _LT_COMPILER_PIC($1) _LT_COMPILER_C_O($1) _LT_COMPILER_FILE_LOCKS($1) _LT_LINKER_SHLIBS($1) _LT_SYS_DYNAMIC_LINKER($1) _LT_LINKER_HARDCODE_LIBPATH($1) _LT_CONFIG($1) fi # test -n "$compiler" CC=$lt_save_CC LDCXX=$LD LD=$lt_save_LD GCC=$lt_save_GCC with_gnu_ld=$lt_save_with_gnu_ld lt_cv_path_LDCXX=$lt_cv_path_LD lt_cv_path_LD=$lt_save_path_LD lt_cv_prog_gnu_ldcxx=$lt_cv_prog_gnu_ld lt_cv_prog_gnu_ld=$lt_save_with_gnu_ld fi # test "$_lt_caught_CXX_error" != yes AC_LANG_POP ])# _LT_LANG_CXX_CONFIG # _LT_SYS_HIDDEN_LIBDEPS([TAGNAME]) # --------------------------------- # Figure out "hidden" library dependencies from verbose # compiler output when linking a shared library. # Parse the compiler output and extract the necessary # objects, libraries and library flags. m4_defun([_LT_SYS_HIDDEN_LIBDEPS], [m4_require([_LT_FILEUTILS_DEFAULTS])dnl # Dependencies to place before and after the object being linked: _LT_TAGVAR(predep_objects, $1)= _LT_TAGVAR(postdep_objects, $1)= _LT_TAGVAR(predeps, $1)= _LT_TAGVAR(postdeps, $1)= _LT_TAGVAR(compiler_lib_search_path, $1)= dnl we can't use the lt_simple_compile_test_code here, dnl because it contains code intended for an executable, dnl not a library. It's possible we should let each dnl tag define a new lt_????_link_test_code variable, dnl but it's only used here... m4_if([$1], [], [cat > conftest.$ac_ext <<_LT_EOF int a; void foo (void) { a = 0; } _LT_EOF ], [$1], [CXX], [cat > conftest.$ac_ext <<_LT_EOF class Foo { public: Foo (void) { a = 0; } private: int a; }; _LT_EOF ], [$1], [F77], [cat > conftest.$ac_ext <<_LT_EOF subroutine foo implicit none integer*4 a a=0 return end _LT_EOF ], [$1], [FC], [cat > conftest.$ac_ext <<_LT_EOF subroutine foo implicit none integer a a=0 return end _LT_EOF ], [$1], [GCJ], [cat > conftest.$ac_ext <<_LT_EOF public class foo { private int a; public void bar (void) { a = 0; } }; _LT_EOF ]) dnl Parse the compiler output and extract the necessary dnl objects, libraries and library flags. if AC_TRY_EVAL(ac_compile); then # Parse the compiler output and extract the necessary # objects, libraries and library flags. # Sentinel used to keep track of whether or not we are before # the conftest object file. pre_test_object_deps_done=no for p in `eval "$output_verbose_link_cmd"`; do case $p in -L* | -R* | -l*) # Some compilers place space between "-{L,R}" and the path. # Remove the space. if test $p = "-L" || test $p = "-R"; then prev=$p continue else prev= fi if test "$pre_test_object_deps_done" = no; then case $p in -L* | -R*) # Internal compiler library paths should come after those # provided the user. The postdeps already come after the # user supplied libs so there is no need to process them. if test -z "$_LT_TAGVAR(compiler_lib_search_path, $1)"; then _LT_TAGVAR(compiler_lib_search_path, $1)="${prev}${p}" else _LT_TAGVAR(compiler_lib_search_path, $1)="${_LT_TAGVAR(compiler_lib_search_path, $1)} ${prev}${p}" fi ;; # The "-l" case would never come before the object being # linked, so don't bother handling this case. esac else if test -z "$_LT_TAGVAR(postdeps, $1)"; then _LT_TAGVAR(postdeps, $1)="${prev}${p}" else _LT_TAGVAR(postdeps, $1)="${_LT_TAGVAR(postdeps, $1)} ${prev}${p}" fi fi ;; *.$objext) # This assumes that the test object file only shows up # once in the compiler output. if test "$p" = "conftest.$objext"; then pre_test_object_deps_done=yes continue fi if test "$pre_test_object_deps_done" = no; then if test -z "$_LT_TAGVAR(predep_objects, $1)"; then _LT_TAGVAR(predep_objects, $1)="$p" else _LT_TAGVAR(predep_objects, $1)="$_LT_TAGVAR(predep_objects, $1) $p" fi else if test -z "$_LT_TAGVAR(postdep_objects, $1)"; then _LT_TAGVAR(postdep_objects, $1)="$p" else _LT_TAGVAR(postdep_objects, $1)="$_LT_TAGVAR(postdep_objects, $1) $p" fi fi ;; *) ;; # Ignore the rest. esac done # Clean up. rm -f a.out a.exe else echo "libtool.m4: error: problem compiling $1 test program" fi $RM -f confest.$objext # PORTME: override above test on systems where it is broken m4_if([$1], [CXX], [case $host_os in interix[[3-9]]*) # Interix 3.5 installs completely hosed .la files for C++, so rather than # hack all around it, let's just trust "g++" to DTRT. _LT_TAGVAR(predep_objects,$1)= _LT_TAGVAR(postdep_objects,$1)= _LT_TAGVAR(postdeps,$1)= ;; linux*) case `$CC -V 2>&1 | sed 5q` in *Sun\ C*) # Sun C++ 5.9 # The more standards-conforming stlport4 library is # incompatible with the Cstd library. Avoid specifying # it if it's in CXXFLAGS. Ignore libCrun as # -library=stlport4 depends on it. case " $CXX $CXXFLAGS " in *" -library=stlport4 "*) solaris_use_stlport4=yes ;; esac if test "$solaris_use_stlport4" != yes; then _LT_TAGVAR(postdeps,$1)='-library=Cstd -library=Crun' fi ;; esac ;; solaris*) case $cc_basename in CC*) # The more standards-conforming stlport4 library is # incompatible with the Cstd library. Avoid specifying # it if it's in CXXFLAGS. Ignore libCrun as # -library=stlport4 depends on it. case " $CXX $CXXFLAGS " in *" -library=stlport4 "*) solaris_use_stlport4=yes ;; esac # Adding this requires a known-good setup of shared libraries for # Sun compiler versions before 5.6, else PIC objects from an old # archive will be linked into the output, leading to subtle bugs. if test "$solaris_use_stlport4" != yes; then _LT_TAGVAR(postdeps,$1)='-library=Cstd -library=Crun' fi ;; esac ;; esac ]) case " $_LT_TAGVAR(postdeps, $1) " in *" -lc "*) _LT_TAGVAR(archive_cmds_need_lc, $1)=no ;; esac _LT_TAGVAR(compiler_lib_search_dirs, $1)= if test -n "${_LT_TAGVAR(compiler_lib_search_path, $1)}"; then _LT_TAGVAR(compiler_lib_search_dirs, $1)=`echo " ${_LT_TAGVAR(compiler_lib_search_path, $1)}" | ${SED} -e 's! -L! !g' -e 's!^ !!'` fi _LT_TAGDECL([], [compiler_lib_search_dirs], [1], [The directories searched by this compiler when creating a shared library]) _LT_TAGDECL([], [predep_objects], [1], [Dependencies to place before and after the objects being linked to create a shared library]) _LT_TAGDECL([], [postdep_objects], [1]) _LT_TAGDECL([], [predeps], [1]) _LT_TAGDECL([], [postdeps], [1]) _LT_TAGDECL([], [compiler_lib_search_path], [1], [The library search path used internally by the compiler when linking a shared library]) ])# _LT_SYS_HIDDEN_LIBDEPS # _LT_PROG_F77 # ------------ # Since AC_PROG_F77 is broken, in that it returns the empty string # if there is no fortran compiler, we have our own version here. m4_defun([_LT_PROG_F77], [ pushdef([AC_MSG_ERROR], [_lt_disable_F77=yes]) AC_PROG_F77 if test -z "$F77" || test "X$F77" = "Xno"; then _lt_disable_F77=yes fi popdef([AC_MSG_ERROR]) ])# _LT_PROG_F77 dnl aclocal-1.4 backwards compatibility: dnl AC_DEFUN([_LT_PROG_F77], []) # _LT_LANG_F77_CONFIG([TAG]) # -------------------------- # Ensure that the configuration variables for a Fortran 77 compiler are # suitably defined. These variables are subsequently used by _LT_CONFIG # to write the compiler configuration to `libtool'. m4_defun([_LT_LANG_F77_CONFIG], [AC_REQUIRE([_LT_PROG_F77])dnl AC_LANG_PUSH(Fortran 77) _LT_TAGVAR(archive_cmds_need_lc, $1)=no _LT_TAGVAR(allow_undefined_flag, $1)= _LT_TAGVAR(always_export_symbols, $1)=no _LT_TAGVAR(archive_expsym_cmds, $1)= _LT_TAGVAR(export_dynamic_flag_spec, $1)= _LT_TAGVAR(hardcode_direct, $1)=no _LT_TAGVAR(hardcode_direct_absolute, $1)=no _LT_TAGVAR(hardcode_libdir_flag_spec, $1)= _LT_TAGVAR(hardcode_libdir_flag_spec_ld, $1)= _LT_TAGVAR(hardcode_libdir_separator, $1)= _LT_TAGVAR(hardcode_minus_L, $1)=no _LT_TAGVAR(hardcode_automatic, $1)=no _LT_TAGVAR(inherit_rpath, $1)=no _LT_TAGVAR(module_cmds, $1)= _LT_TAGVAR(module_expsym_cmds, $1)= _LT_TAGVAR(link_all_deplibs, $1)=unknown _LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds _LT_TAGVAR(no_undefined_flag, $1)= _LT_TAGVAR(whole_archive_flag_spec, $1)= _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no # Source file extension for f77 test sources. ac_ext=f # Object file extension for compiled f77 test sources. objext=o _LT_TAGVAR(objext, $1)=$objext # No sense in running all these tests if we already determined that # the F77 compiler isn't working. Some variables (like enable_shared) # are currently assumed to apply to all compilers on this platform, # and will be corrupted by setting them based on a non-working compiler. if test "$_lt_disable_F77" != yes; then # Code to be used in simple compile tests lt_simple_compile_test_code="\ subroutine t return end " # Code to be used in simple link tests lt_simple_link_test_code="\ program t end " # ltmain only uses $CC for tagged configurations so make sure $CC is set. _LT_TAG_COMPILER # save warnings/boilerplate of simple test code _LT_COMPILER_BOILERPLATE _LT_LINKER_BOILERPLATE # Allow CC to be a program name with arguments. lt_save_CC="$CC" lt_save_GCC=$GCC CC=${F77-"f77"} compiler=$CC _LT_TAGVAR(compiler, $1)=$CC _LT_CC_BASENAME([$compiler]) GCC=$G77 if test -n "$compiler"; then AC_MSG_CHECKING([if libtool supports shared libraries]) AC_MSG_RESULT([$can_build_shared]) AC_MSG_CHECKING([whether to build shared libraries]) test "$can_build_shared" = "no" && enable_shared=no # On AIX, shared libraries and static libraries use the same namespace, and # are all built from PIC. case $host_os in aix3*) test "$enable_shared" = yes && enable_static=no if test -n "$RANLIB"; then archive_cmds="$archive_cmds~\$RANLIB \$lib" postinstall_cmds='$RANLIB $lib' fi ;; aix[[4-9]]*) if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then test "$enable_shared" = yes && enable_static=no fi ;; esac AC_MSG_RESULT([$enable_shared]) AC_MSG_CHECKING([whether to build static libraries]) # Make sure either enable_shared or enable_static is yes. test "$enable_shared" = yes || enable_static=yes AC_MSG_RESULT([$enable_static]) _LT_TAGVAR(GCC, $1)="$G77" _LT_TAGVAR(LD, $1)="$LD" ## CAVEAT EMPTOR: ## There is no encapsulation within the following macros, do not change ## the running order or otherwise move them around unless you know exactly ## what you are doing... _LT_COMPILER_PIC($1) _LT_COMPILER_C_O($1) _LT_COMPILER_FILE_LOCKS($1) _LT_LINKER_SHLIBS($1) _LT_SYS_DYNAMIC_LINKER($1) _LT_LINKER_HARDCODE_LIBPATH($1) _LT_CONFIG($1) fi # test -n "$compiler" GCC=$lt_save_GCC CC="$lt_save_CC" fi # test "$_lt_disable_F77" != yes AC_LANG_POP ])# _LT_LANG_F77_CONFIG # _LT_PROG_FC # ----------- # Since AC_PROG_FC is broken, in that it returns the empty string # if there is no fortran compiler, we have our own version here. m4_defun([_LT_PROG_FC], [ pushdef([AC_MSG_ERROR], [_lt_disable_FC=yes]) AC_PROG_FC if test -z "$FC" || test "X$FC" = "Xno"; then _lt_disable_FC=yes fi popdef([AC_MSG_ERROR]) ])# _LT_PROG_FC dnl aclocal-1.4 backwards compatibility: dnl AC_DEFUN([_LT_PROG_FC], []) # _LT_LANG_FC_CONFIG([TAG]) # ------------------------- # Ensure that the configuration variables for a Fortran compiler are # suitably defined. These variables are subsequently used by _LT_CONFIG # to write the compiler configuration to `libtool'. m4_defun([_LT_LANG_FC_CONFIG], [AC_REQUIRE([_LT_PROG_FC])dnl AC_LANG_PUSH(Fortran) _LT_TAGVAR(archive_cmds_need_lc, $1)=no _LT_TAGVAR(allow_undefined_flag, $1)= _LT_TAGVAR(always_export_symbols, $1)=no _LT_TAGVAR(archive_expsym_cmds, $1)= _LT_TAGVAR(export_dynamic_flag_spec, $1)= _LT_TAGVAR(hardcode_direct, $1)=no _LT_TAGVAR(hardcode_direct_absolute, $1)=no _LT_TAGVAR(hardcode_libdir_flag_spec, $1)= _LT_TAGVAR(hardcode_libdir_flag_spec_ld, $1)= _LT_TAGVAR(hardcode_libdir_separator, $1)= _LT_TAGVAR(hardcode_minus_L, $1)=no _LT_TAGVAR(hardcode_automatic, $1)=no _LT_TAGVAR(inherit_rpath, $1)=no _LT_TAGVAR(module_cmds, $1)= _LT_TAGVAR(module_expsym_cmds, $1)= _LT_TAGVAR(link_all_deplibs, $1)=unknown _LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds _LT_TAGVAR(no_undefined_flag, $1)= _LT_TAGVAR(whole_archive_flag_spec, $1)= _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no # Source file extension for fc test sources. ac_ext=${ac_fc_srcext-f} # Object file extension for compiled fc test sources. objext=o _LT_TAGVAR(objext, $1)=$objext # No sense in running all these tests if we already determined that # the FC compiler isn't working. Some variables (like enable_shared) # are currently assumed to apply to all compilers on this platform, # and will be corrupted by setting them based on a non-working compiler. if test "$_lt_disable_FC" != yes; then # Code to be used in simple compile tests lt_simple_compile_test_code="\ subroutine t return end " # Code to be used in simple link tests lt_simple_link_test_code="\ program t end " # ltmain only uses $CC for tagged configurations so make sure $CC is set. _LT_TAG_COMPILER # save warnings/boilerplate of simple test code _LT_COMPILER_BOILERPLATE _LT_LINKER_BOILERPLATE # Allow CC to be a program name with arguments. lt_save_CC="$CC" lt_save_GCC=$GCC CC=${FC-"f95"} compiler=$CC GCC=$ac_cv_fc_compiler_gnu _LT_TAGVAR(compiler, $1)=$CC _LT_CC_BASENAME([$compiler]) if test -n "$compiler"; then AC_MSG_CHECKING([if libtool supports shared libraries]) AC_MSG_RESULT([$can_build_shared]) AC_MSG_CHECKING([whether to build shared libraries]) test "$can_build_shared" = "no" && enable_shared=no # On AIX, shared libraries and static libraries use the same namespace, and # are all built from PIC. case $host_os in aix3*) test "$enable_shared" = yes && enable_static=no if test -n "$RANLIB"; then archive_cmds="$archive_cmds~\$RANLIB \$lib" postinstall_cmds='$RANLIB $lib' fi ;; aix[[4-9]]*) if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then test "$enable_shared" = yes && enable_static=no fi ;; esac AC_MSG_RESULT([$enable_shared]) AC_MSG_CHECKING([whether to build static libraries]) # Make sure either enable_shared or enable_static is yes. test "$enable_shared" = yes || enable_static=yes AC_MSG_RESULT([$enable_static]) _LT_TAGVAR(GCC, $1)="$ac_cv_fc_compiler_gnu" _LT_TAGVAR(LD, $1)="$LD" ## CAVEAT EMPTOR: ## There is no encapsulation within the following macros, do not change ## the running order or otherwise move them around unless you know exactly ## what you are doing... _LT_SYS_HIDDEN_LIBDEPS($1) _LT_COMPILER_PIC($1) _LT_COMPILER_C_O($1) _LT_COMPILER_FILE_LOCKS($1) _LT_LINKER_SHLIBS($1) _LT_SYS_DYNAMIC_LINKER($1) _LT_LINKER_HARDCODE_LIBPATH($1) _LT_CONFIG($1) fi # test -n "$compiler" GCC=$lt_save_GCC CC="$lt_save_CC" fi # test "$_lt_disable_FC" != yes AC_LANG_POP ])# _LT_LANG_FC_CONFIG # _LT_LANG_GCJ_CONFIG([TAG]) # -------------------------- # Ensure that the configuration variables for the GNU Java Compiler compiler # are suitably defined. These variables are subsequently used by _LT_CONFIG # to write the compiler configuration to `libtool'. m4_defun([_LT_LANG_GCJ_CONFIG], [AC_REQUIRE([LT_PROG_GCJ])dnl AC_LANG_SAVE # Source file extension for Java test sources. ac_ext=java # Object file extension for compiled Java test sources. objext=o _LT_TAGVAR(objext, $1)=$objext # Code to be used in simple compile tests lt_simple_compile_test_code="class foo {}" # Code to be used in simple link tests lt_simple_link_test_code='public class conftest { public static void main(String[[]] argv) {}; }' # ltmain only uses $CC for tagged configurations so make sure $CC is set. _LT_TAG_COMPILER # save warnings/boilerplate of simple test code _LT_COMPILER_BOILERPLATE _LT_LINKER_BOILERPLATE # Allow CC to be a program name with arguments. lt_save_CC="$CC" lt_save_GCC=$GCC GCC=yes CC=${GCJ-"gcj"} compiler=$CC _LT_TAGVAR(compiler, $1)=$CC _LT_TAGVAR(LD, $1)="$LD" _LT_CC_BASENAME([$compiler]) # GCJ did not exist at the time GCC didn't implicitly link libc in. _LT_TAGVAR(archive_cmds_need_lc, $1)=no _LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds if test -n "$compiler"; then _LT_COMPILER_NO_RTTI($1) _LT_COMPILER_PIC($1) _LT_COMPILER_C_O($1) _LT_COMPILER_FILE_LOCKS($1) _LT_LINKER_SHLIBS($1) _LT_LINKER_HARDCODE_LIBPATH($1) _LT_CONFIG($1) fi AC_LANG_RESTORE GCC=$lt_save_GCC CC="$lt_save_CC" ])# _LT_LANG_GCJ_CONFIG # _LT_LANG_RC_CONFIG([TAG]) # ------------------------- # Ensure that the configuration variables for the Windows resource compiler # are suitably defined. These variables are subsequently used by _LT_CONFIG # to write the compiler configuration to `libtool'. m4_defun([_LT_LANG_RC_CONFIG], [AC_REQUIRE([LT_PROG_RC])dnl AC_LANG_SAVE # Source file extension for RC test sources. ac_ext=rc # Object file extension for compiled RC test sources. objext=o _LT_TAGVAR(objext, $1)=$objext # Code to be used in simple compile tests lt_simple_compile_test_code='sample MENU { MENUITEM "&Soup", 100, CHECKED }' # Code to be used in simple link tests lt_simple_link_test_code="$lt_simple_compile_test_code" # ltmain only uses $CC for tagged configurations so make sure $CC is set. _LT_TAG_COMPILER # save warnings/boilerplate of simple test code _LT_COMPILER_BOILERPLATE _LT_LINKER_BOILERPLATE # Allow CC to be a program name with arguments. lt_save_CC="$CC" lt_save_GCC=$GCC GCC= CC=${RC-"windres"} compiler=$CC _LT_TAGVAR(compiler, $1)=$CC _LT_CC_BASENAME([$compiler]) _LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes if test -n "$compiler"; then : _LT_CONFIG($1) fi GCC=$lt_save_GCC AC_LANG_RESTORE CC="$lt_save_CC" ])# _LT_LANG_RC_CONFIG # LT_PROG_GCJ # ----------- AC_DEFUN([LT_PROG_GCJ], [m4_ifdef([AC_PROG_GCJ], [AC_PROG_GCJ], [m4_ifdef([A][M_PROG_GCJ], [A][M_PROG_GCJ], [AC_CHECK_TOOL(GCJ, gcj,) test "x${GCJFLAGS+set}" = xset || GCJFLAGS="-g -O2" AC_SUBST(GCJFLAGS)])])[]dnl ]) # Old name: AU_ALIAS([LT_AC_PROG_GCJ], [LT_PROG_GCJ]) dnl aclocal-1.4 backwards compatibility: dnl AC_DEFUN([LT_AC_PROG_GCJ], []) # LT_PROG_RC # ---------- AC_DEFUN([LT_PROG_RC], [AC_CHECK_TOOL(RC, windres,) ]) # Old name: AU_ALIAS([LT_AC_PROG_RC], [LT_PROG_RC]) dnl aclocal-1.4 backwards compatibility: dnl AC_DEFUN([LT_AC_PROG_RC], []) # _LT_DECL_EGREP # -------------- # If we don't have a new enough Autoconf to choose the best grep # available, choose the one first in the user's PATH. m4_defun([_LT_DECL_EGREP], [AC_REQUIRE([AC_PROG_EGREP])dnl AC_REQUIRE([AC_PROG_FGREP])dnl test -z "$GREP" && GREP=grep _LT_DECL([], [GREP], [1], [A grep program that handles long lines]) _LT_DECL([], [EGREP], [1], [An ERE matcher]) _LT_DECL([], [FGREP], [1], [A literal string matcher]) dnl Non-bleeding-edge autoconf doesn't subst GREP, so do it here too AC_SUBST([GREP]) ]) # _LT_DECL_OBJDUMP # -------------- # If we don't have a new enough Autoconf to choose the best objdump # available, choose the one first in the user's PATH. m4_defun([_LT_DECL_OBJDUMP], [AC_CHECK_TOOL(OBJDUMP, objdump, false) test -z "$OBJDUMP" && OBJDUMP=objdump _LT_DECL([], [OBJDUMP], [1], [An object symbol dumper]) AC_SUBST([OBJDUMP]) ]) # _LT_DECL_SED # ------------ # Check for a fully-functional sed program, that truncates # as few characters as possible. Prefer GNU sed if found. m4_defun([_LT_DECL_SED], [AC_PROG_SED test -z "$SED" && SED=sed Xsed="$SED -e 1s/^X//" _LT_DECL([], [SED], [1], [A sed program that does not truncate output]) _LT_DECL([], [Xsed], ["\$SED -e 1s/^X//"], [Sed that helps us avoid accidentally triggering echo(1) options like -n]) ])# _LT_DECL_SED m4_ifndef([AC_PROG_SED], [ # NOTE: This macro has been submitted for inclusion into # # GNU Autoconf as AC_PROG_SED. When it is available in # # a released version of Autoconf we should remove this # # macro and use it instead. # m4_defun([AC_PROG_SED], [AC_MSG_CHECKING([for a sed that does not truncate output]) AC_CACHE_VAL(lt_cv_path_SED, [# Loop through the user's path and test for sed and gsed. # Then use that list of sed's as ones to test for truncation. as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for lt_ac_prog in sed gsed; do for ac_exec_ext in '' $ac_executable_extensions; do if $as_executable_p "$as_dir/$lt_ac_prog$ac_exec_ext"; then lt_ac_sed_list="$lt_ac_sed_list $as_dir/$lt_ac_prog$ac_exec_ext" fi done done done IFS=$as_save_IFS lt_ac_max=0 lt_ac_count=0 # Add /usr/xpg4/bin/sed as it is typically found on Solaris # along with /bin/sed that truncates output. for lt_ac_sed in $lt_ac_sed_list /usr/xpg4/bin/sed; do test ! -f $lt_ac_sed && continue cat /dev/null > conftest.in lt_ac_count=0 echo $ECHO_N "0123456789$ECHO_C" >conftest.in # Check for GNU sed and select it if it is found. if "$lt_ac_sed" --version 2>&1 < /dev/null | grep 'GNU' > /dev/null; then lt_cv_path_SED=$lt_ac_sed break fi while true; do cat conftest.in conftest.in >conftest.tmp mv conftest.tmp conftest.in cp conftest.in conftest.nl echo >>conftest.nl $lt_ac_sed -e 's/a$//' < conftest.nl >conftest.out || break cmp -s conftest.out conftest.nl || break # 10000 chars as input seems more than enough test $lt_ac_count -gt 10 && break lt_ac_count=`expr $lt_ac_count + 1` if test $lt_ac_count -gt $lt_ac_max; then lt_ac_max=$lt_ac_count lt_cv_path_SED=$lt_ac_sed fi done done ]) SED=$lt_cv_path_SED AC_SUBST([SED]) AC_MSG_RESULT([$SED]) ])#AC_PROG_SED ])#m4_ifndef # Old name: AU_ALIAS([LT_AC_PROG_SED], [AC_PROG_SED]) dnl aclocal-1.4 backwards compatibility: dnl AC_DEFUN([LT_AC_PROG_SED], []) # _LT_CHECK_SHELL_FEATURES # ------------------------ # Find out whether the shell is Bourne or XSI compatible, # or has some other useful features. m4_defun([_LT_CHECK_SHELL_FEATURES], [AC_MSG_CHECKING([whether the shell understands some XSI constructs]) # Try some XSI features xsi_shell=no ( _lt_dummy="a/b/c" test "${_lt_dummy##*/},${_lt_dummy%/*},"${_lt_dummy%"$_lt_dummy"}, \ = c,a/b,, \ && eval 'test $(( 1 + 1 )) -eq 2 \ && test "${#_lt_dummy}" -eq 5' ) >/dev/null 2>&1 \ && xsi_shell=yes AC_MSG_RESULT([$xsi_shell]) _LT_CONFIG_LIBTOOL_INIT([xsi_shell='$xsi_shell']) AC_MSG_CHECKING([whether the shell understands "+="]) lt_shell_append=no ( foo=bar; set foo baz; eval "$[1]+=\$[2]" && test "$foo" = barbaz ) \ >/dev/null 2>&1 \ && lt_shell_append=yes AC_MSG_RESULT([$lt_shell_append]) _LT_CONFIG_LIBTOOL_INIT([lt_shell_append='$lt_shell_append']) if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then lt_unset=unset else lt_unset=false fi _LT_DECL([], [lt_unset], [0], [whether the shell understands "unset"])dnl # test EBCDIC or ASCII case `echo X|tr X '\101'` in A) # ASCII based system # \n is not interpreted correctly by Solaris 8 /usr/ucb/tr lt_SP2NL='tr \040 \012' lt_NL2SP='tr \015\012 \040\040' ;; *) # EBCDIC based system lt_SP2NL='tr \100 \n' lt_NL2SP='tr \r\n \100\100' ;; esac _LT_DECL([SP2NL], [lt_SP2NL], [1], [turn spaces into newlines])dnl _LT_DECL([NL2SP], [lt_NL2SP], [1], [turn newlines into spaces])dnl ])# _LT_CHECK_SHELL_FEATURES # _LT_PROG_XSI_SHELLFNS # --------------------- # Bourne and XSI compatible variants of some useful shell functions. m4_defun([_LT_PROG_XSI_SHELLFNS], [case $xsi_shell in yes) cat << \_LT_EOF >> "$cfgfile" # func_dirname file append nondir_replacement # Compute the dirname of FILE. If nonempty, add APPEND to the result, # otherwise set result to NONDIR_REPLACEMENT. func_dirname () { case ${1} in */*) func_dirname_result="${1%/*}${2}" ;; * ) func_dirname_result="${3}" ;; esac } # func_basename file func_basename () { func_basename_result="${1##*/}" } # func_dirname_and_basename file append nondir_replacement # perform func_basename and func_dirname in a single function # call: # dirname: Compute the dirname of FILE. If nonempty, # add APPEND to the result, otherwise set result # to NONDIR_REPLACEMENT. # value returned in "$func_dirname_result" # basename: Compute filename of FILE. # value retuned in "$func_basename_result" # Implementation must be kept synchronized with func_dirname # and func_basename. For efficiency, we do not delegate to # those functions but instead duplicate the functionality here. func_dirname_and_basename () { case ${1} in */*) func_dirname_result="${1%/*}${2}" ;; * ) func_dirname_result="${3}" ;; esac func_basename_result="${1##*/}" } # func_stripname prefix suffix name # strip PREFIX and SUFFIX off of NAME. # PREFIX and SUFFIX must not contain globbing or regex special # characters, hashes, percent signs, but SUFFIX may contain a leading # dot (in which case that matches only a dot). func_stripname () { # pdksh 5.2.14 does not do ${X%$Y} correctly if both X and Y are # positional parameters, so assign one to ordinary parameter first. func_stripname_result=${3} func_stripname_result=${func_stripname_result#"${1}"} func_stripname_result=${func_stripname_result%"${2}"} } # func_opt_split func_opt_split () { func_opt_split_opt=${1%%=*} func_opt_split_arg=${1#*=} } # func_lo2o object func_lo2o () { case ${1} in *.lo) func_lo2o_result=${1%.lo}.${objext} ;; *) func_lo2o_result=${1} ;; esac } # func_xform libobj-or-source func_xform () { func_xform_result=${1%.*}.lo } # func_arith arithmetic-term... func_arith () { func_arith_result=$(( $[*] )) } # func_len string # STRING may not start with a hyphen. func_len () { func_len_result=${#1} } _LT_EOF ;; *) # Bourne compatible functions. cat << \_LT_EOF >> "$cfgfile" # func_dirname file append nondir_replacement # Compute the dirname of FILE. If nonempty, add APPEND to the result, # otherwise set result to NONDIR_REPLACEMENT. func_dirname () { # Extract subdirectory from the argument. func_dirname_result=`$ECHO "X${1}" | $Xsed -e "$dirname"` if test "X$func_dirname_result" = "X${1}"; then func_dirname_result="${3}" else func_dirname_result="$func_dirname_result${2}" fi } # func_basename file func_basename () { func_basename_result=`$ECHO "X${1}" | $Xsed -e "$basename"` } dnl func_dirname_and_basename dnl A portable version of this function is already defined in general.m4sh dnl so there is no need for it here. # func_stripname prefix suffix name # strip PREFIX and SUFFIX off of NAME. # PREFIX and SUFFIX must not contain globbing or regex special # characters, hashes, percent signs, but SUFFIX may contain a leading # dot (in which case that matches only a dot). # func_strip_suffix prefix name func_stripname () { case ${2} in .*) func_stripname_result=`$ECHO "X${3}" \ | $Xsed -e "s%^${1}%%" -e "s%\\\\${2}\$%%"`;; *) func_stripname_result=`$ECHO "X${3}" \ | $Xsed -e "s%^${1}%%" -e "s%${2}\$%%"`;; esac } # sed scripts: my_sed_long_opt='1s/^\(-[[^=]]*\)=.*/\1/;q' my_sed_long_arg='1s/^-[[^=]]*=//' # func_opt_split func_opt_split () { func_opt_split_opt=`$ECHO "X${1}" | $Xsed -e "$my_sed_long_opt"` func_opt_split_arg=`$ECHO "X${1}" | $Xsed -e "$my_sed_long_arg"` } # func_lo2o object func_lo2o () { func_lo2o_result=`$ECHO "X${1}" | $Xsed -e "$lo2o"` } # func_xform libobj-or-source func_xform () { func_xform_result=`$ECHO "X${1}" | $Xsed -e 's/\.[[^.]]*$/.lo/'` } # func_arith arithmetic-term... func_arith () { func_arith_result=`expr "$[@]"` } # func_len string # STRING may not start with a hyphen. func_len () { func_len_result=`expr "$[1]" : ".*" 2>/dev/null || echo $max_cmd_len` } _LT_EOF esac case $lt_shell_append in yes) cat << \_LT_EOF >> "$cfgfile" # func_append var value # Append VALUE to the end of shell variable VAR. func_append () { eval "$[1]+=\$[2]" } _LT_EOF ;; *) cat << \_LT_EOF >> "$cfgfile" # func_append var value # Append VALUE to the end of shell variable VAR. func_append () { eval "$[1]=\$$[1]\$[2]" } _LT_EOF ;; esac ]) # Helper functions for option handling. -*- Autoconf -*- # # Copyright (C) 2004, 2005, 2007, 2008 Free Software Foundation, Inc. # Written by Gary V. Vaughan, 2004 # # This file is free software; the Free Software Foundation gives # unlimited permission to copy and/or distribute it, with or without # modifications, as long as this notice is preserved. # serial 6 ltoptions.m4 # This is to help aclocal find these macros, as it can't see m4_define. AC_DEFUN([LTOPTIONS_VERSION], [m4_if([1])]) # _LT_MANGLE_OPTION(MACRO-NAME, OPTION-NAME) # ------------------------------------------ m4_define([_LT_MANGLE_OPTION], [[_LT_OPTION_]m4_bpatsubst($1__$2, [[^a-zA-Z0-9_]], [_])]) # _LT_SET_OPTION(MACRO-NAME, OPTION-NAME) # --------------------------------------- # Set option OPTION-NAME for macro MACRO-NAME, and if there is a # matching handler defined, dispatch to it. Other OPTION-NAMEs are # saved as a flag. m4_define([_LT_SET_OPTION], [m4_define(_LT_MANGLE_OPTION([$1], [$2]))dnl m4_ifdef(_LT_MANGLE_DEFUN([$1], [$2]), _LT_MANGLE_DEFUN([$1], [$2]), [m4_warning([Unknown $1 option `$2'])])[]dnl ]) # _LT_IF_OPTION(MACRO-NAME, OPTION-NAME, IF-SET, [IF-NOT-SET]) # ------------------------------------------------------------ # Execute IF-SET if OPTION is set, IF-NOT-SET otherwise. m4_define([_LT_IF_OPTION], [m4_ifdef(_LT_MANGLE_OPTION([$1], [$2]), [$3], [$4])]) # _LT_UNLESS_OPTIONS(MACRO-NAME, OPTION-LIST, IF-NOT-SET) # ------------------------------------------------------- # Execute IF-NOT-SET unless all options in OPTION-LIST for MACRO-NAME # are set. m4_define([_LT_UNLESS_OPTIONS], [m4_foreach([_LT_Option], m4_split(m4_normalize([$2])), [m4_ifdef(_LT_MANGLE_OPTION([$1], _LT_Option), [m4_define([$0_found])])])[]dnl m4_ifdef([$0_found], [m4_undefine([$0_found])], [$3 ])[]dnl ]) # _LT_SET_OPTIONS(MACRO-NAME, OPTION-LIST) # ---------------------------------------- # OPTION-LIST is a space-separated list of Libtool options associated # with MACRO-NAME. If any OPTION has a matching handler declared with # LT_OPTION_DEFINE, dispatch to that macro; otherwise complain about # the unknown option and exit. m4_defun([_LT_SET_OPTIONS], [# Set options m4_foreach([_LT_Option], m4_split(m4_normalize([$2])), [_LT_SET_OPTION([$1], _LT_Option)]) m4_if([$1],[LT_INIT],[ dnl dnl Simply set some default values (i.e off) if boolean options were not dnl specified: _LT_UNLESS_OPTIONS([LT_INIT], [dlopen], [enable_dlopen=no ]) _LT_UNLESS_OPTIONS([LT_INIT], [win32-dll], [enable_win32_dll=no ]) dnl dnl If no reference was made to various pairs of opposing options, then dnl we run the default mode handler for the pair. For example, if neither dnl `shared' nor `disable-shared' was passed, we enable building of shared dnl archives by default: _LT_UNLESS_OPTIONS([LT_INIT], [shared disable-shared], [_LT_ENABLE_SHARED]) _LT_UNLESS_OPTIONS([LT_INIT], [static disable-static], [_LT_ENABLE_STATIC]) _LT_UNLESS_OPTIONS([LT_INIT], [pic-only no-pic], [_LT_WITH_PIC]) _LT_UNLESS_OPTIONS([LT_INIT], [fast-install disable-fast-install], [_LT_ENABLE_FAST_INSTALL]) ]) ])# _LT_SET_OPTIONS # _LT_MANGLE_DEFUN(MACRO-NAME, OPTION-NAME) # ----------------------------------------- m4_define([_LT_MANGLE_DEFUN], [[_LT_OPTION_DEFUN_]m4_bpatsubst(m4_toupper([$1__$2]), [[^A-Z0-9_]], [_])]) # LT_OPTION_DEFINE(MACRO-NAME, OPTION-NAME, CODE) # ----------------------------------------------- m4_define([LT_OPTION_DEFINE], [m4_define(_LT_MANGLE_DEFUN([$1], [$2]), [$3])[]dnl ])# LT_OPTION_DEFINE # dlopen # ------ LT_OPTION_DEFINE([LT_INIT], [dlopen], [enable_dlopen=yes ]) AU_DEFUN([AC_LIBTOOL_DLOPEN], [_LT_SET_OPTION([LT_INIT], [dlopen]) AC_DIAGNOSE([obsolete], [$0: Remove this warning and the call to _LT_SET_OPTION when you put the `dlopen' option into LT_INIT's first parameter.]) ]) dnl aclocal-1.4 backwards compatibility: dnl AC_DEFUN([AC_LIBTOOL_DLOPEN], []) # win32-dll # --------- # Declare package support for building win32 dll's. LT_OPTION_DEFINE([LT_INIT], [win32-dll], [enable_win32_dll=yes case $host in *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-cegcc*) AC_CHECK_TOOL(AS, as, false) AC_CHECK_TOOL(DLLTOOL, dlltool, false) AC_CHECK_TOOL(OBJDUMP, objdump, false) ;; esac test -z "$AS" && AS=as _LT_DECL([], [AS], [0], [Assembler program])dnl test -z "$DLLTOOL" && DLLTOOL=dlltool _LT_DECL([], [DLLTOOL], [0], [DLL creation program])dnl test -z "$OBJDUMP" && OBJDUMP=objdump _LT_DECL([], [OBJDUMP], [0], [Object dumper program])dnl ])# win32-dll AU_DEFUN([AC_LIBTOOL_WIN32_DLL], [AC_REQUIRE([AC_CANONICAL_HOST])dnl _LT_SET_OPTION([LT_INIT], [win32-dll]) AC_DIAGNOSE([obsolete], [$0: Remove this warning and the call to _LT_SET_OPTION when you put the `win32-dll' option into LT_INIT's first parameter.]) ]) dnl aclocal-1.4 backwards compatibility: dnl AC_DEFUN([AC_LIBTOOL_WIN32_DLL], []) # _LT_ENABLE_SHARED([DEFAULT]) # ---------------------------- # implement the --enable-shared flag, and supports the `shared' and # `disable-shared' LT_INIT options. # DEFAULT is either `yes' or `no'. If omitted, it defaults to `yes'. m4_define([_LT_ENABLE_SHARED], [m4_define([_LT_ENABLE_SHARED_DEFAULT], [m4_if($1, no, no, yes)])dnl AC_ARG_ENABLE([shared], [AS_HELP_STRING([--enable-shared@<:@=PKGS@:>@], [build shared libraries @<:@default=]_LT_ENABLE_SHARED_DEFAULT[@:>@])], [p=${PACKAGE-default} case $enableval in yes) enable_shared=yes ;; no) enable_shared=no ;; *) enable_shared=no # Look at the argument we got. We use all the common list separators. lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR," for pkg in $enableval; do IFS="$lt_save_ifs" if test "X$pkg" = "X$p"; then enable_shared=yes fi done IFS="$lt_save_ifs" ;; esac], [enable_shared=]_LT_ENABLE_SHARED_DEFAULT) _LT_DECL([build_libtool_libs], [enable_shared], [0], [Whether or not to build shared libraries]) ])# _LT_ENABLE_SHARED LT_OPTION_DEFINE([LT_INIT], [shared], [_LT_ENABLE_SHARED([yes])]) LT_OPTION_DEFINE([LT_INIT], [disable-shared], [_LT_ENABLE_SHARED([no])]) # Old names: AC_DEFUN([AC_ENABLE_SHARED], [_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[shared]) ]) AC_DEFUN([AC_DISABLE_SHARED], [_LT_SET_OPTION([LT_INIT], [disable-shared]) ]) AU_DEFUN([AM_ENABLE_SHARED], [AC_ENABLE_SHARED($@)]) AU_DEFUN([AM_DISABLE_SHARED], [AC_DISABLE_SHARED($@)]) dnl aclocal-1.4 backwards compatibility: dnl AC_DEFUN([AM_ENABLE_SHARED], []) dnl AC_DEFUN([AM_DISABLE_SHARED], []) # _LT_ENABLE_STATIC([DEFAULT]) # ---------------------------- # implement the --enable-static flag, and support the `static' and # `disable-static' LT_INIT options. # DEFAULT is either `yes' or `no'. If omitted, it defaults to `yes'. m4_define([_LT_ENABLE_STATIC], [m4_define([_LT_ENABLE_STATIC_DEFAULT], [m4_if($1, no, no, yes)])dnl AC_ARG_ENABLE([static], [AS_HELP_STRING([--enable-static@<:@=PKGS@:>@], [build static libraries @<:@default=]_LT_ENABLE_STATIC_DEFAULT[@:>@])], [p=${PACKAGE-default} case $enableval in yes) enable_static=yes ;; no) enable_static=no ;; *) enable_static=no # Look at the argument we got. We use all the common list separators. lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR," for pkg in $enableval; do IFS="$lt_save_ifs" if test "X$pkg" = "X$p"; then enable_static=yes fi done IFS="$lt_save_ifs" ;; esac], [enable_static=]_LT_ENABLE_STATIC_DEFAULT) _LT_DECL([build_old_libs], [enable_static], [0], [Whether or not to build static libraries]) ])# _LT_ENABLE_STATIC LT_OPTION_DEFINE([LT_INIT], [static], [_LT_ENABLE_STATIC([yes])]) LT_OPTION_DEFINE([LT_INIT], [disable-static], [_LT_ENABLE_STATIC([no])]) # Old names: AC_DEFUN([AC_ENABLE_STATIC], [_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[static]) ]) AC_DEFUN([AC_DISABLE_STATIC], [_LT_SET_OPTION([LT_INIT], [disable-static]) ]) AU_DEFUN([AM_ENABLE_STATIC], [AC_ENABLE_STATIC($@)]) AU_DEFUN([AM_DISABLE_STATIC], [AC_DISABLE_STATIC($@)]) dnl aclocal-1.4 backwards compatibility: dnl AC_DEFUN([AM_ENABLE_STATIC], []) dnl AC_DEFUN([AM_DISABLE_STATIC], []) # _LT_ENABLE_FAST_INSTALL([DEFAULT]) # ---------------------------------- # implement the --enable-fast-install flag, and support the `fast-install' # and `disable-fast-install' LT_INIT options. # DEFAULT is either `yes' or `no'. If omitted, it defaults to `yes'. m4_define([_LT_ENABLE_FAST_INSTALL], [m4_define([_LT_ENABLE_FAST_INSTALL_DEFAULT], [m4_if($1, no, no, yes)])dnl AC_ARG_ENABLE([fast-install], [AS_HELP_STRING([--enable-fast-install@<:@=PKGS@:>@], [optimize for fast installation @<:@default=]_LT_ENABLE_FAST_INSTALL_DEFAULT[@:>@])], [p=${PACKAGE-default} case $enableval in yes) enable_fast_install=yes ;; no) enable_fast_install=no ;; *) enable_fast_install=no # Look at the argument we got. We use all the common list separators. lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR," for pkg in $enableval; do IFS="$lt_save_ifs" if test "X$pkg" = "X$p"; then enable_fast_install=yes fi done IFS="$lt_save_ifs" ;; esac], [enable_fast_install=]_LT_ENABLE_FAST_INSTALL_DEFAULT) _LT_DECL([fast_install], [enable_fast_install], [0], [Whether or not to optimize for fast installation])dnl ])# _LT_ENABLE_FAST_INSTALL LT_OPTION_DEFINE([LT_INIT], [fast-install], [_LT_ENABLE_FAST_INSTALL([yes])]) LT_OPTION_DEFINE([LT_INIT], [disable-fast-install], [_LT_ENABLE_FAST_INSTALL([no])]) # Old names: AU_DEFUN([AC_ENABLE_FAST_INSTALL], [_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[fast-install]) AC_DIAGNOSE([obsolete], [$0: Remove this warning and the call to _LT_SET_OPTION when you put the `fast-install' option into LT_INIT's first parameter.]) ]) AU_DEFUN([AC_DISABLE_FAST_INSTALL], [_LT_SET_OPTION([LT_INIT], [disable-fast-install]) AC_DIAGNOSE([obsolete], [$0: Remove this warning and the call to _LT_SET_OPTION when you put the `disable-fast-install' option into LT_INIT's first parameter.]) ]) dnl aclocal-1.4 backwards compatibility: dnl AC_DEFUN([AC_ENABLE_FAST_INSTALL], []) dnl AC_DEFUN([AM_DISABLE_FAST_INSTALL], []) # _LT_WITH_PIC([MODE]) # -------------------- # implement the --with-pic flag, and support the `pic-only' and `no-pic' # LT_INIT options. # MODE is either `yes' or `no'. If omitted, it defaults to `both'. m4_define([_LT_WITH_PIC], [AC_ARG_WITH([pic], [AS_HELP_STRING([--with-pic], [try to use only PIC/non-PIC objects @<:@default=use both@:>@])], [pic_mode="$withval"], [pic_mode=default]) test -z "$pic_mode" && pic_mode=m4_default([$1], [default]) _LT_DECL([], [pic_mode], [0], [What type of objects to build])dnl ])# _LT_WITH_PIC LT_OPTION_DEFINE([LT_INIT], [pic-only], [_LT_WITH_PIC([yes])]) LT_OPTION_DEFINE([LT_INIT], [no-pic], [_LT_WITH_PIC([no])]) # Old name: AU_DEFUN([AC_LIBTOOL_PICMODE], [_LT_SET_OPTION([LT_INIT], [pic-only]) AC_DIAGNOSE([obsolete], [$0: Remove this warning and the call to _LT_SET_OPTION when you put the `pic-only' option into LT_INIT's first parameter.]) ]) dnl aclocal-1.4 backwards compatibility: dnl AC_DEFUN([AC_LIBTOOL_PICMODE], []) m4_define([_LTDL_MODE], []) LT_OPTION_DEFINE([LTDL_INIT], [nonrecursive], [m4_define([_LTDL_MODE], [nonrecursive])]) LT_OPTION_DEFINE([LTDL_INIT], [recursive], [m4_define([_LTDL_MODE], [recursive])]) LT_OPTION_DEFINE([LTDL_INIT], [subproject], [m4_define([_LTDL_MODE], [subproject])]) m4_define([_LTDL_TYPE], []) LT_OPTION_DEFINE([LTDL_INIT], [installable], [m4_define([_LTDL_TYPE], [installable])]) LT_OPTION_DEFINE([LTDL_INIT], [convenience], [m4_define([_LTDL_TYPE], [convenience])]) # ltsugar.m4 -- libtool m4 base layer. -*-Autoconf-*- # # Copyright (C) 2004, 2005, 2007, 2008 Free Software Foundation, Inc. # Written by Gary V. Vaughan, 2004 # # This file is free software; the Free Software Foundation gives # unlimited permission to copy and/or distribute it, with or without # modifications, as long as this notice is preserved. # serial 6 ltsugar.m4 # This is to help aclocal find these macros, as it can't see m4_define. AC_DEFUN([LTSUGAR_VERSION], [m4_if([0.1])]) # lt_join(SEP, ARG1, [ARG2...]) # ----------------------------- # Produce ARG1SEPARG2...SEPARGn, omitting [] arguments and their # associated separator. # Needed until we can rely on m4_join from Autoconf 2.62, since all earlier # versions in m4sugar had bugs. m4_define([lt_join], [m4_if([$#], [1], [], [$#], [2], [[$2]], [m4_if([$2], [], [], [[$2]_])$0([$1], m4_shift(m4_shift($@)))])]) m4_define([_lt_join], [m4_if([$#$2], [2], [], [m4_if([$2], [], [], [[$1$2]])$0([$1], m4_shift(m4_shift($@)))])]) # lt_car(LIST) # lt_cdr(LIST) # ------------ # Manipulate m4 lists. # These macros are necessary as long as will still need to support # Autoconf-2.59 which quotes differently. m4_define([lt_car], [[$1]]) m4_define([lt_cdr], [m4_if([$#], 0, [m4_fatal([$0: cannot be called without arguments])], [$#], 1, [], [m4_dquote(m4_shift($@))])]) m4_define([lt_unquote], $1) # lt_append(MACRO-NAME, STRING, [SEPARATOR]) # ------------------------------------------ # Redefine MACRO-NAME to hold its former content plus `SEPARATOR'`STRING'. # Note that neither SEPARATOR nor STRING are expanded; they are appended # to MACRO-NAME as is (leaving the expansion for when MACRO-NAME is invoked). # No SEPARATOR is output if MACRO-NAME was previously undefined (different # than defined and empty). # # This macro is needed until we can rely on Autoconf 2.62, since earlier # versions of m4sugar mistakenly expanded SEPARATOR but not STRING. m4_define([lt_append], [m4_define([$1], m4_ifdef([$1], [m4_defn([$1])[$3]])[$2])]) # lt_combine(SEP, PREFIX-LIST, INFIX, SUFFIX1, [SUFFIX2...]) # ---------------------------------------------------------- # Produce a SEP delimited list of all paired combinations of elements of # PREFIX-LIST with SUFFIX1 through SUFFIXn. Each element of the list # has the form PREFIXmINFIXSUFFIXn. # Needed until we can rely on m4_combine added in Autoconf 2.62. m4_define([lt_combine], [m4_if(m4_eval([$# > 3]), [1], [m4_pushdef([_Lt_sep], [m4_define([_Lt_sep], m4_defn([lt_car]))])]]dnl [[m4_foreach([_Lt_prefix], [$2], [m4_foreach([_Lt_suffix], ]m4_dquote(m4_dquote(m4_shift(m4_shift(m4_shift($@)))))[, [_Lt_sep([$1])[]m4_defn([_Lt_prefix])[$3]m4_defn([_Lt_suffix])])])])]) # lt_if_append_uniq(MACRO-NAME, VARNAME, [SEPARATOR], [UNIQ], [NOT-UNIQ]) # ----------------------------------------------------------------------- # Iff MACRO-NAME does not yet contain VARNAME, then append it (delimited # by SEPARATOR if supplied) and expand UNIQ, else NOT-UNIQ. m4_define([lt_if_append_uniq], [m4_ifdef([$1], [m4_if(m4_index([$3]m4_defn([$1])[$3], [$3$2$3]), [-1], [lt_append([$1], [$2], [$3])$4], [$5])], [lt_append([$1], [$2], [$3])$4])]) # lt_dict_add(DICT, KEY, VALUE) # ----------------------------- m4_define([lt_dict_add], [m4_define([$1($2)], [$3])]) # lt_dict_add_subkey(DICT, KEY, SUBKEY, VALUE) # -------------------------------------------- m4_define([lt_dict_add_subkey], [m4_define([$1($2:$3)], [$4])]) # lt_dict_fetch(DICT, KEY, [SUBKEY]) # ---------------------------------- m4_define([lt_dict_fetch], [m4_ifval([$3], m4_ifdef([$1($2:$3)], [m4_defn([$1($2:$3)])]), m4_ifdef([$1($2)], [m4_defn([$1($2)])]))]) # lt_if_dict_fetch(DICT, KEY, [SUBKEY], VALUE, IF-TRUE, [IF-FALSE]) # ----------------------------------------------------------------- m4_define([lt_if_dict_fetch], [m4_if(lt_dict_fetch([$1], [$2], [$3]), [$4], [$5], [$6])]) # lt_dict_filter(DICT, [SUBKEY], VALUE, [SEPARATOR], KEY, [...]) # -------------------------------------------------------------- m4_define([lt_dict_filter], [m4_if([$5], [], [], [lt_join(m4_quote(m4_default([$4], [[, ]])), lt_unquote(m4_split(m4_normalize(m4_foreach(_Lt_key, lt_car([m4_shiftn(4, $@)]), [lt_if_dict_fetch([$1], _Lt_key, [$2], [$3], [_Lt_key ])])))))])[]dnl ]) # ltversion.m4 -- version numbers -*- Autoconf -*- # # Copyright (C) 2004 Free Software Foundation, Inc. # Written by Scott James Remnant, 2004 # # This file is free software; the Free Software Foundation gives # unlimited permission to copy and/or distribute it, with or without # modifications, as long as this notice is preserved. # Generated from ltversion.in. # serial 3017 ltversion.m4 # This file is part of GNU Libtool m4_define([LT_PACKAGE_VERSION], [2.2.6b]) m4_define([LT_PACKAGE_REVISION], [1.3017]) AC_DEFUN([LTVERSION_VERSION], [macro_version='2.2.6b' macro_revision='1.3017' _LT_DECL(, macro_version, 0, [Which release of libtool.m4 was used?]) _LT_DECL(, macro_revision, 0) ]) # lt~obsolete.m4 -- aclocal satisfying obsolete definitions. -*-Autoconf-*- # # Copyright (C) 2004, 2005, 2007 Free Software Foundation, Inc. # Written by Scott James Remnant, 2004. # # This file is free software; the Free Software Foundation gives # unlimited permission to copy and/or distribute it, with or without # modifications, as long as this notice is preserved. # serial 4 lt~obsolete.m4 # These exist entirely to fool aclocal when bootstrapping libtool. # # In the past libtool.m4 has provided macros via AC_DEFUN (or AU_DEFUN) # which have later been changed to m4_define as they aren't part of the # exported API, or moved to Autoconf or Automake where they belong. # # The trouble is, aclocal is a bit thick. It'll see the old AC_DEFUN # in /usr/share/aclocal/libtool.m4 and remember it, then when it sees us # using a macro with the same name in our local m4/libtool.m4 it'll # pull the old libtool.m4 in (it doesn't see our shiny new m4_define # and doesn't know about Autoconf macros at all.) # # So we provide this file, which has a silly filename so it's always # included after everything else. This provides aclocal with the # AC_DEFUNs it wants, but when m4 processes it, it doesn't do anything # because those macros already exist, or will be overwritten later. # We use AC_DEFUN over AU_DEFUN for compatibility with aclocal-1.6. # # Anytime we withdraw an AC_DEFUN or AU_DEFUN, remember to add it here. # Yes, that means every name once taken will need to remain here until # we give up compatibility with versions before 1.7, at which point # we need to keep only those names which we still refer to. # This is to help aclocal find these macros, as it can't see m4_define. AC_DEFUN([LTOBSOLETE_VERSION], [m4_if([1])]) m4_ifndef([AC_LIBTOOL_LINKER_OPTION], [AC_DEFUN([AC_LIBTOOL_LINKER_OPTION])]) m4_ifndef([AC_PROG_EGREP], [AC_DEFUN([AC_PROG_EGREP])]) m4_ifndef([_LT_AC_PROG_ECHO_BACKSLASH], [AC_DEFUN([_LT_AC_PROG_ECHO_BACKSLASH])]) m4_ifndef([_LT_AC_SHELL_INIT], [AC_DEFUN([_LT_AC_SHELL_INIT])]) m4_ifndef([_LT_AC_SYS_LIBPATH_AIX], [AC_DEFUN([_LT_AC_SYS_LIBPATH_AIX])]) m4_ifndef([_LT_PROG_LTMAIN], [AC_DEFUN([_LT_PROG_LTMAIN])]) m4_ifndef([_LT_AC_TAGVAR], [AC_DEFUN([_LT_AC_TAGVAR])]) m4_ifndef([AC_LTDL_ENABLE_INSTALL], [AC_DEFUN([AC_LTDL_ENABLE_INSTALL])]) m4_ifndef([AC_LTDL_PREOPEN], [AC_DEFUN([AC_LTDL_PREOPEN])]) m4_ifndef([_LT_AC_SYS_COMPILER], [AC_DEFUN([_LT_AC_SYS_COMPILER])]) m4_ifndef([_LT_AC_LOCK], [AC_DEFUN([_LT_AC_LOCK])]) m4_ifndef([AC_LIBTOOL_SYS_OLD_ARCHIVE], [AC_DEFUN([AC_LIBTOOL_SYS_OLD_ARCHIVE])]) m4_ifndef([_LT_AC_TRY_DLOPEN_SELF], [AC_DEFUN([_LT_AC_TRY_DLOPEN_SELF])]) m4_ifndef([AC_LIBTOOL_PROG_CC_C_O], [AC_DEFUN([AC_LIBTOOL_PROG_CC_C_O])]) m4_ifndef([AC_LIBTOOL_SYS_HARD_LINK_LOCKS], [AC_DEFUN([AC_LIBTOOL_SYS_HARD_LINK_LOCKS])]) m4_ifndef([AC_LIBTOOL_OBJDIR], [AC_DEFUN([AC_LIBTOOL_OBJDIR])]) m4_ifndef([AC_LTDL_OBJDIR], [AC_DEFUN([AC_LTDL_OBJDIR])]) m4_ifndef([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH], [AC_DEFUN([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH])]) m4_ifndef([AC_LIBTOOL_SYS_LIB_STRIP], [AC_DEFUN([AC_LIBTOOL_SYS_LIB_STRIP])]) m4_ifndef([AC_PATH_MAGIC], [AC_DEFUN([AC_PATH_MAGIC])]) m4_ifndef([AC_PROG_LD_GNU], [AC_DEFUN([AC_PROG_LD_GNU])]) m4_ifndef([AC_PROG_LD_RELOAD_FLAG], [AC_DEFUN([AC_PROG_LD_RELOAD_FLAG])]) m4_ifndef([AC_DEPLIBS_CHECK_METHOD], [AC_DEFUN([AC_DEPLIBS_CHECK_METHOD])]) m4_ifndef([AC_LIBTOOL_PROG_COMPILER_NO_RTTI], [AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_NO_RTTI])]) m4_ifndef([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE], [AC_DEFUN([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE])]) m4_ifndef([AC_LIBTOOL_PROG_COMPILER_PIC], [AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_PIC])]) m4_ifndef([AC_LIBTOOL_PROG_LD_SHLIBS], [AC_DEFUN([AC_LIBTOOL_PROG_LD_SHLIBS])]) m4_ifndef([AC_LIBTOOL_POSTDEP_PREDEP], [AC_DEFUN([AC_LIBTOOL_POSTDEP_PREDEP])]) m4_ifndef([LT_AC_PROG_EGREP], [AC_DEFUN([LT_AC_PROG_EGREP])]) m4_ifndef([LT_AC_PROG_SED], [AC_DEFUN([LT_AC_PROG_SED])]) m4_ifndef([_LT_CC_BASENAME], [AC_DEFUN([_LT_CC_BASENAME])]) m4_ifndef([_LT_COMPILER_BOILERPLATE], [AC_DEFUN([_LT_COMPILER_BOILERPLATE])]) m4_ifndef([_LT_LINKER_BOILERPLATE], [AC_DEFUN([_LT_LINKER_BOILERPLATE])]) m4_ifndef([_AC_PROG_LIBTOOL], [AC_DEFUN([_AC_PROG_LIBTOOL])]) m4_ifndef([AC_LIBTOOL_SETUP], [AC_DEFUN([AC_LIBTOOL_SETUP])]) m4_ifndef([_LT_AC_CHECK_DLFCN], [AC_DEFUN([_LT_AC_CHECK_DLFCN])]) m4_ifndef([AC_LIBTOOL_SYS_DYNAMIC_LINKER], [AC_DEFUN([AC_LIBTOOL_SYS_DYNAMIC_LINKER])]) m4_ifndef([_LT_AC_TAGCONFIG], [AC_DEFUN([_LT_AC_TAGCONFIG])]) m4_ifndef([AC_DISABLE_FAST_INSTALL], [AC_DEFUN([AC_DISABLE_FAST_INSTALL])]) m4_ifndef([_LT_AC_LANG_CXX], [AC_DEFUN([_LT_AC_LANG_CXX])]) m4_ifndef([_LT_AC_LANG_F77], [AC_DEFUN([_LT_AC_LANG_F77])]) m4_ifndef([_LT_AC_LANG_GCJ], [AC_DEFUN([_LT_AC_LANG_GCJ])]) m4_ifndef([AC_LIBTOOL_RC], [AC_DEFUN([AC_LIBTOOL_RC])]) m4_ifndef([AC_LIBTOOL_LANG_C_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_C_CONFIG])]) m4_ifndef([_LT_AC_LANG_C_CONFIG], [AC_DEFUN([_LT_AC_LANG_C_CONFIG])]) m4_ifndef([AC_LIBTOOL_LANG_CXX_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_CXX_CONFIG])]) m4_ifndef([_LT_AC_LANG_CXX_CONFIG], [AC_DEFUN([_LT_AC_LANG_CXX_CONFIG])]) m4_ifndef([AC_LIBTOOL_LANG_F77_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_F77_CONFIG])]) m4_ifndef([_LT_AC_LANG_F77_CONFIG], [AC_DEFUN([_LT_AC_LANG_F77_CONFIG])]) m4_ifndef([AC_LIBTOOL_LANG_GCJ_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_GCJ_CONFIG])]) m4_ifndef([_LT_AC_LANG_GCJ_CONFIG], [AC_DEFUN([_LT_AC_LANG_GCJ_CONFIG])]) m4_ifndef([AC_LIBTOOL_LANG_RC_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_RC_CONFIG])]) m4_ifndef([_LT_AC_LANG_RC_CONFIG], [AC_DEFUN([_LT_AC_LANG_RC_CONFIG])]) m4_ifndef([AC_LIBTOOL_CONFIG], [AC_DEFUN([AC_LIBTOOL_CONFIG])]) m4_ifndef([_LT_AC_FILE_LTDLL_C], [AC_DEFUN([_LT_AC_FILE_LTDLL_C])]) # nls.m4 serial 5 (gettext-0.18) dnl Copyright (C) 1995-2003, 2005-2006, 2008-2010 Free Software Foundation, dnl Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. dnl dnl This file can can be used in projects which are not available under dnl the GNU General Public License or the GNU Library General Public dnl License but which still want to provide support for the GNU gettext dnl functionality. dnl Please note that the actual code of the GNU gettext library is covered dnl by the GNU Library General Public License, and the rest of the GNU dnl gettext package package is covered by the GNU General Public License. dnl They are *not* in the public domain. dnl Authors: dnl Ulrich Drepper , 1995-2000. dnl Bruno Haible , 2000-2003. AC_PREREQ([2.50]) AC_DEFUN([AM_NLS], [ AC_MSG_CHECKING([whether NLS is requested]) dnl Default is enabled NLS AC_ARG_ENABLE([nls], [ --disable-nls do not use Native Language Support], USE_NLS=$enableval, USE_NLS=yes) AC_MSG_RESULT([$USE_NLS]) AC_SUBST([USE_NLS]) ]) # pkg.m4 - Macros to locate and utilise pkg-config. -*- Autoconf -*- # # Copyright © 2004 Scott James Remnant . # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, but # WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU # General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. # # As a special exception to the GNU General Public License, if you # distribute this file as part of a program that contains a # configuration script generated by Autoconf, you may include it under # the same distribution terms that you use for the rest of that program. # PKG_PROG_PKG_CONFIG([MIN-VERSION]) # ---------------------------------- AC_DEFUN([PKG_PROG_PKG_CONFIG], [m4_pattern_forbid([^_?PKG_[A-Z_]+$]) m4_pattern_allow([^PKG_CONFIG(_PATH)?$]) AC_ARG_VAR([PKG_CONFIG], [path to pkg-config utility])dnl if test "x$ac_cv_env_PKG_CONFIG_set" != "xset"; then AC_PATH_TOOL([PKG_CONFIG], [pkg-config]) fi if test -n "$PKG_CONFIG"; then _pkg_min_version=m4_default([$1], [0.9.0]) AC_MSG_CHECKING([pkg-config is at least version $_pkg_min_version]) if $PKG_CONFIG --atleast-pkgconfig-version $_pkg_min_version; then AC_MSG_RESULT([yes]) else AC_MSG_RESULT([no]) PKG_CONFIG="" fi fi[]dnl ])# PKG_PROG_PKG_CONFIG # PKG_CHECK_EXISTS(MODULES, [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND]) # # Check to see whether a particular set of modules exists. Similar # to PKG_CHECK_MODULES(), but does not set variables or print errors. # # # Similar to PKG_CHECK_MODULES, make sure that the first instance of # this or PKG_CHECK_MODULES is called, or make sure to call # PKG_CHECK_EXISTS manually # -------------------------------------------------------------- AC_DEFUN([PKG_CHECK_EXISTS], [AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl if test -n "$PKG_CONFIG" && \ AC_RUN_LOG([$PKG_CONFIG --exists --print-errors "$1"]); then m4_ifval([$2], [$2], [:]) m4_ifvaln([$3], [else $3])dnl fi]) # _PKG_CONFIG([VARIABLE], [COMMAND], [MODULES]) # --------------------------------------------- m4_define([_PKG_CONFIG], [if test -n "$$1"; then pkg_cv_[]$1="$$1" elif test -n "$PKG_CONFIG"; then PKG_CHECK_EXISTS([$3], [pkg_cv_[]$1=`$PKG_CONFIG --[]$2 "$3" 2>/dev/null`], [pkg_failed=yes]) else pkg_failed=untried fi[]dnl ])# _PKG_CONFIG # _PKG_SHORT_ERRORS_SUPPORTED # ----------------------------- AC_DEFUN([_PKG_SHORT_ERRORS_SUPPORTED], [AC_REQUIRE([PKG_PROG_PKG_CONFIG]) if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then _pkg_short_errors_supported=yes else _pkg_short_errors_supported=no fi[]dnl ])# _PKG_SHORT_ERRORS_SUPPORTED # PKG_CHECK_MODULES(VARIABLE-PREFIX, MODULES, [ACTION-IF-FOUND], # [ACTION-IF-NOT-FOUND]) # # # Note that if there is a possibility the first call to # PKG_CHECK_MODULES might not happen, you should be sure to include an # explicit call to PKG_PROG_PKG_CONFIG in your configure.ac # # # -------------------------------------------------------------- AC_DEFUN([PKG_CHECK_MODULES], [AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl AC_ARG_VAR([$1][_CFLAGS], [C compiler flags for $1, overriding pkg-config])dnl AC_ARG_VAR([$1][_LIBS], [linker flags for $1, overriding pkg-config])dnl pkg_failed=no AC_MSG_CHECKING([for $1]) _PKG_CONFIG([$1][_CFLAGS], [cflags], [$2]) _PKG_CONFIG([$1][_LIBS], [libs], [$2]) m4_define([_PKG_TEXT], [Alternatively, you may set the environment variables $1[]_CFLAGS and $1[]_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details.]) if test $pkg_failed = yes; then _PKG_SHORT_ERRORS_SUPPORTED if test $_pkg_short_errors_supported = yes; then $1[]_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "$2" 2>&1` else $1[]_PKG_ERRORS=`$PKG_CONFIG --print-errors "$2" 2>&1` fi # Put the nasty error message in config.log where it belongs echo "$$1[]_PKG_ERRORS" >&AS_MESSAGE_LOG_FD ifelse([$4], , [AC_MSG_ERROR(dnl [Package requirements ($2) were not met: $$1_PKG_ERRORS Consider adjusting the PKG_CONFIG_PATH environment variable if you installed software in a non-standard prefix. _PKG_TEXT ])], [AC_MSG_RESULT([no]) $4]) elif test $pkg_failed = untried; then ifelse([$4], , [AC_MSG_FAILURE(dnl [The pkg-config script could not be found or is too old. Make sure it is in your PATH or set the PKG_CONFIG environment variable to the full path to pkg-config. _PKG_TEXT To get pkg-config, see .])], [$4]) else $1[]_CFLAGS=$pkg_cv_[]$1[]_CFLAGS $1[]_LIBS=$pkg_cv_[]$1[]_LIBS AC_MSG_RESULT([yes]) ifelse([$3], , :, [$3]) fi[]dnl ])# PKG_CHECK_MODULES # Copyright (C) 1995-2002 Free Software Foundation, Inc. # Copyright (C) 2001-2003,2004 Red Hat, Inc. # # This file is free software, distributed under the terms of the GNU # General Public License. As a special exception to the GNU General # Public License, this file may be distributed as part of a program # that contains a configuration script generated by Autoconf, under # the same distribution terms as the rest of that program. # # This file can be copied and used freely without restrictions. It can # be used in projects which are not available under the GNU Public License # but which still want to provide support for the GNU gettext functionality. # # Macro to add for using GNU gettext. # Ulrich Drepper , 1995, 1996 # # Modified to never use included libintl. # Owen Taylor , 12/15/1998 # # Major rework to remove unused code # Owen Taylor , 12/11/2002 # # Added better handling of ALL_LINGUAS from GNU gettext version # written by Bruno Haible, Owen Taylor 5/30/3002 # # Modified to require ngettext # Matthias Clasen 08/06/2004 # # We need this here as well, since someone might use autoconf-2.5x # to configure GLib then an older version to configure a package # using AM_GLIB_GNU_GETTEXT AC_PREREQ(2.53) dnl dnl We go to great lengths to make sure that aclocal won't dnl try to pull in the installed version of these macros dnl when running aclocal in the glib directory. dnl m4_copy([AC_DEFUN],[glib_DEFUN]) m4_copy([AC_REQUIRE],[glib_REQUIRE]) dnl dnl At the end, if we're not within glib, we'll define the public dnl definitions in terms of our private definitions. dnl # GLIB_LC_MESSAGES #-------------------- glib_DEFUN([GLIB_LC_MESSAGES], [AC_CHECK_HEADERS([locale.h]) if test $ac_cv_header_locale_h = yes; then AC_CACHE_CHECK([for LC_MESSAGES], am_cv_val_LC_MESSAGES, [AC_TRY_LINK([#include ], [return LC_MESSAGES], am_cv_val_LC_MESSAGES=yes, am_cv_val_LC_MESSAGES=no)]) if test $am_cv_val_LC_MESSAGES = yes; then AC_DEFINE(HAVE_LC_MESSAGES, 1, [Define if your file defines LC_MESSAGES.]) fi fi]) # GLIB_PATH_PROG_WITH_TEST #---------------------------- dnl GLIB_PATH_PROG_WITH_TEST(VARIABLE, PROG-TO-CHECK-FOR, dnl TEST-PERFORMED-ON-FOUND_PROGRAM [, VALUE-IF-NOT-FOUND [, PATH]]) glib_DEFUN([GLIB_PATH_PROG_WITH_TEST], [# Extract the first word of "$2", so it can be a program name with args. set dummy $2; ac_word=[$]2 AC_MSG_CHECKING([for $ac_word]) AC_CACHE_VAL(ac_cv_path_$1, [case "[$]$1" in /*) ac_cv_path_$1="[$]$1" # Let the user override the test with a path. ;; *) IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:" for ac_dir in ifelse([$5], , $PATH, [$5]); do test -z "$ac_dir" && ac_dir=. if test -f $ac_dir/$ac_word; then if [$3]; then ac_cv_path_$1="$ac_dir/$ac_word" break fi fi done IFS="$ac_save_ifs" dnl If no 4th arg is given, leave the cache variable unset, dnl so AC_PATH_PROGS will keep looking. ifelse([$4], , , [ test -z "[$]ac_cv_path_$1" && ac_cv_path_$1="$4" ])dnl ;; esac])dnl $1="$ac_cv_path_$1" if test ifelse([$4], , [-n "[$]$1"], ["[$]$1" != "$4"]); then AC_MSG_RESULT([$]$1) else AC_MSG_RESULT(no) fi AC_SUBST($1)dnl ]) # GLIB_WITH_NLS #----------------- glib_DEFUN([GLIB_WITH_NLS], dnl NLS is obligatory [USE_NLS=yes AC_SUBST(USE_NLS) gt_cv_have_gettext=no CATOBJEXT=NONE XGETTEXT=: INTLLIBS= AC_CHECK_HEADER(libintl.h, [gt_cv_func_dgettext_libintl="no" libintl_extra_libs="" # # First check in libc # AC_CACHE_CHECK([for ngettext in libc], gt_cv_func_ngettext_libc, [AC_TRY_LINK([ #include ], [return !ngettext ("","", 1)], gt_cv_func_ngettext_libc=yes, gt_cv_func_ngettext_libc=no) ]) if test "$gt_cv_func_ngettext_libc" = "yes" ; then AC_CACHE_CHECK([for dgettext in libc], gt_cv_func_dgettext_libc, [AC_TRY_LINK([ #include ], [return !dgettext ("","")], gt_cv_func_dgettext_libc=yes, gt_cv_func_dgettext_libc=no) ]) fi if test "$gt_cv_func_ngettext_libc" = "yes" ; then AC_CHECK_FUNCS(bind_textdomain_codeset) fi # # If we don't have everything we want, check in libintl # if test "$gt_cv_func_dgettext_libc" != "yes" \ || test "$gt_cv_func_ngettext_libc" != "yes" \ || test "$ac_cv_func_bind_textdomain_codeset" != "yes" ; then AC_CHECK_LIB(intl, bindtextdomain, [AC_CHECK_LIB(intl, ngettext, [AC_CHECK_LIB(intl, dgettext, gt_cv_func_dgettext_libintl=yes)])]) if test "$gt_cv_func_dgettext_libintl" != "yes" ; then AC_MSG_CHECKING([if -liconv is needed to use gettext]) AC_MSG_RESULT([]) AC_CHECK_LIB(intl, ngettext, [AC_CHECK_LIB(intl, dcgettext, [gt_cv_func_dgettext_libintl=yes libintl_extra_libs=-liconv], :,-liconv)], :,-liconv) fi # # If we found libintl, then check in it for bind_textdomain_codeset(); # we'll prefer libc if neither have bind_textdomain_codeset(), # and both have dgettext and ngettext # if test "$gt_cv_func_dgettext_libintl" = "yes" ; then glib_save_LIBS="$LIBS" LIBS="$LIBS -lintl $libintl_extra_libs" unset ac_cv_func_bind_textdomain_codeset AC_CHECK_FUNCS(bind_textdomain_codeset) LIBS="$glib_save_LIBS" if test "$ac_cv_func_bind_textdomain_codeset" = "yes" ; then gt_cv_func_dgettext_libc=no else if test "$gt_cv_func_dgettext_libc" = "yes" \ && test "$gt_cv_func_ngettext_libc" = "yes"; then gt_cv_func_dgettext_libintl=no fi fi fi fi if test "$gt_cv_func_dgettext_libc" = "yes" \ || test "$gt_cv_func_dgettext_libintl" = "yes"; then gt_cv_have_gettext=yes fi if test "$gt_cv_func_dgettext_libintl" = "yes"; then INTLLIBS="-lintl $libintl_extra_libs" fi if test "$gt_cv_have_gettext" = "yes"; then AC_DEFINE(HAVE_GETTEXT,1, [Define if the GNU gettext() function is already present or preinstalled.]) GLIB_PATH_PROG_WITH_TEST(MSGFMT, msgfmt, [test -z "`$ac_dir/$ac_word -h 2>&1 | grep 'dv '`"], no)dnl if test "$MSGFMT" != "no"; then glib_save_LIBS="$LIBS" LIBS="$LIBS $INTLLIBS" AC_CHECK_FUNCS(dcgettext) MSGFMT_OPTS= AC_MSG_CHECKING([if msgfmt accepts -c]) GLIB_RUN_PROG([$MSGFMT -c -o /dev/null],[ msgid "" msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Project-Id-Version: test 1.0\n" "PO-Revision-Date: 2007-02-15 12:01+0100\n" "Last-Translator: test \n" "Language-Team: C \n" "MIME-Version: 1.0\n" "Content-Transfer-Encoding: 8bit\n" ], [MSGFMT_OPTS=-c; AC_MSG_RESULT([yes])], [AC_MSG_RESULT([no])]) AC_SUBST(MSGFMT_OPTS) AC_PATH_PROG(GMSGFMT, gmsgfmt, $MSGFMT) GLIB_PATH_PROG_WITH_TEST(XGETTEXT, xgettext, [test -z "`$ac_dir/$ac_word -h 2>&1 | grep '(HELP)'`"], :) AC_TRY_LINK(, [extern int _nl_msg_cat_cntr; return _nl_msg_cat_cntr], [CATOBJEXT=.gmo DATADIRNAME=share], [case $host in *-*-solaris*) dnl On Solaris, if bind_textdomain_codeset is in libc, dnl GNU format message catalog is always supported, dnl since both are added to the libc all together. dnl Hence, we'd like to go with DATADIRNAME=share and dnl and CATOBJEXT=.gmo in this case. AC_CHECK_FUNC(bind_textdomain_codeset, [CATOBJEXT=.gmo DATADIRNAME=share], [CATOBJEXT=.mo DATADIRNAME=lib]) ;; *) CATOBJEXT=.mo DATADIRNAME=lib ;; esac]) LIBS="$glib_save_LIBS" INSTOBJEXT=.mo else gt_cv_have_gettext=no fi fi ]) if test "$gt_cv_have_gettext" = "yes" ; then AC_DEFINE(ENABLE_NLS, 1, [always defined to indicate that i18n is enabled]) fi dnl Test whether we really found GNU xgettext. if test "$XGETTEXT" != ":"; then dnl If it is not GNU xgettext we define it as : so that the dnl Makefiles still can work. if $XGETTEXT --omit-header /dev/null 2> /dev/null; then : ; else AC_MSG_RESULT( [found xgettext program is not GNU xgettext; ignore it]) XGETTEXT=":" fi fi # We need to process the po/ directory. POSUB=po AC_OUTPUT_COMMANDS( [case "$CONFIG_FILES" in *po/Makefile.in*) sed -e "/POTFILES =/r po/POTFILES" po/Makefile.in > po/Makefile esac]) dnl These rules are solely for the distribution goal. While doing this dnl we only have to keep exactly one list of the available catalogs dnl in configure.ac. for lang in $ALL_LINGUAS; do GMOFILES="$GMOFILES $lang.gmo" POFILES="$POFILES $lang.po" done dnl Make all variables we use known to autoconf. AC_SUBST(CATALOGS) AC_SUBST(CATOBJEXT) AC_SUBST(DATADIRNAME) AC_SUBST(GMOFILES) AC_SUBST(INSTOBJEXT) AC_SUBST(INTLLIBS) AC_SUBST(PO_IN_DATADIR_TRUE) AC_SUBST(PO_IN_DATADIR_FALSE) AC_SUBST(POFILES) AC_SUBST(POSUB) ]) # AM_GLIB_GNU_GETTEXT # ------------------- # Do checks necessary for use of gettext. If a suitable implementation # of gettext is found in either in libintl or in the C library, # it will set INTLLIBS to the libraries needed for use of gettext # and AC_DEFINE() HAVE_GETTEXT and ENABLE_NLS. (The shell variable # gt_cv_have_gettext will be set to "yes".) It will also call AC_SUBST() # on various variables needed by the Makefile.in.in installed by # glib-gettextize. dnl glib_DEFUN([GLIB_GNU_GETTEXT], [AC_REQUIRE([AC_PROG_CC])dnl AC_REQUIRE([AC_HEADER_STDC])dnl GLIB_LC_MESSAGES GLIB_WITH_NLS if test "$gt_cv_have_gettext" = "yes"; then if test "x$ALL_LINGUAS" = "x"; then LINGUAS= else AC_MSG_CHECKING(for catalogs to be installed) NEW_LINGUAS= for presentlang in $ALL_LINGUAS; do useit=no if test "%UNSET%" != "${LINGUAS-%UNSET%}"; then desiredlanguages="$LINGUAS" else desiredlanguages="$ALL_LINGUAS" fi for desiredlang in $desiredlanguages; do # Use the presentlang catalog if desiredlang is # a. equal to presentlang, or # b. a variant of presentlang (because in this case, # presentlang can be used as a fallback for messages # which are not translated in the desiredlang catalog). case "$desiredlang" in "$presentlang"*) useit=yes;; esac done if test $useit = yes; then NEW_LINGUAS="$NEW_LINGUAS $presentlang" fi done LINGUAS=$NEW_LINGUAS AC_MSG_RESULT($LINGUAS) fi dnl Construct list of names of catalog files to be constructed. if test -n "$LINGUAS"; then for lang in $LINGUAS; do CATALOGS="$CATALOGS $lang$CATOBJEXT"; done fi fi dnl If the AC_CONFIG_AUX_DIR macro for autoconf is used we possibly dnl find the mkinstalldirs script in another subdir but ($top_srcdir). dnl Try to locate is. MKINSTALLDIRS= if test -n "$ac_aux_dir"; then MKINSTALLDIRS="$ac_aux_dir/mkinstalldirs" fi if test -z "$MKINSTALLDIRS"; then MKINSTALLDIRS="\$(top_srcdir)/mkinstalldirs" fi AC_SUBST(MKINSTALLDIRS) dnl Generate list of files to be processed by xgettext which will dnl be included in po/Makefile. test -d po || mkdir po if test "x$srcdir" != "x."; then if test "x`echo $srcdir | sed 's@/.*@@'`" = "x"; then posrcprefix="$srcdir/" else posrcprefix="../$srcdir/" fi else posrcprefix="../" fi rm -f po/POTFILES sed -e "/^#/d" -e "/^\$/d" -e "s,.*, $posrcprefix& \\\\," -e "\$s/\(.*\) \\\\/\1/" \ < $srcdir/po/POTFILES.in > po/POTFILES ]) # AM_GLIB_DEFINE_LOCALEDIR(VARIABLE) # ------------------------------- # Define VARIABLE to the location where catalog files will # be installed by po/Makefile. glib_DEFUN([GLIB_DEFINE_LOCALEDIR], [glib_REQUIRE([GLIB_GNU_GETTEXT])dnl glib_save_prefix="$prefix" glib_save_exec_prefix="$exec_prefix" glib_save_datarootdir="$datarootdir" test "x$prefix" = xNONE && prefix=$ac_default_prefix test "x$exec_prefix" = xNONE && exec_prefix=$prefix datarootdir=`eval echo "${datarootdir}"` if test "x$CATOBJEXT" = "x.mo" ; then localedir=`eval echo "${libdir}/locale"` else localedir=`eval echo "${datadir}/locale"` fi prefix="$glib_save_prefix" exec_prefix="$glib_save_exec_prefix" datarootdir="$glib_save_datarootdir" AC_DEFINE_UNQUOTED($1, "$localedir", [Define the location where the catalogs will be installed]) ]) dnl dnl Now the definitions that aclocal will find dnl ifdef(glib_configure_ac,[],[ AC_DEFUN([AM_GLIB_GNU_GETTEXT],[GLIB_GNU_GETTEXT($@)]) AC_DEFUN([AM_GLIB_DEFINE_LOCALEDIR],[GLIB_DEFINE_LOCALEDIR($@)]) ])dnl # GLIB_RUN_PROG(PROGRAM, TEST-FILE, [ACTION-IF-PASS], [ACTION-IF-FAIL]) # # Create a temporary file with TEST-FILE as its contents and pass the # file name to PROGRAM. Perform ACTION-IF-PASS if PROGRAM exits with # 0 and perform ACTION-IF-FAIL for any other exit status. AC_DEFUN([GLIB_RUN_PROG], [cat >conftest.foo <<_ACEOF $2 _ACEOF if AC_RUN_LOG([$1 conftest.foo]); then m4_ifval([$3], [$3], [:]) m4_ifvaln([$4], [else $4])dnl echo "$as_me: failed input was:" >&AS_MESSAGE_LOG_FD sed 's/^/| /' conftest.foo >&AS_MESSAGE_LOG_FD fi]) dnl -*- mode: autoconf -*- # serial 1 dnl Usage: dnl GTK_DOC_CHECK([minimum-gtk-doc-version]) AC_DEFUN([GTK_DOC_CHECK], [ AC_BEFORE([AC_PROG_LIBTOOL],[$0])dnl setup libtool first AC_BEFORE([AM_PROG_LIBTOOL],[$0])dnl setup libtool first dnl check for tools we added during development AC_PATH_PROG([GTKDOC_CHECK],[gtkdoc-check]) AC_PATH_PROGS([GTKDOC_REBASE],[gtkdoc-rebase],[true]) AC_PATH_PROG([GTKDOC_MKPDF],[gtkdoc-mkpdf]) dnl for overriding the documentation installation directory AC_ARG_WITH([html-dir], AS_HELP_STRING([--with-html-dir=PATH], [path to installed docs]),, [with_html_dir='${datadir}/gtk-doc/html']) HTML_DIR="$with_html_dir" AC_SUBST([HTML_DIR]) dnl enable/disable documentation building AC_ARG_ENABLE([gtk-doc], AS_HELP_STRING([--enable-gtk-doc], [use gtk-doc to build documentation [[default=no]]]),, [enable_gtk_doc=no]) if test x$enable_gtk_doc = xyes; then ifelse([$1],[], [PKG_CHECK_EXISTS([gtk-doc],, AC_MSG_ERROR([gtk-doc not installed and --enable-gtk-doc requested]))], [PKG_CHECK_EXISTS([gtk-doc >= $1],, AC_MSG_ERROR([You need to have gtk-doc >= $1 installed to build $PACKAGE_NAME]))]) fi AC_MSG_CHECKING([whether to build gtk-doc documentation]) AC_MSG_RESULT($enable_gtk_doc) dnl enable/disable output formats AC_ARG_ENABLE([gtk-doc-html], AS_HELP_STRING([--enable-gtk-doc-html], [build documentation in html format [[default=yes]]]),, [enable_gtk_doc_html=yes]) AC_ARG_ENABLE([gtk-doc-pdf], AS_HELP_STRING([--enable-gtk-doc-pdf], [build documentation in pdf format [[default=no]]]),, [enable_gtk_doc_pdf=no]) if test -z "$GTKDOC_MKPDF"; then enable_gtk_doc_pdf=no fi AM_CONDITIONAL([ENABLE_GTK_DOC], [test x$enable_gtk_doc = xyes]) AM_CONDITIONAL([GTK_DOC_BUILD_HTML], [test x$enable_gtk_doc_html = xyes]) AM_CONDITIONAL([GTK_DOC_BUILD_PDF], [test x$enable_gtk_doc_pdf = xyes]) AM_CONDITIONAL([GTK_DOC_USE_LIBTOOL], [test -n "$LIBTOOL"]) AM_CONDITIONAL([GTK_DOC_USE_REBASE], [test -n "$GTKDOC_REBASE"]) ])

The Gnome Canvas widget provides an abstraction layer between drawing objects and a drawing area. Using the Gnome Canvas object abstraction alone it is possible to build a large scale graphical application with minimal coupling between objects. The Bonobo Canvas Component takes the canvas abstraction one step further by allowing individual canvas groups or items to be set up as Corba servers. Using the canvas component abstraction it is possible to actual break up the job of rendering to canvas into separate programs such that the only coupling between the programs is at the IDL level.


Introduction

This is a simple demonstration program to show how Bonobo Canvas Components can be used. A circle process and a square process are factory servers of canvas items to a client main program canvas. The demonstration shows how the item can be updated from the client side via click and drag or from the server side via a periodic update loop. In a more extreme case it shows how one server can be used to simultaneously update the canvas items on multiple clients.


The Square Server

The square program simply adds a Gnome Canvas Rectangle item to the canvas. It sets up signal handler for drag and drop events and sets up a timeout for moving on its own. A push button is used to start and stop the timeout, and a spin button is used to change the timeout speed.

Looking at the code you can see the difference in implementing the square program with and without Bonobo.

Example 1. Square Set Up Code

#ifdef WITH_BONOBO

typedef struct
{
        int state;
        int dragging;
        int timer;
        double pos;
        double inc;
        double last_x;
        double last_y;
        const char *color;
        GtkWidget *button;
        GnomeCanvasItem *item;
} ObjectData;

static BonoboObject *
control_factory (BonoboGenericFactory *this,
                 const char           *object_id,
                 GSList               **list)
{
   ...
        li = g_slist_last(*list);

        if (li) {
                object = (ObjectData*)li->data;
        }

        if (!object || object->button) {
                object = g_new0(ObjectData, 1);
                *list = g_slist_append(*list, object);
        }

        widget = square_control_new (object);
        gtk_widget_show_all(widget);
        control = bonobo_control_new (widget);
        bonobo_control_life_instrument (control);
   ...
}

static BonoboCanvasComponent *
item_factory(GnomeCanvas *canvas, gpointer data)
{
   ...
        li = g_slist_last(*list);

        if (li) {
                object = (ObjectData*)li->data;
        }

        if (!object || object->button) {
                object = g_new0(ObjectData, 1);
                *list = g_slist_append(*list, object);
        }

        item = canvas_item_new(canvas, object);
        return bonobo_canvas_component_new(item);
}

static BonoboObject *
bonobo_item_factory (BonoboGenericFactory *factory, const char *component,
                     gpointer data)
{
   ...
        object = BONOBO_OBJECT(
                   bonobo_canvas_component_factory_new (
                      item_factory, data));
   ... 
}

int
main (int argc, char *argv [])
{
        GSList *list = NULL;
  ...

        iid = bonobo_activation_make_registration_id (
                "OAFIID:SquareItem_Factory",
                gdk_display_get_name (gdk_display_get_default()));

        iid2 = bonobo_activation_make_registration_id (
                        5B
                "OAFIID:Square_ControllerFactory",
                gdk_display_get_name (gdk_display_get_default()));

        factory = BONOBO_OBJECT(bonobo_generic_factory_new
                        (iid,
                         bonobo_item_factory, &:list));
        if (factory) {
                bonobo_running_context_auto_exit_unref(factory);
        }

        retval = bonobo_generic_factory_main (iid,
                        (BonoboFactoryCallback)control_factory, &:list);

   ...
}

#else

static gboolean
quit_cb (GtkWidget *widget, GdkEventAny *event, gpointer dummy)
{
        ...
}

int
main (int argc, char *argv[])
{
	GtkWidget *app, *canvas, *box, *hbox, *control; 
        ObjectData object;
  ...

        canvas = gnome_canvas_new();
        gtk_box_pack_start_defaults (GTK_BOX (box), canvas);
        canvas_item_new(GNOME_CANVAS(canvas), object);
  ...
        control = square_control_new(&:object);
  ...
}

#endif
      

There are two main programs. If you comment the #define WITH_BONOBO preprocessing command, the program will build as a Gnome Canvas demonstration; otherwise, it builds a Bonobo Canvas Component program. The Gnome Canvas version creates a top level window with a canvas and the control components then adds the square canvas item to it. The primary difference with the Bonobo version is that because it is a server, it must be able to handle requests from multiple clients. It is up to the implementer whether it can refuse to serve more than one client or it can serve all requesting clients.

The ObjectData structure has all information needed keep track of the square: where it is on the canvas, how fast it is moving, is it being dragged, etc. In the non-Bonobo program, a single instance of the ObjectData structure is declared at the top of the main program. In the Bonobo version, a GSList linked list is declared at the top of the main program. The linked list is used to keep track of multiple squares that could be served to multiple requestors. (Note, this program leaks objects and memory when clients disconnect. Sorry.)


The Circle Server

The circle server program is almost exactly the same as the square server. Aside from the obvious difference that is serves an ellipse item instead of a rectangle item, it does something different with its linked list. Rather than having a linked list of ObjectData structures, the circle server has a single CommonData structure. The CommonData structure has a linked list of ObjectData structures that contain the served canvas items and widget references to the canvas items controls.

Example 2. Circle Data Structures

typedef struct
{
        int state;
        int dragging;
        int timer;
        double speed;
        double pos;
        double inc;
        double last_x;
        double last_y;
        const char *color;
        GSList *list;
} CommonData;

typedef struct
{
        GtkWidget *button;
        GtkAdjustment *adj;
        GnomeCanvasItem *item;
} ObjectData;
      

You can imagine what happens here. Any change to one circle will cause all the other circles to update to reflect the change assuming all of the events are handled properly in the circle program.


Running it Altogether

To see it in action, make sure you build square.c with the #define WITH_BONOBO directive in place. If you don't want to install the CanvDemo.server oaf file, just run the ./square and ./circle from a terminal. From another terminal run 1 or more copies of the main program ./main&. Press the stop button for the circle. You'll see all the circles stop. Now click and drag the circle as fast as you can. Try increasing the speed to 1000 for all the controls. A speed of 1000 translates to 100 updates per second per canvas item. You shouldn't have any trouble driving your CPU usage up to 100%.

Ok this looks kind of cool, but what use is it? I'm still trying to figure this out myself. Here's my situation: I have to maintain a 30,000 line program that has to plot lots of information from various obscure data sources. Not only is the job of getting the data non-trivial, but converting the data into some form for which it can be plotted is also complex. I suspect that breaking the program down by data source into a bunch of smaller programs may simplify maintenance and may make it easier for inexperienced programmers to navigate through the code.


How Canvas Components Work

I recently spent some time debugging some of the this code so I figure this is a good time to document what I have learned. The canvas component code is not yet perfect (if you can believe it.) This documentation only describes the parts of the logic that gave me the most trouble. Hopefully by writing this, I'll give the next person who needs to debug it a little bit of a head start.

To really understand how this interface works knowledge of how the Gnome Canvas is required first. I don't yet have this knowledge, but I can suggest some places to start: http://developer.gnome.org/doc/books/WGA/index.html, http://developer.gnome.org/doc/GGAD/ggad.html, and of course the gnome-canvas.c source code itself.

By far the most complex part of the interface is the request and do update logic. The Gnome Canvas conserves processing by separating its calculation task from it graphics rendering task as the graphics rendering tends to be repeated more often due to expose events. In the do_update calculation task the sorted vector path is determined. In the draw task the graphics are sent to the screen. As a result of user interaction or a change at its data source, the canvas item may make an update request at anytime. When the request is made, a flag is set in the canvas item and the canvas sets up an idle callback. During the idle callback the canvas runs the do_update routine. During the do_update the canvas is manipulating the NEED_UPDATE flags on its item tree and it cannot allow any item to change its NEED_UPDATE status while it is in this loop.

For the non-Bonobo case, items are prevented from requesting updates by calling GDK_THREADS_ENTER(). This invokes a semaphore locking scheme. For a single process, multi-threaded program this works fine. In the Bonobo case, there are two or more processes communicating, so even if each process is single threaded, the application as a whole will behave as if it is multi-threaded and the GDK thread support will not work because GDK has no knowledge about other processes that are communicating through Bonobo.

In the Bonobo canvas component model, there are two entry points that can inititiate a canvas item update request. The component side may change a property of its canvas item due to a change in a database or some other data representation. The container side may request an update due to an expose or resize event. In either case the communication flow is roughly the same.

The flow diagram for an update requested by the component is shown in the diagram below. When the component changes a property, a NEED_UPDATE flag is set internal to the canvas item. Sometime later the component's component canvas idle_handler is called. The initiates the rih_update.

Figure 1. Bonobo Canvas Component Update Flow Diagram

The rih_update from the component sets up another idle callback for the canvas item in the container. When the container's idle handler is invoked, invoke_update is finally called on the component side and the component item is updated.

When the update is requested from the conatainer side there is less processing. The flow starts out on the right in the diagram above. Once invoke_update is called at the component side, this is the end of the update.

The logic can break down if both the container and component request an update at approximately the same time. Lets say the container makes an update request on one if its canvas components. It would set up an idle_handler and proceed to call do_update from within the idle_handler. Just before do_update gets called on the container side, the component makes a request_update call. Next the container starts to process do_update. From somewhere within the do_update procedure, the container calls Bonobo_Canvas_Component_update on the component side. At this time the component processes the update call, but also requires that the container process the components request_update. But, the container cannot process the component's request_update without corrupting its NEED_UPDATE flags. One answer to this problem (the one implemented presently) is to have the container set up its own idle callback to process the component's update request as soon as it finishes with its do_update.

For a case where there are multiple components and multiple containers where a change to one component may effect all others the problem gets even more interesting. In the circle.c example program changing one circle component at the server causes all other circle components to change. Here we have a case where an event signal from one component might trigger a request_update for a component that is a member of a different canvas. This case is described below:

Example 3. Canvas NEED_UPDATE Synchronization Problem


      Process 1 (component), 2 (canvas), and 3 (canvas).
      Object A and B.

      1 is a component factory.  2 and 3 are canvas's.  Each canvas activates an
      object from process 1 such that object A belongs to 2 and object B belongs
      to 3.

      For object A: 1 rih_update() -> 2 requestUpdate().

      For object B: 3 gbi_event() -> 1 event().
      

The process 1 stack trace shows event() gets called at 1 prior to returning from rih_update(). The second call was waiting in the queue. It is as if calling requestUpdate() causes event() to be called. I suspect this has to happen because if event() had actually come from 2 then the processes would otherwise be in a deadlock. Of course the Corba ORB doesn't necessarily know what would cause a deadlock and what wouldn't.

Example 4. A Deadlock Problem

        For object A: 1 rih_update() -> 2 requestUpdate().

        For object B: 2 gbi_event() -> 1 event(). 
      

Or maybe the return value just goes on the queue and we have to peel everything away until we get to the return value we need. What would happen if process 1 called 2 and waited for a return value. When 2 gets called, it needs to call 1 to finish, but 1 is busy waiting for 2 to return something.

Cases where canvas in danger of getting out of sync are limited to whatever is called when either the component canvas or the container canvas are in do_update. For the component this is during rih_update where Bonobo_Canvas_ComponentProxy_requestUpdate is called. For the container this is limited to gbi_update where Bonobo_Canvas_Component_update is called. During each of these time periods on either process we need to ensure that a method call coming from the stack does not indirectly cause a canvas_item_request_update to be called. All of the methods in the idl need to be looked at to assess the possibility of any of them triggering the request.

Example 5. All Procedures Possible During do_update

      Component:
      update - not an issue. This trace will stay internal to the component and
      canvas.

      realize, unrealize, map, unmap - all internal.

      draw - danger - restore_state could request an update if
      GNOME_CANVAS_ITEM_NEED_AFFINE is set. It may be necessary to always set
      this to 0 if we are inside do_update. also could be handled with an idle
      since there is no return value. I think it is OK to request an update on
      the canvas root item even when inside do_update.

      render - internal no issue.

      contains - internal.

      bounds - danger: Same issue as draw. This at the moment appears to be
      unused.

      event - danger: this gets passes to the application - who knows what
      happens from there.

      setCanvasSize - no problem.

      setBounds - sends a gtk bounds event out. - application could request
      updates but I think is highly unlikely.

      Container:
      requestUpdate - problem but handled w/idle handler since has void return
      value.

      grabFocus, ungrabFocus - internal
      getUIContainer - no issue.
      

Possible ramifications of dropping return value for emit_event: If container has the component attached to a group created on the container side and the component needs to decide whether it or its container should handle the event for its canvas item, there may be cases where the results will not get there. If someone is trying to do this, it is probably an unhealthy coupling anyway. The interface will not guarantee the correct return value sent by the component. For someone to be doing this, they would have a very tight coupling case. I suspect they would have much bigger problems then this return value.