agave-0.4.7/0000777000175000017500000000000011224443302007605 500000000000000agave-0.4.7/COPYING0000644000175000017500000004311010610435711010556 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. agave-0.4.7/src/0000777000175000017500000000000011224443301010373 500000000000000agave-0.4.7/src/Makefile.in0000644000175000017500000004727611224442712012401 00000000000000# Makefile.in generated by automake 1.10.2 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # 2003, 2004, 2005, 2006, 2007, 2008 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@ pkglibdir = $(libdir)/@PACKAGE@ pkgincludedir = $(includedir)/@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 = : bin_PROGRAMS = agave$(EXEEXT) subdir = src DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \ $(top_srcdir)/configure.ac 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 = am__installdirs = "$(DESTDIR)$(bindir)" binPROGRAMS_INSTALL = $(INSTALL_PROGRAM) PROGRAMS = $(bin_PROGRAMS) am__objects_1 = am__objects_2 = gcs-mainwindow.$(OBJEXT) \ gcs-mainwindow-actions.$(OBJEXT) gcs-conf.$(OBJEXT) \ main.$(OBJEXT) am_agave_OBJECTS = $(am__objects_1) $(am__objects_2) agave_OBJECTS = $(am_agave_OBJECTS) am__DEPENDENCIES_1 = agave_DEPENDENCIES = dialogs/libagavedialogs.a \ widgets/libagavewidgets.a core/libagave.a \ paletteparser/libpaletteparser.a $(am__DEPENDENCIES_1) DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir) depcomp = $(SHELL) $(top_srcdir)/depcomp am__depfiles_maybe = depfiles CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) CXXLD = $(CXX) CXXLINK = $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(AM_LDFLAGS) $(LDFLAGS) \ -o $@ COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) CCLD = $(CC) LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ SOURCES = $(agave_SOURCES) DIST_SOURCES = $(agave_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 ETAGS = etags CTAGS = ctags DIST_SUBDIRS = $(SUBDIRS) DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ AGAVE_CFLAGS = @AGAVE_CFLAGS@ AGAVE_ICONDIR = @AGAVE_ICONDIR@ AGAVE_LIBS = @AGAVE_LIBS@ AGAVE_LOCALEDIR = @AGAVE_LOCALEDIR@ AGAVE_PALETTEDIR = @AGAVE_PALETTEDIR@ AGAVE_UIDIR = @AGAVE_UIDIR@ ALL_LINGUAS = @ALL_LINGUAS@ AMTAR = @AMTAR@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ AWK = @AWK@ CAIRO_RING_CFLAGS = @CAIRO_RING_CFLAGS@ CAIRO_RING_LIBS = @CAIRO_RING_LIBS@ CATALOGS = @CATALOGS@ CATOBJEXT = @CATOBJEXT@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPPFLAGS = @CPPFLAGS@ CPPUNIT_CFLAGS = @CPPUNIT_CFLAGS@ CPPUNIT_CONFIG = @CPPUNIT_CONFIG@ CPPUNIT_LIBS = @CPPUNIT_LIBS@ CXX = @CXX@ CXXCPP = @CXXCPP@ CXXDEPMODE = @CXXDEPMODE@ CXXFLAGS = @CXXFLAGS@ CYGPATH_W = @CYGPATH_W@ DATADIRNAME = @DATADIRNAME@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ DISTCHECK_CONFIGURE_FLAGS = @DISTCHECK_CONFIGURE_FLAGS@ DOC_USER_FORMATS = @DOC_USER_FORMATS@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ GCONFMM_CFLAGS = @GCONFMM_CFLAGS@ GCONFMM_LIBS = @GCONFMM_LIBS@ GCONFTOOL = @GCONFTOOL@ GCONF_SCHEMA_CONFIG_SOURCE = @GCONF_SCHEMA_CONFIG_SOURCE@ GCONF_SCHEMA_FILE_DIR = @GCONF_SCHEMA_FILE_DIR@ GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ GIT_PATH = @GIT_PATH@ GMOFILES = @GMOFILES@ GMSGFMT = @GMSGFMT@ GNOME_CFLAGS = @GNOME_CFLAGS@ GNOME_LIBS = @GNOME_LIBS@ GREP = @GREP@ GTKMM_CFLAGS = @GTKMM_CFLAGS@ GTKMM_LIBS = @GTKMM_LIBS@ HELP_DIR = @HELP_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@ LDFLAGS = @LDFLAGS@ LIBGLADEMM_CFLAGS = @LIBGLADEMM_CFLAGS@ LIBGLADEMM_LIBS = @LIBGLADEMM_LIBS@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LN_S = @LN_S@ LTLIBOBJS = @LTLIBOBJS@ MAKEINFO = @MAKEINFO@ MKDIR_P = @MKDIR_P@ MKINSTALLDIRS = @MKINSTALLDIRS@ MSGFMT = @MSGFMT@ MSGFMT_OPTS = @MSGFMT_OPTS@ MSGMERGE = @MSGMERGE@ OBJEXT = @OBJEXT@ OMF_DIR = @OMF_DIR@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PACKAGE_WEBSITE = @PACKAGE_WEBSITE@ PATH_SEPARATOR = @PATH_SEPARATOR@ PKG_CONFIG = @PKG_CONFIG@ POFILES = @POFILES@ POSUB = @POSUB@ PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@ PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@ PRINTING_CFLAGS = @PRINTING_CFLAGS@ PRINTING_LIBS = @PRINTING_LIBS@ RANLIB = @RANLIB@ SED = @SED@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ SORT = @SORT@ STRIP = @STRIP@ TR = @TR@ UNIQ = @UNIQ@ USE_NLS = @USE_NLS@ VERSION = @VERSION@ XGETTEXT = @XGETTEXT@ 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_CXX = @ac_ct_CXX@ 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_alias = @build_alias@ builddir = @builddir@ datadir = @datadir@ datarootdir = @datarootdir@ docdir = @docdir@ dvidir = @dvidir@ exec_prefix = @exec_prefix@ host_alias = @host_alias@ htmldir = @htmldir@ includedir = @includedir@ infodir = @infodir@ install_sh = @install_sh@ libdir = @libdir@ libexecdir = @libexecdir@ localedir = @localedir@ localstatedir = @localstatedir@ 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 = core paletteparser widgets dialogs sources_h = gcs-mainwindow.h \ gcs-i18n.h \ gcs-conf.h \ gcs-util.h \ ucompose.h \ gcs-history.h sources_c = gcs-mainwindow.cc \ gcs-mainwindow-actions.cc \ gcs-conf.cc \ main.cc agave_SOURCES = ${sources_h} ${sources_c} AM_CXXFLAGS = ${AGAVE_CFLAGS} \ -I${top_srcdir}/src # prefix, sysconfdir, libdir, and datadir are needed for the # GNOME_PROGRAM_STANDARD_PROPERTIES macro passed to gnome_program_init() AM_CPPFLAGS = -DAGAVE_LOCALEDIR=\"${AGAVE_LOCALEDIR}\" \ -DAGAVE_UIDIR=\"${AGAVE_UIDIR}\" \ -DAGAVE_ICONDIR=\"${AGAVE_ICONDIR}\" \ -DAGAVE_PALETTEDIR=\"${AGAVE_PALETTEDIR}\" \ -DPREFIX=\""$(prefix)"\" \ -DSYSCONFDIR=\""$(sysconfdir)"\" \ -DLIBDIR=\""$(libdir)"\" \ -DDATADIR=\""$(datadir)"\" agave_LDADD = dialogs/libagavedialogs.a \ widgets/libagavewidgets.a \ core/libagave.a \ paletteparser/libpaletteparser.a \ ${AGAVE_LIBS} all: all-recursive .SUFFIXES: .SUFFIXES: .cc .o .obj $(srcdir)/Makefile.in: $(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) --gnu src/Makefile'; \ cd $(top_srcdir) && \ $(AUTOMAKE) --gnu src/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: $(am__configure_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(ACLOCAL_M4): $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh install-binPROGRAMS: $(bin_PROGRAMS) @$(NORMAL_INSTALL) test -z "$(bindir)" || $(MKDIR_P) "$(DESTDIR)$(bindir)" @list='$(bin_PROGRAMS)'; for p in $$list; do \ p1=`echo $$p|sed 's/$(EXEEXT)$$//'`; \ if test -f $$p \ ; then \ f=`echo "$$p1" | sed 's,^.*/,,;$(transform);s/$$/$(EXEEXT)/'`; \ echo " $(INSTALL_PROGRAM_ENV) $(binPROGRAMS_INSTALL) '$$p' '$(DESTDIR)$(bindir)/$$f'"; \ $(INSTALL_PROGRAM_ENV) $(binPROGRAMS_INSTALL) "$$p" "$(DESTDIR)$(bindir)/$$f" || exit 1; \ else :; fi; \ done uninstall-binPROGRAMS: @$(NORMAL_UNINSTALL) @list='$(bin_PROGRAMS)'; for p in $$list; do \ f=`echo "$$p" | sed 's,^.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/'`; \ echo " rm -f '$(DESTDIR)$(bindir)/$$f'"; \ rm -f "$(DESTDIR)$(bindir)/$$f"; \ done clean-binPROGRAMS: -test -z "$(bin_PROGRAMS)" || rm -f $(bin_PROGRAMS) agave$(EXEEXT): $(agave_OBJECTS) $(agave_DEPENDENCIES) @rm -f agave$(EXEEXT) $(CXXLINK) $(agave_OBJECTS) $(agave_LDADD) $(LIBS) mostlyclean-compile: -rm -f *.$(OBJEXT) distclean-compile: -rm -f *.tab.c @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gcs-conf.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gcs-mainwindow-actions.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gcs-mainwindow.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/main.Po@am__quote@ .cc.o: @am__fastdepCXX_TRUE@ $(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< @am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(CXXCOMPILE) -c -o $@ $< .cc.obj: @am__fastdepCXX_TRUE@ $(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'` @am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(CXXCOMPILE) -c -o $@ `$(CYGPATH_W) '$<'` # 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): @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; \ (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): @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; \ (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ || eval $$failcom; \ done && test -z "$$fail" tags-recursive: list='$(SUBDIRS)'; for subdir in $$list; do \ test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \ done ctags-recursive: list='$(SUBDIRS)'; for subdir in $$list; do \ test "$$subdir" = . || (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) tags=; \ 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 || \ tags="$$tags $$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; }; }'`; \ if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \ test -n "$$unique" || unique=$$empty_fix; \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ $$tags $$unique; \ fi ctags: CTAGS CTAGS: ctags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) tags=; \ 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)$$tags$$unique" \ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ $$tags $$unique GTAGS: here=`$(am__cd) $(top_builddir) && pwd` \ && 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 $(srcdir)/$$file && test $$d != $(srcdir); then \ cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ fi; \ cp -pR $$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; \ distdir=`$(am__cd) $(distdir) && pwd`; \ top_distdir=`$(am__cd) $(top_distdir) && pwd`; \ (cd $$subdir && \ $(MAKE) $(AM_MAKEFLAGS) \ top_distdir="$$top_distdir" \ distdir="$$distdir/$$subdir" \ am__remove_distdir=: \ am__skip_length_check=: \ distdir) \ || exit 1; \ fi; \ done check-am: all-am 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) 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 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 info: info-recursive info-am: install-data-am: install-dvi: install-dvi-recursive install-exec-am: install-binPROGRAMS install-html: install-html-recursive install-info: install-info-recursive install-man: install-pdf: install-pdf-recursive install-ps: install-ps-recursive 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 pdf: pdf-recursive pdf-am: ps: ps-recursive ps-am: uninstall-am: uninstall-binPROGRAMS .MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) install-am \ install-strip .PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \ all all-am check check-am clean clean-binPROGRAMS \ clean-generic ctags ctags-recursive distclean \ distclean-compile distclean-generic 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 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: agave-0.4.7/src/ucompose.h0000644000175000017500000003173010507563757012343 00000000000000/* Defines String::ucompose(fmt, arg...) for easy, i18n-friendly * composition of strings with Gtkmm >= 1.3.* (see www.gtkmm.org). * Uses Glib::ustring instead of std::string which doesn't work with * Gtkmm due to character encoding troubles with stringstreams. * * Version 1.0.3. * * Copyright (c) 2002, 2003 Ole Laursen . * * 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 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 * 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. */ // // Basic usage is like // // String::ucompose("This is a %1x%2 matrix.", rows, cols); // // See http://www.cs.auc.dk/~olau/compose/ or the included // README.compose for more details. // #ifndef STRING_UCOMPOSE_HPP #define STRING_UCOMPOSE_HPP #include #include #include #include #include #include #include // for multimap #include namespace gcs { namespace UStringPrivate { // the actual composition class - using String::ucompose is cleaner, so we // hide it here class Composition { public: // initialize and prepare format string on the form "text %1 text %2 etc." explicit Composition(std::string fmt); // supply an replacement argument starting from %1 template Composition &arg(const T &obj); // compose and return string Glib::ustring str() const; private: std::ostringstream os; int arg_no; // we store the output as a list - when the output string is requested, the // list is concatenated to a string; this way we can keep iterators into // the list instead of into a string where they're possibly invalidated // when inserting a specification string typedef std::list output_list; output_list output; // the initial parse of the format string fills in the specification map // with positions for each of the various %?s typedef std::multimap specification_map; specification_map specs; template std::string stringify(T obj); }; // helper for converting spec string numbers inline int char_to_int(char c) { switch (c) { case '0': return 0; case '1': return 1; case '2': return 2; case '3': return 3; case '4': return 4; case '5': return 5; case '6': return 6; case '7': return 7; case '8': return 8; case '9': return 9; default: return -1000; } } inline bool is_number(int n) { switch (n) { case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': return true; default: return false; } } template inline std::string Composition::stringify(T obj) { os << obj; return Glib::locale_to_utf8(os.str()); } // partial specialisations for the common string types template <> inline std::string Composition::stringify(std::string obj) { return obj; } template <> inline std::string Composition::stringify(Glib::ustring obj) { return obj; } template <> inline std::string Composition::stringify(const char *obj) { return obj; } // implementation of class Composition template inline Composition &Composition::arg(const T &obj) { Glib::ustring rep = stringify(obj); if (!rep.empty()) { // manipulators don't produce output for (specification_map::const_iterator i = specs.lower_bound(arg_no), end = specs.upper_bound(arg_no); i != end; ++i) { output_list::iterator pos = i->second; ++pos; output.insert(pos, rep); } os.str(std::string()); //os.clear(); ++arg_no; } return *this; } inline Composition::Composition(std::string fmt) : arg_no(1) { #if __GNUC__ >= 3 try { // we don't want a crash because of locale's that don't exist (or because // of stupid compilers that are compiled with --enable-clocale=generic) // ** disabled because it was causing issues with some locales, // particularly fr_CA //os.imbue(std::locale("")); // use the user's locale for the stream } catch (const std::runtime_error& error) { g_warning("%s", error.what()); } #endif std::string::size_type b = 0, i = 0; // fill in output with the strings between the %1 %2 %3 etc. and // fill in specs with the positions while (i < fmt.length()) { if (fmt[i] == '%' && i + 1 < fmt.length()) { if (fmt[i + 1] == '%') { // catch %% fmt.replace(i, 2, "%"); ++i; } else if (is_number(fmt[i + 1])) { // aha! a spec! // save string output.push_back(fmt.substr(b, i - b)); int n = 1; // number of digits int spec_no = 0; do { spec_no += char_to_int(fmt[i + n]); spec_no *= 10; ++n; } while (i + n < fmt.length() && is_number(fmt[i + n])); spec_no /= 10; output_list::iterator pos = output.end(); --pos; // safe since we have just inserted a string specs.insert(specification_map::value_type(spec_no, pos)); // jump over spec string i += n; b = i; } else ++i; } else ++i; } if (i - b > 0) // add the rest of the string output.push_back(fmt.substr(b, i - b)); } inline Glib::ustring Composition::str() const { // assemble string std::string str; for (output_list::const_iterator i = output.begin(), end = output.end(); i != end; ++i) str += *i; return str; } } namespace String { // a series of functions which accept a format string on the form "text %1 // more %2 less %3" and a number of templated parameters and spits out the // composited string template inline Glib::ustring ucompose(const Glib::ustring &fmt, const T1 &o1) { UStringPrivate::Composition c(fmt); c.arg(o1); return c.str(); } template inline Glib::ustring ucompose(const Glib::ustring &fmt, const T1 &o1, const T2 &o2) { UStringPrivate::Composition c(fmt); c.arg(o1).arg(o2); return c.str(); } template inline Glib::ustring ucompose(const Glib::ustring &fmt, const T1 &o1, const T2 &o2, const T3 &o3) { UStringPrivate::Composition c(fmt); c.arg(o1).arg(o2).arg(o3); return c.str(); } template inline Glib::ustring ucompose(const Glib::ustring &fmt, const T1 &o1, const T2 &o2, const T3 &o3, const T4 &o4) { UStringPrivate::Composition c(fmt); c.arg(o1).arg(o2).arg(o3).arg(o4); return c.str(); } template inline Glib::ustring ucompose(const Glib::ustring &fmt, const T1 &o1, const T2 &o2, const T3 &o3, const T4 &o4, const T5 &o5) { UStringPrivate::Composition c(fmt); c.arg(o1).arg(o2).arg(o3).arg(o4).arg(o5); return c.str(); } template inline Glib::ustring ucompose(const Glib::ustring &fmt, const T1 &o1, const T2 &o2, const T3 &o3, const T4 &o4, const T5 &o5, const T6 &o6) { UStringPrivate::Composition c(fmt); c.arg(o1).arg(o2).arg(o3).arg(o4).arg(o5).arg(o6); return c.str(); } template inline Glib::ustring ucompose(const Glib::ustring &fmt, const T1 &o1, const T2 &o2, const T3 &o3, const T4 &o4, const T5 &o5, const T6 &o6, const T7 &o7) { UStringPrivate::Composition c(fmt); c.arg(o1).arg(o2).arg(o3).arg(o4).arg(o5).arg(o6).arg(o7); return c.str(); } template inline Glib::ustring ucompose(const Glib::ustring &fmt, const T1 &o1, const T2 &o2, const T3 &o3, const T4 &o4, const T5 &o5, const T6 &o6, const T7 &o7, const T8 &o8) { UStringPrivate::Composition c(fmt); c.arg(o1).arg(o2).arg(o3).arg(o4).arg(o5).arg(o6).arg(o7).arg(o8); return c.str(); } template inline Glib::ustring ucompose(const Glib::ustring &fmt, const T1 &o1, const T2 &o2, const T3 &o3, const T4 &o4, const T5 &o5, const T6 &o6, const T7 &o7, const T8 &o8, const T9 &o9) { UStringPrivate::Composition c(fmt); c.arg(o1).arg(o2).arg(o3).arg(o4).arg(o5).arg(o6).arg(o7).arg(o8).arg(o9); return c.str(); } template inline Glib::ustring ucompose(const Glib::ustring &fmt, const T1 &o1, const T2 &o2, const T3 &o3, const T4 &o4, const T5 &o5, const T6 &o6, const T7 &o7, const T8 &o8, const T9 &o9, const T10 &o10) { UStringPrivate::Composition c(fmt); c.arg(o1).arg(o2).arg(o3).arg(o4).arg(o5).arg(o6).arg(o7).arg(o8).arg(o9) .arg(o10); return c.str(); } template inline Glib::ustring ucompose(const Glib::ustring &fmt, const T1 &o1, const T2 &o2, const T3 &o3, const T4 &o4, const T5 &o5, const T6 &o6, const T7 &o7, const T8 &o8, const T9 &o9, const T10 &o10, const T11 &o11) { UStringPrivate::Composition c(fmt); c.arg(o1).arg(o2).arg(o3).arg(o4).arg(o5).arg(o6).arg(o7).arg(o8).arg(o9) .arg(o10).arg(o11); return c.str(); } template inline Glib::ustring ucompose(const Glib::ustring &fmt, const T1 &o1, const T2 &o2, const T3 &o3, const T4 &o4, const T5 &o5, const T6 &o6, const T7 &o7, const T8 &o8, const T9 &o9, const T10 &o10, const T11 &o11, const T12 &o12) { UStringPrivate::Composition c(fmt); c.arg(o1).arg(o2).arg(o3).arg(o4).arg(o5).arg(o6).arg(o7).arg(o8).arg(o9) .arg(o10).arg(o11).arg(o12); return c.str(); } template inline Glib::ustring ucompose(const Glib::ustring &fmt, const T1 &o1, const T2 &o2, const T3 &o3, const T4 &o4, const T5 &o5, const T6 &o6, const T7 &o7, const T8 &o8, const T9 &o9, const T10 &o10, const T11 &o11, const T12 &o12, const T13 &o13) { UStringPrivate::Composition c(fmt); c.arg(o1).arg(o2).arg(o3).arg(o4).arg(o5).arg(o6).arg(o7).arg(o8).arg(o9) .arg(o10).arg(o11).arg(o12).arg(o13); return c.str(); } template inline Glib::ustring ucompose(const Glib::ustring &fmt, const T1 &o1, const T2 &o2, const T3 &o3, const T4 &o4, const T5 &o5, const T6 &o6, const T7 &o7, const T8 &o8, const T9 &o9, const T10 &o10, const T11 &o11, const T12 &o12, const T13 &o13, const T14 &o14) { UStringPrivate::Composition c(fmt); c.arg(o1).arg(o2).arg(o3).arg(o4).arg(o5).arg(o6).arg(o7).arg(o8).arg(o9) .arg(o10).arg(o11).arg(o12).arg(o13).arg(o14); return c.str(); } template inline Glib::ustring ucompose(const Glib::ustring &fmt, const T1 &o1, const T2 &o2, const T3 &o3, const T4 &o4, const T5 &o5, const T6 &o6, const T7 &o7, const T8 &o8, const T9 &o9, const T10 &o10, const T11 &o11, const T12 &o12, const T13 &o13, const T14 &o14, const T15 &o15) { UStringPrivate::Composition c(fmt); c.arg(o1).arg(o2).arg(o3).arg(o4).arg(o5).arg(o6).arg(o7).arg(o8).arg(o9) .arg(o10).arg(o11).arg(o12).arg(o13).arg(o14).arg(o15); return c.str(); } } } // namespace gcs #endif // STRING_UCOMPOSE_HPP agave-0.4.7/src/main.cc0000644000175000017500000001102010760701126011542 00000000000000/******************************************************************************* * PROJECT: GNOME Colorscheme * * AUTHOR: Jonathon Jongsma * * Copyright (c) 2005 Jonathon Jongsma * Portions (c) the Coaster Development Team * * License: * 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 * *******************************************************************************/ #ifdef HAVE_CONFIG_H #include #endif #include #ifdef HAVE_GNOME #include #endif // HAVE_GNOME #ifdef HAVE_GCONFMM #include #endif // HAVE_GCONFMM #include "gcs-mainwindow.h" #include "gcs-i18n.h" #include "core/log-stream.h" namespace gcs { class OptionGroup : public Glib::OptionGroup { public: OptionGroup(); }; OptionGroup::OptionGroup(void) : Glib::OptionGroup ("Agave", "A Colorscheme Designer", "A tool for generating pleasing colorschemes from an initial color") { Glib::OptionEntry entry1; entry1.set_long_name("debug"); entry1.set_short_name('d'); entry1.set_description("Enable Debugging output"); add_entry(entry1, agave_debug); } } // namespace gcs int main(int argc, char **argv) { // wrap everything in a try..catch block and display a message telling who // to contact about any uncaught exceptions try { bindtextdomain(GETTEXT_PACKAGE, AGAVE_LOCALEDIR); bind_textdomain_codeset(GETTEXT_PACKAGE, "UTF-8"); textdomain(GETTEXT_PACKAGE); Glib::OptionContext context; gcs::OptionGroup option_group; context.set_main_group(option_group); option_group.set_translation_domain(GETTEXT_PACKAGE); // this Gtk::Main constructor requires gtkmm 2.6 Gtk::Main app(argc, argv, context); LOG("VERSION: " << PACKAGE_VERSION); LOG("PREFIX: " << PREFIX); LOG("UIDIR: " << AGAVE_UIDIR); LOG("ICONDIR: " << AGAVE_ICONDIR); LOG("PALETTEDIR: " << AGAVE_PALETTEDIR); #ifdef HAVE_GNOME gnome_program_init(PACKAGE, PACKAGE_VERSION, LIBGNOME_MODULE, argc, argv, GNOME_PROGRAM_STANDARD_PROPERTIES, NULL); #endif // HAVE_GNOME #ifdef HAVE_GCONFMM Gnome::Conf::init(); #endif // HAVE_GCONFMM gcs::MainWindow& w = gcs::MainWindow::Instance(); app.run(w); } catch (Glib::Error& ex) { std::cerr << std::endl << "Ouch, that hurt." << std::endl << "Please report this error to " << PACKAGE_BUGREPORT << std::endl << "Include the following information:" << std::endl << ex.what() << std::endl; } return 0; } /** \mainpage Agave Developer Documentation * * \section Introduction * This document provides an overview of the code of the Agave application. * Obviously this information will be most likely of interest to those who want * to hack on Agave or contribute to its development. Obviously you can get all * of this information simply from looking at the code, but this presents the * information in a much easier-to-reference way. Additions and corrections are * welcome to this documentation, as well as to the code itself. * * \section getting-started Getting Started * Most things in the application should be inside the 'gcs' namespace, which is * further divided into functional groups like widgets or dialog windows. A * good place to start is to to get an idea of what the application is about is * the MainWindow class. This is the main window of the application. The * Color and Scheme classes are also interesting since they do a majority of * the work. Initially the plan was to split core things like this out into * its own library, but I'm not sure how useful that would be. It could still * be done in the future, but I don't really have any plans to do so at this * point. */ agave-0.4.7/src/dialogs/0000777000175000017500000000000011224443301012015 500000000000000agave-0.4.7/src/dialogs/Makefile.in0000644000175000017500000003401111224442712014002 00000000000000# Makefile.in generated by automake 1.10.2 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # 2003, 2004, 2005, 2006, 2007, 2008 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@ pkglibdir = $(libdir)/@PACKAGE@ pkgincludedir = $(includedir)/@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 = : subdir = src/dialogs DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \ $(top_srcdir)/configure.ac 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 = LIBRARIES = $(noinst_LIBRARIES) AR = ar ARFLAGS = cru libagavedialogs_a_AR = $(AR) $(ARFLAGS) libagavedialogs_a_LIBADD = am_libagavedialogs_a_OBJECTS = gcs-about-window.$(OBJEXT) \ gcs-save-chooser.$(OBJEXT) libagavedialogs_a_OBJECTS = $(am_libagavedialogs_a_OBJECTS) DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir) depcomp = $(SHELL) $(top_srcdir)/depcomp am__depfiles_maybe = depfiles CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) CXXLD = $(CXX) CXXLINK = $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(AM_LDFLAGS) $(LDFLAGS) \ -o $@ COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) CCLD = $(CC) LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ SOURCES = $(libagavedialogs_a_SOURCES) DIST_SOURCES = $(libagavedialogs_a_SOURCES) ETAGS = etags CTAGS = ctags DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ AGAVE_CFLAGS = @AGAVE_CFLAGS@ AGAVE_ICONDIR = @AGAVE_ICONDIR@ AGAVE_LIBS = @AGAVE_LIBS@ AGAVE_LOCALEDIR = @AGAVE_LOCALEDIR@ AGAVE_PALETTEDIR = @AGAVE_PALETTEDIR@ AGAVE_UIDIR = @AGAVE_UIDIR@ ALL_LINGUAS = @ALL_LINGUAS@ AMTAR = @AMTAR@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ AWK = @AWK@ CAIRO_RING_CFLAGS = @CAIRO_RING_CFLAGS@ CAIRO_RING_LIBS = @CAIRO_RING_LIBS@ CATALOGS = @CATALOGS@ CATOBJEXT = @CATOBJEXT@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPPFLAGS = @CPPFLAGS@ CPPUNIT_CFLAGS = @CPPUNIT_CFLAGS@ CPPUNIT_CONFIG = @CPPUNIT_CONFIG@ CPPUNIT_LIBS = @CPPUNIT_LIBS@ CXX = @CXX@ CXXCPP = @CXXCPP@ CXXDEPMODE = @CXXDEPMODE@ CXXFLAGS = @CXXFLAGS@ CYGPATH_W = @CYGPATH_W@ DATADIRNAME = @DATADIRNAME@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ DISTCHECK_CONFIGURE_FLAGS = @DISTCHECK_CONFIGURE_FLAGS@ DOC_USER_FORMATS = @DOC_USER_FORMATS@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ GCONFMM_CFLAGS = @GCONFMM_CFLAGS@ GCONFMM_LIBS = @GCONFMM_LIBS@ GCONFTOOL = @GCONFTOOL@ GCONF_SCHEMA_CONFIG_SOURCE = @GCONF_SCHEMA_CONFIG_SOURCE@ GCONF_SCHEMA_FILE_DIR = @GCONF_SCHEMA_FILE_DIR@ GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ GIT_PATH = @GIT_PATH@ GMOFILES = @GMOFILES@ GMSGFMT = @GMSGFMT@ GNOME_CFLAGS = @GNOME_CFLAGS@ GNOME_LIBS = @GNOME_LIBS@ GREP = @GREP@ GTKMM_CFLAGS = @GTKMM_CFLAGS@ GTKMM_LIBS = @GTKMM_LIBS@ HELP_DIR = @HELP_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@ LDFLAGS = @LDFLAGS@ LIBGLADEMM_CFLAGS = @LIBGLADEMM_CFLAGS@ LIBGLADEMM_LIBS = @LIBGLADEMM_LIBS@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LN_S = @LN_S@ LTLIBOBJS = @LTLIBOBJS@ MAKEINFO = @MAKEINFO@ MKDIR_P = @MKDIR_P@ MKINSTALLDIRS = @MKINSTALLDIRS@ MSGFMT = @MSGFMT@ MSGFMT_OPTS = @MSGFMT_OPTS@ MSGMERGE = @MSGMERGE@ OBJEXT = @OBJEXT@ OMF_DIR = @OMF_DIR@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PACKAGE_WEBSITE = @PACKAGE_WEBSITE@ PATH_SEPARATOR = @PATH_SEPARATOR@ PKG_CONFIG = @PKG_CONFIG@ POFILES = @POFILES@ POSUB = @POSUB@ PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@ PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@ PRINTING_CFLAGS = @PRINTING_CFLAGS@ PRINTING_LIBS = @PRINTING_LIBS@ RANLIB = @RANLIB@ SED = @SED@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ SORT = @SORT@ STRIP = @STRIP@ TR = @TR@ UNIQ = @UNIQ@ USE_NLS = @USE_NLS@ VERSION = @VERSION@ XGETTEXT = @XGETTEXT@ 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_CXX = @ac_ct_CXX@ 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_alias = @build_alias@ builddir = @builddir@ datadir = @datadir@ datarootdir = @datarootdir@ docdir = @docdir@ dvidir = @dvidir@ exec_prefix = @exec_prefix@ host_alias = @host_alias@ htmldir = @htmldir@ includedir = @includedir@ infodir = @infodir@ install_sh = @install_sh@ libdir = @libdir@ libexecdir = @libexecdir@ localedir = @localedir@ localstatedir = @localstatedir@ 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@ noinst_LIBRARIES = libagavedialogs.a libagavedialogs_a_SOURCES = \ gcs-about-window.cc \ gcs-about-window.h \ gcs-save-chooser.cc \ gcs-save-chooser.h AM_CXXFLAGS = ${AGAVE_CFLAGS} \ -I${top_srcdir}/src AM_CPPFLAGS = -DAGAVE_ICONDIR=\"${AGAVE_ICONDIR}\" \ -DDATADIR=\"${datadir}\" all: all-am .SUFFIXES: .SUFFIXES: .cc .o .obj $(srcdir)/Makefile.in: $(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) --gnu src/dialogs/Makefile'; \ cd $(top_srcdir) && \ $(AUTOMAKE) --gnu src/dialogs/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: $(am__configure_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(ACLOCAL_M4): $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh clean-noinstLIBRARIES: -test -z "$(noinst_LIBRARIES)" || rm -f $(noinst_LIBRARIES) libagavedialogs.a: $(libagavedialogs_a_OBJECTS) $(libagavedialogs_a_DEPENDENCIES) -rm -f libagavedialogs.a $(libagavedialogs_a_AR) libagavedialogs.a $(libagavedialogs_a_OBJECTS) $(libagavedialogs_a_LIBADD) $(RANLIB) libagavedialogs.a mostlyclean-compile: -rm -f *.$(OBJEXT) distclean-compile: -rm -f *.tab.c @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gcs-about-window.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gcs-save-chooser.Po@am__quote@ .cc.o: @am__fastdepCXX_TRUE@ $(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< @am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(CXXCOMPILE) -c -o $@ $< .cc.obj: @am__fastdepCXX_TRUE@ $(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'` @am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(CXXCOMPILE) -c -o $@ `$(CYGPATH_W) '$<'` 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) tags=; \ 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; }; }'`; \ if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \ test -n "$$unique" || unique=$$empty_fix; \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ $$tags $$unique; \ fi ctags: CTAGS CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) tags=; \ 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)$$tags$$unique" \ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ $$tags $$unique GTAGS: here=`$(am__cd) $(top_builddir) && pwd` \ && 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 $(srcdir)/$$file && test $$d != $(srcdir); then \ cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ fi; \ cp -pR $$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 $(LIBRARIES) 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) 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-noinstLIBRARIES 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 info: info-am info-am: install-data-am: install-dvi: install-dvi-am 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 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 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-noinstLIBRARIES ctags distclean distclean-compile \ distclean-generic 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 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: agave-0.4.7/src/dialogs/gcs-about-window.cc0000644000175000017500000001126010760701126015437 00000000000000/******************************************************************************* * PROJECT: GNOME Colorscheme * * AUTHOR: Jonathon Jongsma * * Copyright (c) 2005 Jonathon Jongsma * * License: * 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 * *******************************************************************************/ #include // for strlen() #include #ifdef HAVE_GNOME #include #endif // HAVE_GNOME #include #include "core/log-stream.h" #include "gcs-about-window.h" #include "gcs-i18n.h" namespace gcs { namespace Dialogs { const int AboutWindow::m_logoSize = 150; AboutWindow::AboutWindow(void) { set_name(PACKAGE_NAME); #ifdef HAVE_GNOME set_url_hook(sigc::mem_fun(*this, &AboutWindow::on_link_clicked)); set_website(PACKAGE_WEBSITE); set_website_label(_("Project Website")); #endif // HAVE_GNOME Glib::ustring version(PACKAGE_VERSION); set_version(version); set_copyright("\xC2\xA9 2005-2006 Jonathon Jongsma"); Glib::ustring comments( _("A colorscheme designer for the GNOME desktop")); if (strlen(GIT_REVISION)) { comments.append("\n\n[ " GIT_REVISION " ]"); } set_comments(comments); Glib::ustring license = "This program is free software; you can redistribute it and/or modify\n" "it under the terms of the GNU General Public License as published by\n" "the Free Software Foundation; either version 2 of the License, or\n" "(at your option) any later version.\n\n" "This program is distributed in the hope that it will be useful,\n" "but WITHOUT ANY WARRANTY; without even the implied warranty of\n" "MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n" "GNU General Public License for more details.\n\n" "You should have received a copy of the GNU General Public License\n" "along with this program; if not, write to the \n" "Free Software Foundation, Inc., 59 Temple Place, Suite 330, \n" "Boston, MA 02111-1307 USA\n"; set_license(license); m_artists.push_back("Vinicius Depizzol "); set_artists(m_artists); m_authors.push_back("Jonathon Jongsma "); set_authors(m_authors); // Translators: change this to your name, separate multiple names with \n Glib::ustring translation_credits = _("translator-credits"); set_translator_credits(translation_credits); const Glib::ustring icon_name = "agave"; Glib::RefPtr theme = Gtk::IconTheme::get_default(); if (theme->has_icon(icon_name)) { try { m_logo = theme->load_icon(icon_name, m_logoSize, Gtk::ICON_LOOKUP_USE_BUILTIN); set_logo(m_logo); } catch (const Glib::Error& e) { Glib::ustring message = "Couldn't load Agave logo image from theme. " + e.what(); g_warning(message.c_str()); } } } void AboutWindow::on_link_clicked(Gtk::AboutDialog& dialog, const Glib::ustring& link) { #ifdef HAVE_GNOME gnome_url_show(link.c_str(), 0); #endif // HAVE_GNOME } void AboutWindow::on_response(int response_id) { if (response_id == Gtk::RESPONSE_DELETE_EVENT || response_id == Gtk::RESPONSE_CANCEL || response_id == Gtk::RESPONSE_CLOSE) { hide(); } } } // namespace Dialogs } // namespace gcs agave-0.4.7/src/dialogs/gcs-save-chooser.h0000644000175000017500000000311410760701126015257 00000000000000/******************************************************************************* * PROJECT: GNOME Colorscheme * * AUTHOR: Jonathon Jongsma * * Copyright (c) 2005 Jonathon Jongsma * * License: * 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 * *******************************************************************************/ #ifndef __GCS_SAVE_CHOOSER_H #define __GCS_SAVE_CHOOSER_H #include namespace gcs { namespace Dialogs { class SaveChooser : public Gtk::FileChooserDialog { public: SaveChooser(Glib::ustring title); virtual ~SaveChooser(void) {} private: void update_save_dir(void); Gtk::Button* m_okButton; Gtk::Button* m_cancelButton; }; } // namespace Dialogs } // namespace gcs #endif // __GCS_SAVE_CHOOSER_H agave-0.4.7/src/dialogs/Makefile.am0000644000175000017500000000050610760701126013774 00000000000000noinst_LIBRARIES = libagavedialogs.a libagavedialogs_a_SOURCES = \ gcs-about-window.cc \ gcs-about-window.h \ gcs-save-chooser.cc \ gcs-save-chooser.h AM_CXXFLAGS = ${AGAVE_CFLAGS} \ -I${top_srcdir}/src AM_CPPFLAGS = -DAGAVE_ICONDIR=\"${AGAVE_ICONDIR}\" \ -DDATADIR=\"${datadir}\" agave-0.4.7/src/dialogs/gcs-save-chooser.cc0000644000175000017500000000402010760701126015412 00000000000000/******************************************************************************* * PROJECT: GNOME Colorscheme * * AUTHOR: Jonathon Jongsma * * Copyright (c) 2005 Jonathon Jongsma * * License: * 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 * *******************************************************************************/ #include #include "gcs-save-chooser.h" #include "gcs-conf.h" namespace gcs { namespace Dialogs { SaveChooser::SaveChooser(Glib::ustring title) : Gtk::FileChooserDialog(title, Gtk::FILE_CHOOSER_ACTION_SAVE) { set_current_folder_uri(Conf::get_last_save_dir()); m_cancelButton = add_button(Gtk::Stock::CANCEL, Gtk::RESPONSE_CANCEL); m_okButton = add_button(Gtk::Stock::OK, Gtk::RESPONSE_OK); set_do_overwrite_confirmation(); m_okButton->can_default(); // update the last saved location in gconf whenever the user // presses the "OK" button on the SaveChooser dialog m_okButton->signal_clicked().connect(sigc::mem_fun(*this, &SaveChooser::update_save_dir)); } void SaveChooser::update_save_dir(void) { Conf::set_last_save_dir(get_current_folder_uri()); } } // namespace Dialogs } // namespace gcs agave-0.4.7/src/dialogs/gcs-about-window.h0000644000175000017500000000413110760701126015300 00000000000000/******************************************************************************* * PROJECT: GNOME Colorscheme * * AUTHOR: Jonathon Jongsma * * Copyright (c) 2005 Jonathon Jongsma * * License: * 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 * *******************************************************************************/ #ifndef __GCS_ABOUT_WINDOW_H #define __GCS_ABOUT_WINDOW_H #include #include #include #include namespace gcs { /** The Dialogs namespace contains all dialog windows that are displayed in * the GNOME Colorscheme application */ namespace Dialogs { // Gtk::AboutDialog requires gtkmm 2.6 class AboutWindow : public Gtk::AboutDialog { public: AboutWindow(void); protected: void on_link_clicked(Gtk::AboutDialog& dialog, const Glib::ustring& link); virtual void on_response(int response_id); private: Glib::RefPtr m_logo; static const int m_logoSize; // credits std::vector m_authors; std::vector m_artists; std::vector m_documenters; // not used yet. }; } // namespace Dialogs } // namespace gcs #endif // __GCS_ABOUT_WINDOW_H agave-0.4.7/src/widgets/0000777000175000017500000000000011224443301012041 500000000000000agave-0.4.7/src/widgets/palette-selector.cc0000644000175000017500000001350710663715205015561 00000000000000/******************************************************************************* * PROJECT: Agave * * AUTHOR: Jonathon Jongsma * * Copyright (c) 2006 Jonathon Jongsma * * License: * 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 * *******************************************************************************/ #include #include #include #include #include "palette-selector.h" #include "gcs-conf.h" #include "core/log-stream.h" namespace gcs { namespace Widgets { PaletteSelector::PaletteSelector(const vector& search_dirs) : m_refListStore(Gtk::ListStore::create(m_columns)) { set_model(m_refListStore); pack_start(m_columns.m_columnName); // only display name, not path LOG("Looking for installed palette files..."); typedef std::vector filelist_t; filelist_t files; for (vector::const_iterator dir_iter = search_dirs.begin(); dir_iter != search_dirs.end(); ++dir_iter) { // read the directory to see what palette files are there try { LOG("Looking for palettes in " << *dir_iter); Glib::Dir dir(*dir_iter); // there is no path information -- we need to prepend the path // information to each file for (Glib::Dir::iterator i = dir.begin(); i != dir.end(); ++i) { LOG("Found " << *i); files.push_back(*dir_iter + "/" + *i); } } catch (Glib::Error& e) { g_warning("Can't open palette directory: %s", (*dir_iter).c_str()); } } // now check to see if the files are valid palette files for (filelist_t::iterator iter = files.begin(); iter != files.end(); ++iter) { std::string filename = *iter; std::ifstream infile(filename.c_str()); if (infile.is_open()) { try { LOG("Checking " << filename); shared_ptr palette(new pp::Palette()); palette->parse(infile); // add valid files to the ComboBox Gtk::TreeModel::iterator treeiter = m_refListStore->append(); (*treeiter)[m_columns.m_columnName] = palette->name(); (*treeiter)[m_columns.m_columnFile] = filename; (*treeiter)[m_columns.m_columnPalette] = palette; LOG("Found palette file: " << filename); } catch(pp::ParseError& e) { //it wasn't a valid palette, move on LOG("Invalid palette file: " << filename); } } } // default to selecting the first palette in the list (if there are // any in the list) Gtk::TreeModel::iterator first_palette = m_refListStore->children().begin(); if (first_palette != m_refListStore->children().end()) { set_active(first_palette); } } PaletteSelector::~PaletteSelector() { } shared_ptr PaletteSelector::get_palette(void) const { Gtk::TreeModel::iterator active_iter = get_active(); if (active_iter) { return active_iter->get_value(m_columns.m_columnPalette); } else { return shared_ptr(); } } std::string PaletteSelector::get_palette_file(void) const { return get_active()->get_value(m_columns.m_columnFile); } // returns a boolean value specifying whether the currently active // selection was changed or not bool PaletteSelector::set_palette_file(const std::string& filename) { for (Gtk::TreeModel::iterator iter = m_refListStore->children().begin(); iter != m_refListStore->children().end(); ++iter) { LOG (iter->get_value(m_columns.m_columnFile) << " == " << filename << "?") if (iter->get_value(m_columns.m_columnFile) == filename) { if (iter != get_active()) { set_active(iter); return true; // palette found, requires update } LOG("Palette file already selected"); return false; // palette already set, no need for update } } g_warning("Palette not found: %s", filename.c_str()); return false; // palette was not found } } // namespace Widgets } // namespace gcs agave-0.4.7/src/widgets/customtreemodel.h0000644000175000017500000002374610760701126015363 00000000000000/******************************************************************************* * PROJECT: customtreemodel * * AUTHOR: Jonathon Jongsma * * Copyright (c) 2006 Jonathon Jongsma * * License: * 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 * *******************************************************************************/ #ifndef __CUSTOMTREEMODEL_H #define __CUSTOMTREEMODEL_H #include #include #include #include #include #include #include #include /** This is an attempt to make a generic custom tree model. T should be a * container type such as std::vector or std::list (or something that * presents the same interface * * You must override the following functions * \li get_n_columns_vfunc(): to define the number of columns in the model * \li get_column_type_vfunc(): define the type of the specified column * \li get_value_vfunc(): get the value for the specified iter and column */ template class ContainerTreeModel: public Gtk::TreeModel, public Gtk::TreeDragSource, public Gtk::TreeDragDest, public Gtk::TreeSortable { public: typedef Gtk::TreeModel::iterator iterator; //static Glib::RefPtr create(T& container); protected: ContainerTreeModel(T& container); virtual Gtk::TreeModelFlags get_flags_vfunc(void) const; //virtual int get_n_columns_vfunc(void) const; //virtual GType get_column_type_vfunc(int index) const; //virtual void get_value_vfunc(const Gtk::TreeModel::iterator& iter, int column, Glib::ValueBase& value) const; virtual bool iter_next_vfunc(const iterator& iter, iterator& iter_next) const; virtual bool iter_children_vfunc(const iterator& parent, iterator& iter) const; virtual bool iter_has_child_vfunc(const iterator& iter) const; virtual int iter_n_children_vfunc(const iterator& iter) const; virtual int iter_n_root_children_vfunc(void) const; virtual bool iter_nth_child_vfunc(const iterator& parent, int n, iterator& iter) const; virtual bool iter_nth_root_child_vfunc(int n, iterator& iter) const; virtual bool iter_parent_vfunc(const iterator& child, iterator& iter) const; virtual Gtk::TreeModel::Path get_path_vfunc(const iterator& iter) const; virtual bool get_iter_vfunc(const Gtk::TreeModel::Path& path, iterator& iter) const; virtual bool iter_is_valid(const iterator& iter) const; // virtual functions from Gtk::TreeDragSource virtual bool row_draggable_vfunc(const Gtk::TreeModel::Path& path) const; // virtual functions from Gtk::TreeDragDest virtual bool row_drop_possible_vfunc(const Gtk::TreeModel::Path& dest, const Gtk::SelectionData& selection_data) const; // virtual functions from Gtk::TreeSortable Gtk::TreeModel::ColumnRecord m_columnRecord; T* m_pContainer; int m_stamp; struct GlueItem { GlueItem(const typename T::iterator& i) : iter(i) { } typename T::iterator iter; }; struct GlueList { typedef std::vector gluelist_t; ~GlueList() { for (typename gluelist_t::iterator iter = m_items.begin(); iter != m_items.end(); ++iter) { delete *iter; } } gluelist_t m_items; }; mutable GlueList m_glueList; }; template ContainerTreeModel::ContainerTreeModel(T& container) : //Glib::ObjectBase(typeid(ContainerTreeModel< T >)), // register custom GType //Glib::Object(), // the GType is actually registered here m_pContainer(&container), m_stamp(1) { // some GType stuff to take care of -- I don't completely understand it // -- borrowed from the gtkmm custom treemodel example //GType gtype = G_OBJECT_TYPE(gobj()); // the custom GType created in the Object constructor //Gtk::TreeModel::add_interface(gtype); } template Gtk::TreeModelFlags ContainerTreeModel::get_flags_vfunc(void) const { // no flags set return Gtk::TreeModelFlags(0); } template bool ContainerTreeModel::iter_next_vfunc(const iterator& iter, iterator& iter_next) const { if (iter_is_valid(iter)) { iter_next = iterator(); iter_next.set_stamp(m_stamp); // abuse the user_data field of the underlying GtkTreeIter to store // a pointer to an iterator of the underlying container GlueItem* pItem = (GlueItem*) (iter.gobj()->user_data); typename T::iterator stl_iter = pItem->iter; // increment the underlying iterator ++stl_iter; // check whether the next iterator is between the beginning and end of // the container if (m_pContainer->begin() <= stl_iter && stl_iter < m_pContainer->end()) { // store the next row number in the user_data field of the next // iterator GlueItem* pItem = new GlueItem(stl_iter); iter_next.gobj()->user_data = (void*) pItem; m_glueList.m_items.push_back(pItem); return true; // next row ok } else { // row is beyond the size of the container, so we'll return // false when we drop out the end. } } else { iter_next = iterator(); // default iterator is invalid } return false; // no next row } template bool ContainerTreeModel::iter_children_vfunc(const iterator& parent, iterator& iter) const { // invalid by default. This treemodel has no children so always return // an invalid iterator iter = iterator(); return false; } template bool ContainerTreeModel::iter_has_child_vfunc(const iterator& iter) const { // this treemodel has no children return false; } template int ContainerTreeModel::iter_n_children_vfunc(const iterator& iter) const { // no children in this model return 0; } template int ContainerTreeModel::iter_n_root_children_vfunc(void) const { // all rows are root children return m_pContainer->size(); } template bool ContainerTreeModel::iter_nth_child_vfunc(const iterator& parent, int n, iterator& iter) const { iter = iterator(); // invalid by default -- we have no children return false; } template bool ContainerTreeModel::iter_nth_root_child_vfunc(int n, iterator& iter) const { iter = iterator(); // invalid by default. typename T::iterator stl_iter = m_pContainer->begin(); std::advance(stl_iter, n); if (stl_iter < m_pContainer->end()) { iter.set_stamp(m_stamp); // again, abuse the user_data field to store the row number GlueItem* pItem = new GlueItem(stl_iter); iter.gobj()->user_data = (void*) pItem; m_glueList.m_items.push_back(pItem); return true; } return false; } template bool ContainerTreeModel::iter_parent_vfunc(const iterator& child, iterator& iter) const { // since there are no children in this model, there are also no parents iter = iterator(); // invalid by default return false; } template Gtk::TreeModel::Path ContainerTreeModel::get_path_vfunc(const iterator& iter) const { Gtk::TreeModel::Path path; GlueItem* pItem = (GlueItem*) iter->gobj()->user_data; path.push_back(std::distance(m_pContainer->begin(), pItem->iter)); return path; } template bool ContainerTreeModel::get_iter_vfunc(const Gtk::TreeModel::Path& path, iterator& iter) const { iter = iterator(); // path size must be exactly one. if it's zero, there's no path, and if // it's greater than one, it's asking for a child node, which doesn't // exist in this model if (path.size() != 1) { return false; } else if (path[0] < static_cast(m_pContainer->size())) { iter.set_stamp(m_stamp); // again, abuse the user_data field... typename T::iterator stl_iter = m_pContainer->begin(); std::advance(stl_iter, path[0]); GlueItem* pItem = new GlueItem(stl_iter); iter.gobj()->user_data = (void*) pItem; return true; } return false; } template bool ContainerTreeModel::iter_is_valid(const iterator& iter) const { if (iter.get_stamp() != m_stamp) { return false; } else { // TODO: not sure why we do this but it's done in the gtkmm // example... return Gtk::TreeModel::iter_is_valid(iter); } } template bool ContainerTreeModel::row_draggable_vfunc(const Gtk::TreeModel::Path& path) const { Gtk::TreeIter iter; get_iter_vfunc(path, iter); if (iter_is_valid(iter)) { return true; } return false; } template bool ContainerTreeModel::row_drop_possible_vfunc(const Gtk::TreeModel::Path& dest, const Gtk::SelectionData& selection_data) const { Gtk::TreeIter iter; get_iter_vfunc(dest, iter); if (iter_is_valid(iter)) { return true; } return false; } #endif // __CUSTOMTREEMODEL_H agave-0.4.7/src/widgets/Makefile.in0000644000175000017500000003632511224442713014041 00000000000000# Makefile.in generated by automake 1.10.2 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # 2003, 2004, 2005, 2006, 2007, 2008 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@ pkglibdir = $(libdir)/@PACKAGE@ pkgincludedir = $(includedir)/@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 = : subdir = src/widgets DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \ $(top_srcdir)/configure.ac 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 = LIBRARIES = $(noinst_LIBRARIES) AR = ar ARFLAGS = cru libagavewidgets_a_AR = $(AR) $(ARFLAGS) libagavewidgets_a_LIBADD = am__objects_1 = am__objects_2 = gcs-colorswatch.$(OBJEXT) gcs-textswatch.$(OBJEXT) \ gcs-schemebox.$(OBJEXT) gcs-bookmarklist.$(OBJEXT) \ gcs-paletteview.$(OBJEXT) gcs-schemeselector.$(OBJEXT) \ gcs-cellrendererswatch.$(OBJEXT) palette-selector.$(OBJEXT) \ palettetreemodel.$(OBJEXT) am_libagavewidgets_a_OBJECTS = $(am__objects_1) $(am__objects_2) libagavewidgets_a_OBJECTS = $(am_libagavewidgets_a_OBJECTS) DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir) depcomp = $(SHELL) $(top_srcdir)/depcomp am__depfiles_maybe = depfiles CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) CXXLD = $(CXX) CXXLINK = $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(AM_LDFLAGS) $(LDFLAGS) \ -o $@ COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) CCLD = $(CC) LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ SOURCES = $(libagavewidgets_a_SOURCES) DIST_SOURCES = $(libagavewidgets_a_SOURCES) ETAGS = etags CTAGS = ctags DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ AGAVE_CFLAGS = @AGAVE_CFLAGS@ AGAVE_ICONDIR = @AGAVE_ICONDIR@ AGAVE_LIBS = @AGAVE_LIBS@ AGAVE_LOCALEDIR = @AGAVE_LOCALEDIR@ AGAVE_PALETTEDIR = @AGAVE_PALETTEDIR@ AGAVE_UIDIR = @AGAVE_UIDIR@ ALL_LINGUAS = @ALL_LINGUAS@ AMTAR = @AMTAR@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ AWK = @AWK@ CAIRO_RING_CFLAGS = @CAIRO_RING_CFLAGS@ CAIRO_RING_LIBS = @CAIRO_RING_LIBS@ CATALOGS = @CATALOGS@ CATOBJEXT = @CATOBJEXT@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPPFLAGS = @CPPFLAGS@ CPPUNIT_CFLAGS = @CPPUNIT_CFLAGS@ CPPUNIT_CONFIG = @CPPUNIT_CONFIG@ CPPUNIT_LIBS = @CPPUNIT_LIBS@ CXX = @CXX@ CXXCPP = @CXXCPP@ CXXDEPMODE = @CXXDEPMODE@ CXXFLAGS = @CXXFLAGS@ CYGPATH_W = @CYGPATH_W@ DATADIRNAME = @DATADIRNAME@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ DISTCHECK_CONFIGURE_FLAGS = @DISTCHECK_CONFIGURE_FLAGS@ DOC_USER_FORMATS = @DOC_USER_FORMATS@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ GCONFMM_CFLAGS = @GCONFMM_CFLAGS@ GCONFMM_LIBS = @GCONFMM_LIBS@ GCONFTOOL = @GCONFTOOL@ GCONF_SCHEMA_CONFIG_SOURCE = @GCONF_SCHEMA_CONFIG_SOURCE@ GCONF_SCHEMA_FILE_DIR = @GCONF_SCHEMA_FILE_DIR@ GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ GIT_PATH = @GIT_PATH@ GMOFILES = @GMOFILES@ GMSGFMT = @GMSGFMT@ GNOME_CFLAGS = @GNOME_CFLAGS@ GNOME_LIBS = @GNOME_LIBS@ GREP = @GREP@ GTKMM_CFLAGS = @GTKMM_CFLAGS@ GTKMM_LIBS = @GTKMM_LIBS@ HELP_DIR = @HELP_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@ LDFLAGS = @LDFLAGS@ LIBGLADEMM_CFLAGS = @LIBGLADEMM_CFLAGS@ LIBGLADEMM_LIBS = @LIBGLADEMM_LIBS@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LN_S = @LN_S@ LTLIBOBJS = @LTLIBOBJS@ MAKEINFO = @MAKEINFO@ MKDIR_P = @MKDIR_P@ MKINSTALLDIRS = @MKINSTALLDIRS@ MSGFMT = @MSGFMT@ MSGFMT_OPTS = @MSGFMT_OPTS@ MSGMERGE = @MSGMERGE@ OBJEXT = @OBJEXT@ OMF_DIR = @OMF_DIR@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PACKAGE_WEBSITE = @PACKAGE_WEBSITE@ PATH_SEPARATOR = @PATH_SEPARATOR@ PKG_CONFIG = @PKG_CONFIG@ POFILES = @POFILES@ POSUB = @POSUB@ PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@ PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@ PRINTING_CFLAGS = @PRINTING_CFLAGS@ PRINTING_LIBS = @PRINTING_LIBS@ RANLIB = @RANLIB@ SED = @SED@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ SORT = @SORT@ STRIP = @STRIP@ TR = @TR@ UNIQ = @UNIQ@ USE_NLS = @USE_NLS@ VERSION = @VERSION@ XGETTEXT = @XGETTEXT@ 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_CXX = @ac_ct_CXX@ 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_alias = @build_alias@ builddir = @builddir@ datadir = @datadir@ datarootdir = @datarootdir@ docdir = @docdir@ dvidir = @dvidir@ exec_prefix = @exec_prefix@ host_alias = @host_alias@ htmldir = @htmldir@ includedir = @includedir@ infodir = @infodir@ install_sh = @install_sh@ libdir = @libdir@ libexecdir = @libexecdir@ localedir = @localedir@ localstatedir = @localstatedir@ 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@ sources_h = gcs-colorswatch.h \ gcs-textswatch.h \ gcs-schemebox.h \ gcs-schemeselector.h \ gcs-bookmarklist.h \ gcs-cellrendererswatch.h \ gcs-paletteview.h \ palette-selector.h \ palettetreemodel.h \ customtreemodel.h sources_c = gcs-colorswatch.cc \ gcs-textswatch.cc \ gcs-schemebox.cc \ gcs-bookmarklist.cc \ gcs-paletteview.cc \ gcs-schemeselector.cc \ gcs-cellrendererswatch.cc \ palette-selector.cc \ palettetreemodel.cc noinst_LIBRARIES = libagavewidgets.a libagavewidgets_a_SOURCES = ${sources_h} ${sources_c} AM_CPPFLAGS = -DAGAVE_UIDIR=\"${AGAVE_UIDIR}\" \ -DAGAVE_PALETTEDIR=\"${AGAVE_PALETTEDIR}\" \ -I${top_srcdir}/src AM_CXXFLAGS = ${AGAVE_CFLAGS} all: all-am .SUFFIXES: .SUFFIXES: .cc .o .obj $(srcdir)/Makefile.in: $(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) --gnu src/widgets/Makefile'; \ cd $(top_srcdir) && \ $(AUTOMAKE) --gnu src/widgets/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: $(am__configure_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(ACLOCAL_M4): $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh clean-noinstLIBRARIES: -test -z "$(noinst_LIBRARIES)" || rm -f $(noinst_LIBRARIES) libagavewidgets.a: $(libagavewidgets_a_OBJECTS) $(libagavewidgets_a_DEPENDENCIES) -rm -f libagavewidgets.a $(libagavewidgets_a_AR) libagavewidgets.a $(libagavewidgets_a_OBJECTS) $(libagavewidgets_a_LIBADD) $(RANLIB) libagavewidgets.a mostlyclean-compile: -rm -f *.$(OBJEXT) distclean-compile: -rm -f *.tab.c @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gcs-bookmarklist.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gcs-cellrendererswatch.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gcs-colorswatch.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gcs-paletteview.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gcs-schemebox.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gcs-schemeselector.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gcs-textswatch.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/palette-selector.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/palettetreemodel.Po@am__quote@ .cc.o: @am__fastdepCXX_TRUE@ $(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< @am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(CXXCOMPILE) -c -o $@ $< .cc.obj: @am__fastdepCXX_TRUE@ $(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'` @am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(CXXCOMPILE) -c -o $@ `$(CYGPATH_W) '$<'` 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) tags=; \ 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; }; }'`; \ if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \ test -n "$$unique" || unique=$$empty_fix; \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ $$tags $$unique; \ fi ctags: CTAGS CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) tags=; \ 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)$$tags$$unique" \ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ $$tags $$unique GTAGS: here=`$(am__cd) $(top_builddir) && pwd` \ && 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 $(srcdir)/$$file && test $$d != $(srcdir); then \ cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ fi; \ cp -pR $$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 $(LIBRARIES) 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) 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-noinstLIBRARIES 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 info: info-am info-am: install-data-am: install-dvi: install-dvi-am 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 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 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-noinstLIBRARIES ctags distclean distclean-compile \ distclean-generic 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 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: agave-0.4.7/src/widgets/gcs-colorswatch.cc0000644000175000017500000002320310760701126015374 00000000000000/******************************************************************************* * PROJECT: GNOME Colorscheme * * AUTHOR: Jonathon Jongsma * * Copyright (c) 2005 Jonathon Jongsma * * License: * 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 * *******************************************************************************/ #include // for list of drag targets #include // for numeric_limits<>::max() #include #include #include #include #include "gcs-colorswatch.h" #include "core/log-stream.h" #include "gcs-i18n.h" namespace gcs { static const unsigned int RED_BYTE_POS = 3; static const unsigned int GREEN_BYTE_POS = 2; static const unsigned int BLUE_BYTE_POS = 1; static void cairo_rounded_rectangle(cairo_t* cr, double x, double y, double width, double height, double radius) { //if there's no rounding, just use normal cairo_rectangle if (radius == 0.0) { cairo_rectangle(cr, x, y, width, height); } else { // top left corner cairo_arc(cr, x + radius, y + radius, radius, -M_PI, -M_PI / 2.0); cairo_line_to(cr, x + width - radius, y); // top right corner cairo_arc(cr, x + width - radius, y + radius, radius, -M_PI / 2.0, 0.0); cairo_line_to(cr, x + width, y + height - radius); // bottom right corner cairo_arc(cr, x + width - radius, y + height - radius, radius, 0.0, M_PI / 2.0); cairo_line_to(cr, x + radius, y + height); // bottom left corner cairo_arc(cr, x + radius, y + height - radius, radius, M_PI / 2.0, -M_PI); cairo_close_path(cr); } } namespace Widgets { ColorPtr ColorSwatch::m_white = gcs::Color::create("#FFFFFF"); ColorPtr ColorSwatch::m_black = gcs::Color::create("#000000"); Gtk::Tooltips* ColorSwatch::pTooltips = NULL; int ColorSwatch::tooltip_refs = 0; ColorSwatch::ColorSwatch(ColorPtr bg) : m_background(bg), m_minSize(12), m_borderWidth(0), m_cornerRadius(0), m_swatchPadding(6) { // if this is the first ColorSwatch, create a tooltip object and // increment the reference value. The Tooltip object will be // deleted when the reference count reaches 0` if (!tooltip_refs++) { pTooltips = new Gtk::Tooltips(); } // get_window() would return 0 because the Gdk::Window has not yet been // realized So we can only allocate the colors here - the rest will // happen in on_realize(). m_colormap = get_default_colormap(); m_colormap->alloc_color(m_black->gdk()); m_colormap->alloc_color(m_white->gdk()); // Targets for drag and drop: std::list listTargets; listTargets.push_back(Gtk::TargetEntry("application/x-color")); listTargets.push_back(Gtk::TargetEntry("UTF8_STRING")); listTargets.push_back(Gtk::TargetEntry("text/plain")); // set the swatch as a drag source drag_source_set(listTargets); signal_drag_data_get().connect(sigc::mem_fun(*this, &ColorSwatch::on_drag_data_get)); signal_drag_begin().connect(sigc::mem_fun(*this, &ColorSwatch::set_color_icon)); } ColorSwatch::ColorSwatch(const ColorSwatch& c) : m_background(c.m_background) { m_colormap = c.m_colormap; } ColorSwatch::~ColorSwatch(void) { // clear the tooltip that is associated with this swatch pTooltips->unset_tip(*this); // delete the tooltips object if there are no more colorswatch // objects that are using it if (!(--tooltip_refs)) { delete pTooltips; } } void ColorSwatch::on_realize(void) { // We need to call the base on_realize() Gtk::DrawingArea::on_realize(); // Now we can allocate any additional resources we need Glib::RefPtr window = get_window(); // set the size of the swatch. set_size_request(m_minSize, m_minSize); add_events(Gdk::BUTTON_PRESS_MASK | Gdk::ENTER_NOTIFY_MASK | Gdk::LEAVE_NOTIFY_MASK); pTooltips->set_tip(*this, m_background->get_hexstring()); } bool ColorSwatch::on_expose_event(GdkEventExpose *e) { Glib::RefPtr win = get_window(); // FIXME: use cairomm eventually cairo_t* cr = gdk_cairo_create(win->gobj()); cairo_rectangle(cr, e->area.x, e->area.y, e->area.width, e->area.height); cairo_clip(cr); cairo_save(cr); cairo_set_source_rgb(cr, m_background->get_red_p(), m_background->get_green_p(), m_background->get_blue_p()); cairo_rounded_rectangle(cr, static_cast(m_borderWidth) / 2.0f, static_cast(m_borderWidth) / 2.0f, get_width() - static_cast(m_borderWidth), get_height() - static_cast(m_borderWidth), m_cornerRadius); cairo_fill_preserve(cr); cairo_restore(cr); if (m_borderWidth > 0) { //cairo_set_source_rgba(cr, 0.0, 0.0, 0.0, 0.4); cairo_set_line_width(cr, static_cast(m_borderWidth)); cairo_stroke(cr); } cairo_destroy(cr); return true; } void ColorSwatch::set_color(ColorPtr bg) { m_background = bg; queue_draw(); } void ColorSwatch::set_border_width(gint width) { m_borderWidth = width; } bool ColorSwatch::on_button_press_event(GdkEventButton *e) { //Then do our custom stuff: if (e->type == GDK_BUTTON_PRESS) { // User pressed left mouse button if (e->button == 1) { // let listeners know that we've been selected m_signal_selected.emit(); } } return false; } void ColorSwatch::on_drag_data_get(const Glib::RefPtr& context, Gtk::SelectionData& selection_data, guint info, guint time) { if (selection_data.get_target() == "application/x-color") { /* type: application/x-color * format::16 * data[0]: red * data[1]: green * data[2]: blue * data[3]: opacity */ guint16 color[4]; color[0] = m_background->gdk().get_red(); color[1] = m_background->gdk().get_green(); color[2] = m_background->gdk().get_blue(); color[3] = std::numeric_limits::max(); selection_data.set(selection_data.get_target(), 16, reinterpret_cast(&color), sizeof(color)); } else if (selection_data.targets_include_text()) { selection_data.set_text(m_background->get_hexstring()); } } void ColorSwatch::set_color_icon(const Glib::RefPtr& context) { using std::numeric_limits; const int bits_per_sample = 8; const int w = 32; const int h = 32; Glib::RefPtr pixbuf = Gdk::Pixbuf::create(Gdk::COLORSPACE_RGB, false, bits_per_sample, w, h); Gdk::Color c = m_background->gdk(); guint32 pixel = 0; // populate the 'pixel' value from the red, green, and blue color // values *(reinterpret_cast(&pixel) + RED_BYTE_POS) = (guchar) (((double) c.get_red() / (double) numeric_limits::max()) * numeric_limits::max()); *(reinterpret_cast(&pixel) + GREEN_BYTE_POS) = (guchar) (((double) c.get_green() / (double) numeric_limits::max()) * numeric_limits::max()); *(reinterpret_cast(&pixel) + BLUE_BYTE_POS) = (guchar) (((double) c.get_blue() / (double) numeric_limits::max()) * numeric_limits::max()); pixbuf->fill(pixel); drag_source_set_icon(pixbuf); } } // namespace Widgets } // namespace gcs agave-0.4.7/src/widgets/gcs-paletteview.h0000644000175000017500000000657310760701126015252 00000000000000/******************************************************************************* * PROJECT: GNOME Colorscheme * * AUTHOR: Jonathon Jongsma * * Copyright (c) 2005 Jonathon Jongsma * * License: * 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 * *******************************************************************************/ #ifndef __GCS_PALETTEVIEW_H #define __GCS_PALETTEVIEW_H #include #include #include #include #include #include #include #include #include #include "core/gcs-types.h" #include "core/gcs-color.h" #include "paletteparser/palette.h" #include "palette-selector.h" using namespace Gnome; namespace gcs { class PaletteTreeModel; namespace Widgets { class PaletteView : public Gtk::Expander { public: PaletteView(GtkExpander* cobject, Glib::RefPtr& glade); //~PaletteView(); bool set_from_file(const Glib::ustring& fname); sigc::signal& signal_color_selected() { return m_signal_color_selected; } #ifdef UNIT_TEST friend class PaletteTests; #endif protected: bool on_color_selected(gint index); void display_palette(const shared_ptr& palette); /** triggered whenever the mouse pointer enters the palette */ bool on_enter_swatch(GdkEventCrossing* event); /** triggered whenever the mouse pointer leaves the palette */ bool on_leave_swatch(GdkEventCrossing* event); /** triggered when the combobox selection has changed */ void on_palette_file_changed(void); bool on_eventbox_expose(GdkEventExpose* e); private: Gtk::Table m_table; Gtk::EventBox m_eventBox; Gtk::ScrolledWindow m_scrolledWindow; sigc::signal m_signal_color_selected; Glib::RefPtr m_refPaletteModel; shared_ptr m_palette; shared_ptr m_paletteSelector; Gtk::VBox m_vbox; static const gint m_minCellSize; static const gint m_minPaletteWidth; static const gint m_maxVisibleRows; static const gint m_maxPaletteHeight; guint m_rows; }; } // namespace Widgets } // namespace gcs #endif // __GCS_PALETTEVIEW_H agave-0.4.7/src/widgets/gcs-colorswatch.h0000644000175000017500000001406210663715205015246 00000000000000/******************************************************************************* * PROJECT: GNOME Colorscheme * * AUTHOR: Jonathon Jongsma * * Copyright (c) 2005 Jonathon Jongsma * * License: * 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 * *******************************************************************************/ #ifndef __GCS_COLORSWATCH_WIDGET_H #define __GCS_COLORSWATCH_WIDGET_H #include // for std::auto_ptr #include #include #include #include #include "core/gcs-types.h" #include "core/gcs-color.h" namespace gcs { namespace Widgets { /** A widget which displays a colorswatch * * The ColorSwatch is a rectangular box with its background set to the * color we want to display. It also displays some text describing the * color being displayed. * * The ColorSwatch widget is modeled on the example found at * http://www.gtkmm.org/docs/gtkmm-2.4/docs/tutorial/html/ch14s03.html */ class ColorSwatch : public Gtk::DrawingArea { public: /** Constructor with background and foreground colors specified in * RGB format */ ColorSwatch(ColorPtr bg); /** Copy constructor */ ColorSwatch(const ColorSwatch& c); virtual ~ColorSwatch(void); /** Sets the width of the black border around the colorswatch */ void set_border_width(int width); /** Sets the size of the swatch in pixels */ void set_min_size(int sz) { m_minSize = sz; set_size_request(sz, sz); } /** Sets the background color of the colorswatch. * * This would perhaps more appropriately be named setColor, * since its the main color that is being displayed */ virtual void set_color(ColorPtr bg); ColorPtr get_color() { return m_background; } /** A signal will be emitted when the user clicks the "Use * Color" menu item on the right-click context menu for a * particular colorswatch. Another widget can connect to this * and take actions based on it. */ sigc::signal& signal_selected(void) { return m_signal_selected; } /** An auto_ptr to a Gdk::Color */ typedef std::auto_ptr ref_gdkcolor_type; protected: /** Initialize stuff when the object is realized. Before * realization (i.e. in the constructor), we can't call * get_window() or anything because the Gdk::Window doesn't yet * exist */ virtual void on_realize(void); /* Actions to take whenever the drawing area needs to be redrawn * (i.e. after return from being minimized or being brought in * front of another window. This is where all of the drawing takes * place. */ virtual bool on_expose_event(GdkEventExpose *e); /** Handles the action of pressing a mouse button on a * ColorSwatch object. Will pop up a context menu if one is * defined, else will do nothing */ virtual bool on_button_press_event(GdkEventButton *e); virtual void on_drag_data_get(const Glib::RefPtr& context, Gtk::SelectionData& selection_data, guint info, guint time); void set_color_icon(const Glib::RefPtr& context); /** The colormap of the ColorSwatch */ Glib::RefPtr m_colormap; /** The background color of the ColorSwatch */ ColorPtr m_background; sigc::signal m_signal_selected; /** The minimum size that a swatch is allowed to get. This is * used for both the height and the width of the swatch */ int m_minSize; /** The width of the line used to draw the border around the * swatch */ int m_borderWidth; int m_cornerRadius; /** The padding around the edge of the swatch. If several * swatches are next to eachother, this will add some space * between them so they're not stuck right together */ int m_swatchPadding; /** The color white will be used to draw text when the * background color is dark */ static ColorPtr m_white; /** The color black will be used to draw text when the * background color is light */ static ColorPtr m_black; static Gtk::Tooltips* pTooltips; static int tooltip_refs; }; } // namespace Widgets } // namespace gcs #endif // __GCS_COLORSWATCH_WIDGET_H agave-0.4.7/src/widgets/gcs-schemebox.cc0000644000175000017500000000776310760701126015036 00000000000000/******************************************************************************* * PROJECT: GNOME Colorscheme * * AUTHOR: Jonathon Jongsma * * Copyright (c) 2005 Jonathon Jongsma * * License: * 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 * *******************************************************************************/ #include #include "core/log-stream.h" #include "gcs-schemebox.h" #include "gcs-conf.h" namespace gcs { namespace Widgets { SchemeBox::SchemeBox(void) : m_pScheme(new Scheme(Color::create("#FF0000"), SCHEME_COMPLEMENTS)) { set_border_width(Conf::UI_SPACING_SMALL); set_spacing(Conf::UI_SPACING_SMALL); set_size_request(200, 150); init(); } SchemeBox::SchemeBox(Scheme schm) { SchemeBox::SchemeBox(); set_scheme(schm); } SchemeBox::~SchemeBox(void) { children().clear(); } void SchemeBox::set_scheme(Scheme schm) { hide_all(); m_pScheme.reset(new Scheme(schm)); redraw(); } void SchemeBox::set_color(ColorPtr clr) { hide_all(); m_pScheme->set_color(clr); redraw(); } void SchemeBox::set_scheme_type(tSchemeType t) { hide_all(); m_pScheme->set_scheme_type(t); redraw(); } void SchemeBox::init(void) { TextSwatch *pSwatch = 0; for (gint i = 0; i < NUM_SWATCHES; i++) { ColorPtr pColor = Color::create("#FF0000"); pSwatch = Gtk::manage(new TextSwatch(pColor)); (*(m_pSwatches + i)) = pSwatch; pack_start(*pSwatch, true, true, 0); pSwatch->signal_selected().connect( sigc::bind(sigc::mem_fun(*this, &SchemeBox::on_color_selected), i)); } } void SchemeBox::redraw(void) { show(); if (m_pScheme.get() != NULL) { Scheme::iterator iColor; gint i; for (iColor = m_pScheme->begin(), i = 0; iColor != m_pScheme->end(); iColor++, i++) { LOG("Swatch Color: " << *iColor); if (*iColor == m_pScheme->get_color()) { // this is the color that the scheme is based on, so // let's emphasize it with a thicker border m_pSwatches[i]->set_border_width(3); } else { m_pSwatches[i]->set_border_width(1); } // FIXME: is this ok? m_pSwatches[i]->set_color(*iColor); m_pSwatches[i]->show(); } } } bool SchemeBox::on_color_selected(gint swatch_id) { signal_color_selected().emit(m_pSwatches[swatch_id]->get_color()); LOG("SchemeBox::on_color_selected"); return true; } } // namespace Widgets } // namespace gcs agave-0.4.7/src/widgets/gcs-bookmarklist.cc0000644000175000017500000004015511107717145015556 00000000000000/******************************************************************************* * PROJECT: GNOME Colorscheme * * AUTHOR: Jonathon Jongsma * * Copyright (c) 2005 Jonathon Jongsma * * License: * 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 * *******************************************************************************/ #include #include #include #include #include #include #include #include #include #include "gcs-bookmarklist.h" #include "palettetreemodel.h" #include "gcs-cellrendererswatch.h" #include "core/log-stream.h" #include "gcs-util.h" #include "gcs-i18n.h" #include "gcs-conf.h" namespace gcs { namespace Widgets { BookmarkList::BookmarkList() : m_file(Conf::get_favorites_file()), m_refUIManager(Gtk::UIManager::create()) { LOG("Populating favorites: " << m_file); std::ifstream file(m_file.c_str()); try { m_palette.parse(file); } catch (const pp::ParseError& e) { g_warning("%s: %s", m_file.c_str(), e.what()); } m_refPaletteModel = PaletteTreeModel::create(m_palette); set_model(m_refPaletteModel); Glib::RefPtr refSel = get_selection(); refSel->set_mode(Gtk::SELECTION_MULTIPLE); // display column headers set_headers_visible(true); // Create a instance of a custom CellRenderer for drawing color // swatches CellRendererSwatch *const pRenderer = Gtk::manage(new CellRendererSwatch); // Create a new Column named "Favorites" Gtk::TreeViewColumn *const pColumn = Gtk::manage(new Gtk::TreeViewColumn(_("Favorites"))); // Pack the custom swatch renderer into the column pColumn->pack_start(*pRenderer, false); // associate the 'color' property of the custom renderer with the // value of m_columns.m_colColor so that the cell renderer can color // each swatch according to the bookmarked item pColumn->add_attribute(pRenderer->property_color(), m_refPaletteModel->get_color_column()); // add a the model text column to the TreeView column -- This packs // both the swatch and the hexstring into the same treeview column pColumn->pack_start(m_refPaletteModel->get_text_column(), false); // append the column to the TreeView append_column(*pColumn); // FIXME: // set up a dummy hidden column with nothing in it and assign it as // the expander column. This is a nasty workaround so that the // first visible column doesn't have a big space at the beginning Gtk::TreeViewColumn dummy_column; dummy_column.set_visible(false); append_column(dummy_column); set_expander_column(dummy_column); set_reorderable(); // save the list when it gets re-ordered so that it stays in that // order the next time the user runs the app signal_drag_end().connect(sigc::hide( sigc::mem_fun(*this, &BookmarkList::on_list_changed))); m_refPaletteModel->signal_rows_reordered().connect(sigc::hide(sigc::hide(sigc::hide( sigc::mem_fun(*this, &BookmarkList::on_list_changed))))); // save the palette when a color gets renamed m_refPaletteModel->signal_row_changed().connect(sigc::hide(sigc::hide( sigc::mem_fun(*this, &BookmarkList::on_list_changed)))); //std::list targets; //targets.push_back(Gtk::TargetEntry("application/x-color")); //drag_dest_set(targets); //signal_drag_data_received().connect(sigc::mem_fun(*this, //&BookmarkList::on_drop_drag_data_received)); // set up the popup menu Glib::RefPtr refActions = Gtk::ActionGroup::create(); // the name of the menu item in the popup in the favorites list refActions->add(Gtk::Action::create("RenameBookmark", Gtk::Stock::EDIT, _("_Rename Color")), sigc::mem_fun(*this, &BookmarkList::on_action_rename)); m_refUIManager->insert_action_group(refActions); try { try { // first try from src dir m_refUIManager->add_ui_from_file("data/ui/bookmarkspopup.ui"); } catch (const Glib::Error& ex) { // then try installed version m_refUIManager->add_ui_from_file(AGAVE_UIDIR "/bookmarkspopup.ui"); } m_popupMenu = static_cast( m_refUIManager->get_widget("/BookmarkPopup")); assert(m_popupMenu); } catch(const Glib::Error& ex) { std::cerr << __FILE__ << ": " << ex.what() << std::endl; throw ex; } } void BookmarkList::add(ColorPtr clr) { Gtk::TreeModel::Row row; // check if the color already exists in the palette. bool exists = false; for (PaletteTreeModel::iterator iter = m_refPaletteModel->children().begin(); iter != m_refPaletteModel->children().end(); ++iter) { if (*(*iter).get_value(m_refPaletteModel->get_color_column()) == *clr) { exists = true; row = *iter; } } if (!exists) { row = m_refPaletteModel->append(clr); } // select the newly added row Glib::RefPtr sel = get_selection(); sel->unselect_all(); sel->select(row); // save the bookmarks to disk save_to_disk(); } // returns the color of the currently selected row. Will return NULL // if not exactly one row is selected ColorPtr BookmarkList::get_color(void) { ColorPtr pClr; Gtk::TreeModel::iterator iter = get_selected_iter(); if (iter) { // need to use get_value() here instead of operator[] pClr = iter->get_value(m_refPaletteModel->get_color_column()); } // if number of selected rows is not exactly 1, this will be a NULL // pointer return pClr; } // clear out the bookmarks list void BookmarkList::clear(void) { get_selection()->unselect_all(); m_refPaletteModel->clear(); save_to_disk(); } // check if the list is empty bool BookmarkList::empty(void) { return m_refPaletteModel->children().empty(); } void BookmarkList::remove_selected(void) { Glib::RefPtr sel = get_selection(); std::list paths = sel->get_selected_rows(); sel->unselect_all(); // get a reference to the row one past the end so we can select it // after we're done removing the selected rows. This lets a user // easily remove multiple rows sequentially by simply pressing the // 'remove' button over and over if (paths.size() > 0) { // get an iterator pointing to the last selected item in the // list Gtk::TreeModel::iterator last_iter = m_refPaletteModel->get_iter(*paths.rbegin()); ++last_iter; // advance to the next row in the model if (last_iter) { sel->select(last_iter); } } // convert the paths to a list of row references. A row reference // is always valid as long as the row exists, whereas a treeiter or // path might become invalid when other rows get inserted / deleted. // We need RowReferences here if we want to delete multiple rows. // If we used TreeIters, the later ones would become invalid before // we can delete them. std::list rows; for (std::list::iterator pathiter = paths.begin(); pathiter != paths.end(); pathiter++) { rows.push_back(Gtk::TreeModel::RowReference(get_model(), *pathiter)); } // remove the rows from the treemodel for (std::list::iterator i = rows.begin(); i != rows.end(); i++) { Gtk::TreeModel::iterator treeiter = m_refPaletteModel->get_iter(i->get_path()); m_refPaletteModel->erase(treeiter); } save_to_disk(); } gint BookmarkList::count_selected(void) { return get_selection()->count_selected_rows(); } void BookmarkList::save_to_disk(Glib::ustring filename) { if (filename.empty()) { filename = m_file; } if (!filename.empty()) { Glib::ustring dirname(Glib::path_get_dirname(filename)); LOG("Dirname: " << dirname); try { // FIXME: there should be a better way to do this // will throw Glib::FileError if it doesn't exist Glib::Dir parent(dirname); } catch (Glib::FileError& e) { LOG("Creating directory for bookmarks, etc: " << dirname); // create the directory for holding colorscheme data // must have execute bit for creating files inside the directory g_mkdir(dirname.c_str(), 0755); } std::ofstream fav_file(filename.c_str()); if (fav_file.is_open()) { // make a temporary copy of the palette so that we can // change the name of the palette without affecting the // normal bookmarks pp::Palette temp_palette(m_palette); Glib::Date date; // using set_time_current() doesn't work due to a bug in // gtkmm date.set_time(time(NULL)); std::ostringstream ostream; // make the name of the exported palette file include the // date that the file was exported ostream << "Favorite Colors, exported " << date.get_year() << "/" << date.get_month() << "/" << static_cast(date.get_day()); temp_palette.set_name(ostream.str()); fav_file << temp_palette; } else { std::cerr << "*** Error opening bookmarks for writing" << std::endl; } } } bool BookmarkList::on_button_press_event(GdkEventButton* event) { Gtk::TreeView::on_button_press_event(event); LOG("button pressed: " << event->button); //Then do our custom stuff: if (event->type == GDK_BUTTON_PRESS && event->button == 3) { LOG("Right button pressed"); m_popupMenu->popup(event->button, event->time); } return true; } void BookmarkList::on_action_rename(void) { Dialogs::RenameEntry entry; Glib::ustring name; Gtk::TreeModel::iterator iter = get_selected_iter(); // make sure it's valid if (iter) { // need to use get_value() here instead of operator[] name = iter->get_value(m_refPaletteModel->get_text_column()); } entry.set_name(name); if (entry.run() == Gtk::RESPONSE_OK) { if (iter) { iter->set_value(m_refPaletteModel->get_text_column(), entry.get_name()); } } } Gtk::TreeModel::iterator BookmarkList::get_selected_iter(void) { Gtk::TreeModel::iterator iter; Glib::RefPtr refSel = get_selection(); std::list paths = refSel->get_selected_rows(); if (paths.size() == 1) { // get an iterator pointing to the first (and only) selected row iter = m_refPaletteModel->get_iter(*paths.begin()); } return iter; } /* void BookmarkList::on_drop_drag_data_received(const Glib::RefPtr& context, int x, int y, const Gtk::SelectionData& selection_data, guint info, guint time) { LOG("== Drop received =="); boost::shared_ptr c = get_dropped_color(selection_data); bool drag_success = false; if (c) { // create a gcs::Color from the Gdk::Color ColorPtr pClr = Color::create(*c); // set the application's current color add(pClr); bool drag_success = true; } context->drag_finish(drag_success, false, time); } */ } // namespace Widgets namespace Dialogs { RenameEntry::RenameEntry(void) : pEntry(Gtk::manage(new Gtk::Entry)), // The instructions for the rename dialog pInstructions(Gtk::manage(new Gtk::Label(_("Enter a new name:"), Gtk::ALIGN_LEFT))) { // the title of the color rename dialog set_title(_("Rename Color")); set_border_width(Conf::WINDOW_BORDER); add_button(Gtk::Stock::CANCEL, Gtk::RESPONSE_CANCEL); add_button(Gtk::Stock::OK, Gtk::RESPONSE_OK); set_has_separator(false); pInstructions->set_use_markup(true); // make it so that hitting enter in the text entry will 'click' OK pEntry->set_activates_default(); set_default_response(Gtk::RESPONSE_OK); Gtk::VBox* pVbox = get_vbox(); assert(pVbox); pVbox->set_spacing(Conf::UI_SPACING_SMALL); pVbox->set_border_width(Conf::UI_SPACING_SMALL); pVbox->pack_start(*pInstructions); pVbox->pack_start(*pEntry); show_all(); } void RenameEntry::set_name(Glib::ustring name) { pEntry->set_text(name); pEntry->select_region(0, name.size()); } Glib::ustring RenameEntry::get_name(void) { return pEntry->get_text(); } } // namespace Dialogs } // namespace gcs agave-0.4.7/src/widgets/gcs-cellrendererswatch.h0000644000175000017500000001147510626437553016611 00000000000000/******************************************************************************* * PROJECT: GNOME Colorscheme * * AUTHOR: Jonathon Jongsma * * Copyright (c) 2005 Jonathon Jongsma * * License: * 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 * *******************************************************************************/ #ifndef __GCS_CELLRENDERERSWATCH_H #define __GCS_CELLRENDERERSWATCH_H #include "core/gcs-types.h" #include namespace gcs { namespace Widgets { /** A custom CellRenderer that is used to display a color swatch based * on a color value contained in a model row of a TreeView * * To use, create an instance of the renderer and add it to a * TreeViewColumn. Then Connect the 'color' property of the * CellRenderer to one of the columns of the treemodel that specifies a * color hex string (i.e. "#FFFFFF"). This is done like this: * * pColumn->add_attribute(pRenderer->property_color(), columns.hexString) * * where pRenderer is the instance of the renderer that you created and pColumn is the TreeViewColumn */ class CellRendererSwatch : public Gtk::CellRenderer { public: CellRendererSwatch(void); virtual ~CellRendererSwatch(void); /** The size of the colorswatch -- defaults to 18 */ Glib::PropertyProxy property_size(void); Glib::PropertyProxy_ReadOnly property_size(void) const; /** The color of the colorswatch -- defaults to '#FFFFFF' */ Glib::PropertyProxy property_color(void); Glib::PropertyProxy_ReadOnly property_color(void) const; /** The width of the border around the swatch in pixels -- * defaults to 1 */ Glib::PropertyProxy property_border_width(void); Glib::PropertyProxy_ReadOnly property_border_width(void) const; /** The color of the border around the swatch -- Currently this * is not implemented and it's just always drawn in black */ Glib::PropertyProxy property_border_color(void); Glib::PropertyProxy_ReadOnly property_border_color(void) const; protected: /** This function calculates the size of the cell. It * uses the values for padding and from the * property_size() of the CellRenderer. It gets called * indirectly from the render_vfunc function for each cell that * needs to be rendered. It also calculates the offsets for * the cell. */ virtual void get_size_vfunc(Gtk::Widget& widget, const Gdk::Rectangle* cell_area, int* x_offset, int* y_offset, int* width, int* height) const; /** This function actually renders the cell. It gets called * automatically for each cell in the TreeView. It calculates * how much size it needs and then draws the swatch in this * area */ virtual void render_vfunc( const Glib::RefPtr& window, Gtk::Widget& widget, const Gdk::Rectangle& background_area, const Gdk::Rectangle& cell_area, const Gdk::Rectangle& expose_area, Gtk::CellRendererState flags); private: Glib::Property m_property_size; Glib::Property m_property_color; Glib::Property m_property_border_width; Glib::Property m_property_border_color; }; } // namespace Widgets } // namespace gcs #endif // __GCS_CELLRENDERERSWATCH_H agave-0.4.7/src/widgets/Makefile.am0000644000175000017500000000133310760701126014017 00000000000000sources_h = gcs-colorswatch.h \ gcs-textswatch.h \ gcs-schemebox.h \ gcs-schemeselector.h \ gcs-bookmarklist.h \ gcs-cellrendererswatch.h \ gcs-paletteview.h \ palette-selector.h \ palettetreemodel.h \ customtreemodel.h sources_c = gcs-colorswatch.cc \ gcs-textswatch.cc \ gcs-schemebox.cc \ gcs-bookmarklist.cc \ gcs-paletteview.cc \ gcs-schemeselector.cc \ gcs-cellrendererswatch.cc \ palette-selector.cc \ palettetreemodel.cc noinst_LIBRARIES = libagavewidgets.a libagavewidgets_a_SOURCES = ${sources_h} ${sources_c} AM_CPPFLAGS = -DAGAVE_UIDIR=\"${AGAVE_UIDIR}\" \ -DAGAVE_PALETTEDIR=\"${AGAVE_PALETTEDIR}\" \ -I${top_srcdir}/src AM_CXXFLAGS = ${AGAVE_CFLAGS} agave-0.4.7/src/widgets/gcs-schemebox.h0000644000175000017500000000510310760701126014662 00000000000000/******************************************************************************* * PROJECT: GNOME Colorscheme * * AUTHOR: Jonathon Jongsma * * Copyright (c) 2005 Jonathon Jongsma * * License: * 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 * *******************************************************************************/ #ifndef __GCS_SCHEMEBOX_WIDGET_H #define __GCS_SCHEMEBOX_WIDGET_H #include #include #include "gcs-textswatch.h" #include "core/gcs-scheme.h" namespace gcs { namespace Widgets { class SchemeBox : public Gtk::HBox { public: SchemeBox(void); SchemeBox(const SchemeBox& other); SchemeBox(Scheme schm); SchemeBox(Color c, tSchemeType t); virtual ~SchemeBox(void); void set_scheme(Scheme schm); inline ref_scheme_type get_scheme(void) { return m_pScheme; } void set_color(ColorPtr clr); inline ColorPtr get_color(void) { return m_pScheme->get_color(); } void set_scheme_type(tSchemeType t); inline tSchemeType get_scheme_type(void) { return m_pScheme->get_scheme_type(); } //void setSwatchPopup(Gtk::Menu *mnu); sigc::signal& signal_color_selected() { return m_signal_color_selected; } protected: void init(void); void redraw(void); bool on_color_selected(gint swatch_id); private: static const gint NUM_SWATCHES = 4; sigc::signal m_signal_color_selected; ref_scheme_type m_pScheme; TextSwatch* m_pSwatches[NUM_SWATCHES]; }; } // namespace Widgets } // namespace gcs #endif // __GCS_SCHEMEBOX_WIDGET_H agave-0.4.7/src/widgets/gcs-schemeselector.cc0000644000175000017500000000665510663715205016072 00000000000000/******************************************************************************* * PROJECT: GNOME Colorscheme * * AUTHOR: Jonathon Jongsma * * Copyright (c) 2005 Jonathon Jongsma * * License: * 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 * *******************************************************************************/ #include "gcs-schemeselector.h" #include "core/gcs-scheme.h" #include "gcs-i18n.h" namespace gcs { namespace Widgets { SchemeSelector::SchemeSelector(GtkComboBox* cobject, Glib::RefPtr& glade) : Gtk::ComboBox(cobject), m_refListStore(Gtk::ListStore::create(m_columns)) { // Add items to the model Gtk::TreeModel::Row row; row = *(m_refListStore->append()); row[m_columns.m_columnText] = _("Complements"); row[m_columns.m_columnCode] = SCHEME_COMPLEMENTS; row = *(m_refListStore->append()); row[m_columns.m_columnText] = _("Split-Complements"); row[m_columns.m_columnCode] = SCHEME_SPLIT_COMPLEMENTS; row = *(m_refListStore->append()); row[m_columns.m_columnText] = _("Triads"); row[m_columns.m_columnCode] = SCHEME_TRIADS; row = *(m_refListStore->append()); row[m_columns.m_columnText] = _("Tetrads"); row[m_columns.m_columnCode] = SCHEME_TETRADS; row = *(m_refListStore->append()); row[m_columns.m_columnText] = _("Analogous"); row[m_columns.m_columnCode] = SCHEME_ANALOGOUS; row = *(m_refListStore->append()); row[m_columns.m_columnText] = _("Monochromatic"); row[m_columns.m_columnCode] = SCHEME_MONOCHROMATIC; set_model(m_refListStore); // Display the m_columnText column in the ComboBox pack_start(m_columns.m_columnText); // set the first choice as the active item set_scheme_type(SCHEME_TRIADS); } SchemeSelector::~SchemeSelector(void) { } tSchemeType SchemeSelector::get_scheme_type(void) { Gtk::TreeModel::Row row; row = *(get_active()); return row.get_value(m_columns.m_columnCode); } void SchemeSelector::set_scheme_type(tSchemeType t) { Gtk::TreeModel::Children children = get_model()->children(); for (Gtk::TreeModel::Children::iterator it = children.begin(); it != children.end(); it++) { if ((*it)[m_columns.m_columnCode] == t) { set_active(it); break; } } } } // namespace Widgets } // namespace gcs agave-0.4.7/src/widgets/gcs-paletteview.cc0000644000175000017500000002324510760701126015403 00000000000000/******************************************************************************* * PROJECT: Agave * * AUTHOR: Jonathon Jongsma * * Copyright (c) 2005 Jonathon Jongsma * * License: * 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 * *******************************************************************************/ #include #include #include #include #include #include "gcs-paletteview.h" #include "gcs-colorswatch.h" #include "core/log-stream.h" #include "gcs-i18n.h" #include "gcs-conf.h" #include "palettetreemodel.h" #define NO_SIZE_REQUEST (-1) namespace gcs { namespace Widgets { const gint PaletteView::m_minCellSize = 20; const gint PaletteView::m_minPaletteWidth = 200; const gint PaletteView::m_maxVisibleRows = 6; const gint PaletteView::m_maxPaletteHeight = m_minCellSize * m_maxVisibleRows; PaletteView::PaletteView(GtkExpander* cobject, Glib::RefPtr& glade) : Gtk::Expander(cobject), m_table(1, 1, true), m_palette(shared_ptr(new pp::Palette)) { assert(m_palette); vector palette_dirs; palette_dirs.push_back(AGAVE_PALETTEDIR); palette_dirs.push_back(Conf::get_user_palette_dir()); m_paletteSelector = shared_ptr(new PaletteSelector(palette_dirs)); assert(m_paletteSelector); m_refPaletteModel = PaletteTreeModel::create(*m_palette); m_scrolledWindow.set_policy(Gtk::POLICY_NEVER, Gtk::POLICY_AUTOMATIC); m_table.set_spacings(0); // we need to put the table into an event box so that we can // respond to GDK enter and leave signals which are used to change // the cursor to a hand and back to a regular pointer m_eventBox.add(m_table); m_scrolledWindow.add(m_eventBox); m_vbox.set_spacing(Conf::UI_SPACING_SMALL); m_vbox.pack_start(m_scrolledWindow, Gtk::PACK_EXPAND_WIDGET); m_vbox.pack_start(*m_paletteSelector, Gtk::PACK_SHRINK); add(m_vbox); set_label(_("Palette")); // set spacing between table cells m_table.set_spacings(0); m_paletteSelector->signal_changed().connect( sigc::mem_fun(*this, &PaletteView::on_palette_file_changed)); //m_eventBox.signal_expose_event().connect(sigc::mem_fun(*this, //&PaletteView::on_eventbox_expose)); // display the currently selected palette at startup display_palette(m_paletteSelector->get_palette()); } // The goal of this function was to draw some hash marks on the // background of the palette view so that it is more obvious when table // cells don't contain color swatches. Disabled for now because of some // weird corruption bool PaletteView::on_eventbox_expose(GdkEventExpose* e) { m_eventBox.propagate_expose(m_table, e); LOG("PaletteView::on_eventbox_expose"); LOG("area: " << e->area.x << "," << e->area.y << " @ " << e->area.width << "x" << e->area.height); cairo_t* cr = gdk_cairo_create(m_eventBox.get_window()->gobj()); cairo_rectangle(cr, e->area.x, e->area.y, e->area.width, e->area.height); cairo_clip(cr); int w, h; w = m_eventBox.get_width(); h = m_eventBox.get_height(); // draw hatch marks in medium gray on the background of the eventbox // to make it obvious when there is no swatch at the end of a row LOG("drawing hatch paths"); for (int i = 0; i < (w + h); i += Conf::UI_SPACING_SMALL) { int current_x = e->area.x + i; cairo_move_to(cr, current_x, e->area.y); cairo_line_to(cr, current_x - h, h); cairo_move_to(cr, w - current_x, e->area.y); cairo_line_to(cr, w - current_x + h, h); } cairo_set_line_width(cr, 1.0); cairo_set_source_rgb(cr, 0.6, 0.6, 0.6); LOG("stroking hatches"); cairo_stroke(cr); cairo_destroy(cr); return true; } bool PaletteView::set_from_file(const Glib::ustring& fname) { LOG("Setting PaletteView from file " << fname); // try to set the new palette file if (m_paletteSelector->set_palette_file(fname)) { // yep, the palette file was found, update the view's palette // object to point to the newly selected one display_palette(m_paletteSelector->get_palette()); return true; } return false; } void PaletteView::display_palette(const shared_ptr& palette) { if (palette) { m_palette = palette; // hide the swatches while we remove old ones and add new ones hide_all(); LOG("resetting PaletteView"); // delete the ColorSwatches from the widget std::list swatches = m_table.get_children(); for (std::list::iterator sw = swatches.begin(); sw != swatches.end(); sw++) { m_table.remove(**sw); //delete (dynamic_cast(*sw)); delete (*sw); } m_rows = 0; LOG("Populating PaletteView"); guint cols = m_palette->columns(); if (!cols) // columns wasn't defined by the palette file { cols = m_minPaletteWidth / m_minCellSize; // if there's only enough colors for one row, just set the // number of columns to that value if (cols > m_palette->size()) cols = m_palette->size(); } m_rows = m_palette->size() / cols; if (m_palette->size() % cols) { m_rows += 1; } m_table.resize(m_rows, cols); gint min_height = m_rows * m_minCellSize; m_table.set_size_request(NO_SIZE_REQUEST, min_height); if (min_height > m_maxPaletteHeight) { m_scrolledWindow.set_size_request(NO_SIZE_REQUEST, m_maxPaletteHeight); } else { m_scrolledWindow.set_size_request(NO_SIZE_REQUEST, min_height + 2); } for (guint r = 0; r < m_rows; r++) { for (guint c = 0; c < cols; c++) { guint index = c + r * cols; if (index < m_palette->size()) { ColorSwatch *pSwatch = (new ColorSwatch((*m_palette)[index])); pSwatch->signal_selected().connect( sigc::bind(sigc::mem_fun(*this, &PaletteView::on_color_selected), index)); pSwatch->signal_enter_notify_event().connect( sigc::mem_fun(*this, &PaletteView::on_enter_swatch)); pSwatch->signal_leave_notify_event().connect( sigc::mem_fun(*this, &PaletteView::on_leave_swatch)); m_table.attach(*pSwatch, c, c + 1, r, r + 1); } } } // re-show them -- we're done. show_all(); } } bool PaletteView::on_color_selected(gint index) { signal_color_selected().emit((*m_palette)[index]); LOG("PaletteView::on_color_selected"); return true; } bool PaletteView::on_enter_swatch(GdkEventCrossing* event) { Glib::RefPtr win = m_eventBox.get_window(); if (win) { Glib::RefPtr dpy = Gdk::Display::get_default(); Gdk::Cursor cursor(dpy, Gdk::HAND2); win->set_cursor(cursor); } return true; } bool PaletteView::on_leave_swatch(GdkEventCrossing* event) { Glib::RefPtr win = m_eventBox.get_window(); if (win) { win->set_cursor(); } return true; } void PaletteView::on_palette_file_changed(void) { display_palette(m_paletteSelector->get_palette()); } } // namespace Widgets } // namespace gcs agave-0.4.7/src/widgets/gcs-textswatch.h0000644000175000017500000001262210663715205015114 00000000000000/******************************************************************************* * PROJECT: GNOME Colorscheme * * AUTHOR: Jonathon Jongsma * * Copyright (c) 2005 Jonathon Jongsma * * License: * 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 * *******************************************************************************/ #ifndef __GCS_TEXTSWATCH_WIDGET_H #define __GCS_TEXTSWATCH_WIDGET_H #include // for std::auto_ptr #include #include #include #include #include "core/gcs-types.h" #include "core/gcs-color.h" #include "gcs-colorswatch.h" namespace gcs { namespace Widgets { /** A widget which displays a colorswatch with a text description */ class TextSwatch : public ColorSwatch { public: TextSwatch(ColorPtr bg); TextSwatch(const TextSwatch& c); virtual ~TextSwatch(void); virtual void set_color(ColorPtr bg); virtual bool on_button_press_event(GdkEventButton *e); protected: /** Text to be displayed on a ColorSwatch * * This is the text vthat displays the hex string, RGB, and HSV * values of the color that is currently being represented by * the colorswatch */ class SwatchText { public: SwatchText(Glib::RefPtr context, Glib::ustring txt = ""); virtual ~SwatchText(void); inline Glib::RefPtr get_layout(void) { return m_refLayout;} /** Sets the text to be displayed on the colorswatch */ void set_text(Glib::ustring text); inline int get_width(void) {return m_width;} inline int get_height(void) {return m_height;} protected: /** Updates the internal values of height and width * whenever the text is changed, etc. */ void update_extents(void); private: Glib::RefPtr m_refLayout; int m_width; int m_height; }; /** Initialize stuff when the object is realized. Before * realization (i.e. in the constructor), we can't call * get_window() or anything because the Gdk::Window doesn't yet * exist */ virtual void on_realize(void); /* Actions to take whenever the drawing area needs to be redrawn * (i.e. after return from being minimized or being brought in * front of another window. This is where all of the drawing takes * place. */ virtual bool on_expose_event(GdkEventExpose *e); /** Handles the action of pressing a mouse button on a * ColorSwatch object. Will pop up a context menu if one is * defined, else will do nothing */ /** Handler for 'copy' item in the popup menu */ virtual void on_action_copy(void); private: /** The graphics context for the ColorSwatch */ Glib::RefPtr m_textGC; /** The colormap of the ColorSwatch */ Glib::RefPtr m_refContext; Glib::RefPtr m_refUIManager; std::auto_ptr m_pMinText; std::auto_ptr m_pMaxText; /** The foreground color of the ColorSwatch */ ColorPtr m_foreground; /** The right-click context menu for the colorswatch */ Gtk::Menu *m_pContextMenu; /** Called when the clipboard requests the contents that were * copied */ void on_clipboard_get(Gtk::SelectionData& data, guint info); /** Called to clear the clipboard buffer */ void on_clipboard_clear(void); /** stores values that have been copied to the clipbard */ Glib::ustring m_clipboardBuffer; }; } // namespace Widgets } // namespace gcs #endif // __GCS_TEXTSWATCH_WIDGET_H agave-0.4.7/src/widgets/gcs-cellrendererswatch.cc0000644000175000017500000001544410760701126016734 00000000000000/******************************************************************************* * PROJECT: GNOME Colorscheme * * AUTHOR: Jonathon Jongsma * * Copyright (c) 2005 Jonathon Jongsma * * License: * 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 * *******************************************************************************/ #include #include "core/log-stream.h" #include "core/gcs-color.h" #include "gcs-cellrendererswatch.h" namespace gcs { namespace Widgets { CellRendererSwatch::CellRendererSwatch(void) : Glib::ObjectBase(typeid(CellRendererSwatch)), Gtk::CellRenderer(), m_property_size(*this, "size", 18), m_property_color(*this, "color", Color::create("#FFFFFF")), m_property_border_width(*this, "border-width", 1), m_property_border_color(*this, "border-color", Color::create("#000000")) { property_xpad() = 3; property_ypad() = 3; property_yalign() = 0.5; } void CellRendererSwatch::get_size_vfunc(Gtk::Widget& widget, const Gdk::Rectangle* cell_area, int* x_offset, int* y_offset, int* width, int* height) const { const unsigned int size = property_size(); //LOG("Calling get_size_vfunc"); if (width) { *width = 2 * property_xpad() + size; } if (height) { *height = 2 * property_ypad() + size; } if (cell_area) { if (x_offset) { // property_xalign() can be between 0 and 1, inclusive *x_offset = static_cast(property_xalign() * (cell_area->get_width() - *width)); *x_offset = std::max(0, *x_offset); } if (y_offset) { *y_offset = static_cast(property_yalign() * (cell_area->get_height() - *height)); *y_offset = std::max(0, *y_offset); } } } void CellRendererSwatch::render_vfunc( const Glib::RefPtr& window, Gtk::Widget& widget, const Gdk::Rectangle& background_area, const Gdk::Rectangle& cell_area, const Gdk::Rectangle& expose_area, Gtk::CellRendererState flags) { //LOG("Calling render_vfunc"); const unsigned int cell_xpad = property_xpad(); const unsigned int cell_ypad = property_ypad(); int x_offset = 0, y_offset = 0, width = 0, height = 0; this->get_size(widget, cell_area, x_offset, y_offset, width, height); width -= cell_xpad * 2; height -= cell_ypad * 2; if (width <= 0 || height <= 0) return; Gtk::StateType state = Gtk::STATE_INSENSITIVE; if (flags & Gtk::CELL_RENDERER_SELECTED != 0) { state = (widget.has_focus()) ? Gtk::STATE_SELECTED : Gtk::STATE_ACTIVE; } //Cast the drawable to a Window. Glib::RefPtr window_casted = Glib::RefPtr::cast_dynamic<>(window); if(window) { Glib::RefPtr refCmap = widget.get_default_colormap(); refCmap->alloc_color(m_property_color.get_value()->gdk()); Glib::RefPtr refGC = Gdk::GC::create(window); Glib::RefPtr refBgGC = Gdk::GC::create(window); refBgGC->set_line_attributes(property_border_width(), Gdk::LINE_SOLID, Gdk::CAP_BUTT, Gdk::JOIN_MITER); refGC->set_foreground(m_property_color.get_value()->gdk()); window->draw_rectangle(refGC, true, cell_area.get_x() + x_offset + cell_xpad, cell_area.get_y() + y_offset + cell_ypad, width, height); window->draw_rectangle(refBgGC, false, cell_area.get_x() + x_offset + cell_xpad, cell_area.get_y() + y_offset + cell_ypad, width, height); } } CellRendererSwatch::~CellRendererSwatch(void) {} Glib::PropertyProxy CellRendererSwatch::property_size(void) { return m_property_size.get_proxy(); } Glib::PropertyProxy_ReadOnly CellRendererSwatch::property_size(void) const { return Glib::PropertyProxy_ReadOnly(this, "size"); } Glib::PropertyProxy CellRendererSwatch::property_color(void) { return m_property_color.get_proxy(); } Glib::PropertyProxy_ReadOnly CellRendererSwatch::property_color(void) const { return Glib::PropertyProxy_ReadOnly(this, "color"); } Glib::PropertyProxy CellRendererSwatch::property_border_width(void) { return m_property_border_width.get_proxy(); } Glib::PropertyProxy_ReadOnly CellRendererSwatch::property_border_width(void) const { return Glib::PropertyProxy_ReadOnly(this, "border-width"); } Glib::PropertyProxy CellRendererSwatch::property_border_color(void) { return m_property_border_color.get_proxy(); } Glib::PropertyProxy_ReadOnly CellRendererSwatch::property_border_color(void) const { return Glib::PropertyProxy_ReadOnly(this, "border-color"); } } // namespace Widgets } // namespace gcs agave-0.4.7/src/widgets/gcs-bookmarklist.h0000644000175000017500000000634010760701126015412 00000000000000/******************************************************************************* * PROJECT: GNOME Colorscheme * * AUTHOR: Jonathon Jongsma * * Copyright (c) 2005 Jonathon Jongsma * * License: * 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 * *******************************************************************************/ #ifndef __GCS_BOOKMARKLIST_H #define __GCS_BOOKMARKLIST_H #include #include #include #include #include #include #include "core/gcs-color.h" #include "core/gcs-types.h" #include "paletteparser/palette.h" namespace gcs { class PaletteTreeModel; namespace Widgets { class BookmarkList : public Gtk::TreeView { public: BookmarkList(); void add(ColorPtr clr); void clear(void); ColorPtr get_color(void); bool empty(void); void remove_selected(void); gint count_selected(void); void save_to_disk(Glib::ustring = ""); protected: Gtk::TreeModel::iterator get_selected_iter(void); private: // Performs some actions (e.g. saving to disk) when the list // gets changed, for example by a drag-and-drop reordering void on_list_changed(void) { save_to_disk(); } virtual bool on_button_press_event(GdkEventButton* event); void on_action_rename(void); /* virtual void on_drop_drag_data_received(const Glib::RefPtr& context, int x, int y, const Gtk::SelectionData& selection_data, guint info, guint time); */ Glib::ustring m_file; Glib::RefPtr m_refPaletteModel; pp::Palette m_palette; Glib::RefPtr m_refUIManager; Gtk::Menu* m_popupMenu; }; } // namespace Widgets namespace Dialogs { class RenameEntry : public Gtk::Dialog { public: RenameEntry(void); void set_name(Glib::ustring name); Glib::ustring get_name(void); private: Gtk::Entry* pEntry; Gtk::Label* pInstructions; }; } // namespace Dialogs } // namespace gcs #endif // __GCS_BOOKMARKLIST_H agave-0.4.7/src/widgets/gcs-schemeselector.h0000644000175000017500000000425710663715205015730 00000000000000/******************************************************************************* * PROJECT: GNOME Colorscheme * * AUTHOR: Jonathon Jongsma * * Copyright (c) 2005 Jonathon Jongsma * * License: * 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 * *******************************************************************************/ #ifndef __GCS_SCHEME_SELECTOR_H #define __GCS_SCHEME_SELECTOR_H #include #include #include #include "core/gcs-scheme.h" using namespace Gnome; namespace gcs { namespace Widgets { class SchemeSelector : public Gtk::ComboBox { public: SchemeSelector(GtkComboBox* cobject, Glib::RefPtr& glade); virtual ~SchemeSelector(void); tSchemeType get_scheme_type(void); void set_scheme_type(tSchemeType t); protected: class ModelColumns : public Gtk::TreeModel::ColumnRecord { public: ModelColumns() { add(m_columnText); add(m_columnCode); } Gtk::TreeModelColumn m_columnText; Gtk::TreeModelColumn m_columnCode; }; ModelColumns m_columns; Glib::RefPtr m_refListStore; }; } // namespace Widgets } // namespace gcs #endif // __GCS_SCHEME_SELECTOR_H agave-0.4.7/src/widgets/palette-selector.h0000644000175000017500000000544010663715205015420 00000000000000/******************************************************************************* * PROJECT: Agave * * AUTHOR: Jonathon Jongsma * * Copyright (c) 2006 Jonathon Jongsma * * License: * 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 * *******************************************************************************/ #ifndef __PALETTE_SELECTOR_H #define __PALETTE_SELECTOR_H #include #include #include #include #include #include "paletteparser/palette.h" using boost::shared_ptr; using std::vector; using std::string; namespace gcs { namespace Widgets { /** A ComboBox used to select a palette to display at the bottom of the * main application window. This class reads the files from a specified * palette directory and verifies that they are valid palette files and * then displays a list of names in the ComboBox of available palettes * to choose from */ class PaletteSelector : public Gtk::ComboBox { public: PaletteSelector(const vector& search_dirs); virtual ~PaletteSelector(void); shared_ptr get_palette(void) const; std::string get_palette_file(void) const; bool set_palette_file(const std::string& filename); protected: class ModelColumns : public Gtk::TreeModel::ColumnRecord { public: ModelColumns() { add(m_columnName); add(m_columnFile); add(m_columnPalette); } Gtk::TreeModelColumn m_columnName; Gtk::TreeModelColumn m_columnFile; Gtk::TreeModelColumn > m_columnPalette; }; ModelColumns m_columns; Glib::RefPtr m_refListStore; }; } // namespace Widgets } // namespace gcs #endif // __PALETTE_SELECTOR_H agave-0.4.7/src/widgets/palettetreemodel.cc0000644000175000017500000002022010760701126015625 00000000000000/******************************************************************************* * PROJECT: Agave * * AUTHOR: Jonathon Jongsma * * Copyright (c) 2006 Jonathon Jongsma * * License: * 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 * *******************************************************************************/ #include #include // for strlen #include "palettetreemodel.h" #include namespace gcs { std::string PaletteTreeModel::m_dragDataType = "x-paletteline"; Glib::RefPtr PaletteTreeModel::create(PaletteTreeModel::value_type& palette) { return Glib::RefPtr(new PaletteTreeModel(palette)); } PaletteTreeModel::PaletteTreeModel(PaletteTreeModel::value_type& palette) : Glib::ObjectBase(typeid(PaletteTreeModel)), // register custom GType Glib::Object(), // the GType is actually registered here ContainerTreeModel(palette) { m_columnRecord.add(m_text_column); m_columnRecord.add(m_color_column); } int PaletteTreeModel::get_n_columns_vfunc(void) const { return 2; } GType PaletteTreeModel::get_column_type_vfunc(int index) const { if (index == 0) { return m_text_column.type(); } else if (index == 1) { return m_color_column.type(); } else { return 0; } } void PaletteTreeModel::get_value_vfunc(const Gtk::TreeModel::iterator& iter, int column, Glib::ValueBase& value) const { if (iter_is_valid(iter)) { GlueItem* pItem = (GlueItem*) iter.gobj()->user_data; ColorPtr color = *(pItem->iter); if (column == 0) { name_column_type::ValueType val; val.init(name_column_type::ValueType::value_type()); val.set(color->get_name()); value.init(name_column_type::ValueType::value_type()); value = val; } else if (column == 1) { color_column_type::ValueType val; val.init(color_column_type::ValueType::value_type()); val.set(color); value.init(color_column_type::ValueType::value_type()); value = val; } else { g_assert_not_reached(); } } else { switch (column) { case 0: value.init(name_column_type::ValueType::value_type()); break; case 1: value.init(color_column_type::ValueType::value_type()); break; } } } Gtk::TreeModel::Row PaletteTreeModel::append(ColorPtr& clr) { // add the color to the underlying container m_pContainer->colors().push_back(clr); Gtk::TreeModel::iterator iter; // get the last iter in the list and the path iter_nth_root_child_vfunc(m_pContainer->size() - 1, iter); Gtk::TreePath path = get_path(iter); // emit the row_inserted signal so the view knows that the model has // changed and can update itself row_inserted(path, iter); // increment the stamp to note that the model has changed, so iterators // might not be valid anymore m_stamp++; return *iter; } Gtk::TreeModel::Row PaletteTreeModel::insert(const Gtk::TreeModel::iterator& iter, ColorPtr& color) { GlueItem* pItem = (GlueItem*) iter.gobj()->user_data; value_type::iterator std_iter = pItem->iter; m_pContainer->colors().insert(std_iter, color); Gtk::TreePath path = get_path(iter); row_inserted(path, iter); m_stamp++; return *iter; } void PaletteTreeModel::clear(void) { while (!children().empty()) { // keep erasing the first element in the list until the list is // empty PaletteTreeModel::iterator iter = children().begin(); (void) erase(iter); } } PaletteTreeModel::iterator PaletteTreeModel::erase(iterator& iter) { // next iterator, invalid by default iterator iter_next; if (iter_is_valid(iter)) { // get a reference to the next iter iter_next_vfunc(iter, iter_next); // get a path for the iterator we're about to delete, so we can tell // the treeview that the path was deleted Gtk::TreePath path = get_path(iter); GlueItem* pItem = (GlueItem*) iter.gobj()->user_data; m_pContainer->colors().erase(pItem->iter); // FIXME: delete this? delete pItem; row_deleted(path); // increment the stamp to note that the model has changed, so iterators // might not be valid anymore ++m_stamp; } //Gtk::TreeModel::iterator next_iter(iter); return iter_next; } void PaletteTreeModel::set_value_impl(const iterator& row, int column, const Glib::ValueBase& value) { if (iter_is_valid(row)) { ColorPtr color = row->get_value(m_color_column); if (column == 0) { color->set_name(static_cast(value).get()); } /* row->set_value(m_text_column, value name_column_type::ValueType val; val.init(name_column_type::ValueType::value_type()); val.set(color->get_name()); value.init(name_column_type::ValueType::value_type()); value = val; } else if (column == 1) { color_column_type::ValueType val; val.init(color_column_type::ValueType::value_type()); val.set(color); value.init(color_column_type::ValueType::value_type()); value = val; } else { g_assert_not_reached(); } */ } Gtk::TreePath path = get_path(row); row_changed(path, row); } bool PaletteTreeModel::drag_data_get_vfunc(const Gtk::TreeModel::Path& path, Gtk::SelectionData& selection_data) const { Gtk::TreeModel::iterator iter; get_iter_vfunc(path, iter); GlueItem* pItem = (GlueItem*) iter.gobj()->user_data; ColorPtr color = *(pItem->iter); std::stringstream stream; // convert the color object to a string so we can send it with the // selection_data stream << color; // use a custom type identifier selection_data.set(m_dragDataType, stream.str()); return true; } bool PaletteTreeModel::drag_data_delete_vfunc(const Gtk::TreeModel::Path& path) { Gtk::TreeModel::iterator iter; get_iter_vfunc(path, iter); erase(iter); return true; } bool PaletteTreeModel::drag_data_received_vfunc(const Gtk::TreeModel::Path& dest, const Gtk::SelectionData& selection_data) { if (selection_data.get_data_type() != m_dragDataType) { return false; } ColorPtr c; try { c = pp::Palette::parse_color(selection_data.get_data_as_string().c_str()); } catch (pp::ParseError& e) { std::cout << "exception: " << e.what() << std::endl; return false; } Gtk::TreeModel::iterator iter; get_iter_vfunc(dest, iter); insert(iter, c); return true; } } // namespace gcs agave-0.4.7/src/widgets/gcs-textswatch.cc0000644000175000017500000002275610760701102015250 00000000000000/******************************************************************************* * PROJECT: GNOME Colorscheme * * AUTHOR: Jonathon Jongsma * * Copyright (c) 2005 Jonathon Jongsma * * License: * 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 * *******************************************************************************/ #include #include #include #include #include #include #include #include #include "gcs-textswatch.h" #include "core/log-stream.h" #include "gcs-i18n.h" namespace gcs { namespace Widgets { TextSwatch::TextSwatch(ColorPtr bg) : ColorSwatch(bg), m_refUIManager(Gtk::UIManager::create()), m_pMinText(0), m_pMaxText(0), m_pContextMenu(0) { // get_window() would return 0 because the Gdk::Window has not yet been // realized So we can only allocate the colors here - the rest will // happen in on_realize(). m_colormap = get_default_colormap(); m_colormap->alloc_color(m_black->gdk()); m_colormap->alloc_color(m_white->gdk()); LOG("TextSwatch Created!"); Glib::RefPtr refActions = Gtk::ActionGroup::create(); refActions->add(Gtk::Action::create("CopyColor", Gtk::Stock::COPY), sigc::mem_fun(*this, &TextSwatch::on_action_copy)); m_refUIManager->insert_action_group(refActions); Glib::ustring ui_string = "" " " " " " " ""; try { m_refUIManager->add_ui_from_string(ui_string); LOG("added TextSwatchUI"); } catch(const Glib::Error& ex) { std::cerr << "Building TextSwatch menus failed: " << ex.what(); } m_pContextMenu = dynamic_cast(m_refUIManager->get_widget("/ColorSwatchPopup")); // give the text swatches a bit of a rounded corner look m_cornerRadius = 10; } TextSwatch::TextSwatch(const TextSwatch& c) : ColorSwatch(c) { m_foreground = c.m_foreground; m_textGC = c.m_textGC; m_refContext = c.m_refContext; m_pMinText = std::auto_ptr(new SwatchText(*c.m_pMinText)); m_pMaxText = std::auto_ptr(new SwatchText(*c.m_pMaxText)); } TextSwatch::~TextSwatch(void) { //delete &m_background; } void TextSwatch::on_realize(void) { // We need to call the base on_realize() Gtk::DrawingArea::on_realize(); // Now we can allocate any additional resources we need Glib::RefPtr window = get_window(); // set the size of the swatch. set_size_request(m_minSize, m_minSize); m_textGC = Gdk::GC::create(window); add_events(Gdk::BUTTON_PRESS_MASK | Gdk::ENTER_NOTIFY_MASK | Gdk::LEAVE_NOTIFY_MASK); Glib::RefPtr m_refContext = create_pango_context(); // create a pango layout for just the hex string m_pMinText.reset(new SwatchText(m_refContext, "")); // create a pango layout for the hex string, rgb, and hsv m_pMaxText.reset(new SwatchText(m_refContext, "")); pTooltips->set_tip(*this, _("Double-click to select")); } bool TextSwatch::on_expose_event(GdkEventExpose *e) { ColorSwatch::on_expose_event(e); if (m_background->get_luminance() > (maxRgbValue / 2.0)) { m_foreground = m_black; } else { m_foreground = m_white; } m_textGC->set_foreground(m_foreground->gdk()); Glib::RefPtr win = get_window(); int winWidth, winHeight; int textX, textY; win->get_size(winWidth, winHeight); SwatchText *pText; if (winWidth > m_pMaxText->get_width() + 2 * m_borderWidth + 2 * m_swatchPadding && winHeight > m_pMaxText->get_height()+ 2 * m_borderWidth + 2 * m_swatchPadding) { pText = m_pMaxText.get(); } else if (winWidth > m_pMinText->get_width() + 2 * m_borderWidth + 2 * m_swatchPadding && winHeight > m_pMinText->get_height()+ 2 * m_borderWidth + 2 * m_swatchPadding) { pText = m_pMinText.get(); } else // swatch is too small -- don't display any text { pText = 0; } if (pText != NULL) { textX = (winWidth - pText->get_width()) / 2; textY = (winHeight - pText->get_height()) / 2; win->draw_layout(m_textGC, textX, textY, pText->get_layout()); } return true; } void TextSwatch::set_color(ColorPtr bg) { ColorSwatch::set_color(bg); std::ostringstream txt; // populate the minimal text string txt << m_background->get_hexstring() << std::endl; Glib::ustring minSpec = txt.str(); //LOG("Mintext = " << minSpec); //LOG("background_ = " << m_background); // We can fit more text in the swatch, so add some more info txt << "rgb(" << m_background->get_red() << ", " << m_background->get_green() << ", " << m_background->get_blue() << ")" << std::endl; txt << "hsv(" << m_background->get_hue() << ", " << m_background->get_saturation() << ", " << m_background->get_value() << ")"; Glib::ustring maxSpec = txt.str(); m_pMinText->set_text(minSpec); m_pMaxText->set_text(maxSpec); } bool TextSwatch::on_button_press_event(GdkEventButton *e) { //Then do our custom stuff: if (e->type == GDK_BUTTON_PRESS) { if (e->button == 3) { // User pressed right mouse button if (m_pContextMenu != NULL) { LOG("context menu registered -- popup " << (long) m_pContextMenu); m_pContextMenu->popup(e->button, e->time); } else { LOG("No context menu registered"); } } } if (e->type == GDK_2BUTTON_PRESS) { if (e->button == 1) { // User pressed left mouse button m_signal_selected.emit(); } } return true; } void TextSwatch::on_action_copy(void) { LOG("Colorswatch on_action_copy"); m_clipboardBuffer = m_background->get_hexstring(); Glib::RefPtr refClipboard = Gtk::Clipboard::get(); //Targets: std::list listTargets; listTargets.push_back(Gtk::TargetEntry("UTF8_STRING")); refClipboard->set(listTargets, sigc::mem_fun(*this, &TextSwatch::on_clipboard_get), sigc::mem_fun(*this, &TextSwatch::on_clipboard_clear)); } void TextSwatch::on_clipboard_get(Gtk::SelectionData& data, guint info) { if (data.get_target() == "UTF8_STRING") { data.set_text(m_clipboardBuffer); } } void TextSwatch::on_clipboard_clear(void) {} TextSwatch::SwatchText::SwatchText(Glib::RefPtr context, Glib::ustring txt) : m_refLayout(Pango::Layout::create(context)) { m_refLayout->set_alignment(Pango::ALIGN_CENTER); set_text(txt); } TextSwatch::SwatchText::~SwatchText(void) { } void TextSwatch::SwatchText::update_extents(void) { Pango::Rectangle extents(m_refLayout->get_ink_extents()); m_width = extents.get_width() / Pango::SCALE; m_height = extents.get_height() / Pango::SCALE; } void TextSwatch::SwatchText::set_text(Glib::ustring text) { m_refLayout->set_text(text); update_extents(); } } // namespace Widgets } // namespace gcs agave-0.4.7/src/widgets/palettetreemodel.h0000644000175000017500000000602010760701126015471 00000000000000/******************************************************************************* * PROJECT: Agave * * AUTHOR: Jonathon Jongsma * * Copyright (c) 2006 Jonathon Jongsma * * License: * 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 * *******************************************************************************/ #ifndef __PALETTETREEMODEL_H #define __PALETTETREEMODEL_H #include #include #include "customtreemodel.h" #include "paletteparser/palette.h" namespace gcs { class PaletteTreeModel: public Glib::Object, public ::ContainerTreeModel { public: typedef pp::Palette value_type; typedef Gtk::TreeModelColumn name_column_type; typedef Gtk::TreeModelColumn color_column_type; static Glib::RefPtr create(value_type& val); name_column_type& get_text_column(void) { return m_text_column; } color_column_type& get_color_column(void) { return m_color_column; } Gtk::TreeModel::Row append(ColorPtr& color); Gtk::TreeModel::Row insert(const Gtk::TreeModel::iterator& iter, ColorPtr& color); void clear(void); iterator erase(iterator& iter); protected: PaletteTreeModel(value_type& palette); virtual int get_n_columns_vfunc(void) const; virtual GType get_column_type_vfunc(int index) const; virtual void get_value_vfunc(const Gtk::TreeModel::iterator& iter, int column, Glib::ValueBase& value) const; virtual void set_value_impl(const iterator& row, int column, const Glib::ValueBase& value); // virtual functions from Gtk::TreeDragSource virtual bool drag_data_delete_vfunc(const Gtk::TreeModel::Path& path); virtual bool drag_data_get_vfunc(const Gtk::TreeModel::Path& path, Gtk::SelectionData& selection_data) const; // virtual functions from Gtk::TreeDragDest virtual bool drag_data_received_vfunc(const Gtk::TreeModel::Path& dest, const Gtk::SelectionData& selection_data); private: name_column_type m_text_column; color_column_type m_color_column; static std::string m_dragDataType; }; } // namespace gcs #endif // __PALETTETREEMODEL_H agave-0.4.7/src/gcs-mainwindow.h0000644000175000017500000001323010760701126013413 00000000000000/******************************************************************************* * PROJECT: GNOME Colorscheme * * AUTHOR: Jonathon Jongsma * * Copyright (c) 2005 Jonathon Jongsma * * License: * 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 * *******************************************************************************/ #ifndef __GCS_MAINWINDOW_H #define __GCS_MAINWINDOW_H #include // for list of drop targets #include #include #include #include #include #include #include #include #include #include #include #include #include "core/gcs-types.h" #include "widgets/gcs-paletteview.h" using namespace Gnome; namespace gcs { template class HistoryNavigation; namespace Widgets { class BookmarkList; class SchemeSelector; class SchemeBox; } namespace Dialogs { class AboutWindow; } class MainWindow : public Gtk::Window { public: MainWindow(GtkWindow *cobject, Glib::RefPtr& refGlade); ~MainWindow(void); static MainWindow& Instance(); void set_color(ColorPtr c); protected: // no copying allowed MainWindow(MainWindow& w); virtual void on_realize(); // setup functions void init_actions(void); void init_ui(void); virtual void on_show(void); virtual bool on_delete_event(GdkEventAny* event); void quit(void); /* File Menu Actions */ void on_action_file_new(void); void on_action_file_save(void); void on_action_file_export(void); void on_action_file_quit(void); /* Edit Menu Actions */ void on_action_edit_prefs(void); /* Help Menu Actions */ void on_action_help_contents(void); void on_action_help_about(void); /* other actions */ void on_color_changed(void); void on_schemetype_changed(void); // history navigation void on_action_history_back(void); void on_action_history_fwd(void); // bookmark actions void on_action_add_bookmark(void); void on_action_remove_bookmark(void); void on_action_clear_bookmarks(void); void update_bookmark_actions(void); // lighten actions void on_action_lighten_scheme(void); void on_action_darken_scheme(void); void on_action_saturate_scheme(void); void on_action_desaturate_scheme(void); void on_action_randomize(void); void on_action_paste(void); void on_clipboard_received(const Gtk::SelectionData& data); void on_clipboard_received_targets(const Glib::StringArrayHandle& targets_array); void update_paste_status(void); gint rand_range(gint range); /* swatch popup menu */ void on_action_use_color(void); void on_bookmarks_selection_changed(void); void on_schemebox_color_selected(ColorPtr pColor); virtual void on_drop_drag_data_received(const Glib::RefPtr& context, int x, int y, const Gtk::SelectionData& selection_data, guint info, guint time); private: Glib::RefPtr m_glade; static MainWindow *m_instance; // for creating menus and toolbars Glib::RefPtr m_refUIManager; Glib::RefPtr m_refActionGroup; // Containers for layout Gtk::VBox *m_vbox_layout; Gtk::VBox *m_vbox_menu_toolbar; Gtk::VBox *m_vbox_main; Gtk::VBox *m_vbox_favorites; Gtk::VBox *m_scrolledwindow_favorites; Gtk::VBox *m_vbox_scheme_display; Gtk::HPaned *m_pane; // Menus and Toolbars Gtk::Menu *m_main_menu; Gtk::Toolbar *m_toolbar; Gtk::Toolbar *m_bookmark_bar; Gtk::ColorButton *m_color_button; Widgets::SchemeSelector *m_scheme_selector; Widgets::SchemeBox *m_scheme_box; Widgets::BookmarkList *m_bookmark_list; Widgets::PaletteView* m_palette_view; Glib::ustring m_palette_file; Dialogs::AboutWindow *m_pAbout; // NON-UI ELEMENTS HistoryNavigation *m_pHistory; friend void clipboard_owner_changed(GtkClipboard* clipboard, GdkEvent* event, gpointer data); }; void clipboard_owner_changed(GtkClipboard* clipboard, GdkEvent* event, gpointer data); } // namespace gcs #endif // __GCS_MAINWINDOW_H agave-0.4.7/src/Makefile.am0000644000175000017500000000174110760701126012354 00000000000000SUBDIRS = core paletteparser widgets dialogs bin_PROGRAMS = agave sources_h = gcs-mainwindow.h \ gcs-i18n.h \ gcs-conf.h \ gcs-util.h \ ucompose.h \ gcs-history.h sources_c = gcs-mainwindow.cc \ gcs-mainwindow-actions.cc \ gcs-conf.cc \ main.cc agave_SOURCES = ${sources_h} ${sources_c} AM_CXXFLAGS = ${AGAVE_CFLAGS} \ -I${top_srcdir}/src # prefix, sysconfdir, libdir, and datadir are needed for the # GNOME_PROGRAM_STANDARD_PROPERTIES macro passed to gnome_program_init() AM_CPPFLAGS = -DAGAVE_LOCALEDIR=\"${AGAVE_LOCALEDIR}\" \ -DAGAVE_UIDIR=\"${AGAVE_UIDIR}\" \ -DAGAVE_ICONDIR=\"${AGAVE_ICONDIR}\" \ -DAGAVE_PALETTEDIR=\"${AGAVE_PALETTEDIR}\" \ -DPREFIX=\""$(prefix)"\" \ -DSYSCONFDIR=\""$(sysconfdir)"\" \ -DLIBDIR=\""$(libdir)"\" \ -DDATADIR=\""$(datadir)"\" agave_LDADD = dialogs/libagavedialogs.a \ widgets/libagavewidgets.a \ core/libagave.a \ paletteparser/libpaletteparser.a \ ${AGAVE_LIBS} agave-0.4.7/src/gcs-conf.cc0000644000175000017500000001715310760701126012332 00000000000000/******************************************************************************* * * AUTHOR: Jonathon Jongsma * * Copyright (c) 2005 Jonathon Jongsma * * License: * 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 * *******************************************************************************/ #include #include "config.h" #include "gcs-conf.h" #include "core/gcs-color.h" #ifdef HAVE_GCONFMM #include #include #endif // HAVE_GCONFMM namespace gcs { // gconf recommends storing enumerations as strings rather than integers // since it's more robust against changes in enumeration order and is more // human-readable. This is a helper for gconf_string_to_enum and vice versa static GConfEnumStringPair schemetype_lookup_table[] = { { SCHEME_COMPLEMENTS, "COMPLEMENTS" }, { SCHEME_SPLIT_COMPLEMENTS, "SPLIT-COMPLEMENTS" }, { SCHEME_TRIADS, "TRIADS" }, { SCHEME_TETRADS, "TETRADS" }, { SCHEME_ANALOGOUS, "ANALOGOUS" }, { SCHEME_MONOCHROMATIC, "MONOCHROMATIC" }, { 0, NULL } }; // convenience class to convert between gconf Value classes and basic types // more automatically class Value : public Gnome::Conf::Value { public: Value(const Gnome::Conf::Value& other) : Gnome::Conf::Value(other) {} operator bool() { return get_bool(); } operator int() { return get_int(); } operator Glib::ustring() { return get_string(); } operator double() { return get_float(); } operator float() { return get_float(); } }; const Glib::ustring Conf::APP_DIR = "/apps/agave"; const Glib::ustring Conf::KEY_LAST_SAVE_DIR = Conf::APP_DIR + "/last_save_directory"; const Glib::ustring Conf::KEY_LAST_COLOR = Conf::APP_DIR + "/last_color"; const Glib::ustring Conf::KEY_LAST_SCHEME_TYPE = Conf::APP_DIR + "/last_scheme_type"; const Glib::ustring Conf::KEY_WINDOW_WIDTH = Conf::APP_DIR + "/window_width"; const Glib::ustring Conf::KEY_WINDOW_HEIGHT = Conf::APP_DIR + "/window_height"; const Glib::ustring Conf::KEY_FAVORITES_WIDTH = Conf::APP_DIR + "/favorites_width"; const Glib::ustring Conf::KEY_PALETTE_EXPANDED = Conf::APP_DIR + "/palette_expanded"; const Glib::ustring Conf::OLD_GCS_CONF_DIR = Glib::build_filename(Glib::get_home_dir(), ".agave"); const Glib::ustring Conf::GCS_CONF_DIR = Glib::build_filename(g_get_user_data_dir(), "agave"); const Glib::ustring Conf::FAVORITES_FILE = Conf::GCS_CONF_DIR + "/bookmarks.gpl"; const Glib::ustring Conf::USER_PALETTE_DIR = Conf::GCS_CONF_DIR + "/palettes"; const int Conf::WINDOW_BORDER = 12; const int Conf::UI_SPACING_SMALL = 6; const int Conf::UI_SPACING_MEDIUM = 12; const int Conf::UI_SPACING_LARGE = 18; void Conf::migrate_old_config_directory() { // check for an old config directory, and if it exists, rename it to the // new directory if (Glib::file_test(OLD_GCS_CONF_DIR, Glib::FILE_TEST_EXISTS) && !Glib::file_test(GCS_CONF_DIR, Glib::FILE_TEST_EXISTS)) { g_rename(OLD_GCS_CONF_DIR.c_str(), GCS_CONF_DIR.c_str()); } } Glib::ustring Conf::get_last_save_dir(void) { Glib::ustring dir; if (!get_value(KEY_LAST_SAVE_DIR, dir) || dir == "") { dir = Glib::filename_to_uri(Glib::get_current_dir()); } return dir; } void Conf::set_last_save_dir(Glib::ustring uri) { set_value(KEY_LAST_SAVE_DIR, uri); } ColorPtr Conf::get_last_color(void) { Glib::ustring clr; if (!get_value(KEY_LAST_COLOR, clr)) { clr = "#9DFF00"; } return Color::create(clr); } void Conf::set_last_color(ColorPtr clr) { set_value(KEY_LAST_COLOR, clr->get_hexstring()); } void Conf::set_last_scheme_type(tSchemeType t) { Glib::ustring schemetype_string = gconf_enum_to_string(schemetype_lookup_table, t); set_value(KEY_LAST_SCHEME_TYPE, schemetype_string); } tSchemeType Conf::get_last_scheme_type(void) { Glib::ustring scheme_type; tSchemeType t; if (!get_value(KEY_LAST_SCHEME_TYPE, scheme_type) || !gconf_string_to_enum(schemetype_lookup_table, scheme_type.c_str(), reinterpret_cast(&t))) { t = SCHEME_TRIADS; } return t; } Glib::ustring Conf::get_favorites_file(void) { return FAVORITES_FILE; } Glib::ustring Conf::get_conf_dir(void) { if (!Glib::file_test(GCS_CONF_DIR, Glib::FILE_TEST_EXISTS) || !Glib::file_test(GCS_CONF_DIR, Glib::FILE_TEST_IS_DIR)) { g_mkdir_with_parents(GCS_CONF_DIR.c_str(), 0755); } return GCS_CONF_DIR; } Glib::ustring Conf::get_user_palette_dir(void) { if (!Glib::file_test(USER_PALETTE_DIR, Glib::FILE_TEST_EXISTS) || !Glib::file_test(USER_PALETTE_DIR, Glib::FILE_TEST_IS_DIR)) { g_mkdir_with_parents(USER_PALETTE_DIR.c_str(), 0755); } return USER_PALETTE_DIR; } int Conf::get_window_width(void) { int w; if (!get_value(KEY_WINDOW_WIDTH, w)) { w = 650; } return w; } void Conf::set_window_width(int w) { set_value(KEY_WINDOW_WIDTH, w); } int Conf::get_window_height(void) { int h; if (!get_value(KEY_WINDOW_HEIGHT, h)) { h = 400; } return h; } void Conf::set_window_height(int h) { set_value(KEY_WINDOW_HEIGHT, h); } int Conf::get_favorites_width(void) { int w; if (!get_value(KEY_FAVORITES_WIDTH, w)) { w = 130; // initial value } return w; } void Conf::set_favorites_width(int w) { set_value(KEY_FAVORITES_WIDTH, w); } bool Conf::get_palette_expanded(void) { bool expanded; if (!get_value(KEY_PALETTE_EXPANDED, expanded)) { expanded = true; // initial value } return expanded; } void Conf::set_palette_expanded(bool expanded) { set_value(KEY_PALETTE_EXPANDED, expanded); } template bool Conf::get_value(Glib::ustring gconf_key, T& result) { #ifdef HAVE_GCONFMM Value val = Gnome::Conf::Client::get_default_client()->get(gconf_key); if (val.get_type() != Gnome::Conf::VALUE_INVALID) { result = static_cast(val); return true; } #endif // HAVE_GCONFMM return false; } template void Conf::set_value(Glib::ustring gconf_key, const T& val) { #ifdef HAVE_GCONFMM Gnome::Conf::Client::get_default_client()->set(gconf_key, val); #endif // HAVE_GCONFMM } } // namespace gcs agave-0.4.7/src/gcs-i18n.h0000644000175000017500000000330510455603151012020 00000000000000/******************************************************************************* * PROJECT: GNOME Colorscheme * * AUTHOR: Jonathon Jongsma * * Copyright (c) 2005 Jonathon Jongsma * * License: * 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 * *******************************************************************************/ #ifndef __GCS_I18N_H_ #define __GCS_I18N_H_ #ifdef HAVE_CONFIG_H #include "config.h" #endif /* HAVE_CONFIG_H */ #ifdef ENABLE_NLS #include #define _(String) gettext(String) #ifdef gettext_noop #define N_(String) gettext_noop(String) #else #define N_(String) (String) #endif #else /* NLS is disabled */ #define _(String) (String) #define N_(String) (String) #define textdomain(String) (String) #define gettext(String) (String) #define dgettext(Domain,String) (String) #define dcgettext(Domain,String,Type) (String) #define bindtextdomain(Domain,Directory) (Domain) #define bind_textdomain_codeset(Domain,Codeset) (Codeset) #endif /* ENABLE_NLS */ #endif /* __GCS_I18N_H_ */ agave-0.4.7/src/paletteparser/0000777000175000017500000000000011224443301013246 500000000000000agave-0.4.7/src/paletteparser/Makefile.in0000644000175000017500000003400611224442712015237 00000000000000# Makefile.in generated by automake 1.10.2 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # 2003, 2004, 2005, 2006, 2007, 2008 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@ pkglibdir = $(libdir)/@PACKAGE@ pkgincludedir = $(includedir)/@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 = : subdir = src/paletteparser DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \ $(top_srcdir)/configure.ac 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 = LIBRARIES = $(noinst_LIBRARIES) AR = ar ARFLAGS = cru libpaletteparser_a_AR = $(AR) $(ARFLAGS) libpaletteparser_a_LIBADD = am__objects_1 = am__objects_2 = palette.$(OBJEXT) error.$(OBJEXT) am_libpaletteparser_a_OBJECTS = $(am__objects_1) $(am__objects_2) libpaletteparser_a_OBJECTS = $(am_libpaletteparser_a_OBJECTS) DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir) depcomp = $(SHELL) $(top_srcdir)/depcomp am__depfiles_maybe = depfiles CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) CXXLD = $(CXX) CXXLINK = $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(AM_LDFLAGS) $(LDFLAGS) \ -o $@ COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) CCLD = $(CC) LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ SOURCES = $(libpaletteparser_a_SOURCES) DIST_SOURCES = $(libpaletteparser_a_SOURCES) ETAGS = etags CTAGS = ctags DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ AGAVE_CFLAGS = @AGAVE_CFLAGS@ AGAVE_ICONDIR = @AGAVE_ICONDIR@ AGAVE_LIBS = @AGAVE_LIBS@ AGAVE_LOCALEDIR = @AGAVE_LOCALEDIR@ AGAVE_PALETTEDIR = @AGAVE_PALETTEDIR@ AGAVE_UIDIR = @AGAVE_UIDIR@ ALL_LINGUAS = @ALL_LINGUAS@ AMTAR = @AMTAR@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ AWK = @AWK@ CAIRO_RING_CFLAGS = @CAIRO_RING_CFLAGS@ CAIRO_RING_LIBS = @CAIRO_RING_LIBS@ CATALOGS = @CATALOGS@ CATOBJEXT = @CATOBJEXT@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPPFLAGS = @CPPFLAGS@ CPPUNIT_CFLAGS = @CPPUNIT_CFLAGS@ CPPUNIT_CONFIG = @CPPUNIT_CONFIG@ CPPUNIT_LIBS = @CPPUNIT_LIBS@ CXX = @CXX@ CXXCPP = @CXXCPP@ CXXDEPMODE = @CXXDEPMODE@ CXXFLAGS = @CXXFLAGS@ CYGPATH_W = @CYGPATH_W@ DATADIRNAME = @DATADIRNAME@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ DISTCHECK_CONFIGURE_FLAGS = @DISTCHECK_CONFIGURE_FLAGS@ DOC_USER_FORMATS = @DOC_USER_FORMATS@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ GCONFMM_CFLAGS = @GCONFMM_CFLAGS@ GCONFMM_LIBS = @GCONFMM_LIBS@ GCONFTOOL = @GCONFTOOL@ GCONF_SCHEMA_CONFIG_SOURCE = @GCONF_SCHEMA_CONFIG_SOURCE@ GCONF_SCHEMA_FILE_DIR = @GCONF_SCHEMA_FILE_DIR@ GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ GIT_PATH = @GIT_PATH@ GMOFILES = @GMOFILES@ GMSGFMT = @GMSGFMT@ GNOME_CFLAGS = @GNOME_CFLAGS@ GNOME_LIBS = @GNOME_LIBS@ GREP = @GREP@ GTKMM_CFLAGS = @GTKMM_CFLAGS@ GTKMM_LIBS = @GTKMM_LIBS@ HELP_DIR = @HELP_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@ LDFLAGS = @LDFLAGS@ LIBGLADEMM_CFLAGS = @LIBGLADEMM_CFLAGS@ LIBGLADEMM_LIBS = @LIBGLADEMM_LIBS@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LN_S = @LN_S@ LTLIBOBJS = @LTLIBOBJS@ MAKEINFO = @MAKEINFO@ MKDIR_P = @MKDIR_P@ MKINSTALLDIRS = @MKINSTALLDIRS@ MSGFMT = @MSGFMT@ MSGFMT_OPTS = @MSGFMT_OPTS@ MSGMERGE = @MSGMERGE@ OBJEXT = @OBJEXT@ OMF_DIR = @OMF_DIR@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PACKAGE_WEBSITE = @PACKAGE_WEBSITE@ PATH_SEPARATOR = @PATH_SEPARATOR@ PKG_CONFIG = @PKG_CONFIG@ POFILES = @POFILES@ POSUB = @POSUB@ PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@ PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@ PRINTING_CFLAGS = @PRINTING_CFLAGS@ PRINTING_LIBS = @PRINTING_LIBS@ RANLIB = @RANLIB@ SED = @SED@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ SORT = @SORT@ STRIP = @STRIP@ TR = @TR@ UNIQ = @UNIQ@ USE_NLS = @USE_NLS@ VERSION = @VERSION@ XGETTEXT = @XGETTEXT@ 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_CXX = @ac_ct_CXX@ 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_alias = @build_alias@ builddir = @builddir@ datadir = @datadir@ datarootdir = @datarootdir@ docdir = @docdir@ dvidir = @dvidir@ exec_prefix = @exec_prefix@ host_alias = @host_alias@ htmldir = @htmldir@ includedir = @includedir@ infodir = @infodir@ install_sh = @install_sh@ libdir = @libdir@ libexecdir = @libexecdir@ localedir = @localedir@ localstatedir = @localstatedir@ 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@ sources_h = palette.h error.h trim.h sources_cc = palette.cc error.cc noinst_LIBRARIES = libpaletteparser.a libpaletteparser_a_SOURCES = $(sources_h) $(sources_cc) AM_CPPFLAGS = -I$(top_srcdir)/src -I.. -DG_LOG_DOMAIN=\"PaletteParser\" AM_CXXFLAGS = $(AGAVE_CFLAGS) all: all-am .SUFFIXES: .SUFFIXES: .cc .o .obj $(srcdir)/Makefile.in: $(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) --gnu src/paletteparser/Makefile'; \ cd $(top_srcdir) && \ $(AUTOMAKE) --gnu src/paletteparser/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: $(am__configure_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(ACLOCAL_M4): $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh clean-noinstLIBRARIES: -test -z "$(noinst_LIBRARIES)" || rm -f $(noinst_LIBRARIES) libpaletteparser.a: $(libpaletteparser_a_OBJECTS) $(libpaletteparser_a_DEPENDENCIES) -rm -f libpaletteparser.a $(libpaletteparser_a_AR) libpaletteparser.a $(libpaletteparser_a_OBJECTS) $(libpaletteparser_a_LIBADD) $(RANLIB) libpaletteparser.a mostlyclean-compile: -rm -f *.$(OBJEXT) distclean-compile: -rm -f *.tab.c @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/error.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/palette.Po@am__quote@ .cc.o: @am__fastdepCXX_TRUE@ $(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< @am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(CXXCOMPILE) -c -o $@ $< .cc.obj: @am__fastdepCXX_TRUE@ $(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'` @am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(CXXCOMPILE) -c -o $@ `$(CYGPATH_W) '$<'` 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) tags=; \ 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; }; }'`; \ if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \ test -n "$$unique" || unique=$$empty_fix; \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ $$tags $$unique; \ fi ctags: CTAGS CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) tags=; \ 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)$$tags$$unique" \ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ $$tags $$unique GTAGS: here=`$(am__cd) $(top_builddir) && pwd` \ && 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 $(srcdir)/$$file && test $$d != $(srcdir); then \ cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ fi; \ cp -pR $$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 $(LIBRARIES) 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) 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-noinstLIBRARIES 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 info: info-am info-am: install-data-am: install-dvi: install-dvi-am 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 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 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-noinstLIBRARIES ctags distclean distclean-compile \ distclean-generic 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 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: agave-0.4.7/src/paletteparser/error.cc0000644000175000017500000000240310663715205014634 00000000000000/******************************************************************************* * PROJECT: PaletteParser * * AUTHOR: Jonathon Jongsma * * Copyright (c) 2005 Jonathon Jongsma * * License: * 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 * *******************************************************************************/ #include "error.h" namespace pp { ParseError::ParseError(const Glib::ustring& msg) throw() : std::runtime_error(Glib::ustring("Unexpected input: ") + msg) {} ParseError::~ParseError(void) throw() {} } // namespace pp agave-0.4.7/src/paletteparser/error.h0000644000175000017500000000257510663715205014510 00000000000000/******************************************************************************* * PROJECT: PaletteParser * * AUTHOR: Jonathon Jongsma * * Copyright (c) 2005 Jonathon Jongsma * * License: * 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 * *******************************************************************************/ #ifndef __PP_ERROR_H #define __PP_ERROR_H #include #include namespace pp { class ParseError : public std::runtime_error { public: ParseError(const Glib::ustring& msg) throw(); virtual ~ParseError(void) throw(); }; } // namespace pp #endif // __PP_ERROR_H agave-0.4.7/src/paletteparser/palette.h0000644000175000017500000001442311224436457015013 00000000000000/******************************************************************************* * PROJECT: PaletteParser * * AUTHOR: Jonathon Jongsma * * Copyright (c) 2005 Jonathon Jongsma * * License: * 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 * *******************************************************************************/ #ifndef __PP_PALETTE_H #define __PP_PALETTE_H #include #include #include #include #include "core/gcs-types.h" #include "core/gcs-color.h" #include "paletteparser/error.h" #include "trim.h" class ParseSuite; /** PaletteParser library namespace */ namespace pp { /** The Basic class of the PaletteParser library */ class Palette { public: typedef gcs::ColorPtr value_type; typedef std::vector color_list_type; typedef std::vector::iterator iterator; typedef std::vector::const_iterator const_iterator; typedef std::vector::size_type size_type; public: Palette(void); virtual ~Palette(void); bool parse(std::istream& in); /** Write out the palette to a stream. * * The stream can be written either to a string or to a file or to * standard output. For example, if palette is a Palette object, you * could write this to a file as follows: * \code * std::ofstream file("directory/filename.gpl"); * file << palette; * \endcode */ friend std::ostream& operator<<(std::ostream& out, const Palette& p); /** Read a palette definition from a stream. * * The stream can be any of the standard C++ streams: standard input, * strings, or file streams. This function is used as you would * otherwise use something like a parse() function. * For example, reading a palette definition from a file could be done * as follows: * \code * std::ifstream file("directory/filename.gpl"); * file >> palette; * \endcode * After which you could query the properties of the palette, such as * its name, number of columns, list of colors, etc: * \code * std::cout << "Pallete name: " << palette.name() << std::endl; * for (Palette::iterator it = begin(); it != end(); it++) * { * std::cout << *it << std::endl; * } */ friend std::istream& operator>>(std::istream& in, Palette& p); /** * Get the name of the Palette */ Glib::ustring name(void) const; /** * Set the name of the Palette */ void set_name(Glib::ustring name); /** * Get the number of columns recommended for displaying the palette */ size_type columns(void) const; /** * Set the number of columns recommended for displaying the palette */ void set_columns(size_type cols); inline iterator begin(void) { return m_colors.begin(); } inline const_iterator begin(void) const { return m_colors.begin(); } inline iterator end(void) { return m_colors.end(); } inline const_iterator end(void) const { return m_colors.end(); } inline value_type at(size_t index) { return m_colors[index]; } inline const value_type& operator[](size_t index) { return m_colors[index]; } /** * Get a reference to the list of colors in the palette */ color_list_type& colors(void); const color_list_type& colors(void) const; /** * Get the number of colors in the palette */ size_type size(void) const; static value_type parse_color(const char* line) throw(ParseError); protected: inline Glib::ustring parse_name(const char* line) throw(ParseError); inline size_type parse_columns(const char* line) throw(ParseError); inline bool parse_header(const char* line); void reset(void); private: bool m_headerSeen; bool m_emptyFile; Glib::ustring m_name; size_type m_numColumns; color_list_type m_colors; unsigned int m_currentLine; friend class ::ParseSuite; }; /** NOTE: line must be utf-8 encoded */ Glib::ustring Palette::parse_name(const char* line) throw(ParseError) { const char* nm = "Name:"; const size_t nm_len = strlen(nm); // Make sure the line actually starts with "Name:" if (strstr(line, nm) == line) { return trim(Glib::ustring(line + nm_len, g_utf8_strlen(line, -1) - nm_len)); } else { throw ParseError(line); } } /** NOTE: line must be utf-8 encoded */ Palette::size_type Palette::parse_columns(const char* line) throw(ParseError) { const char* cols = "Columns:"; // make sure that the line actually starts with "Columns:" if (strstr(line, cols) == line) { return static_cast(atoi( static_cast((line + strlen(cols))) ) ); } else { throw ParseError(line); } } bool Palette::parse_header(const char* line) { const char* hdr = "GIMP Palette"; if (strncmp(line, hdr, sizeof(hdr)) == 0) return true; else return false; } } // namespace pp #endif // __PP_PALETTE_H agave-0.4.7/src/paletteparser/Makefile.am0000644000175000017500000000041510663715205015231 00000000000000sources_h = palette.h error.h trim.h sources_cc = palette.cc error.cc noinst_LIBRARIES = libpaletteparser.a libpaletteparser_a_SOURCES = $(sources_h) $(sources_cc) AM_CPPFLAGS = -I$(top_srcdir)/src -I.. -DG_LOG_DOMAIN=\"PaletteParser\" AM_CXXFLAGS = $(AGAVE_CFLAGS) agave-0.4.7/src/paletteparser/trim.h0000644000175000017500000000326710663715205014331 00000000000000/******************************************************************************* * PROJECT: Palette parser * * AUTHOR: Jonathon Jongsma * * Copyright (c) 2006 Jonathon Jongsma * * License: * 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 * *******************************************************************************/ #ifndef __PP_UTIL_H #define __PP_UTIL_H #include #include namespace pp { // General tool to strip spaces from both ends of a string // from Bruce Eckel's "Thinking in C++" book inline Glib::ustring trim(const Glib::ustring& s) { const Glib::ustring whitespace(" \a\b\f\n\r\t\v"); if(s.length() == 0) return s; std::size_t beg = s.find_first_not_of(whitespace); std::size_t end = s.find_last_not_of(whitespace); if(beg == Glib::ustring::npos) // No non-spaces return ""; return Glib::ustring(s, beg, end - beg + 1); } } // namespace pp #endif // __PP_UTIL_H agave-0.4.7/src/paletteparser/palette.cc0000644000175000017500000001400211224437063015134 00000000000000/******************************************************************************* * PROJECT: Palette Parser * * AUTHOR: Jonathon Jongsma * * Copyright (c) 2005 Jonathon Jongsma * * License: * 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 * *******************************************************************************/ #include #include #include #include "palette.h" #include "error.h" #include "core/log-stream.h" #ifdef HAVE_CONFIG_H #include "config.h" #endif // HAVE_CONFIG_H namespace pp { Palette::Palette(void) { } Palette::~Palette(void) { } Glib::ustring Palette::name(void) const { return m_name; } void Palette::set_name(Glib::ustring name) { m_name = name; } Palette::size_type Palette::size(void) const { return m_colors.size(); } Palette::size_type Palette::columns(void) const { return m_numColumns; } void Palette::set_columns(size_type cols) { m_numColumns = cols; } const Palette::color_list_type& Palette::colors(void) const { return m_colors; } Palette::color_list_type& Palette::colors(void) { return m_colors; } std::ostream& operator<<(std::ostream& out, const Palette& p) { using std::endl; out << "GIMP Palette" << endl << "Name: " << p.name() << endl << "Columns: " << p.columns() << endl; for (Palette::const_iterator it = p.colors().begin(); it != p.colors().end(); ++it) { out << (*it) << endl; } return out; } bool Palette::parse(std::istream& in) { if (in) { try { in >> *this; return true; } catch (const std::exception& error) { std::cerr << error.what () << std::endl; } // fall through to return false } return false; } std::istream& operator>>(std::istream& in, Palette& p) { p.reset(); const int N = 256; char line[N]; LOG("Parsing Palette"); while (in.getline(line, N)) { if (!g_utf8_validate (line, -1, NULL)) { g_warning ("Palette files must be encoded in UTF-8"); continue; } p.m_emptyFile = false; p.m_currentLine++; // check if the line starts with the phrase GIMP Palette if (!p.m_headerSeen) { LOG("Looking for header..."); p.m_headerSeen = p.parse_header(line); } else { if (line[0] == 'N') { p.m_name = p.parse_name(line); LOG("Got name: " << p.m_name); } else if (line[0] == 'C') { p.m_numColumns = p.parse_columns(line); LOG("Got columns: " << p.m_numColumns); } else if (line[0] == '#' || strlen(line) == 0) { // ignore it, it's a comment line or a blank line } else { // it should be a color definition try { Palette::value_type rgb = p.parse_color(line); //LOG("got color " << rgb); p.m_colors.push_back(rgb); } catch (ParseError& err) { // ignore it if it's invalid LOG("bad color"); } } } } // done parsing -- reset the current line back to the beginning. p.m_currentLine = 0; LOG("done parsing. colors found: " << p.m_colors.size()); if (!p.m_headerSeen && !p.m_emptyFile) throw(ParseError("Gimp Palette Header not found")); return in; } Palette::value_type Palette::parse_color(const char* line) throw(ParseError) { const unsigned int MAX_RGB = 255; std::istringstream def(line); gint r, g, b; if (def >> r && def >> g && def >> b) { // valid values are 0 to 255 if (!(r <= (int) MAX_RGB && r >= 0 && g <= (int) MAX_RGB && g >= 0 && b <= (int) MAX_RGB && b >= 0)) { throw ParseError(line); } // the rest of the line should be the comment / name of the color const int N = 256; char cmt[N]; // need to use getline instead of << in case comment has whitespace // in it def.getline(cmt, N); value_type rgb = gcs::Color::create(r, g, b, trim(cmt)); //LOG("result: " << rgb << endl; return rgb; } else { throw ParseError(line); } } void Palette::reset(void) { LOG("Resetting Palette"); // clear the color definitions m_colors.clear(); m_headerSeen = false; m_emptyFile = true; m_name = Glib::ustring(); m_numColumns = 0; m_currentLine = 0; } } // namespace pp agave-0.4.7/src/gcs-conf.h0000644000175000017500000000644510760701126012176 00000000000000/******************************************************************************* * PROJECT: GNOME Colorscheme * * AUTHOR: Jonathon Jongsma * * Copyright (c) 2005 Jonathon Jongsma * * License: * 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 * *******************************************************************************/ #ifndef __GCS_CONF_H #define _GCS_CONF_H #include #include "core/gcs-types.h" namespace gcs { class Conf { public: static Glib::ustring get_last_save_dir(void); static void set_last_save_dir(Glib::ustring uri); static ColorPtr get_last_color(void); static void set_last_color(ColorPtr clr); static void set_last_scheme_type(tSchemeType t); static tSchemeType get_last_scheme_type(void); static int get_window_width(void); static void set_window_width(int w); static int get_window_height(void); static void set_window_height(int h); static int get_favorites_width(void); static void set_favorites_width(int w); static bool get_palette_expanded(void); static void set_palette_expanded(bool expanded); static Glib::ustring get_favorites_file(void); static Glib::ustring get_conf_dir(void); static Glib::ustring get_user_palette_dir(void); static void migrate_old_config_directory(); // window / ui settings static const int WINDOW_BORDER; static const int UI_SPACING_SMALL; static const int UI_SPACING_MEDIUM; static const int UI_SPACING_LARGE; private: template static bool get_value(Glib::ustring gconf_key, T& result); template static void set_value(Glib::ustring gconf_key, const T& val); static const Glib::ustring APP_DIR; static const Glib::ustring KEY_LAST_SAVE_DIR; static const Glib::ustring KEY_LAST_COLOR; static const Glib::ustring KEY_LAST_SCHEME_TYPE; static const Glib::ustring KEY_WINDOW_WIDTH; static const Glib::ustring KEY_WINDOW_HEIGHT; static const Glib::ustring KEY_FAVORITES_WIDTH; static const Glib::ustring KEY_PALETTE_EXPANDED; static const Glib::ustring FAVORITES_FILE; static const Glib::ustring GCS_CONF_DIR; static const Glib::ustring OLD_GCS_CONF_DIR; static const Glib::ustring USER_PALETTE_DIR; }; } // namespace gcs #endif // __GCS_CONF_H agave-0.4.7/src/gcs-history.h0000644000175000017500000000711410663715205012751 00000000000000/******************************************************************************* * PROJECT: GNOME Colorscheme * * AUTHOR: Jonathon Jongsma * * Copyright (c) 2005 Jonathon Jongsma * * License: * 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 * *******************************************************************************/ #ifndef __GCS_HISTORY_H #define __GCS_HISTORY_H #include #include "core/log-stream.h" namespace gcs { template class HistoryNavigation { public: HistoryNavigation(void) : m_backStack(), m_fwdStack(), m_current(), m_initialized(false) {} virtual ~HistoryNavigation(void) {} typedef T value_type; value_type go_back(void) { LOG("pushing onto fwd stack: " << m_current); m_fwdStack.push(m_current); m_current = m_backStack.top(); LOG("Set m_current to: " << m_current); m_backStack.pop(); return m_current; } value_type go_forward(void) { LOG("pushing onto fwd stack: " << m_current); m_backStack.push(m_current); m_current = m_fwdStack.top(); LOG("Set m_current to: " << m_current); m_fwdStack.pop(); return m_current; } void add(value_type item) { if (item != m_current) { if (m_initialized) { LOG("Adding to back stack: " << m_current); m_backStack.push(m_current); } LOG("setting m_current to " << item); m_current = item; // clear forward stack, since we're adding a new 'fork' for the // history LOG("Clearing fwd stack"); while (!m_fwdStack.empty()) m_fwdStack.pop(); m_initialized = true; } } bool has_back(void) const { return !(m_backStack.empty()); } bool has_forward(void) const { return !(m_fwdStack.empty()); } const value_type& get_last(void) { return m_backStack.top(); } const value_type& get_next(void) { return m_fwdStack.top(); } friend std::ostream& operator<<(std::ostream& out, const HistoryNavigation& hist) { return out << "History: " << hist.m_backStack.size() << " back, " << hist.m_fwdStack.size() << " forward" << std::endl; } private: std::stack m_backStack; std::stack m_fwdStack; T m_current; bool m_initialized; }; } // namespace gcs #endif // __GCS_HISTORY_H agave-0.4.7/src/gcs-util.h0000644000175000017500000000534010760701126012217 00000000000000/******************************************************************************* * PROJECT: Agave * * AUTHOR: Jonathon Jongsma * * Copyright (c) 2005 Jonathon Jongsma * * License: * 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 * *******************************************************************************/ #ifndef __GCS_UTIL_H #define __GCS_UTIL_H #include #include #include #include namespace gcs { // General tool to strip spaces from both ends of a string // from Bruce Eckel's "Thinking in C++" book inline Glib::ustring trim(const Glib::ustring& s) { const Glib::ustring whitespace(" \a\b\f\n\r\t\v"); if(s.length() == 0) return s; std::size_t beg = s.find_first_not_of(whitespace); std::size_t end = s.find_last_not_of(whitespace); if(beg == Glib::ustring::npos) // No non-spaces return ""; return Glib::ustring(s, beg, end - beg + 1); } inline boost::shared_ptr get_dropped_color(const Gtk::SelectionData& selection_data) { boost::shared_ptr c; std::string target = selection_data.get_target(); // Gimp sends data in application/x-color format, and a lot of GNOME // applications accept it (for instance drop it to a terminal window // and it changes the background color) if (target == "application/x-color") { LOG("Trying to set dropped color from application/x-color: "); // application/x-color is a 16-bit format const guint16* data = reinterpret_cast(selection_data.get_data()); // it's easy to use this data with a Gdk::Color type c.reset(new Gdk::Color); c->set_red(data[0]); c->set_green(data[1]); c->set_blue(data[2]); // alpha value is data[3] but we don't use it yet } return c; } } // namespace gcs #endif // __GCS_UTIL_H agave-0.4.7/src/gcs-mainwindow.cc0000644000175000017500000003170011120273114013543 00000000000000/******************************************************************************* * PROJECT: Agave * AUTHOR: Jonathon Jongsma * Copyright (c) 2005 Jonathon Jongsma * * License: * 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 * *******************************************************************************/ #include "config.h" #include // for srand(), rand() #include // for time() #include #include #include #include #include #include #ifdef HAVE_GCONFMM #include #endif // HAVE_GCONFMM #include "gcs-mainwindow.h" #include "gcs-util.h" // for get_dropped_color #include "gcs-i18n.h" #include "gcs-history.h" #include "gcs-conf.h" #include "core/gcs-scheme.h" #include "core/log-stream.h" #include "widgets/gcs-schemebox.h" #include "widgets/gcs-schemeselector.h" #include "widgets/gcs-bookmarklist.h" #include "widgets/gcs-colorswatch.h" #include "widgets/gcs-paletteview.h" #include "dialogs/gcs-about-window.h" #define NO_SIZE_REQUEST (-1) namespace gcs { MainWindow* MainWindow::m_instance = NULL; MainWindow& MainWindow::Instance(void) { if (m_instance) { return *m_instance; } else { Glib::RefPtr glade; try { // first try to use the uninstalled glade file (if we're running // out of the source directory glade = Glade::Xml::create("data/ui/agave.glade"); } catch (const Gnome::Glade::XmlError& error) { // else just use the installed version glade = Glade::Xml::create(AGAVE_UIDIR "/agave.glade"); } glade->get_widget_derived("AgaveWindow", m_instance); return *m_instance; } } MainWindow::MainWindow(GtkWindow *cobject, Glib::RefPtr& refGlade) : Gtk::Window(cobject), m_glade(refGlade), m_vbox_layout(NULL), m_vbox_menu_toolbar(NULL), m_vbox_main(NULL), m_vbox_favorites(NULL), m_vbox_scheme_display(NULL), m_pane(NULL), m_main_menu(NULL), m_toolbar(NULL), m_bookmark_bar(NULL), m_color_button(NULL), m_scheme_selector(NULL), m_scheme_box(Gtk::manage(new Widgets::SchemeBox())), m_bookmark_list(Gtk::manage(new Widgets::BookmarkList())), m_palette_view(NULL), m_pAbout(new Dialogs::AboutWindow()), m_pHistory(new HistoryNavigation()) { // seed the random number generator for generating random color schemes srand(time(NULL)); // migrate the old settings if it hasn't been done yet Conf::migrate_old_config_directory(); // make sure the glade file has been loaded g_assert(m_glade); init_actions(); init_ui(); // load menus, cache glade widgets /* The menu bar across the top of the window */ m_vbox_menu_toolbar->pack_start(*m_main_menu, Gtk::PACK_SHRINK); LOG("Added main menu"); m_toolbar->set_toolbar_style(Gtk::TOOLBAR_BOTH_HORIZ); m_vbox_menu_toolbar->pack_start(*m_toolbar, Gtk::PACK_SHRINK, 0); m_color_button->signal_color_set().connect(sigc::mem_fun(*this, &MainWindow::on_color_changed)); m_scheme_selector->signal_changed().connect(sigc::mem_fun(*this, &MainWindow::on_schemetype_changed)); LOG("Created Scheme Selector"); // Set up the SchemeBox g_assert(m_scheme_box); m_vbox_scheme_display->pack_start(*m_scheme_box, Gtk::PACK_EXPAND_WIDGET, 0); m_scheme_box->signal_color_selected().connect( sigc::mem_fun(*this, &MainWindow::on_schemebox_color_selected)); std::list listTargets; listTargets.push_back(Gtk::TargetEntry("application/x-color")); m_scheme_box->drag_dest_set(listTargets); m_scheme_box->signal_drag_data_received().connect(sigc::mem_fun(*this, &MainWindow::on_drop_drag_data_received)); m_palette_view->signal_color_selected().connect( sigc::mem_fun(*this, &MainWindow::on_schemebox_color_selected)); m_palette_view->set_from_file(Glib::build_filename(AGAVE_PALETTEDIR, "Web.gpl")); m_palette_view->set_expanded(Conf::get_palette_expanded()); m_bookmark_list->get_selection()->signal_changed().connect( sigc::mem_fun(*this, &MainWindow::on_bookmarks_selection_changed)); m_scrolledwindow_favorites->add(*m_bookmark_list); m_vbox_favorites->pack_start(*m_bookmark_bar, Gtk::PACK_SHRINK); m_bookmark_bar->set_toolbar_style(Gtk::TOOLBAR_BOTH_HORIZ); g_assert(m_pAbout); set_default_size(Conf::get_window_width(), Conf::get_window_height()); show_all(); } MainWindow::~MainWindow(void) { delete m_pAbout; delete m_pHistory; //delete m_pHistory; LOG("MainWindow DELETED!"); } void MainWindow::on_realize() { Gtk::Window::on_realize(); // this can't be done in the constructor because get_width() doesn't // return anything meaningful in the constructor g_assert (m_pane); m_pane->set_position(get_width() - Conf::get_favorites_width()); } // Actions must be initialized first void MainWindow::init_ui(void) { m_refUIManager = Gtk::UIManager::create(); m_refUIManager->insert_action_group(m_refActionGroup); add_accel_group(m_refUIManager->get_accel_group()); try { // first try to load the UI from the source dir m_refUIManager->add_ui_from_file("data/ui/agave.ui"); } catch(const Glib::Error& ex) { // we can't do anything without the UI / toolbar definition, so // don't bother catching it if this one fails m_refUIManager->add_ui_from_file(AGAVE_UIDIR "/agave.ui"); } LOG("added UI"); // cache some pointers to widgets from glade in class variables m_vbox_layout = static_cast(m_glade->get_widget("vbox_layout")); g_assert(m_vbox_layout); m_vbox_menu_toolbar = static_cast(m_glade->get_widget("vbox_menu_toolbar")); g_assert(m_vbox_menu_toolbar); m_vbox_main = static_cast(m_glade->get_widget("vbox_main")); g_assert(m_vbox_main); m_vbox_favorites = static_cast(m_glade->get_widget("vbox_favorites")); g_assert(m_vbox_favorites); m_scrolledwindow_favorites = static_cast(m_glade->get_widget("scrolledwindow_favorites")); g_assert(m_scrolledwindow_favorites); m_vbox_scheme_display = static_cast(m_glade->get_widget("vbox_scheme_display")); g_assert(m_vbox_scheme_display); m_pane = static_cast(m_glade->get_widget("hpaned1")); g_assert(m_pane); m_main_menu = static_cast( m_refUIManager->get_widget("/MainMenu")); g_assert(m_main_menu); m_toolbar = static_cast( m_refUIManager->get_widget("/TweakBar")); g_assert(m_toolbar); m_color_button = static_cast(m_glade->get_widget("colorbutton1")); g_assert(m_color_button); m_glade->get_widget_derived("combobox_scheme_selector", m_scheme_selector); g_assert(m_scheme_selector); m_glade->get_widget_derived("expander_palette", m_palette_view); g_assert(m_palette_view); m_bookmark_bar = dynamic_cast(m_refUIManager->get_widget("/BookmarkBar")); g_assert(m_bookmark_bar); } void MainWindow::set_color(ColorPtr c) { m_color_button->set_color(c->gdk()); on_color_changed(); } void MainWindow::on_show(void) { Gtk::Window::on_show(); m_scheme_selector->set_scheme_type(Conf::get_last_scheme_type()); // hack to get the schemetype selector to select the right starting // scheme on_schemetype_changed(); update_bookmark_actions(); set_color(Conf::get_last_color()); } bool MainWindow::on_delete_event(GdkEventAny* event) { quit(); return true; } void MainWindow::quit(void) { hide(); ColorPtr clr = m_scheme_box->get_color(); Conf::set_last_color(clr); Conf::set_last_scheme_type(m_scheme_box->get_scheme_type()); // only save the window size if the window isn't maximized if (!(get_window()->get_state() & Gdk::WINDOW_STATE_MAXIMIZED)) { Conf::set_window_width(get_width()); Conf::set_window_height(get_height()); Conf::set_favorites_width(get_width() - m_pane->get_position()); Conf::set_palette_expanded(m_palette_view->get_expanded()); } } void MainWindow::on_color_changed(void) { ColorPtr clr = Color::create(m_color_button->get_color()); m_scheme_box->set_color(clr); m_pHistory->add(clr->get_hexstring()); //LOG(*m_pHistory); m_refActionGroup->get_action("HistoryBack")->set_sensitive(m_pHistory->has_back()); m_refActionGroup->get_action("HistoryFwd")->set_sensitive(m_pHistory->has_forward()); // check if we're at limits Glib::RefPtr action = m_refActionGroup->get_action("LightenScheme"); if (clr->get_value() == maxSvValue) { // disable lighten button action->set_sensitive(false); } else { action->set_sensitive(); } action = m_refActionGroup->get_action("DarkenScheme"); if (clr->get_value() <= minColorValue + 5) { // disable darken button action->set_sensitive(false); } else { action->set_sensitive(); } action = m_refActionGroup->get_action("SaturateScheme"); if (clr->get_saturation() == maxSvValue) { // disable saturate button action->set_sensitive(false); } else { action->set_sensitive(); } action = m_refActionGroup->get_action("DesaturateScheme"); if (clr->get_saturation() <= minColorValue + 5) { // disable desaturate button action->set_sensitive(false); } else { action->set_sensitive(); } LOG("Color was changed!"); ColorPtr ptr = m_bookmark_list->get_color(); if (ptr && (*ptr != *clr)) { m_bookmark_list->get_selection()->unselect_all(); } } void MainWindow::on_schemetype_changed(void) { tSchemeType type = m_scheme_selector->get_scheme_type(); m_scheme_box->set_scheme_type(type); LOG("Scheme type is " << type); } void MainWindow::on_bookmarks_selection_changed(void) { LOG("Bookmarks changed"); ColorPtr pClr = m_bookmark_list->get_color(); if (pClr) { set_color(pClr); } update_bookmark_actions(); } void MainWindow::on_schemebox_color_selected(ColorPtr pColor) { // Need to make a copy of the color that we're passed so that if we // change the color of the swatch it doesn't change the color in the // palette / favorite list as well ColorPtr c = Color::create(*pColor); set_color(c); } void MainWindow::on_drop_drag_data_received(const Glib::RefPtr& context, int x, int y, const Gtk::SelectionData& selection_data, guint info, guint time) { LOG("== Drop received =="); bool drag_success = false; boost::shared_ptr c = get_dropped_color(selection_data); if(c) { // create a gcs::Color from the Gdk::Color ColorPtr pClr = Color::create(*c); // set the application's current color set_color(pClr); drag_success = true; } context->drag_finish(drag_success, false, time); } } // namespace gcs agave-0.4.7/src/core/0000777000175000017500000000000011224443301011323 500000000000000agave-0.4.7/src/core/Makefile.in0000644000175000017500000003465711224442712013330 00000000000000# Makefile.in generated by automake 1.10.2 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # 2003, 2004, 2005, 2006, 2007, 2008 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@ #SUBDIRS = tests VPATH = @srcdir@ pkgdatadir = $(datadir)/@PACKAGE@ pkglibdir = $(libdir)/@PACKAGE@ pkgincludedir = $(includedir)/@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 = : subdir = src/core DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \ $(top_srcdir)/configure.ac 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 = LIBRARIES = $(noinst_LIBRARIES) AR = ar ARFLAGS = cru libagave_a_AR = $(AR) $(ARFLAGS) libagave_a_LIBADD = am__objects_1 = am__objects_2 = gcs-color.$(OBJEXT) gcs-color-group.$(OBJEXT) \ gcs-scheme.$(OBJEXT) compat-round.$(OBJEXT) \ log-stream.$(OBJEXT) gcs-types.$(OBJEXT) am_libagave_a_OBJECTS = $(am__objects_1) $(am__objects_2) libagave_a_OBJECTS = $(am_libagave_a_OBJECTS) DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir) depcomp = $(SHELL) $(top_srcdir)/depcomp am__depfiles_maybe = depfiles CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) CXXLD = $(CXX) CXXLINK = $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(AM_LDFLAGS) $(LDFLAGS) \ -o $@ COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) CCLD = $(CC) LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ SOURCES = $(libagave_a_SOURCES) DIST_SOURCES = $(libagave_a_SOURCES) ETAGS = etags CTAGS = ctags DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ AGAVE_CFLAGS = @AGAVE_CFLAGS@ AGAVE_ICONDIR = @AGAVE_ICONDIR@ AGAVE_LIBS = @AGAVE_LIBS@ AGAVE_LOCALEDIR = @AGAVE_LOCALEDIR@ AGAVE_PALETTEDIR = @AGAVE_PALETTEDIR@ AGAVE_UIDIR = @AGAVE_UIDIR@ ALL_LINGUAS = @ALL_LINGUAS@ AMTAR = @AMTAR@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ AWK = @AWK@ CAIRO_RING_CFLAGS = @CAIRO_RING_CFLAGS@ CAIRO_RING_LIBS = @CAIRO_RING_LIBS@ CATALOGS = @CATALOGS@ CATOBJEXT = @CATOBJEXT@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPPFLAGS = @CPPFLAGS@ CPPUNIT_CFLAGS = @CPPUNIT_CFLAGS@ CPPUNIT_CONFIG = @CPPUNIT_CONFIG@ CPPUNIT_LIBS = @CPPUNIT_LIBS@ CXX = @CXX@ CXXCPP = @CXXCPP@ CXXDEPMODE = @CXXDEPMODE@ CXXFLAGS = @CXXFLAGS@ CYGPATH_W = @CYGPATH_W@ DATADIRNAME = @DATADIRNAME@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ DISTCHECK_CONFIGURE_FLAGS = @DISTCHECK_CONFIGURE_FLAGS@ DOC_USER_FORMATS = @DOC_USER_FORMATS@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ GCONFMM_CFLAGS = @GCONFMM_CFLAGS@ GCONFMM_LIBS = @GCONFMM_LIBS@ GCONFTOOL = @GCONFTOOL@ GCONF_SCHEMA_CONFIG_SOURCE = @GCONF_SCHEMA_CONFIG_SOURCE@ GCONF_SCHEMA_FILE_DIR = @GCONF_SCHEMA_FILE_DIR@ GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ GIT_PATH = @GIT_PATH@ GMOFILES = @GMOFILES@ GMSGFMT = @GMSGFMT@ GNOME_CFLAGS = @GNOME_CFLAGS@ GNOME_LIBS = @GNOME_LIBS@ GREP = @GREP@ GTKMM_CFLAGS = @GTKMM_CFLAGS@ GTKMM_LIBS = @GTKMM_LIBS@ HELP_DIR = @HELP_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@ LDFLAGS = @LDFLAGS@ LIBGLADEMM_CFLAGS = @LIBGLADEMM_CFLAGS@ LIBGLADEMM_LIBS = @LIBGLADEMM_LIBS@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LN_S = @LN_S@ LTLIBOBJS = @LTLIBOBJS@ MAKEINFO = @MAKEINFO@ MKDIR_P = @MKDIR_P@ MKINSTALLDIRS = @MKINSTALLDIRS@ MSGFMT = @MSGFMT@ MSGFMT_OPTS = @MSGFMT_OPTS@ MSGMERGE = @MSGMERGE@ OBJEXT = @OBJEXT@ OMF_DIR = @OMF_DIR@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PACKAGE_WEBSITE = @PACKAGE_WEBSITE@ PATH_SEPARATOR = @PATH_SEPARATOR@ PKG_CONFIG = @PKG_CONFIG@ POFILES = @POFILES@ POSUB = @POSUB@ PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@ PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@ PRINTING_CFLAGS = @PRINTING_CFLAGS@ PRINTING_LIBS = @PRINTING_LIBS@ RANLIB = @RANLIB@ SED = @SED@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ SORT = @SORT@ STRIP = @STRIP@ TR = @TR@ UNIQ = @UNIQ@ USE_NLS = @USE_NLS@ VERSION = @VERSION@ XGETTEXT = @XGETTEXT@ 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_CXX = @ac_ct_CXX@ 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_alias = @build_alias@ builddir = @builddir@ datadir = @datadir@ datarootdir = @datarootdir@ docdir = @docdir@ dvidir = @dvidir@ exec_prefix = @exec_prefix@ host_alias = @host_alias@ htmldir = @htmldir@ includedir = @includedir@ infodir = @infodir@ install_sh = @install_sh@ libdir = @libdir@ libexecdir = @libexecdir@ localedir = @localedir@ localstatedir = @localstatedir@ 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@ sources_h = \ gcs-checked-int.h \ gcs-color.h \ gcs-color-group.h \ gcs-scheme.h \ gcs-types.h \ log-stream.h \ compat-round.h sources_c = \ gcs-color.cc \ gcs-color-group.cc \ gcs-scheme.cc \ compat-round.cc \ log-stream.cc \ gcs-types.cc noinst_LIBRARIES = libagave.a libagave_a_SOURCES = ${sources_h} ${sources_c} AM_CXXFLAGS = ${AGAVE_CFLAGS} \ -I${top_srcdir}/src all: all-am .SUFFIXES: .SUFFIXES: .cc .o .obj $(srcdir)/Makefile.in: $(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) --gnu src/core/Makefile'; \ cd $(top_srcdir) && \ $(AUTOMAKE) --gnu src/core/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: $(am__configure_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(ACLOCAL_M4): $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh clean-noinstLIBRARIES: -test -z "$(noinst_LIBRARIES)" || rm -f $(noinst_LIBRARIES) libagave.a: $(libagave_a_OBJECTS) $(libagave_a_DEPENDENCIES) -rm -f libagave.a $(libagave_a_AR) libagave.a $(libagave_a_OBJECTS) $(libagave_a_LIBADD) $(RANLIB) libagave.a mostlyclean-compile: -rm -f *.$(OBJEXT) distclean-compile: -rm -f *.tab.c @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/compat-round.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gcs-color-group.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gcs-color.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gcs-scheme.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gcs-types.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/log-stream.Po@am__quote@ .cc.o: @am__fastdepCXX_TRUE@ $(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< @am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(CXXCOMPILE) -c -o $@ $< .cc.obj: @am__fastdepCXX_TRUE@ $(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'` @am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(CXXCOMPILE) -c -o $@ `$(CYGPATH_W) '$<'` 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) tags=; \ 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; }; }'`; \ if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \ test -n "$$unique" || unique=$$empty_fix; \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ $$tags $$unique; \ fi ctags: CTAGS CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) tags=; \ 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)$$tags$$unique" \ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ $$tags $$unique GTAGS: here=`$(am__cd) $(top_builddir) && pwd` \ && 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 $(srcdir)/$$file && test $$d != $(srcdir); then \ cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ fi; \ cp -pR $$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 $(LIBRARIES) 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) 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-noinstLIBRARIES 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 info: info-am info-am: install-data-am: install-dvi: install-dvi-am 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 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 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-noinstLIBRARIES ctags distclean distclean-compile \ distclean-generic 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 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: agave-0.4.7/src/core/gcs-scheme.cc0000644000175000017500000001531710760701126013601 00000000000000/******************************************************************************* * PROJECT: Agave * * AUTHOR: Jonathon Jongsma * * Copyright (c) 2005 Jonathon Jongsma * * License: * 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 * *******************************************************************************/ #include "gcs-scheme.h" #include "gcs-color.h" namespace gcs { // a helper function for sorting color schemes in order of ascending // luminance value static bool compare_luminance(ColorPtr c1, ColorPtr c2) { return *c1 < *c2; } Scheme::Scheme(ColorPtr c, tSchemeType t) : m_color(c), m_schemeType(t) { init(); } void Scheme::init() { // clear the list of colors first. clear(); switch (m_schemeType) { // for a description of the scheme types, see // http://www.color-wheel-pro.com/color-schemes.html case SCHEME_COMPLEMENTS: // only two colors { ColorPtr complement; complement = Color::create(*m_color); complement->set_hue(m_color->get_hue() + (maxHueValue / 2)); push_back(m_color); push_back(complement); } break; case SCHEME_SPLIT_COMPLEMENTS: // three colors { // angle to offset from 180 degrees // tweak this number to get it right const int offset = maxHueValue / 15; ColorPtr scomplement1, scomplement2; // create copies and modify them scomplement1 = Color::create(*m_color); scomplement1->set_hue(m_color->get_hue() + (maxHueValue / 2) - offset); scomplement2 = Color::create(*m_color); scomplement2->set_hue(m_color->get_hue() + (maxHueValue / 2) + offset); push_back(m_color); push_back(scomplement1); push_back(scomplement2); } break; case SCHEME_TETRADS: // four colors (two complementary colors) { // tetrads are technically 4 evenly-spaced colors. // previously I had them non-evenly spaced const int offset = maxHueValue / 4; ColorPtr tetrad1, tetrad2, tetrad3; tetrad1 = Color::create(*m_color); tetrad1->set_hue(m_color->get_hue() + offset); tetrad2 = Color::create(*m_color); tetrad2->set_hue(m_color->get_hue() + maxHueValue / 2); tetrad3 = Color::create(*m_color); tetrad3->set_hue(m_color->get_hue() + maxHueValue / 2 + offset); push_back(m_color); push_back(tetrad1); push_back(tetrad2); push_back(tetrad3); } break; case SCHEME_ANALOGOUS: // three colors next to eachother on a color wheel { // tweak this number to get it right const int offset = maxHueValue / 12; ColorPtr analogous1, analogous2; analogous1 = Color::create(*m_color); analogous1->set_hue(m_color->get_hue() - offset); analogous2 = Color::create(*m_color); analogous2->set_hue(m_color->get_hue() + offset); push_back(analogous1); push_back(m_color); push_back(analogous2); } break; case SCHEME_MONOCHROMATIC: // several colors of a similar hue { ColorPtr mono1, mono2; mono1 = Color::create(*m_color); mono2 = Color::create(*m_color); if (m_color->get_saturation() < (maxSvValue / 10)) { mono1->set_saturation((m_color->get_saturation() + maxSvValue / 3) % maxSvValue); mono2->set_saturation((m_color->get_saturation() + 2* maxSvValue / 3) % maxSvValue); } else { mono1->set_value((m_color->get_value() + maxSvValue / 3) % maxSvValue); mono2->set_value((m_color->get_value() + 2 * maxSvValue / 3) % maxSvValue); } push_back(m_color); push_back(mono1); push_back(mono2); // sort it so that the schemes look similar no matter how // bright the selected color is. This should sort the // scheme left to right from 'dark' to 'light' std::sort(begin(), end(), compare_luminance); } break; case SCHEME_TRIADS: default: // three colors { const int offset = maxHueValue / 3; ColorPtr triad1, triad2; triad1 = Color::create(m_color->gdk()); triad1->set_hue(m_color->get_hue() + offset); triad2 = Color::create(m_color->gdk()); triad2->set_hue(m_color->get_hue() - offset); push_back(m_color); push_back(triad1); push_back(triad2); } break; } } void Scheme::set_color(ColorPtr c) { m_color = c; init(); } void Scheme::set_scheme_type(tSchemeType t) { m_schemeType = t; init(); } bool Scheme::operator==(const Scheme& other) { return (*m_color == *(other.m_color) && m_schemeType == other.m_schemeType); } } // namespace gcs agave-0.4.7/src/core/gcs-scheme.h0000644000175000017500000000345010760701126013436 00000000000000/******************************************************************************* * PROJECT: GNOME Colorscheme * * AUTHOR: Jonathon Jongsma * * Copyright (c) 2005 Jonathon Jongsma * * License: * 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 * *******************************************************************************/ #ifndef _GCS_SCHEME_H #define _GCS_SCHEME_H #include // for std::auto_ptr #include "gcs-color-group.h" namespace gcs { /** A class for storing a colorscheme */ class Scheme : public ColorGroup { public: Scheme(ColorPtr c, tSchemeType schemeType); bool operator==(const Scheme& other); void set_color(ColorPtr c); ColorPtr get_color(void) { return m_color; } void set_scheme_type(tSchemeType t); tSchemeType get_scheme_type(void) { return m_schemeType; } protected: void init(void); ColorPtr m_color; tSchemeType m_schemeType; }; typedef std::auto_ptr ref_scheme_type; } // namespace gcs #endif // _GCS_SCHEME_H agave-0.4.7/src/core/gcs-color-group.cc0000644000175000017500000000255110507563756014617 00000000000000/******************************************************************************* * PROJECT: GNOME Colorscheme * * AUTHOR: Jonathon Jongsma * * Copyright (c) 2005 Jonathon Jongsma * * License: * 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 *******************************************************************************/ #include "gcs-color-group.h" #include #include namespace gcs { void ColorGroup::print(void) { // copy each Color object to the output stream, print using operator<< std::copy(this->begin(), this->end(), std::ostream_iterator(std::cout, "\n")); } } // namespace gcs agave-0.4.7/src/core/gcs-color-group.h0000644000175000017500000000267210626437552014461 00000000000000/******************************************************************************* * PROJECT: GNOME Colorscheme * * AUTHOR: Jonathon Jongsma * * Copyright (c) 2005 Jonathon Jongsma * * License: * 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 * *******************************************************************************/ #ifndef __GCS_COLOR_GROUP_H #define __GCS_COLOR_GROUP_H #include "gcs-types.h" #include namespace gcs { /** A group of colors which can be used as a base class for a color scheme, * a color palette, a list of favorite colors, etc. */ class ColorGroup : public std::vector { public: void print(void); }; } // namespace gcs #endif // __GCS_COLOR_GROUP_H agave-0.4.7/src/core/Makefile.am0000644000175000017500000000066310663715205013313 00000000000000#SUBDIRS = tests sources_h = \ gcs-checked-int.h \ gcs-color.h \ gcs-color-group.h \ gcs-scheme.h \ gcs-types.h \ log-stream.h \ compat-round.h sources_c = \ gcs-color.cc \ gcs-color-group.cc \ gcs-scheme.cc \ compat-round.cc \ log-stream.cc \ gcs-types.cc noinst_LIBRARIES = libagave.a libagave_a_SOURCES = ${sources_h} ${sources_c} AM_CXXFLAGS = ${AGAVE_CFLAGS} \ -I${top_srcdir}/src agave-0.4.7/src/core/log-stream.cc0000644000175000017500000000407311043471161013630 00000000000000/******************************************************************************* * PROJECT: Agave * * AUTHOR: Jonathon Jongsma * * Copyright (c) 2006 Jonathon Jongsma * * License: * 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 * *******************************************************************************/ #include #include "log-stream.h" namespace gcs { bool agave_debug = false; namespace logging { const char* separator = "::"; LogStream::LogStream() : m_stream(&std::cout), m_domain("AGAVE") { } LogStream& LogStream::operator<<(int i) { return pass_through(i); } LogStream& LogStream::operator<< (const char* str) { return pass_through(str); } LogStream& LogStream::operator<<(const std::string& str) { return pass_through(str); } LogStream& LogStream::operator<<(manipulator_t manip) { return pass_through(manip); } void LogStream::set_stream(std::ostream& strm) { m_stream = &strm; } LogStream& LogStream::operator<<(ColorPtr c) { return pass_through(c); } // global stream variable LogStream log_stream; } // namespace logging } // namespace gcs agave-0.4.7/src/core/gcs-checked-int.h0000644000175000017500000001177010455603151014354 00000000000000/******************************************************************************* * PROJECT: GNOME Colorscheme * * AUTHOR: Hubert Matthews * * Copyright (c) 2005 Hubert Matthews * * License: * 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 * *******************************************************************************/ #ifndef __GCS_CHECKED_INT_H #define __GCS_CHECKED_INT_H #include namespace gcs { /** A policy function for CheckedInt that throws an out-of-range exception * when the value tries to exceed the defined limits */ template class OutOfBoundsThrower { public: static int RangeCheck(int newVal) { if (newVal < low || newVal > high) { throw std::out_of_range("RangeCheck failed"); } return newVal; } }; /** A policy function for CheckedInt that makes the value wrap around from * the beginning when the value tries to exceed the defined limits */ template class ModularArithmetic { public: static int RangeCheck(int newVal) { while (newVal >= high) { newVal -= high - low; } while (newVal < low) { newVal += high - low; } return newVal; } }; /** A policy function for CheckedInt that pegs the value at the high or low * limit when the value tries to exceed the defined limits */ template class SaturatedArithmetic { public: static int RangeCheck(int newVal) { if (newVal > high) { newVal = high; } else if (newVal < low) { newVal = low; } return newVal; } }; /** A range-check integer type * * The upper and lower limit can be defined, as well as the behavior when * the limits are exceeded */ template class ValueChecker = OutOfBoundsThrower> class CheckedInt : protected ValueChecker { public: int value; explicit CheckedInt(int i = low) : value(this->RangeCheck(i)) {} CheckedInt& operator+=(int incr) { value = this->RangeCheck(value + incr); return *this; } CheckedInt& operator++() { *this += 1; return *this; } const CheckedInt operator++(int) { CheckedInt temp(*this); ++*this; return temp; } CheckedInt& operator-=(int incr) { *this += - incr; return *this; } inline operator int() const { return value; } CheckedInt& operator=(int i) { value = this->RangeCheck(i); return *this; } const CheckedInt operator+(const CheckedInt & other) const { return CheckedInt(*this) += other; } CheckedInt& operator*=(int incr) { value = this->RangeCheck(value * incr); return *this; } }; } // namespace gcs #endif // __GCS_CHECKED_INT_H agave-0.4.7/src/core/gcs-color.cc0000644000175000017500000002605210663715205013456 00000000000000/******************************************************************************* * PROJECT: GNOME Colorscheme * * AUTHOR: Jonathon Jongsma * * Copyright (c) 2005 Jonathon Jongsma * * License: * 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 * *******************************************************************************/ #include "gcs-color.h" #include // for ostringstream, istringstream #include // for hex, setw, setfill #include // for transform #include // for invalid_argument exception #include "compat-round.h" // for round, floor #include "core/log-stream.h" namespace gcs { const double Color::m_redLuminance = 0.2126; const double Color::m_greenLuminance = 0.7152; const double Color::m_blueLuminance = 0.0722; ColorPtr Color::create(void) { ColorPtr clr(new Color()); return clr; } ColorPtr Color::create(tHexString str) { ColorPtr clr(new Color(str)); return clr; } ColorPtr Color::create(const gint r, const gint g, const gint b, const Glib::ustring name) { ColorPtr clr(new Color(r, g, b, name)); return clr; } ColorPtr Color::create(const Gdk::Color& c) { ColorPtr clr(new Color(c)); return clr; } ColorPtr Color::create(const Color& c) { ColorPtr clr(new Color(c)); return clr; } Color::Color(void) : pColor(new Gdk::Color("#000000")) { //LOG("Created Color: " << get_hexstring()); } Color::Color(tHexString hex) : pColor(new Gdk::Color()) { set(hex); //LOG("Created Color: " << get_hexstring()); } Color::Color(const gint r, const gint g, const gint b, const Glib::ustring name) : pColor(new Gdk::Color), m_name(name) { pColor->set_rgb_p(rgb_as_p(r), rgb_as_p(g), rgb_as_p(b)); //LOG("Created Color: " << get_hexstring()); } Color::Color(const Gdk::Color& c) : pColor(new Gdk::Color(c)) { //LOG("Copied GDK Color: " << get_hexstring()); } Color::Color(const Color& c) { pColor = std::auto_ptr(new Gdk::Color(c.gdk())); m_name = c.m_name; //LOG("Copied Color: " << get_hexstring()); } Color::~Color(void) { //LOG("Destroyed Color: " << get_hexstring()); } Gdk::Color& Color::gdk(void) const { return *pColor; } void Color::set(const gint r, const gint g, const gint b, Glib::ustring name) { pColor->set_rgb_p(rgb_as_p(r), rgb_as_p(g), rgb_as_p(b)); set_name(name); } bool Color::set(tHexString hex) { bool success = pColor->set(hex); if (!success) { success = pColor->set(normalize_hex(hex)); } return success; } tColorRgb Color::get_rgb(void) const { tColorRgb rgb; rgb.red = get_red(); rgb.green = get_green(); rgb.blue = get_blue(); return rgb; } tColorHsv Color::get_hsv(void) const { return rgb_to_hsv(get_rgb()); } gint Color::get_hue(void) const { return rgb_to_hsv(get_rgb()).hue; } gint Color::get_saturation(void) const { return rgb_to_hsv(get_rgb()).saturation; } gint Color::get_value(void) const { return rgb_to_hsv(get_rgb()).value; } gint Color::get_red(void) const { return static_cast(compat_round(pColor->get_red_p() * static_cast(maxRgbValue))); } void Color::set_red(gint r) { pColor->set_red(maxGdkColorValue * r / maxRgbValue); } gint Color::get_green(void) const { return static_cast(compat_round(pColor->get_green_p() * static_cast(maxRgbValue))); } void Color::set_green(gint g) { pColor->set_green(maxGdkColorValue * g / maxRgbValue); } gint Color::get_blue(void) const { return static_cast(compat_round(pColor->get_blue_p() * static_cast(maxRgbValue))); } void Color::set_blue(gint b) { pColor->set_blue(maxGdkColorValue * b / maxRgbValue); } void Color::set_hue(gint h) { tColorHsv hsv = get_hsv(); hsv.hue = h; set_hsv(hsv); } void Color::set_saturation(gint s) { tColorHsv hsv = get_hsv(); hsv.saturation = s; set_hsv(hsv); } void Color::set_value(gint v) { tColorHsv hsv = get_hsv(); hsv.value = v; set_hsv(hsv); } void Color::set_hsv(tColorHsv hsv) { // Gdk::Color::set_hsv expects hue [0,360] and s and v [0,1] pColor->set_hsv(hsv.hue, static_cast(hsv.saturation) / static_cast(maxSvValue), static_cast(hsv.value) / static_cast(maxSvValue)); } tHexString Color::get_hexstring(void) const { return rgb_to_hex(get_rgb()); } void Color::set_name(Glib::ustring name) { m_name = name; } Glib::ustring Color::get_name(void) const { if (m_name.size()) return m_name; else return get_hexstring(); } gint Color::get_luminance(void) const { return static_cast(static_cast(get_red()) * m_redLuminance + static_cast(get_green()) * m_greenLuminance + static_cast(get_blue()) * m_blueLuminance); } bool Color::operator==(const Color& c) { bool status = false; // first check if we're comparing it to itself, then check all of the // attributes to see if their values are the same if ((this == &c) || (*pColor == *c.pColor)) { status = true; } else { if (get_hexstring() == c.get_hexstring()) { status = true; } } return status; } bool Color::operator!=(const Color& c) { return !(*this == c); } bool Color::operator<(const Color& c) { return this->get_luminance() < c.get_luminance(); } Color& Color::operator=(const Color& c) { // First check if we're trying to assign it to itself if (this != &c) { pColor = std::auto_ptr(new Gdk::Color(*c.pColor)); } return *this; } // r,g,b values are from 0 to 1 // h = [0,360], s = [0,1], v = [0,1] // if s == 0, then h = -1 (undefined) tColorHsv Color::rgb_to_hsv(const tColorRgb rgb) { gint min, max, delta; tColorHsv out; gdouble tempHue, tempSat, tempVal; min = MIN(MIN(rgb.red, rgb.green), rgb.blue); max = MAX(MAX(rgb.red, rgb.green), rgb.blue); tempVal = static_cast(maxSvValue) * (static_cast(max) / static_cast(maxRgbValue)); delta = max - min; if(max != 0) { tempSat = static_cast(maxSvValue) * (static_cast(delta) / static_cast(max)); } else { // red = green = blue = 0 // s = 0, v is undefined out.saturation = 0; out.hue = 0; out.value = static_cast(tempVal); return out; } // needs to be shifted to 0-255 if(rgb.red == max) { if (delta != 0) { tempHue = static_cast(rgb.green - rgb.blue) / static_cast(delta); // between yellow & magenta } else { tempHue = 0; } } else if(rgb.green == max) { tempHue = 2.0 + static_cast(rgb.blue - rgb.red) / static_cast(delta); // between cyan & yellow } else { tempHue = 4.0 + static_cast(rgb.red - rgb.green) / static_cast(delta); // between magenta & cyan } tempHue *= static_cast(maxHueValue) / static_cast(6); // degrees tempHue = compat_round(tempHue); out.saturation = static_cast(compat_round(tempSat)); out.value = static_cast(compat_round(tempVal)); if(tempHue < 0) { tempHue += maxHueValue; } out.hue = static_cast(tempHue); return out; } tHexString Color::rgb_to_hex(const tColorRgb color) { std::ostringstream hString; hString << std::hex << std::setfill('0') << "#" << std::setw(2) << (gint) color.red << std::setw(2) << (gint) color.green << std::setw(2) << (gint) color.blue; return static_cast(hString.str()); } gdouble Color::rgb_as_p(gint rgbVal) { return static_cast(static_cast(rgbVal) / static_cast(maxRgbValue)); } tHexString Color::normalize_hex(tHexString hex) { // FIXME: this is kinda hack-y but it works for limited situations -- // it needs more intelligence Glib::ustring valid_chars = "#0123456789abcdefABCDEF"; if (hex.find_first_not_of(valid_chars) == Glib::ustring::npos) { switch (hex.size()) { case 3: // make "abc" into "#aabbcc" hex.insert(2, 1, hex[2]); hex.insert(1, 1, hex[1]); hex.insert(0, 1, hex[0]); hex.insert(0, 1, '#'); break; case 6: // make "aabbcc" into "#aabbcc" hex.insert(0, 1, '#'); break; default: ; // do nothing } } return hex.lowercase(); } std::ostream& operator<<(std::ostream& out, const Color c) { return out << std::setw(3) << c.get_red() << " " << std::setw(3) << c.get_green() << " " << std::setw(3) << c.get_blue() << " " << c.get_name(); } std::ostream& operator<<(std::ostream& out, const ColorPtr c) { return out << *c; } } // namespace gcs agave-0.4.7/src/core/gcs-color.h0000644000175000017500000001611110663715205013313 00000000000000/******************************************************************************* * PROJECT: GNOME Colorscheme * * AUTHOR: Jonathon Jongsma * * Copyright (c) 2005 Jonathon Jongsma * * License: * 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 * *******************************************************************************/ #ifndef __GCS_COLOR_H #define __GCS_COLOR_H #include "gcs-types.h" #include #include // for std::ostream, etc. #include // for std::auto_ptr namespace gcs { /** The Color class keeps track of a color by a couple different property * sets that define a color. * * The first property set is a specification of the color in terms of Red, * Green, and Blue values (RGB). It also specifies the color in terms of * Hue, Saturation, and Value (HSV). The RGB value can also be specified * in a hex string, similar to how colors are usually specified in HTML and * CSS. */ class Color { public: // Create a color object and return it as a shared pointer static ColorPtr create(void); static ColorPtr create(tHexString str); static ColorPtr create(const gint r, const gint g, const gint b, const Glib::ustring name = Glib::ustring()); static ColorPtr create(const Gdk::Color&); static ColorPtr create(const Color&); /** Destroy a Color object */ ~Color(void); // destructor Gdk::Color& gdk(void) const; /** Sets the r, g, and b values of the Color object, and updates * other values as necessary * \param r The Red component * \param g The Green component * \param b The Blue component */ void set(const gint r, const gint g, const gint b, const Glib::ustring name = Glib::ustring()); /** Sets the Hex string representation of the Color object, and * updates other values as necessary * \param hex The hex string representing RGB */ bool set(const tHexString hex); /** Gets the RGB hex string */ tHexString get_hexstring() const; /** Gets the name of the color */ Glib::ustring get_name() const; /** Sets the name of the color */ void set_name(Glib::ustring name); /** Gets the red component */ gint get_red(void) const; float get_red_p(void) const { return pColor->get_red_p(); } /** Sets the red component. Must also update h, s, and v */ void set_red(const gint r); // must update h, s, v /** Gets the green component */ gint get_green(void) const; float get_green_p(void) const { return pColor->get_green_p(); } /** Sets the green component. Must also update h, s, and v */ void set_green(const gint g); // must update h, s, v /** Gets the blue component */ gint get_blue(void) const; float get_blue_p(void) const { return pColor->get_blue_p(); } /** Sets the blue component. Must also update h, s, and v */ void set_blue(const gint b); // must update h, s, v /** Gets the hue component */ gint get_hue(void) const; /** Sets the hue component. Must also update r, g, and b */ void set_hue(const gint h); // must update r, g, b /** Gets the saturation component */ gint get_saturation(void) const; /** Sets the saturation component. Must also update r, g, and b */ void set_saturation(const gint s); // must update r, g, b /** Gets the value component */ gint get_value(void) const; /** Sets the value component. Must also update r, g, and b */ void set_value(const gint v); // must update r, g, b gint get_luminance(void) const; // Conversion functions /** Converts an RGB color definition to a color definition in hex * string format * \param color A color definition in RGB format * \return A hex string representation of RGB * \sa hex_to_rgb */ static tHexString rgb_to_hex(const tColorRgb color); /** Converts an RGB value to an HSV value */ static tColorHsv rgb_to_hsv(const tColorRgb rgb); static gdouble rgb_as_p(gint rgbVal); static tHexString normalize_hex(tHexString hex); /** compares two Color objects to see if they're equal */ bool operator==(const Color& c); bool operator!=(const Color& c); bool operator<(const Color& c); Color& operator=(const Color& c); /** Prints a representation of the Color to an output stream */ friend std::ostream& operator<<(std::ostream& out, const Color c); friend std::ostream& operator<<(std::ostream& out, const ColorPtr c); /** Gets the values of red, green, and blue in a struct */ tColorRgb get_rgb(void) const; /** Gets the values of Hue, Saturation, and Value in a struct */ tColorHsv get_hsv(void) const; void set_hsv(tColorHsv); #ifdef UNIT_TEST friend class ColorConstructionSuite; #endif protected: Color(void); /** Create a Color object by specifying RGB in hex string * \param hex the hex string that dfines the color */ Color(const tHexString hex); /** Create a Color by specifying separate red, green, and blue values * \param r The value of Red, between 0 and 255 * \param g The value of Green, between 0 and 255 * \param b The value of Blue, between 0 and 255 */ Color(const gint r, const gint g, const gint b, const Glib::ustring name = Glib::ustring()); /** Construct a Color object from a Gdk::Color object */ Color(const Gdk::Color& c); /** Copy Constructor */ Color(const Color& c); private: std::auto_ptr pColor; Glib::ustring m_name; static const double m_redLuminance; static const double m_greenLuminance; static const double m_blueLuminance; }; } // namespace gcs #endif // __GCS_COLOR_H agave-0.4.7/src/core/log-stream.h0000644000175000017500000000546111043471176013502 00000000000000/******************************************************************************* * PROJECT: Agave * * AUTHOR: Jonathon Jongsma * * Copyright (c) 2006 Jonathon Jongsma * * License: * 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 * *******************************************************************************/ #ifndef __LOG_STREAM_H #define __LOG_STREAM_H #include #include #include "gcs-color.h" using std::endl; // could print out the name of the function if we wanted to, but it takes up a // lot of screen space... //#define HERE__ __ASSERT_FUNCTION << gcs::logging::separator << __FILE__ << gcs::logging::separator << __LINE__ << gcs::logging::separator #define HERE__ __FILE__ << ::gcs::logging::separator << __LINE__ << ::gcs::logging::separator #define DOMAIN__ gcs::logging::log_stream.domain() << ::gcs::logging::separator #define LOG_STREAM gcs::logging::log_stream << DOMAIN__ << HERE__ #define LOG(str) LOG_STREAM << str << endl; namespace gcs { extern bool agave_debug; namespace logging { extern const char* separator; typedef std::ostream& (*manipulator_t)(std::ostream&); class LogStream { public: LogStream(); LogStream& operator<<(int i); LogStream& operator<<(const char* str); LogStream& operator<<(const std::string& str); LogStream& operator<<(ColorPtr c); LogStream& operator<<(manipulator_t manip); void set_stream(std::ostream& strm); const char* domain() const { return m_domain; } private: template LogStream& pass_through(T var); std::ostream* m_stream; const char* m_domain; }; template LogStream& LogStream::pass_through(T var) { if (m_stream && agave_debug) (*m_stream) << var; return *this; } extern LogStream log_stream; } // namespace logging } // namespace gcs #endif // __LOG_STREAM_H agave-0.4.7/src/core/compat-round.cc0000644000175000017500000001556410507563756014215 00000000000000/* ==================================================== * Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved. * * Developed at SunPro, a Sun Microsystems, Inc. business. * Permission to use, copy, modify, and distribute this * software is freely granted, provided that this notice * is preserved. * ==================================================== * * Copyright (c) 2003, Steven G. Kargl * Copyright (c) 2003 Mike Barcroft * Copyright (c) 2002, 2003 David Schultz * All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice unmodified, this list of conditions, and the following * disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ #include /* Symbolic constants to classify floating point numbers. */ #define COMPAT_FP_INFINITE 0x01 #define COMPAT_FP_NAN 0x02 #define COMPAT_FP_NORMAL 0x04 #define COMPAT_FP_SUBNORMAL 0x08 #define COMPAT_FP_ZERO 0x10 #ifdef Linux #include #elif defined(__FreeBSD__) #include #endif #define compat_fpclassify(x) \ ((sizeof (x) == sizeof (float)) ? compat___fpclassifyf(x) \ : (sizeof (x) == sizeof (double)) ? compat___fpclassifyd(x) \ : compat___fpclassifyl(x)) union compat_IEEEf2bits { float f; struct { #if _BYTE_ORDER == _LITTLE_ENDIAN unsigned int man :23; unsigned int exp :8; unsigned int sign :1; #else /* _BIG_ENDIAN */ unsigned int sign :1; unsigned int exp :8; unsigned int man :23; #endif } bits; }; union compat_IEEEd2bits { double d; struct { #if _BYTE_ORDER == _LITTLE_ENDIAN unsigned int manl :32; unsigned int manh :20; unsigned int exp :11; unsigned int sign :1; #else /* _BIG_ENDIAN */ unsigned int sign :1; unsigned int exp :11; unsigned int manh :20; unsigned int manl :32; #endif } bits; }; #ifdef __alpha__ union compat_IEEEl2bits { long double e; struct { unsigned int manl :32; unsigned int manh :20; unsigned int exp :11; unsigned int sign :1; } bits; }; #define compat_mask_nbit_l(u) ((void)0) #elif __amd64__ union compat_IEEEl2bits { long double e; struct { unsigned int manl :32; unsigned int manh :32; unsigned int exp :15; unsigned int sign :1; unsigned int junkl :16; unsigned int junkh :32; } bits; }; #define compat_mask_nbit_l(u) ((u).bits.manh &= 0x7fffffff) #elif __arm__ union compat_IEEEl2bits { long double e; struct { unsigned int manl :32; unsigned int manh :32; unsigned int exp :15; unsigned int sign :1; unsigned int junk :16; } bits; }; #define compat_mask_nbit_l(u) ((u).bits.manh &= 0x7fffffff) #elif __i386__ union compat_IEEEl2bits { long double e; struct { unsigned int manl :32; unsigned int manh :32; unsigned int exp :15; unsigned int sign :1; unsigned int junk :16; } bits; }; #define compat_mask_nbit_l(u) ((u).bits.manh &= 0x7fffffff) #elif __ia64__ union compat_IEEEl2bits { long double e; struct { #if _BYTE_ORDER == _LITTLE_ENDIAN unsigned int manl :32; unsigned int manh :32; unsigned int exp :15; unsigned int sign :1; unsigned long junk :48; #else /* _BIG_ENDIAN */ unsigned long junk :48; unsigned int sign :1; unsigned int exp :15; unsigned int manh :32; unsigned int manl :32; #endif } bits; }; #define compat_mask_nbit_l(u) ((u).bits.manh &= 0x7fffffff) #elif __powerpc__ union compat_IEEEl2bits { long double e; struct { unsigned int sign :1; unsigned int exp :15; unsigned long long manh :48; unsigned long long manl :64; } bits; }; #define compat_mask_nbit_l(u) ((void)0) #elif __sparc64__ union compat_IEEEl2bits { long double e; struct { unsigned int sign :1; unsigned int exp :15; unsigned long manh :48; unsigned long manl :64; } bits; }; #define compat_mask_nbit_l(u) ((void)0) #endif static int compat___fpclassifyf(float f) { union compat_IEEEf2bits u; u.f = f; if (u.bits.exp == 0) { if (u.bits.man == 0) return (COMPAT_FP_ZERO); return (COMPAT_FP_SUBNORMAL); } if (u.bits.exp == 255) { if (u.bits.man == 0) return (COMPAT_FP_INFINITE); return (COMPAT_FP_NAN); } return (COMPAT_FP_NORMAL); } static int compat___fpclassifyd(double d) { union compat_IEEEd2bits u; u.d = d; if (u.bits.exp == 0) { if ((u.bits.manl | u.bits.manh) == 0) return (COMPAT_FP_ZERO); return (COMPAT_FP_SUBNORMAL); } if (u.bits.exp == 2047) { if ((u.bits.manl | u.bits.manh) == 0) return (COMPAT_FP_INFINITE); return (COMPAT_FP_NAN); } return (COMPAT_FP_NORMAL); } static int compat___fpclassifyl(long double e) { union compat_IEEEl2bits u; u.e = e; if (u.bits.exp == 0) { if ((u.bits.manl | u.bits.manh) == 0) return (COMPAT_FP_ZERO); return (COMPAT_FP_SUBNORMAL); } compat_mask_nbit_l(u); /* Mask normalization bit if applicable. */ if (u.bits.exp == 32767) { if ((u.bits.manl | u.bits.manh) == 0) return (COMPAT_FP_INFINITE); return (COMPAT_FP_NAN); } return (COMPAT_FP_NORMAL); } double compat_round(double x) { double t; int i; i = compat_fpclassify(x); if (i == COMPAT_FP_INFINITE || i == COMPAT_FP_NAN) return (x); if (x >= 0.0) { t = ceil(x); if (t - x > 0.5) t -= 1.0; return (t); } else { t = ceil(-x); if (t + x > 0.5) t -= 1.0; return (-t); } } agave-0.4.7/src/core/gcs-types.h0000644000175000017500000001131210663715205013337 00000000000000/******************************************************************************* * PROJECT: GNOME Colorscheme * * AUTHOR: Jonathon Jongsma * * Copyright (c) 2005 Jonathon Jongsma * * License: * 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 * *******************************************************************************/ #ifndef __GCS_TYPES_H #define __GCS_TYPES_H #include #include #include "gcs-checked-int.h" /** The gcs namespace includes both the colorscheme library and the * GNOME colorscheme application */ namespace gcs { /** A Type to hold levels for individual color components such as red or blue */ typedef float tColorByte; const gushort maxGdkColorValue = 65535; /** The highest value that can be assigned to an RGB colorByte */ const gint maxRgbValue = 255; /** The highest value that can be assigned to a Hue colorByte */ const gint maxHueValue = 360; /** The highest value that can be assigned to a Saturation or Value * colorByte */ const gint maxSvValue = 100; /** The lowest value that can be assigned to a colorByte */ const gint minColorValue = 0; /** A type to hold a hue specification. * * The value of this type can range from 0 to 360, and will wrap around * when the value would exceed either limit since it is meant to represent * the degrees on a color wheel * */ typedef CheckedInt hue_t; /** A type to hold a Saturation or Value specification * * This value can range from 0 to 100 and will throw an out-of-range * exception if it exceeds these limits * */ typedef CheckedInt sv_t; /** A type to hold a Red, Green, or Blue specification * * This value can range from 0 to 255 and will throw an out-of-range * exception if it exceeds these limits * */ typedef CheckedInt rgb_t; /** A type to hold HSV color data * * Contains data members to hold hue, saturation, and value data separately */ class tColorHsv { public: tColorHsv(const int h=0, const int s=0, const int v=0); tColorHsv(const tColorHsv& hsv); hue_t hue; sv_t saturation; sv_t value; }; /** A type to hold RGB color data * Contains data members to hold red, green, and blue data separately */ class tColorRgb { public: tColorRgb(const int r=0, const int g=0, const int b=0); tColorRgb(const tColorRgb& rgb); rgb_t red; rgb_t green; rgb_t blue; }; /** Prints out RGB colors in a nice format for debugging */ std::ostream& operator<<(std::ostream& out, tColorRgb color); /** Prints out HSV colors in a nice format for debugging */ std::ostream& operator<<(std::ostream& out, tColorHsv color); /** Compare tColorRgb values */ bool operator==(tColorRgb first, tColorRgb last); /** Compare tColorHsv values */ bool operator==(tColorHsv first, tColorHsv last); /** A type to hold the Hex string representation of a color. * The normalized form contains 6 characters consisting of the numbers 0-9 * and the letters A-F. * * The first two characters define the levels for the red component, the * second two characters define the Green level, and the last two define * the blue level. */ typedef Glib::ustring tHexString; /** smart pointer for holding Color objects */ class Color; typedef boost::shared_ptr ColorPtr; /** The different types of color scheme algorithms that are supported by * the library. */ typedef enum { SCHEME_COMPLEMENTS, SCHEME_SPLIT_COMPLEMENTS, SCHEME_TRIADS, SCHEME_TETRADS, SCHEME_ANALOGOUS, SCHEME_MONOCHROMATIC } tSchemeType; } // namespace gcs #endif // __GCS_TYPES_H agave-0.4.7/src/core/gcs-types.cc0000644000175000017500000000600610455603151013474 00000000000000/******************************************************************************* * PROJECT: GNOME Colorscheme * * AUTHOR: Jonathon Jongsma * * Copyright (c) 2005 Jonathon Jongsma * * License: * 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 * *******************************************************************************/ #include "gcs-types.h" #include #include namespace gcs { tColorHsv::tColorHsv(const int h, const int s, const int v) : hue(h), saturation(s), value(v) { } tColorHsv::tColorHsv(const tColorHsv& hsv) : hue(hsv.hue), saturation(hsv.saturation), value(hsv.value) { } tColorRgb::tColorRgb(const int r, const int g, const int b) : red(r), green(g), blue(b) { } tColorRgb::tColorRgb(const tColorRgb& rgb) : red(rgb.red), green(rgb.green), blue(rgb.blue) { } std::ostream& operator<<(std::ostream& out, tColorRgb color) { return out << std::endl << "RGB:" << std::endl \ << std::setw(12) << "Red: " << std::setw(3) << color.red << std::endl \ << std::setw(12) << "Green: " << std::setw(3) << color.green << std::endl \ << std::setw(12) << "Blue: " << std::setw(3) << color.blue << std::endl; } std::ostream& operator<<(std::ostream& out, const tColorHsv color) { return out << std::endl << "HSV:" << std::endl \ << std::setw(12) << "Hue: " << std::setw(3) << color.hue << std::endl \ << std::setw(12) << "Saturation: " << std::setw(3) << color.saturation << std::endl \ << std::setw(12) << "Value: " << std::setw(3) << color.value << std::endl; } bool operator==(tColorRgb first, tColorRgb last) { if (first.red == last.red && first.green == last.green && first.blue == last.blue) { return true; } else { return false; } } bool operator==(tColorHsv first, tColorHsv last) { if ((first.hue == last.hue && first.saturation == last.saturation && first.value == last.value) || (first.value == 0 && last.value == 0)) { return true; } else { return false; } } } // namespace gcs agave-0.4.7/src/core/compat-round.h0000644000175000017500000000351710507563756014052 00000000000000/* ==================================================== * Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved. * * Developed at SunPro, a Sun Microsystems, Inc. business. * Permission to use, copy, modify, and distribute this * software is freely granted, provided that this notice * is preserved. * ==================================================== * * Copyright (c) 2003, Steven G. Kargl * Copyright (c) 2003 Mike Barcroft * Copyright (c) 2002, 2003 David Schultz * All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice unmodified, this list of conditions, and the following * disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ double compat_round(double x); agave-0.4.7/src/gcs-mainwindow-actions.cc0000644000175000017500000003661210760701126015220 00000000000000/******************************************************************************* * PROJECT: GNOME Colorscheme * * AUTHOR: Jonathon Jongsma * * Copyright (c) 2005 Jonathon Jongsma * * License: * 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 * *******************************************************************************/ #include #include #include #include #include #include #include "gcs-mainwindow.h" #include "dialogs/gcs-about-window.h" #include "dialogs/gcs-save-chooser.h" #include "widgets/gcs-bookmarklist.h" #include "core/log-stream.h" #include "gcs-history.h" #include "gcs-i18n.h" namespace gcs { void clipboard_owner_changed(GtkClipboard* clipboard, GdkEvent* event, gpointer data) { MainWindow::Instance().update_paste_status(); } void MainWindow::init_actions(void) { // Register stock icons for GNOME Colorscheme Glib::RefPtr iconFactory = Gtk::IconFactory::create(); iconFactory->add_default(); // the icon for lightening a scheme try { Glib::RefPtr refLighten = Gdk::Pixbuf::create_from_file( AGAVE_ICONDIR "/lighten.png"); boost::shared_ptr pLightenID(new Gtk::StockID("gcs-lighten")); boost::shared_ptr pLighten(new Gtk::IconSet(refLighten)); // the icon for darkening a scheme Glib::RefPtr refDarken = Gdk::Pixbuf::create_from_file( AGAVE_ICONDIR "/darken.png"); boost::shared_ptr pDarkenID(new Gtk::StockID("gcs-darken")); boost::shared_ptr pDarken(new Gtk::IconSet(refDarken)); // the icon for increasing a scheme's saturation Glib::RefPtr refSat = Gdk::Pixbuf::create_from_file( AGAVE_ICONDIR "/saturate.png"); boost::shared_ptr pSatID(new Gtk::StockID("gcs-saturate")); boost::shared_ptr pSat(new Gtk::IconSet(refSat)); // the icon for desaturating a scheme Glib::RefPtr refDesat = Gdk::Pixbuf::create_from_file( AGAVE_ICONDIR "/desaturate.png"); boost::shared_ptr pDesatID(new Gtk::StockID("gcs-desaturate")); boost::shared_ptr pDesat(new Gtk::IconSet(refDesat)); // add all icons to the factory so that they can be used later on. iconFactory->add(*pLightenID, *pLighten); iconFactory->add(*pDarkenID, *pDarken); iconFactory->add(*pSatID, *pSat); iconFactory->add(*pDesatID, *pDesat); /* Create the main menu */ m_refActionGroup = Gtk::ActionGroup::create(); LOG("Created ActionGroup"); /* The File Menu */ m_refActionGroup->add(Gtk::Action::create("MenuFile", _("_File"))); m_refActionGroup->add(Gtk::Action::create("New", Gtk::Stock::NEW), sigc::mem_fun(*this, &MainWindow::on_action_file_new) ); m_refActionGroup->add(Gtk::Action::create("SaveScheme", Gtk::Stock::SAVE, _("_Save Scheme..."), _("Save current scheme as a GIMP Palette file")), sigc::mem_fun(*this, &MainWindow::on_action_file_save)); m_refActionGroup->add(Gtk::Action::create("ExportFavorites", Gtk::Stock::SAVE_AS, _("E_xport Favorites..."), _("Export favorite colors as a GIMP Palette file")), sigc::mem_fun(*this, &MainWindow::on_action_file_export)); m_refActionGroup->add(Gtk::Action::create("Quit", Gtk::Stock::QUIT), sigc::mem_fun(*this, &MainWindow::on_action_file_quit)); /* The Edit Menu */ m_refActionGroup->add(Gtk::Action::create("MenuEdit", _("_Edit"))); m_refActionGroup->add(Gtk::Action::create("Preferences", Gtk::Stock::PREFERENCES), sigc::mem_fun(*this, &MainWindow::on_action_edit_prefs)); /* The Help menu */ m_refActionGroup->add(Gtk::Action::create("MenuHelp", _("_Help"))); m_refActionGroup->add(Gtk::Action::create("Contents", Gtk::Stock::HELP, _("_Contents"), _("Open the Agave manual")), Gtk::AccelKey("F1"), sigc::mem_fun(*this, &MainWindow::on_action_help_contents)); // Gtk::Stock::About requires gtkmm 2.6 m_refActionGroup->add(Gtk::Action::create("About", Gtk::Stock::ABOUT), sigc::mem_fun(*this, &MainWindow::on_action_help_about)); // History Navigation m_refActionGroup->add(Gtk::Action::create("HistoryBack", Gtk::Stock::GO_BACK), Gtk::AccelKey("Left"), sigc::mem_fun(*this, &MainWindow::on_action_history_back)); m_refActionGroup->get_action("HistoryBack")->set_sensitive(false); m_refActionGroup->get_action("HistoryBack")->property_is_important() = true; m_refActionGroup->add(Gtk::Action::create("HistoryFwd", Gtk::Stock::GO_FORWARD), Gtk::AccelKey("Right"), sigc::mem_fun(*this, &MainWindow::on_action_history_fwd)); m_refActionGroup->get_action("HistoryFwd")->set_sensitive(false); // Bookmark Actions m_refActionGroup->add(Gtk::Action::create("MenuBookmarks", _("Fa_vorites"))); m_refActionGroup->add(Gtk::Action::create("AddBookmark", Gtk::Stock::ADD, _("Add to Favorites"), _("Add the current color to favorites")), Gtk::AccelKey("D"), sigc::mem_fun(*this, &MainWindow::on_action_add_bookmark)); m_refActionGroup->add(Gtk::Action::create("RemoveBookmark", Gtk::Stock::REMOVE, _("Remove Selected"), _("Remove the selected color from your favorites")), Gtk::AccelKey("X"), sigc::mem_fun(*this, &MainWindow::on_action_remove_bookmark)); m_refActionGroup->get_action("RemoveBookmark")->set_sensitive(false); m_refActionGroup->add(Gtk::Action::create("ClearBookmarks", Gtk::Stock::CLEAR, _("_Clear All"), _("Clear the list of favorite colors")), sigc::mem_fun(*this, &MainWindow::on_action_clear_bookmarks)); m_refActionGroup->get_action("ClearBookmarks")->set_sensitive(false); // Actions for lightness and saturation m_refActionGroup->add(Gtk::Action::create("LightenScheme", *pLightenID, _("_Lighten Scheme"), _("Increase the brightness")), Gtk::AccelKey("KP_Add"), sigc::mem_fun(*this, &MainWindow::on_action_lighten_scheme)); m_refActionGroup->add(Gtk::Action::create("DarkenScheme", *pDarkenID, _("_Darken Scheme"), _("Decrease the brightness")), Gtk::AccelKey("KP_Subtract"), sigc::mem_fun(*this, &MainWindow::on_action_darken_scheme)); m_refActionGroup->add(Gtk::Action::create("SaturateScheme", *pSatID, _("_Saturate Scheme"), _("Increase the saturation")), Gtk::AccelKey("KP_Add"), sigc::mem_fun(*this, &MainWindow::on_action_saturate_scheme)); m_refActionGroup->add(Gtk::Action::create("DesaturateScheme", *pDesatID, _("D_esaturate Scheme"), _("Decrease the saturation")), Gtk::AccelKey("KP_Subtract"), sigc::mem_fun(*this, &MainWindow::on_action_desaturate_scheme)); m_refActionGroup->add(Gtk::Action::create("Randomize", Gtk::Stock::REFRESH, _("_Random"), _("Generate a random color")), Gtk::AccelKey("R"), sigc::mem_fun(*this, &MainWindow::on_action_randomize)); m_refActionGroup->get_action("Randomize")->property_is_important() = true; // paste color m_refActionGroup->add(Gtk::Action::create("Paste", Gtk::Stock::PASTE), Gtk::AccelKey("V"), sigc::mem_fun(*this, &MainWindow::on_action_paste)); // We need to figure out when there is valid data in the clipboard so // that we can disable the menu item when there's nothing to paste. We // do this by connecting to the "owner-change" signal of the clipboard // to check the status of the clipboard whenever it changes Glib::RefPtr refClipboard = Gtk::Clipboard::get(); // For now, connect to the clipboard owner-change signal in gtk+ since // it's not wrapped by gtkmm yet g_signal_connect(refClipboard->gobj(), "owner-change", G_CALLBACK(clipboard_owner_changed), NULL); // update the paste status at startup so it's disabled if there's // nothing in the clipboard at startup update_paste_status(); // Actions for context menu on colorswatches m_refActionGroup->add(Gtk::Action::create("UseColor", "_Use"), sigc::mem_fun(*this, &MainWindow::on_action_use_color)); } catch (Glib::Error& ex) { std::cerr << __FILE__ << ": " << ex.what() << std::endl; } } /* File Menu Actions */ void MainWindow::on_action_file_new(void) { LOG("file->new"); static gint i = 1; std::vector palettes; palettes.push_back(AGAVE_PALETTEDIR "/Tango-Palette.gpl"); palettes.push_back(AGAVE_PALETTEDIR "/Web.gpl"); palettes.push_back(AGAVE_PALETTEDIR "/Visibone.gpl"); palettes.push_back(AGAVE_PALETTEDIR "/Ximian-Palette.gpl"); m_palette_view->set_from_file(palettes[i % palettes.size()]); i++; } void MainWindow::on_action_file_save(void) { // FIXME: add stuff } void MainWindow::on_action_file_export(void) { Glib::ustring filename; Dialogs::SaveChooser save_dialog("Export Favorites..."); if (save_dialog.run() == Gtk::RESPONSE_OK) { filename = save_dialog.get_filename(); } LOG("saving file to " << filename); m_bookmark_list->save_to_disk(filename); } void MainWindow::on_action_file_quit(void) { quit(); } /* Edit Menu Actions */ void MainWindow::on_action_edit_prefs(void) { } /* Help Menu Actions */ void MainWindow::on_action_help_contents(void) { gnome_help_display("agave.xml", NULL /* link id */, NULL /* GError */); } void MainWindow::on_action_help_about(void) { m_pAbout->show(); } void MainWindow::on_action_history_back(void) { LOG("Going Back"); ColorPtr c = Color::create(m_pHistory->go_back()); set_color(c); } void MainWindow::on_action_history_fwd(void) { LOG("Going Forward"); ColorPtr c = Color::create(m_pHistory->go_forward()); set_color(c); } void MainWindow::on_action_lighten_scheme(void) { ColorPtr clr = Color::create(m_color_button->get_color()); // bump value by 5% clr->set_value(static_cast(0.05 * maxSvValue + clr->get_value())); set_color(clr); } void MainWindow::on_action_darken_scheme(void) { ColorPtr clr = Color::create(m_color_button->get_color()); // decrease value by 5% clr->set_value(static_cast(clr->get_value() - 0.05 * maxSvValue)); set_color(clr); } void MainWindow::on_action_saturate_scheme(void) { ColorPtr clr = Color::create(m_color_button->get_color()); // increase saturation by 5% clr->set_saturation(static_cast(clr->get_saturation() + 0.05 * maxSvValue)); set_color(clr); } void MainWindow::on_action_desaturate_scheme(void) { ColorPtr clr = Color::create(m_color_button->get_color()); // decrease value by 5% clr->set_saturation(static_cast(clr->get_saturation() - 0.05 * maxSvValue)); set_color(clr); } void MainWindow::on_action_randomize(void) { gint r, g, b; r = rand_range(maxRgbValue); g = rand_range(maxRgbValue); b = rand_range(maxRgbValue); ColorPtr clr = Color::create(r, g, b); set_color(clr); } void MainWindow::on_action_paste(void) { Glib::RefPtr refClipboard = Gtk::Clipboard::get(); refClipboard->request_contents("UTF8_STRING", sigc::mem_fun(*this, &MainWindow::on_clipboard_received) ); } void MainWindow::on_clipboard_received(const Gtk::SelectionData& data) { Glib::ustring clipboard_data = data.get_text(); if (!clipboard_data.empty()) { ColorPtr c = Color::create(); if (c->set(clipboard_data)) { set_color(c); } } } void MainWindow::update_paste_status(void) { //Disable the paste button if there is nothing to paste. Glib::RefPtr refClipboard = Gtk::Clipboard::get(); //Discover whether text is available in the clipboard refClipboard->request_targets(sigc::mem_fun(*this, &MainWindow::on_clipboard_received_targets)); } void MainWindow::on_clipboard_received_targets(const Glib::StringArrayHandle& targets_array) { // Get the list of available clipboard targets: std::list targets = targets_array; const bool bPasteIsPossible = std::find(targets.begin(), targets.end(), "UTF8_STRING") != targets.end(); // Enable/Disable the Paste button appropriately: m_refActionGroup->get_action("Paste")->set_sensitive(bPasteIsPossible); } gint MainWindow::rand_range(gint range) { return static_cast( static_cast(rand()) / static_cast(RAND_MAX) * static_cast(range)); } void MainWindow::on_action_use_color(void) {} void MainWindow::on_action_add_bookmark(void) { ColorPtr clr = Color::create(m_color_button->get_color()); m_bookmark_list->add(clr); update_bookmark_actions(); } void MainWindow::on_action_remove_bookmark(void) { m_bookmark_list->remove_selected(); update_bookmark_actions(); } void MainWindow::on_action_clear_bookmarks(void) { LOG("Clearing Bookmarks"); m_bookmark_list->clear(); update_bookmark_actions(); } void MainWindow::update_bookmark_actions(void) { m_refActionGroup->get_action("RemoveBookmark")->set_sensitive(!m_bookmark_list->empty() && m_bookmark_list->count_selected()); m_refActionGroup->get_action("ClearBookmarks")->set_sensitive(!m_bookmark_list->empty()); } } // namespace gcs agave-0.4.7/Makefile.in0000644000175000017500000006012011224443301011564 00000000000000# Makefile.in generated by automake 1.10.2 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # 2003, 2004, 2005, 2006, 2007, 2008 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@ pkglibdir = $(libdir)/@PACKAGE@ pkgincludedir = $(includedir)/@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 = : subdir = . DIST_COMMON = README $(am__configure_deps) $(srcdir)/Makefile.am \ $(srcdir)/Makefile.in $(srcdir)/config.h.in \ $(top_srcdir)/configure AUTHORS COPYING ChangeLog INSTALL NEWS \ TODO config.guess config.sub depcomp install-sh missing \ mkinstalldirs ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \ $(top_srcdir)/configure.ac 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 = 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 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); }; } DIST_ARCHIVES = $(distdir).tar.gz $(distdir).tar.bz2 GZIP_ENV = --best distuninstallcheck_listfiles = find . -type f -print distcleancheck_listfiles = find . -type f -print ACLOCAL = @ACLOCAL@ AGAVE_CFLAGS = @AGAVE_CFLAGS@ AGAVE_ICONDIR = @AGAVE_ICONDIR@ AGAVE_LIBS = @AGAVE_LIBS@ AGAVE_LOCALEDIR = @AGAVE_LOCALEDIR@ AGAVE_PALETTEDIR = @AGAVE_PALETTEDIR@ AGAVE_UIDIR = @AGAVE_UIDIR@ ALL_LINGUAS = @ALL_LINGUAS@ AMTAR = @AMTAR@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ AWK = @AWK@ CAIRO_RING_CFLAGS = @CAIRO_RING_CFLAGS@ CAIRO_RING_LIBS = @CAIRO_RING_LIBS@ CATALOGS = @CATALOGS@ CATOBJEXT = @CATOBJEXT@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPPFLAGS = @CPPFLAGS@ CPPUNIT_CFLAGS = @CPPUNIT_CFLAGS@ CPPUNIT_CONFIG = @CPPUNIT_CONFIG@ CPPUNIT_LIBS = @CPPUNIT_LIBS@ CXX = @CXX@ CXXCPP = @CXXCPP@ CXXDEPMODE = @CXXDEPMODE@ CXXFLAGS = @CXXFLAGS@ CYGPATH_W = @CYGPATH_W@ DATADIRNAME = @DATADIRNAME@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ DISTCHECK_CONFIGURE_FLAGS = --disable-scrollkeeper DOC_USER_FORMATS = @DOC_USER_FORMATS@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ GCONFMM_CFLAGS = @GCONFMM_CFLAGS@ GCONFMM_LIBS = @GCONFMM_LIBS@ GCONFTOOL = @GCONFTOOL@ GCONF_SCHEMA_CONFIG_SOURCE = @GCONF_SCHEMA_CONFIG_SOURCE@ GCONF_SCHEMA_FILE_DIR = @GCONF_SCHEMA_FILE_DIR@ GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ GIT_PATH = @GIT_PATH@ GMOFILES = @GMOFILES@ GMSGFMT = @GMSGFMT@ GNOME_CFLAGS = @GNOME_CFLAGS@ GNOME_LIBS = @GNOME_LIBS@ GREP = @GREP@ GTKMM_CFLAGS = @GTKMM_CFLAGS@ GTKMM_LIBS = @GTKMM_LIBS@ HELP_DIR = @HELP_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@ LDFLAGS = @LDFLAGS@ LIBGLADEMM_CFLAGS = @LIBGLADEMM_CFLAGS@ LIBGLADEMM_LIBS = @LIBGLADEMM_LIBS@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LN_S = @LN_S@ LTLIBOBJS = @LTLIBOBJS@ MAKEINFO = @MAKEINFO@ MKDIR_P = @MKDIR_P@ MKINSTALLDIRS = @MKINSTALLDIRS@ MSGFMT = @MSGFMT@ MSGFMT_OPTS = @MSGFMT_OPTS@ MSGMERGE = @MSGMERGE@ OBJEXT = @OBJEXT@ OMF_DIR = @OMF_DIR@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PACKAGE_WEBSITE = @PACKAGE_WEBSITE@ PATH_SEPARATOR = @PATH_SEPARATOR@ PKG_CONFIG = @PKG_CONFIG@ POFILES = @POFILES@ POSUB = @POSUB@ PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@ PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@ PRINTING_CFLAGS = @PRINTING_CFLAGS@ PRINTING_LIBS = @PRINTING_LIBS@ RANLIB = @RANLIB@ SED = @SED@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ SORT = @SORT@ STRIP = @STRIP@ TR = @TR@ UNIQ = @UNIQ@ USE_NLS = @USE_NLS@ VERSION = @VERSION@ XGETTEXT = @XGETTEXT@ 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_CXX = @ac_ct_CXX@ 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_alias = @build_alias@ builddir = @builddir@ datadir = @datadir@ datarootdir = @datarootdir@ docdir = @docdir@ dvidir = @dvidir@ exec_prefix = @exec_prefix@ host_alias = @host_alias@ htmldir = @htmldir@ includedir = @includedir@ infodir = @infodir@ install_sh = @install_sh@ libdir = @libdir@ libexecdir = @libexecdir@ localedir = @localedir@ localstatedir = @localstatedir@ 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 = src pixmaps po data tests help EXTRA_DIST = intltool-extract.in \ intltool-merge.in \ intltool-update.in \ gnome-doc-utils.make DISTCLEANFILES = intltool-extract \ intltool-merge \ intltool-update \ gnome-doc-utils.make AUTOMAKE_OPTIONS = gnu dist-bzip2 LOCAL_RELEASE_BASE = ~/Projects/gcs-releases LOCAL_RELEASE_DIR = $(LOCAL_RELEASE_BASE)/releases RELEASE_UPLOAD_HOST = download.gna.org RELEASE_UPLOAD_BASE = /upload/colorscheme RELEASE_URL_BASE = http://download.gna.org/colorscheme/releases RELEASE_ANNOUNCE_LIST = colorscheme-devel@googlegroups.com (cc gnome-announce-list@gnome.org) #RELEASE_UPLOAD_DIR = $(RELEASE_UPLOAD_BASE)/releases tar_gz_file = $(PACKAGE)-$(VERSION).tar.gz tar_bz2_file = $(PACKAGE)-$(VERSION).tar.bz2 sig_gz_file = $(tar_gz_file).sig sig_bz2_file = $(tar_bz2_file).sig all: config.h $(MAKE) $(AM_MAKEFLAGS) all-recursive .SUFFIXES: am--refresh: @: $(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps) @for dep in $?; do \ case '$(am__configure_deps)' in \ *$$dep*) \ echo ' cd $(srcdir) && $(AUTOMAKE) --gnu '; \ cd $(srcdir) && $(AUTOMAKE) --gnu \ && exit 0; \ exit 1;; \ esac; \ done; \ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu Makefile'; \ cd $(top_srcdir) && \ $(AUTOMAKE) --gnu 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: $(am__configure_deps) cd $(srcdir) && $(AUTOCONF) $(ACLOCAL_M4): $(am__aclocal_m4_deps) cd $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS) 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: $(am__configure_deps) cd $(top_srcdir) && $(AUTOHEADER) rm -f stamp-h1 touch $@ distclean-hdr: -rm -f config.h stamp-h1 # 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): @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; \ (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): @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; \ (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ || eval $$failcom; \ done && test -z "$$fail" tags-recursive: list='$(SUBDIRS)'; for subdir in $$list; do \ test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \ done ctags-recursive: list='$(SUBDIRS)'; for subdir in $$list; do \ test "$$subdir" = . || (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) tags=; \ 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 || \ tags="$$tags $$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; }; }'`; \ if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \ test -n "$$unique" || unique=$$empty_fix; \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ $$tags $$unique; \ fi ctags: CTAGS CTAGS: ctags-recursive $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) tags=; \ 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)$$tags$$unique" \ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ $$tags $$unique GTAGS: here=`$(am__cd) $(top_builddir) && pwd` \ && 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 $(srcdir)/$$file && test $$d != $(srcdir); then \ cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ fi; \ cp -pR $$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; \ distdir=`$(am__cd) $(distdir) && pwd`; \ top_distdir=`$(am__cd) $(top_distdir) && pwd`; \ (cd $$subdir && \ $(MAKE) $(AM_MAKEFLAGS) \ top_distdir="$$top_distdir" \ distdir="$$distdir/$$subdir" \ am__remove_distdir=: \ am__skip_length_check=: \ distdir) \ || exit 1; \ fi; \ done -find $(distdir) -type d ! -perm -777 -exec chmod a+rwx {} \; -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-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) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz 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) gunzip -c $(distdir).tar.gz | $(am__untar) ;;\ *.tar.bz2*) \ bunzip2 -c $(distdir).tar.bz2 | $(am__untar) ;;\ *.tar.lzma*) \ unlzma -c $(distdir).tar.lzma | $(am__untar) ;;\ *.tar.Z*) \ uncompress -c $(distdir).tar.Z | $(am__untar) ;;\ *.shar.gz*) \ GZIP=$(GZIP_ENV) gunzip -c $(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) dc_install_base=`$(am__cd) $(distdir)/_inst && pwd | sed -e 's,^[^:\\/]:[\\/],/,'` \ && dc_destdir="$${TMPDIR-/tmp}/am-dc-$$$$/" \ && 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 $(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: @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 config.h 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 -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 mostlyclean-am distclean: distclean-recursive -rm -f $(am__CONFIG_DISTCLEAN_FILES) -rm -f Makefile distclean-am: clean-am distclean-generic distclean-hdr distclean-tags dvi: dvi-recursive dvi-am: html: html-recursive info: info-recursive info-am: install-data-am: install-dvi: install-dvi-recursive install-exec-am: install-html: install-html-recursive install-info: install-info-recursive install-man: install-pdf: install-pdf-recursive install-ps: install-ps-recursive 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 pdf: pdf-recursive pdf-am: ps: ps-recursive ps-am: uninstall-am: .MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) install-am \ install-strip .PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \ all all-am am--refresh check check-am clean clean-generic \ ctags ctags-recursive dist dist-all dist-bzip2 dist-gzip \ dist-lzma dist-shar dist-tarZ dist-zip distcheck distclean \ distclean-generic distclean-hdr 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-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 pdf \ pdf-am ps ps-am tags tags-recursive uninstall uninstall-am doc: ./missing --run doxygen Doxyfile $(sig_gz_file): $(tar_gz_file) gpg --output $@ --detach $^ $(sig_bz2_file): $(tar_bz2_file) gpg --output $@ --detach $^ # This doesn't do what I want it to do... It seems you'd need to execute # git-update-index before this gave me anything useful, but I'm not sure I # want to do that automatically verify-files-checked-in: @test ! git-status || (echo "*** Some files are not checked in." \ && echo "*** Run 'git status' for more information." \ && false) tag-release: distcheck @echo "TAGGING RELEASE..." git tag -s -m "$(PACKAGE_NAME) release $(VERSION)" $(VERSION) copy-to-local-release-dir: tag-release $(sig_gz_file) $(sig_bz2_file) @echo "COPYING TO RELEASE DIR..." mkdir -p $(LOCAL_RELEASE_DIR) cp $(tar_gz_file) $(LOCAL_RELEASE_DIR) cp $(tar_bz2_file) $(LOCAL_RELEASE_DIR) cp $(sig_gz_file) $(LOCAL_RELEASE_DIR) cp $(sig_bz2_file) $(LOCAL_RELEASE_DIR) sync-releases: copy-to-local-release-dir @echo "UPLOADING RELEASE..." -rsync --delete -aLv --rsh="ssh" $(LOCAL_RELEASE_BASE)/ $(RELEASE_UPLOAD_HOST):$(RELEASE_UPLOAD_BASE) release-publish: sync-releases @echo "" @echo "Please send an announcement to $(RELEASE_ANNOUNCE_LIST)" @echo "including the following:" @echo "" @echo "Subject: $(PACKAGE_NAME) release $(VERSION) now available" @echo "" @echo "============================== CUT HERE ==============================" @echo "A new $(PACKAGE_NAME) release $(VERSION) is now available." @echo "" @echo "What is it?" @echo "===========" @echo "$(PACKAGE_NAME) is a very simple application for the GNOME desktop that " @echo "allows you to generate a variety of colorschemes from a single starting color." @echo "" @echo "It is aimed primarily toward web designers for creating pleasing color" @echo "combinations for websites." @echo "" @echo "More information can be found at $(PACKAGE_WEBSITE)" @echo "" @echo "Where to get it?" @echo "================" @echo "This release is available as a source package in tar.gz or tar.bz2 format" @echo "and can be downloaded from:" @echo "" @echo "$(RELEASE_URL_BASE)/$(tar_gz_file)" @echo " which can be verified with:" @echo "$(RELEASE_URL_BASE)/$(sig_gz_file)" @echo "" @echo " or:" @echo "" @echo "$(RELEASE_URL_BASE)/$(tar_bz2_file)" @echo " which can be verified with:" @echo "$(RELEASE_URL_BASE)/$(sig_bz2_file)" @echo "" @echo "What's Changed?" @echo "===============" @echo "" @echo "============================== CUT HERE ==============================" @echo "Also, please include the new entries from the NEWS file." @echo "" @echo "Make sure to update the Website with the new version." @echo "" @echo "Last but not least, do not forget to bump up the micro" @echo "version component to the next (odd) number and commit." .PHONY: doc copy-to-local-release-dir sync-releases release-publish tag-release # 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: agave-0.4.7/README0000644000175000017500000001104310663715205010412 00000000000000Agave ================= Agave is a program for generating colorschemes from a starting color. It currently supports five different colorscheme types: * Complements: The starting color and the color directly across the color wheel * Split Complements: the starting color and the two colors that are slightly offset from the color directly across the color wheel * Triads: the starting color and the two colors 1/3 of the way around the wheel in each direction. * Tetrads: The starting color and its complement plus another color slightly offset from the starting color and _its_ complement * Analogous: The starting color and two colors slightly offset in hue * Monochromatic: The starting color and two other colors of the same hue, one lighter, and one darker Installation ------------ For installation instructions, see the file named INSTALL in the root of the tarball source tree. You will need at least Gtkmm 2.6.x and boost::shared_ptr installed to build from a released tarball. If you want to build from the source repository, you'll also need gnome-common, and the GNU autotools installed. In addition to these dependencies, there are optional dependencies on libgnome, libgnomeui, and gconfmm. These libraries are required by default, but if you want to build without them, run configure like so: $ ./configure --disable-gconf --disable-gnome If you want to run the unit tests (very unlikely, and they're probably out of date anyway), you'll need to have cppunit installed. From a base Ubuntu Linux installation, you can get everything you need by installing the following packages (be aware that these packages will install a lot of their own dependencies as well, so you'll end up installing approximately 50 packages): - make - automake1.7 - autoconf - g++ - gnome-common - libgtkmm-2.4-dev - libboost-dev - libgnomeui-dev - libgconfmm-2.6-dev - libcppunit-dev For other Linux distributions, the package names will probably be slightly different, but the list should be fairly similar. Installation on Windows ----------------------- I have successfully compiled and run Agave on Microsoft Windows, though it's not as straightforward as it is on Linux. You'll obviously need to have the development package of gtkmm installed (see [1] for a windows installer of gtkmm). Compiling gtkmm applications on Windows requires the MinGW [2] compiler (the cygwin g++ compiler won't work). You'll also need the autotools installed (i.e. autoconf and automake). The easiest way to do this is to install these via cygwin [3]. Within the cygwin environment, installation is basically the same as under Linux (see above), but you'll need to disable support for gconf and GNOME. The only problem is that it will default to using cygwin paths (i.e. /usr/local) instead of standard windows paths (i.e. c:\Program Files\). When the program is run outside the cygwin environment, it won't know how to access /usr/local, so the program will crash. To get around this problem, you'll need to explicitly specify the datadir (the directory where icons and other data files get installed) when you run configure. For example: $ ./configure --disable-gconf --disable-gnome --datadir="C:\path\to\datadir" This will end up installing the actual executable agave.exe into /usr/local/bin/ (which translates to something like c:\cygwin\usr\local\bin\ outside of cygwin). If you want to install it somewhere else, you'll need to specify an alternate installation directory by adding a prefix option to your configure command (e.g. --prefix="c:\Program Files"). [1] http://www.pcpm.ucl.ac.be/~gustin/win32_ports/ [2] http://www.mingw.org [3] http://www.cygwin.com/ Using Agave ----------- Choose a starting color by clicking on the color button or selecting a color from the palette, and then select a scheme type from the combo box. The generated scheme will be displayed in the main window. The left-most Color in the main window is the currently-selected color. This color can be added to your favorites list with the '+' button in the bottom right, or with the keyboard shortcut 'Ctrl+D'. To make one of the other colors in the scheme the currently-selected color, you can double-click the colorswatch. To copy a hexstring representation of the color (e.g. #FFFFFF) to the clipboard, right-click the colorswatch and select the 'copy' menu item. Disclaimer ---------- I make no guarantee that the colorschemes generated with this program will not suck. If they do suck, feel free to let me know about it. Jonathon Jongsma agave-0.4.7/gnome-doc-utils.make0000644000175000017500000005005711224420535013400 00000000000000# gnome-doc-utils.make - make magic for building documentation # Copyright (C) 2004-2005 Shaun McCance # # 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. ################################################################################ ## @@ Generating Header Files ## @ DOC_H_FILE ## The name of the header file to generate DOC_H_FILE ?= ## @ DOC_H_DOCS ## The input DocBook files for generating the header file DOC_H_DOCS ?= $(DOC_H_FILE): $(DOC_H_DOCS); @rm -f $@.tmp; touch $@.tmp; echo 'const gchar* documentation_credits[] = {' >> $@.tmp list='$(DOC_H_DOCS)'; for doc in $$list; do \ xmlpath="`echo $$doc | sed -e 's/^\(.*\/\).*/\1/' -e '/\//!s/.*//'`:$(srcdir)/`echo $$doc | sed -e 's/^\(.*\/\).*/\1/' -e '/\//!s/.*//'`"; \ if ! test -f "$$doc"; then doc="$(srcdir)/$$doc"; fi; \ xsltproc --path "$$xmlpath" $(_credits) $$doc; \ done | sort | uniq \ | awk 'BEGIN{s=""}{n=split($$0,w,"<");if(s!=""&&s!=substr(w[1],1,length(w[1])-1)){print s};if(n>1){print $$0;s=""}else{s=$$0}};END{if(s!=""){print s}}' \ | sed -e 's/\\/\\\\/' -e 's/"/\\"/' -e 's/\(.*\)/\t"\1",/' >> $@.tmp echo ' NULL' >> $@.tmp echo '};' >> $@.tmp echo >> $@.tmp list='$(DOC_H_DOCS)'; for doc in $$list; do \ xmlpath="`echo $$doc | sed -e 's/^\(.*\/\).*/\1/' -e '/\//!s/.*//'`:$(srcdir)/`echo $$doc | sed -e 's/^\(.*\/\).*/\1/' -e '/\//!s/.*//'`"; \ if ! test -f "$$doc"; then doc="$(srcdir)/$$doc"; fi; \ docid=`echo "$$doc" | sed -e 's/.*\/\([^/]*\)\.xml/\1/' \ | sed -e 's/[^a-zA-Z_]/_/g' | tr 'a-z' 'A-Z'`; \ echo $$xmlpath; \ ids=`xsltproc --xinclude --path "$$xmlpath" $(_ids) $$doc`; \ for id in $$ids; do \ echo '#define HELP_'`echo $$docid`'_'`echo $$id \ | sed -e 's/[^a-zA-Z_]/_/g' | tr 'a-z' 'A-Z'`' "'$$id'"' >> $@.tmp; \ done; \ echo >> $@.tmp; \ done; cp $@.tmp $@ && rm -f $@.tmp dist-check-gdu: if !HAVE_GNOME_DOC_UTILS @echo "*** GNOME Doc Utils must be installed in order to make dist" @false endif .PHONY: dist-doc-header dist-doc-header: $(DOC_H_FILE) @if test -f "$(DOC_H_FILE)"; then d=; else d="$(srcdir)/"; fi; \ echo "$(INSTALL_DATA) $${d}$(DOC_H_FILE) $(distdir)/$(DOC_H_FILE)"; \ $(INSTALL_DATA) "$${d}$(DOC_H_FILE)" "$(distdir)/$(DOC_H_FILE)"; doc-dist-hook: dist-check-gdu $(if $(DOC_H_FILE),dist-doc-header) .PHONY: clean-doc-header _clean_doc_header = $(if $(DOC_H_FILE),clean-doc-header) clean-local: $(_clean_doc_header) distclean-local: $(_clean_doc_header) mostlyclean-local: $(_clean_doc_header) maintainer-clean-local: $(_clean_doc_header) clean-doc-header: rm -f $(DOC_H_FILE) all: $(DOC_H_FILE) ################################################################################ ## @@ Generating Documentation Files ## @ DOC_MODULE ## The name of the document being built DOC_MODULE ?= ## @ DOC_ENTITIES ## Files included with a SYSTEM entity DOC_ENTITIES ?= ## @ DOC_INCLUDES ## Files included with XInclude DOC_INCLUDES ?= ## @ DOC_FIGURES ## Figures and other external data DOC_FIGURES ?= ## @ DOC_FORMATS ## The default formats to be built and installed DOC_FORMATS ?= docbook _DOC_REAL_FORMATS = $(if $(DOC_USER_FORMATS),$(DOC_USER_FORMATS),$(DOC_FORMATS)) ## @ DOC_LINGUAS ## The languages this document is translated into DOC_LINGUAS ?= _DOC_REAL_LINGUAS = $(if $(filter environment,$(origin LINGUAS)), \ $(filter $(LINGUAS),$(DOC_LINGUAS)), \ $(DOC_LINGUAS)) _DOC_ABS_SRCDIR = @abs_srcdir@ ################################################################################ ## Variables for Bootstrapping _xml2po ?= `which xml2po` _db2html ?= `$(PKG_CONFIG) --variable db2html gnome-doc-utils` _db2omf ?= `$(PKG_CONFIG) --variable db2omf gnome-doc-utils` _chunks ?= `$(PKG_CONFIG) --variable xmldir gnome-doc-utils`/gnome/xslt/docbook/utils/chunks.xsl _credits ?= `$(PKG_CONFIG) --variable xmldir gnome-doc-utils`/gnome/xslt/docbook/utils/credits.xsl _ids ?= `$(PKG_CONFIG) --variable xmldir gnome-doc-utils`/gnome/xslt/docbook/utils/ids.xsl if ENABLE_SK _ENABLE_SK = true _skpkgdatadir ?= `scrollkeeper-config --pkgdatadir` _sklocalstatedir ?= `scrollkeeper-config --pkglocalstatedir` _skcontentslist ?= $(_skpkgdatadir)/Templates/C/scrollkeeper_cl.xml endif ################################################################################ ## @@ Rules for OMF Files db2omf_args = \ --stringparam db2omf.basename $(DOC_MODULE) \ --stringparam db2omf.format $(3) \ --stringparam db2omf.dtd \ $(shell xmllint --format $(2) | grep -h PUBLIC | head -n 1 \ | sed -e 's/.*PUBLIC \(\"[^\"]*\"\).*/\1/') \ --stringparam db2omf.lang $(notdir $(patsubst %/$(notdir $(2)),%,$(2))) \ --stringparam db2omf.omf_dir "$(OMF_DIR)" \ --stringparam db2omf.help_dir "$(HELP_DIR)" \ --stringparam db2omf.omf_in "$(_DOC_OMF_IN)" \ $(if $(_ENABLE_SK), \ --stringparam db2omf.scrollkeeper_cl "$(_skcontentslist)") \ $(_db2omf) $(2) ## @ _DOC_OMF_IN ## The OMF input file _DOC_OMF_IN = $(if $(DOC_MODULE),$(wildcard $(_DOC_ABS_SRCDIR)/$(DOC_MODULE).omf.in)) ## @ _DOC_OMF_DB ## The OMF files for DocBook output _DOC_OMF_DB = $(if $(_DOC_OMF_IN), \ $(foreach lc,C $(_DOC_REAL_LINGUAS),$(DOC_MODULE)-$(lc).omf)) $(_DOC_OMF_DB) : $(_DOC_OMF_IN) $(_DOC_OMF_DB) : $(DOC_MODULE)-%.omf : %/$(DOC_MODULE).xml @test "x$(_ENABLE_SK)" != "xtrue" -o -f "$(_skcontentslist)" || { \ echo "The file '$(_skcontentslist)' does not exist." >&2; \ echo "Please check your ScrollKeeper installation." >&2; \ exit 1; } xsltproc -o $@ $(call db2omf_args,$@,$<,'docbook') || { rm -f "$@"; exit 1; } ## @ _DOC_OMF_HTML ## The OMF files for HTML output _DOC_OMF_HTML = $(if $(_DOC_OMF_IN), \ $(foreach lc,C $(_DOC_REAL_LINGUAS),$(DOC_MODULE)-html-$(lc).omf)) $(_DOC_OMF_HTML) : $(_DOC_OMF_IN) $(_DOC_OMF_HTML) : $(DOC_MODULE)-html-%.omf : %/$(DOC_MODULE).xml if ENABLE_SK @test "x$(_ENABLE_SK)" != "xtrue" -o -f "$(_skcontentslist)" || { \ echo "The file '$(_skcontentslist)' does not exist" >&2; \ echo "Please check your ScrollKeeper installation." >&2; \ exit 1; } endif xsltproc -o $@ $(call db2omf_args,$@,$<,'xhtml') || { rm -f "$@"; exit 1; } ## @ _DOC_OMF_ALL ## All OMF output files to be built # FIXME _DOC_OMF_ALL = \ $(if $(filter docbook,$(_DOC_REAL_FORMATS)),$(_DOC_OMF_DB)) \ $(if $(filter html HTML,$(_DOC_REAL_FORMATS)),$(_DOC_OMF_HTML)) .PHONY: omf omf: $(_DOC_OMF_ALL) ################################################################################ ## @@ C Locale Documents ## @ _DOC_C_MODULE ## The top-level documentation file in the C locale _DOC_C_MODULE = $(if $(DOC_MODULE),C/$(DOC_MODULE).xml) ## @ _DOC_C_ENTITIES ## Files included with a SYSTEM entity in the C locale _DOC_C_ENTITIES = $(foreach ent,$(DOC_ENTITIES),C/$(ent)) ## @ _DOC_C_XINCLUDES ## Files included with XInclude in the C locale _DOC_C_INCLUDES = $(foreach inc,$(DOC_INCLUDES),C/$(inc)) ## @ _DOC_C_DOCS ## All documentation files in the C locale _DOC_C_DOCS = \ $(_DOC_C_ENTITIES) $(_DOC_C_INCLUDES) \ $(_DOC_C_MODULE) ## @ _DOC_C_DOCS_NOENT ## All documentation files in the C locale, ## except files included with a SYSTEM entity _DOC_C_DOCS_NOENT = \ $(_DOC_C_MODULE) $(_DOC_C_INCLUDES) ## @ _DOC_C_FIGURES ## All figures and other external data in the C locale _DOC_C_FIGURES = $(if $(DOC_FIGURES), \ $(foreach fig,$(DOC_FIGURES),C/$(fig)), \ $(patsubst $(srcdir)/%,%,$(wildcard $(srcdir)/C/figures/*.png))) ## @ _DOC_C_HTML ## All HTML documentation in the C locale # FIXME: probably have to shell escape to determine the file names _DOC_C_HTML = $(foreach f, \ $(shell xsltproc --xinclude \ --stringparam db.chunk.basename "$(DOC_MODULE)" \ $(_chunks) "C/$(DOC_MODULE).xml"), \ C/$(f).xhtml) ############################################################################### ## @@ Other Locale Documentation ## @ _DOC_POFILES ## The .po files used for translating the document _DOC_POFILES = $(if $(DOC_MODULE), \ $(foreach lc,$(_DOC_REAL_LINGUAS),$(lc)/$(lc).po)) .PHONY: po po: $(_DOC_POFILES) ## @ _DOC_LC_MODULES ## The top-level documentation files in all other locales _DOC_LC_MODULES = $(if $(DOC_MODULE), \ $(foreach lc,$(_DOC_REAL_LINGUAS),$(lc)/$(DOC_MODULE).xml)) ## @ _DOC_LC_XINCLUDES ## Files included with XInclude in all other locales _DOC_LC_INCLUDES = \ $(foreach lc,$(_DOC_REAL_LINGUAS),$(foreach inc,$(_DOC_C_INCLUDES), \ $(lc)/$(notdir $(inc)) )) ## @ _DOC_LC_HTML ## All HTML documentation in all other locales # FIXME: probably have to shell escape to determine the file names _DOC_LC_HTML = \ $(foreach lc,$(_DOC_REAL_LINGUAS),$(foreach doc,$(_DOC_C_HTML), \ $(lc)/$(notdir $(doc)) )) ## @ _DOC_LC_DOCS ## All documentation files in all other locales _DOC_LC_DOCS = \ $(_DOC_LC_MODULES) $(_DOC_LC_INCLUDES) \ $(if $(filter html HTML,$(_DOC_REAL_FORMATS)),$(_DOC_LC_HTML)) ## @ _DOC_LC_FIGURES ## All figures and other external data in all other locales _DOC_LC_FIGURES = $(foreach lc,$(_DOC_REAL_LINGUAS), \ $(patsubst C/%,$(lc)/%,$(_DOC_C_FIGURES)) ) _DOC_SRC_FIGURES = \ $(foreach fig,$(_DOC_C_FIGURES), $(foreach lc,C $(_DOC_REAL_LINGUAS), \ $(wildcard $(srcdir)/$(lc)/$(patsubst C/%,%,$(fig))) )) $(_DOC_POFILES): @if ! test -d $(dir $@); then \ echo "mkdir $(dir $@)"; \ mkdir "$(dir $@)"; \ fi @if test ! -f $@ -a -f $(srcdir)/$@; then \ echo "cp $(srcdir)/$@ $@"; \ cp "$(srcdir)/$@" "$@"; \ fi; @docs=; \ list='$(_DOC_C_DOCS_NOENT)'; for doc in $$list; do \ docs="$$docs $(_DOC_ABS_SRCDIR)/$$doc"; \ done; \ if ! test -f $@; then \ echo "(cd $(dir $@) && \ $(_xml2po) -e $$docs > $(notdir $@).tmp && \ cp $(notdir $@).tmp $(notdir $@) && rm -f $(notdir $@).tmp)"; \ (cd $(dir $@) && \ $(_xml2po) -e $$docs > $(notdir $@).tmp && \ cp $(notdir $@).tmp $(notdir $@) && rm -f $(notdir $@).tmp); \ else \ echo "(cd $(dir $@) && \ $(_xml2po) -e -u $(notdir $@) $$docs)"; \ (cd $(dir $@) && \ $(_xml2po) -e -u $(notdir $@) $$docs); \ fi # FIXME: fix the dependancy # FIXME: hook xml2po up $(_DOC_LC_DOCS) : $(_DOC_POFILES) $(_DOC_LC_DOCS) : $(_DOC_C_DOCS) if ! test -d $(dir $@); then mkdir $(dir $@); fi if [ -f "C/$(notdir $@)" ]; then d="../"; else d="$(_DOC_ABS_SRCDIR)/"; fi; \ (cd $(dir $@) && \ $(_xml2po) -e -p \ "$${d}$(dir $@)$(patsubst %/$(notdir $@),%,$@).po" \ "$${d}C/$(notdir $@)" > $(notdir $@).tmp && \ cp $(notdir $@).tmp $(notdir $@) && rm -f $(notdir $@).tmp) ## @ _DOC_POT ## A pot file _DOC_POT = $(if $(DOC_MODULE),$(DOC_MODULE).pot) .PHONY: pot pot: $(_DOC_POT) $(_DOC_POT): $(_DOC_C_DOCS_NOENT) $(_xml2po) -e -o $@ $^ ################################################################################ ## @@ All Documentation ## @ _DOC_HTML_ALL ## All HTML documentation, only if it's built _DOC_HTML_ALL = $(if $(filter html HTML,$(_DOC_REAL_FORMATS)), \ $(_DOC_C_HTML) $(_DOC_LC_HTML)) _DOC_HTML_TOPS = $(foreach lc,C $(_DOC_REAL_LINGUAS),$(lc)/$(DOC_MODULE).xhtml) $(_DOC_HTML_TOPS): $(_DOC_C_DOCS) $(_DOC_LC_DOCS) xsltproc -o $@ --xinclude --param db.chunk.chunk_top "false()" --stringparam db.chunk.basename "$(DOC_MODULE)" --stringparam db.chunk.extension ".xhtml" $(_db2html) $(patsubst %.xhtml,%.xml,$@) ################################################################################ all: \ $(_DOC_C_DOCS) $(_DOC_LC_DOCS) \ $(_DOC_OMF_ALL) $(_DOC_DSK_ALL) \ $(_DOC_HTML_ALL) $(_DOC_POFILES) .PHONY: clean-doc-omf clean-doc-dsk clean-doc-lc clean-doc-dir clean-doc-omf: ; rm -f $(_DOC_OMF_DB) $(_DOC_OMF_HTML) clean-doc-dsk: ; rm -f $(_DOC_DSK_DB) $(_DOC_DSK_HTML) clean-doc-lc: rm -f $(_DOC_LC_DOCS) @list='$(_DOC_POFILES)'; for po in $$list; do \ if ! test "$$po" -ef "$(srcdir)/$$po"; then \ echo "rm -f $$po"; \ rm -f "$$po"; \ fi; \ done @for lc in C $(_DOC_REAL_LINGUAS); do \ if test -f "$$lc/.xml2po.mo"; then \ echo "rm -f $$lc/.xml2po.mo"; \ rm -f "$$lc/.xml2po.mo"; \ fi; \ done clean-doc-dir: @for lc in C $(_DOC_REAL_LINGUAS); do \ for dir in `find $$lc -depth -type d`; do \ if ! test $$dir -ef $(srcdir)/$$dir; then \ echo "rmdir $$dir"; \ rmdir "$$dir"; \ fi; \ done; \ done _clean_omf = $(if $(_DOC_OMF_IN),clean-doc-omf) _clean_dsk = $(if $(_DOC_DSK_IN),clean-doc-dsk) _clean_lc = $(if $(_DOC_REAL_LINGUAS),clean-doc-lc) _clean_dir = $(if $(DOC_MODULE),clean-doc-dir) clean-local: \ $(_clean_omf) $(_clean_dsk) \ $(_clean_lc) $(_clean_dir) distclean-local: \ $(_clean_omf) $(_clean_dsk) \ $(_clean_lc) $(_clean_dir) mostlyclean-local: \ $(_clean_omf) $(_clean_dsk) \ $(_clean_lc) $(_clean_dir) maintainer-clean-local: \ $(_clean_omf) $(_clean_dsk) \ $(_clean_lc) $(_clean_dir) .PHONY: dist-doc-docs dist-doc-figs dist-doc-omf dist-doc-dsk doc-dist-hook: \ $(if $(DOC_MODULE),dist-doc-docs) \ $(if $(_DOC_C_FIGURES),dist-doc-figs) \ $(if $(_DOC_OMF_IN),dist-doc-omf) # $(if $(_DOC_DSK_IN),dist-doc-dsk) dist-doc-docs: $(_DOC_C_DOCS) $(_DOC_LC_DOCS) $(_DOC_POFILES) @for lc in C $(_DOC_REAL_LINGUAS); do \ echo " $(mkinstalldirs) $(distdir)/$$lc"; \ $(mkinstalldirs) "$(distdir)/$$lc"; \ done @list='$(_DOC_C_DOCS) $(_DOC_LC_DOCS) $(_DOC_POFILES)'; \ for doc in $$list; do \ if test -f "$$doc"; then d=; else d="$(srcdir)/"; fi; \ docdir=`echo $$doc | sed -e 's/^\(.*\/\).*/\1/' -e '/\//!s/.*//'`; \ if ! test -d "$(distdir)/$$docdir"; then \ echo "$(mkinstalldirs) $(distdir)/$$docdir"; \ $(mkinstalldirs) "$(distdir)/$$docdir"; \ fi; \ echo "$(INSTALL_DATA) $$d$$doc $(distdir)/$$doc"; \ $(INSTALL_DATA) "$$d$$doc" "$(distdir)/$$doc"; \ done dist-doc-figs: $(_DOC_SRC_FIGURES) @list='$(_DOC_C_FIGURES) $(_DOC_LC_FIGURES)'; \ for fig in $$list; do \ if test -f "$$fig"; then d=; else d="$(srcdir)/"; fi; \ if test -f "$$d$$fig"; then \ figdir=`echo $$fig | sed -e 's/^\(.*\/\).*/\1/' -e '/\//!s/.*//'`; \ if ! test -d "$(distdir)/$$figdir"; then \ echo "$(mkinstalldirs) $(distdir)/$$figdir"; \ $(mkinstalldirs) "$(distdir)/$$figdir"; \ fi; \ echo "$(INSTALL_DATA) $$d$$fig $(distdir)/$$fig"; \ $(INSTALL_DATA) "$$d$$fig" "$(distdir)/$$fig"; \ fi; \ done; dist-doc-omf: @if test -f "$(_DOC_OMF_IN)"; then d=; else d="$(srcdir)/"; fi; \ echo "$(INSTALL_DATA) $$d$(_DOC_OMF_IN) $(distdir)/$(notdir $(_DOC_OMF_IN))"; \ $(INSTALL_DATA) "$$d$(_DOC_OMF_IN)" "$(distdir)/$(notdir $(_DOC_OMF_IN))" dist-doc-dsk: @if test -f "$(_DOC_DSK_IN)"; then d=; else d="$(srcdir)/"; fi; \ echo "$(INSTALL_DATA) $$d$(_DOC_DSK_IN) $(distdir)/$(notdir $(_DOC_DSK_IN))"; \ $(INSTALL_DATA) "$$d$(_DOC_DSK_IN)" "$(distdir)/$(notdir $(_DOC_DSK_IN))" .PHONY: check-doc-docs check-doc-omf check: \ $(if $(DOC_MODULE),check-doc-docs) \ $(if $(_DOC_OMF_IN),check-doc-omf) check-doc-docs: $(_DOC_C_DOCS) $(_DOC_LC_DOCS) @for lc in C $(_DOC_REAL_LINGUAS); do \ if test -f "$$lc"; \ then d=; \ xmlpath="$$lc"; \ else \ d="$(srcdir)/"; \ xmlpath="$$lc:$(srcdir)/$$lc"; \ fi; \ echo "xmllint --noout --noent --path $$xmlpath --xinclude --postvalid $$d$$lc/$(DOC_MODULE).xml"; \ xmllint --noout --noent --path "$$xmlpath" --xinclude --postvalid "$$d$$lc/$(DOC_MODULE).xml"; \ done check-doc-omf: $(_DOC_OMF_ALL) @list='$(_DOC_OMF_ALL)'; for omf in $$list; do \ echo "xmllint --noout --xinclude --dtdvalid 'http://scrollkeeper.sourceforge.net/dtds/scrollkeeper-omf-1.0/scrollkeeper-omf.dtd' $$omf"; \ xmllint --noout --xinclude --dtdvalid 'http://scrollkeeper.sourceforge.net/dtds/scrollkeeper-omf-1.0/scrollkeeper-omf.dtd' $$omf; \ done .PHONY: install-doc-docs install-doc-html install-doc-figs install-doc-omf install-doc-dsk install-data-local: \ $(if $(DOC_MODULE),install-doc-docs) \ $(if $(_DOC_HTML_ALL),install-doc-html) \ $(if $(_DOC_C_FIGURES),install-doc-figs) \ $(if $(_DOC_OMF_IN),install-doc-omf) # $(if $(_DOC_DSK_IN),install-doc-dsk) install-doc-docs: @for lc in C $(_DOC_REAL_LINGUAS); do \ echo "$(mkinstalldirs) $(DESTDIR)$(HELP_DIR)/$(DOC_MODULE)/$$lc"; \ $(mkinstalldirs) $(DESTDIR)$(HELP_DIR)/$(DOC_MODULE)/$$lc; \ done @list='$(_DOC_C_DOCS) $(_DOC_LC_DOCS)'; for doc in $$list; do \ if test -f "$$doc"; then d=; else d="$(srcdir)/"; fi; \ docdir="$$lc/"`echo $$doc | sed -e 's/^\(.*\/\).*/\1/' -e '/\//!s/.*//'`; \ docdir="$(DESTDIR)$(HELP_DIR)/$(DOC_MODULE)/$$docdir"; \ if ! test -d "$$docdir"; then \ echo "$(mkinstalldirs) $$docdir"; \ $(mkinstalldirs) "$$docdir"; \ fi; \ echo "$(INSTALL_DATA) $$d$$doc $(DESTDIR)$(HELP_DIR)/$(DOC_MODULE)/$$doc"; \ $(INSTALL_DATA) $$d$$doc $(DESTDIR)$(HELP_DIR)/$(DOC_MODULE)/$$doc; \ done install-doc-figs: @list='$(patsubst C/%,%,$(_DOC_C_FIGURES))'; for fig in $$list; do \ for lc in C $(_DOC_REAL_LINGUAS); do \ figsymlink=false; \ if test -f "$$lc/$$fig"; then \ figfile="$$lc/$$fig"; \ elif test -f "$(srcdir)/$$lc/$$fig"; then \ figfile="$(srcdir)/$$lc/$$fig"; \ else \ figsymlink=true; \ fi; \ figdir="$$lc/"`echo $$fig | sed -e 's/^\(.*\/\).*/\1/' -e '/\//!s/.*//'`; \ figdir="$(DESTDIR)$(HELP_DIR)/$(DOC_MODULE)/$$figdir"; \ if ! test -d "$$figdir"; then \ echo "$(mkinstalldirs) $$figdir"; \ $(mkinstalldirs) "$$figdir"; \ fi; \ figbase=`echo $$fig | sed -e 's/^.*\///'`; \ if $$figsymlink; then \ echo "cd $$figdir && $(LN_S) -f ../../C/$$fig $$figbase"; \ ( cd "$$figdir" && $(LN_S) -f "../../C/$$fig" "$$figbase" ); \ else \ echo "$(INSTALL_DATA) $$figfile $$figdir$$figbase"; \ $(INSTALL_DATA) "$$figfile" "$$figdir$$figbase"; \ fi; \ done; \ done install-doc-html: echo install-html install-doc-omf: $(mkinstalldirs) $(DESTDIR)$(OMF_DIR)/$(DOC_MODULE) @list='$(_DOC_OMF_ALL)'; for omf in $$list; do \ echo "$(INSTALL_DATA) $$omf $(DESTDIR)$(OMF_DIR)/$(DOC_MODULE)/$$omf"; \ $(INSTALL_DATA) $$omf $(DESTDIR)$(OMF_DIR)/$(DOC_MODULE)/$$omf; \ done @if test "x$(_ENABLE_SK)" = "xtrue"; then \ echo "scrollkeeper-update -p $(DESTDIR)$(_sklocalstatedir) -o $(DESTDIR)$(OMF_DIR)/$(DOC_MODULE)"; \ scrollkeeper-update -p "$(DESTDIR)$(_sklocalstatedir)" -o "$(DESTDIR)$(OMF_DIR)/$(DOC_MODULE)"; \ fi; install-doc-dsk: echo install-dsk .PHONY: uninstall-doc-docs uninstall-doc-html uninstall-doc-figs uninstall-doc-omf uninstall-doc-dsk uninstall-local: \ $(if $(DOC_MODULE),uninstall-doc-docs) \ $(if $(_DOC_HTML_ALL),uninstall-doc-html) \ $(if $(_DOC_C_FIGURES),uninstall-doc-figs) \ $(if $(_DOC_OMF_IN),uninstall-doc-omf) # $(if $(_DOC_DSK_IN),uninstall-doc-dsk) uninstall-doc-docs: @list='$(_DOC_C_DOCS) $(_DOC_LC_DOCS)'; for doc in $$list; do \ echo " rm -f $(DESTDIR)$(HELP_DIR)/$(DOC_MODULE)/$$doc"; \ rm -f "$(DESTDIR)$(HELP_DIR)/$(DOC_MODULE)/$$doc"; \ done uninstall-doc-figs: @list='$(_DOC_C_FIGURES) $(_DOC_LC_FIGURES)'; for fig in $$list; do \ echo "rm -f $(DESTDIR)$(HELP_DIR)/$(DOC_MODULE)/$$fig"; \ rm -f "$(DESTDIR)$(HELP_DIR)/$(DOC_MODULE)/$$fig"; \ done; uninstall-doc-omf: @list='$(_DOC_OMF_ALL)'; for omf in $$list; do \ if test "x$(_ENABLE_SK)" = "xtrue"; then \ echo "scrollkeeper-uninstall -p $(_sklocalstatedir) $(DESTDIR)$(OMF_DIR)/$(DOC_MODULE)/$$omf"; \ scrollkeeper-uninstall -p "$(_sklocalstatedir)" "$(DESTDIR)$(OMF_DIR)/$(DOC_MODULE)/$$omf"; \ fi; \ echo "rm -f $(DESTDIR)$(OMF_DIR)/$(DOC_MODULE)/$$omf"; \ rm -f "$(DESTDIR)$(OMF_DIR)/$(DOC_MODULE)/$$omf"; \ done agave-0.4.7/missing0000755000175000017500000002557711224420540011137 00000000000000#! /bin/sh # Common stub for a few missing GNU programs while installing. scriptversion=2006-05-10.23 # Copyright (C) 1996, 1997, 1999, 2000, 2002, 2003, 2004, 2005, 2006 # 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, 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. 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] 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 # 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). 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 $1 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 1 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-end: "$" # End: agave-0.4.7/data/0000777000175000017500000000000011224443301010515 500000000000000agave-0.4.7/data/Makefile.in0000644000175000017500000004443711224442712012517 00000000000000# Makefile.in generated by automake 1.10.2 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # 2003, 2004, 2005, 2006, 2007, 2008 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@ pkglibdir = $(libdir)/@PACKAGE@ pkgincludedir = $(includedir)/@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 = : subdir = data DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in \ $(srcdir)/agave.desktop.in.in ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \ $(top_srcdir)/configure.ac 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 = agave.desktop.in 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 = `echo $$p | sed -e 's|^.*/||'`; am__installdirs = "$(DESTDIR)$(desktopdir)" "$(DESTDIR)$(schemasdir)" desktopDATA_INSTALL = $(INSTALL_DATA) schemasDATA_INSTALL = $(INSTALL_DATA) DATA = $(desktop_DATA) $(schemas_DATA) RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \ distclean-recursive maintainer-clean-recursive ETAGS = etags CTAGS = ctags DIST_SUBDIRS = $(SUBDIRS) DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ AGAVE_CFLAGS = @AGAVE_CFLAGS@ AGAVE_ICONDIR = @AGAVE_ICONDIR@ AGAVE_LIBS = @AGAVE_LIBS@ AGAVE_LOCALEDIR = @AGAVE_LOCALEDIR@ AGAVE_PALETTEDIR = @AGAVE_PALETTEDIR@ AGAVE_UIDIR = @AGAVE_UIDIR@ ALL_LINGUAS = @ALL_LINGUAS@ AMTAR = @AMTAR@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ AWK = @AWK@ CAIRO_RING_CFLAGS = @CAIRO_RING_CFLAGS@ CAIRO_RING_LIBS = @CAIRO_RING_LIBS@ CATALOGS = @CATALOGS@ CATOBJEXT = @CATOBJEXT@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPPFLAGS = @CPPFLAGS@ CPPUNIT_CFLAGS = @CPPUNIT_CFLAGS@ CPPUNIT_CONFIG = @CPPUNIT_CONFIG@ CPPUNIT_LIBS = @CPPUNIT_LIBS@ CXX = @CXX@ CXXCPP = @CXXCPP@ CXXDEPMODE = @CXXDEPMODE@ CXXFLAGS = @CXXFLAGS@ CYGPATH_W = @CYGPATH_W@ DATADIRNAME = @DATADIRNAME@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ DISTCHECK_CONFIGURE_FLAGS = @DISTCHECK_CONFIGURE_FLAGS@ DOC_USER_FORMATS = @DOC_USER_FORMATS@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ GCONFMM_CFLAGS = @GCONFMM_CFLAGS@ GCONFMM_LIBS = @GCONFMM_LIBS@ GCONFTOOL = @GCONFTOOL@ GCONF_SCHEMA_CONFIG_SOURCE = @GCONF_SCHEMA_CONFIG_SOURCE@ GCONF_SCHEMA_FILE_DIR = @GCONF_SCHEMA_FILE_DIR@ GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ GIT_PATH = @GIT_PATH@ GMOFILES = @GMOFILES@ GMSGFMT = @GMSGFMT@ GNOME_CFLAGS = @GNOME_CFLAGS@ GNOME_LIBS = @GNOME_LIBS@ GREP = @GREP@ GTKMM_CFLAGS = @GTKMM_CFLAGS@ GTKMM_LIBS = @GTKMM_LIBS@ HELP_DIR = @HELP_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@ LDFLAGS = @LDFLAGS@ LIBGLADEMM_CFLAGS = @LIBGLADEMM_CFLAGS@ LIBGLADEMM_LIBS = @LIBGLADEMM_LIBS@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LN_S = @LN_S@ LTLIBOBJS = @LTLIBOBJS@ MAKEINFO = @MAKEINFO@ MKDIR_P = @MKDIR_P@ MKINSTALLDIRS = @MKINSTALLDIRS@ MSGFMT = @MSGFMT@ MSGFMT_OPTS = @MSGFMT_OPTS@ MSGMERGE = @MSGMERGE@ OBJEXT = @OBJEXT@ OMF_DIR = @OMF_DIR@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PACKAGE_WEBSITE = @PACKAGE_WEBSITE@ PATH_SEPARATOR = @PATH_SEPARATOR@ PKG_CONFIG = @PKG_CONFIG@ POFILES = @POFILES@ POSUB = @POSUB@ PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@ PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@ PRINTING_CFLAGS = @PRINTING_CFLAGS@ PRINTING_LIBS = @PRINTING_LIBS@ RANLIB = @RANLIB@ SED = @SED@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ SORT = @SORT@ STRIP = @STRIP@ TR = @TR@ UNIQ = @UNIQ@ USE_NLS = @USE_NLS@ VERSION = @VERSION@ XGETTEXT = @XGETTEXT@ 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_CXX = @ac_ct_CXX@ 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_alias = @build_alias@ builddir = @builddir@ datadir = @datadir@ datarootdir = @datarootdir@ docdir = @docdir@ dvidir = @dvidir@ exec_prefix = @exec_prefix@ host_alias = @host_alias@ htmldir = @htmldir@ includedir = @includedir@ infodir = @infodir@ install_sh = @install_sh@ libdir = @libdir@ libexecdir = @libexecdir@ localedir = @localedir@ localstatedir = @localstatedir@ 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 = ui palettes # desktop files desktopdir = $(datadir)/applications desktop_in_files = agave.desktop.in desktop_DATA = $(desktop_in_files:.desktop.in=.desktop) # gconf schemas schemasdir = $(GCONF_SCHEMA_FILE_DIR) schemas_in_files = agave.schemas.in schemas_DATA = $(schemas_in_files:.schemas.in=.schemas) EXTRA_DIST = ${desktop_in_files} ${schemas_in_files} CLEANFILES = ${desktop_DATA} ${schemas_DATA} all: all-recursive .SUFFIXES: $(srcdir)/Makefile.in: $(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) --gnu data/Makefile'; \ cd $(top_srcdir) && \ $(AUTOMAKE) --gnu data/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: $(am__configure_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(ACLOCAL_M4): $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh agave.desktop.in: $(top_builddir)/config.status $(srcdir)/agave.desktop.in.in cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ install-desktopDATA: $(desktop_DATA) @$(NORMAL_INSTALL) test -z "$(desktopdir)" || $(MKDIR_P) "$(DESTDIR)$(desktopdir)" @list='$(desktop_DATA)'; for p in $$list; do \ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ f=$(am__strip_dir) \ echo " $(desktopDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(desktopdir)/$$f'"; \ $(desktopDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(desktopdir)/$$f"; \ done uninstall-desktopDATA: @$(NORMAL_UNINSTALL) @list='$(desktop_DATA)'; for p in $$list; do \ f=$(am__strip_dir) \ echo " rm -f '$(DESTDIR)$(desktopdir)/$$f'"; \ rm -f "$(DESTDIR)$(desktopdir)/$$f"; \ done install-schemasDATA: $(schemas_DATA) @$(NORMAL_INSTALL) test -z "$(schemasdir)" || $(MKDIR_P) "$(DESTDIR)$(schemasdir)" @list='$(schemas_DATA)'; for p in $$list; do \ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ f=$(am__strip_dir) \ echo " $(schemasDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(schemasdir)/$$f'"; \ $(schemasDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(schemasdir)/$$f"; \ done uninstall-schemasDATA: @$(NORMAL_UNINSTALL) @list='$(schemas_DATA)'; for p in $$list; do \ f=$(am__strip_dir) \ echo " rm -f '$(DESTDIR)$(schemasdir)/$$f'"; \ rm -f "$(DESTDIR)$(schemasdir)/$$f"; \ done # 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): @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; \ (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): @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; \ (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ || eval $$failcom; \ done && test -z "$$fail" tags-recursive: list='$(SUBDIRS)'; for subdir in $$list; do \ test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \ done ctags-recursive: list='$(SUBDIRS)'; for subdir in $$list; do \ test "$$subdir" = . || (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) tags=; \ 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 || \ tags="$$tags $$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; }; }'`; \ if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \ test -n "$$unique" || unique=$$empty_fix; \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ $$tags $$unique; \ fi ctags: CTAGS CTAGS: ctags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) tags=; \ 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)$$tags$$unique" \ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ $$tags $$unique GTAGS: here=`$(am__cd) $(top_builddir) && pwd` \ && 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 $(srcdir)/$$file && test $$d != $(srcdir); then \ cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ fi; \ cp -pR $$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; \ distdir=`$(am__cd) $(distdir) && pwd`; \ top_distdir=`$(am__cd) $(top_distdir) && pwd`; \ (cd $$subdir && \ $(MAKE) $(AM_MAKEFLAGS) \ top_distdir="$$top_distdir" \ distdir="$$distdir/$$subdir" \ am__remove_distdir=: \ am__skip_length_check=: \ distdir) \ || exit 1; \ fi; \ done check-am: all-am check: check-recursive all-am: Makefile $(DATA) installdirs: installdirs-recursive installdirs-am: for dir in "$(DESTDIR)$(desktopdir)" "$(DESTDIR)$(schemasdir)"; 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: -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES) distclean-generic: -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) maintainer-clean-generic: @echo "This command is intended for maintainers to use" @echo "it deletes files that may require special tools to rebuild." @GCONF_SCHEMAS_INSTALL_FALSE@install-data-local: clean: clean-recursive clean-am: clean-generic mostlyclean-am distclean: distclean-recursive -rm -f Makefile distclean-am: clean-am distclean-generic distclean-tags dvi: dvi-recursive dvi-am: html: html-recursive info: info-recursive info-am: install-data-am: install-data-local install-desktopDATA \ install-schemasDATA install-dvi: install-dvi-recursive install-exec-am: install-html: install-html-recursive install-info: install-info-recursive install-man: install-pdf: install-pdf-recursive install-ps: install-ps-recursive 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 pdf: pdf-recursive pdf-am: ps: ps-recursive ps-am: uninstall-am: uninstall-desktopDATA uninstall-schemasDATA .MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) install-am \ install-strip .PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \ all all-am check check-am clean clean-generic ctags \ ctags-recursive distclean distclean-generic distclean-tags \ distdir dvi dvi-am html html-am info info-am install \ install-am install-data install-data-am install-data-local \ install-desktopDATA 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-schemasDATA install-strip \ installcheck installcheck-am installdirs installdirs-am \ maintainer-clean maintainer-clean-generic mostlyclean \ mostlyclean-generic pdf pdf-am ps ps-am tags tags-recursive \ uninstall uninstall-am uninstall-desktopDATA \ uninstall-schemasDATA @INTLTOOL_DESKTOP_RULE@ @INTLTOOL_SCHEMAS_RULE@ @GCONF_SCHEMAS_INSTALL_TRUE@install-data-local: $(schemas_DATA) @GCONF_SCHEMAS_INSTALL_TRUE@ if test -z "$(DESTDIR)" ; then \ @GCONF_SCHEMAS_INSTALL_TRUE@ for p in $^ ; do \ @GCONF_SCHEMAS_INSTALL_TRUE@ GCONF_CONFIG_SOURCE=$(GCONF_SCHEMA_CONFIG_SOURCE) \ @GCONF_SCHEMAS_INSTALL_TRUE@ $(GCONFTOOL) --makefile-install-rule $$p >&1 > /dev/null; \ @GCONF_SCHEMAS_INSTALL_TRUE@ done \ @GCONF_SCHEMAS_INSTALL_TRUE@ fi # 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: agave-0.4.7/data/agave.desktop.in0000644000175000017500000000024411224442720013520 00000000000000[Desktop Entry] Version=1.0 Encoding=UTF-8 Type=Application _Name=Agave _Comment=Generate color schemes Icon=agave Exec=agave Categories=GNOME;Application;Graphics agave-0.4.7/data/Makefile.am0000644000175000017500000000133710760701126012477 00000000000000SUBDIRS = ui palettes # desktop files desktopdir = $(datadir)/applications desktop_in_files = agave.desktop.in desktop_DATA = $(desktop_in_files:.desktop.in=.desktop) @INTLTOOL_DESKTOP_RULE@ # gconf schemas schemasdir = $(GCONF_SCHEMA_FILE_DIR) schemas_in_files = agave.schemas.in schemas_DATA = $(schemas_in_files:.schemas.in=.schemas) @INTLTOOL_SCHEMAS_RULE@ if GCONF_SCHEMAS_INSTALL install-data-local: $(schemas_DATA) if test -z "$(DESTDIR)" ; then \ for p in $^ ; do \ GCONF_CONFIG_SOURCE=$(GCONF_SCHEMA_CONFIG_SOURCE) \ $(GCONFTOOL) --makefile-install-rule $$p >&1 > /dev/null; \ done \ fi endif #GCONF_SCHEMAS_INSTALL EXTRA_DIST = ${desktop_in_files} ${schemas_in_files} CLEANFILES = ${desktop_DATA} ${schemas_DATA} agave-0.4.7/data/agave.desktop.in.in0000644000175000017500000000025010760701126014124 00000000000000[Desktop Entry] Version=1.0 Encoding=UTF-8 Type=Application _Name=Agave _Comment=Generate color schemes Icon=agave Exec=@PACKAGE@ Categories=GNOME;Application;Graphics agave-0.4.7/data/palettes/0000777000175000017500000000000011224443301012336 500000000000000agave-0.4.7/data/palettes/Makefile.in0000644000175000017500000002576111224442712014337 00000000000000# Makefile.in generated by automake 1.10.2 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # 2003, 2004, 2005, 2006, 2007, 2008 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@ pkglibdir = $(libdir)/@PACKAGE@ pkgincludedir = $(includedir)/@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 = : subdir = data/palettes DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \ $(top_srcdir)/configure.ac 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 = SOURCES = DIST_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 = `echo $$p | sed -e 's|^.*/||'`; am__installdirs = "$(DESTDIR)$(palettedir)" paletteDATA_INSTALL = $(INSTALL_DATA) DATA = $(palette_DATA) DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ AGAVE_CFLAGS = @AGAVE_CFLAGS@ AGAVE_ICONDIR = @AGAVE_ICONDIR@ AGAVE_LIBS = @AGAVE_LIBS@ AGAVE_LOCALEDIR = @AGAVE_LOCALEDIR@ AGAVE_PALETTEDIR = @AGAVE_PALETTEDIR@ AGAVE_UIDIR = @AGAVE_UIDIR@ ALL_LINGUAS = @ALL_LINGUAS@ AMTAR = @AMTAR@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ AWK = @AWK@ CAIRO_RING_CFLAGS = @CAIRO_RING_CFLAGS@ CAIRO_RING_LIBS = @CAIRO_RING_LIBS@ CATALOGS = @CATALOGS@ CATOBJEXT = @CATOBJEXT@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPPFLAGS = @CPPFLAGS@ CPPUNIT_CFLAGS = @CPPUNIT_CFLAGS@ CPPUNIT_CONFIG = @CPPUNIT_CONFIG@ CPPUNIT_LIBS = @CPPUNIT_LIBS@ CXX = @CXX@ CXXCPP = @CXXCPP@ CXXDEPMODE = @CXXDEPMODE@ CXXFLAGS = @CXXFLAGS@ CYGPATH_W = @CYGPATH_W@ DATADIRNAME = @DATADIRNAME@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ DISTCHECK_CONFIGURE_FLAGS = @DISTCHECK_CONFIGURE_FLAGS@ DOC_USER_FORMATS = @DOC_USER_FORMATS@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ GCONFMM_CFLAGS = @GCONFMM_CFLAGS@ GCONFMM_LIBS = @GCONFMM_LIBS@ GCONFTOOL = @GCONFTOOL@ GCONF_SCHEMA_CONFIG_SOURCE = @GCONF_SCHEMA_CONFIG_SOURCE@ GCONF_SCHEMA_FILE_DIR = @GCONF_SCHEMA_FILE_DIR@ GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ GIT_PATH = @GIT_PATH@ GMOFILES = @GMOFILES@ GMSGFMT = @GMSGFMT@ GNOME_CFLAGS = @GNOME_CFLAGS@ GNOME_LIBS = @GNOME_LIBS@ GREP = @GREP@ GTKMM_CFLAGS = @GTKMM_CFLAGS@ GTKMM_LIBS = @GTKMM_LIBS@ HELP_DIR = @HELP_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@ LDFLAGS = @LDFLAGS@ LIBGLADEMM_CFLAGS = @LIBGLADEMM_CFLAGS@ LIBGLADEMM_LIBS = @LIBGLADEMM_LIBS@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LN_S = @LN_S@ LTLIBOBJS = @LTLIBOBJS@ MAKEINFO = @MAKEINFO@ MKDIR_P = @MKDIR_P@ MKINSTALLDIRS = @MKINSTALLDIRS@ MSGFMT = @MSGFMT@ MSGFMT_OPTS = @MSGFMT_OPTS@ MSGMERGE = @MSGMERGE@ OBJEXT = @OBJEXT@ OMF_DIR = @OMF_DIR@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PACKAGE_WEBSITE = @PACKAGE_WEBSITE@ PATH_SEPARATOR = @PATH_SEPARATOR@ PKG_CONFIG = @PKG_CONFIG@ POFILES = @POFILES@ POSUB = @POSUB@ PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@ PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@ PRINTING_CFLAGS = @PRINTING_CFLAGS@ PRINTING_LIBS = @PRINTING_LIBS@ RANLIB = @RANLIB@ SED = @SED@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ SORT = @SORT@ STRIP = @STRIP@ TR = @TR@ UNIQ = @UNIQ@ USE_NLS = @USE_NLS@ VERSION = @VERSION@ XGETTEXT = @XGETTEXT@ 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_CXX = @ac_ct_CXX@ 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_alias = @build_alias@ builddir = @builddir@ datadir = @datadir@ datarootdir = @datarootdir@ docdir = @docdir@ dvidir = @dvidir@ exec_prefix = @exec_prefix@ host_alias = @host_alias@ htmldir = @htmldir@ includedir = @includedir@ infodir = @infodir@ install_sh = @install_sh@ libdir = @libdir@ libexecdir = @libexecdir@ localedir = @localedir@ localstatedir = @localstatedir@ 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@ palettedir = ${AGAVE_PALETTEDIR} palette_DATA = Web.gpl \ Gnome-Palette.gpl \ Tango-Palette.gpl \ Visibone.gpl EXTRA_DIST = ${palette_DATA} all: all-am .SUFFIXES: $(srcdir)/Makefile.in: $(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) --gnu data/palettes/Makefile'; \ cd $(top_srcdir) && \ $(AUTOMAKE) --gnu data/palettes/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: $(am__configure_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(ACLOCAL_M4): $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh install-paletteDATA: $(palette_DATA) @$(NORMAL_INSTALL) test -z "$(palettedir)" || $(MKDIR_P) "$(DESTDIR)$(palettedir)" @list='$(palette_DATA)'; for p in $$list; do \ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ f=$(am__strip_dir) \ echo " $(paletteDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(palettedir)/$$f'"; \ $(paletteDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(palettedir)/$$f"; \ done uninstall-paletteDATA: @$(NORMAL_UNINSTALL) @list='$(palette_DATA)'; for p in $$list; do \ f=$(am__strip_dir) \ echo " rm -f '$(DESTDIR)$(palettedir)/$$f'"; \ rm -f "$(DESTDIR)$(palettedir)/$$f"; \ done 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 $(srcdir)/$$file && test $$d != $(srcdir); then \ cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ fi; \ cp -pR $$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 $(DATA) installdirs: for dir in "$(DESTDIR)$(palettedir)"; 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) 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 mostlyclean-am distclean: distclean-am -rm -f Makefile distclean-am: clean-am distclean-generic dvi: dvi-am dvi-am: html: html-am info: info-am info-am: install-data-am: install-paletteDATA install-dvi: install-dvi-am 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 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 pdf: pdf-am pdf-am: ps: ps-am ps-am: uninstall-am: uninstall-paletteDATA .MAKE: install-am install-strip .PHONY: all all-am check check-am clean clean-generic distclean \ distclean-generic 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-paletteDATA install-pdf install-pdf-am install-ps \ install-ps-am install-strip installcheck installcheck-am \ installdirs maintainer-clean maintainer-clean-generic \ mostlyclean mostlyclean-generic pdf pdf-am ps ps-am uninstall \ uninstall-am uninstall-paletteDATA # 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: agave-0.4.7/data/palettes/Makefile.am0000644000175000017500000000023710663715205014323 00000000000000palettedir = ${AGAVE_PALETTEDIR} palette_DATA = Web.gpl \ Gnome-Palette.gpl \ Tango-Palette.gpl \ Visibone.gpl EXTRA_DIST = ${palette_DATA} agave-0.4.7/data/palettes/Gnome-Palette.gpl0000644000175000017500000000227510663715205015440 00000000000000GIMP Palette Name: GNOME Icon Palette Columns: 0 # 234 232 227 Basic 3D hilight 186 181 171 Basic 3D medium 128 125 116 Basic 3D dark 86 82 72 Basic 3D shadow 197 210 200 Green hilight 131 166 127 Green medium 93 117 85 Green dark 68 86 50 Green shadow 224 182 175 Red hilight 193 102 90 Red medium 136 70 49 Red dark 102 56 34 Red shadow 173 167 200 Purple hilight 136 127 163 Purple medium 98 91 129 Purple dark 73 64 102 Purple shadow 157 184 210 Blue hilight 117 144 174 Blue medium 75 105 131 Blue dark 49 78 108 Blue shadow 239 224 205 Face/Skin hilight 224 195 158 Face/Skin medium 179 145 105 Face/Skin dark 130 102 71 Face/Skin shadow 223 66 30 Accent Red 153 0 0 Accent Red dark 238 214 128 Accent yellow 209 148 12 Accent yellow dark 70 160 70 Accent green 38 119 38 Accent green dark 255 255 255 White 0 0 0 Black 186 186 186 light grey 130 130 130 dark grey 130 102 71 Bez nazvu 179 145 105 calendar 222 201 149 tistak 0 0 0 Untitled 0 0 0 Untitled 0 0 0 Untitled 0 0 0 Untitled 110 158 110 evo todo 149 146 169 evo contacts 185 180 170 evo calendar 196 117 126 evo summary 235 177 61 evo mailer 157 184 210 Untitled 246 178 118 telova agave-0.4.7/data/palettes/Web.gpl0000644000175000017500000001075110507563756013523 00000000000000GIMP Palette Name: Web-safe colors Columns: 36 # 255 255 255 Untitled 255 255 204 Untitled 255 255 153 Untitled 255 255 102 Untitled 255 255 51 Untitled 255 255 0 Untitled 255 204 255 Untitled 255 204 204 Untitled 255 204 153 Untitled 255 204 102 Untitled 255 204 51 Untitled 255 204 0 Untitled 255 153 255 Untitled 255 153 204 Untitled 255 153 153 Untitled 255 153 102 Untitled 255 153 51 Untitled 255 153 0 Untitled 255 102 255 Untitled 255 102 204 Untitled 255 102 153 Untitled 255 102 102 Untitled 255 102 51 Untitled 255 102 0 Untitled 255 51 255 Untitled 255 51 204 Untitled 255 51 153 Untitled 255 51 102 Untitled 255 51 51 Untitled 255 51 0 Untitled 255 0 255 Untitled 255 0 204 Untitled 255 0 153 Untitled 255 0 102 Untitled 255 0 51 Untitled 255 0 0 Untitled 204 255 255 Untitled 204 255 204 Untitled 204 255 153 Untitled 204 255 102 Untitled 204 255 51 Untitled 204 255 0 Untitled 204 204 255 Untitled 204 204 204 Untitled 204 204 153 Untitled 204 204 102 Untitled 204 204 51 Untitled 204 204 0 Untitled 204 153 255 Untitled 204 153 204 Untitled 204 153 153 Untitled 204 153 102 Untitled 204 153 51 Untitled 204 153 0 Untitled 204 102 255 Untitled 204 102 204 Untitled 204 102 153 Untitled 204 102 102 Untitled 204 102 51 Untitled 204 102 0 Untitled 204 51 255 Untitled 204 51 204 Untitled 204 51 153 Untitled 204 51 102 Untitled 204 51 51 Untitled 204 51 0 Untitled 204 0 255 Untitled 204 0 204 Untitled 204 0 153 Untitled 204 0 102 Untitled 204 0 51 Untitled 204 0 0 Untitled 153 255 255 Untitled 153 255 204 Untitled 153 255 153 Untitled 153 255 102 Untitled 153 255 51 Untitled 153 255 0 Untitled 153 204 255 Untitled 153 204 204 Untitled 153 204 153 Untitled 153 204 102 Untitled 153 204 51 Untitled 153 204 0 Untitled 153 153 255 Untitled 153 153 204 Untitled 153 153 153 Untitled 153 153 102 Untitled 153 153 51 Untitled 153 153 0 Untitled 153 102 255 Untitled 153 102 204 Untitled 153 102 153 Untitled 153 102 102 Untitled 153 102 51 Untitled 153 102 0 Untitled 153 51 255 Untitled 153 51 204 Untitled 153 51 153 Untitled 153 51 102 Untitled 153 51 51 Untitled 153 51 0 Untitled 153 0 255 Untitled 153 0 204 Untitled 153 0 153 Untitled 153 0 102 Untitled 153 0 51 Untitled 153 0 0 Untitled 102 255 255 Untitled 102 255 204 Untitled 102 255 153 Untitled 102 255 102 Untitled 102 255 51 Untitled 102 255 0 Untitled 102 204 255 Untitled 102 204 204 Untitled 102 204 153 Untitled 102 204 102 Untitled 102 204 51 Untitled 102 204 0 Untitled 102 153 255 Untitled 102 153 204 Untitled 102 153 153 Untitled 102 153 102 Untitled 102 153 51 Untitled 102 153 0 Untitled 102 102 255 Untitled 102 102 204 Untitled 102 102 153 Untitled 102 102 102 Untitled 102 102 51 Untitled 102 102 0 Untitled 102 51 255 Untitled 102 51 204 Untitled 102 51 153 Untitled 102 51 102 Untitled 102 51 51 Untitled 102 51 0 Untitled 102 0 255 Untitled 102 0 204 Untitled 102 0 153 Untitled 102 0 102 Untitled 102 0 51 Untitled 102 0 0 Untitled 51 255 255 Untitled 51 255 204 Untitled 51 255 153 Untitled 51 255 102 Untitled 51 255 51 Untitled 51 255 0 Untitled 51 204 255 Untitled 51 204 204 Untitled 51 204 153 Untitled 51 204 102 Untitled 51 204 51 Untitled 51 204 0 Untitled 51 153 255 Untitled 51 153 204 Untitled 51 153 153 Untitled 51 153 102 Untitled 51 153 51 Untitled 51 153 0 Untitled 51 102 255 Untitled 51 102 204 Untitled 51 102 153 Untitled 51 102 102 Untitled 51 102 51 Untitled 51 102 0 Untitled 51 51 255 Untitled 51 51 204 Untitled 51 51 153 Untitled 51 51 102 Untitled 51 51 51 Untitled 51 51 0 Untitled 51 0 255 Untitled 51 0 204 Untitled 51 0 153 Untitled 51 0 102 Untitled 51 0 51 Untitled 51 0 0 Untitled 0 255 255 Untitled 0 255 204 Untitled 0 255 153 Untitled 0 255 102 Untitled 0 255 51 Untitled 0 255 0 Untitled 0 204 255 Untitled 0 204 204 Untitled 0 204 153 Untitled 0 204 102 Untitled 0 204 51 Untitled 0 204 0 Untitled 0 153 255 Untitled 0 153 204 Untitled 0 153 153 Untitled 0 153 102 Untitled 0 153 51 Untitled 0 153 0 Untitled 0 102 255 Untitled 0 102 204 Untitled 0 102 153 Untitled 0 102 102 Untitled 0 102 51 Untitled 0 102 0 Untitled 0 51 255 Untitled 0 51 204 Untitled 0 51 153 Untitled 0 51 102 Untitled 0 51 51 Untitled 0 51 0 Untitled 0 0 255 Untitled 0 0 204 Untitled 0 0 153 Untitled 0 0 102 Untitled 0 0 51 Untitled 0 0 0 Untitled agave-0.4.7/data/palettes/Visibone.gpl0000644000175000017500000002741410507563756014570 00000000000000GIMP Palette Name: Visibone Columns: 16 # # Visibone -- GIMP Palette file # # Arrangement idea from www.visibone.com # Conversion to GIMP Palette and addition of # hex codes and color names by Tigert # 255 255 255 #FFFFFF - White 204 204 204 #CCCCCC - Pale Gray 153 153 153 #999999 - Light Gray 102 102 102 #666666 - Dark Gray 51 51 51 #333333 - Obscure Gray 0 0 0 #000000 - Black 255 204 0 #FFCC00 - Yellow-Yellow-Orange 255 153 0 #FF9900 - Orange-Orange-Yellow 255 102 0 #FF6600 - Orange-Orange-Red 255 51 0 #FF3300 - Red-Red-Orange 0 0 0 #000000 - Black 51 51 51 #333333 - Obscure Gray 102 102 102 #666666 - Dark Gray 153 153 153 #999999 - Light Gray 204 204 204 #CCCCCC - Pale Gray 255 255 255 #FFFFFF - White 0 0 0 #000000 - Black 0 0 0 #000000 - Black 0 0 0 #000000 - Black 0 0 0 #000000 - Black 0 0 0 #000000 - Black 0 0 0 #000000 - Black 255 204 51 #FFCC33 - Light Yellow-Orange 255 204 102 #FFCC66 - Light Orange-Yellow 255 153 102 #FF9966 - Light Orange-Red 255 102 51 #FF6633 - Light Red-Orange 0 0 0 #000000 - Black 0 0 0 #000000 - Black 0 0 0 #000000 - Black 0 0 0 #000000 - Black 0 0 0 #000000 - Black 0 0 0 #000000 - Black 0 0 0 #000000 - Black 0 0 0 #000000 - Black 0 0 0 #000000 - Black 0 0 0 #000000 - Black 0 0 0 #000000 - Black 0 0 0 #000000 - Black 204 153 0 #CC9900 - Dark Yellow-Orange 204 153 51 #CC9933 - Medium Orange-Yellow 204 102 51 #CC6633 - Medium Orange-Red 204 51 0 #CC3300 - Dark Red-Orange 0 0 0 #000000 - Black 0 0 0 #000000 - Black 0 0 0 #000000 - Black 0 0 0 #000000 - Black 0 0 0 #000000 - Black 0 0 0 #000000 - Black 0 0 0 #000000 - Black 0 0 0 #000000 - Black 51 51 0 #333300 - Obscure Weak Yellow 102 102 0 #666600 - Obscure Dull Yellow 153 153 0 #999900 - Dark Faded Yellow 204 204 0 #CCCC00 - Dark Hard Yellow 255 255 0 #FFFF00 - Yellow 153 102 0 #996600 - Dark Orange-Yellow 153 51 0 #993300 - Dark Orange-Red 51 0 0 #330000 - Obscure Weak Red 102 0 0 #660000 - Obscure Dull Red 153 0 0 #990000 - Dark Faded Red 204 0 0 #CC0000 - Dark Hard Red 255 0 0 #FF0000 - Red 0 0 0 #000000 - Black 0 0 0 #000000 - Black 204 255 0 #CCFF00 - Yellow-Yellow-Spring 204 255 51 #CCFF33 - Light Yellow-Spring 153 204 0 #99CC00 - Dark Yellow-Spring 102 102 51 #666633 - Dark Weak Yellow 153 153 51 #999933 - Dark Dull Yellow 204 204 51 #CCCC33 - Medium Faded Yellow 255 255 51 #FFFF33 - Light Hard Yellow 102 51 0 #663300 - Obscure Dull Orange 0 0 0 #000000 - Black 102 51 51 #663333 - Dark Weak Red 153 51 51 #993333 - Dark Dull Red 204 51 51 #CC3333 - Medium Faded Red 255 51 51 #FF3333 - Light Hard Red 204 0 51 #CC0033 - Dark Red-Pink 255 51 102 #FF3366 - Light Red-Pink 255 0 51 #FF0033 - Red-Red-Pink 153 255 0 #99FF00 - Spring-Spring-Yellow 204 255 102 #CCFF66 - Light Spring-Yellow 153 204 51 #99CC33 - Medium Spring-Yellow 102 153 0 #669900 - Dark Spring-Yellow 153 153 102 #999966 - Medium Weak Yellow 204 204 102 #CCCC66 - Light Dull Yellow 255 255 102 #FFFF66 - Light Faded Yellow 153 102 51 #996633 - Dark Dull Orange 204 102 0 #CC6600 - Dark Hard Orange 153 102 102 #996666 - Medium Weak Red 204 102 102 #CC6666 - Light Dull Red 255 102 102 #FF6666 - Light Faded Red 153 0 51 #990033 - Dark Pink-Red 204 51 102 #CC3366 - Medium Pink-Red 255 102 153 #FF6699 - Light Pink-Red 255 0 102 #FF0066 - Pink-Pink-Red 102 255 0 #66FF00 - Spring-Spring-Green 153 255 102 #99FF66 - Light Spring-Green 102 204 51 #66CC33 - Medium Spring-Green 51 153 0 #339900 - Dark Spring-Green 0 0 0 #000000 - Black 204 204 153 #CCCC99 - Light Weak Yellow 255 255 153 #FFFF99 - Pale Dull Yellow 204 153 102 #CC9966 - Light Dull Orange 255 153 51 #FF9933 - Light Hard Orange 204 153 153 #CC9999 - Light Weak Red 255 153 153 #FF9999 - Pale Dull Red 0 0 0 #000000 - Black 153 0 102 #990066 - Dark Pink-Magenta 204 51 153 #CC3399 - Medium Pink-Magenta 255 102 204 #FF66CC - Light Pink-Magenta 255 0 153 #FF0099 - Pink-Pink-Magenta 51 255 0 #33FF00 - Green-Green-Spring 102 255 51 #66FF33 - Light Green-Spring 51 204 0 #33CC00 - Dark Green-Spring 51 102 0 #336600 - Obscure Dull Spring 102 204 0 #66CC00 - Dark Hard Spring 153 255 51 #99FF33 - Light Hard Spring 255 255 204 #FFFFCC - Pale Weak Yellow 255 204 153 #FFCC99 - Pale Dull Orange 0 0 0 #000000 - Black 255 204 204 #FFCCCC - Pale Weak Red 204 102 153 #CC6699 - Light Dull Pink 153 51 102 #993366 - Dark Dull Pink 102 0 51 #660033 - Obscure Dull Pink 204 0 153 #CC0099 - Dark Magenta-Pink 255 51 204 #FF33CC - Light Magenta-Pink 255 0 204 #FF00CC - Magenta-Magenta-Pink 0 255 0 #00FF00 - Green 0 0 0 #000000 - Black 0 0 0 #000000 - Black 102 153 51 #669933 - Dark Dull Spring 153 204 102 #99CC66 - Light Dull Spring 204 255 153 #CCFF99 - Pale Dull Spring 0 0 0 #000000 - Black 0 0 0 #000000 - Black 0 0 0 #000000 - Black 0 0 0 #000000 - Black 255 153 204 #FF99CC - Pale Dull Pink 255 51 153 #FF3399 - Light Hard Pink 204 0 102 #CC0066 - Dark Hard Pink 0 0 0 #000000 - Black 102 51 102 #663366 - Dark Weak Magenta 51 0 51 #330033 - Obscure Weak Magenta 0 204 0 #00CC00 - Dark Hard Green 51 255 51 #33FF33 - Light Hard Green 102 255 102 #66FF66 - Light Faded Green 0 0 0 #000000 - Black 0 0 0 #000000 - Black 0 0 0 #000000 - Black 0 0 0 #000000 - Black 0 0 0 #000000 - Black 0 0 0 #000000 - Black 0 0 0 #000000 - Black 0 0 0 #000000 - Black 0 0 0 #000000 - Black 204 153 204 #CC99CC - Light Weak Magenta 153 102 153 #996699 - Medium Weak Magenta 153 51 153 #993399 - Dark Dull Magenta 102 0 102 #660066 - Obscure Dull Magenta 0 153 0 #009900 - Dark Faded Green 51 204 51 #33CC33 - Medium Faded Green 102 204 102 #66CC66 - Light Dull Green 153 255 153 #99FF99 - Pale Dull Green 204 255 204 #CCFFCC - Pale Weak Green 0 0 0 #000000 - Black 0 0 0 #000000 - Black 0 0 0 #000000 - Black 0 0 0 #000000 - Black 0 0 0 #000000 - Black 0 0 0 #000000 - Black 255 204 255 #FFCCFF - Pale Weak Magenta 255 153 255 #FF99FF - Pale Dull Magenta 204 102 204 #CC66CC - Light Dull Magenta 204 51 204 #CC33CC - Medium Faded Magenta 153 0 153 #990099 - Dark Faded Magenta 0 102 0 #006600 - Obscure Dull Green 51 153 51 #339933 - Dark Dull Green 102 153 102 #669966 - Medium Weak Green 153 204 153 #99CC99 - Light Weak Green 0 0 0 #000000 - Black 0 0 0 #000000 - Black 0 0 0 #000000 - Black 0 0 0 #000000 - Black 0 0 0 #000000 - Black 0 0 0 #000000 - Black 0 0 0 #000000 - Black 0 0 0 #000000 - Black 0 0 0 #000000 - Black 255 102 255 #FF66FF - Light Faded Magenta 255 51 255 #FF33FF - Light Hard Magenta 204 0 204 #CC00CC - Dark Hard Magenta 0 51 0 #003300 - Obscure Weak Green 51 102 51 #336633 - Dark Weak Green 0 0 0 #000000 - Black 0 204 102 #00CC66 - Dark Hard Teal 51 255 153 #33FF99 - Light Hard Teal 153 255 204 #99FFCC - Pale Dull Teal 0 0 0 #000000 - Black 0 0 0 #000000 - Black 0 0 0 #000000 - Black 0 0 0 #000000 - Black 204 153 255 #CC99FF - Pale Dull Violet 153 102 204 #9966CC - Light Dull Violet 102 51 153 #663399 - Dark Dull Violet 0 0 0 #000000 - Black 0 0 0 #000000 - Black 255 0 255 #FF00FF - Magenta 0 255 51 #00FF33 - Green-Green-Teal 51 255 102 #33FF66 - Light Green-Teal 0 204 51 #00CC33 - Dark Green-Teal 0 102 51 #006633 - Obscure Dull Teal 51 153 102 #339966 - Dark Dull Teal 102 204 153 #66CC99 - Light Dull Teal 204 255 255 #CCFFFF - Pale Weak Cyan 0 0 0 #000000 - Black 153 204 255 #99CCFF - Pale Dull Azure 204 204 255 #CCCCFF - Pale Weak Blue 153 51 255 #9933FF - Light Hard Violet 102 0 204 #6600CC - Dark Hard Violet 51 0 102 #330066 - Obscure Dull Violet 153 0 204 #9900CC - Dark Magenta-Violet 204 51 255 #CC33FF - Light Magenta-Violet 204 0 255 #CC00FF - Magenta-Magenta-Violet 0 255 102 #00FF66 - Teal-Teal-Green 102 255 153 #66FF99 - Light Teal-Green 51 204 102 #33CC66 - Medium Teal-Green 0 153 51 #009933 - Dark Teal-Green 0 0 0 #000000 - Black 153 255 255 #99FFFF - Pale Dull Cyan 153 204 204 #99CCCC - Light Weak Cyan 51 153 255 #3399FF - Light Hard Azure 102 153 204 #6699CC - Light Dull Azure 153 153 255 #9999FF - Pale Dull Blue 153 153 204 #9999CC - Light Weak Blue 0 0 0 #000000 - Black 102 0 153 #660099 - Dark Violet-Magenta 153 51 204 #9933CC - Medium Violet-Magenta 204 102 255 #CC66FF - Light Violet-Magenta 153 0 255 #9900FF - Violet-Violet-Magenta 0 255 153 #00FF99 - Teal-Teal-Cyan 102 255 204 #66FFCC - Light Teal-Cyan 51 204 153 #33CC99 - Medium Teal-Cyan 0 153 102 #009966 - Dark Teal-Cyan 102 255 255 #66FFFF - Light Faded Cyan 102 204 204 #66CCCC - Light Dull Cyan 102 153 153 #669999 - Medium Weak Cyan 0 102 204 #0066CC - Dark Hard Azure 51 102 153 #336699 - Dark Dull Azure 102 102 255 #6666FF - Light Faded Blue 102 102 204 #6666CC - Light Dull Blue 102 102 153 #666699 - Medium Weak Blue 102 0 153 #660099 - Dark Violet-Magenta 153 51 204 #9933CC - Medium Violet-Magenta 204 102 255 #CC66FF - Light Violet-Magenta 153 0 255 #9900FF - Violet-Violet-Magenta 0 255 204 #00FFCC - Cyan-Cyan-Teal 51 255 204 #33FFCC - Light Cyan-Teal 0 204 153 #00CC99 - Dark Cyan-Teal 51 255 255 #33FFFF - Light Hard Cyan 51 204 204 #33CCCC - Medium Faded Cyan 51 153 153 #339999 - Dark Dull Cyan 51 102 102 #336666 - Dark Weak Cyan 0 0 0 #000000 - Black 0 51 102 #003366 - Obscure Dull Azure 51 51 255 #3333FF - Light Hard Blue 51 51 204 #3333CC - Medium Faded Blue 51 51 153 #333399 - Dark Dull Blue 51 51 102 #333366 - Dark Weak Blue 51 0 204 #3300CC - Dark Blue-Violet 102 51 255 #6633FF - Light Blue-Violet 51 0 255 #3300FF - Blue-Blue-Violet 0 0 0 #000000 - Black 0 0 0 #000000 - Black 0 255 255 #00FFFF - Cyan 0 204 204 #00CCCC - Dark Hard Cyan 0 153 153 #009999 - Dark Faded Cyan 0 102 102 #006666 - Obscure Dull Cyan 0 51 51 #003333 - Obscure Weak Cyan 0 102 153 #006699 - Dark Azure-Cyan 0 51 153 #003399 - Dark Azure-Blue 0 0 255 #0000FF - Blue 0 0 204 #0000CC - Dark Hard Blue 0 0 153 #000099 - Dark Faded Blue 0 0 102 #000066 - Obscure Dull Blue 0 0 51 #000033 - Obscure Weak Blue 0 0 0 #000000 - Black 0 0 0 #000000 - Black 0 0 0 #000000 - Black 0 0 0 #000000 - Black 0 0 0 #000000 - Black 0 0 0 #000000 - Black 0 0 0 #000000 - Black 0 0 0 #000000 - Black 0 153 204 #0099CC - Dark Cyan-Azure 51 153 204 #3399CC - Medium Azure-Cyan 51 102 204 #3366CC - Medium Azure-Blue 0 51 204 #0033CC - Dark Blue-Azure 0 0 0 #000000 - Black 0 0 0 #000000 - Black 0 0 0 #000000 - Black 0 0 0 #000000 - Black 0 0 0 #000000 - Black 0 0 0 #000000 - Black 0 0 0 #000000 - Black 0 0 0 #000000 - Black 0 0 0 #000000 - Black 0 0 0 #000000 - Black 0 0 0 #000000 - Black 0 0 0 #000000 - Black 51 204 255 #33CCFF - Light Cyan-Azure 102 204 255 #66CCFF - Light Azure-Cyan 102 153 255 #6699FF - Light Azure-Blue 51 102 255 #3366FF - Light Blue-Azure 0 0 0 #000000 - Black 0 0 0 #000000 - Black 0 0 0 #000000 - Black 0 0 0 #000000 - Black 0 0 0 #000000 - Black 0 0 0 #000000 - Black 255 255 255 #FFFFFF - White 204 204 204 #CCCCCC - Pale Gray 153 153 153 #999999 - Light Gray 102 102 102 #666666 - Dark Gray 51 51 51 #333333 - Obscure Gray 0 0 0 #000000 - Black 0 204 255 #00CCFF - Cyan-Cyan-Azure 0 153 255 #0099FF - Azure-Azure-Cyan 0 102 255 #0066FF - Azure-Azure-Blue 0 51 255 #0033FF - Blue-Blue-Azure 0 0 0 #000000 - Black 51 51 51 #333333 - Obscure Gray 102 102 102 #666666 - Dark Gray 153 153 153 #999999 - Light Gray 204 204 204 #CCCCCC - Pale Gray 255 255 255 #FFFFFF - White agave-0.4.7/data/palettes/Tango-Palette.gpl0000644000175000017500000000130710760701102015423 00000000000000GIMP Palette Name: Tango Icon Theme Palette Columns: 3 # 252 233 79 Butter 1 237 212 0 Butter 2 196 160 0 Butter 3 252 175 62 Orange 1 245 121 0 Orange 2 206 92 0 Orange 3 233 185 110 Chocolate 1 193 125 17 Chocolate 2 143 89 2 Chocolate 3 138 226 52 Chameleon 1 115 210 22 Chameleon 2 78 154 6 Chameleon 3 114 159 207 Sky Blue 1 52 101 164 Sky Blue 2 32 74 135 Sky Blue 3 173 127 168 Plum 1 117 80 123 Plum 2 92 53 102 Plum 3 239 41 41 Scarlet Red 1 204 0 0 Scarlet Red 2 164 0 0 Scarlet Red 3 255 255 255 White 238 238 236 Aluminium 1 211 215 207 Aluminium 2 186 189 182 Aluminium 3 136 138 133 Aluminium 4 85 87 83 Aluminium 5 46 52 54 Aluminium 6 0 0 0 Black agave-0.4.7/data/agave.schemas.in0000644000175000017500000000724310760701126013502 00000000000000 /schemas/apps/agave/last_save_directory /apps/agave/last_save_directory agave string The last save directory When exporting a scheme or palette, this key keeps track of where the user last saved the file. /schemas/apps/agave/last_color /apps/agave/last_color agave string #60da11 The last color selected Saves the last selected color which is loaded next time the application is started. Color format is a hex string (e.g. '#ffffff'). /schemas/apps/agave/last_scheme_type /apps/agave/last_scheme_type agave string The last scheme type selected Saves the last scheme type selected which is loaded next time the application is started. This value is an enumeration value. /schemas/apps/agave/window_width /apps/agave/window_width agave int 650 The main application window width Saves the last width of the application window so that it starts where you left it last time. /schemas/apps/agave/window_height /apps/agave/window_height agave int 400 The main application window height Saves the last height of the application window so that it starts where you left it last time. /schemas/apps/agave/favorites_width /apps/agave/favorites_width agave int 130 Width of the favorites area Saves the size of the favorites pane so that it starts where you left it last time. /schemas/apps/agave/palette_expanded /apps/agave/palette_expanded agave bool true Palette Expanded Saves whether the palette area along the bottom of the application window is expanded or collapsed. agave-0.4.7/data/ui/0000777000175000017500000000000011224443301011132 500000000000000agave-0.4.7/data/ui/agave.ui0000644000175000017500000000344310760701126012502 00000000000000 agave-0.4.7/data/ui/Makefile.in0000644000175000017500000002546711224442712013136 00000000000000# Makefile.in generated by automake 1.10.2 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # 2003, 2004, 2005, 2006, 2007, 2008 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@ pkglibdir = $(libdir)/@PACKAGE@ pkgincludedir = $(includedir)/@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 = : subdir = data/ui DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \ $(top_srcdir)/configure.ac 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 = SOURCES = DIST_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 = `echo $$p | sed -e 's|^.*/||'`; am__installdirs = "$(DESTDIR)$(uidir)" uiDATA_INSTALL = $(INSTALL_DATA) DATA = $(ui_DATA) DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ AGAVE_CFLAGS = @AGAVE_CFLAGS@ AGAVE_ICONDIR = @AGAVE_ICONDIR@ AGAVE_LIBS = @AGAVE_LIBS@ AGAVE_LOCALEDIR = @AGAVE_LOCALEDIR@ AGAVE_PALETTEDIR = @AGAVE_PALETTEDIR@ AGAVE_UIDIR = @AGAVE_UIDIR@ ALL_LINGUAS = @ALL_LINGUAS@ AMTAR = @AMTAR@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ AWK = @AWK@ CAIRO_RING_CFLAGS = @CAIRO_RING_CFLAGS@ CAIRO_RING_LIBS = @CAIRO_RING_LIBS@ CATALOGS = @CATALOGS@ CATOBJEXT = @CATOBJEXT@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPPFLAGS = @CPPFLAGS@ CPPUNIT_CFLAGS = @CPPUNIT_CFLAGS@ CPPUNIT_CONFIG = @CPPUNIT_CONFIG@ CPPUNIT_LIBS = @CPPUNIT_LIBS@ CXX = @CXX@ CXXCPP = @CXXCPP@ CXXDEPMODE = @CXXDEPMODE@ CXXFLAGS = @CXXFLAGS@ CYGPATH_W = @CYGPATH_W@ DATADIRNAME = @DATADIRNAME@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ DISTCHECK_CONFIGURE_FLAGS = @DISTCHECK_CONFIGURE_FLAGS@ DOC_USER_FORMATS = @DOC_USER_FORMATS@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ GCONFMM_CFLAGS = @GCONFMM_CFLAGS@ GCONFMM_LIBS = @GCONFMM_LIBS@ GCONFTOOL = @GCONFTOOL@ GCONF_SCHEMA_CONFIG_SOURCE = @GCONF_SCHEMA_CONFIG_SOURCE@ GCONF_SCHEMA_FILE_DIR = @GCONF_SCHEMA_FILE_DIR@ GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ GIT_PATH = @GIT_PATH@ GMOFILES = @GMOFILES@ GMSGFMT = @GMSGFMT@ GNOME_CFLAGS = @GNOME_CFLAGS@ GNOME_LIBS = @GNOME_LIBS@ GREP = @GREP@ GTKMM_CFLAGS = @GTKMM_CFLAGS@ GTKMM_LIBS = @GTKMM_LIBS@ HELP_DIR = @HELP_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@ LDFLAGS = @LDFLAGS@ LIBGLADEMM_CFLAGS = @LIBGLADEMM_CFLAGS@ LIBGLADEMM_LIBS = @LIBGLADEMM_LIBS@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LN_S = @LN_S@ LTLIBOBJS = @LTLIBOBJS@ MAKEINFO = @MAKEINFO@ MKDIR_P = @MKDIR_P@ MKINSTALLDIRS = @MKINSTALLDIRS@ MSGFMT = @MSGFMT@ MSGFMT_OPTS = @MSGFMT_OPTS@ MSGMERGE = @MSGMERGE@ OBJEXT = @OBJEXT@ OMF_DIR = @OMF_DIR@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PACKAGE_WEBSITE = @PACKAGE_WEBSITE@ PATH_SEPARATOR = @PATH_SEPARATOR@ PKG_CONFIG = @PKG_CONFIG@ POFILES = @POFILES@ POSUB = @POSUB@ PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@ PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@ PRINTING_CFLAGS = @PRINTING_CFLAGS@ PRINTING_LIBS = @PRINTING_LIBS@ RANLIB = @RANLIB@ SED = @SED@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ SORT = @SORT@ STRIP = @STRIP@ TR = @TR@ UNIQ = @UNIQ@ USE_NLS = @USE_NLS@ VERSION = @VERSION@ XGETTEXT = @XGETTEXT@ 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_CXX = @ac_ct_CXX@ 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_alias = @build_alias@ builddir = @builddir@ datadir = @datadir@ datarootdir = @datarootdir@ docdir = @docdir@ dvidir = @dvidir@ exec_prefix = @exec_prefix@ host_alias = @host_alias@ htmldir = @htmldir@ includedir = @includedir@ infodir = @infodir@ install_sh = @install_sh@ libdir = @libdir@ libexecdir = @libexecdir@ localedir = @localedir@ localstatedir = @localstatedir@ 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@ uidir = ${AGAVE_UIDIR} ui_DATA = agave.ui bookmarkspopup.ui agave.glade EXTRA_DIST = ${ui_DATA} all: all-am .SUFFIXES: $(srcdir)/Makefile.in: $(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) --gnu data/ui/Makefile'; \ cd $(top_srcdir) && \ $(AUTOMAKE) --gnu data/ui/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: $(am__configure_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(ACLOCAL_M4): $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh install-uiDATA: $(ui_DATA) @$(NORMAL_INSTALL) test -z "$(uidir)" || $(MKDIR_P) "$(DESTDIR)$(uidir)" @list='$(ui_DATA)'; for p in $$list; do \ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ f=$(am__strip_dir) \ echo " $(uiDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(uidir)/$$f'"; \ $(uiDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(uidir)/$$f"; \ done uninstall-uiDATA: @$(NORMAL_UNINSTALL) @list='$(ui_DATA)'; for p in $$list; do \ f=$(am__strip_dir) \ echo " rm -f '$(DESTDIR)$(uidir)/$$f'"; \ rm -f "$(DESTDIR)$(uidir)/$$f"; \ done 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 $(srcdir)/$$file && test $$d != $(srcdir); then \ cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ fi; \ cp -pR $$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 $(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) 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 mostlyclean-am distclean: distclean-am -rm -f Makefile distclean-am: clean-am distclean-generic dvi: dvi-am dvi-am: html: html-am info: info-am info-am: install-data-am: install-uiDATA install-dvi: install-dvi-am 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 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 pdf: pdf-am pdf-am: ps: ps-am ps-am: uninstall-am: uninstall-uiDATA .MAKE: install-am install-strip .PHONY: all all-am check check-am clean clean-generic distclean \ distclean-generic 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-generic pdf pdf-am ps ps-am 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: agave-0.4.7/data/ui/agave.glade0000644000175000017500000002545010760701126013143 00000000000000 Agave GTK_WINDOW_TOPLEVEL GTK_WIN_POS_NONE False 650 400 True False agave True False False GDK_WINDOW_TYPE_HINT_NORMAL GDK_GRAVITY_NORTH_WEST True False True False 0 True False 0 0 False True True True True False 0 True False 0 0 True True 6 True False 6 True False True 0 False True True False True 0 True True 0 False True 6 True True 0 True expander False False GTK_JUSTIFY_LEFT False False 0.5 0.5 0 0 PANGO_ELLIPSIZE_NONE -1 False 0 label_item 0 False True False False True False 0 True GTK_POLICY_AUTOMATIC GTK_POLICY_AUTOMATIC GTK_SHADOW_NONE GTK_CORNER_TOP_LEFT 0 True True True False 0 True True 5 Rename Color GTK_WINDOW_TOPLEVEL GTK_WIN_POS_MOUSE False True False True False False GDK_WINDOW_TYPE_HINT_DIALOG GDK_GRAVITY_NORTH_WEST True False False True False 2 True GTK_BUTTONBOX_END True gtk-cancel True GTK_RELIEF_NORMAL True 0 True gtk-ok True GTK_RELIEF_NORMAL True 1 0 False True GTK_PACK_END 6 True False 6 True <b>Enter A New Name:</b> False True GTK_JUSTIFY_LEFT False False 0 0 0 0 PANGO_ELLIPSIZE_NONE -1 False 0 0 False False True True True 0 True ◠False 0 False False 0 True True agave-0.4.7/data/ui/Makefile.am0000644000175000017500000000014110663715205013111 00000000000000uidir = ${AGAVE_UIDIR} ui_DATA = agave.ui bookmarkspopup.ui agave.glade EXTRA_DIST = ${ui_DATA} agave-0.4.7/data/ui/bookmarkspopup.ui0000644000175000017500000000014510663715205014474 00000000000000 agave-0.4.7/acinclude.m40000644000175000017500000000705610663715205011734 00000000000000dnl usage SVN_REPOSITORY_REVISION() dnl dnl checks the current repository revision dnl and stores it in SVN_REVISION environment variable including dnl AC_SUBST'ing. dnl dnl Output: dnl SVN_REVISION dnl AC_DEFUN(SVN_REPOSITORY_REVISION,[ AC_MSG_CHECKING([repository revision]) SVN_REVISION="`svnversion -n .`" AC_SUBST(SVN_REVISION) AC_MSG_RESULT($SVN_REVISION) ]) dnl Determine the version of the git repository AC_DEFUN(GIT_REPOSITORY_REVISION,[ AC_PATH_PROG(GIT_PATH, [git], no) if test "$GIT_PATH" != "no" ; then AC_MSG_CHECKING([git revision]) GIT_REVISION="`$GIT_PATH describe`" AC_MSG_RESULT($GIT_REVISION) fi AC_DEFINE_UNQUOTED([GIT_REVISION], ["$GIT_REVISION"], [The revision of the current build]) ]) dnl dnl AM_PATH_CPPUNIT(MINIMUM-VERSION, [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]]) dnl AC_DEFUN([AM_PATH_CPPUNIT], [ AC_ARG_WITH(cppunit-prefix,[ --with-cppunit-prefix=PFX Prefix where CppUnit is installed (optional)], cppunit_config_prefix="$withval", cppunit_config_prefix="") AC_ARG_WITH(cppunit-exec-prefix,[ --with-cppunit-exec-prefix=PFX Exec prefix where CppUnit is installed (optional)], cppunit_config_exec_prefix="$withval", cppunit_config_exec_prefix="") if test x$cppunit_config_exec_prefix != x ; then cppunit_config_args="$cppunit_config_args --exec-prefix=$cppunit_config_exec_prefix" if test x${CPPUNIT_CONFIG+set} != xset ; then CPPUNIT_CONFIG=$cppunit_config_exec_prefix/bin/cppunit-config fi fi if test x$cppunit_config_prefix != x ; then cppunit_config_args="$cppunit_config_args --prefix=$cppunit_config_prefix" if test x${CPPUNIT_CONFIG+set} != xset ; then CPPUNIT_CONFIG=$cppunit_config_prefix/bin/cppunit-config fi fi AC_PATH_PROG(CPPUNIT_CONFIG, cppunit-config, no) cppunit_version_min=$1 AC_MSG_CHECKING(for Cppunit - version >= $cppunit_version_min) no_cppunit="" if test "$CPPUNIT_CONFIG" = "no" ; then no_cppunit=yes else CPPUNIT_CFLAGS=`$CPPUNIT_CONFIG --cflags` CPPUNIT_LIBS=`$CPPUNIT_CONFIG --libs` cppunit_version=`$CPPUNIT_CONFIG --version` cppunit_major_version=`echo $cppunit_version | \ sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\1/'` cppunit_minor_version=`echo $cppunit_version | \ sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\2/'` cppunit_micro_version=`echo $cppunit_version | \ sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\3/'` cppunit_major_min=`echo $cppunit_version_min | \ sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\1/'` cppunit_minor_min=`echo $cppunit_version_min | \ sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\2/'` cppunit_micro_min=`echo $cppunit_version_min | \ sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\3/'` cppunit_version_proper=`expr \ $cppunit_major_version \> $cppunit_major_min \| \ $cppunit_major_version \= $cppunit_major_min \& \ $cppunit_minor_version \> $cppunit_minor_min \| \ $cppunit_major_version \= $cppunit_major_min \& \ $cppunit_minor_version \= $cppunit_minor_min \& \ $cppunit_micro_version \>= $cppunit_micro_min ` if test "$cppunit_version_proper" = "1" ; then AC_MSG_RESULT([$cppunit_major_version.$cppunit_minor_version.$cppunit_micro_version]) else AC_MSG_RESULT(no) no_cppunit=yes fi fi if test "x$no_cppunit" = x ; then ifelse([$2], , :, [$2]) else CPPUNIT_CFLAGS="" CPPUNIT_LIBS="" ifelse([$3], , :, [$3]) fi AC_SUBST(CPPUNIT_CFLAGS) AC_SUBST(CPPUNIT_LIBS) ]) agave-0.4.7/config.h.in0000644000175000017500000000431011224442721011546 00000000000000/* config.h.in. Generated from configure.ac by autoheader. */ /* always defined to indicate that i18n is enabled */ #undef ENABLE_NLS /* The domain name to use with gettext */ #undef GETTEXT_PACKAGE /* The revision of the current build */ #undef GIT_REVISION /* 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 /* Compile with gconfmm support */ #undef HAVE_GCONFMM /* Define if the GNU gettext() function is already present or preinstalled. */ #undef HAVE_GETTEXT /* Compile with libgnome support */ #undef HAVE_GNOME /* using at least gtkmm version 2.10.0 */ #undef HAVE_GTK_PRINTING /* 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 /* 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 version of this package. */ #undef PACKAGE_VERSION /* The website of Agave */ #undef PACKAGE_WEBSITE /* Define to 1 if you have the ANSI C header files. */ #undef STDC_HEADERS /* Version number of package */ #undef VERSION agave-0.4.7/Makefile.am0000644000175000017500000000730611224443017011566 00000000000000SUBDIRS = src pixmaps po data tests help EXTRA_DIST = intltool-extract.in \ intltool-merge.in \ intltool-update.in \ gnome-doc-utils.make DISTCLEANFILES = intltool-extract \ intltool-merge \ intltool-update \ gnome-doc-utils.make DISTCHECK_CONFIGURE_FLAGS = --disable-scrollkeeper AUTOMAKE_OPTIONS = gnu dist-bzip2 doc: ./missing --run doxygen Doxyfile LOCAL_RELEASE_BASE = ~/Projects/gcs-releases LOCAL_RELEASE_DIR = $(LOCAL_RELEASE_BASE)/releases RELEASE_UPLOAD_HOST = download.gna.org RELEASE_UPLOAD_BASE = /upload/colorscheme RELEASE_URL_BASE = http://download.gna.org/colorscheme/releases RELEASE_ANNOUNCE_LIST = colorscheme-devel@googlegroups.com (cc gnome-announce-list@gnome.org) #RELEASE_UPLOAD_DIR = $(RELEASE_UPLOAD_BASE)/releases tar_gz_file = $(PACKAGE)-$(VERSION).tar.gz tar_bz2_file = $(PACKAGE)-$(VERSION).tar.bz2 sig_gz_file = $(tar_gz_file).sig sig_bz2_file = $(tar_bz2_file).sig $(sig_gz_file): $(tar_gz_file) gpg --output $@ --detach $^ $(sig_bz2_file): $(tar_bz2_file) gpg --output $@ --detach $^ # This doesn't do what I want it to do... It seems you'd need to execute # git-update-index before this gave me anything useful, but I'm not sure I # want to do that automatically verify-files-checked-in: @test ! git-status || (echo "*** Some files are not checked in." \ && echo "*** Run 'git status' for more information." \ && false) tag-release: distcheck @echo "TAGGING RELEASE..." git tag -s -m "$(PACKAGE_NAME) release $(VERSION)" $(VERSION) copy-to-local-release-dir: tag-release $(sig_gz_file) $(sig_bz2_file) @echo "COPYING TO RELEASE DIR..." mkdir -p $(LOCAL_RELEASE_DIR) cp $(tar_gz_file) $(LOCAL_RELEASE_DIR) cp $(tar_bz2_file) $(LOCAL_RELEASE_DIR) cp $(sig_gz_file) $(LOCAL_RELEASE_DIR) cp $(sig_bz2_file) $(LOCAL_RELEASE_DIR) sync-releases: copy-to-local-release-dir @echo "UPLOADING RELEASE..." -rsync --delete -aLv --rsh="ssh" $(LOCAL_RELEASE_BASE)/ $(RELEASE_UPLOAD_HOST):$(RELEASE_UPLOAD_BASE) release-publish: sync-releases @echo "" @echo "Please send an announcement to $(RELEASE_ANNOUNCE_LIST)" @echo "including the following:" @echo "" @echo "Subject: $(PACKAGE_NAME) release $(VERSION) now available" @echo "" @echo "============================== CUT HERE ==============================" @echo "A new $(PACKAGE_NAME) release $(VERSION) is now available." @echo "" @echo "What is it?" @echo "===========" @echo "$(PACKAGE_NAME) is a very simple application for the GNOME desktop that " @echo "allows you to generate a variety of colorschemes from a single starting color." @echo "" @echo "It is aimed primarily toward web designers for creating pleasing color" @echo "combinations for websites." @echo "" @echo "More information can be found at $(PACKAGE_WEBSITE)" @echo "" @echo "Where to get it?" @echo "================" @echo "This release is available as a source package in tar.gz or tar.bz2 format" @echo "and can be downloaded from:" @echo "" @echo "$(RELEASE_URL_BASE)/$(tar_gz_file)" @echo " which can be verified with:" @echo "$(RELEASE_URL_BASE)/$(sig_gz_file)" @echo "" @echo " or:" @echo "" @echo "$(RELEASE_URL_BASE)/$(tar_bz2_file)" @echo " which can be verified with:" @echo "$(RELEASE_URL_BASE)/$(sig_bz2_file)" @echo "" @echo "What's Changed?" @echo "===============" @echo "" @echo "============================== CUT HERE ==============================" @echo "Also, please include the new entries from the NEWS file." @echo "" @echo "Make sure to update the Website with the new version." @echo "" @echo "Last but not least, do not forget to bump up the micro" @echo "version component to the next (odd) number and commit." .PHONY: doc copy-to-local-release-dir sync-releases release-publish tag-release agave-0.4.7/depcomp0000755000175000017500000004271311224420542011106 00000000000000#! /bin/sh # depcomp - compile a program generating dependencies as side-effects scriptversion=2007-03-29.01 # Copyright (C) 1999, 2000, 2003, 2004, 2005, 2006, 2007 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, 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 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 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 $1 != '--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 $1 != '--mode=compile'; do shift done shift fi # X makedepend shift cleared=no for arg in "$@"; do case $cleared in no) set ""; shift cleared=yes ;; esac 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. -*|$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 $1 != '--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, regardless of -o, # because we must use -o when running libtool. "$@" || exit $? IFS=" " for arg do case "$arg" in "-Gm"|"/Gm"|"-Gi"|"/Gi"|"-ZI"|"/ZI") set fnord "$@" shift shift ;; *) set fnord "$@" "$arg" shift shift ;; esac done "$@" -E | sed -n '/^#line [0-9][0-9]* "\([^"]*\)"/ s::echo "`cygpath -u \\"\1\\"`":p' | sort | uniq > "$tmpdepfile" rm -f "$depfile" echo "$object : \\" > "$depfile" . "$tmpdepfile" | sed 's% %\\ %g' | sed -n '/^\(.*\)$/ s:: \1 \\:p' >> "$depfile" echo " " >> "$depfile" . "$tmpdepfile" | sed 's% %\\ %g' | sed -n '/^\(.*\)$/ s::\1\::p' >> "$depfile" rm -f "$tmpdepfile" ;; 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-end: "$" # End: agave-0.4.7/AUTHORS0000644000175000017500000000005610455603151010577 00000000000000Jonathon Jongsma agave-0.4.7/intltool-update.in0000644000175000017500000007442611224420535013215 00000000000000#!@INTLTOOL_PERL@ -w # -*- Mode: perl; indent-tabs-mode: nil; c-basic-offset: 4 -*- # # The Intltool Message Updater # # Copyright (C) 2000-2003 Free Software Foundation. # # Intltool is free software; you can redistribute it and/or # modify it under the terms of the GNU General Public License # version 2 published by the Free Software Foundation. # # Intltool 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., 675 Mass Ave, Cambridge, MA 02139, 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. # # Authors: Kenneth Christiansen # Maciej Stachowiak # Darin Adler ## Release information my $PROGRAM = "intltool-update"; my $VERSION = "0.37.1"; my $PACKAGE = "intltool"; ## Loaded modules use strict; use Getopt::Long; use Cwd; use File::Copy; use File::Find; ## Scalars used by the option stuff my $HELP_ARG = 0; my $VERSION_ARG = 0; my $DIST_ARG = 0; my $POT_ARG = 0; my $HEADERS_ARG = 0; my $MAINTAIN_ARG = 0; my $REPORT_ARG = 0; my $VERBOSE = 0; my $GETTEXT_PACKAGE = ""; my $OUTPUT_FILE = ""; my @languages; my %varhash = (); my %po_files_by_lang = (); # Regular expressions to categorize file types. # FIXME: Please check if the following is correct my $xml_support = "xml(?:\\.in)*|". # http://www.w3.org/XML/ (Note: .in is not required) "ui|". # Bonobo specific - User Interface desc. files "lang|". # ? "glade2?(?:\\.in)*|". # Glade specific - User Interface desc. files (Note: .in is not required) "scm(?:\\.in)*|". # ? (Note: .in is not required) "oaf(?:\\.in)+|". # DEPRECATED: Replaces by Bonobo .server files "etspec|". # ? "server(?:\\.in)+|". # Bonobo specific "sheet(?:\\.in)+|". # ? "schemas(?:\\.in)+|". # GConf specific "pong(?:\\.in)+|". # DEPRECATED: PONG is not used [by GNOME] any longer. "kbd(?:\\.in)+|". # GOK specific. "policy(?:\\.in)+"; # PolicyKit files my $ini_support = "icon(?:\\.in)+|". # http://www.freedesktop.org/Standards/icon-theme-spec "desktop(?:\\.in)+|". # http://www.freedesktop.org/Standards/menu-spec "caves(?:\\.in)+|". # GNOME Games specific "directory(?:\\.in)+|". # http://www.freedesktop.org/Standards/menu-spec "soundlist(?:\\.in)+|". # GNOME specific "keys(?:\\.in)+|". # GNOME Mime database specific "theme(?:\\.in)+|". # http://www.freedesktop.org/Standards/icon-theme-spec "service(?:\\.in)+"; # DBus specific my $buildin_gettext_support = "c|y|cs|cc|cpp|c\\+\\+|h|hh|gob|py"; ## Always flush buffer when printing $| = 1; ## Sometimes the source tree will be rooted somewhere else. my $SRCDIR = $ENV{"srcdir"} || "."; my $POTFILES_in; $POTFILES_in = "<$SRCDIR/POTFILES.in"; my $devnull = ($^O eq 'MSWin32' ? 'NUL:' : '/dev/null'); ## Handle options GetOptions ( "help" => \$HELP_ARG, "version" => \$VERSION_ARG, "dist|d" => \$DIST_ARG, "pot|p" => \$POT_ARG, "headers|s" => \$HEADERS_ARG, "maintain|m" => \$MAINTAIN_ARG, "report|r" => \$REPORT_ARG, "verbose|x" => \$VERBOSE, "gettext-package|g=s" => \$GETTEXT_PACKAGE, "output-file|o=s" => \$OUTPUT_FILE, ) or &Console_WriteError_InvalidOption; &Console_Write_IntltoolHelp if $HELP_ARG; &Console_Write_IntltoolVersion if $VERSION_ARG; my $arg_count = ($DIST_ARG > 0) + ($POT_ARG > 0) + ($HEADERS_ARG > 0) + ($MAINTAIN_ARG > 0) + ($REPORT_ARG > 0); &Console_Write_IntltoolHelp if $arg_count > 1; my $PKGNAME = FindPackageName (); # --version and --help don't require a module name my $MODULE = $GETTEXT_PACKAGE || $PKGNAME || "unknown"; if ($POT_ARG) { &GenerateHeaders; &GeneratePOTemplate; } elsif ($HEADERS_ARG) { &GenerateHeaders; } elsif ($MAINTAIN_ARG) { &FindLeftoutFiles; } elsif ($REPORT_ARG) { &GenerateHeaders; &GeneratePOTemplate; &Console_Write_CoverageReport; } elsif ((defined $ARGV[0]) && $ARGV[0] =~ /^[a-z]/) { my $lang = $ARGV[0]; ## Report error if the language file supplied ## to the command line is non-existent &Console_WriteError_NotExisting("$SRCDIR/$lang.po") if ! -s "$SRCDIR/$lang.po"; if (!$DIST_ARG) { print "Working, please wait..." if $VERBOSE; &GenerateHeaders; &GeneratePOTemplate; } &POFile_Update ($lang, $OUTPUT_FILE); &Console_Write_TranslationStatus ($lang, $OUTPUT_FILE); } else { &Console_Write_IntltoolHelp; } exit; ######### sub Console_Write_IntltoolVersion { print <<_EOF_; ${PROGRAM} (${PACKAGE}) $VERSION Written by Kenneth Christiansen, Maciej Stachowiak, and Darin Adler. Copyright (C) 2000-2003 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. _EOF_ exit; } sub Console_Write_IntltoolHelp { print <<_EOF_; Usage: ${PROGRAM} [OPTION]... LANGCODE Updates PO template files and merge them with the translations. Mode of operation (only one is allowed): -p, --pot generate the PO template only -s, --headers generate the header files in POTFILES.in -m, --maintain search for left out files from POTFILES.in -r, --report display a status report for the module -d, --dist merge LANGCODE.po with existing PO template Extra options: -g, --gettext-package=NAME override PO template name, useful with --pot -o, --output-file=FILE write merged translation to FILE -x, --verbose display lots of feedback --help display this help and exit --version output version information and exit Examples of use: ${PROGRAM} --pot just create a new PO template ${PROGRAM} xy create new PO template and merge xy.po with it Report bugs to http://bugzilla.gnome.org/ (product name "$PACKAGE") or send email to . _EOF_ exit; } sub echo_n { my $str = shift; my $ret = `echo "$str"`; $ret =~ s/\n$//; # do we need the "s" flag? return $ret; } sub POFile_DetermineType ($) { my $type = $_; my $gettext_type; my $xml_regex = "(?:" . $xml_support . ")"; my $ini_regex = "(?:" . $ini_support . ")"; my $buildin_regex = "(?:" . $buildin_gettext_support . ")"; if ($type =~ /\[type: gettext\/([^\]].*)]/) { $gettext_type=$1; } elsif ($type =~ /schemas(\.in)+$/) { $gettext_type="schemas"; } elsif ($type =~ /glade2?(\.in)*$/) { $gettext_type="glade"; } elsif ($type =~ /scm(\.in)*$/) { $gettext_type="scheme"; } elsif ($type =~ /keys(\.in)+$/) { $gettext_type="keys"; } # bucket types elsif ($type =~ /$xml_regex$/) { $gettext_type="xml"; } elsif ($type =~ /$ini_regex$/) { $gettext_type="ini"; } elsif ($type =~ /$buildin_regex$/) { $gettext_type="buildin"; } else { $gettext_type="unknown"; } return "gettext\/$gettext_type"; } sub TextFile_DetermineEncoding ($) { my $gettext_code="ASCII"; # All files are ASCII by default my $filetype=`file $_ | cut -d ' ' -f 2`; if ($? eq "0") { if ($filetype =~ /^(ISO|UTF)/) { chomp ($gettext_code = $filetype); } elsif ($filetype =~ /^XML/) { $gettext_code="UTF-8"; # We asume that .glade and other .xml files are UTF-8 } } return $gettext_code; } sub isNotValidMissing { my ($file) = @_; return if $file =~ /^\{arch\}\/.*$/; return if $file =~ /^$varhash{"PACKAGE"}-$varhash{"VERSION"}\/.*$/; } sub FindLeftoutFiles { my (@buf_i18n_plain, @buf_i18n_xml, @buf_i18n_xml_unmarked, @buf_i18n_ini, @buf_potfiles, @buf_potfiles_ignore, @buf_allfiles, @buf_allfiles_sorted, @buf_potfiles_sorted, @buf_potfiles_ignore_sorted ); ## Search and find all translatable files find sub { push @buf_i18n_plain, "$File::Find::name" if /\.($buildin_gettext_support)$/; push @buf_i18n_xml, "$File::Find::name" if /\.($xml_support)$/; push @buf_i18n_ini, "$File::Find::name" if /\.($ini_support)$/; push @buf_i18n_xml_unmarked, "$File::Find::name" if /\.(schemas(\.in)+)$/; }, ".."; find sub { push @buf_i18n_plain, "$File::Find::name" if /\.($buildin_gettext_support)$/; push @buf_i18n_xml, "$File::Find::name" if /\.($xml_support)$/; push @buf_i18n_ini, "$File::Find::name" if /\.($ini_support)$/; push @buf_i18n_xml_unmarked, "$File::Find::name" if /\.(schemas(\.in)+)$/; }, "$SRCDIR/.." if "$SRCDIR" ne "."; open POTFILES, $POTFILES_in or die "$PROGRAM: there's no POTFILES.in!\n"; @buf_potfiles = grep !/^(#|\s*$)/, ; close POTFILES; foreach (@buf_potfiles) { s/^\[.*]\s*//; } print "Searching for missing translatable files...\n" if $VERBOSE; ## Check if we should ignore some found files, when ## comparing with POTFILES.in foreach my $ignore ("POTFILES.skip", "POTFILES.ignore") { (-s "$SRCDIR/$ignore") or next; if ("$ignore" eq "POTFILES.ignore") { print "The usage of POTFILES.ignore is deprecated. Please consider moving the\n". "content of this file to POTFILES.skip.\n"; } print "Found $ignore: Ignoring files...\n" if $VERBOSE; open FILE, "<$SRCDIR/$ignore" or die "ERROR: Failed to open $SRCDIR/$ignore!\n"; while () { push @buf_potfiles_ignore, $_ unless /^(#|\s*$)/; } close FILE; @buf_potfiles_ignore_sorted = sort (@buf_potfiles_ignore); } foreach my $file (@buf_i18n_plain) { my $in_comment = 0; my $in_macro = 0; open FILE, "<$file"; while () { # Handle continued multi-line comment. if ($in_comment) { next unless s-.*\*/--; $in_comment = 0; } # Handle continued macro. if ($in_macro) { $in_macro = 0 unless /\\$/; next; } # Handle start of macro (or any preprocessor directive). if (/^\s*\#/) { $in_macro = 1 if /^([^\\]|\\.)*\\$/; next; } # Handle comments and quoted text. while (m-(/\*|//|\'|\")-) # \' and \" keep emacs perl mode happy { my $match = $1; if ($match eq "/*") { if (!s-/\*.*?\*/--) { s-/\*.*--; $in_comment = 1; } } elsif ($match eq "//") { s-//.*--; } else # ' or " { if (!s-$match([^\\]|\\.)*?$match-QUOTEDTEXT-) { warn "mismatched quotes at line $. in $file\n"; s-$match.*--; } } } if (/\w\.GetString *\(QUOTEDTEXT/) { if (defined isNotValidMissing (unpack("x3 A*", $file))) { ## Remove the first 3 chars and add newline push @buf_allfiles, unpack("x3 A*", $file) . "\n"; } last; } ## C_ N_ Q_ and _ are the macros defined in gi8n.h if (/[CNQ]?_ *\(QUOTEDTEXT/) { if (defined isNotValidMissing (unpack("x3 A*", $file))) { ## Remove the first 3 chars and add newline push @buf_allfiles, unpack("x3 A*", $file) . "\n"; } last; } } close FILE; } foreach my $file (@buf_i18n_xml) { open FILE, "<$file"; while () { # FIXME: share the pattern matching code with intltool-extract if (/\s_[-A-Za-z0-9._:]+\s*=\s*\"([^"]+)\"/ || /<_[^>]+>/ || /translatable=\"yes\"/) { if (defined isNotValidMissing (unpack("x3 A*", $file))) { push @buf_allfiles, unpack("x3 A*", $file) . "\n"; } last; } } close FILE; } foreach my $file (@buf_i18n_ini) { open FILE, "<$file"; while () { if (/_(.*)=/) { if (defined isNotValidMissing (unpack("x3 A*", $file))) { push @buf_allfiles, unpack("x3 A*", $file) . "\n"; } last; } } close FILE; } foreach my $file (@buf_i18n_xml_unmarked) { if (defined isNotValidMissing (unpack("x3 A*", $file))) { push @buf_allfiles, unpack("x3 A*", $file) . "\n"; } } @buf_allfiles_sorted = sort (@buf_allfiles); @buf_potfiles_sorted = sort (@buf_potfiles); my %in2; foreach (@buf_potfiles_sorted) { s#^$SRCDIR/../##; s#^$SRCDIR/##; $in2{$_} = 1; } foreach (@buf_potfiles_ignore_sorted) { s#^$SRCDIR/../##; s#^$SRCDIR/##; $in2{$_} = 1; } my @result; foreach (@buf_allfiles_sorted) { my $dummy = $_; my $srcdir = $SRCDIR; $srcdir =~ s#^../##; $dummy =~ s#^$srcdir/../##; $dummy =~ s#^$srcdir/##; $dummy =~ s#_build/##; if (!exists($in2{$dummy})) { push @result, $dummy } } my @buf_potfiles_notexist; foreach (@buf_potfiles_sorted) { chomp (my $dummy = $_); if ("$dummy" ne "" and !(-f "$SRCDIR/../$dummy" or -f "../$dummy")) { push @buf_potfiles_notexist, $_; } } ## Save file with information about the files missing ## if any, and give information about this procedure. if (@result + @buf_potfiles_notexist > 0) { if (@result) { print "\n" if $VERBOSE; unlink "missing"; open OUT, ">missing"; print OUT @result; close OUT; warn "\e[1mThe following files contain translations and are currently not in use. Please\e[0m\n". "\e[1mconsider adding these to the POTFILES.in file, located in the po/ directory.\e[0m\n\n"; print STDERR @result, "\n"; warn "If some of these files are left out on purpose then please add them to\n". "POTFILES.skip instead of POTFILES.in. A file \e[1m'missing'\e[0m containing this list\n". "of left out files has been written in the current directory.\n"; } if (@buf_potfiles_notexist) { unlink "notexist"; open OUT, ">notexist"; print OUT @buf_potfiles_notexist; close OUT; warn "\n" if ($VERBOSE or @result); warn "\e[1mThe following files do not exist anymore:\e[0m\n\n"; warn @buf_potfiles_notexist, "\n"; warn "Please remove them from POTFILES.in. A file \e[1m'notexist'\e[0m\n". "containing this list of absent files has been written in the current directory.\n"; } } ## If there is nothing to complain about, notify the user else { print "\nAll files containing translations are present in POTFILES.in.\n" if $VERBOSE; } } sub Console_WriteError_InvalidOption { ## Handle invalid arguments print STDERR "Try `${PROGRAM} --help' for more information.\n"; exit 1; } sub isProgramInPath { my ($file) = @_; # If either a file exists, or when run it returns 0 exit status return 1 if ((-x $file) or (system("$file --version >$devnull") == 0)); return 0; } sub isGNUGettextTool { my ($file) = @_; # Check that we are using GNU gettext tools if (isProgramInPath ($file)) { my $version = `$file --version`; return 1 if ($version =~ m/.*\(GNU .*\).*/); } return 0; } sub GenerateHeaders { my $EXTRACT = $ENV{"INTLTOOL_EXTRACT"} || "intltool-extract"; ## Generate the .h header files, so we can allow glade and ## xml translation support if (! isProgramInPath ("$EXTRACT")) { print STDERR "\n *** The intltool-extract script wasn't found!" ."\n *** Without it, intltool-update can not generate files.\n"; exit; } else { open (FILE, $POTFILES_in) or die "$PROGRAM: POTFILES.in not found.\n"; while () { chomp; next if /^\[\s*encoding/; ## Find xml files in POTFILES.in and generate the ## files with help from the extract script my $gettext_type= &POFile_DetermineType ($1); if (/\.($xml_support|$ini_support)$/ || /^\[/) { s/^\[[^\[].*]\s*//; my $filename = "../$_"; if ($VERBOSE) { system ($EXTRACT, "--update", "--srcdir=$SRCDIR", "--type=$gettext_type", $filename); } else { system ($EXTRACT, "--update", "--type=$gettext_type", "--srcdir=$SRCDIR", "--quiet", $filename); } } } close FILE; } } # # Generate .pot file from POTFILES.in # sub GeneratePOTemplate { my $XGETTEXT = $ENV{"XGETTEXT"} || "xgettext"; my $XGETTEXT_ARGS = $ENV{"XGETTEXT_ARGS"} || ''; chomp $XGETTEXT; if (! isGNUGettextTool ("$XGETTEXT")) { print STDERR " *** GNU xgettext is not found on this system!\n". " *** Without it, intltool-update can not extract strings.\n"; exit; } print "Building $MODULE.pot...\n" if $VERBOSE; open INFILE, $POTFILES_in; unlink "POTFILES.in.temp"; open OUTFILE, ">POTFILES.in.temp" or die("Cannot open POTFILES.in.temp for writing"); my $gettext_support_nonascii = 0; # checks for GNU gettext >= 0.12 my $dummy = `$XGETTEXT --version --from-code=UTF-8 >$devnull 2>$devnull`; if ($? == 0) { $gettext_support_nonascii = 1; } else { # urge everybody to upgrade gettext print STDERR "WARNING: This version of gettext does not support extracting non-ASCII\n". " strings. That means you should install a version of gettext\n". " that supports non-ASCII strings (such as GNU gettext >= 0.12),\n". " or have to let non-ASCII strings untranslated. (If there is any)\n"; } my $encoding = "ASCII"; my $forced_gettext_code; my @temp_headers; my $encoding_problem_is_reported = 0; while () { next if (/^#/ or /^\s*$/); chomp; my $gettext_code; if (/^\[\s*encoding:\s*(.*)\s*\]/) { $forced_gettext_code=$1; } elsif (/\.($xml_support|$ini_support)$/ || /^\[/) { s/^\[.*]\s*//; print OUTFILE "../$_.h\n"; push @temp_headers, "../$_.h"; $gettext_code = &TextFile_DetermineEncoding ("../$_.h") if ($gettext_support_nonascii and not defined $forced_gettext_code); } else { print OUTFILE "$SRCDIR/../$_\n"; $gettext_code = &TextFile_DetermineEncoding ("$SRCDIR/../$_") if ($gettext_support_nonascii and not defined $forced_gettext_code); } next if (! $gettext_support_nonascii); if (defined $forced_gettext_code) { $encoding=$forced_gettext_code; } elsif (defined $gettext_code and "$encoding" ne "$gettext_code") { if ($encoding eq "ASCII") { $encoding=$gettext_code; } elsif ($gettext_code ne "ASCII") { # Only report once because the message is quite long if (! $encoding_problem_is_reported) { print STDERR "WARNING: You should use the same file encoding for all your project files,\n". " but $PROGRAM thinks that most of the source files are in\n". " $encoding encoding, while \"$_\" is (likely) in\n". " $gettext_code encoding. If you are sure that all translatable strings\n". " are in same encoding (say UTF-8), please \e[1m*prepend*\e[0m the following\n". " line to POTFILES.in:\n\n". " [encoding: UTF-8]\n\n". " and make sure that configure.in/ac checks for $PACKAGE >= 0.27 .\n". "(such warning message will only be reported once.)\n"; $encoding_problem_is_reported = 1; } } } } close OUTFILE; close INFILE; unlink "$MODULE.pot"; my @xgettext_argument=("$XGETTEXT", "--add-comments", "--directory\=.", "--default-domain\=$MODULE", "--flag\=g_strdup_printf:1:c-format", "--flag\=g_string_printf:2:c-format", "--flag\=g_string_append_printf:2:c-format", "--flag\=g_error_new:3:c-format", "--flag\=g_set_error:4:c-format", "--flag\=g_markup_printf_escaped:1:c-format", "--flag\=g_log:3:c-format", "--flag\=g_print:1:c-format", "--flag\=g_printerr:1:c-format", "--flag\=g_printf:1:c-format", "--flag\=g_fprintf:2:c-format", "--flag\=g_sprintf:2:c-format", "--flag\=g_snprintf:3:c-format", "--flag\=g_scanner_error:2:c-format", "--flag\=g_scanner_warn:2:c-format", "--output\=$MODULE\.pot", "--files-from\=\.\/POTFILES\.in\.temp"); my $XGETTEXT_KEYWORDS = &FindPOTKeywords; push @xgettext_argument, $XGETTEXT_KEYWORDS; my $MSGID_BUGS_ADDRESS = &FindMakevarsBugAddress; push @xgettext_argument, "--msgid-bugs-address\=\"$MSGID_BUGS_ADDRESS\"" if $MSGID_BUGS_ADDRESS; push @xgettext_argument, "--from-code\=$encoding" if ($gettext_support_nonascii); push @xgettext_argument, $XGETTEXT_ARGS if $XGETTEXT_ARGS; my $xgettext_command = join ' ', @xgettext_argument; # intercept xgettext error message print "Running $xgettext_command\n" if $VERBOSE; my $xgettext_error_msg = `$xgettext_command 2>\&1`; my $command_failed = $?; unlink "POTFILES.in.temp"; print "Removing generated header (.h) files..." if $VERBOSE; unlink foreach (@temp_headers); print "done.\n" if $VERBOSE; if (! $command_failed) { if (! -e "$MODULE.pot") { print "None of the files in POTFILES.in contain strings marked for translation.\n" if $VERBOSE; } else { print "Wrote $MODULE.pot\n" if $VERBOSE; } } else { if ($xgettext_error_msg =~ /--from-code/) { # replace non-ASCII error message with a more useful one. print STDERR "ERROR: xgettext failed to generate PO template file because there is non-ASCII\n". " string marked for translation. Please make sure that all strings marked\n". " for translation are in uniform encoding (say UTF-8), then \e[1m*prepend*\e[0m the\n". " following line to POTFILES.in and rerun $PROGRAM:\n\n". " [encoding: UTF-8]\n\n"; } else { print STDERR "$xgettext_error_msg"; if (-e "$MODULE.pot") { # is this possible? print STDERR "ERROR: xgettext failed but still managed to generate PO template file.\n". " Please consult error message above if there is any.\n"; } else { print STDERR "ERROR: xgettext failed to generate PO template file. Please consult\n". " error message above if there is any.\n"; } } exit (1); } } sub POFile_Update { -f "$MODULE.pot" or die "$PROGRAM: $MODULE.pot does not exist.\n"; my $MSGMERGE = $ENV{"MSGMERGE"} || "msgmerge"; my ($lang, $outfile) = @_; if (! isGNUGettextTool ("$MSGMERGE")) { print STDERR " *** GNU msgmerge is not found on this system!\n". " *** Without it, intltool-update can not extract strings.\n"; exit; } print "Merging $SRCDIR/$lang.po with $MODULE.pot..." if $VERBOSE; my $infile = "$SRCDIR/$lang.po"; $outfile = "$SRCDIR/$lang.po" if ($outfile eq ""); # I think msgmerge won't overwrite old file if merge is not successful system ("$MSGMERGE", "-o", $outfile, $infile, "$MODULE.pot"); } sub Console_WriteError_NotExisting { my ($file) = @_; ## Report error if supplied language file is non-existing print STDERR "$PROGRAM: $file does not exist!\n"; print STDERR "Try '$PROGRAM --help' for more information.\n"; exit; } sub GatherPOFiles { my @po_files = glob ("./*.po"); @languages = map (&POFile_GetLanguage, @po_files); foreach my $lang (@languages) { $po_files_by_lang{$lang} = shift (@po_files); } } sub POFile_GetLanguage ($) { s/^(.*\/)?(.+)\.po$/$2/; return $_; } sub Console_Write_TranslationStatus { my ($lang, $output_file) = @_; my $MSGFMT = $ENV{"MSGFMT"} || "msgfmt"; if (! isGNUGettextTool ("$MSGFMT")) { print STDERR " *** GNU msgfmt is not found on this system!\n". " *** Without it, intltool-update can not extract strings.\n"; exit; } $output_file = "$SRCDIR/$lang.po" if ($output_file eq ""); system ("$MSGFMT", "-o", "$devnull", "--verbose", $output_file); } sub Console_Write_CoverageReport { my $MSGFMT = $ENV{"MSGFMT"} || "msgfmt"; if (! isGNUGettextTool ("$MSGFMT")) { print STDERR " *** GNU msgfmt is not found on this system!\n". " *** Without it, intltool-update can not extract strings.\n"; exit; } &GatherPOFiles; foreach my $lang (@languages) { print STDERR "$lang: "; &POFile_Update ($lang, ""); } print STDERR "\n\n * Current translation support in $MODULE \n\n"; foreach my $lang (@languages) { print STDERR "$lang: "; system ("$MSGFMT", "-o", "$devnull", "--verbose", "$SRCDIR/$lang.po"); } } sub SubstituteVariable { my ($str) = @_; # always need to rewind file whenever it has been accessed seek (CONF, 0, 0); # cache each variable. varhash is global to we can add # variables elsewhere. while () { if (/^(\w+)=(.*)$/) { ($varhash{$1} = $2) =~ s/^["'](.*)["']$/$1/; } } if ($str =~ /^(.*)\${?([A-Z_]+)}?(.*)$/) { my $rest = $3; my $untouched = $1; my $sub = ""; # Ignore recursive definitions of variables $sub = $varhash{$2} if defined $varhash{$2} and $varhash{$2} !~ /\${?$2}?/; return SubstituteVariable ("$untouched$sub$rest"); } # We're using Perl backticks ` and "echo -n" here in order to # expand any shell escapes (such as backticks themselves) in every variable return echo_n ($str); } sub CONF_Handle_Open { my $base_dirname = getcwd(); $base_dirname =~ s@.*/@@; my ($conf_in, $src_dir); if ($base_dirname =~ /^po(-.+)?$/) { if (-f "Makevars") { my $makefile_source; local (*IN); open (IN, ") { if (/^top_builddir[ \t]*=/) { $src_dir = $_; $src_dir =~ s/^top_builddir[ \t]*=[ \t]*([^ \t\n\r]*)/$1/; chomp $src_dir; if (-f "$src_dir" . "/configure.ac") { $conf_in = "$src_dir" . "/configure.ac" . "\n"; } else { $conf_in = "$src_dir" . "/configure.in" . "\n"; } last; } } close IN; $conf_in || die "Cannot find top_builddir in Makevars."; } elsif (-f "$SRCDIR/../configure.ac") { $conf_in = "$SRCDIR/../configure.ac"; } elsif (-f "$SRCDIR/../configure.in") { $conf_in = "$SRCDIR/../configure.in"; } else { my $makefile_source; local (*IN); open (IN, ") { if (/^top_srcdir[ \t]*=/) { $src_dir = $_; $src_dir =~ s/^top_srcdir[ \t]*=[ \t]*([^ \t\n\r]*)/$1/; chomp $src_dir; $conf_in = "$src_dir" . "/configure.in" . "\n"; last; } } close IN; $conf_in || die "Cannot find top_srcdir in Makefile."; } open (CONF, "<$conf_in"); } else { print STDERR "$PROGRAM: Unable to proceed.\n" . "Make sure to run this script inside the po directory.\n"; exit; } } sub FindPackageName { my $version; my $domain = &FindMakevarsDomain; my $name = $domain || "untitled"; &CONF_Handle_Open; my $conf_source; { local (*IN); open (IN, "<&CONF") || return $name; seek (IN, 0, 0); local $/; # slurp mode $conf_source = ; close IN; } # priority for getting package name: # 1. GETTEXT_PACKAGE # 2. first argument of AC_INIT (with >= 2 arguments) # 3. first argument of AM_INIT_AUTOMAKE (with >= 2 argument) # /^AM_INIT_AUTOMAKE\([\s\[]*([^,\)\s\]]+)/m # the \s makes this not work, why? if ($conf_source =~ /^AM_INIT_AUTOMAKE\(([^,\)]+),([^,\)]+)/m) { ($name, $version) = ($1, $2); $name =~ s/[\[\]\s]//g; $version =~ s/[\[\]\s]//g; $varhash{"PACKAGE_NAME"} = $name if (not $name =~ /\${?AC_PACKAGE_NAME}?/); $varhash{"PACKAGE"} = $name if (not $name =~ /\${?PACKAGE}?/); $varhash{"PACKAGE_VERSION"} = $version if (not $name =~ /\${?AC_PACKAGE_VERSION}?/); $varhash{"VERSION"} = $version if (not $name =~ /\${?VERSION}?/); } if ($conf_source =~ /^AC_INIT\(([^,\)]+),([^,\)]+)/m) { ($name, $version) = ($1, $2); $name =~ s/[\[\]\s]//g; $version =~ s/[\[\]\s]//g; $varhash{"PACKAGE_NAME"} = $name if (not $name =~ /\${?AC_PACKAGE_NAME}?/); $varhash{"PACKAGE"} = $name if (not $name =~ /\${?PACKAGE}?/); $varhash{"PACKAGE_VERSION"} = $version if (not $name =~ /\${?AC_PACKAGE_VERSION}?/); $varhash{"VERSION"} = $version if (not $name =~ /\${?VERSION}?/); } # \s makes this not work, why? $name = $1 if $conf_source =~ /^GETTEXT_PACKAGE=\[?([^\n\]]+)/m; # m4 macros AC_PACKAGE_NAME, AC_PACKAGE_VERSION etc. have same value # as corresponding $PACKAGE_NAME, $PACKAGE_VERSION etc. shell variables. $name =~ s/\bAC_PACKAGE_/\$PACKAGE_/g; $name = $domain if $domain; $name = SubstituteVariable ($name); $name =~ s/^["'](.*)["']$/$1/; return $name if $name; } sub FindPOTKeywords { my $keywords = "--keyword\=\_ --keyword\=N\_ --keyword\=U\_ --keyword\=Q\_"; my $varname = "XGETTEXT_OPTIONS"; my $make_source; { local (*IN); open (IN, "; close IN; } # unwrap lines split with a trailing \ $make_source =~ s/\\ $ \n/ /mxg; $keywords = $1 if $make_source =~ /^$varname[ ]*=\[?([^\n\]]+)/m; return $keywords; } sub FindMakevarsDomain { my $domain = ""; my $makevars_source; { local (*IN); open (IN, "; close IN; } $domain = $1 if $makevars_source =~ /^DOMAIN[ ]*=\[?([^\n\]\$]+)/m; $domain =~ s/^\s+//; $domain =~ s/\s+$//; return $domain; } sub FindMakevarsBugAddress { my $address = ""; my $makevars_source; { local (*IN); open (IN, "; close IN; } $address = $1 if $makevars_source =~ /^MSGID_BUGS_ADDRESS[ ]*=\[?([^\n\]\$]+)/m; $address =~ s/^\s+//; $address =~ s/\s+$//; return $address; } agave-0.4.7/install-sh0000755000175000017500000003246411224420540011535 00000000000000#!/bin/sh # install - install a program, script, or datafile scriptversion=2006-12-25.00 # 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-end: "$" # End: agave-0.4.7/configure.ac0000644000175000017500000002033311224442674012023 00000000000000# -*- Autoconf -*- # Process this file with autoconf to produce a configure script. #AC_PREREQ(2.59) AC_INIT([Agave], [0.4.7], [https://gna.org/bugs/?group=colorscheme], [agave]) AC_CONFIG_SRCDIR([src/main.cc]) AC_CONFIG_MACRO_DIR([m4]) AM_INIT_AUTOMAKE GNOME_DOC_INIT dnl Custom macro that checks if the git binary exists, and if it does, it tries dnl to check the git repository version of the working copy and uses that in dnl the application's 'About' window GIT_REPOSITORY_REVISION() PACKAGE_WEBSITE=[http://home.gna.org/colorscheme/] AC_DEFINE_UNQUOTED([PACKAGE_WEBSITE], ["$PACKAGE_WEBSITE"], [The website of Agave]) AC_SUBST([PACKAGE_WEBSITE]) AC_CONFIG_HEADER(config.h) dnl Set Language to C++ and make sure proper tools exist AC_LANG(C++) AC_PROG_CXX AC_PROG_RANLIB AC_CHECK_PROGS(SED, sed) AC_CHECK_PROGS(SORT, sort) AC_CHECK_PROGS(UNIQ, uniq) AC_CHECK_PROGS(TR, tr) dnl i18n AC_PROG_INTLTOOL([0.35.0]) GETTEXT_PACKAGE=agave AC_SUBST(GETTEXT_PACKAGE) AC_DEFINE_UNQUOTED([GETTEXT_PACKAGE], ["$GETTEXT_PACKAGE"], [The domain name to use with gettext]) AM_GLIB_GNU_GETTEXT PKG_CHECK_MODULES(GTKMM, [ gtkmm-2.4 >= 2.8.0 ]) PKG_CHECK_MODULES(LIBGLADEMM, [ libglademm-2.4 ]) dnl Check to see if the version of gtkmm is recent enough to support the new dnl printing support PKG_CHECK_MODULES(PRINTING, [gtkmm-2.4 >= 2.10.0], have_gtk_printing=yes, have_gtk_printing=no) if test "x$have_gtk_printing" = "xyes"; then AC_DEFINE([HAVE_GTK_PRINTING], 1, [using at least gtkmm version 2.10.0]) else AC_MSG_RESULT(no) fi dnl Check to see if cairomm is installed dnl printing support PKG_CHECK_MODULES(CAIRO_RING, [cairomm-1.0 >= 1.2.0 glib-2.0], build_cairo_ring=yes, build_cairo_ring=no) AM_CONDITIONAL(BUILD_CAIRO_RING, test "x$build_cairo_ring" = "xyes") dnl Determine whether to compile with support for GNOME libraries (i.e. dnl libgnome and libgnomeui) AC_ARG_ENABLE(gnome, [AC_HELP_STRING([--enable-gnome], [build with libgnome support [default=yes]])],, [enable_gnome=yes]) if test "x$enable_gnome" = "xyes"; then PKG_CHECK_MODULES([GNOME], [libgnomeui-2.0]) AC_DEFINE([HAVE_GNOME], [1], [Compile with libgnome support]) fi dnl Determine whether to compile with support for GConfmm AC_ARG_ENABLE(gconf, [AC_HELP_STRING([--enable-gconf], [build with gconfmm support [default=yes]])],, [enable_gconf=yes]) if test "x$enable_gconf" = "xyes"; then PKG_CHECK_MODULES([GCONFMM], [gconfmm-2.6]) AC_DEFINE([HAVE_GCONFMM], [1], [Compile with gconfmm support]) dnl *************** dnl gconf tool and path info dnl *************** AC_PATH_PROG(GCONFTOOL, gconftool-2) dnl FIXME: this may break if gconf is not installed even if the user dnl requests that gconf be disabled. Do I need to copy this macro into my dnl source tree?? AM_GCONF_SOURCE_2 AC_SUBST(GCONFTOOL) else dnl workaround for automake complaining about this not being defined if dnl AM_GCONF_SOURCE_2 is not executed. AM_CONDITIONAL(GCONF_SCHEMAS_INSTALL, false) fi dnl Determine whether to compile with debug settings. Essentially this just dnl disables compiler optimizations for now AC_ARG_ENABLE(debug-mode, [AC_HELP_STRING([--enable-debug-mode], [build with debug settings (no optimization, test coverage)])],, [enable_debug_mode=no]) AC_MSG_CHECKING(whether to compile with debug settings) if test "x$AGAVE_DEVEL" = "xon" ; then enable_debug_mode=yes fi if test "x$enable_debug_mode" = "xyes"; then AC_MSG_RESULT(yes) dnl remove optimization settings from CFLAGS CXXFLAGS=[`echo "$CXXFLAGS" | $SED -e 's/-O[0-9]*//g'`] CFLAGS=[`echo "$CFLAGS" | $SED -e 's/-O[0-9]*//g'`] else AC_MSG_RESULT(no) fi dnl always compile with Wall CXXFLAGS="$CXXFLAGS -Wall" dnl Turn on the additional warnings last, so -Werror doesn't affect other tests. AC_ARG_ENABLE(more-warnings, [AC_HELP_STRING([--enable-more-warnings], [Maximum compiler warnings])], set_more_warnings="$enableval",[set_more_warnings=no]) AC_MSG_CHECKING(for more warnings, including -Werror) if test "$GXX" = "yes" -a "$set_more_warnings" != "no"; then AC_MSG_RESULT(yes) CXXFLAGS="-Wextra -Weffc++ -Wctor-dtor-privacy -Woverloaded-virtual -Wchar-subscripts -Wpointer-arith \ -Wcast-align -Wsign-compare -Werror \ $CXXFLAGS" for option in -Wno-strict-aliasing -Wno-sign-compare; do SAVE_CFLAGS="$CXXFLAGS" CFLAGS="$CXXFLAGS $option" AC_MSG_CHECKING([whether gcc understands $option]) AC_TRY_COMPILE([], [], has_option=yes, has_option=no,) if test $has_option = no; then CXXFLAGS="$SAVE_CFLAGS" fi AC_MSG_RESULT($has_option) unset has_option unset SAVE_CFLAGS done unset option else AC_MSG_RESULT(no) fi dnl Get the cppunit path for doing unit tests AC_ARG_ENABLE(cppunit, [AC_HELP_STRING([--enable-cppunit], [build unit tests [default = yes]])],, [enable_cppunit=yes], [enable_cppunit=no]) AM_CONDITIONAL(HAVE_CPPUNIT, test "x$enable_cppunit" = "xyes") if test -n HAVE_CPPUNIT; then AM_PATH_CPPUNIT(1.10.0) fi dnl test for boost::shared_ptr AC_CHECK_HEADER([boost/shared_ptr.hpp], ,AC_MSG_ERROR(dnl [Boost header shared_ptr.hpp not found])) dnl Sort and remove any duplicates from the whitespace separated list of 'words' dnl so that the compile commandline doesn't get huge because of duplicated flags dnl and libraries dnl FIXME: this won't work if paths contain spaces AC_DEFUN([PRUNE_DUPS], [`echo $1 | $TR -s "[[:blank:]]" "\n" | $SORT | $UNIQ | $TR "\n" " "`]) dnl Consolidate all libraries and flags into one variable AGAVE_LIBS=PRUNE_DUPS("$GTKMM_LIBS $LIBGLADEMM_LIBS $GCONFMM_LIBS $GNOME_LIBS") AGAVE_CFLAGS=PRUNE_DUPS("$GTKMM_CFLAGS $LIBGLADEMM_CFLAGS $GCONFMM_CFLAGS $GNOME_CFLAGS") AC_SUBST(AGAVE_LIBS) AC_SUBST(AGAVE_CFLAGS) dnl Define directory locations for use in the program AGAVE_LOCALEDIR=[${datadir}/locale] AGAVE_COMMONDIR=[${datadir}/agave] AGAVE_ICONDIR=[${AGAVE_COMMONDIR}/pixmaps] AGAVE_UIDIR=[${AGAVE_COMMONDIR}/ui] AGAVE_PALETTEDIR=[${AGAVE_COMMONDIR}/palettes] dnl pass the variables to automake AC_SUBST([AGAVE_LOCALEDIR]) AC_SUBST([AGAVE_ICONDIR]) AC_SUBST([AGAVE_UIDIR]) AC_SUBST([AGAVE_PALETTEDIR]) AC_CONFIG_FILES([Makefile po/Makefile.in src/Makefile src/core/Makefile src/paletteparser/Makefile src/widgets/Makefile src/dialogs/Makefile pixmaps/Makefile pixmaps/16x16/Makefile pixmaps/22x22/Makefile pixmaps/32x32/Makefile pixmaps/scalable/Makefile data/Makefile data/agave.desktop.in data/ui/Makefile data/palettes/Makefile tests/Makefile tests/core/Makefile tests/paletteparser/Makefile tests/widgets/Makefile help/Makefile ]) AC_OUTPUT() dnl ================================================== echo "" echo "======================================================================" echo "" echo "$PACKAGE_NAME configuration:" echo " C compiler : $CC" echo " C++ compiler : $CXX" echo " Prefix : $prefix" echo "" echo "$PACKAGE_NAME will be compiled with the following features:" echo " Gconfmm support : $enable_gconf" echo " GNOME library support : $enable_gnome" echo " Printing support : $have_gtk_printing" echo " Build Cairo Ring utility: $build_cairo_ring" echo "" echo "The following options will be passed to the compiler:" echo " CFLAGS: $CFLAGS" echo " CXXFLAGS: $CXXFLAGS" echo "" echo " AGAVE_CFLAGS: $AGAVE_CFLAGS" echo "" echo " AGAVE_LIBS: $AGAVE_LIBS" echo "" echo "======================================================================" echo "" agave-0.4.7/ChangeLog0000644000175000017500000024702310637620160011311 000000000000002006-02-11 Jonathon Jongsma * data/ui/colorscheme.ui: added "Export Favorites" menu item * src/dialogs/gcs-save-chooser.cc: * src/dialogs/gcs-save-chooser.h: Added a new class for choosing where to save an exported favorites palette * src/dialogs/Makefile.am: added new files to Makefile * src/gcs-mainwindow-actions.h: * src/gcs-mainwindow-actions.cc: Added function for handling new Export menu action. At this point it just opens a save dialog in the current folder and asks for a filename. * src/widgets/gcs-bookmarklist.h: made save_to_disk() public so that it can be used by the export menu action 2006-02-11 Jonathon Jongsma * .gitignore: updated gitignore files 2006-02-11 Jonathon Jongsma * src/widgets/gcs-bookmarklist.cc: * src/widgets/gcs-bookmarklist.h: make it so that it now saves the list of favorite colors to disk when it is re-ordered (e.g. with a drag and drop operation). 2006-02-10 Jonathon Jongsma * src/widgets/gcs-colorswatch.cc: * src/widgets/gcs-colorswatch.h: renamed drag handler (removed the reference to button that was carried over from the example I based it on) 2006-02-10 Jonathon Jongsma * autogen.sh: made executable after git import screwed it up 2006-02-06 Jonathon Jongsma * src/gcs-mainwindow-actions.cc: * src/gcs-mainwindow.h: use the GTK+ GtkClipboard::owner-change signal to determine when to enable / disable the clipboard item in the menu. This signal is not yet wrapped in gtkmm. Added a C callback function for this purpose. 2006-02-05 Jonathon Jongsma * src/gcs-mainwindow.cc: split out the code for getting a Gdk::Color from a dropped item of type 'application/x-color' so that it can be used in other places. * src/gcs-util.h: moved the common code here in get_dropped_color() * src/widgets/gcs-bookmarklist.cc: * src/widgets/gcs-bookmarklist.h: added some functionality for dropping an application/x-color onto the bookmark list to add it to the favorites list. Unfortunately, this breaks the re-ordering of the treeview, so it's disabled for now. 2006-02-05 Jonathon Jongsma * src/gcs-mainwindow.cc: Quick fix for bug #5203 which didn't enable the 'remove' button in the bookmark list when doing Ctrl+A or when de-selecting all items in the list. 2006-02-04 Jonathon Jongsma * src/widgets/gcs-bookmarklist.cc: fixed a bug that was causing the settings directory to not get created the first time the application was run. Regression introduced when removing gnome-vfs dependency. 2006-02-04 Jonathon Jongsma * src/widgets/gcs-paletteview.cc: * src/widgets/gcs-paletteview.h: change the X cursor when we move the mouse into the PaletteView widget so that it's more obvious that the colors there are selectable. The cursor should change to a hand upon entering the palette and return to normal upon exiting 2006-02-04 Jonathon Jongsma * src/gcs-mainwindow.h: the beginning of drag-n-drop support * src/gcs-mainwindow.cc: add support for dropping an 'application/x-color' item into the main window to set the current color * src/widgets/gcs-cellrendererswatch.cc: removed a debugging statement * src/widgets/gcs-colorswatch.h: * src/widgets/gcs-colorswatch.cc: added drag support for Colorswatches. They currently support the targets 'application/x-color', 'UTF8_STRING', and 'text/plain'. Also changed the selected signal activation from button-release to button-press. * src/widgets/gcs-textswatch.cc: changed the selected signal from button-release to double-click 2006-02-04 Jonathon Jongsma * src/gcs-mainwindow-actions.cc: * src/gcs-mainwindow.cc: * src/gcs-mainwindow.h: split the action-related stuff off to a new file (gcs-mainwindow-actions.cc) to reduce the size of the mainwindow file * src/Makefile.am: added gcs-mainwindow-actions.cc 2006-02-04 Jonathon Jongsma * src/gcs-mainwindow.cc: switched auto_ptr to boost::shared_ptr 2006-02-04 Jonathon Jongsma * src/widgets/gcs-bookmarklist.cc: made the bookmark list into a multiple-selection treeview. This isn't very useful for selecting colors (if you select multiple colors, only the first selection causes the current color to change), but it is useful for removing multiple colors from the list at once. Now get_color() will return a NULL pointer if not exactly one row is selected. * src/gcs-mainwindow.cc: updated some signal handlers to check for a NULL pointer returned from BookmarkList::get_color() before attempting to use it. 2006-01-31 Jonathon Jongsma * src/core/gcs-color.h: add new default constructor * src/core/gcs-color.cc: add new default constructor, fix normalize_hex so that it doesn't always fall back to black if it can't understand the argument. Just leave it as is if we can't normalize it. * src/gcs-mainwindow.cc: check the result of setting the the color as a result of a paste operation and don't update the current color unless the operation was successful 2006-01-31 Jonathon Jongsma * src/gcs-mainwindow.cc: uncomment the default window size command. 2006-01-31 Jonathon Jongsma * src/gcs-mainwindow.cc: * src/gcs-mainwindow.h: add some basic infrastructure for checking whether the app is able to paste and disabling / enabling the menu item appropriately. Unfortunately, I can't come up with a good scheme for when to do the check, so it's currently disabled. 2006-01-30 Jonathon Jongsma * data/ui/colorscheme.ui: added a Paste menu item to the Edit menu * src/gcs-mainwindow.cc: * src/gcs-mainwindow.h: Added rudimentary support for pasting colors in colorscheme. At this point it takes any string from the clipboard and tries to parse it to a color and doesn't handle failure cases at all. This means that any random text that doesn't parse to a valid color will set the current color to black. Still needs some work. 2006-01-30 Jonathon Jongsma * src/widgets/gcs-colorswatch.cc: removed some unnecessary header includes that were left over from when I split out the TextSwatch class 2006-01-30 Jonathon Jongsma * configure.in: * src/core/gcs-palette.cc: * src/core/gcs-palette.h: * src/gcs-mainwindow.cc: * src/gcs-mainwindow.h: * src/main.cc: * src/widgets/gcs-bookmarklist.cc: * src/widgets/gcs-bookmarklist.h: * src/widgets/gcs-paletteview.cc: * src/widgets/gcs-paletteview.h: remove gnome-vfsmm dependency. I was never really using it for much in the first place. As it stands, the file functions are not particularly cross-platform. The filename for loading the saved favorites, for example, uses unix directory separators. At some point this should be abstracted out and made more portable. Perhaps using boost::filesystem (?) 2005-12-24 Jonathon Jongsma * src/gcs-mainwindow.cc: changed a whole bunch of if statements checking for null pointers to asserts since the program really won't work if the pointers are null anyway. 2005-11-25 Jonathon Jongsma * doc/ANNOUNCE: add skeleton outline for an announcement file for new releases of colorscheme 2005-11-25 Jonathon Jongsma * configure.in: bump revision post-release ==== colorscheme 0.3.1 ==== 2005-11-25 Jonathon Jongsma * NEWS: add information about 0.3.1 * configure.in: fix to show error when boost is not found. bump revision 2005-11-22 Jonathon Jongsma * configure.in: bump the revision post-release ==== colorscheme 0.3 ==== 2005-11-22 Jonathon Jongsma * src/Makefile.am: * src/widgets/Makefile.am: * src/widgets/gcs-paletteview.cc: some changes because 'make distcheck' was complaining. Added gcs-util.h to Makefile.am 2005-11-22 Jonathon Jongsma * NEWS: add information about 0.3 release * configure.in: bump release version to 0.3 2005-11-22 Jonathon Jongsma * src/gcs-mainwindow.cc: move the scheme selector above the palette so that it's easier to see. 2005-11-22 Jonathon Jongsma * src/widgets/gcs-bookmarklist.cc: * src/widgets/gcs-bookmarklist.h: favorites are now loaded automatically from disk at startup and saved to disk whenever a new color is added, a color is deleted, or all colors are cleared. 2005-11-22 Jonathon Jongsma * configure.in: add dependency on gnome-vfsmm-2.6 * src/Makefile.am: add some preprocessor symbols that are needed for the GNOME_PROGRAM_STANDARD_PROPERTIES macro used in gnome_program_init() * src/core/gcs-palette.h: * src/core/gcs-palette.cc: use Gnome::Vfs::Uri for passing the path of the palette to load. It doesn't currently load the file with Gnome::Vfs yet, but will eventually * src/gcs-mainwindow.h: * src/gcs-mainwindow.cc: Gnome::Vfs changes in BookmarkList and PaletteView, also added variables specifying the location of the configuration directory and the filename of the bookmarks file. * src/main.cc: Gnome::Vfs initialization (via gnome_program_init()), also cleaned up some of the OptionGroup code * src/widgets/gcs-bookmarklist.h: * src/widgets/gcs-bookmarklist.cc: Add preliminary support for loading and saving the bookmarklist to and from disk using Gnome::Vfs * src/widgets/gcs-paletteview.h: * src/widgets/gcs-paletteview.cc: Modify to take a Gnome::Vfs::Uri in the constructor due to changes in gcs::Palette 2005-11-21 Jonathon Jongsma * src/core/gcs-color.cc: * src/core/gcs-color.h: add a operator!=() method to the Color class to make it easier to compare whether two color objects refer to the same color * src/widgets/gcs-bookmarklist.cc: * src/widgets/gcs-bookmarklist.h: change BookmarkList to return a ColorPtr instead of simply a hexstring. Function name changed from get_hexstring() to get_color(). * src/gcs-mainwindow.cc: minor changes to accomodate changes to BookmarkList interface 2005-11-21 Jonathon Jongsma * src/widgets/gcs-bookmarklist.cc: * src/widgets/gcs-bookmarklist.h: added a m_colColor column to the listStore that holds a ColorPtr * src/widgets/gcs-cellrendererswatch.cc: * src/widgets/gcs-cellrendererswatch.h: modified CellRendererSwatch to have a ColorPtr instead of a simple hexString to create the Color objects from. Hopefully this will be a little more straightforward and improve performance slightly 2005-11-21 Jonathon Jongsma * branches/colorscheme-0.2.2: merged in -r274:275 (czech) 2005-11-20 Jonathon Jongsma * data/ui/colorscheme.ui: disabled file->new for switching between palettes. * src/widgets/gcs-paletteview.cc: disabled palette-specific names. For the immediate future, the program will probably only support a single palette. We can figure out how to do multiple palettes later. This way, we get a translated Palette string and don't have to worry about how to translate palette names read from file 2005-11-20 Jonathon Jongsma * src/core/Makefile.am: added gcs-palette.h and gcs-palette.cc * src/core/gcs-palette.h: * src/core/gcs-palette.cc: moved all of the non-UI-related functionality from gcs::Widgets::Palette to a new class, gcs::Palette. This is in preparation for saving favorites as a .gpl palette file, so eventually this will have palette output functionality as well as palette parsing functionality * src/widgets/Makefile.am: change filenames from gcs-palette.[cc|h] to gcs-paletteview.[cc|h] * src/gcs-mainwindow.cc: * src/gcs-mainwindow.h: update due to renaming class from Palette to PaletteView * src/widgets/gcs-palette.cc: * src/widgets/gcs-palette.h: removed * src/widgets/gcs-paletteview.cc: * src/widgets/gcs-paletteview.h: update to separate UI from non-UI functionality. This class now contains a gcs::Palette member, and simply displays it. 2005-11-20 Jonathon Jongsma * src/gcs-mainwindow.cc: make sure that the favorites column is at least a minimum width so that it doesn't get squished out by the palette view 2005-11-20 Jonathon Jongsma * src/widgets/gcs-palette.cc: reduce the height of the palette view from 150 to 100 pixels so it doesn't take up so much space * data/palettes/Web.gpl: change from 6 to 36 rows for the web-safe palette so that it all fits in a smaller vertical area * src/widgets/gcs-colorswatch.cc: reduce the minimum size of a Colorswatch from 15 to 12 pixels so that more swatches can fit in a row to allow the web-safe palette to take up less horizontal space 2005-11-19 Jonathon Jongsma * configure.in: bump revision to 0.2.3pre, add check for boost shared_ptr header and libintl.h header * src/core/gcs-color-group.cc: * src/core/gcs-color-group.h: * src/core/gcs-color.cc: * src/core/gcs-color.h: * src/core/gcs-scheme.cc: * src/core/gcs-scheme.h: * src/core/gcs-types.h: * src/gcs-mainwindow.cc: * src/gcs-mainwindow.h: * src/widgets/gcs-bookmarklist.cc: * src/widgets/gcs-bookmarklist.h: * src/widgets/gcs-colorswatch.cc: * src/widgets/gcs-colorswatch.h: * src/widgets/gcs-palette.cc: * src/widgets/gcs-palette.h: * src/widgets/gcs-schemebox.cc: * src/widgets/gcs-schemebox.h: * src/widgets/gcs-textswatch.cc: * src/widgets/gcs-textswatch.h: massive reworking of the way gcs::Color types are handled. Now everything passes boost::shared_ptr instead of Color or Color& or Color*. Therefore, as of this revision, GNOME colorscheme requires boost (for debian, libboost-dev) 2005-11-14 Jonathon Jongsma * po/es_ES.po: merge from branches/colorscheme-0.2.2 -r265:267 2005-11-12 Jonathon Jongsma * data/palettes/Makefile.am, data/ui/Makefile.am, pixmaps/Makefile.am: fixed some directory location issues left over from re-working the autoconf / automake stuff 2005-11-12 Jonathon Jongsma * merge: Merged from branches/colorscheme-0.2.2 -r254:264 (added es_ES) 2005-11-12 Jonathon Jongsma * configure.in, src/Makefile.am, src/dialogs/Makefile.am: cleaned up a bunch of the autoconf / automake stuff so that the data directories are a little easier to maintain * src/main.cc: updated the macro name LOCALEDIR to COLORSCHEME_LOCALEDIR due to re-working of autoconf stuff 2005-11-11 Jonathon Jongsma * configure.in, src/dialogs/gcs-about-window.cc: change url in the 'about' dialog to link to the real homepage instead of the project space 2005-11-11 Jonathon Jongsma * src/gcs-mainwindow.cc: made the web palette the default palette 2005-11-11 Jonathon Jongsma * src/widgets/gs-textswatch.h, src/widgets/gcs-textswatch.cc: fix problem where changing a color wouldn't change the text in the swatch until it was clicked twice. Moved the base class set_background() function to the beginning of TextSwatch::set_background() and made TextSwatch::redraw() a virtual function 2005-11-06 Jonathon Jongsma * po/POTFILES.in, src/widgets/gcs-palette.cc: added a new string for translation: "Palette" 2005-11-04 Jonathon Jongsma * merge: Merged changes from /branches/colorscheme-0.2.2 -r250:254 * doc/RELEASE_CHECKLIST: modified the release process a little bit * src/ucompose.h: comment out the imbue() function for now since it was causing segfaults in some locales (notably fr_CA). * configure.in, po/ru.po: add russian translation, bump revision in configure.in 2005-11-03 Jonathon Jongsma * po/pt_BR.po, configure.in: added pt_BR translation. merged from branches/colorscheme-0.2.2 -r247:248 2005-10-30 Jonathon Jongsma * src/widgets/Makefile.am: add textswatch files * src/widgets/gcs-colorswatch.cc, src/widgets/gcs-colorswatch.h, src/widgets/gcs-textswatch.cc, src/widgets/gcs-textswatch.h: split ColorSwatch into two classes, ColorSwatch and TextSwatch, to improve performance so that the palette doesn't need to use a swatch that displays text * src/widgets/gcs-schemebox.cc, src/widgets/gcs-schemebox.h: switch Schemebox to use the new TextSwatch class 2005-10-30 Jonathon Jongsma * src/widgets/gcs-palette.cc, src/widgets/gcs-palette.h: removed a bunch of commented-out code that wasn't being used 2005-10-30 Jonathon Jongsma * src/widgets/gcs-palette.cc, src/widgets/gcs-palette.h: size the scrolled window so that it's a max of 150px or 25 * m_rows 2005-10-30 Jonathon Jongsma * data/palettes/Makefile.am, data/palettes/Visibone.gpl: added new palette * data/palettes/Web.gpl, data/palettes/Ximian-Palette.gpl: updated palette names * data/ui/colorscheme.ui: activated the 'new' menu option which is currently being used as a debugging tool to switch between palette options * src/widgets/gcs-colorswatch.cc: reduced the minimum size of a colorswatch to 15 from 20 so that palettes can fit in a slightly smaller area. * src/widgets/gcs-colorswatch.h, src/widgets/gcs-colorswatch.cc: updated drawing code so that when lineWidth (now called m_borderWidth) is zero, a line is not drawn around the swatch. * src/widgets/gcs-palette.h, src/widgets/gcs-palette.cc: changed palette to a table inside of a scrolled window inside of an expander so that it doesn't take up such a huge amount of space when a large palette is selected. Also use the given value for Columns in a palette file when provided. * src/widgets/gcs-schemebox.cc: added a minimum size request for schemeboxes * src/gcs-mainwindow.cc: enlarged the defalt window size, updated palette code for improved scrolled and collapsible palette widget 2005-10-17 Jonathon Jongsma * configure.in: * data/Makefile.am: * data/palettes/Makefile.am: * data/palettes/Tango-Palette.gpl: * data/palettes/Web.gpl: * data/palettes/Ximian-Palette.gpl: added new palettes directory * data/ui/Makefile.am: Removed unnecessary line that was copied over from the desktop files Makefile.am * src/Makefile.am: added a define for the palette directory * src/core/gcs-color.cc: (operator<<) fix string representation of gcs::Color * src/gcs-mainwindow.h: * src/gcs-mainwindow.cc: add the palette to the main window -- it's just a quick and dirty implementation for now * src/widgets/tests/palette-test.cc: * src/widgets/tests/palette-test.h: * src/widgets/tests/test-main.cc: * src/widgets/Makefile.am: add a unittest for the palette implementation, but it currently segfaults * src/widgets/gcs-palette.cc: * src/widgets/gcs-palette.h: begin implementation of a palette widget. Needs a lot more work, though 2005-10-11 Jonathon Jongsma * src/gcs-mainwindow.cc: * src/gcs-mainwindow.h: Use forward declaration of classes to reduce compilation dependencies slightly. In practice it probably won't do too much, though. 2005-10-06 Jonathon Jongsma * src/core/compat-round.cc: more fixes for FreeBSD, thanks to Piotr Smyrak 2005-09-27 Jonathon Jongsma * src/gcs-util.h: add a util file which currently only contains a basic trim function * src/widgets/gcs-palette.cc, src/widgets/gcs-palette.h: add beginning of a palette implementation * src/widgets/tests/test-main.cc, src/widgets/tests/palette-test.cc, src/widgets/tests/palette-test.h: start implementing some tests for the palette * src/core/Makefile.am, src/widgets/Makefile.am: add new files to the makefiles 2005-09-21 Jonathon Jongsma * data/colorscheme.desktop.in: Mark the application name for translation 2005-09-21 Jonathon Jongsma * src/widgets/gcs-bookmarklist.cc: forgot to include gcs-i18n.h when marking "Favorites" for translation in last commit * src/widgets/gcs-colorswatch.h: removed declaration for on_action_use since the definition was removed in the last commit and caused build breakage 2005-09-21 Jonathon Jongsma * po/POTFILES.in: added gcs-bookmarklist.cc -- Forgot to translate "Favorites" * src/widgets/gcs-bookmarklist.cc: marked "Favorites" for translation * src/widgets/gcs-colorswatch.cc: removed "Use Color" action which had a translatable string marked but wasn't being used. 2005-09-21 Jonathon Jongsma * configure.in: add bulgarian to ALL_LINGUAS * po/bg.po: Add Bulgarian translation, thanks to Rostislav Raykov 2005-09-21 Jonathon Jongsma * src/gcs-mainwindow.cc: increased the window size slightly to fix #4401 2005-09-21 Jonathon Jongsma * src/widgets/gcs-bookmarklist.cc: made favorites list re-orderable via drag and drop 2005-09-20 Jonathon Jongsma * configure.in: bump the version after release ==== colorscheme 0.2.2 ==== 2005-09-20 Jonathon Jongsma * NEWS: added info about new features in 0.2.2 * configure.in: bumped version number to 0.2.2 2005-09-20 Jonathon Jongsma * TODO: fixed end-of-line encoding 2005-09-17 Jonathon Jongsma * pixmaps/colorscheme-dots.svg: reduced the size of the dots slightly and moved them farther to the center. The old Icon would get really close to the end of the image and it would look a bit oversized in the Panel. This gives it a little bit of empty space as a frame. 2005-09-17 Jonathon Jongsma * src/gcs-mainwindow.cc: Changed random button name from "Random Color" to simply "Random" so that it doesn't take up so much space 2005-09-17 Jonathon Jongsma * data/ui/colorscheme.ui: Enabled the history back and forward buttons and also added history items to the Edit menu * src/gcs-history.h: Modified a few things to prevent the history list to add a color to its history when the new color is the result of pressing back or forward (i.e. creating duplicate history entries). May need a little bit of work yet -- not extensively tested. * src/gcs-mainwindow.cc: re-enabled the history stuff in the UI 2005-09-16 Jonathon Jongsma * src/gcs-mainwindow.cc: Make the Favorites list selection become deselected on a color change unless the new color matches the selected color. * src/widgets/gcs-bookmarklist.cc: fixed get_hexstring() so that now it at least returns a null string when there's no item selected 2005-09-16 Jonathon Jongsma * src/widgets/gcs-colorswatch.cc: change the threshold at which the text on a ColorSwatch changes from black to white from v=50 to v=65 which makes a pretty significant difference on readability on certain colors. 2005-09-16 Jonathon Jongsma * src/gcs-mainwindow.cc: fixed a minor issue where the darken / desaturate buttons weren't being set insensitive unless they were exactly equal to 5 instead of <= 5 2005-09-16 Jonathon Jongsma * src/widgets/gcs-colorswatch.cc, src/widgets/gcs-colorswatch.h: added a signal (signal_selected) that's emitted whenever a swatch is left-clicked. This allows the schemebox to pick it up and pass it on to the main window which can update its scheme to the color that was clicked. * src/widgets/gcs-schemebox.cc, src/widgets/gcs-schemebox.h: connect to the signal_selected signal from ColorSwatch and emit a new signal just created called signal_color_selected, which passes a hexString with the signal * src/gcs-mainwindow.cc, src/gcs-mainwindow.h: change to a singleton pattern (new Instance() method). Also connected to the new signal from SchemeBox (signal_color_selected) and use the hexstring passed to update the scheme to that color. Also factored a few things out into a new set_color method for MainWindow. * src/main.cc: get a reference to MainWindow with the new Instance() method * src/widgets/gcs-bookmarklist.cc, src/widgets/gcs-bookmarklist.h: removed a few obsolete things from the listmodel 2005-09-16 Jonathon Jongsma * src/widgets/gcs-schemebox.cc, src/widgets/gcs-schemebox.h: updated to more gtk-like style * src/widgets/gcs-schemeselector.cc, src/widgets/gcs-schemeselector.h: updated to more gtk-like style * src/gcs-mainwindow.cc: updated to new API for schembox and schemeselector 2005-09-16 Jonathon Jongsma * src/widgets/gcs-colorswatch.cc, src/widgets/gcs-colorswatch.h: changed to more gtk-like function style instead of CamelCase * src/widgets/gcs-schemebox.cc: update to new ColorSwatch API 2005-09-15 Jonathon Jongsma * src/core/gcs-scheme.cc: Tweaked the split complements scheme a little bit to try to differentiate between the two split compliments a little bit more. Also changed the order of them so that they're in the same order that the triads scheme is. 2005-09-15 Jonathon Jongsma * src/gcs-mainwindow.cc: added AccelKeys for actions "Random Color" (ctrl+R), "Add to Favorites" (ctrl+D), and "Remove from Favorites" (ctrl+X) 2005-09-15 Jonathon Jongsma * configure.in: bumped version number to 0.2.2pre since I forgot to do it after the last release. 2005-09-15 Jonathon Jongsma * src/widgets/gcs-colorswatch.cc, src/widgets/gcs-colorswatch.h: updated colorswatch to match new gcs::Color API a bit better. Hopefully it's more efficient now as well. * src/core/gcs-color.cc, src/core/gcs-color.h: changed the gdk() function to return a reference to the internal Gdk::Color so that it can be passed to functions that require a reference type 2005-09-15 Jonathon Jongsma * src/core/gcs-scheme.cc, src/core/gcs-scheme.h: update API to gtk-style instead of CamelCase * src/widgets/gcs-schemebox.cc, src/widgets/gcs-schemebox.h: update to new gcs::Scheme API style 2005-09-15 Jonathon Jongsma * src/core/gcs-color.cc, src/core/gcs-color.h: Massive reworking of the gcs::Color class so that it uses a Gdk::Color object as its internal data storage. That way I don't have to worry about the displayed colors (based on Gdk::Color) staying in sync with the gcs::Color object, Gdk::Color takes care of it all. Hopefully it makes things a bit cleaner and easier to maintain. Also updated the gcs::Color api to be more gtk-like instead of CamelCase. * src/core/tests/color-test.cc, src/core/tests/color-test.h, src/core/tests/test-main.cc: updated unit tests for new gcs::Color API * src/core/gcs-scheme.cc, src/core/gcs-types.h, src/gcs-mainwindow.cc, src/widgets/gcs-bookmarklist.cc, src/widgets/gcs-colorswatch.cc: updated for the new gcs::Color API 2005-09-13 Jonathon Jongsma * src/Makefile.am: remove compat-round files * src/compat-round.cc, src/compat-round.h: moved to src/core/ directory * src/core/Makefile.am: add compat-round files * src/core/gcs-color.cc: modified include directive for compat-round.h 2005-09-13 Jonathon Jongsma * src/Makefile.am: add compat-round files * src/compat-round.cc, src/compat-round.h: added compatibility wrapper for the round function so that it works better for FreeBSD * src/core/gcs-color.cc: change round functions to compat_round 2005-09-04 Jonathon Jongsma * src/widgets/gcs-bookmarklist.cc, gcs-bookmarklist.h: Changed the implementation of the bookmarklist to use the new CellRenderer instead of simply setting the background of the cell. Removed set_cell_background function. * src/widgets/gcs-cellrendererswatch.cc, gcs-cellrendererswatch.h: added a custom CellRenderer for displaying a colorswatch based on a hex string. * src/widgets/Makefile.am: added gcs-cellrendererswatch.cc and gcs-cellrendererswatch.h to the makefile 2005-09-01 Jonathon Jongsma * /trunk: merged in changes from /branches/historylist-0.2 from revision 185 through 205 2005-08-31 Jonathon Jongsma * src/gcs-mainwindow.cc: Random number generator is now seeded during the constructor for the MainWindow object instead of in the click handler for the randomize button. This fixes bug #2831 2005-08-31 Jonathon Jongsma * Makefile.am: added doc target to make API documentation with doxygen * src/widgets/gcs-bookmarklist.cc, src/widgets/gcs-bookmarklist.h: added function to the bookmarklist so that it now sets the background color of each bookmark item to the color that it's bookmarking. This has several drawbacks compared to a more optimal solution such as that you can't see the color when the item is selected, and that you can't see the text if the color is too dark. This could be fixed to set the text color based on the background color brightness, but a better solutionw ould be to simply embed a small swatch next to the text instead of coloring the background. This will be done eventually. 2005-08-29 Jonathon Jongsma * src/main.cc: added an include directive for gcs-i18n.h that was causing build issues on FreeBSD, thanks to Piotr Smyrak ==== colorscheme 0.2.1 ==== 2005-08-28 Jonathon Jongsma * NEWS: added information about release 0.2.1 * configure.in: bumped rev to 0.2.1 * doc/RELEASE_CHECKLIST: updated the release process slightly 2005-08-28 Jonathon Jongsma * data/ui/colorscheme.ui: added a 'random color' menu item to the 'edit' menu and a random color button to the default toolbar * src/core/gcs-color.cc, src/core/gcs-color.h: added an extra parameter to rgbToHex and hsvToHex that specifies whether to output a hash (#) at the beginning of the hex string (yeah, hack-y, I know). * src/core/gcs-types.h: changed max and min values from int to gint * src/gcs-mainwindow.cc, src/gcs-mainwindow.h: added functionality for creating a random color -- a new action "Randomize", new handler on_action_randomize 2005-08-28 Jonathon Jongsma * src/widgets/gcs-bookmarklist.cc: Changed header label from "Saved Colors" to "Favorites" to match other terminology better. 2005-08-28 Jonathon Jongsma * src/gcs-mainwindow.cc, src/gcs-mainwindow.h: reverted to an HPaned container so that the favorites list isn't so wide and can be resized if necessary 2005-08-28 Jonathon Jongsma * data/ui/colorscheme.ui: Added a bookmarks menu (actually named 'Favorites' -- all references to bookmarks should now be favorites in the UI). Also added a toolbar below the favorites list. * src/gcs-mainwindow.cc, src/gcs-mainwindow.h: readied the layout for the new UI by rearranging a few containers. Added actions for adding and removing bookmarks as well as setting the actions sensitive or insensitive depending on the state of the favorites list. * src/widgets/gcs-bookmarklist.cc, src/widgets/gcs-bookmarklist.h: added API for checking whether the list is empty, checking how many rows are selected, and also removing the selected row easily. 2005-08-28 Jonathon Jongsma * data/ui/colorscheme.ui: commented out history-related things * src/Makefile.am: add gcs-history.h * src/gcs-history.h: added a new file which defines a template-based implementation of a history navigation class * src/gcs-mainwindow.cc: extensive changes related to history functionality, however most of it is commented out at this point because it isn't working yet. * src/gcs-mainwindow.h: added a few functions for handling forward and back navigation of history. Currently they're disabled, however * src/widgets/gcs-colorswatch.cc: removed debugging output for 'exposed' 2005-08-27 Jonathon Jongsma * doc/colorscheme-ui-mockup.png: added a mockup of what I'd like to work towards for a user interface 2005-08-27 Jonathon Jongsma * configure.in: add definition for a colorscheme UI directory and output for a Makefile in the /data/ui directory * data/Makefile.am: add ui subdirectory * data/ui/Makefile.am: added makefile.am for ui data directory * data/ui/colorscheme.ui: split out the UI definition into a separate file instead of defining it in a string within gcs-mainwindow.cc * src/Makefile.am: add a preprocessor symbol for COLORSCHEME_UIDIR * src/gcs-mainwindow.cc, src/gcs-mainwindow.h: split out setup for ActionGroup and UIManager into separate init functions to make the constructor slightly cleaner, improved exception handling for missing icon files, and read UI definition from a datafile instead of a string. * src/widgets/Makefile.am: update gcs-historylist filenames to gcs-bookmarklist -- missed in last change 2005-08-27 Jonathon Jongsma * src/widgets/gcs-historylist.cc, src/widgets/gcs-historylist.h: changed the filename from gcs-historylist to gcs-bookmarklist * src/gcs-mainwindow.h, src/widgets/gcs-bookmarklist.cc: adjusted #include statements for new bookmarklist filename 2005-08-27 Jonathon Jongsma * src/gcs-mainwindow.cc, src/gcs-mainwindow.h, src/widgets/gcs-historylist.cc, src/widgets/gcs-historylist.h: changed the history sidebar to a bookmarks sidebar. It no longer sorts by most recently-used and is called BookmarkList instead of HistoryList for obvious reasons. I've decided to implement the history as a stack with back and forward buttons similar to a web browser. Currently any newly-selected color will be added to the bookmarks list as if it was a history list, but this will change as soon as I add the functionality to manually add colors to the bookmarks list. 2005-08-26 Jonathon Jongsma * src/gcs-mainwindow.cc: Add a stock 'CLEAR' icon to the 'Clear history' menu item 2005-08-25 Jonathon Jongsma * configure.in: bump revision to 0.3-dev 2005-08-25 Jonathon Jongsma * src/gcs-mainwindow.cc: Marked a few more strings for translation (mostly menu names) * src/gcs-mainwindow.cc: Added a menu item and handler for clearing the history list, checked to make sure that there is at least one thing selected before using the 'selection' to set the new scheme color in on_history_selection_changed * src/gcs-mainwindow.h, src/gcs-mainwindow.cc: removed HSeparator * src/widgets/gcs-historylist.cc: When new colors are added to the history list (or old items updated), these items now get selected in the list * src/widgets/gcs-historylist.cc, src/widgets/gcs-historylist.h: added API to clear the history list 2005-08-25 Jonathon Jongsma * src/gcs-mainwindow.cc, src/gcs-mainwindow.h: added some constants for defining the window size, slightly larger than it was before due to the new history list sidebar * src/widgets/gcs-historylist.cc src/widgets/gcs-historylist.h src/gcs-mainwindow.cc: changed an API from HistoryList::selected() to HistoryList::get_hexstring() * src/widgets/gcs-historylist.cc, src/widgets/gcs-historylist.h: added a new column to the treemodel (m_colTimestamp) to keep track of when the history item was last used. The treemodel is now sorted on this column and it is updated whenever a previously used color that was stored in the list is re-used. The add() function no longer adds duplicate entries -- it checks if the color already exists in the list and then simply updates the timestamp. 2005-08-24 Jonathon Jongsma * src/gcs-mainwindow.cc, src/gcs-mainwindow.h: Added a scrollbar to the history list so that the window size doesn't change when more items get added. * src/gcs-mainwindow.cc, src/gcs-mainwindow.h: Added a handler for changing the current color if a history item is selected * src/widgets/gcs-historylist.h, src/widgets/gcs-historylist.cc: added function to return the hexstring of the currently selected history item 2005-08-24 Jonathon Jongsma * src/gcs-mainwindow.cc, src/gcs-mainwindow.h: Changed the HBox that holds the historylist to a HPaned class so that it can be resized. * src/widgets/gcs-historylist.cc: prepend new items to the history list instead of appending so that they show up at the top of the list. Also select the new row when one is added. Also display a header ("History") to indicate what the list is. 2005-08-23 Jonathon Jongsma * README: added note about installation and requirements 2005-08-22 Jonathon Jongsma * Makefile.am: no need to distribute zip files until it compiles and runs on windows ==== colorscheme 0.2 ==== 2005-08-22 Jonathon Jongsma * NEWS: Add information about 0.2 release * configure.in: bump rev to 0.2 2005-08-22 Jonathon Jongsma * src/gcs-mainwindow.cc, src/gcs-mainwindow.h: Removed a few obsolete things like a duplicate toolbar, and a copy item in the 'edit' menu. Also commented out the preferences menu item since there are no preferences so far. 2005-08-22 Jonathon Jongsma * src/gcs-mainwindow.cc: Added Accelerator keys for lightening / darkening and modifying the saturation of a color scheme. Right now these are bound to the keypad plus and minus keys, but it'd be nice to bind it to the regular plus and minus as well. I'm not sure how to bind one action to two different accel keys. 2005-08-22 Jonathon Jongsma * doc/RELEASE_CHECKLIST: add note about distcheck and some information on new gna release stuff. 2005-08-20 Jonathon Jongsma * src/dialogs/gcs-about-window.cc, AUTHORS, README: changed to gmail address * TODO: updated address of bugtracker * configure.in: changed website address * doc/RELEASE_CHECKLIST: changed address of subversion repository 2005-08-17 Jonathon Jongsma * configure.in: bumped version number 2005-08-16 Jonathon Jongsma * src/gcs-mainwindow.cc: limited darken and desaturate buttons so they don't go all the way down to 0. This is a workaround for the issue where darkening or desaturating all the way is not reversible (refs #27) 2005-08-16 Jonathon Jongsma * src/gcs-mainwindow.cc, src/widgets/gcs-schemebox.cc, src/widgets/gcs-schemebox.h: reverted some changes from [172]. Swatch popup is now handled in the ColorSwatch class instead of assigned and handled from the MainWindow class. The 'Use Color' menu item will issue a signal which will need to be connected to a handler in the MainWindow which will update the scheme. * src/widgets/gcs-colorswatch.cc, src/widgets/gcs-colorswatch.h: added popup menu and implemented copying of the hex string of the ColorSwatch object (closes #20). The 'Use Color' menu item is not implemented and is currently disabled. 2005-08-16 Jonathon Jongsma * src/widgets/gcs-schemebox.cc, src/widgets/gcs-schemebox.h: Add New member 'setSwatchPopup' which takes a pointer to a popup menu and assigns it to each swatch that is in the schemebox using the 'setContextMenu' of the ColorSwatch. * src/gcs-mainwindow.cc: added a popup menu named "ColorSwatchPopup" and assigned this menu to the swatches using new SchemeBox member "setSwatchPopup" * src/gcs-mainwindow.h: Changed the type of m_pMainMenu from Widget* to Menu* * src/widgets/gcs-colorswatch.cc: (setContextMenu) update argument name to match coding standards (mnu -> pMnu). Also set handler for button_clicked event to popup a context menu if one is registered. * src/widgets/gcs-colorswatch.h: update to coding standards 2005-08-12 Jonathon Jongsma * src/widgets/gcs-colorswatch.cc, src/widgets/gcs-colorswatch.h: added an interface to define a popup menu for a ColorSwatch object. Also added a bunch of documentation to the ColorSwatch class 2005-08-11 Jonathon Jongsma * configure.in: it turns out I don't require libgnomeuimm at all, just libgnomeui, and only for launching the web browser in the about dialog. 2005-08-11 Jonathon Jongsma * src/core/gcs-types.h: got rid of 'magic numbers' in the hue_t, rgb_t and sv_t template definitions. Replaced with the constant limit variables. * src/main.cc: added main documentation page to doxygen documentation * src/widgets/gcs-schemebox.h: removed an unnecessary include statement 2005-08-11 Jonathon Jongsma * src/core/gcs-types.h: removed tReturnStatus * src/dialogs/gcs-about-window.cc, src/gcs-mainwindow.h, src/widgets/gcs-colorswatch.cc, src/widgets/gcs-colorswatch.h, src/widgets/gcs-schemebox.cc, src/widgets/gcs-schemebox.h, src/widgets/gcs-schemeselector.cc, src/widgets/gcs-schemeselector.h: added the Widgets:: and Dialogs:: namespaces to separate things out a little better. * src/dialogs/gcs-about-window.h, src/gcs-mainwindow.cc: updated mainwindow class to use new namespaces 2005-08-10 Jonathon Jongsma * src/gcs-mainwindow.cc: Changed descriptions of brightness and saturation actions, added a separator between the sets of icons, and added the ability to disable buttons when they no longer work. * src/gcs-mainwindow.h: changed m_pTweakBar to a pointer to Toolbar instead of Widget so that I can access Gtk::Toolbar member functions * pixmaps/ : Added new icons for changing the brightness and saturation of the color scheme 2005-08-10 Jonathon Jongsma * src/core/gcs-types.h: changed RGB and SV types to be saturated arithmetic. In other words, when trying to set a value ablve or below the valid ranges for these types, it just pegs it to the max or min value. This helps make it easier to implement an automatic lightening / darkening mechanism since we don't have to make sure that we're not going past the ends. * src/gcs-mainwindow.cc: implemented event handlers for lightening / darkening and increasing / decreasing saturation. They're still a bit rough and could be improved significantly. 2005-08-10 Jonathon Jongsma * src/gcs-mainwindow.cc: fixed a few more memory allocation issues. made stock icons auto_ptrs and deleted the about dialog box in the main windows destructor. 2005-08-09 Jonathon Jongsma * autogen.sh: forgot to update for the changed directory structure last time. fixed. 2005-08-09 Jonathon Jongsma * colorscheme/*: renamed back to src/. Yes, I'm fickle. * po/POTFILES.in, configure.in, Makefile.am: fixed reference to renamed files in src/ directory 2005-08-09 Jonathon Jongsma * colorscheme/widgets/gcs-colorswatch.cc, colorscheme/widgets/gcs-colorswatch.h, colorscheme/widgets/gcs-schemebox.cc, colorscheme/widgets/gcs-schemebox.h, colorscheme/widgets/gcs-schemeselector.cc, colorscheme/widgets/gcs-schemeselector.h: renamed a few files to be less cumbersome * colorscheme/widgets/Makefile.am, colorscheme/gcs-mainwindow.cc, colorscheme/gcs-mainwindow.h: fixed references to renamed files 2005-08-09 Jonathon Jongsma * colorscheme/core/gcs-color.cc, colorscheme/core/gcs-types.cc, colorscheme/core/gcs-types.h, colorscheme/gcs-mainwindow.cc, colorscheme/widgets/gcs-colorswatch-widget.cc, colorscheme/widgets/gcs-scheme-selector.cc, colorscheme/widgets/gcs-schemebox-widget.cc: refactored a bunch of constructors to use initiailization lists instead of assigning values within the constructor. Hopefully the code will become slightly more efficient. 2005-08-09 Jonathon Jongsma * colorscheme/widgets/gcs-colorswatch-widget.cc, colorscheme/widgets/gcs-colorswatch-widget.h: changed white and black static members to objects instead of pointers so that they can be instantiated automatically instead of with 'new' 2005-08-08 Jonathon Jongsma * colorscheme/core/gcs-color.cc: fixed operator= and operator== functions to check for assignment and comparison to itself 2005-08-02 Jonathon Jongsma * acinclude.m4: added -n switch to svnversion to make sure that the version number doesn't have a newline at the end. * colorscheme/dialogs/gcs-about-window.cc: move the repository revision to the comment field instead of the version number field so that it's not so huge and overpowering. 2005-08-02 Jonathon Jongsma * acinclude.m4, configure.in: Added a macro borrowed from somewhere else (don't remember where) to check the subversion repository version * colorscheme/dialogs/gcs-about-window.cc: appended the subversion repository revision to the end of the version number in the 'about' dialog window. 2005-08-01 Jonathon Jongsma * colorscheme/gcs-mainwindow.cc, colorscheme/gcs-mainwindow.h: add actions and toolbar for lightening / darkening and saturating / desaturating the current theme. The toolbar buttons don't do anything at this point, however. * colorscheme/gcs-mainwindow.cc: moved the color selector and scheme type selector below the scheme display area * pixmaps/Makefile.am: added some new pixmaps for toolbar icons (lighten, darken, saturate, desaturate). Yes, they suck right now. They're only placeholders until something better comes along. 2005-08-01 Jonathon Jongsma * doc/Doxyfile: remove some of the more expensive graph generation in the doxygen documentation 2005-07-29 Jonathon Jongsma * colorscheme/widgets/gcs-colorswatch-widget.cc, colorscheme/widgets/gcs-colorswatch-widget.h: reverted a few things back from auto_ptrs to regular pointers since they were causing segfaults by deleting references when I didn't want them deleted. Re-enabled the white text color on dark swatch backgrounds. 2005-07-29 Jonathon Jongsma * colorscheme/widgets/gcs-colorswatch-widget.cc, colorscheme/widgets/gcs-colorswatch-widget.h: made black and white colors static member variables. Also disabled different text colors for the time being as it was causing a segfault. 2005-07-26 Jonathon Jongsma * colorscheme/core/gcs-scheme.h: getColor() now returns an actual Color object instead of an auto_ptr * colorscheme/widgets/gcs-colorswatch-widget.cc: fixed issues with the copy constructor and auto_ptr variables * colorscheme/widgets/gcs-colorswatch-widget.h: Changed API for setBackground to take a Color object rather than a pointer * colorscheme/widgets/gcs-schemebox-widget.cc: fixed a couple issues related to APIs that have changed from pointer to object 2005-07-25 Jonathon Jongsma * colorscheme/core/gcs-color.h, colorscheme/core/gcs-scheme.h, colorscheme/core/gcs-sheme.cc, colorscheme/widgets/gcs-colorswatch-widget.h, colorscheme/widgets/gcs-colorswatch-widget.cc, colorscheme/widgets/gcs-schemebox-widget.h, colorscheme/widgets/gcs-schemebox-widget.cc: changed API to use std:auto_ptr 2005-07-24 Jonathon Jongsma * colorscheme/widgets/gcs-colorswatch-widget.cc, colorscheme/widgets/gcs-colorswatch-widget.h: added functionality to display the text information in white if the background color of the ColorSwatch has a value less than 50. Closes #13. 2005-07-24 Jonathon Jongsma * colorscheme/gcs-mainwindow.cc: removed padding from schemebox * colorscheme/widgets/gcs-schemebox-widget.cc: removed padding from ColorSwatches and set spacing and border_width instead. Reduced the space between the swatches. Closes #24 2005-07-24 Jonathon Jongsma * colorscheme/widgets/gcs-colorswatch-widget.cc: Let ColorSwatch get down to 20x20 pixels and don't display even the minimal text when the swatch gets too small. Closes #16 2005-07-24 Jonathon Jongsma * colorscheme/widgets/gcs-colorswatch-widget.cc: fixed the code that determined which text to display in the swatch -- it was comparing the text width to the swatch height, so it was going to the minimal text much quicker than it should have. Closes #23 2005-07-24 Jonathon Jongsma * colorscheme/gcs-mainwindow.cc: set the title of the main window to the name set in config.h. Closes #22 2005-07-24 Jonathon Jongsma * doc/RELEASE_CHECKLIST: add step to make distclean ==== colorscheme 0.1 ==== 2005-07-23 Jonathon Jongsma * NEWS: Add information about 0.1 release * doc/RELEASE_CHECKLIST: Added a list of task to do when making a release * pixmaps/colorscheme.svg: updated the website header image to match the icon and logo 2005-07-23 Jonathon Jongsma * colorscheme/core/tests/color-test.cc: update unit test to work with new naming convention for member variables. 2005-07-23 Jonathon Jongsma * configure.in: bump the rev to 0.1 -- getting ready for a release * Makefile.am: added a DISTCLEANFILES section modeled after gedit, also added and AUTOMAKE_OPTIONS definition to make bzip2 and zip formats when making a new release * README, data/Makefile.am, data/colorscheme.desktop.in: changed line endings from dos to unix * po/POTFILES.in, po/ChangeLog: added files in the po directory even though they're really not used yet. 2005-07-22 Jonathon Jongsma * colorscheme/widgets/gcs-colorswatch-widget.cc, colorscheme/widgets/gcs-colorswatch-widget.h: fixed an error in the setBackground method of ColorSwatch that was allocating a new SwatchText object from the free store every time the function was called. Instead the SwatchText objects are allocated on_realize and inside setBackground, we only call SwatchText::setText(). Closes #11. 2005-07-21 Jonathon Jongsma * colorscheme/core/gcs-scheme.cc, colorscheme/core/gcs-scheme.h, colorscheme/core/tests/color-group-test.cc, colorscheme/gcs-mainwindow.cc, colorscheme/tests/display-algorithm.cc, colorscheme/widgets/gcs-schemebox-widget.cc, colorscheme/widgets/gcs-schemebox-widget.h: Changed interface to a constructor instead of a static Scheme::create function (I'm not sure why I did that in the first place). Also changed the argument to a Color object instead of a pointer to a Color object. 2005-07-21 Jonathon Jongsma * All Classes: started changing coding style to fit more with GNOME / gtkmm coding styles so that things are more consistent 2005-07-20 Jonathon Jongsma * colorscheme/Makefile.am: added gcs-i18n.h to the sources list * colorscheme/widgets/gcs-scheme-selector.cc, colorscheme/gcs-mainwindow.cc, colorscheme/dialogs/gcs-about-window.cc: marked a bunch of strings as translatable and added a translation credits string to the dialog * colorscheme/dialogs/gcs-about-window.cc: set the icon for the about dialog window. Closes #14 * colorscheme/main.cc: added some gettext functions to main() 2005-07-20 Jonathon Jongsma * configure.in, Makefile.am, data, colorscheme/Makefile.am, colorscheme/dialogs/Makefile.am, colorscheme/gcs-i18n.h: getting ready for internationalization with intltool. Also added a .desktop file and a header file for defining some gettext macros, etc. 2005-07-20 Jonathon Jongsma * colorscheme/dialogs/gcs-about-window.cc: add a callback to open the default web browwser when clicking the link in the about window 2005-07-19 Jonathon Jongsma * Makefile.am: add pixmaps subdir * colorscheme/Makefile.am, colorscheme/dialogs/Makefile.am: Added some compiler flags to define different filesystem locations, such as where icons are installed, etc. * colorscheme/main.cc, colorscheme/gcs-mainwindow.cc, colorscheme/dialogs/gcs-about-window.cc: use macros from config.h for the program name and version, as well as compiler flags for icon and logo file locations * configure.in: define icon directories, other minor tweaks * pixmaps/Makefile.am: added a makefile to install the icons and logo file 2005-07-19 Jonathon Jongsma * pixmaps: renamed data/ directory to pixmaps/ 2005-07-19 Jonathon Jongsma * colorscheme/core/Makefile.am, colorscheme/core/tests/color-test.cc, colorscheme/core/tests/color-test.h, colorscheme/core/tests/color_test.cc, colorscheme/core/tests/color_test.h, colorscheme/core/tests/test-main.cc, colorscheme/core/tests/test_main.cc: renamed unit test sources to use dashes instead of underscores. it just bugged me, ok? 2005-07-19 Jonathon Jongsma * colorscheme/core/tests/test_main.cc: change from DOS to unix line-endings 2005-07-19 Jonathon Jongsma * colorscheme/core/Makefile.am: added unit tests to the make check target * colorscheme/core/tests/color-group-test.cc: changed include directory due to change in [119] from libcolorscheme to colorscheme/core * colorscheme/core/tests/test_main.cc: check the result of the test run and return a value based on the result so that make check will report the correct status of the tests * configure.in: add cppunit dependency, update bug reporting address 2005-07-19 Jonathon Jongsma * README: add initial README text 2005-07-19 Jonathon Jongsma * Makefile.am, colorscheme/Makefile.am, colorscheme/core/Makefile.am, colorscheme/dialogs/Makefile.am, colorscheme/widgets/Makefile.am, configure.in: switch from libtool to ranlib (.la to .a libraries) which seems to compile faster and works around a linking issue that i had after upgrading binutils. Also improved a few macros in configure.in 2005-07-18 Jonathon Jongsma * src: renamed the src/ directory to colorscheme/ * autogen.sh: update to new source directory name 2005-07-18 Jonathon Jongsma * INSTALL, Makefile.am, autogen.sh, configure.in, makefile, src/Makefile.am, src/core/Makefile.am, src/dialogs/Makefile.am, src/widgets/Makefile.am: switch over to building with autotools. I'm still learning so it'll probably take some work yet. Closes #4. 2005-07-18 Jonathon Jongsma * libcolorscheme/*, src/gcs-mainwindow.h, src/widgets/gcs-colorswatch-widget.h, src/widgets/gcs-scheme-selector.cc, src/widgets/gcs-scheme-selector.h, src/widgets/gcs-schemebox-widget.h, makefile: moved libcolorscheme directory under the src/core/ directory to get ready for moving to autotools. Refs #4 2005-07-17 Jonathon Jongsma * libcolorscheme/gcs-checked-int.h: Changed the range-checking so that it wraps around to 0 after 359 instead of going to 360, which was causing some issues with the tetrad color scheme. Also reformatted the source. Closes #10. 2005-07-17 Jonathon Jongsma * all: Changed namespace from 'colorscheme' to 'gcs' 2005-07-17 Jonathon Jongsma * src/gcs-mainwindow.cc: added a default window size of 400 pixels wide x 200 pixels high. Closes #12 2005-07-17 Jonathon Jongsma * src/widgets/gcs-colorswatch-widget.cc, src/widgets/gcs-colorswatch-widget.h: Significant changes to the ColorSwatch widget to allow it to be resizeable and display more information about the color when it's a larger size. The new minimum size for the swatch is currently 60 pixels instead of 75, though this should probably be changed to the size of the pango text layout. The API for the ColorSwatch changed a bit too -- now the constructor and some other functions take pointers to Colors instead of Colors. * src/widgets/gcs-schemebox-widget.cc: use new ColorSwatch API and allow swatches to expand when the window is resized. * src/widgets/gcs-colorswatch-widget.cc, src/widgets/gcs-colorswatch-widget.h: disabled popup menu because it was causing problems. This will be moved to the main window eventually. 2005-07-16 Jonathon Jongsma * src/dialogs/gcs-about-window.cc, src/dialogs/gcs-about-window.h: added class defining an 'About' Dialog. The logo is pointing specifically to a copy of an image in the repository so it won't work outside of my dev box. Will fix it later. * src/gcs-mainwindow.cc, src/gcs-mainwindow.h: Connected the Help>About menu item to showing the new About dialog * src/gcs-mainwindow.cc: add path to a local copy of an icon so that the application window now displays an icon and catches the exception if it can't find the icon. * makefile: update to build the About dialog 2005-07-16 Jonathon Jongsma * data/colorscheme-dots.svg, data/colorscheme.svn, data/colorscheme-dots-96x96.png: updated colorscheme logo images to match schemes generated by the program, added a 96 pixel version for the About Dialog 2005-07-16 Jonathon Jongsma * src/gcs-debug.cc, src/gcs-mainwindow.cc, src/gcs-mainwindow.h, src/main.cc, src/ucompose.h, src/widgets/gcs-colorswatch-widget.cc, src/widgets/gcs-scheme-selector.cc, src/widgets/gcs-schemebox-widget.cc, makefile: changed to new debug framework, borrowed from the Coaster project (http://www.coaster-burner.org). Also borrowed some code from coaster to parse command-line arguments. Now to enable debugging, you must run the executable with a '--debug' flag. 2005-07-15 Jonathon Jongsma * src/gcs-content-box.h, src/gcs-content-box.cc, src/gcs-mainwindow.h: removed obsolete ContentBox files and include directive. * src/gcs-debug.h, src/gcs-debug.cc, src/ucompose.h: added files implementing debugging functions borrowed from the Coaster application. Currently these are not yet used anywhere. 2005-07-14 Jonathon Jongsma * src/gcs-mainwindow.cc, src/gcs-mainwindow.h, src/widgets/gcs-scheme-selector.cc: added on_show() handler to the main window so that it automatically displays the color and scheme type that's selected right at startup. 2005-07-14 Jonathon Jongsma * src/gcs-mainwindow.cc, src/widgets/gcs-colorswatch-widget.cc, src/widgets/gcs-scheme-selector.cc: #ifdef'ed a bunch of statements that print debugging information to the console so that it doesn't print stuff to the terminal unless we're building a debug build. * src/gcs-mainwindow.cc: change pack options for the SchemeBox so that when the window is resized, the colorswatch widgets will be expanded instead of the space being added between the statusbar and the window border. 2005-07-14 Jonathon Jongsma * src/widgets/gcs-schemebox-widget.cc, src/widgets/gcs-schemebox-widget.h: hide swatches whenever a scheme gets changed and then re-show them when the new swatches are assigned. Closes #9 2005-07-13 Jonathon Jongsma * libcolorscheme/gcs-color.cc, libcolorscheme/gcs-color.h, libcolorscheme/gcs-scheme.cc, libcolorscheme/gcs-scheme.h, src/gcs-content-box.cc, src/gcs-content-box.h, src/gcs-mainwindow.cc, src/gcs-mainwindow.h, src/widgets/gcs-colorswatch-widget.cc, src/widgets/gcs-colorswatch-widget.h, src/widgets/gcs-scheme-selector.cc, src/widgets/gcs-scheme-selector.h, src/widgets/gcs-schemebox-widget.cc, src/widgets/gcs-schemebox-widget.h: Too many changes to list. Finally got a rough UI working. Needs a lot of work yet, but it does display schemes based on the color selected and the type of scheme selected. 2005-07-12 Jonathon Jongsma * libcolorscheme/gcs-scheme-factory.h, libcolorscheme/tests/color-group-test.cc: removed obsolete header file, updated unit tests to use new static Scheme::create() function instead. 2005-07-12 Jonathon Jongsma * doc/requirements.html: adjusted the target version numbers for some of the features now that I have a better understanding of things. 2005-07-11 Jonathon Jongsma * src/gcs-mainwindow.cc, src/gcs-mainwindow.h, src/widgets/gcs-main-menu.cc, src/widgets/gcs-main-menu.h, makefile: changed to use the UIManager framework for the main menu. Needed to move it out to the MainWindow instead of a separate LayoutBox class. Removed old main-menu files. closes #7 2005-07-10 Jonathon Jongsma * src/gcs-mainwindow.cc, src/gcs-mainwindow.h, src/widgets/gcs-main-menu.cc, src/widgets/gcs-main-menu.h, makefile: split out MainMenu menubar and LayoutBox into their own classes to simplify MainWindow code 005-07-10 Jonathon Jongsma * src/gcs-content-box.cc, src/gcs-content-box.h, src/gcs-mainwindow.cc, src/gcs-mainwindow.h, src/widgets/gcs-scheme-selector.cc, src/widgets/gcs-scheme-selector.h, makefile: split out the colorscheme selector ComboBox and its containing HBox to a separate file / class. Modified makefile to add new source files 2005-07-09 Jonathon Jongsma * makefile, src/gcs-colorswatch-widget.cc, src/gcs-colorswatch-widget.h, src/gcs-mainwindow.cc, src/gcs-schemebox-widget.cc, src/gcs-schemebox-widget.h: moved SchemeBox widget and ColorSwatch widget to a widgets/ subdirectory. 2005-07-09 Jonathon Jongsma * libcolorscheme/gcs-scheme.cc, libcolorscheme/gcs-scheme.h: reverted Scheme::create to use a reference to a Color clas so that we don't get segfaults by trying to pack a local variable in the schemebox. * src/gcs-colorswatch-widget.cc, src/gcs-colorswatch-widget.h: added a right-click context menu to the colorswatch. Currently it does nothing but pop up a 2-item menu and print out a message on the console if it's clicked. Functionality to be added later. * src/gcs-mainwindow.cc: got rid of a couple intermediat iterator variables in the combobox constructor * src/gcs-mainwindow.h: added #include for gtkmm/liststore.h 2005-07-08 Jonathon Jongsma * src/gcs-mainwindow.cc, src/gcs-mainwindow.h: changed the scheme selector widget from ComboBoxText to a real ComboBox widget 2005-07-08 Jonathon Jongsma * libcolorscheme/gcs-scheme.cc, libcolorscheme/gcs-scheme.h: changed Color argument from a reference to a regular variable. * src/gcs-colorswatch-widget.cc, src/gcs-colorswatch-widget.h: Added a button press event to the colorswatch widget so that eventually I can implement a right-click menu for it. * src/gcs-schemebox-widget.cc: fixed an error in the destructor 2005-07-08 Jonathon Jongsma * src/gcs-colorswatch-widget.cc: fixed up destructor slightly, moved debug statements to the end of their functions 2005-07-07 Jonathon Jongsma * TODO: added a few tasks and deleted the ones that were there 2005-07-07 Jonathon Jongsma * doc/CODING_STANDARD: fixed some formatting issues due to tab/space format 2005-07-07 Jonathon Jongsma * libcolorscheme/gcs-scheme-factory.cc, libcolorscheme/gcs-scheme.cc, libcolorscheme/gcs-scheme.h: moved all functionality from SchemeFactory to a static function create() in colorscheme::Scheme * makefile: added build rule for the algorithm test window * src/gcs-mainwindow.cc: got the main window into a slightly more presentable state, but it still doesn't do anything * src/gcs-schemebox-widget.cc, src/gcs-schemebox-widget.h: split out display code to a new function setScheme -- still needs a bit of work. * src/tests/display-algorithm.cc: updated to match changes in other modules. 2005-07-03 Jonathon Jongsma * makefile, src/gcs-mainwindow.cc, src/gcs-mainwindow.h: added files to define a class for the main application window. The UI isn't decided yet, just getting the infrastructure in place. * makefile, src/main.cc: Added a skeleton main function 2005-07-03 Jonathon Jongsma * data/colorscheme-dots.svg, data/colorscheme-dots-48x48.png: modified dots image and created a 48x48 png icon to use for the icon * libcolorscheme/gcs-color-group.cc, libcolorscheme/gcs-color-group.h, libcolorscheme/gcs-palette.h, libcolorscheme/gcs-scheme-factory.cc, libcolorscheme/gcs-scheme-factory.h, libcolorscheme/gcs-scheme.h: split the classes derived from ColorGroup into their own header and source files so that they can be included separately * makefile, src/gcs-colorswatch-widget.cc: Added a DEBUG symbol and an #ifdef in the source so that it doesn't spew messages to the console unless we're compiling in debug mode. * src/gcs-schemebox-widget.cc, src/gcs-schemebox-widget.h: added a SchemeBox widget that can be initialized with a colorscheme::Scheme object and displays swatches of all of the colors in the scheme * src/tests/display-algorithm.cc: a simple main function that tests out some of the widget functions. Will probably be removed at some point. Currently it displays a SchemeBox for each type of colorscheme algorithm. * makefile: changed some of the executable filenames, updated .PHONY targets, added new source files, etc. 2005-07-03 Jonathon Jongsma * src/colorscheme/gcs-colorswatch-widget.cc, src/colorscheme/gcs-colorswatch-widget.h: moved source files from src/colorscheme to src/ * makefile: updated makefile to new directory structure 2005-07-03 Jonathon Jongsma * src/colorscheme/gcs-colorswatch-widget.h, src/lib/gcs-checked-int.h, src/lib/gcs-color-group.cc, src/lib/gcs-color-group.h, src/lib/gcs-color.cc, src/lib/gcs-color.h, src/lib/gcs-types.cc, src/lib/gcs-types.h, src/lib/tests/color-group-test.cc, src/lib/tests/color-group-test.h, src/lib/tests/color_test.cc, src/lib/tests/color_test.h, src/lib/tests/test_main.cc: rearranged directory structure so that the library code is now located in libcolorscheme/ under the project root, instead of src/lib * makefile: updated to reflect directory structure change 2005-07-02 Jonathon Jongsma * src/colorscheme/gcs-colorswatch-widget.cc: Changed so that the Gdk::Window background color gets set on expose_event instead of on_realize. This makes it so that changing the GNOME application font doesn't clear the background color. Fixes ticket:5 * src/colorscheme/gcs-colorswatch-widget.cc: Made the text display inside the ColorSwatch widget dependant on the size set for the widget. If the size is too small, it will only print the hexString, otherwise it'll also print the RGB and HSV numbers. 2005-07-02 jonathon * makefile : Yes, it's a mess, I know. * src/colorscheme/gcs-colorswatch-widget.* : The Swatch widget now renders more or less correctly, including a display of the hexString centered on the swatch. It's not perfect yet, but it works ok. * src/lib/gcs-color.* : changed getHexString() function to be able to return a hex string with a '#' on the front for use by Gdk::GC::alloc_color(). Also added an assignment operator implementation. 2005-06-30 jonathon * doc/Doxyfile : added call graphs, modified to include all files under src, not just src/lib * src/colorscheme/gcs-colorswatch-widget.* : Started implementing a custom color swatch widget in gtkmm 2005-06-29 jonathon * doc/Doxyfile : ignore tests directory for API documentation, don't produce RTF output by default * src/lib/gcs-checked-int.h, src/lib/gcs-color-group.h : added API documentation to a bunch of classes * src/lib/gcs-colorscheme.h : removed obsolete file 2005-06-29 jonathon * src/lib/gcs-types.h : added API documentation to the type definitions, changed hue_t to wrap around when adding a value would exceed the upper limit (to simulate a color wheel) * src/lib/gcs-color-group.cc : Implement the SchemeFactory::newScheme method for all available scheme types, although the algorithms likely need a bit of tweaking to get them to look decent, especially the monochromatic algorithm. * src/lib/gcs-color.* : removed validation functions for color types, since it's taken care of with exceptions (or, in the case of hue_t, rollover) now. This required changes to setXXX functions. * src/lib/tests/color-group-test.cc : added a few things to test out the scheme generation, although it's really just a hack for now to see if it was working at all. Real tests will have to be written yet. 2005-06-28 jonathon * doc/colorscheme.zuml : updated architecture * src/lib/gcs-color-group.*, src/lib/tests/color-group-test.* : Added some classes to implement groups of colors, which can be used for color schemes, palettes, bookmark lists, etc. Support is still very rudimentary at this point. * src/lib/gcs-color.* : added a operator<< to the Color class, so we can print a representation of a Color class easily. * makefile : added support for new color group classes 2005-06-28 jonathon * src/lib/* : renamed a bunch of files to gcs-* format * COPYING : fixed formatting 2005-06-28 jonathon * src/lib/checkedInt.h : replaced checkedInt.cc * src/lib/color.*, src/lib/types.h : more rework to incorporate new color types, especially fixing type cast warnings, etc. * src/lib/tests/color_test.h : catch exceptions in invalid input tests * makefile : reorganized the makefile slightly to make a test target, a debug target, and a production target. 2005-06-27 jonathon * src/lib/checkedInt.cc : added a new range-checked integer type that can be used for color values * src/lib/color.[cc|h], src/lib/types[cc|h], src/lib/tests/color_test.cc: fairly major rework to use the new range-checked color types and class-based tColorHsv and tColorRgb. Many tests that test for invalid inputs now fail on a out-of-range exception that isn't handled. These tests should be updated,but otherwise, the same tests still fail due to off-by-one issues. 2005-06-26 jonathon * src/lib/color.h, src/lib/color.cc: added copy constructor and operator== function (fixes ticket:3) * doc/requirements.html: moved gettext and autotools to release 0.3 2005-06-26 jonathon * src/lib/color.h, src/lib/color.cc, src/lib/tests/color_test.cc: changed all member functions setFrom*() to setColor() overloaded functions to make the API simpler. 2005-06-21 jonathon * ./, doc/ : set svn:ignore properties to ignore generated and backup files 2005-06-20 jonathon * doc/colorscheme.zuml : updated architecture drawing to match current code 2005-06-20 jonathon * src/lib/color.cc : implemented updateHexFromHsv, updateHexFromRgb, hexToHsv, and hsvToHex, which were causing some tests to fail * makefile : added header prerequisite to build rules to force a rebuild on header file changes. There's probably a better way to do this though. * src/lib/tests/color_test.h : adjusted include path for color.h, since it was having trouble finding the file. 2005-06-20 jonathon * makefile: moved to root of directory structure, which required a few path changes, etc. Added a cleandoc target for cleaning doxygen-generated API documentation 2005-06-18 jonathon * src/lib/tests/color_test.cc: fixed a regression from last change. Implemented remaining three tests. * src/lib/color.cc, src/lib/tests/color_test.cc: added exceptions to normalizeHex so that we can tell when an invalid string is passed in. Also added test assertion to verify that hexstring value is not updated when an exception is thrown. * src/lib/types.cc: reverted to stricter operator== behavior until I figure out what the issue is. Some of the colors have more than one attribute that is off by one, which is slightly concerning. * makefile: added doc target to build doxygen documentation 2005-06-18 jonathon * src/lib/tests/color_test.cc: reformatted code, used some new functions to streamline things a bit 2005-06-18 jonathon * src/lib/tests/color_test.cc, src/lib/tests/color_test.h: added 3 more tests and implemented 6 others. Currently only 4 are unimplemented, and all that are implemented pass. * src/lib/color.cc, src/lib/color.h: overloaded validation functions so that you can validate tColorRgb and tColorHsv structions all at once instead of doing them attribute-by-attribute. * src/lib/types.cc, src/lib/types.h: changed operator== for tColorHsv and tColorRgb so that they now return true if only one of the attributes is different by 1. Rounding was causing differences of one between conversions in colorscheme and gimp. 2005-06-16 15:28 jonathon * src/lib/color.cc, src/lib/color.h: * Replaced tReturnStatus with bool on all functions * made conversion and validation functions (i.e. rgbToHex, etc) into public static member functions * changed a lot of function arguments to const * added functions hsvToHex and hexToHsv * added functions updateHexFromRgb and updateHexFromHsv * moved remaining private functions and attributes to protected 2005-06-16 03:33 jonathon * src/lib/color.cc, src/lib/color.h, src/lib/colorscheme.h, src/lib/tests/color_test.cc, src/lib/tests/color_test.h, src/lib/tests/test_main.cc, src/lib/types.cc, src/lib/types.h: Reformatted source files to use spaces instead of tabs 2005-06-16 03:10 jonathon * src/lib/color.cc, src/lib/color.h, src/lib/tests/color_test.cc, src/lib/tests/color_test.h: * Implemented a bunch more tests (only 11 fail now) * Implemented setting a color from hex string * a couple other minor things 2005-06-16 02:14 jonathon * src/lib/types.cc, src/lib/types.h: Added comparison (operator==) for tColorRgb and tColorHsv types 2005-06-15 18:43 jonathon * doc/Doxyfile, src/lib/color.h, src/lib/types.cc, src/lib/types.h: Updated a lot of api documentation comments. Tweaked a few configuration settings in the doxygen config file 2005-06-15 03:47 jonathon * src/lib/color.cc, src/lib/color.h, src/lib/tests/color_test.cc: Changed some function signatures to take tColorXxx types instead of individual color bytes. Added about 10+ test cases that now pass. 2005-06-14 17:57 jonathon * data/colorscheme-dots.svg: New potential logo-type image. Still quite rough. 2005-06-14 17:56 jonathon * src/lib/tests/color_test.cc, src/lib/tests/color_test.h: Implemented a few more unit tests, removed a few redundant unit test cases 2005-06-14 04:09 jonathon * src/lib/color.cc, src/lib/tests/color_test.cc, src/lib/tests/color_test.h: implemented setting color from HSV -- got a few more unit test cases to pass 2005-06-14 03:25 jonathon * src/lib/color.cc, src/lib/tests/color_test.cc, src/lib/tests/test_main.cc, src/lib/types.cc: [sigh] clean up rename details 2005-06-14 03:24 jonathon * src/lib/color.cc, src/lib/color.cpp, src/lib/makefile, src/lib/tests/color_test.cc, src/lib/tests/color_test.cpp, src/lib/tests/test_main.cc, src/lib/tests/test_main.cpp, src/lib/types.cc, src/lib/types.cpp: Renamed files to use the .cc extension instead of .cpp to follow GNU convention more closely 2005-06-14 03:20 jonathon * src/lib/makefile, src/lib/types.cpp, src/lib/types.h: Added operator<< overloading for color types (rgb and hsv) 2005-06-13 21:54 jonathon * src/lib/color.cpp, src/lib/color.h, src/lib/tests/color_test.cpp, src/lib/tests/color_test.h: Many fixes involving hexStrings: * Implemented hexString constructor * implemented hexToRgb function * implemented normalizeHex function * added some test cases for hex string normalization 2005-06-03 04:11 jonathon * src/lib/makefile: build with debugging symbols 2005-05-31 21:58 jonathon * src/lib/color.cpp: Simplified stringstream hex conversion (using uppercase manipulator) 2005-05-27 03:14 jonathon * src/lib/makefile: Added a simple makefile for compiling unit tests until I get around to integrating autotools 2005-05-27 03:11 jonathon * src/lib/color.cpp, src/lib/color.h, src/lib/tests/color_test.cpp, src/lib/tests/color_test.h, src/lib/types.h: fairly substantial rewrite of some things. * made rgb and hsv structs instead of individual r, g, b attributes * got rgb to hsv conversion (and vice versa) working more-or-less * added a few tests for rgb to hsv conversion * got a few more tests passing 2005-05-26 02:40 jonathon * src/lib/color.cpp, src/lib/tests/color_test.cpp: Test for Color's default constructor passes 2005-05-24 22:08 jonathon * doc/CODING_STANDARD: Added more detail to the coding standard 2005-05-24 19:12 jonathon * doc/Doxyfile: Added doxygen configuration file 2005-05-24 17:06 jonathon * src/lib/color.cpp, src/lib/color.h: Added doxygen documentation for the Color class 2005-05-24 15:52 jonathon * src/lib/tests/color_test.cpp: fix for issue with CPPUNIT_ASSERT_EQUAL with Glib::ustring 2005-05-24 15:46 jonathon * src/lib/tests/color_test.cpp: Changed tests from CPPUNIT_ASSERT to CPPUNIT_ASSERT_EQUAL 2005-05-24 15:39 jonathon * src/lib/color.cpp, src/lib/color.h, src/lib/tests/color_test.cpp: Fixed some things that allow test suite to compile for setFromRgb tests. Tests still fail since Color class isn't implmented, but the tests run 2005-05-24 15:01 jonathon * CODING_STANDARD, doc/CODING_STANDARD: moved coding standard doc into the docs/ directory 2005-05-24 14:59 jonathon * src/lib/tests/color_test.cpp, src/lib/tests/color_test.h: Implemented tests for setFromRgb; untested 2005-05-24 13:56 jonathon * CODING_STANDARD, TODO: Added rough coding standard 2005-05-24 02:43 jonathon * src/lib/color.cpp, src/lib/color.h, src/lib/tests/color_test.cpp, src/lib/tests/color_test.h, src/lib/tests/test_main.cpp, src/lib/types.h: implemented a couple of tests, and implemented some functionality for the Color class -- got the test cases to compile 2005-05-23 18:49 jonathon * src/lib/color.h, src/lib/tests/color_test.cpp, src/lib/tests/color_test.h: Added a few more test cases, started coding tests 2005-05-23 16:26 jonathon * src/lib/color.cc, src/lib/color.cpp, src/lib/color.h, src/lib/tests/color_test.cpp, src/lib/tests/color_test.h, src/lib/tests/test_main.cpp, src/lib/types.h: Added unit test framework based on CppUnit. Needs more work yet 2005-05-20 19:00 jonathon * src/lib/color.h: I think it'll be easier to have h, s, and v as attributes rather than generating them all the time. 2005-05-20 18:54 jonathon * src/lib/color.cc, src/lib/color.h, src/lib/colorscheme.h, src/lib/types.h: Changed some GPL boilerplate that was wrong 2005-05-20 18:39 jonathon * TODO, src/lib/tests: Added TODO and tests directory 2005-05-17 16:30 jonathon * src/lib/color.cc, src/lib/color.h, src/lib/colorscheme.h, src/lib/types.h: Added GPL boilerplate 2005-05-17 04:02 jonathon * src/lib/color.h: forgot to include the types header file 2005-05-17 03:58 jonathon * doc/colorscheme.zuml, src/lib/color.h: Added a bit more detail to the Color class 2005-05-16 21:14 jonathon * src/lib/color.h: color.h: updated to match architecture drawing a bit more. Still needs quite a bit of work and thought. Right now it's just experimentation 2005-05-16 20:58 jonathon * doc/requirements.html: requirements: should -> shall and other fixes 2005-05-16 20:47 jonathon * doc/requirements.html: added requirements about color naming 2005-05-16 19:13 jonathon * doc/requirements.html: added 'milestone' field to requirements documentation, indicating which release it should be a part of. Added requirements for each separate color scheme algorithm, other minor fixes 2005-05-14 19:06 jonathon * doc/colorscheme.zuml, doc/colorscheme_architecture.zargo: Changed architecture format from argouml to poseidon for UML. It's not a completely free tool, but there is based on argouml and there's a community edition available for free for non-commercial purposes. Also updated the architecture somewhat. 2005-05-13 03:30 jonathon * doc/colorscheme_architecture.zargo: updated architecture drawing 2005-05-12 03:31 jonathon * doc/colorscheme_architecture.zargo: added some detail to architecture design doc. 2005-05-12 02:04 jonathon * doc/requirements.html: added a couple requirements (gettext, persistent history) 2005-05-11 14:55 jonathon * doc/requirements.html: Add more detail to the overview and use cases 2005-05-11 03:57 jonathon * doc/colorscheme_architecture.zargo: add initial uml architecture design (created with argouml) 2005-05-11 03:57 jonathon * doc/requirements.html: minor change to wording of requirement R033 2005-05-10 02:18 jonathon * data, data/colorscheme.svg: added a svg image that I'm using for the header in the trac environment. It could inspire a potential logo, or it might be discarded completely in the future. 2005-05-08 05:56 jonathon * COPYING, doc/requirements.html: more requirements mods, added license file 2005-05-08 04:45 jonathon * AUTHORS: Add authors file 2005-05-06 18:46 jonathon * doc/requirements.html: more re-organization and addition of requirements 2005-05-06 14:31 jonathon * doc/requirements.html: more requirements re-org, added colorschemer and gimp palette compatibility 2005-05-05 04:19 jonathon * doc/requirements.html: reorganized requirements, added assumption about C++ 2005-05-05 03:51 jonathon * doc/requirements.html: updated styling of requirments document 2005-05-04 22:29 jonathon * doc/requirements.html: added a bunch of requirements -- many derived from colorschemer features 2005-05-04 18:25 jonathon * doc/requirements.html: modified css styles of requirements doc 2005-05-04 18:12 jonathon * colorscheme, ., doc, doc/requirements.html, src, src/lib, src/lib/color.cc, src/lib/color.h, src/lib/colorscheme.h, src/lib/types.h: imported colorscheme agave-0.4.7/aclocal.m40000644000175000017500000017711311224442711011376 00000000000000# generated automatically by aclocal 1.10.2 -*- Autoconf -*- # Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, # 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. # 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.63],, [m4_warning([this file was generated for autoconf 2.63. 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'.])]) dnl AM_GCONF_SOURCE_2 dnl Defines GCONF_SCHEMA_CONFIG_SOURCE which is where you should install schemas dnl (i.e. pass to gconftool-2 dnl Defines GCONF_SCHEMA_FILE_DIR which is a filesystem directory where dnl you should install foo.schemas files dnl AC_DEFUN([AM_GCONF_SOURCE_2], [ if test "x$GCONF_SCHEMA_INSTALL_SOURCE" = "x"; then GCONF_SCHEMA_CONFIG_SOURCE=`gconftool-2 --get-default-source` else GCONF_SCHEMA_CONFIG_SOURCE=$GCONF_SCHEMA_INSTALL_SOURCE fi AC_ARG_WITH([gconf-source], AC_HELP_STRING([--with-gconf-source=sourceaddress], [Config database for installing schema files.]), [GCONF_SCHEMA_CONFIG_SOURCE="$withval"],) AC_SUBST(GCONF_SCHEMA_CONFIG_SOURCE) AC_MSG_RESULT([Using config source $GCONF_SCHEMA_CONFIG_SOURCE for schema installation]) if test "x$GCONF_SCHEMA_FILE_DIR" = "x"; then GCONF_SCHEMA_FILE_DIR='$(sysconfdir)/gconf/schemas' fi AC_ARG_WITH([gconf-schema-file-dir], AC_HELP_STRING([--with-gconf-schema-file-dir=dir], [Directory for installing schema files.]), [GCONF_SCHEMA_FILE_DIR="$withval"],) AC_SUBST(GCONF_SCHEMA_FILE_DIR) AC_MSG_RESULT([Using $GCONF_SCHEMA_FILE_DIR as install directory for schema files]) AC_ARG_ENABLE(schemas-install, AC_HELP_STRING([--disable-schemas-install], [Disable the schemas installation]), [case ${enableval} in yes|no) ;; *) AC_MSG_ERROR([bad value ${enableval} for --enable-schemas-install]) ;; esac]) AM_CONDITIONAL([GCONF_SCHEMAS_INSTALL], [test "$enable_schemas_install" != no]) ]) # 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.in. 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_in,[],[ 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 Do not call GNOME_DOC_DEFINES directly. It is split out from dnl GNOME_DOC_INIT to allow gnome-doc-utils to bootstrap off itself. AC_DEFUN([GNOME_DOC_DEFINES], [ AC_ARG_WITH([help-dir], AC_HELP_STRING([--with-help-dir=DIR], [path to help docs]),, [with_help_dir='${datadir}/gnome/help']) HELP_DIR="$with_help_dir" AC_SUBST(HELP_DIR) AC_ARG_WITH([omf-dir], AC_HELP_STRING([--with-omf-dir=DIR], [path to OMF files]),, [with_omf_dir='${datadir}/omf']) OMF_DIR="$with_omf_dir" AC_SUBST(OMF_DIR) AC_ARG_WITH([help-formats], AC_HELP_STRING([--with-help-formats=FORMATS], [list of formats]),, [with_help_formats='']) DOC_USER_FORMATS="$with_help_formats" AC_SUBST(DOC_USER_FORMATS) AC_ARG_ENABLE([scrollkeeper], [AC_HELP_STRING([--disable-scrollkeeper], [do not make updates to the scrollkeeper database])],, enable_scrollkeeper=yes) AM_CONDITIONAL([ENABLE_SK],[test "$gdu_cv_have_gdu" = "yes" -a "$enable_scrollkeeper" = "yes"]) dnl disable scrollkeeper automatically for distcheck DISTCHECK_CONFIGURE_FLAGS="--disable-scrollkeeper $DISTCHECK_CONFIGURE_FLAGS" AC_SUBST(DISTCHECK_CONFIGURE_FLAGS) AM_CONDITIONAL([HAVE_GNOME_DOC_UTILS],[test "$gdu_cv_have_gdu" = "yes"]) ]) # GNOME_DOC_INIT ([MINIMUM-VERSION],[ACTION-IF-FOUND],[ACTION-IF-NOT-FOUND]) # AC_DEFUN([GNOME_DOC_INIT], [AC_REQUIRE([AC_PROG_LN_S])dnl ifelse([$1],,[gdu_cv_version_required=0.3.2],[gdu_cv_version_required=$1]) PKG_CHECK_EXISTS([gnome-doc-utils >= $gdu_cv_version_required], [gdu_cv_have_gdu=yes],[gdu_cv_have_gdu=no]) if test "$gdu_cv_have_gdu" = "yes"; then ifelse([$2],,[:],[$2]) else ifelse([$3],,[AC_MSG_ERROR([gnome-doc-utils >= $gdu_cv_version_required not found])],[$3]) fi GNOME_DOC_DEFINES ]) 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 exetuted 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], ...) # nls.m4 serial 3 (gettext-0.15) dnl Copyright (C) 1995-2003, 2005-2006 Free Software Foundation, 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 "$PKG_CONFIG"; then if test -n "$$1"; then pkg_cv_[]$1="$$1" else PKG_CHECK_EXISTS([$3], [pkg_cv_[]$1=`$PKG_CONFIG --[]$2 "$3" 2>/dev/null`], [pkg_failed=yes]) fi 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 --errors-to-stdout --print-errors "$2"` else $1[]_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "$2"` 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) 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.10' 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.10.2], [], [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.10.2])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 # 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 8 # 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 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 # 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 # 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 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 case $depmode in 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 ;; none) break ;; esac # 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. if depmode=$depmode \ source=sub/conftest.c object=sub/conftest.${OBJEXT-o} \ depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \ $SHELL ./depcomp $depcc -c -o sub/conftest.${OBJEXT-o} 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 sub/conftest.${OBJEXT-o} 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 4 # _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 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 13 # 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.60])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) AM_PROG_INSTALL_SH AM_PROG_INSTALL_STRIP 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 ]) ]) # 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 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 install_sh=${install_sh-"\$(SHELL) $am_aux_dir/install-sh"} 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])]) # Check to see how 'make' treats includes. -*- Autoconf -*- # Copyright (C) 2001, 2002, 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 3 # 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 done .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 # We grep out `Entering directory' and `Leaving directory' # messages which can occur if `w' ends up in MAKEFLAGS. # In particular we don't look at `^make:' because GNU make might # be invoked under some other name (usually "gmake"), in which # case it prints its new name instead of `make'. if test "`$am_make -s -f confmf 2> /dev/null | grep -v 'ing directory'`" = "done"; then am__include=include am__quote= _am_result=GNU fi # Now try BSD make style include. if test "$am__include" = "#"; then echo '.include "confinc"' > confmf if test "`$am_make -s -f confmf 2> /dev/null`" = "done"; then am__include=.include am__quote="\"" _am_result=BSD fi 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 # 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_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 test x"${MISSING+set}" = xset || MISSING="\${SHELL} $am_aux_dir/missing" # 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 # 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_SANITY_CHECK # --------------- AC_DEFUN([AM_SANITY_CHECK], [AC_MSG_CHECKING([whether build environment is sane]) # Just in case sleep 1 echo timestamp > conftest.file # 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 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_SUBST_NOTMAKE(VARIABLE) # --------------------------- # Prevent Automake from outputting VARIABLE = @VARIABLE@ in Makefile.in. # This macro is traced by Automake. AC_DEFUN([_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 m4_include([acinclude.m4]) agave-0.4.7/TODO0000644000175000017500000000072610663715205010230 00000000000000- new Color class - new color selectors (Sliders for R, G, B, H, S, V) - Better colorscheme display widget - add printing support with new GTK printing API (print scheme 'proof') - Change Palette view to canvas-like thing instead of lots of widgets (?) - Feature: import all colors from a website (stylesheets, html, etc) - Documentation (yelp) - use libglade for UI? For tasks that need to be worked on, see the bug tracker at: https://gna.org/bugs/?group=colorscheme agave-0.4.7/configure0000755000175000017500000111404511224442713011443 00000000000000#! /bin/sh # Guess values for system-dependent variables and create Makefiles. # Generated by GNU Autoconf 2.63 for Agave 0.4.7. # # Report bugs to . # # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, # 2002, 2003, 2004, 2005, 2006, 2007, 2008 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 # PATH needs CR # 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_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 if (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 # Support unset when possible. if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then as_unset=unset else as_unset=false 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); exit 1; } fi # Work around bugs in pre-3.0 UWIN ksh. for as_var in ENV MAIL MAILPATH do ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var done PS1='$ ' PS2='> ' PS4='+ ' # NLS nuisances. LC_ALL=C export LC_ALL LANGUAGE=C export LANGUAGE # Required to use basename. 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 # Name of the executable. 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'` # CDPATH. $as_unset CDPATH if test "x$CONFIG_SHELL" = x; then if (eval ":") 2>/dev/null; then as_have_required=yes else as_have_required=no fi if test $as_have_required = yes && (eval ": (as_func_return () { (exit \$1) } as_func_success () { as_func_return 0 } as_func_failure () { as_func_return 1 } as_func_ret_success () { return 0 } as_func_ret_failure () { return 1 } exitcode=0 if as_func_success; then : else exitcode=1 echo as_func_success failed. fi if as_func_failure; then exitcode=1 echo as_func_failure succeeded. fi if as_func_ret_success; then : else exitcode=1 echo as_func_ret_success failed. fi if as_func_ret_failure; then exitcode=1 echo as_func_ret_failure succeeded. fi if ( set x; as_func_ret_success y && test x = \"\$1\" ); then : else exitcode=1 echo positional parameters were not saved. fi test \$exitcode = 0) || { (exit 1); exit 1; } ( as_lineno_1=\$LINENO as_lineno_2=\$LINENO test \"x\$as_lineno_1\" != \"x\$as_lineno_2\" && test \"x\`expr \$as_lineno_1 + 1\`\" = \"x\$as_lineno_2\") || { (exit 1); exit 1; } ") 2> /dev/null; then : else as_candidate_shells= as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. case $as_dir in /*) for as_base in sh bash ksh sh5; do as_candidate_shells="$as_candidate_shells $as_dir/$as_base" done;; esac done IFS=$as_save_IFS for as_shell in $as_candidate_shells $SHELL; do # Try only shells that exist, to save several forks. if { test -f "$as_shell" || test -f "$as_shell.exe"; } && { ("$as_shell") 2> /dev/null <<\_ASEOF 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 : _ASEOF }; then CONFIG_SHELL=$as_shell as_have_required=yes if { "$as_shell" 2> /dev/null <<\_ASEOF 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_func_return () { (exit $1) } as_func_success () { as_func_return 0 } as_func_failure () { as_func_return 1 } as_func_ret_success () { return 0 } as_func_ret_failure () { return 1 } exitcode=0 if as_func_success; then : else exitcode=1 echo as_func_success failed. fi if as_func_failure; then exitcode=1 echo as_func_failure succeeded. fi if as_func_ret_success; then : else exitcode=1 echo as_func_ret_success failed. fi if as_func_ret_failure; then exitcode=1 echo as_func_ret_failure succeeded. fi if ( set x; as_func_ret_success y && test x = "$1" ); then : else exitcode=1 echo positional parameters were not saved. fi test $exitcode = 0) || { (exit 1); exit 1; } ( as_lineno_1=$LINENO as_lineno_2=$LINENO test "x$as_lineno_1" != "x$as_lineno_2" && test "x`expr $as_lineno_1 + 1`" = "x$as_lineno_2") || { (exit 1); exit 1; } _ASEOF }; then break fi fi done if test "x$CONFIG_SHELL" != x; then for as_var in BASH_ENV ENV do ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var done export CONFIG_SHELL exec "$CONFIG_SHELL" "$as_myself" ${1+"$@"} fi if test $as_have_required = no; then echo This script requires a shell more modern than all the echo shells that I found on your system. Please install a echo modern shell, or manually run the script under such a echo shell if you do have one. { (exit 1); exit 1; } fi fi fi (eval "as_func_return () { (exit \$1) } as_func_success () { as_func_return 0 } as_func_failure () { as_func_return 1 } as_func_ret_success () { return 0 } as_func_ret_failure () { return 1 } exitcode=0 if as_func_success; then : else exitcode=1 echo as_func_success failed. fi if as_func_failure; then exitcode=1 echo as_func_failure succeeded. fi if as_func_ret_success; then : else exitcode=1 echo as_func_ret_success failed. fi if as_func_ret_failure; then exitcode=1 echo as_func_ret_failure succeeded. fi if ( set x; as_func_ret_success y && test x = \"\$1\" ); then : else exitcode=1 echo positional parameters were not saved. fi test \$exitcode = 0") || { echo No shell found that supports shell functions. echo Please tell bug-autoconf@gnu.org about your system, echo including any error possibly output before this message. echo This can help us improve future autoconf versions. echo Configuration will now proceed without shell functions. } as_lineno_1=$LINENO as_lineno_2=$LINENO test "x$as_lineno_1" != "x$as_lineno_2" && test "x`expr $as_lineno_1 + 1`" = "x$as_lineno_2" || { # Create $as_me.lineno as a copy of $as_myself, but with $LINENO # uniformly replaced by the line number. The first 'sed' inserts a # line-number line after each line using $LINENO; the second 'sed' # does the real work. The second script uses 'N' to pair each # line-number line with the line containing $LINENO, and appends # trailing '-' during substitution so that $LINENO is not a special # case at line end. # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the # scripts with optimization help from Paolo Bonzini. 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 { (exit 1); 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 } if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then as_dirname=dirname else as_dirname=false fi ECHO_C= ECHO_N= ECHO_T= case `echo -n x` in -n*) case `echo 'x\c'` in *c*) ECHO_T=' ';; # ECHO_T is single tab character. *) ECHO_C='\c';; esac;; *) ECHO_N='-n';; esac if expr a : '\(a\)' >/dev/null 2>&1 && test "X`expr 00001 : '.*\(...\)'`" = X001; then as_expr=expr else as_expr=false fi 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=: 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 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= SHELL=${CONFIG_SHELL-/bin/sh} # Identity of this package. PACKAGE_NAME='Agave' PACKAGE_TARNAME='agave' PACKAGE_VERSION='0.4.7' PACKAGE_STRING='Agave 0.4.7' PACKAGE_BUGREPORT='https://gna.org/bugs/?group=colorscheme' ac_unique_file="src/main.cc" # 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='LTLIBOBJS LIBOBJS AGAVE_PALETTEDIR AGAVE_UIDIR AGAVE_ICONDIR AGAVE_LOCALEDIR AGAVE_CFLAGS AGAVE_LIBS CPPUNIT_LIBS CPPUNIT_CFLAGS CPPUNIT_CONFIG HAVE_CPPUNIT_FALSE HAVE_CPPUNIT_TRUE GCONF_SCHEMAS_INSTALL_FALSE GCONF_SCHEMAS_INSTALL_TRUE GCONF_SCHEMA_FILE_DIR GCONF_SCHEMA_CONFIG_SOURCE GCONFTOOL GCONFMM_LIBS GCONFMM_CFLAGS GNOME_LIBS GNOME_CFLAGS BUILD_CAIRO_RING_FALSE BUILD_CAIRO_RING_TRUE CAIRO_RING_LIBS CAIRO_RING_CFLAGS PRINTING_LIBS PRINTING_CFLAGS LIBGLADEMM_LIBS LIBGLADEMM_CFLAGS GTKMM_LIBS GTKMM_CFLAGS MKINSTALLDIRS POSUB POFILES PO_IN_DATADIR_FALSE PO_IN_DATADIR_TRUE INTLLIBS INSTOBJEXT GMOFILES CATOBJEXT CATALOGS MSGFMT_OPTS EGREP GREP CXXCPP am__fastdepCC_FALSE am__fastdepCC_TRUE CCDEPMODE ac_ct_CC CFLAGS CC 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 TR UNIQ SORT SED RANLIB am__fastdepCXX_FALSE am__fastdepCXX_TRUE CXXDEPMODE AMDEPBACKSLASH AMDEP_FALSE AMDEP_TRUE am__quote am__include DEPDIR OBJEXT EXEEXT ac_ct_CXX CPPFLAGS LDFLAGS CXXFLAGS CXX PACKAGE_WEBSITE GIT_PATH HAVE_GNOME_DOC_UTILS_FALSE HAVE_GNOME_DOC_UTILS_TRUE DISTCHECK_CONFIGURE_FLAGS ENABLE_SK_FALSE ENABLE_SK_TRUE DOC_USER_FORMATS OMF_DIR HELP_DIR PKG_CONFIG LN_S 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_BUGREPORT PACKAGE_STRING PACKAGE_VERSION PACKAGE_TARNAME PACKAGE_NAME PATH_SEPARATOR SHELL' ac_subst_files='' ac_user_opts=' enable_option_checking with_help_dir with_omf_dir with_help_formats enable_scrollkeeper enable_dependency_tracking enable_nls enable_gnome enable_gconf with_gconf_source with_gconf_schema_file_dir enable_schemas_install enable_debug_mode enable_more_warnings enable_cppunit with_cppunit_prefix with_cppunit_exec_prefix ' ac_precious_vars='build_alias host_alias target_alias PKG_CONFIG CXX CXXFLAGS LDFLAGS LIBS CPPFLAGS CCC CC CFLAGS CXXCPP GTKMM_CFLAGS GTKMM_LIBS LIBGLADEMM_CFLAGS LIBGLADEMM_LIBS PRINTING_CFLAGS PRINTING_LIBS CAIRO_RING_CFLAGS CAIRO_RING_LIBS GNOME_CFLAGS GNOME_LIBS GCONFMM_CFLAGS GCONFMM_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_echo "$as_me: error: invalid feature name: $ac_useropt" >&2 { (exit 1); exit 1; }; } 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_echo "$as_me: error: invalid feature name: $ac_useropt" >&2 { (exit 1); exit 1; }; } 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_echo "$as_me: error: invalid package name: $ac_useropt" >&2 { (exit 1); exit 1; }; } 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_echo "$as_me: error: invalid package name: $ac_useropt" >&2 { (exit 1); exit 1; }; } 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_echo "$as_me: error: unrecognized option: $ac_option Try \`$0 --help' for more information." >&2 { (exit 1); exit 1; }; } ;; *=*) ac_envvar=`expr "x$ac_option" : 'x\([^=]*\)='` # Reject names that are not valid shell variable names. expr "x$ac_envvar" : ".*[^_$as_cr_alnum]" >/dev/null && { $as_echo "$as_me: error: invalid variable name: $ac_envvar" >&2 { (exit 1); exit 1; }; } 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_echo "$as_me: error: missing argument to $ac_option" >&2 { (exit 1); exit 1; }; } fi if test -n "$ac_unrecognized_opts"; then case $enable_option_checking in no) ;; fatal) { $as_echo "$as_me: error: unrecognized options: $ac_unrecognized_opts" >&2 { (exit 1); exit 1; }; } ;; *) $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_echo "$as_me: error: expected an absolute directory name for --$ac_var: $ac_val" >&2 { (exit 1); exit 1; }; } 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_echo "$as_me: error: working directory cannot be determined" >&2 { (exit 1); exit 1; }; } test "X$ac_ls_di" = "X$ac_pwd_ls_di" || { $as_echo "$as_me: error: pwd does not report name of working directory" >&2 { (exit 1); exit 1; }; } # 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_echo "$as_me: error: cannot find sources ($ac_unique_file) in $srcdir" >&2 { (exit 1); exit 1; }; } fi ac_msg="sources are in $srcdir, but \`cd $srcdir' does not work" ac_abs_confdir=`( cd "$srcdir" && test -r "./$ac_unique_file" || { $as_echo "$as_me: error: $ac_msg" >&2 { (exit 1); exit 1; }; } 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 Agave 0.4.7 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/agave] --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 _ACEOF fi if test -n "$ac_init_help"; then case $ac_init_help in short | recursive ) echo "Configuration of Agave 0.4.7:";; 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] --disable-scrollkeeper do not make updates to the scrollkeeper database --disable-dependency-tracking speeds up one-time build --enable-dependency-tracking do not reject slow dependency extractors --disable-nls do not use Native Language Support --enable-gnome build with libgnome support [default=yes] --enable-gconf build with gconfmm support [default=yes] --disable-schemas-install Disable the schemas installation --enable-debug-mode build with debug settings (no optimization, test coverage) --enable-more-warnings Maximum compiler warnings --enable-cppunit build unit tests [default], [=], [yes] Optional Packages: --with-PACKAGE[=ARG] use PACKAGE [ARG=yes] --without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no) --with-help-dir=DIR path to help docs --with-omf-dir=DIR path to OMF files --with-help-formats=FORMATS list of formats --with-gconf-source=sourceaddress Config database for installing schema files. --with-gconf-schema-file-dir=dir Directory for installing schema files. --with-cppunit-prefix=PFX Prefix where CppUnit is installed (optional) --with-cppunit-exec-prefix=PFX Exec prefix where CppUnit is installed (optional) Some influential environment variables: PKG_CONFIG path to pkg-config utility CXX C++ compiler command CXXFLAGS 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 C/C++/Objective C preprocessor flags, e.g. -I if you have headers in a nonstandard directory CC C compiler command CFLAGS C compiler flags CXXCPP C++ preprocessor GTKMM_CFLAGS C compiler flags for GTKMM, overriding pkg-config GTKMM_LIBS linker flags for GTKMM, overriding pkg-config LIBGLADEMM_CFLAGS C compiler flags for LIBGLADEMM, overriding pkg-config LIBGLADEMM_LIBS linker flags for LIBGLADEMM, overriding pkg-config PRINTING_CFLAGS C compiler flags for PRINTING, overriding pkg-config PRINTING_LIBS linker flags for PRINTING, overriding pkg-config CAIRO_RING_CFLAGS C compiler flags for CAIRO_RING, overriding pkg-config CAIRO_RING_LIBS linker flags for CAIRO_RING, overriding pkg-config GNOME_CFLAGS C compiler flags for GNOME, overriding pkg-config GNOME_LIBS linker flags for GNOME, overriding pkg-config GCONFMM_CFLAGS C compiler flags for GCONFMM, overriding pkg-config GCONFMM_LIBS linker flags for GCONFMM, 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 Agave configure 0.4.7 generated by GNU Autoconf 2.63 Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008 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 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 Agave $as_me 0.4.7, which was generated by GNU Autoconf 2.63. 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) ac_configure_args0="$ac_configure_args0 '$ac_arg'" ;; 2) ac_configure_args1="$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 ac_configure_args="$ac_configure_args '$ac_arg'" ;; esac done done $as_unset ac_configure_args0 || test "${ac_configure_args0+set}" != set || { ac_configure_args0=; export ac_configure_args0; } $as_unset ac_configure_args1 || test "${ac_configure_args1+set}" != set || { ac_configure_args1=; export 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:$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= ;; #( *) $as_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'; { (exit 1); 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 # 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 # 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 -r "$ac_site_file"; then { $as_echo "$as_me:$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. if test -f "$cache_file"; then { $as_echo "$as_me:$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:$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:$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:$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:$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:$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:$LINENO: former value: \`$ac_old_val'" >&5 $as_echo "$as_me: former value: \`$ac_old_val'" >&2;} { $as_echo "$as_me:$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. *) ac_configure_args="$ac_configure_args '$ac_arg'" ;; esac fi done if $ac_cache_corrupted; then { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} { $as_echo "$as_me:$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_echo "$as_me:$LINENO: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&5 $as_echo "$as_me: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&2;} { (exit 1); exit 1; }; } 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 am__api_version='1.10' ac_aux_dir= for ac_dir in "$srcdir" "$srcdir/.." "$srcdir/../.."; do if test -f "$ac_dir/install-sh"; then ac_aux_dir=$ac_dir ac_install_sh="$ac_aux_dir/install-sh -c" break elif test -f "$ac_dir/install.sh"; then ac_aux_dir=$ac_dir ac_install_sh="$ac_aux_dir/install.sh -c" break elif test -f "$ac_dir/shtool"; then ac_aux_dir=$ac_dir ac_install_sh="$ac_aux_dir/shtool install -c" break fi done if test -z "$ac_aux_dir"; then { { $as_echo "$as_me:$LINENO: error: cannot find install-sh or install.sh in \"$srcdir\" \"$srcdir/..\" \"$srcdir/../..\"" >&5 $as_echo "$as_me: error: cannot find install-sh or install.sh in \"$srcdir\" \"$srcdir/..\" \"$srcdir/../..\"" >&2;} { (exit 1); exit 1; }; } 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:$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:$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:$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 # 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_echo "$as_me:$LINENO: error: ls -t appears to fail. Make sure there is not a broken alias in your environment" >&5 $as_echo "$as_me: error: ls -t appears to fail. Make sure there is not a broken alias in your environment" >&2;} { (exit 1); exit 1; }; } fi test "$2" = conftest.file ) then # Ok. : else { { $as_echo "$as_me:$LINENO: error: newly created file is older than distributed files! Check your system clock" >&5 $as_echo "$as_me: error: newly created file is older than distributed files! Check your system clock" >&2;} { (exit 1); exit 1; }; } fi { $as_echo "$as_me:$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` test x"${MISSING+set}" = xset || MISSING="\${SHELL} $am_aux_dir/missing" # Use eval to expand $SHELL if eval "$MISSING --run true"; then am_missing_run="$MISSING --run " else am_missing_run= { $as_echo "$as_me:$LINENO: WARNING: \`missing' script is too old or missing" >&5 $as_echo "$as_me: WARNING: \`missing' script is too old or missing" >&2;} fi { $as_echo "$as_me:$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 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. test -d ./--version && rmdir ./--version MKDIR_P="$ac_install_sh -d" fi fi { $as_echo "$as_me:$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:$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:$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:$LINENO: result: $AWK" >&5 $as_echo "$AWK" >&6; } else { $as_echo "$as_me:$LINENO: result: no" >&5 $as_echo "no" >&6; } fi test -n "$AWK" && break done { $as_echo "$as_me:$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:$LINENO: result: yes" >&5 $as_echo "yes" >&6; } SET_MAKE= else { $as_echo "$as_me:$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_echo "$as_me:$LINENO: error: source directory already configured; run \"make distclean\" there first" >&5 $as_echo "$as_me: error: source directory already configured; run \"make distclean\" there first" >&2;} { (exit 1); exit 1; }; } 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='agave' VERSION='0.4.7' 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"} install_sh=${install_sh-"\$(SHELL) $am_aux_dir/install-sh"} # 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:$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:$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:$LINENO: result: $STRIP" >&5 $as_echo "$STRIP" >&6; } else { $as_echo "$as_me:$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:$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:$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:$LINENO: result: $ac_ct_STRIP" >&5 $as_echo "$ac_ct_STRIP" >&6; } else { $as_echo "$as_me:$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:$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" # 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:$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:$LINENO: result: yes" >&5 $as_echo "yes" >&6; } else { $as_echo "$as_me:$LINENO: result: no, using $LN_S" >&5 $as_echo "no, using $LN_S" >&6; } fi 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:$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:$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:$LINENO: result: $PKG_CONFIG" >&5 $as_echo "$PKG_CONFIG" >&6; } else { $as_echo "$as_me:$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:$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:$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:$LINENO: result: $ac_pt_PKG_CONFIG" >&5 $as_echo "$ac_pt_PKG_CONFIG" >&6; } else { $as_echo "$as_me:$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:$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:$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:$LINENO: result: yes" >&5 $as_echo "yes" >&6; } else { $as_echo "$as_me:$LINENO: result: no" >&5 $as_echo "no" >&6; } PKG_CONFIG="" fi fi gdu_cv_version_required=0.3.2 if test -n "$PKG_CONFIG" && \ { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"gnome-doc-utils >= \$gdu_cv_version_required\"") >&5 ($PKG_CONFIG --exists --print-errors "gnome-doc-utils >= $gdu_cv_version_required") 2>&5 ac_status=$? $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; then gdu_cv_have_gdu=yes else gdu_cv_have_gdu=no fi if test "$gdu_cv_have_gdu" = "yes"; then : else { { $as_echo "$as_me:$LINENO: error: gnome-doc-utils >= $gdu_cv_version_required not found" >&5 $as_echo "$as_me: error: gnome-doc-utils >= $gdu_cv_version_required not found" >&2;} { (exit 1); exit 1; }; } fi # Check whether --with-help-dir was given. if test "${with_help_dir+set}" = set; then withval=$with_help_dir; else with_help_dir='${datadir}/gnome/help' fi HELP_DIR="$with_help_dir" # Check whether --with-omf-dir was given. if test "${with_omf_dir+set}" = set; then withval=$with_omf_dir; else with_omf_dir='${datadir}/omf' fi OMF_DIR="$with_omf_dir" # Check whether --with-help-formats was given. if test "${with_help_formats+set}" = set; then withval=$with_help_formats; else with_help_formats='' fi DOC_USER_FORMATS="$with_help_formats" # Check whether --enable-scrollkeeper was given. if test "${enable_scrollkeeper+set}" = set; then enableval=$enable_scrollkeeper; else enable_scrollkeeper=yes fi if test "$gdu_cv_have_gdu" = "yes" -a "$enable_scrollkeeper" = "yes"; then ENABLE_SK_TRUE= ENABLE_SK_FALSE='#' else ENABLE_SK_TRUE='#' ENABLE_SK_FALSE= fi DISTCHECK_CONFIGURE_FLAGS="--disable-scrollkeeper $DISTCHECK_CONFIGURE_FLAGS" if test "$gdu_cv_have_gdu" = "yes"; then HAVE_GNOME_DOC_UTILS_TRUE= HAVE_GNOME_DOC_UTILS_FALSE='#' else HAVE_GNOME_DOC_UTILS_TRUE='#' HAVE_GNOME_DOC_UTILS_FALSE= fi # Extract the first word of "git", so it can be a program name with args. set dummy git; ac_word=$2 { $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if test "${ac_cv_path_GIT_PATH+set}" = set; then $as_echo_n "(cached) " >&6 else case $GIT_PATH in [\\/]* | ?:[\\/]*) ac_cv_path_GIT_PATH="$GIT_PATH" # 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_GIT_PATH="$as_dir/$ac_word$ac_exec_ext" $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS test -z "$ac_cv_path_GIT_PATH" && ac_cv_path_GIT_PATH="no" ;; esac fi GIT_PATH=$ac_cv_path_GIT_PATH if test -n "$GIT_PATH"; then { $as_echo "$as_me:$LINENO: result: $GIT_PATH" >&5 $as_echo "$GIT_PATH" >&6; } else { $as_echo "$as_me:$LINENO: result: no" >&5 $as_echo "no" >&6; } fi if test "$GIT_PATH" != "no" ; then { $as_echo "$as_me:$LINENO: checking git revision" >&5 $as_echo_n "checking git revision... " >&6; } GIT_REVISION="`$GIT_PATH describe`" { $as_echo "$as_me:$LINENO: result: $GIT_REVISION" >&5 $as_echo "$GIT_REVISION" >&6; } fi cat >>confdefs.h <<_ACEOF #define GIT_REVISION "$GIT_REVISION" _ACEOF PACKAGE_WEBSITE=http://home.gna.org/colorscheme/ cat >>confdefs.h <<_ACEOF #define PACKAGE_WEBSITE "$PACKAGE_WEBSITE" _ACEOF ac_config_headers="$ac_config_headers config.h" ac_ext=cpp ac_cpp='$CXXCPP $CPPFLAGS' ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_cxx_compiler_gnu ac_ext=cpp ac_cpp='$CXXCPP $CPPFLAGS' ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_cxx_compiler_gnu if test -z "$CXX"; then if test -n "$CCC"; then CXX=$CCC else if test -n "$ac_tool_prefix"; then for ac_prog in g++ c++ gpp aCC CC cxx cc++ cl.exe FCC KCC RCC xlC_r xlC 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:$LINENO: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if test "${ac_cv_prog_CXX+set}" = set; then $as_echo_n "(cached) " >&6 else if test -n "$CXX"; then ac_cv_prog_CXX="$CXX" # 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_CXX="$ac_tool_prefix$ac_prog" $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi CXX=$ac_cv_prog_CXX if test -n "$CXX"; then { $as_echo "$as_me:$LINENO: result: $CXX" >&5 $as_echo "$CXX" >&6; } else { $as_echo "$as_me:$LINENO: result: no" >&5 $as_echo "no" >&6; } fi test -n "$CXX" && break done fi if test -z "$CXX"; then ac_ct_CXX=$CXX for ac_prog in g++ c++ gpp aCC CC cxx cc++ cl.exe FCC KCC RCC xlC_r xlC 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:$LINENO: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if test "${ac_cv_prog_ac_ct_CXX+set}" = set; then $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_CXX"; then ac_cv_prog_ac_ct_CXX="$ac_ct_CXX" # 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_CXX="$ac_prog" $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi ac_ct_CXX=$ac_cv_prog_ac_ct_CXX if test -n "$ac_ct_CXX"; then { $as_echo "$as_me:$LINENO: result: $ac_ct_CXX" >&5 $as_echo "$ac_ct_CXX" >&6; } else { $as_echo "$as_me:$LINENO: result: no" >&5 $as_echo "no" >&6; } fi test -n "$ac_ct_CXX" && break done if test "x$ac_ct_CXX" = x; then CXX="g++" else case $cross_compiling:$ac_tool_warned in yes:) { $as_echo "$as_me:$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 CXX=$ac_ct_CXX fi fi fi fi # Provide some information about the compiler. $as_echo "$as_me:$LINENO: checking for C++ compiler version" >&5 set X $ac_compile ac_compiler=$2 { (ac_try="$ac_compiler --version >&5" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" $as_echo "$ac_try_echo") >&5 (eval "$ac_compiler --version >&5") 2>&5 ac_status=$? $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } { (ac_try="$ac_compiler -v >&5" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" $as_echo "$ac_try_echo") >&5 (eval "$ac_compiler -v >&5") 2>&5 ac_status=$? $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } { (ac_try="$ac_compiler -V >&5" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" $as_echo "$ac_try_echo") >&5 (eval "$ac_compiler -V >&5") 2>&5 ac_status=$? $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* 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:$LINENO: checking for C++ compiler default output file name" >&5 $as_echo_n "checking for C++ compiler default output file name... " >&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:$LINENO: $ac_try_echo\"" $as_echo "$ac_try_echo") >&5 (eval "$ac_link_default") 2>&5 ac_status=$? $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; 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 { $as_echo "$as_me:$LINENO: result: $ac_file" >&5 $as_echo "$ac_file" >&6; } if test -z "$ac_file"; then $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 { { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} { { $as_echo "$as_me:$LINENO: error: C++ compiler cannot create executables See \`config.log' for more details." >&5 $as_echo "$as_me: error: C++ compiler cannot create executables See \`config.log' for more details." >&2;} { (exit 77); exit 77; }; }; } fi ac_exeext=$ac_cv_exeext # Check that the compiler produces executables we can run. If not, either # the compiler is broken, or we cross compile. { $as_echo "$as_me:$LINENO: checking whether the C++ compiler works" >&5 $as_echo_n "checking whether the C++ compiler works... " >&6; } # FIXME: These cross compiler hacks should be removed for Autoconf 3.0 # If not cross compiling, check that we can run a simple program. if test "$cross_compiling" != yes; then if { ac_try='./$ac_file' { (case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" $as_echo "$ac_try_echo") >&5 (eval "$ac_try") 2>&5 ac_status=$? $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then cross_compiling=no else if test "$cross_compiling" = maybe; then cross_compiling=yes else { { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} { { $as_echo "$as_me:$LINENO: error: cannot run C++ compiled programs. If you meant to cross compile, use \`--host'. See \`config.log' for more details." >&5 $as_echo "$as_me: error: cannot run C++ compiled programs. If you meant to cross compile, use \`--host'. See \`config.log' for more details." >&2;} { (exit 1); exit 1; }; }; } fi fi fi { $as_echo "$as_me:$LINENO: result: yes" >&5 $as_echo "yes" >&6; } rm -f -r a.out a.out.dSYM a.exe conftest$ac_cv_exeext b.out ac_clean_files=$ac_clean_files_save # Check that the compiler produces executables we can run. If not, either # the compiler is broken, or we cross compile. { $as_echo "$as_me:$LINENO: checking whether we are cross compiling" >&5 $as_echo_n "checking whether we are cross compiling... " >&6; } { $as_echo "$as_me:$LINENO: result: $cross_compiling" >&5 $as_echo "$cross_compiling" >&6; } { $as_echo "$as_me:$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:$LINENO: $ac_try_echo\"" $as_echo "$ac_try_echo") >&5 (eval "$ac_link") 2>&5 ac_status=$? $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; 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:$LINENO: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} { { $as_echo "$as_me:$LINENO: error: cannot compute suffix of executables: cannot compile and link See \`config.log' for more details." >&5 $as_echo "$as_me: error: cannot compute suffix of executables: cannot compile and link See \`config.log' for more details." >&2;} { (exit 1); exit 1; }; }; } fi rm -f conftest$ac_cv_exeext { $as_echo "$as_me:$LINENO: result: $ac_cv_exeext" >&5 $as_echo "$ac_cv_exeext" >&6; } rm -f conftest.$ac_ext EXEEXT=$ac_cv_exeext ac_exeext=$EXEEXT { $as_echo "$as_me:$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 >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* 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:$LINENO: $ac_try_echo\"" $as_echo "$ac_try_echo") >&5 (eval "$ac_compile") 2>&5 ac_status=$? $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; 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:$LINENO: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} { { $as_echo "$as_me:$LINENO: error: cannot compute suffix of object files: cannot compile See \`config.log' for more details." >&5 $as_echo "$as_me: error: cannot compute suffix of object files: cannot compile See \`config.log' for more details." >&2;} { (exit 1); exit 1; }; }; } fi rm -f conftest.$ac_cv_objext conftest.$ac_ext fi { $as_echo "$as_me:$LINENO: result: $ac_cv_objext" >&5 $as_echo "$ac_cv_objext" >&6; } OBJEXT=$ac_cv_objext ac_objext=$OBJEXT { $as_echo "$as_me:$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_cxx_compiler_gnu+set}" = set; then $as_echo_n "(cached) " >&6 else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ int main () { #ifndef __GNUC__ choke me #endif ; return 0; } _ACEOF 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:$LINENO: $ac_try_echo\"" $as_echo "$ac_try_echo") >&5 (eval "$ac_compile") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { test -z "$ac_cxx_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then ac_compiler_gnu=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_compiler_gnu=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext ac_cv_cxx_compiler_gnu=$ac_compiler_gnu fi { $as_echo "$as_me:$LINENO: result: $ac_cv_cxx_compiler_gnu" >&5 $as_echo "$ac_cv_cxx_compiler_gnu" >&6; } if test $ac_compiler_gnu = yes; then GXX=yes else GXX= fi ac_test_CXXFLAGS=${CXXFLAGS+set} ac_save_CXXFLAGS=$CXXFLAGS { $as_echo "$as_me:$LINENO: checking whether $CXX accepts -g" >&5 $as_echo_n "checking whether $CXX accepts -g... " >&6; } if test "${ac_cv_prog_cxx_g+set}" = set; then $as_echo_n "(cached) " >&6 else ac_save_cxx_werror_flag=$ac_cxx_werror_flag ac_cxx_werror_flag=yes ac_cv_prog_cxx_g=no CXXFLAGS="-g" cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ int main () { ; return 0; } _ACEOF 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:$LINENO: $ac_try_echo\"" $as_echo "$ac_try_echo") >&5 (eval "$ac_compile") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { test -z "$ac_cxx_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then ac_cv_prog_cxx_g=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 CXXFLAGS="" cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ int main () { ; return 0; } _ACEOF 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:$LINENO: $ac_try_echo\"" $as_echo "$ac_try_echo") >&5 (eval "$ac_compile") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { test -z "$ac_cxx_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then : else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_cxx_werror_flag=$ac_save_cxx_werror_flag CXXFLAGS="-g" cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ int main () { ; return 0; } _ACEOF 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:$LINENO: $ac_try_echo\"" $as_echo "$ac_try_echo") >&5 (eval "$ac_compile") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { test -z "$ac_cxx_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then ac_cv_prog_cxx_g=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 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_cxx_werror_flag=$ac_save_cxx_werror_flag fi { $as_echo "$as_me:$LINENO: result: $ac_cv_prog_cxx_g" >&5 $as_echo "$ac_cv_prog_cxx_g" >&6; } if test "$ac_test_CXXFLAGS" = set; then CXXFLAGS=$ac_save_CXXFLAGS elif test $ac_cv_prog_cxx_g = yes; then if test "$GXX" = yes; then CXXFLAGS="-g -O2" else CXXFLAGS="-g" fi else if test "$GXX" = yes; then CXXFLAGS="-O2" else CXXFLAGS= fi fi ac_ext=cpp ac_cpp='$CXXCPP $CPPFLAGS' ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_cxx_compiler_gnu DEPDIR="${am__leading_dot}deps" ac_config_commands="$ac_config_commands depfiles" am_make=${MAKE-make} cat > confinc << 'END' am__doit: @echo done .PHONY: am__doit END # If we don't find an include directive, just comment out the code. { $as_echo "$as_me:$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 # We grep out `Entering directory' and `Leaving directory' # messages which can occur if `w' ends up in MAKEFLAGS. # In particular we don't look at `^make:' because GNU make might # be invoked under some other name (usually "gmake"), in which # case it prints its new name instead of `make'. if test "`$am_make -s -f confmf 2> /dev/null | grep -v 'ing directory'`" = "done"; then am__include=include am__quote= _am_result=GNU fi # Now try BSD make style include. if test "$am__include" = "#"; then echo '.include "confinc"' > confmf if test "`$am_make -s -f confmf 2> /dev/null`" = "done"; then am__include=.include am__quote="\"" _am_result=BSD fi fi { $as_echo "$as_me:$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 depcc="$CXX" am_compiler_list= { $as_echo "$as_me:$LINENO: checking dependency style of $depcc" >&5 $as_echo_n "checking dependency style of $depcc... " >&6; } if test "${am_cv_CXX_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_CXX_dependencies_compiler_type=none if test "$am_compiler_list" = ""; then am_compiler_list=`sed -n 's/^#*\([a-zA-Z0-9]*\))$/\1/p' < ./depcomp` fi 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 case $depmode in 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 ;; none) break ;; esac # 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. if depmode=$depmode \ source=sub/conftest.c object=sub/conftest.${OBJEXT-o} \ depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \ $SHELL ./depcomp $depcc -c -o sub/conftest.${OBJEXT-o} 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 sub/conftest.${OBJEXT-o} 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_CXX_dependencies_compiler_type=$depmode break fi fi done cd .. rm -rf conftest.dir else am_cv_CXX_dependencies_compiler_type=none fi fi { $as_echo "$as_me:$LINENO: result: $am_cv_CXX_dependencies_compiler_type" >&5 $as_echo "$am_cv_CXX_dependencies_compiler_type" >&6; } CXXDEPMODE=depmode=$am_cv_CXX_dependencies_compiler_type if test "x$enable_dependency_tracking" != xno \ && test "$am_cv_CXX_dependencies_compiler_type" = gcc3; then am__fastdepCXX_TRUE= am__fastdepCXX_FALSE='#' else am__fastdepCXX_TRUE='#' am__fastdepCXX_FALSE= fi 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:$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:$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:$LINENO: result: $RANLIB" >&5 $as_echo "$RANLIB" >&6; } else { $as_echo "$as_me:$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:$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:$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:$LINENO: result: $ac_ct_RANLIB" >&5 $as_echo "$ac_ct_RANLIB" >&6; } else { $as_echo "$as_me:$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:$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 for ac_prog in sed 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:$LINENO: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if test "${ac_cv_prog_SED+set}" = set; then $as_echo_n "(cached) " >&6 else if test -n "$SED"; then ac_cv_prog_SED="$SED" # 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_SED="$ac_prog" $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi SED=$ac_cv_prog_SED if test -n "$SED"; then { $as_echo "$as_me:$LINENO: result: $SED" >&5 $as_echo "$SED" >&6; } else { $as_echo "$as_me:$LINENO: result: no" >&5 $as_echo "no" >&6; } fi test -n "$SED" && break done for ac_prog in sort 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:$LINENO: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if test "${ac_cv_prog_SORT+set}" = set; then $as_echo_n "(cached) " >&6 else if test -n "$SORT"; then ac_cv_prog_SORT="$SORT" # 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_SORT="$ac_prog" $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi SORT=$ac_cv_prog_SORT if test -n "$SORT"; then { $as_echo "$as_me:$LINENO: result: $SORT" >&5 $as_echo "$SORT" >&6; } else { $as_echo "$as_me:$LINENO: result: no" >&5 $as_echo "no" >&6; } fi test -n "$SORT" && break done for ac_prog in uniq 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:$LINENO: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if test "${ac_cv_prog_UNIQ+set}" = set; then $as_echo_n "(cached) " >&6 else if test -n "$UNIQ"; then ac_cv_prog_UNIQ="$UNIQ" # 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_UNIQ="$ac_prog" $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi UNIQ=$ac_cv_prog_UNIQ if test -n "$UNIQ"; then { $as_echo "$as_me:$LINENO: result: $UNIQ" >&5 $as_echo "$UNIQ" >&6; } else { $as_echo "$as_me:$LINENO: result: no" >&5 $as_echo "no" >&6; } fi test -n "$UNIQ" && break done for ac_prog in tr 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:$LINENO: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if test "${ac_cv_prog_TR+set}" = set; then $as_echo_n "(cached) " >&6 else if test -n "$TR"; then ac_cv_prog_TR="$TR" # 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_TR="$ac_prog" $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi TR=$ac_cv_prog_TR if test -n "$TR"; then { $as_echo "$as_me:$LINENO: result: $TR" >&5 $as_echo "$TR" >&6; } else { $as_echo "$as_me:$LINENO: result: no" >&5 $as_echo "no" >&6; } fi test -n "$TR" && break done { $as_echo "$as_me:$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:$LINENO: result: $USE_NLS" >&5 $as_echo "$USE_NLS" >&6; } case "$am__api_version" in 1.01234) { { $as_echo "$as_me:$LINENO: error: Automake 1.5 or newer is required to use intltool" >&5 $as_echo "$as_me: error: Automake 1.5 or newer is required to use intltool" >&2;} { (exit 1); exit 1; }; } ;; *) ;; esac if test -n "0.35.0"; then { $as_echo "$as_me:$LINENO: checking for intltool >= 0.35.0" >&5 $as_echo_n "checking for intltool >= 0.35.0... " >&6; } INTLTOOL_REQUIRED_VERSION_AS_INT=`echo 0.35.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:$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_echo "$as_me:$LINENO: error: Your intltool is too old. You need intltool 0.35.0 or later." >&5 $as_echo "$as_me: error: Your intltool is too old. You need intltool 0.35.0 or later." >&2;} { (exit 1); exit 1; }; } 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:$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:$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:$LINENO: result: $INTLTOOL_UPDATE" >&5 $as_echo "$INTLTOOL_UPDATE" >&6; } else { $as_echo "$as_me:$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:$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:$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:$LINENO: result: $INTLTOOL_MERGE" >&5 $as_echo "$INTLTOOL_MERGE" >&6; } else { $as_echo "$as_me:$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:$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:$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:$LINENO: result: $INTLTOOL_EXTRACT" >&5 $as_echo "$INTLTOOL_EXTRACT" >&6; } else { $as_echo "$as_me:$LINENO: result: no" >&5 $as_echo "no" >&6; } fi if test -z "$INTLTOOL_UPDATE" -o -z "$INTLTOOL_MERGE" -o -z "$INTLTOOL_EXTRACT"; then { { $as_echo "$as_me:$LINENO: error: The intltool scripts were not found. Please install intltool." >&5 $as_echo "$as_me: error: The intltool scripts were not found. Please install intltool." >&2;} { (exit 1); exit 1; }; } 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:$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:$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:$LINENO: result: $XGETTEXT" >&5 $as_echo "$XGETTEXT" >&6; } else { $as_echo "$as_me:$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:$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:$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:$LINENO: result: $MSGMERGE" >&5 $as_echo "$MSGMERGE" >&6; } else { $as_echo "$as_me:$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:$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:$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:$LINENO: result: $MSGFMT" >&5 $as_echo "$MSGFMT" >&6; } else { $as_echo "$as_me:$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:$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:$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:$LINENO: result: $GMSGFMT" >&5 $as_echo "$GMSGFMT" >&6; } else { $as_echo "$as_me:$LINENO: result: no" >&5 $as_echo "no" >&6; } fi if test -z "$XGETTEXT" -o -z "$MSGMERGE" -o -z "$MSGFMT"; then { { $as_echo "$as_me:$LINENO: error: GNU gettext tools not found; required for intltool" >&5 $as_echo "$as_me: error: GNU gettext tools not found; required for intltool" >&2;} { (exit 1); exit 1; }; } 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_echo "$as_me:$LINENO: error: GNU gettext tools not found; required for intltool" >&5 $as_echo "$as_me: error: GNU gettext tools not found; required for intltool" >&2;} { (exit 1); exit 1; }; } 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:$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:$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:$LINENO: result: $INTLTOOL_PERL" >&5 $as_echo "$INTLTOOL_PERL" >&6; } else { $as_echo "$as_me:$LINENO: result: no" >&5 $as_echo "no" >&6; } fi if test -z "$INTLTOOL_PERL"; then { { $as_echo "$as_me:$LINENO: error: perl not found" >&5 $as_echo "$as_me: error: perl not found" >&2;} { (exit 1); exit 1; }; } fi { $as_echo "$as_me:$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_echo "$as_me:$LINENO: error: perl 5.8.1 is required for intltool" >&5 $as_echo "$as_me: error: perl 5.8.1 is required for intltool" >&2;} { (exit 1); exit 1; }; } else IT_PERL_VERSION="`$INTLTOOL_PERL -e \"printf '%vd', $^V\"`" { $as_echo "$as_me:$LINENO: result: $IT_PERL_VERSION" >&5 $as_echo "$IT_PERL_VERSION" >&6; } fi if test "x" != "xno-xml"; then { $as_echo "$as_me:$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:$LINENO: result: ok" >&5 $as_echo "ok" >&6; } else { { $as_echo "$as_me:$LINENO: error: XML::Parser perl module is required for intltool" >&5 $as_echo "$as_me: error: XML::Parser perl module is required for intltool" >&2;} { (exit 1); exit 1; }; } 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 >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ int main () { extern int _nl_msg_cat_cntr; return _nl_msg_cat_cntr ; return 0; } _ACEOF 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:$LINENO: $ac_try_echo\"" $as_echo "$ac_try_echo") >&5 (eval "$ac_link") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { test -z "$ac_cxx_werror_flag" || test ! -s conftest.err } && test -s conftest$ac_exeext && { test "$cross_compiling" = yes || $as_test_x conftest$ac_exeext }; then DATADIRNAME=share else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 case $host in *-*-solaris*) { $as_echo "$as_me:$LINENO: checking for bind_textdomain_codeset" >&5 $as_echo_n "checking for bind_textdomain_codeset... " >&6; } if test "${ac_cv_func_bind_textdomain_codeset+set}" = set; then $as_echo_n "(cached) " >&6 else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ /* Define bind_textdomain_codeset to an innocuous variant, in case declares bind_textdomain_codeset. For example, HP-UX 11i declares gettimeofday. */ #define bind_textdomain_codeset innocuous_bind_textdomain_codeset /* System header to define __stub macros and hopefully few prototypes, which can conflict with char bind_textdomain_codeset (); below. Prefer to if __STDC__ is defined, since exists even on freestanding compilers. */ #ifdef __STDC__ # include #else # include #endif #undef bind_textdomain_codeset /* 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 bind_textdomain_codeset (); /* 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_bind_textdomain_codeset || defined __stub___bind_textdomain_codeset choke me #endif int main () { return bind_textdomain_codeset (); ; return 0; } _ACEOF 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:$LINENO: $ac_try_echo\"" $as_echo "$ac_try_echo") >&5 (eval "$ac_link") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { test -z "$ac_cxx_werror_flag" || test ! -s conftest.err } && test -s conftest$ac_exeext && { test "$cross_compiling" = yes || $as_test_x conftest$ac_exeext }; then ac_cv_func_bind_textdomain_codeset=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_func_bind_textdomain_codeset=no fi rm -rf conftest.dSYM rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext fi { $as_echo "$as_me:$LINENO: result: $ac_cv_func_bind_textdomain_codeset" >&5 $as_echo "$ac_cv_func_bind_textdomain_codeset" >&6; } if test "x$ac_cv_func_bind_textdomain_codeset" = x""yes; then DATADIRNAME=share else DATADIRNAME=lib fi ;; *) DATADIRNAME=lib ;; esac fi rm -rf conftest.dSYM rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext fi GETTEXT_PACKAGE=agave cat >>confdefs.h <<_ACEOF #define GETTEXT_PACKAGE "$GETTEXT_PACKAGE" _ACEOF 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:$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:$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:$LINENO: result: $CC" >&5 $as_echo "$CC" >&6; } else { $as_echo "$as_me:$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:$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:$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:$LINENO: result: $ac_ct_CC" >&5 $as_echo "$ac_ct_CC" >&6; } else { $as_echo "$as_me:$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:$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:$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:$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:$LINENO: result: $CC" >&5 $as_echo "$CC" >&6; } else { $as_echo "$as_me:$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:$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:$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:$LINENO: result: $CC" >&5 $as_echo "$CC" >&6; } else { $as_echo "$as_me:$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:$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:$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:$LINENO: result: $CC" >&5 $as_echo "$CC" >&6; } else { $as_echo "$as_me:$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:$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:$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:$LINENO: result: $ac_ct_CC" >&5 $as_echo "$ac_ct_CC" >&6; } else { $as_echo "$as_me:$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:$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:$LINENO: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} { { $as_echo "$as_me:$LINENO: error: no acceptable C compiler found in \$PATH See \`config.log' for more details." >&5 $as_echo "$as_me: error: no acceptable C compiler found in \$PATH See \`config.log' for more details." >&2;} { (exit 1); exit 1; }; }; } # Provide some information about the compiler. $as_echo "$as_me:$LINENO: checking for C compiler version" >&5 set X $ac_compile ac_compiler=$2 { (ac_try="$ac_compiler --version >&5" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" $as_echo "$ac_try_echo") >&5 (eval "$ac_compiler --version >&5") 2>&5 ac_status=$? $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } { (ac_try="$ac_compiler -v >&5" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" $as_echo "$ac_try_echo") >&5 (eval "$ac_compiler -v >&5") 2>&5 ac_status=$? $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } { (ac_try="$ac_compiler -V >&5" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" $as_echo "$ac_try_echo") >&5 (eval "$ac_compiler -V >&5") 2>&5 ac_status=$? $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } { $as_echo "$as_me:$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 >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ int main () { #ifndef __GNUC__ choke me #endif ; return 0; } _ACEOF 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:$LINENO: $ac_try_echo\"" $as_echo "$ac_try_echo") >&5 (eval "$ac_compile") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then ac_compiler_gnu=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 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:$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:$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 >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ int main () { ; return 0; } _ACEOF 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:$LINENO: $ac_try_echo\"" $as_echo "$ac_try_echo") >&5 (eval "$ac_compile") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then ac_cv_prog_cc_g=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 CFLAGS="" cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ int main () { ; return 0; } _ACEOF 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:$LINENO: $ac_try_echo\"" $as_echo "$ac_try_echo") >&5 (eval "$ac_compile") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then : else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_c_werror_flag=$ac_save_c_werror_flag CFLAGS="-g" cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ int main () { ; return 0; } _ACEOF 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:$LINENO: $ac_try_echo\"" $as_echo "$ac_try_echo") >&5 (eval "$ac_compile") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then ac_cv_prog_cc_g=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 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:$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:$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 >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* 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" 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:$LINENO: $ac_try_echo\"" $as_echo "$ac_try_echo") >&5 (eval "$ac_compile") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then ac_cv_prog_cc_c89=$ac_arg else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 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:$LINENO: result: none needed" >&5 $as_echo "none needed" >&6; } ;; xno) { $as_echo "$as_me:$LINENO: result: unsupported" >&5 $as_echo "unsupported" >&6; } ;; *) CC="$CC $ac_cv_prog_cc_c89" { $as_echo "$as_me:$LINENO: result: $ac_cv_prog_cc_c89" >&5 $as_echo "$ac_cv_prog_cc_c89" >&6; } ;; esac ac_ext=cpp ac_cpp='$CXXCPP $CPPFLAGS' ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_cxx_compiler_gnu depcc="$CC" am_compiler_list= { $as_echo "$as_me:$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 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 case $depmode in 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 ;; none) break ;; esac # 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. if depmode=$depmode \ source=sub/conftest.c object=sub/conftest.${OBJEXT-o} \ depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \ $SHELL ./depcomp $depcc -c -o sub/conftest.${OBJEXT-o} 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 sub/conftest.${OBJEXT-o} 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:$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=cpp ac_cpp='$CXXCPP $CPPFLAGS' ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_cxx_compiler_gnu { $as_echo "$as_me:$LINENO: checking how to run the C++ preprocessor" >&5 $as_echo_n "checking how to run the C++ preprocessor... " >&6; } if test -z "$CXXCPP"; then if test "${ac_cv_prog_CXXCPP+set}" = set; then $as_echo_n "(cached) " >&6 else # Double quotes because CXXCPP needs to be expanded for CXXCPP in "$CXX -E" "/lib/cpp" do ac_preproc_ok=false for ac_cxx_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 >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #ifdef __STDC__ # include #else # include #endif Syntax error _ACEOF 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:$LINENO: $ac_try_echo\"" $as_echo "$ac_try_echo") >&5 (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } >/dev/null && { test -z "$ac_cxx_preproc_warn_flag$ac_cxx_werror_flag" || test ! -s conftest.err }; then : else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 # 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 >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include _ACEOF 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:$LINENO: $ac_try_echo\"" $as_echo "$ac_try_echo") >&5 (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } >/dev/null && { test -z "$ac_cxx_preproc_warn_flag$ac_cxx_werror_flag" || test ! -s conftest.err }; then # Broken: success on invalid input. continue else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 # 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_CXXCPP=$CXXCPP fi CXXCPP=$ac_cv_prog_CXXCPP else ac_cv_prog_CXXCPP=$CXXCPP fi { $as_echo "$as_me:$LINENO: result: $CXXCPP" >&5 $as_echo "$CXXCPP" >&6; } ac_preproc_ok=false for ac_cxx_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 >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #ifdef __STDC__ # include #else # include #endif Syntax error _ACEOF 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:$LINENO: $ac_try_echo\"" $as_echo "$ac_try_echo") >&5 (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } >/dev/null && { test -z "$ac_cxx_preproc_warn_flag$ac_cxx_werror_flag" || test ! -s conftest.err }; then : else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 # 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 >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include _ACEOF 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:$LINENO: $ac_try_echo\"" $as_echo "$ac_try_echo") >&5 (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } >/dev/null && { test -z "$ac_cxx_preproc_warn_flag$ac_cxx_werror_flag" || test ! -s conftest.err }; then # Broken: success on invalid input. continue else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 # 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:$LINENO: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} { { $as_echo "$as_me:$LINENO: error: C++ preprocessor \"$CXXCPP\" fails sanity check See \`config.log' for more details." >&5 $as_echo "$as_me: error: C++ preprocessor \"$CXXCPP\" fails sanity check See \`config.log' for more details." >&2;} { (exit 1); exit 1; }; }; } fi ac_ext=cpp ac_cpp='$CXXCPP $CPPFLAGS' ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_cxx_compiler_gnu { $as_echo "$as_me:$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 ac_count=`expr $ac_count + 1` 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_echo "$as_me:$LINENO: error: no acceptable grep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" >&5 $as_echo "$as_me: error: no acceptable grep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" >&2;} { (exit 1); exit 1; }; } fi else ac_cv_path_GREP=$GREP fi fi { $as_echo "$as_me:$LINENO: result: $ac_cv_path_GREP" >&5 $as_echo "$ac_cv_path_GREP" >&6; } GREP="$ac_cv_path_GREP" { $as_echo "$as_me:$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 ac_count=`expr $ac_count + 1` 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_echo "$as_me:$LINENO: error: no acceptable egrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" >&5 $as_echo "$as_me: error: no acceptable egrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" >&2;} { (exit 1); exit 1; }; } fi else ac_cv_path_EGREP=$EGREP fi fi fi { $as_echo "$as_me:$LINENO: result: $ac_cv_path_EGREP" >&5 $as_echo "$ac_cv_path_EGREP" >&6; } EGREP="$ac_cv_path_EGREP" { $as_echo "$as_me:$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 >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include #include #include #include int main () { ; return 0; } _ACEOF 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:$LINENO: $ac_try_echo\"" $as_echo "$ac_try_echo") >&5 (eval "$ac_compile") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { test -z "$ac_cxx_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then ac_cv_header_stdc=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 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 >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* 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 >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* 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 >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* 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 rm -f 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:$LINENO: $ac_try_echo\"" $as_echo "$ac_try_echo") >&5 (eval "$ac_link") 2>&5 ac_status=$? $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { 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:$LINENO: $ac_try_echo\"" $as_echo "$ac_try_echo") >&5 (eval "$ac_try") 2>&5 ac_status=$? $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then : 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 ( exit $ac_status ) ac_cv_header_stdc=no fi rm -rf conftest.dSYM rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext fi fi fi { $as_echo "$as_me:$LINENO: result: $ac_cv_header_stdc" >&5 $as_echo "$ac_cv_header_stdc" >&6; } if test $ac_cv_header_stdc = yes; then cat >>confdefs.h <<\_ACEOF #define STDC_HEADERS 1 _ACEOF fi # 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` { $as_echo "$as_me:$LINENO: checking for $ac_header" >&5 $as_echo_n "checking for $ac_header... " >&6; } if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then $as_echo_n "(cached) " >&6 else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $ac_includes_default #include <$ac_header> _ACEOF 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:$LINENO: $ac_try_echo\"" $as_echo "$ac_try_echo") >&5 (eval "$ac_compile") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { test -z "$ac_cxx_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then eval "$as_ac_Header=yes" else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 eval "$as_ac_Header=no" fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi ac_res=`eval 'as_val=${'$as_ac_Header'} $as_echo "$as_val"'` { $as_echo "$as_me:$LINENO: result: $ac_res" >&5 $as_echo "$ac_res" >&6; } as_val=`eval 'as_val=${'$as_ac_Header'} $as_echo "$as_val"'` 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 locale.h do as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then { $as_echo "$as_me:$LINENO: checking for $ac_header" >&5 $as_echo_n "checking for $ac_header... " >&6; } if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then $as_echo_n "(cached) " >&6 fi ac_res=`eval 'as_val=${'$as_ac_Header'} $as_echo "$as_val"'` { $as_echo "$as_me:$LINENO: result: $ac_res" >&5 $as_echo "$ac_res" >&6; } else # Is the header compilable? { $as_echo "$as_me:$LINENO: checking $ac_header usability" >&5 $as_echo_n "checking $ac_header usability... " >&6; } cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $ac_includes_default #include <$ac_header> _ACEOF 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:$LINENO: $ac_try_echo\"" $as_echo "$ac_try_echo") >&5 (eval "$ac_compile") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { test -z "$ac_cxx_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then ac_header_compiler=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_header_compiler=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext { $as_echo "$as_me:$LINENO: result: $ac_header_compiler" >&5 $as_echo "$ac_header_compiler" >&6; } # Is the header present? { $as_echo "$as_me:$LINENO: checking $ac_header presence" >&5 $as_echo_n "checking $ac_header presence... " >&6; } cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include <$ac_header> _ACEOF 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:$LINENO: $ac_try_echo\"" $as_echo "$ac_try_echo") >&5 (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } >/dev/null && { test -z "$ac_cxx_preproc_warn_flag$ac_cxx_werror_flag" || test ! -s conftest.err }; then ac_header_preproc=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_header_preproc=no fi rm -f conftest.err conftest.$ac_ext { $as_echo "$as_me:$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_cxx_preproc_warn_flag in yes:no: ) { $as_echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5 $as_echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;} { $as_echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5 $as_echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;} ac_header_preproc=yes ;; no:yes:* ) { $as_echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5 $as_echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;} { $as_echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5 $as_echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;} { $as_echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5 $as_echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;} { $as_echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5 $as_echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;} { $as_echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5 $as_echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;} { $as_echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5 $as_echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;} ( cat <<\_ASBOX ## ------------------------------------------------------ ## ## Report this to https://gna.org/bugs/?group=colorscheme ## ## ------------------------------------------------------ ## _ASBOX ) | sed "s/^/$as_me: WARNING: /" >&2 ;; esac { $as_echo "$as_me:$LINENO: checking for $ac_header" >&5 $as_echo_n "checking for $ac_header... " >&6; } if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then $as_echo_n "(cached) " >&6 else eval "$as_ac_Header=\$ac_header_preproc" fi ac_res=`eval 'as_val=${'$as_ac_Header'} $as_echo "$as_val"'` { $as_echo "$as_me:$LINENO: result: $ac_res" >&5 $as_echo "$ac_res" >&6; } fi as_val=`eval 'as_val=${'$as_ac_Header'} $as_echo "$as_val"'` 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 if test $ac_cv_header_locale_h = yes; then { $as_echo "$as_me:$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 >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include int main () { return LC_MESSAGES ; return 0; } _ACEOF 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:$LINENO: $ac_try_echo\"" $as_echo "$ac_try_echo") >&5 (eval "$ac_link") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { test -z "$ac_cxx_werror_flag" || test ! -s conftest.err } && test -s conftest$ac_exeext && { test "$cross_compiling" = yes || $as_test_x conftest$ac_exeext }; then am_cv_val_LC_MESSAGES=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 am_cv_val_LC_MESSAGES=no fi rm -rf conftest.dSYM rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext fi { $as_echo "$as_me:$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 cat >>confdefs.h <<\_ACEOF #define HAVE_LC_MESSAGES 1 _ACEOF fi fi USE_NLS=yes gt_cv_have_gettext=no CATOBJEXT=NONE XGETTEXT=: INTLLIBS= if test "${ac_cv_header_libintl_h+set}" = set; then { $as_echo "$as_me:$LINENO: checking for libintl.h" >&5 $as_echo_n "checking for libintl.h... " >&6; } if test "${ac_cv_header_libintl_h+set}" = set; then $as_echo_n "(cached) " >&6 fi { $as_echo "$as_me:$LINENO: result: $ac_cv_header_libintl_h" >&5 $as_echo "$ac_cv_header_libintl_h" >&6; } else # Is the header compilable? { $as_echo "$as_me:$LINENO: checking libintl.h usability" >&5 $as_echo_n "checking libintl.h usability... " >&6; } cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $ac_includes_default #include _ACEOF 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:$LINENO: $ac_try_echo\"" $as_echo "$ac_try_echo") >&5 (eval "$ac_compile") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { test -z "$ac_cxx_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then ac_header_compiler=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_header_compiler=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext { $as_echo "$as_me:$LINENO: result: $ac_header_compiler" >&5 $as_echo "$ac_header_compiler" >&6; } # Is the header present? { $as_echo "$as_me:$LINENO: checking libintl.h presence" >&5 $as_echo_n "checking libintl.h presence... " >&6; } cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include _ACEOF 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:$LINENO: $ac_try_echo\"" $as_echo "$ac_try_echo") >&5 (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } >/dev/null && { test -z "$ac_cxx_preproc_warn_flag$ac_cxx_werror_flag" || test ! -s conftest.err }; then ac_header_preproc=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_header_preproc=no fi rm -f conftest.err conftest.$ac_ext { $as_echo "$as_me:$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_cxx_preproc_warn_flag in yes:no: ) { $as_echo "$as_me:$LINENO: WARNING: libintl.h: accepted by the compiler, rejected by the preprocessor!" >&5 $as_echo "$as_me: WARNING: libintl.h: accepted by the compiler, rejected by the preprocessor!" >&2;} { $as_echo "$as_me:$LINENO: WARNING: libintl.h: proceeding with the compiler's result" >&5 $as_echo "$as_me: WARNING: libintl.h: proceeding with the compiler's result" >&2;} ac_header_preproc=yes ;; no:yes:* ) { $as_echo "$as_me:$LINENO: WARNING: libintl.h: present but cannot be compiled" >&5 $as_echo "$as_me: WARNING: libintl.h: present but cannot be compiled" >&2;} { $as_echo "$as_me:$LINENO: WARNING: libintl.h: check for missing prerequisite headers?" >&5 $as_echo "$as_me: WARNING: libintl.h: check for missing prerequisite headers?" >&2;} { $as_echo "$as_me:$LINENO: WARNING: libintl.h: see the Autoconf documentation" >&5 $as_echo "$as_me: WARNING: libintl.h: see the Autoconf documentation" >&2;} { $as_echo "$as_me:$LINENO: WARNING: libintl.h: section \"Present But Cannot Be Compiled\"" >&5 $as_echo "$as_me: WARNING: libintl.h: section \"Present But Cannot Be Compiled\"" >&2;} { $as_echo "$as_me:$LINENO: WARNING: libintl.h: proceeding with the preprocessor's result" >&5 $as_echo "$as_me: WARNING: libintl.h: proceeding with the preprocessor's result" >&2;} { $as_echo "$as_me:$LINENO: WARNING: libintl.h: in the future, the compiler will take precedence" >&5 $as_echo "$as_me: WARNING: libintl.h: in the future, the compiler will take precedence" >&2;} ( cat <<\_ASBOX ## ------------------------------------------------------ ## ## Report this to https://gna.org/bugs/?group=colorscheme ## ## ------------------------------------------------------ ## _ASBOX ) | sed "s/^/$as_me: WARNING: /" >&2 ;; esac { $as_echo "$as_me:$LINENO: checking for libintl.h" >&5 $as_echo_n "checking for libintl.h... " >&6; } if test "${ac_cv_header_libintl_h+set}" = set; then $as_echo_n "(cached) " >&6 else ac_cv_header_libintl_h=$ac_header_preproc fi { $as_echo "$as_me:$LINENO: result: $ac_cv_header_libintl_h" >&5 $as_echo "$ac_cv_header_libintl_h" >&6; } fi 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:$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 >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include int main () { return !ngettext ("","", 1) ; return 0; } _ACEOF 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:$LINENO: $ac_try_echo\"" $as_echo "$ac_try_echo") >&5 (eval "$ac_link") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { test -z "$ac_cxx_werror_flag" || test ! -s conftest.err } && test -s conftest$ac_exeext && { test "$cross_compiling" = yes || $as_test_x conftest$ac_exeext }; then gt_cv_func_ngettext_libc=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 gt_cv_func_ngettext_libc=no fi rm -rf conftest.dSYM rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext fi { $as_echo "$as_me:$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:$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 >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include int main () { return !dgettext ("","") ; return 0; } _ACEOF 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:$LINENO: $ac_try_echo\"" $as_echo "$ac_try_echo") >&5 (eval "$ac_link") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { test -z "$ac_cxx_werror_flag" || test ! -s conftest.err } && test -s conftest$ac_exeext && { test "$cross_compiling" = yes || $as_test_x conftest$ac_exeext }; then gt_cv_func_dgettext_libc=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 gt_cv_func_dgettext_libc=no fi rm -rf conftest.dSYM rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext fi { $as_echo "$as_me:$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 as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` { $as_echo "$as_me:$LINENO: checking for $ac_func" >&5 $as_echo_n "checking for $ac_func... " >&6; } if { as_var=$as_ac_var; eval "test \"\${$as_var+set}\" = set"; }; then $as_echo_n "(cached) " >&6 else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ /* Define $ac_func to an innocuous variant, in case declares $ac_func. For example, HP-UX 11i declares gettimeofday. */ #define $ac_func innocuous_$ac_func /* System header to define __stub macros and hopefully few prototypes, which can conflict with char $ac_func (); below. Prefer to if __STDC__ is defined, since exists even on freestanding compilers. */ #ifdef __STDC__ # include #else # include #endif #undef $ac_func /* 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 $ac_func (); /* 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_$ac_func || defined __stub___$ac_func choke me #endif int main () { return $ac_func (); ; return 0; } _ACEOF 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:$LINENO: $ac_try_echo\"" $as_echo "$ac_try_echo") >&5 (eval "$ac_link") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { test -z "$ac_cxx_werror_flag" || test ! -s conftest.err } && test -s conftest$ac_exeext && { test "$cross_compiling" = yes || $as_test_x conftest$ac_exeext }; then eval "$as_ac_var=yes" else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 eval "$as_ac_var=no" fi rm -rf conftest.dSYM rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext fi ac_res=`eval 'as_val=${'$as_ac_var'} $as_echo "$as_val"'` { $as_echo "$as_me:$LINENO: result: $ac_res" >&5 $as_echo "$ac_res" >&6; } as_val=`eval 'as_val=${'$as_ac_var'} $as_echo "$as_val"'` if test "x$as_val" = x""yes; then cat >>confdefs.h <<_ACEOF #define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 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:$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 >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* 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 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:$LINENO: $ac_try_echo\"" $as_echo "$ac_try_echo") >&5 (eval "$ac_link") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { test -z "$ac_cxx_werror_flag" || test ! -s conftest.err } && test -s conftest$ac_exeext && { test "$cross_compiling" = yes || $as_test_x conftest$ac_exeext }; then ac_cv_lib_intl_bindtextdomain=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_lib_intl_bindtextdomain=no fi rm -rf conftest.dSYM rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi { $as_echo "$as_me:$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:$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 >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* 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 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:$LINENO: $ac_try_echo\"" $as_echo "$ac_try_echo") >&5 (eval "$ac_link") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { test -z "$ac_cxx_werror_flag" || test ! -s conftest.err } && test -s conftest$ac_exeext && { test "$cross_compiling" = yes || $as_test_x conftest$ac_exeext }; then ac_cv_lib_intl_ngettext=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_lib_intl_ngettext=no fi rm -rf conftest.dSYM rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi { $as_echo "$as_me:$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:$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 >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* 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 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:$LINENO: $ac_try_echo\"" $as_echo "$ac_try_echo") >&5 (eval "$ac_link") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { test -z "$ac_cxx_werror_flag" || test ! -s conftest.err } && test -s conftest$ac_exeext && { test "$cross_compiling" = yes || $as_test_x conftest$ac_exeext }; then ac_cv_lib_intl_dgettext=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_lib_intl_dgettext=no fi rm -rf conftest.dSYM rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi { $as_echo "$as_me:$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:$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:$LINENO: result: " >&5 $as_echo "" >&6; } { $as_echo "$as_me:$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 >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* 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 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:$LINENO: $ac_try_echo\"" $as_echo "$ac_try_echo") >&5 (eval "$ac_link") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { test -z "$ac_cxx_werror_flag" || test ! -s conftest.err } && test -s conftest$ac_exeext && { test "$cross_compiling" = yes || $as_test_x conftest$ac_exeext }; then ac_cv_lib_intl_ngettext=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_lib_intl_ngettext=no fi rm -rf conftest.dSYM rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi { $as_echo "$as_me:$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:$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 >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* 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 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:$LINENO: $ac_try_echo\"" $as_echo "$ac_try_echo") >&5 (eval "$ac_link") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { test -z "$ac_cxx_werror_flag" || test ! -s conftest.err } && test -s conftest$ac_exeext && { test "$cross_compiling" = yes || $as_test_x conftest$ac_exeext }; then ac_cv_lib_intl_dcgettext=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_lib_intl_dcgettext=no fi rm -rf conftest.dSYM rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi { $as_echo "$as_me:$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 as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` { $as_echo "$as_me:$LINENO: checking for $ac_func" >&5 $as_echo_n "checking for $ac_func... " >&6; } if { as_var=$as_ac_var; eval "test \"\${$as_var+set}\" = set"; }; then $as_echo_n "(cached) " >&6 else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ /* Define $ac_func to an innocuous variant, in case declares $ac_func. For example, HP-UX 11i declares gettimeofday. */ #define $ac_func innocuous_$ac_func /* System header to define __stub macros and hopefully few prototypes, which can conflict with char $ac_func (); below. Prefer to if __STDC__ is defined, since exists even on freestanding compilers. */ #ifdef __STDC__ # include #else # include #endif #undef $ac_func /* 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 $ac_func (); /* 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_$ac_func || defined __stub___$ac_func choke me #endif int main () { return $ac_func (); ; return 0; } _ACEOF 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:$LINENO: $ac_try_echo\"" $as_echo "$ac_try_echo") >&5 (eval "$ac_link") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { test -z "$ac_cxx_werror_flag" || test ! -s conftest.err } && test -s conftest$ac_exeext && { test "$cross_compiling" = yes || $as_test_x conftest$ac_exeext }; then eval "$as_ac_var=yes" else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 eval "$as_ac_var=no" fi rm -rf conftest.dSYM rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext fi ac_res=`eval 'as_val=${'$as_ac_var'} $as_echo "$as_val"'` { $as_echo "$as_me:$LINENO: result: $ac_res" >&5 $as_echo "$ac_res" >&6; } as_val=`eval 'as_val=${'$as_ac_var'} $as_echo "$as_val"'` if test "x$as_val" = x""yes; then cat >>confdefs.h <<_ACEOF #define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 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 cat >>confdefs.h <<\_ACEOF #define HAVE_GETTEXT 1 _ACEOF # 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:$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:$LINENO: result: $MSGFMT" >&5 $as_echo "$MSGFMT" >&6; } else { $as_echo "$as_me:$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 as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` { $as_echo "$as_me:$LINENO: checking for $ac_func" >&5 $as_echo_n "checking for $ac_func... " >&6; } if { as_var=$as_ac_var; eval "test \"\${$as_var+set}\" = set"; }; then $as_echo_n "(cached) " >&6 else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ /* Define $ac_func to an innocuous variant, in case declares $ac_func. For example, HP-UX 11i declares gettimeofday. */ #define $ac_func innocuous_$ac_func /* System header to define __stub macros and hopefully few prototypes, which can conflict with char $ac_func (); below. Prefer to if __STDC__ is defined, since exists even on freestanding compilers. */ #ifdef __STDC__ # include #else # include #endif #undef $ac_func /* 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 $ac_func (); /* 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_$ac_func || defined __stub___$ac_func choke me #endif int main () { return $ac_func (); ; return 0; } _ACEOF 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:$LINENO: $ac_try_echo\"" $as_echo "$ac_try_echo") >&5 (eval "$ac_link") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { test -z "$ac_cxx_werror_flag" || test ! -s conftest.err } && test -s conftest$ac_exeext && { test "$cross_compiling" = yes || $as_test_x conftest$ac_exeext }; then eval "$as_ac_var=yes" else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 eval "$as_ac_var=no" fi rm -rf conftest.dSYM rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext fi ac_res=`eval 'as_val=${'$as_ac_var'} $as_echo "$as_val"'` { $as_echo "$as_me:$LINENO: result: $ac_res" >&5 $as_echo "$ac_res" >&6; } as_val=`eval 'as_val=${'$as_ac_var'} $as_echo "$as_val"'` if test "x$as_val" = x""yes; then cat >>confdefs.h <<_ACEOF #define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 _ACEOF fi done MSGFMT_OPTS= { $as_echo "$as_me:$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:$LINENO: \$MSGFMT -c -o /dev/null conftest.foo") >&5 ($MSGFMT -c -o /dev/null conftest.foo) 2>&5 ac_status=$? $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; then MSGFMT_OPTS=-c; { $as_echo "$as_me:$LINENO: result: yes" >&5 $as_echo "yes" >&6; } else { $as_echo "$as_me:$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:$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:$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:$LINENO: result: $GMSGFMT" >&5 $as_echo "$GMSGFMT" >&6; } else { $as_echo "$as_me:$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:$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:$LINENO: result: $XGETTEXT" >&5 $as_echo "$XGETTEXT" >&6; } else { $as_echo "$as_me:$LINENO: result: no" >&5 $as_echo "no" >&6; } fi cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ int main () { extern int _nl_msg_cat_cntr; return _nl_msg_cat_cntr ; return 0; } _ACEOF 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:$LINENO: $ac_try_echo\"" $as_echo "$ac_try_echo") >&5 (eval "$ac_link") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { test -z "$ac_cxx_werror_flag" || test ! -s conftest.err } && test -s conftest$ac_exeext && { test "$cross_compiling" = yes || $as_test_x conftest$ac_exeext }; then CATOBJEXT=.gmo DATADIRNAME=share else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 case $host in *-*-solaris*) { $as_echo "$as_me:$LINENO: checking for bind_textdomain_codeset" >&5 $as_echo_n "checking for bind_textdomain_codeset... " >&6; } if test "${ac_cv_func_bind_textdomain_codeset+set}" = set; then $as_echo_n "(cached) " >&6 else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ /* Define bind_textdomain_codeset to an innocuous variant, in case declares bind_textdomain_codeset. For example, HP-UX 11i declares gettimeofday. */ #define bind_textdomain_codeset innocuous_bind_textdomain_codeset /* System header to define __stub macros and hopefully few prototypes, which can conflict with char bind_textdomain_codeset (); below. Prefer to if __STDC__ is defined, since exists even on freestanding compilers. */ #ifdef __STDC__ # include #else # include #endif #undef bind_textdomain_codeset /* 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 bind_textdomain_codeset (); /* 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_bind_textdomain_codeset || defined __stub___bind_textdomain_codeset choke me #endif int main () { return bind_textdomain_codeset (); ; return 0; } _ACEOF 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:$LINENO: $ac_try_echo\"" $as_echo "$ac_try_echo") >&5 (eval "$ac_link") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { test -z "$ac_cxx_werror_flag" || test ! -s conftest.err } && test -s conftest$ac_exeext && { test "$cross_compiling" = yes || $as_test_x conftest$ac_exeext }; then ac_cv_func_bind_textdomain_codeset=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_func_bind_textdomain_codeset=no fi rm -rf conftest.dSYM rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext fi { $as_echo "$as_me:$LINENO: result: $ac_cv_func_bind_textdomain_codeset" >&5 $as_echo "$ac_cv_func_bind_textdomain_codeset" >&6; } 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 -rf conftest.dSYM rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ 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 cat >>confdefs.h <<\_ACEOF #define ENABLE_NLS 1 _ACEOF fi if test "$XGETTEXT" != ":"; then if $XGETTEXT --omit-header /dev/null 2> /dev/null; then : ; else { $as_echo "$as_me:$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:$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:$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 pkg_failed=no { $as_echo "$as_me:$LINENO: checking for GTKMM" >&5 $as_echo_n "checking for GTKMM... " >&6; } if test -n "$PKG_CONFIG"; then if test -n "$GTKMM_CFLAGS"; then pkg_cv_GTKMM_CFLAGS="$GTKMM_CFLAGS" else if test -n "$PKG_CONFIG" && \ { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \" gtkmm-2.4 >= 2.8.0 \"") >&5 ($PKG_CONFIG --exists --print-errors " gtkmm-2.4 >= 2.8.0 ") 2>&5 ac_status=$? $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; then pkg_cv_GTKMM_CFLAGS=`$PKG_CONFIG --cflags " gtkmm-2.4 >= 2.8.0 " 2>/dev/null` else pkg_failed=yes fi fi else pkg_failed=untried fi if test -n "$PKG_CONFIG"; then if test -n "$GTKMM_LIBS"; then pkg_cv_GTKMM_LIBS="$GTKMM_LIBS" else if test -n "$PKG_CONFIG" && \ { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \" gtkmm-2.4 >= 2.8.0 \"") >&5 ($PKG_CONFIG --exists --print-errors " gtkmm-2.4 >= 2.8.0 ") 2>&5 ac_status=$? $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; then pkg_cv_GTKMM_LIBS=`$PKG_CONFIG --libs " gtkmm-2.4 >= 2.8.0 " 2>/dev/null` else pkg_failed=yes fi 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 GTKMM_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors " gtkmm-2.4 >= 2.8.0 "` else GTKMM_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors " gtkmm-2.4 >= 2.8.0 "` fi # Put the nasty error message in config.log where it belongs echo "$GTKMM_PKG_ERRORS" >&5 { { $as_echo "$as_me:$LINENO: error: Package requirements ( gtkmm-2.4 >= 2.8.0 ) were not met: $GTKMM_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 GTKMM_CFLAGS and GTKMM_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details. " >&5 $as_echo "$as_me: error: Package requirements ( gtkmm-2.4 >= 2.8.0 ) were not met: $GTKMM_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 GTKMM_CFLAGS and GTKMM_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details. " >&2;} { (exit 1); exit 1; }; } elif test $pkg_failed = untried; then { { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} { { $as_echo "$as_me:$LINENO: 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 GTKMM_CFLAGS and GTKMM_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." >&5 $as_echo "$as_me: 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 GTKMM_CFLAGS and GTKMM_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." >&2;} { (exit 1); exit 1; }; }; } else GTKMM_CFLAGS=$pkg_cv_GTKMM_CFLAGS GTKMM_LIBS=$pkg_cv_GTKMM_LIBS { $as_echo "$as_me:$LINENO: result: yes" >&5 $as_echo "yes" >&6; } : fi pkg_failed=no { $as_echo "$as_me:$LINENO: checking for LIBGLADEMM" >&5 $as_echo_n "checking for LIBGLADEMM... " >&6; } if test -n "$PKG_CONFIG"; then if test -n "$LIBGLADEMM_CFLAGS"; then pkg_cv_LIBGLADEMM_CFLAGS="$LIBGLADEMM_CFLAGS" else if test -n "$PKG_CONFIG" && \ { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \" libglademm-2.4 \"") >&5 ($PKG_CONFIG --exists --print-errors " libglademm-2.4 ") 2>&5 ac_status=$? $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; then pkg_cv_LIBGLADEMM_CFLAGS=`$PKG_CONFIG --cflags " libglademm-2.4 " 2>/dev/null` else pkg_failed=yes fi fi else pkg_failed=untried fi if test -n "$PKG_CONFIG"; then if test -n "$LIBGLADEMM_LIBS"; then pkg_cv_LIBGLADEMM_LIBS="$LIBGLADEMM_LIBS" else if test -n "$PKG_CONFIG" && \ { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \" libglademm-2.4 \"") >&5 ($PKG_CONFIG --exists --print-errors " libglademm-2.4 ") 2>&5 ac_status=$? $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; then pkg_cv_LIBGLADEMM_LIBS=`$PKG_CONFIG --libs " libglademm-2.4 " 2>/dev/null` else pkg_failed=yes fi 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 LIBGLADEMM_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors " libglademm-2.4 "` else LIBGLADEMM_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors " libglademm-2.4 "` fi # Put the nasty error message in config.log where it belongs echo "$LIBGLADEMM_PKG_ERRORS" >&5 { { $as_echo "$as_me:$LINENO: error: Package requirements ( libglademm-2.4 ) were not met: $LIBGLADEMM_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 LIBGLADEMM_CFLAGS and LIBGLADEMM_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details. " >&5 $as_echo "$as_me: error: Package requirements ( libglademm-2.4 ) were not met: $LIBGLADEMM_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 LIBGLADEMM_CFLAGS and LIBGLADEMM_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details. " >&2;} { (exit 1); exit 1; }; } elif test $pkg_failed = untried; then { { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} { { $as_echo "$as_me:$LINENO: 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 LIBGLADEMM_CFLAGS and LIBGLADEMM_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." >&5 $as_echo "$as_me: 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 LIBGLADEMM_CFLAGS and LIBGLADEMM_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." >&2;} { (exit 1); exit 1; }; }; } else LIBGLADEMM_CFLAGS=$pkg_cv_LIBGLADEMM_CFLAGS LIBGLADEMM_LIBS=$pkg_cv_LIBGLADEMM_LIBS { $as_echo "$as_me:$LINENO: result: yes" >&5 $as_echo "yes" >&6; } : fi pkg_failed=no { $as_echo "$as_me:$LINENO: checking for PRINTING" >&5 $as_echo_n "checking for PRINTING... " >&6; } if test -n "$PKG_CONFIG"; then if test -n "$PRINTING_CFLAGS"; then pkg_cv_PRINTING_CFLAGS="$PRINTING_CFLAGS" else if test -n "$PKG_CONFIG" && \ { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"gtkmm-2.4 >= 2.10.0\"") >&5 ($PKG_CONFIG --exists --print-errors "gtkmm-2.4 >= 2.10.0") 2>&5 ac_status=$? $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; then pkg_cv_PRINTING_CFLAGS=`$PKG_CONFIG --cflags "gtkmm-2.4 >= 2.10.0" 2>/dev/null` else pkg_failed=yes fi fi else pkg_failed=untried fi if test -n "$PKG_CONFIG"; then if test -n "$PRINTING_LIBS"; then pkg_cv_PRINTING_LIBS="$PRINTING_LIBS" else if test -n "$PKG_CONFIG" && \ { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"gtkmm-2.4 >= 2.10.0\"") >&5 ($PKG_CONFIG --exists --print-errors "gtkmm-2.4 >= 2.10.0") 2>&5 ac_status=$? $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; then pkg_cv_PRINTING_LIBS=`$PKG_CONFIG --libs "gtkmm-2.4 >= 2.10.0" 2>/dev/null` else pkg_failed=yes fi 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 PRINTING_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors "gtkmm-2.4 >= 2.10.0"` else PRINTING_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "gtkmm-2.4 >= 2.10.0"` fi # Put the nasty error message in config.log where it belongs echo "$PRINTING_PKG_ERRORS" >&5 { $as_echo "$as_me:$LINENO: result: no" >&5 $as_echo "no" >&6; } have_gtk_printing=no elif test $pkg_failed = untried; then have_gtk_printing=no else PRINTING_CFLAGS=$pkg_cv_PRINTING_CFLAGS PRINTING_LIBS=$pkg_cv_PRINTING_LIBS { $as_echo "$as_me:$LINENO: result: yes" >&5 $as_echo "yes" >&6; } have_gtk_printing=yes fi if test "x$have_gtk_printing" = "xyes"; then cat >>confdefs.h <<\_ACEOF #define HAVE_GTK_PRINTING 1 _ACEOF else { $as_echo "$as_me:$LINENO: result: no" >&5 $as_echo "no" >&6; } fi pkg_failed=no { $as_echo "$as_me:$LINENO: checking for CAIRO_RING" >&5 $as_echo_n "checking for CAIRO_RING... " >&6; } if test -n "$PKG_CONFIG"; then if test -n "$CAIRO_RING_CFLAGS"; then pkg_cv_CAIRO_RING_CFLAGS="$CAIRO_RING_CFLAGS" else if test -n "$PKG_CONFIG" && \ { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"cairomm-1.0 >= 1.2.0 glib-2.0\"") >&5 ($PKG_CONFIG --exists --print-errors "cairomm-1.0 >= 1.2.0 glib-2.0") 2>&5 ac_status=$? $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; then pkg_cv_CAIRO_RING_CFLAGS=`$PKG_CONFIG --cflags "cairomm-1.0 >= 1.2.0 glib-2.0" 2>/dev/null` else pkg_failed=yes fi fi else pkg_failed=untried fi if test -n "$PKG_CONFIG"; then if test -n "$CAIRO_RING_LIBS"; then pkg_cv_CAIRO_RING_LIBS="$CAIRO_RING_LIBS" else if test -n "$PKG_CONFIG" && \ { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"cairomm-1.0 >= 1.2.0 glib-2.0\"") >&5 ($PKG_CONFIG --exists --print-errors "cairomm-1.0 >= 1.2.0 glib-2.0") 2>&5 ac_status=$? $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; then pkg_cv_CAIRO_RING_LIBS=`$PKG_CONFIG --libs "cairomm-1.0 >= 1.2.0 glib-2.0" 2>/dev/null` else pkg_failed=yes fi 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 CAIRO_RING_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors "cairomm-1.0 >= 1.2.0 glib-2.0"` else CAIRO_RING_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "cairomm-1.0 >= 1.2.0 glib-2.0"` fi # Put the nasty error message in config.log where it belongs echo "$CAIRO_RING_PKG_ERRORS" >&5 { $as_echo "$as_me:$LINENO: result: no" >&5 $as_echo "no" >&6; } build_cairo_ring=no elif test $pkg_failed = untried; then build_cairo_ring=no else CAIRO_RING_CFLAGS=$pkg_cv_CAIRO_RING_CFLAGS CAIRO_RING_LIBS=$pkg_cv_CAIRO_RING_LIBS { $as_echo "$as_me:$LINENO: result: yes" >&5 $as_echo "yes" >&6; } build_cairo_ring=yes fi if test "x$build_cairo_ring" = "xyes"; then BUILD_CAIRO_RING_TRUE= BUILD_CAIRO_RING_FALSE='#' else BUILD_CAIRO_RING_TRUE='#' BUILD_CAIRO_RING_FALSE= fi # Check whether --enable-gnome was given. if test "${enable_gnome+set}" = set; then enableval=$enable_gnome; else enable_gnome=yes fi if test "x$enable_gnome" = "xyes"; then pkg_failed=no { $as_echo "$as_me:$LINENO: checking for GNOME" >&5 $as_echo_n "checking for GNOME... " >&6; } if test -n "$PKG_CONFIG"; then if test -n "$GNOME_CFLAGS"; then pkg_cv_GNOME_CFLAGS="$GNOME_CFLAGS" else if test -n "$PKG_CONFIG" && \ { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"libgnomeui-2.0\"") >&5 ($PKG_CONFIG --exists --print-errors "libgnomeui-2.0") 2>&5 ac_status=$? $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; then pkg_cv_GNOME_CFLAGS=`$PKG_CONFIG --cflags "libgnomeui-2.0" 2>/dev/null` else pkg_failed=yes fi fi else pkg_failed=untried fi if test -n "$PKG_CONFIG"; then if test -n "$GNOME_LIBS"; then pkg_cv_GNOME_LIBS="$GNOME_LIBS" else if test -n "$PKG_CONFIG" && \ { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"libgnomeui-2.0\"") >&5 ($PKG_CONFIG --exists --print-errors "libgnomeui-2.0") 2>&5 ac_status=$? $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; then pkg_cv_GNOME_LIBS=`$PKG_CONFIG --libs "libgnomeui-2.0" 2>/dev/null` else pkg_failed=yes fi 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 GNOME_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors "libgnomeui-2.0"` else GNOME_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "libgnomeui-2.0"` fi # Put the nasty error message in config.log where it belongs echo "$GNOME_PKG_ERRORS" >&5 { { $as_echo "$as_me:$LINENO: error: Package requirements (libgnomeui-2.0) were not met: $GNOME_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 GNOME_CFLAGS and GNOME_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details. " >&5 $as_echo "$as_me: error: Package requirements (libgnomeui-2.0) were not met: $GNOME_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 GNOME_CFLAGS and GNOME_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details. " >&2;} { (exit 1); exit 1; }; } elif test $pkg_failed = untried; then { { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} { { $as_echo "$as_me:$LINENO: 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 GNOME_CFLAGS and GNOME_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." >&5 $as_echo "$as_me: 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 GNOME_CFLAGS and GNOME_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." >&2;} { (exit 1); exit 1; }; }; } else GNOME_CFLAGS=$pkg_cv_GNOME_CFLAGS GNOME_LIBS=$pkg_cv_GNOME_LIBS { $as_echo "$as_me:$LINENO: result: yes" >&5 $as_echo "yes" >&6; } : fi cat >>confdefs.h <<\_ACEOF #define HAVE_GNOME 1 _ACEOF fi # Check whether --enable-gconf was given. if test "${enable_gconf+set}" = set; then enableval=$enable_gconf; else enable_gconf=yes fi if test "x$enable_gconf" = "xyes"; then pkg_failed=no { $as_echo "$as_me:$LINENO: checking for GCONFMM" >&5 $as_echo_n "checking for GCONFMM... " >&6; } if test -n "$PKG_CONFIG"; then if test -n "$GCONFMM_CFLAGS"; then pkg_cv_GCONFMM_CFLAGS="$GCONFMM_CFLAGS" else if test -n "$PKG_CONFIG" && \ { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"gconfmm-2.6\"") >&5 ($PKG_CONFIG --exists --print-errors "gconfmm-2.6") 2>&5 ac_status=$? $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; then pkg_cv_GCONFMM_CFLAGS=`$PKG_CONFIG --cflags "gconfmm-2.6" 2>/dev/null` else pkg_failed=yes fi fi else pkg_failed=untried fi if test -n "$PKG_CONFIG"; then if test -n "$GCONFMM_LIBS"; then pkg_cv_GCONFMM_LIBS="$GCONFMM_LIBS" else if test -n "$PKG_CONFIG" && \ { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"gconfmm-2.6\"") >&5 ($PKG_CONFIG --exists --print-errors "gconfmm-2.6") 2>&5 ac_status=$? $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; then pkg_cv_GCONFMM_LIBS=`$PKG_CONFIG --libs "gconfmm-2.6" 2>/dev/null` else pkg_failed=yes fi 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 GCONFMM_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors "gconfmm-2.6"` else GCONFMM_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "gconfmm-2.6"` fi # Put the nasty error message in config.log where it belongs echo "$GCONFMM_PKG_ERRORS" >&5 { { $as_echo "$as_me:$LINENO: error: Package requirements (gconfmm-2.6) were not met: $GCONFMM_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 GCONFMM_CFLAGS and GCONFMM_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details. " >&5 $as_echo "$as_me: error: Package requirements (gconfmm-2.6) were not met: $GCONFMM_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 GCONFMM_CFLAGS and GCONFMM_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details. " >&2;} { (exit 1); exit 1; }; } elif test $pkg_failed = untried; then { { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} { { $as_echo "$as_me:$LINENO: 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 GCONFMM_CFLAGS and GCONFMM_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." >&5 $as_echo "$as_me: 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 GCONFMM_CFLAGS and GCONFMM_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." >&2;} { (exit 1); exit 1; }; }; } else GCONFMM_CFLAGS=$pkg_cv_GCONFMM_CFLAGS GCONFMM_LIBS=$pkg_cv_GCONFMM_LIBS { $as_echo "$as_me:$LINENO: result: yes" >&5 $as_echo "yes" >&6; } : fi cat >>confdefs.h <<\_ACEOF #define HAVE_GCONFMM 1 _ACEOF # Extract the first word of "gconftool-2", so it can be a program name with args. set dummy gconftool-2; ac_word=$2 { $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if test "${ac_cv_path_GCONFTOOL+set}" = set; then $as_echo_n "(cached) " >&6 else case $GCONFTOOL in [\\/]* | ?:[\\/]*) ac_cv_path_GCONFTOOL="$GCONFTOOL" # 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_GCONFTOOL="$as_dir/$ac_word$ac_exec_ext" $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS ;; esac fi GCONFTOOL=$ac_cv_path_GCONFTOOL if test -n "$GCONFTOOL"; then { $as_echo "$as_me:$LINENO: result: $GCONFTOOL" >&5 $as_echo "$GCONFTOOL" >&6; } else { $as_echo "$as_me:$LINENO: result: no" >&5 $as_echo "no" >&6; } fi if test "x$GCONF_SCHEMA_INSTALL_SOURCE" = "x"; then GCONF_SCHEMA_CONFIG_SOURCE=`gconftool-2 --get-default-source` else GCONF_SCHEMA_CONFIG_SOURCE=$GCONF_SCHEMA_INSTALL_SOURCE fi # Check whether --with-gconf-source was given. if test "${with_gconf_source+set}" = set; then withval=$with_gconf_source; GCONF_SCHEMA_CONFIG_SOURCE="$withval" fi { $as_echo "$as_me:$LINENO: result: Using config source $GCONF_SCHEMA_CONFIG_SOURCE for schema installation" >&5 $as_echo "Using config source $GCONF_SCHEMA_CONFIG_SOURCE for schema installation" >&6; } if test "x$GCONF_SCHEMA_FILE_DIR" = "x"; then GCONF_SCHEMA_FILE_DIR='$(sysconfdir)/gconf/schemas' fi # Check whether --with-gconf-schema-file-dir was given. if test "${with_gconf_schema_file_dir+set}" = set; then withval=$with_gconf_schema_file_dir; GCONF_SCHEMA_FILE_DIR="$withval" fi { $as_echo "$as_me:$LINENO: result: Using $GCONF_SCHEMA_FILE_DIR as install directory for schema files" >&5 $as_echo "Using $GCONF_SCHEMA_FILE_DIR as install directory for schema files" >&6; } # Check whether --enable-schemas-install was given. if test "${enable_schemas_install+set}" = set; then enableval=$enable_schemas_install; case ${enableval} in yes|no) ;; *) { { $as_echo "$as_me:$LINENO: error: bad value ${enableval} for --enable-schemas-install" >&5 $as_echo "$as_me: error: bad value ${enableval} for --enable-schemas-install" >&2;} { (exit 1); exit 1; }; } ;; esac fi if test "$enable_schemas_install" != no; then GCONF_SCHEMAS_INSTALL_TRUE= GCONF_SCHEMAS_INSTALL_FALSE='#' else GCONF_SCHEMAS_INSTALL_TRUE='#' GCONF_SCHEMAS_INSTALL_FALSE= fi else if false; then GCONF_SCHEMAS_INSTALL_TRUE= GCONF_SCHEMAS_INSTALL_FALSE='#' else GCONF_SCHEMAS_INSTALL_TRUE='#' GCONF_SCHEMAS_INSTALL_FALSE= fi fi # Check whether --enable-debug-mode was given. if test "${enable_debug_mode+set}" = set; then enableval=$enable_debug_mode; else enable_debug_mode=no fi { $as_echo "$as_me:$LINENO: checking whether to compile with debug settings" >&5 $as_echo_n "checking whether to compile with debug settings... " >&6; } if test "x$AGAVE_DEVEL" = "xon" ; then enable_debug_mode=yes fi if test "x$enable_debug_mode" = "xyes"; then { $as_echo "$as_me:$LINENO: result: yes" >&5 $as_echo "yes" >&6; } CXXFLAGS=`echo "$CXXFLAGS" | $SED -e 's/-O[0-9]*//g'` CFLAGS=`echo "$CFLAGS" | $SED -e 's/-O[0-9]*//g'` else { $as_echo "$as_me:$LINENO: result: no" >&5 $as_echo "no" >&6; } fi CXXFLAGS="$CXXFLAGS -Wall" # Check whether --enable-more-warnings was given. if test "${enable_more_warnings+set}" = set; then enableval=$enable_more_warnings; set_more_warnings="$enableval" else set_more_warnings=no fi { $as_echo "$as_me:$LINENO: checking for more warnings" >&5 $as_echo_n "checking for more warnings... " >&6; } if test "$GXX" = "yes" -a "$set_more_warnings" != "no"; then { $as_echo "$as_me:$LINENO: result: yes" >&5 $as_echo "yes" >&6; } CXXFLAGS="-Wextra -Weffc++ -Wctor-dtor-privacy -Woverloaded-virtual -Wchar-subscripts -Wpointer-arith \ -Wcast-align -Wsign-compare -Werror \ $CXXFLAGS" for option in -Wno-strict-aliasing -Wno-sign-compare; do SAVE_CFLAGS="$CXXFLAGS" CFLAGS="$CXXFLAGS $option" { $as_echo "$as_me:$LINENO: checking whether gcc understands $option" >&5 $as_echo_n "checking whether gcc understands $option... " >&6; } cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ int main () { ; return 0; } _ACEOF 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:$LINENO: $ac_try_echo\"" $as_echo "$ac_try_echo") >&5 (eval "$ac_compile") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { test -z "$ac_cxx_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then has_option=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 has_option=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext if test $has_option = no; then CXXFLAGS="$SAVE_CFLAGS" fi { $as_echo "$as_me:$LINENO: result: $has_option" >&5 $as_echo "$has_option" >&6; } unset has_option unset SAVE_CFLAGS done unset option else { $as_echo "$as_me:$LINENO: result: no" >&5 $as_echo "no" >&6; } fi # Check whether --enable-cppunit was given. if test "${enable_cppunit+set}" = set; then enableval=$enable_cppunit; else enable_cppunit=yes fi if test "x$enable_cppunit" = "xyes"; then HAVE_CPPUNIT_TRUE= HAVE_CPPUNIT_FALSE='#' else HAVE_CPPUNIT_TRUE='#' HAVE_CPPUNIT_FALSE= fi if test -n HAVE_CPPUNIT; then # Check whether --with-cppunit-prefix was given. if test "${with_cppunit_prefix+set}" = set; then withval=$with_cppunit_prefix; cppunit_config_prefix="$withval" else cppunit_config_prefix="" fi # Check whether --with-cppunit-exec-prefix was given. if test "${with_cppunit_exec_prefix+set}" = set; then withval=$with_cppunit_exec_prefix; cppunit_config_exec_prefix="$withval" else cppunit_config_exec_prefix="" fi if test x$cppunit_config_exec_prefix != x ; then cppunit_config_args="$cppunit_config_args --exec-prefix=$cppunit_config_exec_prefix" if test x${CPPUNIT_CONFIG+set} != xset ; then CPPUNIT_CONFIG=$cppunit_config_exec_prefix/bin/cppunit-config fi fi if test x$cppunit_config_prefix != x ; then cppunit_config_args="$cppunit_config_args --prefix=$cppunit_config_prefix" if test x${CPPUNIT_CONFIG+set} != xset ; then CPPUNIT_CONFIG=$cppunit_config_prefix/bin/cppunit-config fi fi # Extract the first word of "cppunit-config", so it can be a program name with args. set dummy cppunit-config; ac_word=$2 { $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if test "${ac_cv_path_CPPUNIT_CONFIG+set}" = set; then $as_echo_n "(cached) " >&6 else case $CPPUNIT_CONFIG in [\\/]* | ?:[\\/]*) ac_cv_path_CPPUNIT_CONFIG="$CPPUNIT_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_CPPUNIT_CONFIG="$as_dir/$ac_word$ac_exec_ext" $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS test -z "$ac_cv_path_CPPUNIT_CONFIG" && ac_cv_path_CPPUNIT_CONFIG="no" ;; esac fi CPPUNIT_CONFIG=$ac_cv_path_CPPUNIT_CONFIG if test -n "$CPPUNIT_CONFIG"; then { $as_echo "$as_me:$LINENO: result: $CPPUNIT_CONFIG" >&5 $as_echo "$CPPUNIT_CONFIG" >&6; } else { $as_echo "$as_me:$LINENO: result: no" >&5 $as_echo "no" >&6; } fi cppunit_version_min=1.10.0 { $as_echo "$as_me:$LINENO: checking for Cppunit - version >= $cppunit_version_min" >&5 $as_echo_n "checking for Cppunit - version >= $cppunit_version_min... " >&6; } no_cppunit="" if test "$CPPUNIT_CONFIG" = "no" ; then no_cppunit=yes else CPPUNIT_CFLAGS=`$CPPUNIT_CONFIG --cflags` CPPUNIT_LIBS=`$CPPUNIT_CONFIG --libs` cppunit_version=`$CPPUNIT_CONFIG --version` cppunit_major_version=`echo $cppunit_version | \ sed 's/\([0-9]*\).\([0-9]*\).\([0-9]*\)/\1/'` cppunit_minor_version=`echo $cppunit_version | \ sed 's/\([0-9]*\).\([0-9]*\).\([0-9]*\)/\2/'` cppunit_micro_version=`echo $cppunit_version | \ sed 's/\([0-9]*\).\([0-9]*\).\([0-9]*\)/\3/'` cppunit_major_min=`echo $cppunit_version_min | \ sed 's/\([0-9]*\).\([0-9]*\).\([0-9]*\)/\1/'` cppunit_minor_min=`echo $cppunit_version_min | \ sed 's/\([0-9]*\).\([0-9]*\).\([0-9]*\)/\2/'` cppunit_micro_min=`echo $cppunit_version_min | \ sed 's/\([0-9]*\).\([0-9]*\).\([0-9]*\)/\3/'` cppunit_version_proper=`expr \ $cppunit_major_version \> $cppunit_major_min \| \ $cppunit_major_version \= $cppunit_major_min \& \ $cppunit_minor_version \> $cppunit_minor_min \| \ $cppunit_major_version \= $cppunit_major_min \& \ $cppunit_minor_version \= $cppunit_minor_min \& \ $cppunit_micro_version \>= $cppunit_micro_min ` if test "$cppunit_version_proper" = "1" ; then { $as_echo "$as_me:$LINENO: result: $cppunit_major_version.$cppunit_minor_version.$cppunit_micro_version" >&5 $as_echo "$cppunit_major_version.$cppunit_minor_version.$cppunit_micro_version" >&6; } else { $as_echo "$as_me:$LINENO: result: no" >&5 $as_echo "no" >&6; } no_cppunit=yes fi fi if test "x$no_cppunit" = x ; then : else CPPUNIT_CFLAGS="" CPPUNIT_LIBS="" : fi fi if test "${ac_cv_header_boost_shared_ptr_hpp+set}" = set; then { $as_echo "$as_me:$LINENO: checking for boost/shared_ptr.hpp" >&5 $as_echo_n "checking for boost/shared_ptr.hpp... " >&6; } if test "${ac_cv_header_boost_shared_ptr_hpp+set}" = set; then $as_echo_n "(cached) " >&6 fi { $as_echo "$as_me:$LINENO: result: $ac_cv_header_boost_shared_ptr_hpp" >&5 $as_echo "$ac_cv_header_boost_shared_ptr_hpp" >&6; } else # Is the header compilable? { $as_echo "$as_me:$LINENO: checking boost/shared_ptr.hpp usability" >&5 $as_echo_n "checking boost/shared_ptr.hpp usability... " >&6; } cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $ac_includes_default #include _ACEOF 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:$LINENO: $ac_try_echo\"" $as_echo "$ac_try_echo") >&5 (eval "$ac_compile") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { test -z "$ac_cxx_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then ac_header_compiler=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_header_compiler=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext { $as_echo "$as_me:$LINENO: result: $ac_header_compiler" >&5 $as_echo "$ac_header_compiler" >&6; } # Is the header present? { $as_echo "$as_me:$LINENO: checking boost/shared_ptr.hpp presence" >&5 $as_echo_n "checking boost/shared_ptr.hpp presence... " >&6; } cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include _ACEOF 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:$LINENO: $ac_try_echo\"" $as_echo "$ac_try_echo") >&5 (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } >/dev/null && { test -z "$ac_cxx_preproc_warn_flag$ac_cxx_werror_flag" || test ! -s conftest.err }; then ac_header_preproc=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_header_preproc=no fi rm -f conftest.err conftest.$ac_ext { $as_echo "$as_me:$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_cxx_preproc_warn_flag in yes:no: ) { $as_echo "$as_me:$LINENO: WARNING: boost/shared_ptr.hpp: accepted by the compiler, rejected by the preprocessor!" >&5 $as_echo "$as_me: WARNING: boost/shared_ptr.hpp: accepted by the compiler, rejected by the preprocessor!" >&2;} { $as_echo "$as_me:$LINENO: WARNING: boost/shared_ptr.hpp: proceeding with the compiler's result" >&5 $as_echo "$as_me: WARNING: boost/shared_ptr.hpp: proceeding with the compiler's result" >&2;} ac_header_preproc=yes ;; no:yes:* ) { $as_echo "$as_me:$LINENO: WARNING: boost/shared_ptr.hpp: present but cannot be compiled" >&5 $as_echo "$as_me: WARNING: boost/shared_ptr.hpp: present but cannot be compiled" >&2;} { $as_echo "$as_me:$LINENO: WARNING: boost/shared_ptr.hpp: check for missing prerequisite headers?" >&5 $as_echo "$as_me: WARNING: boost/shared_ptr.hpp: check for missing prerequisite headers?" >&2;} { $as_echo "$as_me:$LINENO: WARNING: boost/shared_ptr.hpp: see the Autoconf documentation" >&5 $as_echo "$as_me: WARNING: boost/shared_ptr.hpp: see the Autoconf documentation" >&2;} { $as_echo "$as_me:$LINENO: WARNING: boost/shared_ptr.hpp: section \"Present But Cannot Be Compiled\"" >&5 $as_echo "$as_me: WARNING: boost/shared_ptr.hpp: section \"Present But Cannot Be Compiled\"" >&2;} { $as_echo "$as_me:$LINENO: WARNING: boost/shared_ptr.hpp: proceeding with the preprocessor's result" >&5 $as_echo "$as_me: WARNING: boost/shared_ptr.hpp: proceeding with the preprocessor's result" >&2;} { $as_echo "$as_me:$LINENO: WARNING: boost/shared_ptr.hpp: in the future, the compiler will take precedence" >&5 $as_echo "$as_me: WARNING: boost/shared_ptr.hpp: in the future, the compiler will take precedence" >&2;} ( cat <<\_ASBOX ## ------------------------------------------------------ ## ## Report this to https://gna.org/bugs/?group=colorscheme ## ## ------------------------------------------------------ ## _ASBOX ) | sed "s/^/$as_me: WARNING: /" >&2 ;; esac { $as_echo "$as_me:$LINENO: checking for boost/shared_ptr.hpp" >&5 $as_echo_n "checking for boost/shared_ptr.hpp... " >&6; } if test "${ac_cv_header_boost_shared_ptr_hpp+set}" = set; then $as_echo_n "(cached) " >&6 else ac_cv_header_boost_shared_ptr_hpp=$ac_header_preproc fi { $as_echo "$as_me:$LINENO: result: $ac_cv_header_boost_shared_ptr_hpp" >&5 $as_echo "$ac_cv_header_boost_shared_ptr_hpp" >&6; } fi if test "x$ac_cv_header_boost_shared_ptr_hpp" = x""yes; then : else { { $as_echo "$as_me:$LINENO: error: Boost header shared_ptr.hpp not found" >&5 $as_echo "$as_me: error: Boost header shared_ptr.hpp not found" >&2;} { (exit 1); exit 1; }; } fi AGAVE_LIBS=`echo "$GTKMM_LIBS $LIBGLADEMM_LIBS $GCONFMM_LIBS $GNOME_LIBS" | $TR -s "[:blank:]" "\n" | $SORT | $UNIQ | $TR "\n" " "` AGAVE_CFLAGS=`echo "$GTKMM_CFLAGS $LIBGLADEMM_CFLAGS $GCONFMM_CFLAGS $GNOME_CFLAGS" | $TR -s "[:blank:]" "\n" | $SORT | $UNIQ | $TR "\n" " "` AGAVE_LOCALEDIR=${datadir}/locale AGAVE_COMMONDIR=${datadir}/agave AGAVE_ICONDIR=${AGAVE_COMMONDIR}/pixmaps AGAVE_UIDIR=${AGAVE_COMMONDIR}/ui AGAVE_PALETTEDIR=${AGAVE_COMMONDIR}/palettes ac_config_files="$ac_config_files Makefile po/Makefile.in src/Makefile src/core/Makefile src/paletteparser/Makefile src/widgets/Makefile src/dialogs/Makefile pixmaps/Makefile pixmaps/16x16/Makefile pixmaps/22x22/Makefile pixmaps/32x32/Makefile pixmaps/scalable/Makefile data/Makefile data/agave.desktop.in data/ui/Makefile data/palettes/Makefile tests/Makefile tests/core/Makefile tests/paletteparser/Makefile tests/widgets/Makefile help/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:$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= ;; #( *) $as_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:$LINENO: updating cache $cache_file" >&5 $as_echo "$as_me: updating cache $cache_file" >&6;} cat confcache >$cache_file else { $as_echo "$as_me:$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. ac_libobjs="$ac_libobjs \${LIBOBJDIR}$ac_i\$U.$ac_objext" ac_ltlibobjs="$ac_ltlibobjs \${LIBOBJDIR}$ac_i"'$U.lo' done LIBOBJS=$ac_libobjs LTLIBOBJS=$ac_ltlibobjs if test -z "${ENABLE_SK_TRUE}" && test -z "${ENABLE_SK_FALSE}"; then { { $as_echo "$as_me:$LINENO: error: conditional \"ENABLE_SK\" was never defined. Usually this means the macro was only invoked conditionally." >&5 $as_echo "$as_me: error: conditional \"ENABLE_SK\" was never defined. Usually this means the macro was only invoked conditionally." >&2;} { (exit 1); exit 1; }; } fi if test -z "${HAVE_GNOME_DOC_UTILS_TRUE}" && test -z "${HAVE_GNOME_DOC_UTILS_FALSE}"; then { { $as_echo "$as_me:$LINENO: error: conditional \"HAVE_GNOME_DOC_UTILS\" was never defined. Usually this means the macro was only invoked conditionally." >&5 $as_echo "$as_me: error: conditional \"HAVE_GNOME_DOC_UTILS\" was never defined. Usually this means the macro was only invoked conditionally." >&2;} { (exit 1); exit 1; }; } fi if test -z "${AMDEP_TRUE}" && test -z "${AMDEP_FALSE}"; then { { $as_echo "$as_me:$LINENO: error: conditional \"AMDEP\" was never defined. Usually this means the macro was only invoked conditionally." >&5 $as_echo "$as_me: error: conditional \"AMDEP\" was never defined. Usually this means the macro was only invoked conditionally." >&2;} { (exit 1); exit 1; }; } fi if test -z "${am__fastdepCXX_TRUE}" && test -z "${am__fastdepCXX_FALSE}"; then { { $as_echo "$as_me:$LINENO: error: conditional \"am__fastdepCXX\" was never defined. Usually this means the macro was only invoked conditionally." >&5 $as_echo "$as_me: error: conditional \"am__fastdepCXX\" was never defined. Usually this means the macro was only invoked conditionally." >&2;} { (exit 1); exit 1; }; } fi ac_config_commands="$ac_config_commands po/stamp-it" if test -z "${am__fastdepCC_TRUE}" && test -z "${am__fastdepCC_FALSE}"; then { { $as_echo "$as_me:$LINENO: error: conditional \"am__fastdepCC\" was never defined. Usually this means the macro was only invoked conditionally." >&5 $as_echo "$as_me: error: conditional \"am__fastdepCC\" was never defined. Usually this means the macro was only invoked conditionally." >&2;} { (exit 1); exit 1; }; } fi if test -z "${BUILD_CAIRO_RING_TRUE}" && test -z "${BUILD_CAIRO_RING_FALSE}"; then { { $as_echo "$as_me:$LINENO: error: conditional \"BUILD_CAIRO_RING\" was never defined. Usually this means the macro was only invoked conditionally." >&5 $as_echo "$as_me: error: conditional \"BUILD_CAIRO_RING\" was never defined. Usually this means the macro was only invoked conditionally." >&2;} { (exit 1); exit 1; }; } fi if test -z "${GCONF_SCHEMAS_INSTALL_TRUE}" && test -z "${GCONF_SCHEMAS_INSTALL_FALSE}"; then { { $as_echo "$as_me:$LINENO: error: conditional \"GCONF_SCHEMAS_INSTALL\" was never defined. Usually this means the macro was only invoked conditionally." >&5 $as_echo "$as_me: error: conditional \"GCONF_SCHEMAS_INSTALL\" was never defined. Usually this means the macro was only invoked conditionally." >&2;} { (exit 1); exit 1; }; } fi if test -z "${GCONF_SCHEMAS_INSTALL_TRUE}" && test -z "${GCONF_SCHEMAS_INSTALL_FALSE}"; then { { $as_echo "$as_me:$LINENO: error: conditional \"GCONF_SCHEMAS_INSTALL\" was never defined. Usually this means the macro was only invoked conditionally." >&5 $as_echo "$as_me: error: conditional \"GCONF_SCHEMAS_INSTALL\" was never defined. Usually this means the macro was only invoked conditionally." >&2;} { (exit 1); exit 1; }; } fi if test -z "${HAVE_CPPUNIT_TRUE}" && test -z "${HAVE_CPPUNIT_FALSE}"; then { { $as_echo "$as_me:$LINENO: error: conditional \"HAVE_CPPUNIT\" was never defined. Usually this means the macro was only invoked conditionally." >&5 $as_echo "$as_me: error: conditional \"HAVE_CPPUNIT\" was never defined. Usually this means the macro was only invoked conditionally." >&2;} { (exit 1); exit 1; }; } 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:$LINENO: creating $CONFIG_STATUS" >&5 $as_echo "$as_me: creating $CONFIG_STATUS" >&6;} cat >$CONFIG_STATUS <<_ACEOF || ac_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} _ACEOF cat >>$CONFIG_STATUS <<\_ACEOF || ac_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 # PATH needs CR # 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_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 if (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 # Support unset when possible. if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then as_unset=unset else as_unset=false 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); exit 1; } fi # Work around bugs in pre-3.0 UWIN ksh. for as_var in ENV MAIL MAILPATH do ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var done PS1='$ ' PS2='> ' PS4='+ ' # NLS nuisances. LC_ALL=C export LC_ALL LANGUAGE=C export LANGUAGE # Required to use basename. 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 # Name of the executable. 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'` # CDPATH. $as_unset CDPATH as_lineno_1=$LINENO as_lineno_2=$LINENO test "x$as_lineno_1" != "x$as_lineno_2" && test "x`expr $as_lineno_1 + 1`" = "x$as_lineno_2" || { # Create $as_me.lineno as a copy of $as_myself, but with $LINENO # uniformly replaced by the line number. The first 'sed' inserts a # line-number line after each line using $LINENO; the second 'sed' # does the real work. The second script uses 'N' to pair each # line-number line with the line containing $LINENO, and appends # trailing '-' during substitution so that $LINENO is not a special # case at line end. # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the # scripts with optimization help from Paolo Bonzini. 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 { (exit 1); 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 } if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then as_dirname=dirname else as_dirname=false fi ECHO_C= ECHO_N= ECHO_T= case `echo -n x` in -n*) case `echo 'x\c'` in *c*) ECHO_T=' ';; # ECHO_T is single tab character. *) ECHO_C='\c';; esac;; *) ECHO_N='-n';; esac if expr a : '\(a\)' >/dev/null 2>&1 && test "X`expr 00001 : '.*\(...\)'`" = X001; then as_expr=expr else as_expr=false fi 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=: 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 # 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 Agave $as_me 0.4.7, which was generated by GNU Autoconf 2.63. 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 from templates according to the current configuration. Usage: $0 [OPTION]... [FILE]... -h, --help print this help, then exit -V, --version print version number and configuration settings, 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_version="\\ Agave config.status 0.4.7 configured by $0, generated by GNU Autoconf 2.63, with options \\"`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\" Copyright (C) 2008 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 ;; --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 CONFIG_FILES="$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 CONFIG_HEADERS="$CONFIG_HEADERS '$ac_optarg'" ac_need_defaults=false;; --he | --h) # Conflict between --help and --header { $as_echo "$as_me: error: ambiguous option: $1 Try \`$0 --help' for more information." >&2 { (exit 1); exit 1; }; };; --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_echo "$as_me: error: unrecognized option: $1 Try \`$0 --help' for more information." >&2 { (exit 1); exit 1; }; } ;; *) ac_config_targets="$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" _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" ;; "default-1") CONFIG_COMMANDS="$CONFIG_COMMANDS default-1" ;; "Makefile") CONFIG_FILES="$CONFIG_FILES Makefile" ;; "po/Makefile.in") CONFIG_FILES="$CONFIG_FILES po/Makefile.in" ;; "src/Makefile") CONFIG_FILES="$CONFIG_FILES src/Makefile" ;; "src/core/Makefile") CONFIG_FILES="$CONFIG_FILES src/core/Makefile" ;; "src/paletteparser/Makefile") CONFIG_FILES="$CONFIG_FILES src/paletteparser/Makefile" ;; "src/widgets/Makefile") CONFIG_FILES="$CONFIG_FILES src/widgets/Makefile" ;; "src/dialogs/Makefile") CONFIG_FILES="$CONFIG_FILES src/dialogs/Makefile" ;; "pixmaps/Makefile") CONFIG_FILES="$CONFIG_FILES pixmaps/Makefile" ;; "pixmaps/16x16/Makefile") CONFIG_FILES="$CONFIG_FILES pixmaps/16x16/Makefile" ;; "pixmaps/22x22/Makefile") CONFIG_FILES="$CONFIG_FILES pixmaps/22x22/Makefile" ;; "pixmaps/32x32/Makefile") CONFIG_FILES="$CONFIG_FILES pixmaps/32x32/Makefile" ;; "pixmaps/scalable/Makefile") CONFIG_FILES="$CONFIG_FILES pixmaps/scalable/Makefile" ;; "data/Makefile") CONFIG_FILES="$CONFIG_FILES data/Makefile" ;; "data/agave.desktop.in") CONFIG_FILES="$CONFIG_FILES data/agave.desktop.in" ;; "data/ui/Makefile") CONFIG_FILES="$CONFIG_FILES data/ui/Makefile" ;; "data/palettes/Makefile") CONFIG_FILES="$CONFIG_FILES data/palettes/Makefile" ;; "tests/Makefile") CONFIG_FILES="$CONFIG_FILES tests/Makefile" ;; "tests/core/Makefile") CONFIG_FILES="$CONFIG_FILES tests/core/Makefile" ;; "tests/paletteparser/Makefile") CONFIG_FILES="$CONFIG_FILES tests/paletteparser/Makefile" ;; "tests/widgets/Makefile") CONFIG_FILES="$CONFIG_FILES tests/widgets/Makefile" ;; "help/Makefile") CONFIG_FILES="$CONFIG_FILES help/Makefile" ;; "po/stamp-it") CONFIG_COMMANDS="$CONFIG_COMMANDS po/stamp-it" ;; *) { { $as_echo "$as_me:$LINENO: error: invalid argument: $ac_config_target" >&5 $as_echo "$as_me: error: invalid argument: $ac_config_target" >&2;} { (exit 1); exit 1; }; };; 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 '{ (exit 1); 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_echo "$as_me: cannot create a temporary directory in ." >&2 { (exit 1); exit 1; } } # 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=' ' 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_echo "$as_me:$LINENO: error: could not make $CONFIG_STATUS" >&5 $as_echo "$as_me: error: could not make $CONFIG_STATUS" >&2;} { (exit 1); exit 1; }; } 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_echo "$as_me:$LINENO: error: could not make $CONFIG_STATUS" >&5 $as_echo "$as_me: error: could not make $CONFIG_STATUS" >&2;} { (exit 1); exit 1; }; } 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_echo "$as_me:$LINENO: error: could not make $CONFIG_STATUS" >&5 $as_echo "$as_me: error: could not make $CONFIG_STATUS" >&2;} { (exit 1); exit 1; }; } 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_echo "$as_me:$LINENO: error: could not setup config files machinery" >&5 $as_echo "$as_me: error: could not setup config files machinery" >&2;} { (exit 1); exit 1; }; } _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_echo "$as_me:$LINENO: error: could not make $CONFIG_HEADERS" >&5 $as_echo "$as_me: error: could not make $CONFIG_HEADERS" >&2;} { (exit 1); exit 1; }; } 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_echo "$as_me:$LINENO: error: could not setup config headers machinery" >&5 $as_echo "$as_me: error: could not setup config headers machinery" >&2;} { (exit 1); exit 1; }; } 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_echo "$as_me:$LINENO: error: invalid tag $ac_tag" >&5 $as_echo "$as_me: error: invalid tag $ac_tag" >&2;} { (exit 1); exit 1; }; };; :[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_echo "$as_me:$LINENO: error: cannot find input file: $ac_f" >&5 $as_echo "$as_me: error: cannot find input file: $ac_f" >&2;} { (exit 1); exit 1; }; };; esac case $ac_f in *\'*) ac_f=`$as_echo "$ac_f" | sed "s/'/'\\\\\\\\''/g"`;; esac ac_file_inputs="$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:$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_echo "$as_me:$LINENO: error: could not create $ac_file" >&5 $as_echo "$as_me: error: could not create $ac_file" >&2;} { (exit 1); exit 1; }; } ;; 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" case $as_dir in #( -*) as_dir=./$as_dir;; esac test -d "$as_dir" || { $as_mkdir_p && mkdir -p "$as_dir"; } || { 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_echo "$as_me:$LINENO: error: cannot create directory $as_dir" >&5 $as_echo "$as_me: error: cannot create directory $as_dir" >&2;} { (exit 1); exit 1; }; }; } 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:$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_echo "$as_me:$LINENO: error: could not create $ac_file" >&5 $as_echo "$as_me: error: could not create $ac_file" >&2;} { (exit 1); exit 1; }; } 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:$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_echo "$as_me:$LINENO: error: could not create $ac_file" >&5 $as_echo "$as_me: error: could not create $ac_file" >&2;} { (exit 1); exit 1; }; } ;; :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_echo "$as_me:$LINENO: error: could not create $ac_file" >&5 $as_echo "$as_me: error: could not create $ac_file" >&2;} { (exit 1); exit 1; }; } if diff "$ac_file" "$tmp/config.h" >/dev/null 2>&1; then { $as_echo "$as_me:$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_echo "$as_me:$LINENO: error: could not create $ac_file" >&5 $as_echo "$as_me: error: could not create $ac_file" >&2;} { (exit 1); exit 1; }; } fi else $as_echo "/* $configure_input */" \ && eval '$AWK -f "$tmp/defines.awk"' "$ac_file_inputs" \ || { { $as_echo "$as_me:$LINENO: error: could not create -" >&5 $as_echo "$as_me: error: could not create -" >&2;} { (exit 1); exit 1; }; } 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:$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 case $as_dir in #( -*) as_dir=./$as_dir;; esac test -d "$as_dir" || { $as_mkdir_p && mkdir -p "$as_dir"; } || { 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_echo "$as_me:$LINENO: error: cannot create directory $as_dir" >&5 $as_echo "$as_me: error: cannot create directory $as_dir" >&2;} { (exit 1); exit 1; }; }; } # echo "creating $dirpart/$file" echo '# dummy' > "$dirpart/$file" done done ;; "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_echo "$as_me:$LINENO: error: po/Makefile.in.in was not created by intltoolize." >&5 $as_echo "$as_me: error: po/Makefile.in.in was not created by intltoolize." >&2;} { (exit 1); exit 1; }; } 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 { (exit 0); exit 0; } _ACEOF chmod +x $CONFIG_STATUS ac_clean_files=$ac_clean_files_save test $ac_write_fail = 0 || { { $as_echo "$as_me:$LINENO: error: write failure creating $CONFIG_STATUS" >&5 $as_echo "$as_me: error: write failure creating $CONFIG_STATUS" >&2;} { (exit 1); exit 1; }; } # 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 || { (exit 1); exit 1; } fi if test -n "$ac_unrecognized_opts" && test "$enable_option_checking" != no; then { $as_echo "$as_me:$LINENO: WARNING: unrecognized options: $ac_unrecognized_opts" >&5 $as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2;} fi echo "" echo "======================================================================" echo "" echo "$PACKAGE_NAME configuration:" echo " C compiler : $CC" echo " C++ compiler : $CXX" echo " Prefix : $prefix" echo "" echo "$PACKAGE_NAME will be compiled with the following features:" echo " Gconfmm support : $enable_gconf" echo " GNOME library support : $enable_gnome" echo " Printing support : $have_gtk_printing" echo " Build Cairo Ring utility: $build_cairo_ring" echo "" echo "The following options will be passed to the compiler:" echo " CFLAGS: $CFLAGS" echo " CXXFLAGS: $CXXFLAGS" echo "" echo " AGAVE_CFLAGS: $AGAVE_CFLAGS" echo "" echo " AGAVE_LIBS: $AGAVE_LIBS" echo "" echo "======================================================================" echo "" agave-0.4.7/config.guess0000755000175000017500000012703510712511433012053 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 Free Software Foundation, # Inc. timestamp='2007-03-06' # 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 to . Submit a context # diff and a properly formatted 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. # # The plan is that this can be called by configure scripts if you # don't specify an explicit build system type. 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 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 __ELF__ >/dev/null 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 ;; 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:SunOS:5.*:*) echo i386-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:*:[45]) 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 __LP64__ >/dev/null 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*:[3456]*) case ${UNAME_MACHINE} in x86) echo i586-pc-interix${UNAME_RELEASE} exit ;; EM64T | authenticamd) echo x86_64-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 ;; 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 ;; arm*:Linux:*:*) echo ${UNAME_MACHINE}-unknown-linux-gnu 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 ;; 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:*:*) eval $set_cc_for_build sed 's/^ //' << EOF >$dummy.c #undef CPU #undef mips #undef mipsel #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL) CPU=mipsel #else #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB) CPU=mips #else CPU= #endif #endif EOF eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n ' /^CPU/{ s: ::g p }'`" test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; } ;; mips64:Linux:*:*) eval $set_cc_for_build sed 's/^ //' << EOF >$dummy.c #undef CPU #undef mips64 #undef mips64el #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL) CPU=mips64el #else #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB) CPU=mips64 #else CPU= #endif #endif EOF eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n ' /^CPU/{ s: ::g p }'`" test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; } ;; or32:Linux:*:*) echo or32-unknown-linux-gnu exit ;; ppc:Linux:*:*) echo powerpc-unknown-linux-gnu exit ;; ppc64:Linux:*:*) echo powerpc64-unknown-linux-gnu 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 ld.so.1 >/dev/null if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC} 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 ;; parisc64:Linux:*:* | hppa64:Linux:*:*) echo hppa64-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 xtensa-unknown-linux-gnu exit ;; i*86:Linux:*:*) # The BFD linker knows what the default object file format is, so # first see if it will tell us. cd to the root directory to prevent # problems with other programs or directories called `ld' in the path. # Set LC_ALL=C to ensure ld outputs messages in English. ld_supported_targets=`cd /; LC_ALL=C ld --help 2>&1 \ | sed -ne '/supported targets:/!d s/[ ][ ]*/ /g s/.*supported targets: *// s/ .*// p'` case "$ld_supported_targets" in elf32-i386) TENTATIVE="${UNAME_MACHINE}-pc-linux-gnu" ;; a.out-i386-linux) echo "${UNAME_MACHINE}-pc-linux-gnuaout" exit ;; coff-i386) echo "${UNAME_MACHINE}-pc-linux-gnucoff" exit ;; "") # Either a pre-BFD a.out linker (linux-gnuoldld) or # one that does not give us useful --help. echo "${UNAME_MACHINE}-pc-linux-gnuoldld" exit ;; esac # Determine whether the default compiler is a.out or elf eval $set_cc_for_build sed 's/^ //' << EOF >$dummy.c #include #ifdef __ELF__ # ifdef __GLIBC__ # if __GLIBC__ >= 2 LIBC=gnu # else LIBC=gnulibc1 # endif # else LIBC=gnulibc1 # endif #else #if defined(__INTEL_COMPILER) || defined(__PGI) || defined(__SUNPRO_C) || defined(__SUNPRO_CC) LIBC=gnu #else LIBC=gnuaout #endif #endif #ifdef __dietlibc__ LIBC=dietlibc #endif EOF eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n ' /^LIBC/{ s: ::g p }'`" test x"${LIBC}" != x && { echo "${UNAME_MACHINE}-pc-linux-${LIBC}" exit } test x"${TENTATIVE}" != x && { echo "${TENTATIVE}"; 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.0*:*) 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 i386. echo i386-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; } ;; 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.0*:*) 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 ;; 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 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 ;; 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: agave-0.4.7/help/0000777000175000017500000000000011224443302010535 500000000000000agave-0.4.7/help/Makefile.in0000644000175000017500000010473511224442712012534 00000000000000# Makefile.in generated by automake 1.10.2 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # 2003, 2004, 2005, 2006, 2007, 2008 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@ # gnome-doc-utils.make - make magic for building documentation # Copyright (C) 2004-2005 Shaun McCance # # 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. ################################################################################ VPATH = @srcdir@ pkgdatadir = $(datadir)/@PACKAGE@ pkglibdir = $(libdir)/@PACKAGE@ pkgincludedir = $(includedir)/@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 = : DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in \ $(top_srcdir)/gnome-doc-utils.make @BUILD_CAIRO_RING_TRUE@noinst_PROGRAMS = cairo-ring$(EXEEXT) subdir = help ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \ $(top_srcdir)/configure.ac 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 = PROGRAMS = $(noinst_PROGRAMS) am__cairo_ring_SOURCES_DIST = cairo-ring.cc @BUILD_CAIRO_RING_TRUE@am_cairo_ring_OBJECTS = \ @BUILD_CAIRO_RING_TRUE@ cairo_ring-cairo-ring.$(OBJEXT) cairo_ring_OBJECTS = $(am_cairo_ring_OBJECTS) am__DEPENDENCIES_1 = @BUILD_CAIRO_RING_TRUE@cairo_ring_DEPENDENCIES = \ @BUILD_CAIRO_RING_TRUE@ $(am__DEPENDENCIES_1) cairo_ring_LINK = $(CXXLD) $(cairo_ring_CXXFLAGS) $(CXXFLAGS) \ $(AM_LDFLAGS) $(LDFLAGS) -o $@ DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir) depcomp = $(SHELL) $(top_srcdir)/depcomp am__depfiles_maybe = depfiles CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) CXXLD = $(CXX) CXXLINK = $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(AM_LDFLAGS) $(LDFLAGS) \ -o $@ SOURCES = $(cairo_ring_SOURCES) DIST_SOURCES = $(am__cairo_ring_SOURCES_DIST) ETAGS = etags CTAGS = ctags DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ AGAVE_CFLAGS = @AGAVE_CFLAGS@ AGAVE_ICONDIR = @AGAVE_ICONDIR@ AGAVE_LIBS = @AGAVE_LIBS@ AGAVE_LOCALEDIR = @AGAVE_LOCALEDIR@ AGAVE_PALETTEDIR = @AGAVE_PALETTEDIR@ AGAVE_UIDIR = @AGAVE_UIDIR@ ALL_LINGUAS = @ALL_LINGUAS@ AMTAR = @AMTAR@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ AWK = @AWK@ CAIRO_RING_CFLAGS = @CAIRO_RING_CFLAGS@ CAIRO_RING_LIBS = @CAIRO_RING_LIBS@ CATALOGS = @CATALOGS@ CATOBJEXT = @CATOBJEXT@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPPFLAGS = @CPPFLAGS@ CPPUNIT_CFLAGS = @CPPUNIT_CFLAGS@ CPPUNIT_CONFIG = @CPPUNIT_CONFIG@ CPPUNIT_LIBS = @CPPUNIT_LIBS@ CXX = @CXX@ CXXCPP = @CXXCPP@ CXXDEPMODE = @CXXDEPMODE@ CXXFLAGS = @CXXFLAGS@ CYGPATH_W = @CYGPATH_W@ DATADIRNAME = @DATADIRNAME@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ DISTCHECK_CONFIGURE_FLAGS = @DISTCHECK_CONFIGURE_FLAGS@ DOC_USER_FORMATS = @DOC_USER_FORMATS@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ GCONFMM_CFLAGS = @GCONFMM_CFLAGS@ GCONFMM_LIBS = @GCONFMM_LIBS@ GCONFTOOL = @GCONFTOOL@ GCONF_SCHEMA_CONFIG_SOURCE = @GCONF_SCHEMA_CONFIG_SOURCE@ GCONF_SCHEMA_FILE_DIR = @GCONF_SCHEMA_FILE_DIR@ GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ GIT_PATH = @GIT_PATH@ GMOFILES = @GMOFILES@ GMSGFMT = @GMSGFMT@ GNOME_CFLAGS = @GNOME_CFLAGS@ GNOME_LIBS = @GNOME_LIBS@ GREP = @GREP@ GTKMM_CFLAGS = @GTKMM_CFLAGS@ GTKMM_LIBS = @GTKMM_LIBS@ HELP_DIR = @HELP_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@ LDFLAGS = @LDFLAGS@ LIBGLADEMM_CFLAGS = @LIBGLADEMM_CFLAGS@ LIBGLADEMM_LIBS = @LIBGLADEMM_LIBS@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LN_S = @LN_S@ LTLIBOBJS = @LTLIBOBJS@ MAKEINFO = @MAKEINFO@ MKDIR_P = @MKDIR_P@ MKINSTALLDIRS = @MKINSTALLDIRS@ MSGFMT = @MSGFMT@ MSGFMT_OPTS = @MSGFMT_OPTS@ MSGMERGE = @MSGMERGE@ OBJEXT = @OBJEXT@ OMF_DIR = @OMF_DIR@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PACKAGE_WEBSITE = @PACKAGE_WEBSITE@ PATH_SEPARATOR = @PATH_SEPARATOR@ PKG_CONFIG = @PKG_CONFIG@ POFILES = @POFILES@ POSUB = @POSUB@ PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@ PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@ PRINTING_CFLAGS = @PRINTING_CFLAGS@ PRINTING_LIBS = @PRINTING_LIBS@ RANLIB = @RANLIB@ SED = @SED@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ SORT = @SORT@ STRIP = @STRIP@ TR = @TR@ UNIQ = @UNIQ@ USE_NLS = @USE_NLS@ VERSION = @VERSION@ XGETTEXT = @XGETTEXT@ 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_CXX = @ac_ct_CXX@ 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_alias = @build_alias@ builddir = @builddir@ datadir = @datadir@ datarootdir = @datarootdir@ docdir = @docdir@ dvidir = @dvidir@ exec_prefix = @exec_prefix@ host_alias = @host_alias@ htmldir = @htmldir@ includedir = @includedir@ infodir = @infodir@ install_sh = @install_sh@ libdir = @libdir@ libexecdir = @libexecdir@ localedir = @localedir@ localstatedir = @localstatedir@ 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@ _clean_doc_header = $(if $(DOC_H_FILE),clean-doc-header) _DOC_REAL_FORMATS = $(if $(DOC_USER_FORMATS),$(DOC_USER_FORMATS),$(DOC_FORMATS)) _DOC_REAL_LINGUAS = $(if $(filter environment,$(origin LINGUAS)), \ $(filter $(LINGUAS),$(DOC_LINGUAS)), \ $(DOC_LINGUAS)) _DOC_ABS_SRCDIR = @abs_srcdir@ @ENABLE_SK_TRUE@_ENABLE_SK = true ################################################################################ db2omf_args = \ --stringparam db2omf.basename $(DOC_MODULE) \ --stringparam db2omf.format $(3) \ --stringparam db2omf.dtd \ $(shell xmllint --format $(2) | grep -h PUBLIC | head -n 1 \ | sed -e 's/.*PUBLIC \(\"[^\"]*\"\).*/\1/') \ --stringparam db2omf.lang $(notdir $(patsubst %/$(notdir $(2)),%,$(2))) \ --stringparam db2omf.omf_dir "$(OMF_DIR)" \ --stringparam db2omf.help_dir "$(HELP_DIR)" \ --stringparam db2omf.omf_in "$(_DOC_OMF_IN)" \ $(if $(_ENABLE_SK), \ --stringparam db2omf.scrollkeeper_cl "$(_skcontentslist)") \ $(_db2omf) $(2) _DOC_OMF_IN = $(if $(DOC_MODULE),$(wildcard $(_DOC_ABS_SRCDIR)/$(DOC_MODULE).omf.in)) _DOC_OMF_DB = $(if $(_DOC_OMF_IN), \ $(foreach lc,C $(_DOC_REAL_LINGUAS),$(DOC_MODULE)-$(lc).omf)) _DOC_OMF_HTML = $(if $(_DOC_OMF_IN), \ $(foreach lc,C $(_DOC_REAL_LINGUAS),$(DOC_MODULE)-html-$(lc).omf)) # FIXME _DOC_OMF_ALL = \ $(if $(filter docbook,$(_DOC_REAL_FORMATS)),$(_DOC_OMF_DB)) \ $(if $(filter html HTML,$(_DOC_REAL_FORMATS)),$(_DOC_OMF_HTML)) ################################################################################ _DOC_C_MODULE = $(if $(DOC_MODULE),C/$(DOC_MODULE).xml) _DOC_C_ENTITIES = $(foreach ent,$(DOC_ENTITIES),C/$(ent)) _DOC_C_INCLUDES = $(foreach inc,$(DOC_INCLUDES),C/$(inc)) _DOC_C_DOCS = \ $(_DOC_C_ENTITIES) $(_DOC_C_INCLUDES) \ $(_DOC_C_MODULE) _DOC_C_DOCS_NOENT = \ $(_DOC_C_MODULE) $(_DOC_C_INCLUDES) _DOC_C_FIGURES = $(if $(DOC_FIGURES), \ $(foreach fig,$(DOC_FIGURES),C/$(fig)), \ $(patsubst $(srcdir)/%,%,$(wildcard $(srcdir)/C/figures/*.png))) # FIXME: probably have to shell escape to determine the file names _DOC_C_HTML = $(foreach f, \ $(shell xsltproc --xinclude \ --stringparam db.chunk.basename "$(DOC_MODULE)" \ $(_chunks) "C/$(DOC_MODULE).xml"), \ C/$(f).xhtml) ############################################################################### _DOC_POFILES = $(if $(DOC_MODULE), \ $(foreach lc,$(_DOC_REAL_LINGUAS),$(lc)/$(lc).po)) _DOC_LC_MODULES = $(if $(DOC_MODULE), \ $(foreach lc,$(_DOC_REAL_LINGUAS),$(lc)/$(DOC_MODULE).xml)) _DOC_LC_INCLUDES = \ $(foreach lc,$(_DOC_REAL_LINGUAS),$(foreach inc,$(_DOC_C_INCLUDES), \ $(lc)/$(notdir $(inc)) )) # FIXME: probably have to shell escape to determine the file names _DOC_LC_HTML = \ $(foreach lc,$(_DOC_REAL_LINGUAS),$(foreach doc,$(_DOC_C_HTML), \ $(lc)/$(notdir $(doc)) )) _DOC_LC_DOCS = \ $(_DOC_LC_MODULES) $(_DOC_LC_INCLUDES) \ $(if $(filter html HTML,$(_DOC_REAL_FORMATS)),$(_DOC_LC_HTML)) _DOC_LC_FIGURES = $(foreach lc,$(_DOC_REAL_LINGUAS), \ $(patsubst C/%,$(lc)/%,$(_DOC_C_FIGURES)) ) _DOC_SRC_FIGURES = \ $(foreach fig,$(_DOC_C_FIGURES), $(foreach lc,C $(_DOC_REAL_LINGUAS), \ $(wildcard $(srcdir)/$(lc)/$(patsubst C/%,%,$(fig))) )) _DOC_POT = $(if $(DOC_MODULE),$(DOC_MODULE).pot) ################################################################################ _DOC_HTML_ALL = $(if $(filter html HTML,$(_DOC_REAL_FORMATS)), \ $(_DOC_C_HTML) $(_DOC_LC_HTML)) _DOC_HTML_TOPS = $(foreach lc,C $(_DOC_REAL_LINGUAS),$(lc)/$(DOC_MODULE).xhtml) _clean_omf = $(if $(_DOC_OMF_IN),clean-doc-omf) _clean_dsk = $(if $(_DOC_DSK_IN),clean-doc-dsk) _clean_lc = $(if $(_DOC_REAL_LINGUAS),clean-doc-lc) _clean_dir = $(if $(DOC_MODULE),clean-doc-dir) DOC_MODULE = agave DOC_ENTITIES = DOC_INCLUDES = legal.xml DOC_LINGUAS = de cs DOC_FIGURES = \ figures/main-window.png \ figures/gtk-color-selector.png \ figures/complements.png \ figures/split-complements.png \ figures/triads.png \ figures/tetrads.png \ figures/analogous.png @BUILD_CAIRO_RING_TRUE@cairo_ring_SOURCES = cairo-ring.cc @BUILD_CAIRO_RING_TRUE@cairo_ring_CXXFLAGS = ${CAIRO_RING_CFLAGS} @BUILD_CAIRO_RING_TRUE@cairo_ring_LDADD = ${CAIRO_RING_LIBS} all: all-am .SUFFIXES: .SUFFIXES: .cc .o .obj $(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(top_srcdir)/gnome-doc-utils.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) --gnu help/Makefile'; \ cd $(top_srcdir) && \ $(AUTOMAKE) --gnu help/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: $(am__configure_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(ACLOCAL_M4): $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh clean-noinstPROGRAMS: -test -z "$(noinst_PROGRAMS)" || rm -f $(noinst_PROGRAMS) cairo-ring$(EXEEXT): $(cairo_ring_OBJECTS) $(cairo_ring_DEPENDENCIES) @rm -f cairo-ring$(EXEEXT) $(cairo_ring_LINK) $(cairo_ring_OBJECTS) $(cairo_ring_LDADD) $(LIBS) mostlyclean-compile: -rm -f *.$(OBJEXT) distclean-compile: -rm -f *.tab.c @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/cairo_ring-cairo-ring.Po@am__quote@ .cc.o: @am__fastdepCXX_TRUE@ $(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< @am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(CXXCOMPILE) -c -o $@ $< .cc.obj: @am__fastdepCXX_TRUE@ $(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'` @am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(CXXCOMPILE) -c -o $@ `$(CYGPATH_W) '$<'` cairo_ring-cairo-ring.o: cairo-ring.cc @am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(cairo_ring_CXXFLAGS) $(CXXFLAGS) -MT cairo_ring-cairo-ring.o -MD -MP -MF $(DEPDIR)/cairo_ring-cairo-ring.Tpo -c -o cairo_ring-cairo-ring.o `test -f 'cairo-ring.cc' || echo '$(srcdir)/'`cairo-ring.cc @am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/cairo_ring-cairo-ring.Tpo $(DEPDIR)/cairo_ring-cairo-ring.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='cairo-ring.cc' object='cairo_ring-cairo-ring.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(cairo_ring_CXXFLAGS) $(CXXFLAGS) -c -o cairo_ring-cairo-ring.o `test -f 'cairo-ring.cc' || echo '$(srcdir)/'`cairo-ring.cc cairo_ring-cairo-ring.obj: cairo-ring.cc @am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(cairo_ring_CXXFLAGS) $(CXXFLAGS) -MT cairo_ring-cairo-ring.obj -MD -MP -MF $(DEPDIR)/cairo_ring-cairo-ring.Tpo -c -o cairo_ring-cairo-ring.obj `if test -f 'cairo-ring.cc'; then $(CYGPATH_W) 'cairo-ring.cc'; else $(CYGPATH_W) '$(srcdir)/cairo-ring.cc'; fi` @am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/cairo_ring-cairo-ring.Tpo $(DEPDIR)/cairo_ring-cairo-ring.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='cairo-ring.cc' object='cairo_ring-cairo-ring.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(cairo_ring_CXXFLAGS) $(CXXFLAGS) -c -o cairo_ring-cairo-ring.obj `if test -f 'cairo-ring.cc'; then $(CYGPATH_W) 'cairo-ring.cc'; else $(CYGPATH_W) '$(srcdir)/cairo-ring.cc'; fi` 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) tags=; \ 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; }; }'`; \ if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \ test -n "$$unique" || unique=$$empty_fix; \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ $$tags $$unique; \ fi ctags: CTAGS CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) tags=; \ 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)$$tags$$unique" \ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ $$tags $$unique GTAGS: here=`$(am__cd) $(top_builddir) && pwd` \ && 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 $(srcdir)/$$file && test $$d != $(srcdir); then \ cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ fi; \ cp -pR $$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 $(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) 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-local clean-noinstPROGRAMS \ mostlyclean-am distclean: distclean-am -rm -rf ./$(DEPDIR) -rm -f Makefile distclean-am: clean-am distclean-compile distclean-generic \ distclean-local distclean-tags dvi: dvi-am dvi-am: html: html-am info: info-am info-am: install-data-am: install-data-local install-dvi: install-dvi-am 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 installcheck-am: maintainer-clean: maintainer-clean-am -rm -rf ./$(DEPDIR) -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic \ maintainer-clean-local mostlyclean: mostlyclean-am mostlyclean-am: mostlyclean-compile mostlyclean-generic \ mostlyclean-local pdf: pdf-am pdf-am: ps: ps-am ps-am: uninstall-am: uninstall-local .MAKE: install-am install-strip .PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \ clean-local clean-noinstPROGRAMS ctags dist-hook distclean \ distclean-compile distclean-generic 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 maintainer-clean \ maintainer-clean-generic maintainer-clean-local mostlyclean \ mostlyclean-compile mostlyclean-generic mostlyclean-local pdf \ pdf-am ps ps-am tags uninstall uninstall-am uninstall-local DOC_H_FILE ?= DOC_H_DOCS ?= $(DOC_H_FILE): $(DOC_H_DOCS); @rm -f $@.tmp; touch $@.tmp; echo 'const gchar* documentation_credits[] = {' >> $@.tmp list='$(DOC_H_DOCS)'; for doc in $$list; do \ xmlpath="`echo $$doc | sed -e 's/^\(.*\/\).*/\1/' -e '/\//!s/.*//'`:$(srcdir)/`echo $$doc | sed -e 's/^\(.*\/\).*/\1/' -e '/\//!s/.*//'`"; \ if ! test -f "$$doc"; then doc="$(srcdir)/$$doc"; fi; \ xsltproc --path "$$xmlpath" $(_credits) $$doc; \ done | sort | uniq \ | awk 'BEGIN{s=""}{n=split($$0,w,"<");if(s!=""&&s!=substr(w[1],1,length(w[1])-1)){print s};if(n>1){print $$0;s=""}else{s=$$0}};END{if(s!=""){print s}}' \ | sed -e 's/\\/\\\\/' -e 's/"/\\"/' -e 's/\(.*\)/\t"\1",/' >> $@.tmp echo ' NULL' >> $@.tmp echo '};' >> $@.tmp echo >> $@.tmp list='$(DOC_H_DOCS)'; for doc in $$list; do \ xmlpath="`echo $$doc | sed -e 's/^\(.*\/\).*/\1/' -e '/\//!s/.*//'`:$(srcdir)/`echo $$doc | sed -e 's/^\(.*\/\).*/\1/' -e '/\//!s/.*//'`"; \ if ! test -f "$$doc"; then doc="$(srcdir)/$$doc"; fi; \ docid=`echo "$$doc" | sed -e 's/.*\/\([^/]*\)\.xml/\1/' \ | sed -e 's/[^a-zA-Z_]/_/g' | tr 'a-z' 'A-Z'`; \ echo $$xmlpath; \ ids=`xsltproc --xinclude --path "$$xmlpath" $(_ids) $$doc`; \ for id in $$ids; do \ echo '#define HELP_'`echo $$docid`'_'`echo $$id \ | sed -e 's/[^a-zA-Z_]/_/g' | tr 'a-z' 'A-Z'`' "'$$id'"' >> $@.tmp; \ done; \ echo >> $@.tmp; \ done; cp $@.tmp $@ && rm -f $@.tmp dist-check-gdu: @HAVE_GNOME_DOC_UTILS_FALSE@ @echo "*** GNOME Doc Utils must be installed in order to make dist" @HAVE_GNOME_DOC_UTILS_FALSE@ @false .PHONY: dist-doc-header dist-doc-header: $(DOC_H_FILE) @if test -f "$(DOC_H_FILE)"; then d=; else d="$(srcdir)/"; fi; \ echo "$(INSTALL_DATA) $${d}$(DOC_H_FILE) $(distdir)/$(DOC_H_FILE)"; \ $(INSTALL_DATA) "$${d}$(DOC_H_FILE)" "$(distdir)/$(DOC_H_FILE)"; doc-dist-hook: dist-check-gdu $(if $(DOC_H_FILE),dist-doc-header) .PHONY: clean-doc-header clean-local: $(_clean_doc_header) distclean-local: $(_clean_doc_header) mostlyclean-local: $(_clean_doc_header) maintainer-clean-local: $(_clean_doc_header) clean-doc-header: rm -f $(DOC_H_FILE) all: $(DOC_H_FILE) ################################################################################ DOC_MODULE ?= DOC_ENTITIES ?= DOC_INCLUDES ?= DOC_FIGURES ?= DOC_FORMATS ?= docbook DOC_LINGUAS ?= ################################################################################ _xml2po ?= `which xml2po` _db2html ?= `$(PKG_CONFIG) --variable db2html gnome-doc-utils` _db2omf ?= `$(PKG_CONFIG) --variable db2omf gnome-doc-utils` _chunks ?= `$(PKG_CONFIG) --variable xmldir gnome-doc-utils`/gnome/xslt/docbook/utils/chunks.xsl _credits ?= `$(PKG_CONFIG) --variable xmldir gnome-doc-utils`/gnome/xslt/docbook/utils/credits.xsl _ids ?= `$(PKG_CONFIG) --variable xmldir gnome-doc-utils`/gnome/xslt/docbook/utils/ids.xsl @ENABLE_SK_TRUE@_skpkgdatadir ?= `scrollkeeper-config --pkgdatadir` @ENABLE_SK_TRUE@_sklocalstatedir ?= `scrollkeeper-config --pkglocalstatedir` @ENABLE_SK_TRUE@_skcontentslist ?= $(_skpkgdatadir)/Templates/C/scrollkeeper_cl.xml $(_DOC_OMF_DB) : $(_DOC_OMF_IN) $(_DOC_OMF_DB) : $(DOC_MODULE)-%.omf : %/$(DOC_MODULE).xml @test "x$(_ENABLE_SK)" != "xtrue" -o -f "$(_skcontentslist)" || { \ echo "The file '$(_skcontentslist)' does not exist." >&2; \ echo "Please check your ScrollKeeper installation." >&2; \ exit 1; } xsltproc -o $@ $(call db2omf_args,$@,$<,'docbook') || { rm -f "$@"; exit 1; } $(_DOC_OMF_HTML) : $(_DOC_OMF_IN) $(_DOC_OMF_HTML) : $(DOC_MODULE)-html-%.omf : %/$(DOC_MODULE).xml @ENABLE_SK_TRUE@ @test "x$(_ENABLE_SK)" != "xtrue" -o -f "$(_skcontentslist)" || { \ @ENABLE_SK_TRUE@ echo "The file '$(_skcontentslist)' does not exist" >&2; \ @ENABLE_SK_TRUE@ echo "Please check your ScrollKeeper installation." >&2; \ @ENABLE_SK_TRUE@ exit 1; } xsltproc -o $@ $(call db2omf_args,$@,$<,'xhtml') || { rm -f "$@"; exit 1; } .PHONY: omf omf: $(_DOC_OMF_ALL) .PHONY: po po: $(_DOC_POFILES) $(_DOC_POFILES): @if ! test -d $(dir $@); then \ echo "mkdir $(dir $@)"; \ mkdir "$(dir $@)"; \ fi @if test ! -f $@ -a -f $(srcdir)/$@; then \ echo "cp $(srcdir)/$@ $@"; \ cp "$(srcdir)/$@" "$@"; \ fi; @docs=; \ list='$(_DOC_C_DOCS_NOENT)'; for doc in $$list; do \ docs="$$docs $(_DOC_ABS_SRCDIR)/$$doc"; \ done; \ if ! test -f $@; then \ echo "(cd $(dir $@) && \ $(_xml2po) -e $$docs > $(notdir $@).tmp && \ cp $(notdir $@).tmp $(notdir $@) && rm -f $(notdir $@).tmp)"; \ (cd $(dir $@) && \ $(_xml2po) -e $$docs > $(notdir $@).tmp && \ cp $(notdir $@).tmp $(notdir $@) && rm -f $(notdir $@).tmp); \ else \ echo "(cd $(dir $@) && \ $(_xml2po) -e -u $(notdir $@) $$docs)"; \ (cd $(dir $@) && \ $(_xml2po) -e -u $(notdir $@) $$docs); \ fi # FIXME: fix the dependancy # FIXME: hook xml2po up $(_DOC_LC_DOCS) : $(_DOC_POFILES) $(_DOC_LC_DOCS) : $(_DOC_C_DOCS) if ! test -d $(dir $@); then mkdir $(dir $@); fi if [ -f "C/$(notdir $@)" ]; then d="../"; else d="$(_DOC_ABS_SRCDIR)/"; fi; \ (cd $(dir $@) && \ $(_xml2po) -e -p \ "$${d}$(dir $@)$(patsubst %/$(notdir $@),%,$@).po" \ "$${d}C/$(notdir $@)" > $(notdir $@).tmp && \ cp $(notdir $@).tmp $(notdir $@) && rm -f $(notdir $@).tmp) .PHONY: pot pot: $(_DOC_POT) $(_DOC_POT): $(_DOC_C_DOCS_NOENT) $(_xml2po) -e -o $@ $^ $(_DOC_HTML_TOPS): $(_DOC_C_DOCS) $(_DOC_LC_DOCS) xsltproc -o $@ --xinclude --param db.chunk.chunk_top "false()" --stringparam db.chunk.basename "$(DOC_MODULE)" --stringparam db.chunk.extension ".xhtml" $(_db2html) $(patsubst %.xhtml,%.xml,$@) ################################################################################ all: \ $(_DOC_C_DOCS) $(_DOC_LC_DOCS) \ $(_DOC_OMF_ALL) $(_DOC_DSK_ALL) \ $(_DOC_HTML_ALL) $(_DOC_POFILES) .PHONY: clean-doc-omf clean-doc-dsk clean-doc-lc clean-doc-dir clean-doc-omf: ; rm -f $(_DOC_OMF_DB) $(_DOC_OMF_HTML) clean-doc-dsk: ; rm -f $(_DOC_DSK_DB) $(_DOC_DSK_HTML) clean-doc-lc: rm -f $(_DOC_LC_DOCS) @list='$(_DOC_POFILES)'; for po in $$list; do \ if ! test "$$po" -ef "$(srcdir)/$$po"; then \ echo "rm -f $$po"; \ rm -f "$$po"; \ fi; \ done @for lc in C $(_DOC_REAL_LINGUAS); do \ if test -f "$$lc/.xml2po.mo"; then \ echo "rm -f $$lc/.xml2po.mo"; \ rm -f "$$lc/.xml2po.mo"; \ fi; \ done clean-doc-dir: @for lc in C $(_DOC_REAL_LINGUAS); do \ for dir in `find $$lc -depth -type d`; do \ if ! test $$dir -ef $(srcdir)/$$dir; then \ echo "rmdir $$dir"; \ rmdir "$$dir"; \ fi; \ done; \ done clean-local: \ $(_clean_omf) $(_clean_dsk) \ $(_clean_lc) $(_clean_dir) distclean-local: \ $(_clean_omf) $(_clean_dsk) \ $(_clean_lc) $(_clean_dir) mostlyclean-local: \ $(_clean_omf) $(_clean_dsk) \ $(_clean_lc) $(_clean_dir) maintainer-clean-local: \ $(_clean_omf) $(_clean_dsk) \ $(_clean_lc) $(_clean_dir) .PHONY: dist-doc-docs dist-doc-figs dist-doc-omf dist-doc-dsk doc-dist-hook: \ $(if $(DOC_MODULE),dist-doc-docs) \ $(if $(_DOC_C_FIGURES),dist-doc-figs) \ $(if $(_DOC_OMF_IN),dist-doc-omf) # $(if $(_DOC_DSK_IN),dist-doc-dsk) dist-doc-docs: $(_DOC_C_DOCS) $(_DOC_LC_DOCS) $(_DOC_POFILES) @for lc in C $(_DOC_REAL_LINGUAS); do \ echo " $(mkinstalldirs) $(distdir)/$$lc"; \ $(mkinstalldirs) "$(distdir)/$$lc"; \ done @list='$(_DOC_C_DOCS) $(_DOC_LC_DOCS) $(_DOC_POFILES)'; \ for doc in $$list; do \ if test -f "$$doc"; then d=; else d="$(srcdir)/"; fi; \ docdir=`echo $$doc | sed -e 's/^\(.*\/\).*/\1/' -e '/\//!s/.*//'`; \ if ! test -d "$(distdir)/$$docdir"; then \ echo "$(mkinstalldirs) $(distdir)/$$docdir"; \ $(mkinstalldirs) "$(distdir)/$$docdir"; \ fi; \ echo "$(INSTALL_DATA) $$d$$doc $(distdir)/$$doc"; \ $(INSTALL_DATA) "$$d$$doc" "$(distdir)/$$doc"; \ done dist-doc-figs: $(_DOC_SRC_FIGURES) @list='$(_DOC_C_FIGURES) $(_DOC_LC_FIGURES)'; \ for fig in $$list; do \ if test -f "$$fig"; then d=; else d="$(srcdir)/"; fi; \ if test -f "$$d$$fig"; then \ figdir=`echo $$fig | sed -e 's/^\(.*\/\).*/\1/' -e '/\//!s/.*//'`; \ if ! test -d "$(distdir)/$$figdir"; then \ echo "$(mkinstalldirs) $(distdir)/$$figdir"; \ $(mkinstalldirs) "$(distdir)/$$figdir"; \ fi; \ echo "$(INSTALL_DATA) $$d$$fig $(distdir)/$$fig"; \ $(INSTALL_DATA) "$$d$$fig" "$(distdir)/$$fig"; \ fi; \ done; dist-doc-omf: @if test -f "$(_DOC_OMF_IN)"; then d=; else d="$(srcdir)/"; fi; \ echo "$(INSTALL_DATA) $$d$(_DOC_OMF_IN) $(distdir)/$(notdir $(_DOC_OMF_IN))"; \ $(INSTALL_DATA) "$$d$(_DOC_OMF_IN)" "$(distdir)/$(notdir $(_DOC_OMF_IN))" dist-doc-dsk: @if test -f "$(_DOC_DSK_IN)"; then d=; else d="$(srcdir)/"; fi; \ echo "$(INSTALL_DATA) $$d$(_DOC_DSK_IN) $(distdir)/$(notdir $(_DOC_DSK_IN))"; \ $(INSTALL_DATA) "$$d$(_DOC_DSK_IN)" "$(distdir)/$(notdir $(_DOC_DSK_IN))" .PHONY: check-doc-docs check-doc-omf check: \ $(if $(DOC_MODULE),check-doc-docs) \ $(if $(_DOC_OMF_IN),check-doc-omf) check-doc-docs: $(_DOC_C_DOCS) $(_DOC_LC_DOCS) @for lc in C $(_DOC_REAL_LINGUAS); do \ if test -f "$$lc"; \ then d=; \ xmlpath="$$lc"; \ else \ d="$(srcdir)/"; \ xmlpath="$$lc:$(srcdir)/$$lc"; \ fi; \ echo "xmllint --noout --noent --path $$xmlpath --xinclude --postvalid $$d$$lc/$(DOC_MODULE).xml"; \ xmllint --noout --noent --path "$$xmlpath" --xinclude --postvalid "$$d$$lc/$(DOC_MODULE).xml"; \ done check-doc-omf: $(_DOC_OMF_ALL) @list='$(_DOC_OMF_ALL)'; for omf in $$list; do \ echo "xmllint --noout --xinclude --dtdvalid 'http://scrollkeeper.sourceforge.net/dtds/scrollkeeper-omf-1.0/scrollkeeper-omf.dtd' $$omf"; \ xmllint --noout --xinclude --dtdvalid 'http://scrollkeeper.sourceforge.net/dtds/scrollkeeper-omf-1.0/scrollkeeper-omf.dtd' $$omf; \ done .PHONY: install-doc-docs install-doc-html install-doc-figs install-doc-omf install-doc-dsk install-data-local: \ $(if $(DOC_MODULE),install-doc-docs) \ $(if $(_DOC_HTML_ALL),install-doc-html) \ $(if $(_DOC_C_FIGURES),install-doc-figs) \ $(if $(_DOC_OMF_IN),install-doc-omf) # $(if $(_DOC_DSK_IN),install-doc-dsk) install-doc-docs: @for lc in C $(_DOC_REAL_LINGUAS); do \ echo "$(mkinstalldirs) $(DESTDIR)$(HELP_DIR)/$(DOC_MODULE)/$$lc"; \ $(mkinstalldirs) $(DESTDIR)$(HELP_DIR)/$(DOC_MODULE)/$$lc; \ done @list='$(_DOC_C_DOCS) $(_DOC_LC_DOCS)'; for doc in $$list; do \ if test -f "$$doc"; then d=; else d="$(srcdir)/"; fi; \ docdir="$$lc/"`echo $$doc | sed -e 's/^\(.*\/\).*/\1/' -e '/\//!s/.*//'`; \ docdir="$(DESTDIR)$(HELP_DIR)/$(DOC_MODULE)/$$docdir"; \ if ! test -d "$$docdir"; then \ echo "$(mkinstalldirs) $$docdir"; \ $(mkinstalldirs) "$$docdir"; \ fi; \ echo "$(INSTALL_DATA) $$d$$doc $(DESTDIR)$(HELP_DIR)/$(DOC_MODULE)/$$doc"; \ $(INSTALL_DATA) $$d$$doc $(DESTDIR)$(HELP_DIR)/$(DOC_MODULE)/$$doc; \ done install-doc-figs: @list='$(patsubst C/%,%,$(_DOC_C_FIGURES))'; for fig in $$list; do \ for lc in C $(_DOC_REAL_LINGUAS); do \ figsymlink=false; \ if test -f "$$lc/$$fig"; then \ figfile="$$lc/$$fig"; \ elif test -f "$(srcdir)/$$lc/$$fig"; then \ figfile="$(srcdir)/$$lc/$$fig"; \ else \ figsymlink=true; \ fi; \ figdir="$$lc/"`echo $$fig | sed -e 's/^\(.*\/\).*/\1/' -e '/\//!s/.*//'`; \ figdir="$(DESTDIR)$(HELP_DIR)/$(DOC_MODULE)/$$figdir"; \ if ! test -d "$$figdir"; then \ echo "$(mkinstalldirs) $$figdir"; \ $(mkinstalldirs) "$$figdir"; \ fi; \ figbase=`echo $$fig | sed -e 's/^.*\///'`; \ if $$figsymlink; then \ echo "cd $$figdir && $(LN_S) -f ../../C/$$fig $$figbase"; \ ( cd "$$figdir" && $(LN_S) -f "../../C/$$fig" "$$figbase" ); \ else \ echo "$(INSTALL_DATA) $$figfile $$figdir$$figbase"; \ $(INSTALL_DATA) "$$figfile" "$$figdir$$figbase"; \ fi; \ done; \ done install-doc-html: echo install-html install-doc-omf: $(mkinstalldirs) $(DESTDIR)$(OMF_DIR)/$(DOC_MODULE) @list='$(_DOC_OMF_ALL)'; for omf in $$list; do \ echo "$(INSTALL_DATA) $$omf $(DESTDIR)$(OMF_DIR)/$(DOC_MODULE)/$$omf"; \ $(INSTALL_DATA) $$omf $(DESTDIR)$(OMF_DIR)/$(DOC_MODULE)/$$omf; \ done @if test "x$(_ENABLE_SK)" = "xtrue"; then \ echo "scrollkeeper-update -p $(DESTDIR)$(_sklocalstatedir) -o $(DESTDIR)$(OMF_DIR)/$(DOC_MODULE)"; \ scrollkeeper-update -p "$(DESTDIR)$(_sklocalstatedir)" -o "$(DESTDIR)$(OMF_DIR)/$(DOC_MODULE)"; \ fi; install-doc-dsk: echo install-dsk .PHONY: uninstall-doc-docs uninstall-doc-html uninstall-doc-figs uninstall-doc-omf uninstall-doc-dsk uninstall-local: \ $(if $(DOC_MODULE),uninstall-doc-docs) \ $(if $(_DOC_HTML_ALL),uninstall-doc-html) \ $(if $(_DOC_C_FIGURES),uninstall-doc-figs) \ $(if $(_DOC_OMF_IN),uninstall-doc-omf) # $(if $(_DOC_DSK_IN),uninstall-doc-dsk) uninstall-doc-docs: @list='$(_DOC_C_DOCS) $(_DOC_LC_DOCS)'; for doc in $$list; do \ echo " rm -f $(DESTDIR)$(HELP_DIR)/$(DOC_MODULE)/$$doc"; \ rm -f "$(DESTDIR)$(HELP_DIR)/$(DOC_MODULE)/$$doc"; \ done uninstall-doc-figs: @list='$(_DOC_C_FIGURES) $(_DOC_LC_FIGURES)'; for fig in $$list; do \ echo "rm -f $(DESTDIR)$(HELP_DIR)/$(DOC_MODULE)/$$fig"; \ rm -f "$(DESTDIR)$(HELP_DIR)/$(DOC_MODULE)/$$fig"; \ done; uninstall-doc-omf: @list='$(_DOC_OMF_ALL)'; for omf in $$list; do \ if test "x$(_ENABLE_SK)" = "xtrue"; then \ echo "scrollkeeper-uninstall -p $(_sklocalstatedir) $(DESTDIR)$(OMF_DIR)/$(DOC_MODULE)/$$omf"; \ scrollkeeper-uninstall -p "$(_sklocalstatedir)" "$(DESTDIR)$(OMF_DIR)/$(DOC_MODULE)/$$omf"; \ fi; \ echo "rm -f $(DESTDIR)$(OMF_DIR)/$(DOC_MODULE)/$$omf"; \ rm -f "$(DESTDIR)$(OMF_DIR)/$(DOC_MODULE)/$$omf"; \ done dist-hook: doc-dist-hook # 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: agave-0.4.7/help/agave.omf.in0000644000175000017500000000046011224443302012644 00000000000000 user's guide agave-0.4.7/help/Makefile.am0000644000175000017500000000104311224425630012507 00000000000000include $(top_srcdir)/gnome-doc-utils.make dist-hook: doc-dist-hook DOC_MODULE = agave DOC_ENTITIES = DOC_INCLUDES = legal.xml DOC_LINGUAS = de cs DOC_FIGURES = \ figures/main-window.png \ figures/gtk-color-selector.png \ figures/complements.png \ figures/split-complements.png \ figures/triads.png \ figures/tetrads.png \ figures/analogous.png if BUILD_CAIRO_RING noinst_PROGRAMS=cairo-ring cairo_ring_SOURCES=cairo-ring.cc cairo_ring_CXXFLAGS=${CAIRO_RING_CFLAGS} cairo_ring_LDADD=${CAIRO_RING_LIBS} endif agave-0.4.7/help/cairo-ring.cc0000644000175000017500000002042110760701102013010 00000000000000/* * This file is used to generate the image files to visually describe the color * scheme types */ #include #include #include #include const gdouble width = 150.0; const gdouble size = width * 0.9; const gdouble ring_width = (width / 2.0) / 2.0; const gdouble marker_offset = 0.03; #define INTENSITY(r, g, b) ((r) * 0.30 + (g) * 0.59 + (b) * 0.11) static void hsv_to_rgb (gdouble *h, gdouble *s, gdouble *v) { gdouble hue, saturation, value; gdouble f, p, q, t; if (*s == 0.0) { *h = *v; *s = *v; *v = *v; /* heh */ } else { hue = *h * 6.0; saturation = *s; value = *v; if (hue == 6.0) hue = 0.0; f = hue - (int) hue; p = value * (1.0 - saturation); q = value * (1.0 - saturation * f); t = value * (1.0 - saturation * (1.0 - f)); switch ((int) hue) { case 0: *h = value; *s = t; *v = p; break; case 1: *h = q; *s = value; *v = p; break; case 2: *h = p; *s = value; *v = t; break; case 3: *h = p; *s = q; *v = value; break; case 4: *h = t; *s = p; *v = value; break; case 5: *h = value; *s = p; *v = q; break; default: g_assert_not_reached (); } } } static void paint_ring (Cairo::RefPtr cr, gint width, gint height, std::list stops = std::list()) { int xx, yy; gdouble dx, dy, dist; gdouble center; gdouble inner, outer; guint32 *buf, *p; gdouble angle; gdouble hue; gdouble r, g, b; Cairo::RefPtr source; center = width / 2.0; outer = size / 2.0; inner = outer - ring_width; /* Create an image initialized with the ring colors */ buf = g_new (guint32, width * height); // for each row in the image data buffer for (yy = 0; yy < height; yy++) { // pointer to the start of the row p = buf + yy * width; // y-distance from the center of the circle dy = -(yy - center); // for each column in the row for (xx = 0; xx < width; xx++) { // x-distance from the center of the circle dx = xx - center; // calculate the radial distance to the center of the circle squared dist = dx * dx + dy * dy; // check whether the calculated point falls within the are that we // want to draw if (dist < ((inner-1) * (inner-1)) || dist > ((outer+1) * (outer+1))) { // if not, give up and try the next pixel *p++ = 0; continue; } // find the angle from the center of the circle to the current pixel angle = atan2 (dy, dx); // normalize from 0 to 2*PI if (angle < 0.0) angle += 2.0 * G_PI; // the angle is equal to the hue, normalized to a scale of 0 to 1.0 hue = angle / (2.0 * G_PI); // calculate the rgb values for the specific hue assuming full // saturation and value r = hue; g = 1.0; b = 1.0; hsv_to_rgb (&r, &g, &b); // store the pixel value in the data buffer *p++ = (((int)floor (r * 255 + 0.5) << 16) | ((int)floor (g * 255 + 0.5) << 8) | (int)floor (b * 255 + 0.5)); } } // create an image surface using the data buffer that we just filled source = Cairo::ImageSurface::create((unsigned char *)buf, Cairo::FORMAT_RGB24, width, height, 4 * width); /* Draw the ring using the source image */ cr->save (); cr->set_source (source, 0, 0); cr->set_line_width (ring_width); cr->begin_new_path (); cr->arc (center, center, size / 2. - ring_width / 2., 0, 2 * G_PI); cr->stroke (); cr->restore (); /* Now draw the stop markers onto the source image */ for (std::list::iterator stop_iter = stops.begin (); stop_iter != stops.end (); ++stop_iter) { cr->save (); r = *stop_iter < 0.0 ? *stop_iter + 1.0 : *stop_iter; g = 1.0; b = 1.0; hsv_to_rgb (&r, &g, &b); // the angle for calculating the hue is the inverse of the angle for // drawing in cairo gdouble ratio = -(*stop_iter); gdouble lower_angle = (ratio - marker_offset) * 2.0 * G_PI; gdouble upper_angle = (ratio + marker_offset) * 2.0 * G_PI; gdouble marker_extend = outer * 0.04; gdouble marker_inner = inner - marker_extend; gdouble marker_outer = outer + marker_extend; cr->begin_new_sub_path (); cr->arc (center, center, marker_outer, lower_angle, upper_angle); cr->line_to (center + cos (upper_angle) * marker_inner, center + sin (upper_angle) * marker_inner); cr->arc_negative (center, center, marker_inner, upper_angle, lower_angle); cr->close_path (); cr->restore (); cr->save (); cr->set_source_rgb (r, g, b); cr->fill_preserve (); cr->set_source_rgb (0., 0., 0.); cr->set_line_width (size / 100.0); cr->stroke (); cr->restore (); } g_free (buf); } int main(int argc, char** argv) { // complements Cairo::RefPtr comp_surface = Cairo::ImageSurface::create (Cairo::FORMAT_ARGB32, (int)width, (int)width); Cairo::RefPtr complements_cr = Cairo::Context::create (comp_surface); std::list comp_stops; comp_stops.push_back(0.0); comp_stops.push_back(0.5); paint_ring (complements_cr, (int)width, (int)width, comp_stops); comp_surface->write_to_png ("complements.png"); // split complements Cairo::RefPtr split_surface = Cairo::ImageSurface::create (Cairo::FORMAT_ARGB32, (int)width, (int)width); Cairo::RefPtr split_cr = Cairo::Context::create (split_surface); std::list split_stops; split_stops.push_back(0.0); split_stops.push_back(0.4333); split_stops.push_back(0.5666); paint_ring (split_cr, (int)width, (int)width, split_stops); split_surface->write_to_png ("split-complements.png"); // triads Cairo::RefPtr triad_surface = Cairo::ImageSurface::create (Cairo::FORMAT_ARGB32, (int)width, (int)width); Cairo::RefPtr triad_cr = Cairo::Context::create (triad_surface); std::list triad_stops; triad_stops.push_back(0.0); triad_stops.push_back(0.33); triad_stops.push_back(0.666); paint_ring (triad_cr, (int)width, (int)width, triad_stops); triad_surface->write_to_png ("triads.png"); // tetrads Cairo::RefPtr tetrad_surface = Cairo::ImageSurface::create (Cairo::FORMAT_ARGB32, (int)width, (int)width); Cairo::RefPtr tetrad_cr = Cairo::Context::create (tetrad_surface); std::list tetrad_stops; tetrad_stops.push_back(0.0); tetrad_stops.push_back(0.25); tetrad_stops.push_back(0.5); tetrad_stops.push_back(0.75); paint_ring (tetrad_cr, (int)width, (int)width, tetrad_stops); tetrad_surface->write_to_png ("tetrads.png"); // analogous Cairo::RefPtr analogous_surface = Cairo::ImageSurface::create (Cairo::FORMAT_ARGB32, (int)width, (int)width); Cairo::RefPtr analogous_cr = Cairo::Context::create (analogous_surface); std::list analogous_stops; analogous_stops.push_back(-0.0833); analogous_stops.push_back(0.0); analogous_stops.push_back(0.0833); paint_ring (analogous_cr, (int)width, (int)width, analogous_stops); analogous_surface->write_to_png ("analogous.png"); } agave-0.4.7/help/de/0000777000175000017500000000000011224443302011125 500000000000000agave-0.4.7/help/de/de.po0000644000175000017500000002574011224443302012001 00000000000000msgid "" msgstr "" "Project-Id-Version: Agave Help\n" "POT-Creation-Date: \n" "PO-Revision-Date: 2008-06-04 15:20+0100\n" "Last-Translator: Chrisitan Zwahlen \n" "Language-Team: German\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: German\n" "X-Poedit-Country: GERMANY\n" msgid "Introduction" msgstr "Einleitung" msgid "Agave is an application for the GNOME desktop that allows you to select an initial color and generate a variety of different colorschemes from that color. The primary audience of this application is graphic designers (and particularly web designers) though it can be used for anything where you might need to pick several colors that go well together, such as painting rooms in your house." msgstr "Agave ist ein Software für den GNOME Desktop welches Ihnen ermöglicht, eine Basisfarbe auszuwählen und eine Vielfalt unterschiedlicher Farbschemata von dieser Farbe zu erstellen. Die primäre Zielgruppe dieser Software sind Grafik Designer (und besonders Web Designer), obwohl es für alles verwendet werden kann, wo das Auswählen von zusammenpassenden Farben benötigt wird, wie die Farbauswahl für Räume in Ihrem Haus." #: new page msgid "Getting Started" msgstr "Der Anfang" msgid "Starting Agave" msgstr "Agave starten" msgid "The Agave window" msgstr "Das Agave Fenster" msgid "This section explains how to start Agave and gives a basic overview of the application." msgstr "Dieses Kapitel erklärt, wie Agave gestartet wird und gibt eine grundlegende Übersicht über dieses Programm." msgid "You can start Agave in the following ways:" msgstr "Agave kann auf folgende Arten gestartet werden:" msgid "Applications menu" msgstr "Programm Menü" msgid "Choose Graphics → Agave." msgstr "Wählen Sie Grafik → Agave." msgid "Command line" msgstr "Kommandozeile" msgid "Type agave, then press Return." msgstr "Geben Sie agave ein und drücken Sie dann Enter." #: new page msgid "When you start Agave, you will see a window that looks very much like the following" msgstr "Wenn Agave gestartet wurde, erscheint ein Fenster, das wie das Folgende aussieht" msgid "Figure 1 Agave Window" msgstr "Abbildung 1: Das Agave Fenster" msgid "The Agave window contains the following elements:" msgstr "Das Agave Fenster beinhaltet folgende Elemente:" msgid "Menubar" msgstr "Menüleiste" msgid "The menus on the menubar contain all of the commands you need to use Agave" msgstr "Die Menüs in der Menüleiste beinhalten alle Befehle man für Agave braucht" msgid "Toolbar" msgstr "Werkzeugleiste" msgid "The toolbar contains a subset of the commands that you can access from the menubar." msgstr "Die Werkzeugleiste beinhaltet einen Teil der Befehle, auf die mit der Menüleiste zugegriffen werden kann." msgid "Scheme Display Box" msgstr "Schema Darstellungsbereich" msgid "The scheme display box contains several large color swatches which display a color scheme based on the current settings. It also contains controls that allow you to select a new base color and scheme type." msgstr "Die Schema Darstellungsbox beinhaltet verschiedene umfangreiche Farbmuster welche ein Farbschema darstellen, die auf den aktuellen Einstellungen basieren. Es beinhaltet auch die Möglichkeit, eine neue Basisfarbe und Schema auszuwählen." msgid "Palette" msgstr "Palette" msgid "The palette offers a selection of color presets that you can click in order to change the current base color. You can choose from several built-in palettes and you can also create and add your own palettes. (add reference)" msgstr "Die Palette stellt eine Auswahl von Farben dar, die mit einem Klick als Basisfarbe übernommen wird. Es kann zwischen mehreren mitgelieferten Platten gewählt werden, aber es können auch eigene Paletten hinzugefügt werden. (Referenz hinzufügen)" msgid "Favorites" msgstr "Favoriten" msgid "The favorites list displays a list of colors that you have saved, as well as a small toolbar that allows you to modify the list." msgstr "Die Favoriten Liste stellt eine Liste von Farben dar, die gespeichert wurden, sowie eine kleine Toolbar, die es erlaubt die Liste zu bearbeiten." msgid "Status bar" msgstr "Statusleiste" msgid "The status bar is pretty much useless. I should just get rid of it." msgstr "Die Statusleite ist so ziemlich unbrauchbar. Ich sollte sie loswerden." msgid "Using Agave" msgstr "Agave verwenden" #: new page msgid "Choosing a Base Color" msgstr "Eine Basisfarbe wählen" msgid "There are several different ways of choosing a color that will be used as the base of your colorschemes." msgstr "Es gibt viele verschiedene Wege eine Farbe auszuwählen, die als Basis für das Farbschema verwendet wird." msgid "The Color Selector Button" msgstr "Der Knopf Farbauswahl" msgid "The most basic way to choose a color is by using the Color selector button. Clicking on this button will bring up the dialog shown below:" msgstr "Der einfachste Weg, eine Farbe auszuwählen, ist über den Knopf Farbwauswahl. Ein Klick auf diesen Knopf öffnet folgenden Dialog aus:" msgid "Figure 2 Color Selection Dialog" msgstr "Abbildung 2: Der Dialog Farbauswahl" msgid "The color selection dialog allows you to choose a base color in a variety of ways, including:" msgstr "Der Dialog Farbauswahl ermöglicht es, eine Basisfarbe auf verschiedene Arten zu wählen:" msgid "Specifying Hue, Saturation, and Value" msgstr "Angabe von Farbton, Sättigung und Wert" msgid "Specifying Red, Green, and Blue components" msgstr "Angabe der Komponenten Rot, Grün und Blau" msgid "Choosing from a color wheel" msgstr "Auswahl aus einem Farbkreis" msgid "Choosing a color from any point on the screen (eyedropper tool)" msgstr "Wahl einer Farbe von einem beliebigen Punkt auf dem Bildschirm (Werkzeug Pipette)" msgid "Using the color selector button is probably the best method to use if you already know which color you want to use as your base color." msgstr "Das Verwenden des Knopfes Farbauswahl ist wahrscheinlich die beste Art, wenn bekannt ist, welche Farbe als Basisfarbe verwenden werden soll." msgid "Palettes" msgstr "Paletten" msgid "Another way to select a base color is by using one of the color palettes in the bottom part of the application window. These palettes provide a number of preset colors that you can use as a starting point. You can select one of the colors in the palette as your base color by simply clicking on it." msgstr "Ein anderer Weg eine Basisfarbe auszuwählen ist eine der Farbpaletten im unteren Bereich des Programmfensters auszuwählen. Diese Paletten stellen eine Vielzahl von voreingestellten Farben dar, die als Startpunkt verwendet werden können. Eine der Farben kann als Basisfarbe ausgewählt werden, indem man einfach darauf klickt." msgid "If you've previously saved colors to your favorites list, you can use any of those colors as the basis of your colorscheme by selecting it from the list." msgstr "Wenn vorher bereits Farben als Favoriten in der Favoritenliste gespeichert wurden, kann eine dieser Farben als Basisfarbe für das Farbschema verwenden, indem es in der Liste ausgewählt wird." msgid "Random" msgstr "Zufällig" msgid "If you're really stuck and need some inspiration, you can also have Agave generate a random base color for you. You can do this by clicking the Randomn button on the toolbar. Alternately, you can select Edit → Random (Ctrl+R) from the menu." msgstr "Wenn Sie wirklich feststecken und einige Inspiration brauchen, können Sie auch eine zufällig generierite Basisfarbe von Agave erhalten. Das kann erreicht werden, indem man auf den Knopf Zufällig in der Werkzeugleiste klickt. Alternativ kann man dies auch im Menü Bearbeiten → Zufällig (Ctrl+R) auswählen." #: new page msgid "Choosing a Scheme Type" msgstr "Wahl eines Schema Typs" msgid "Agave allows you choose from several different types of color schemes:" msgstr "Agave ermöglicht die Wahl von verschiedenen Typen von Farbschemata:" msgid "Complements" msgstr "Komplementare Farbe" msgid "Generates a 2-color scheme consisting of the base color and a color directly across the color wheel from the base color" msgstr "Erzeugt ein 2-farbiges Schema bestehend aus der Basisfarbe und einer Farbe im Farbkreis direkt gegenüber der Basisfarbe" msgid "Split-Complements" msgstr "zwei halb-komplementäre Farben" msgid "Generates a 3-color scheme consisting of the base color and two colors that are slightly offset from its complement" msgstr "Erzeugt ein 3-farbiges Schema bestehend aus der Basisfarbe und zwei Farben die ein bisschen versetzt von der Komplementärfarbe sind" msgid "Triads" msgstr "Dreiergruppe" msgid "Generates a 3-color scheme consisting of the base color and two other colors that are equally spaced around the color wheel" msgstr "Erzeugt ein 3-farbiges Schema bestehend aus der Basisfarbe und zwei anderen Farben mit gleichem Abstand auf dem Farbkreis" msgid "Tetrads" msgstr "Vierergruppe" msgid "Generates a 4-color scheme consisting of the base color and three other colors that are equally spaced around the color wheel" msgstr "Erzeugt ein 4-farbiges Schema bestehend aus der Basisfarbe und drei weiteren Farben mit gleichem Abstand auf dem Farbkreis" msgid "Analogous" msgstr "sinngemässe Farben" msgid "Generates a 3-color scheme consisting of the base color and two other colors that are slightly offset" msgstr "Erzeugt ein 3-farbiges Schema bestehend aus der Basisfarbe und zwei weiteren Farben mit ein wenig Abstand" msgid "Monochromatic" msgstr "Einfarbig" msgid "Generates a 3-color scheme consisting of the base color and two other colors that are the same hue, but vary in saturation or value" msgstr "Erzeugt ein 3-farbiges Schema bestehend aus der Basisfarbe und zwei weiteren Farben mit dem gleichen Farbton, aber mit abweichender Sättigung" #: new page msgid "About Agave" msgstr "Über Agave" msgid "Agave was written by Jonathon Jongsma. To find more information about Agave, please visit the Agave project website." msgstr "Agave wurde von Jonathon Jongsma geschrieben. Für mehr Informationen über Ageve, bitte besuchen Sie die Projektwebsite von Agave." msgid "To report a bug or make a suggestion regarding this application or this manual, see the Feedback section of the GNOME User Guide." msgstr "Für Fehler oder Vorschläge bezüglich dieser Software oder diesem Handbuch, schauen Sie das Kapitel Feedback im GNOME User Guide an." msgid "This program is distributed 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. A copy of this license can be found at this link, or in the file COPYING included with the source code of this program." msgstr "Dieses Programm wird unter den Bedingungen der GNU General Public license vertrieben, veröffenlicht von der Free Software Foundation; entweder Version 2 der Lizenz, oder (Ihrer Meinung nach) jeder späteren Version. Eine Kopie dieser Lizenz finden Sie unter diesem Link (ghelp:gpl), oder in der Datei COPYING im Quellcode dieses Programms." agave-0.4.7/help/de/agave.xml0000644000175000017500000004741411224443302012660 00000000000000 ]>
Agave Manual 2007 GNOME Documentation Project GNOME Documentation Project GNOME Documentation Project GNOME 1.0 2007 Initial version This manual describes version 0.4.2 of Agave. Feedback To report a bug or make a suggestion regarding the Agave application or this manual, follow the directions in the GNOME Feedback Page. Agave is a colorscheme designer for the GNOME desktop. agave colorscheme designer Einleitung Agave is an application for the GNOME desktop that allows you to select an initial color and generate a variety of different colorschemes from that color. The primary audience of this application is graphic designers (and particularly web designers) though it can be used for anything where you might need to pick several colors that go well together, such as painting rooms in your house. Der Anfang Dieses Kapitel erklärt, wie Agave gestartet wird und gibt eine grundlegende Übersicht über dieses Programm. Agave starten Agave kann auf folgende Arten gestartet werden: Applications menu Choose Graphics Agave . Kommandozeile Type agave, then press Return. Das Agave Fenster When you start Agave, you will see a window that looks very much like the following:
Agave Window Shows Agave main window.
The Agave window contains the following elements: Menüleiste The menus on the menubar contain all of the commands you need to use Agave. Werkzeugleiste Die Werkzeugleiste beinhaltet einen Teil der Befehle, auf die mit der Menüleiste zugegriffen werden kann. Schema Darstellungsbereich Die Schema Darstellungsbox beinhaltet verschiedene umfangreiche Farbmuster welche ein Farbschema darstellen, die auf den aktuellen Einstellungen basieren. Es beinhaltet auch die Möglichkeit, eine neue Basisfarbe und Schema auszuwählen. Palette The palette offers a selection of color presets that you can click in order to change the current base color. You can choose from several built-in palettes and you can also create and add your own palettes. See for more information. Favoriten Die Favoriten Liste stellt eine Liste von Farben dar, die gespeichert wurden, sowie eine kleine Toolbar, die es erlaubt die Liste zu bearbeiten. Statusleiste Die Statusleite ist so ziemlich unbrauchbar. Ich sollte sie loswerden.
Agave verwenden Eine Basisfarbe wählen Es gibt viele verschiedene Wege eine Farbe auszuwählen, die als Basis für das Farbschema verwendet wird. Der Knopf Farbauswahl Der einfachste Weg, eine Farbe auszuwählen, ist über den Knopf Farbwauswahl. Ein Klick auf diesen Knopf öffnet folgenden Dialog aus:
Color Selection Dialog Color Selection Dialog
Der Dialog Farbauswahl ermöglicht es, eine Basisfarbe auf verschiedene Arten zu wählen: Angabe von Farbton, Sättigung und Wert Angabe der Komponenten Rot, Grün und Blau Auswahl aus einem Farbkreis Wahl einer Farbe von einem beliebigen Punkt auf dem Bildschirm (Werkzeug Pipette) Das Verwenden des Knopfes Farbauswahl ist wahrscheinlich die beste Art, wenn bekannt ist, welche Farbe als Basisfarbe verwenden werden soll.
Paletten Ein anderer Weg eine Basisfarbe auszuwählen ist eine der Farbpaletten im unteren Bereich des Programmfensters auszuwählen. Diese Paletten stellen eine Vielzahl von voreingestellten Farben dar, die als Startpunkt verwendet werden können. Eine der Farben kann als Basisfarbe ausgewählt werden, indem man einfach darauf klickt. You can add your own custom palettes to Agave so that they will show up in the palettes selector. To do so, you must first create a palette file. A palette file is a file in the gimp palette format. An trivial example file follows: GIMP Palette Name: MyPalette # 0 0 0 Black 255 0 0 Red 0 255 0 Green 0 0 255 Blue 255 255 255 White All palette files must start with the GIMP Palette header and a palette name. You can optionally include a comment starting with a #. The remaining lines define individual colors' red, green, and blue components ranging from 0 to 255. Your palette file should be saved with a .gpl extension and saved in home home directory at .local/share/agave/palettes/. If your file is well-formed, Agave will load your custom palette next time you restart the application. Favoriten Wenn vorher bereits Farben als Favoriten in der Favoritenliste gespeichert wurden, kann eine dieser Farben als Basisfarbe für das Farbschema verwenden, indem es in der Liste ausgewählt wird. Zufällig If you're really stuck and need some inspiration, you can also have Agave generate a random base color for you. You can do this by clicking the Random button on the toolbar. Alternately, you can select Ctrl R Edit Random from the menu.
Wahl eines Schema Typs Agave allows you choose from several different types of color schemes. These color schemes are explained below. In addition, a diagram is provided for each scheme which shows the relationships between the generated colors on a color wheel. Komplementare Farbe Erzeugt ein 2-farbiges Schema bestehend aus der Basisfarbe und einer Farbe im Farbkreis direkt gegenüber der Basisfarbe
Komplementare Farbe Shows complementary color scheme
zwei halb-komplementäre Farben Erzeugt ein 3-farbiges Schema bestehend aus der Basisfarbe und zwei Farben die ein bisschen versetzt von der Komplementärfarbe sind
Split Complements Shows split-complementary color scheme
Dreiergruppe Erzeugt ein 3-farbiges Schema bestehend aus der Basisfarbe und zwei anderen Farben mit gleichem Abstand auf dem Farbkreis
Dreiergruppe Shows triads color scheme
Vierergruppe Erzeugt ein 4-farbiges Schema bestehend aus der Basisfarbe und drei weiteren Farben mit gleichem Abstand auf dem Farbkreis
Vierergruppe Shows tetrads color scheme
sinngemässe Farben Erzeugt ein 3-farbiges Schema bestehend aus der Basisfarbe und zwei weiteren Farben mit ein wenig Abstand
sinngemässe Farben Shows analogous color scheme
Einfarbig Erzeugt ein 3-farbiges Schema bestehend aus der Basisfarbe und zwei weiteren Farben mit dem gleichen Farbton, aber mit abweichender Sättigung
Über Agave Agave was written by Jonathon Jongsma. To find more information about Agave, please visit the Agave project website. To report a bug or make a suggestion regarding this application or this manual, see the Feedback section of the GNOME User Guide. This program is distributed 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. A copy of this license can be found at this link, or in the file COPYING included with the source code of this program.
agave-0.4.7/help/de/legal.xml0000644000175000017500000000752511224443302012660 00000000000000 Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License (GFDL), Version 1.1 or any later version published by the Free Software Foundation with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. You can find a copy of the GFDL at this link or in the file COPYING-DOCS distributed with this manual. This manual is part of a collection of GNOME manuals distributed under the GFDL. If you want to distribute this manual separately from the collection, you can do so by adding a copy of the license to the manual, as described in section 6 of the license. Many of the names used by companies to distinguish their products and services are claimed as trademarks. Where those names appear in any GNOME documentation, and the members of the GNOME Documentation Project are made aware of those trademarks, then the names are in capital letters or initial capital letters. DOCUMENT AND MODIFIED VERSIONS OF THE DOCUMENT ARE PROVIDED UNDER THE TERMS OF THE GNU FREE DOCUMENTATION LICENSE WITH THE FURTHER UNDERSTANDING THAT: DOCUMENT IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, WITHOUT LIMITATION, WARRANTIES THAT THE DOCUMENT OR MODIFIED VERSION OF THE DOCUMENT IS FREE OF DEFECTS MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE OR NON-INFRINGING. THE ENTIRE RISK AS TO THE QUALITY, ACCURACY, AND PERFORMANCE OF THE DOCUMENT OR MODIFIED VERSION OF THE DOCUMENT IS WITH YOU. SHOULD ANY DOCUMENT OR MODIFIED VERSION PROVE DEFECTIVE IN ANY RESPECT, YOU (NOT THE INITIAL WRITER, AUTHOR OR ANY CONTRIBUTOR) ASSUME THE COST OF ANY NECESSARY SERVICING, REPAIR OR CORRECTION. THIS DISCLAIMER OF WARRANTY CONSTITUTES AN ESSENTIAL PART OF THIS LICENSE. NO USE OF ANY DOCUMENT OR MODIFIED VERSION OF THE DOCUMENT IS AUTHORIZED HEREUNDER EXCEPT UNDER THIS DISCLAIMER; AND UNDER NO CIRCUMSTANCES AND UNDER NO LEGAL THEORY, WHETHER IN TORT (INCLUDING NEGLIGENCE), CONTRACT, OR OTHERWISE, SHALL THE AUTHOR, INITIAL WRITER, ANY CONTRIBUTOR, OR ANY DISTRIBUTOR OF THE DOCUMENT OR MODIFIED VERSION OF THE DOCUMENT, OR ANY SUPPLIER OF ANY OF SUCH PARTIES, BE LIABLE TO ANY PERSON FOR ANY DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES OF ANY CHARACTER INCLUDING, WITHOUT LIMITATION, DAMAGES FOR LOSS OF GOODWILL, WORK STOPPAGE, COMPUTER FAILURE OR MALFUNCTION, OR ANY AND ALL OTHER DAMAGES OR LOSSES ARISING OUT OF OR RELATING TO USE OF THE DOCUMENT AND MODIFIED VERSIONS OF THE DOCUMENT, EVEN IF SUCH PARTY SHALL HAVE BEEN INFORMED OF THE POSSIBILITY OF SUCH DAMAGES. agave-0.4.7/help/C/0000777000175000017500000000000011224443302010717 500000000000000agave-0.4.7/help/C/agave.xml0000644000175000017500000005160711224443302012451 00000000000000 ]>
&app; Manual 2007 GNOME Documentation Project GNOME Documentation Project GNOME Documentation Project GNOME 1.0 2007 Initial version This manual describes version &appversion; of &app;. Feedback To report a bug or make a suggestion regarding the &app; application or this manual, follow the directions in the GNOME Feedback Page. &app; is a colorscheme designer for the GNOME desktop. agave colorscheme designer Introduction &app; is an application for the GNOME desktop that allows you to select an initial color and generate a variety of different colorschemes from that color. The primary audience of this application is graphic designers (and particularly web designers) though it can be used for anything where you might need to pick several colors that go well together, such as painting rooms in your house. Getting Started This section explains how to start &app; and gives a basic overview of the application. Starting &app; You can start &app; in the following ways: Applications menu Choose Graphics &app; . Command line Type agave, then press Return. The &app; window When you start &app;, you will see a window that looks very much like the following:
&app; Window Shows &app; main window.
The &app; window contains the following elements: Menubar The menus on the menubar contain all of the commands you need to use &app;. Toolbar The toolbar contains a subset of the commands that you can access from the menubar. Scheme Display Box The scheme display box contains several large color swatches which display a color scheme based on the current settings. It also contains controls that allow you to select a new base color and scheme type. Palette The palette offers a selection of color presets that you can click in order to change the current base color. You can choose from several built-in palettes and you can also create and add your own palettes. See for more information. Favorites The favorites list displays a list of colors that you have saved, as well as a small toolbar that allows you to modify the list. Status bar The status bar is pretty much useless. I should just get rid of it.
Using &app; Choosing a Base Color There are several different ways of choosing a color that will be used as the base of your colorschemes. The Color Selector Button The most basic way to choose a color is by using the Color selector button. Clicking on this button will bring up the dialog shown below:
Color Selection Dialog Color Selection Dialog
The color selection dialog allows you to choose a base color in a variety of ways, including: Specifying Hue, Saturation, and Value Specifying Red, Green, and Blue components Choosing from a color wheel Choosing a color from any point on the screen (eyedropper tool) Using the color selector button is probably the best method to use if you already know which color you want to use as your base color.
Palettes Another way to select a base color is by using one of the color palettes in the bottom part of the application window. These palettes provide a number of preset colors that you can use as a starting point. You can select one of the colors in the palette as your base color by simply clicking on it. You can add your own custom palettes to &app; so that they will show up in the palettes selector. To do so, you must first create a palette file. A palette file is a file in the gimp palette format. An trivial example file follows: GIMP Palette Name: MyPalette # 0 0 0 Black 255 0 0 Red 0 255 0 Green 0 0 255 Blue 255 255 255 White All palette files must start with the GIMP Palette header and a palette name. You can optionally include a comment starting with a #. The remaining lines define individual colors' red, green, and blue components ranging from 0 to 255. Your palette file should be saved with a .gpl extension and saved in home home directory at .local/share/agave/palettes/. If your file is well-formed, &app; will load your custom palette next time you restart the application. Favorites If you've previously saved colors to your favorites list, you can use any of those colors as the basis of your colorscheme by selecting it from the list. Random If you're really stuck and need some inspiration, you can also have &app; generate a random base color for you. You can do this by clicking the Random button on the toolbar. Alternately, you can select Ctrl R Edit Random from the menu.
Choosing a Scheme Type &app; allows you choose from several different types of color schemes. These color schemes are explained below. In addition, a diagram is provided for each scheme which shows the relationships between the generated colors on a color wheel. Complements Generates a 2-color scheme consisting of the base color and a color directly across the color wheel from the base color
Complements Shows complementary color scheme
Split-Complements Generates a 3-color scheme consisting of the base color and two colors that are slightly offset from its complement
Split Complements Shows split-complementary color scheme
Triads Generates a 3-color scheme consisting of the base color and two other colors that are equally spaced around the color wheel
Triads Shows triads color scheme
Tetrads Generates a 4-color scheme consisting of the base color and three other colors that are equally spaced around the color wheel
Tetrads Shows tetrads color scheme
Analogous Generates a 3-color scheme consisting of the base color and two other colors that are slightly offset
Analogous Shows analogous color scheme
Monochromatic Generates a 3-color scheme consisting of the base color and two other colors that are the same hue, but vary in saturation or value
About &app; &app; was written by Jonathon Jongsma. To find more information about &app;, please visit the &app; project website. To report a bug or make a suggestion regarding this application or this manual, see the Feedback section of the GNOME User Guide. This program is distributed 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. A copy of this license can be found at this link, or in the file COPYING included with the source code of this program.
agave-0.4.7/help/C/legal.xml0000644000175000017500000000747611224443302012457 00000000000000 Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License (GFDL), Version 1.1 or any later version published by the Free Software Foundation with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. You can find a copy of the GFDL at this link or in the file COPYING-DOCS distributed with this manual. This manual is part of a collection of GNOME manuals distributed under the GFDL. If you want to distribute this manual separately from the collection, you can do so by adding a copy of the license to the manual, as described in section 6 of the license. Many of the names used by companies to distinguish their products and services are claimed as trademarks. Where those names appear in any GNOME documentation, and the members of the GNOME Documentation Project are made aware of those trademarks, then the names are in capital letters or initial capital letters. DOCUMENT AND MODIFIED VERSIONS OF THE DOCUMENT ARE PROVIDED UNDER THE TERMS OF THE GNU FREE DOCUMENTATION LICENSE WITH THE FURTHER UNDERSTANDING THAT: DOCUMENT IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, WITHOUT LIMITATION, WARRANTIES THAT THE DOCUMENT OR MODIFIED VERSION OF THE DOCUMENT IS FREE OF DEFECTS MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE OR NON-INFRINGING. THE ENTIRE RISK AS TO THE QUALITY, ACCURACY, AND PERFORMANCE OF THE DOCUMENT OR MODIFIED VERSION OF THE DOCUMENT IS WITH YOU. SHOULD ANY DOCUMENT OR MODIFIED VERSION PROVE DEFECTIVE IN ANY RESPECT, YOU (NOT THE INITIAL WRITER, AUTHOR OR ANY CONTRIBUTOR) ASSUME THE COST OF ANY NECESSARY SERVICING, REPAIR OR CORRECTION. THIS DISCLAIMER OF WARRANTY CONSTITUTES AN ESSENTIAL PART OF THIS LICENSE. NO USE OF ANY DOCUMENT OR MODIFIED VERSION OF THE DOCUMENT IS AUTHORIZED HEREUNDER EXCEPT UNDER THIS DISCLAIMER; AND UNDER NO CIRCUMSTANCES AND UNDER NO LEGAL THEORY, WHETHER IN TORT (INCLUDING NEGLIGENCE), CONTRACT, OR OTHERWISE, SHALL THE AUTHOR, INITIAL WRITER, ANY CONTRIBUTOR, OR ANY DISTRIBUTOR OF THE DOCUMENT OR MODIFIED VERSION OF THE DOCUMENT, OR ANY SUPPLIER OF ANY OF SUCH PARTIES, BE LIABLE TO ANY PERSON FOR ANY DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES OF ANY CHARACTER INCLUDING, WITHOUT LIMITATION, DAMAGES FOR LOSS OF GOODWILL, WORK STOPPAGE, COMPUTER FAILURE OR MALFUNCTION, OR ANY AND ALL OTHER DAMAGES OR LOSSES ARISING OUT OF OR RELATING TO USE OF THE DOCUMENT AND MODIFIED VERSIONS OF THE DOCUMENT, EVEN IF SUCH PARTY SHALL HAVE BEEN INFORMED OF THE POSSIBILITY OF SUCH DAMAGES. agave-0.4.7/help/C/figures/0000777000175000017500000000000011224443302012363 500000000000000agave-0.4.7/help/C/figures/split-complements.png0000644000175000017500000002202311224443302016463 00000000000000‰PNG  IHDR––<qâbKGDÿÿÿ ½§“tIME×#v # IDATxœíyœÕ½·ŸSÕÝ3Ã*" "vˆŠ WPß+q¹.à7$&jÌfbb47Q4›æÆ›\scâ5 Ä%QÉEÐðÊ2  àÂ+²Dpa›afº»ÎûGuOwWŸSuª»§{f2ßùœO­ÝsNÕÓßó;§NUA‡:Ô¡u¨CêP‡:Ô¡u¨CêPI%*Ö¤»ôŽB_ Ž´áˆ(t± sºD E Î‚C1Ø|Ü v÷€=3ÉJ—¡µèŸ¬ó%#p¼ #"0,ÃlwÚÛ;Ø@$•TóŠuIöذ5 [mØÍU°ñÁ¶Š´‚ú§k’ä¸*˜bÃT¦FàX/ A móƒÏ‚QXjÃR –Ml/SÑ+¦ö –=VrZηà‚Œ(HÅB—5ÝglX´^mUh»ëÓ’ñfGàrŽÒœT#HL×íøÐ†Ç¢0ïxÁª;8eV{똒ÏGa¶íãLÅ´­€¥l^ >N°«ŽUÙÔfÁê#(àF®Š@UöI2 ¶a »Ÿ)dÞuYë#ðP~vt ü­Jg ¬ºJ†!y$[%\'¡Ê$žJÍr:¡YW* OR­¸_µlA•€ë€­J9 ^â,¶¸Ú X5’c«%8ð†„9"ÙàèàÒ% ÷ó~Fˆ_2ýŒE>lDÌqàƒ’ê%Ç} ˤ¶V$w6ÁV¾˜*$Tºù–r)‚œJ5oåÏG,ø¢ [ã’;¥¤K™²_°Z7X²f2²¬›$Ô¨@**w2UX+.ÔXp›e#3Bf³¬j­` EvYâ °ûh†Èªìu…@•-À²«;ïºBàòV‡*¸,7sý×q¼ó:ÇòÑFfÅ[ºc¬ŠµT±YZ¦eƒã]çȤ+»d""Õ6•kåÎGð'ùDËô- –@^øØSó¡ _éªÎü¢ \a\+¨»!=oÚ?eUŽ[©«¶pqVîüTªx¨¥»""-ùåÈKn9«ˆ/À=äÙóéSoe-;©?³x«Vb¶Šiìa€Ò¹•ßþ’Yü‰w€¹úc_œZαäå—BäÿêÎ4y÷|s²y]Œ«ª MaÒ)¨·]Uêš$`IÔ@©øâÒ-òQ.5,fhµ Xòs£!ò;°…?A1–éz÷´Õ ~-ưýYAýWa*»DڸɯõÆ­2ë¿“ó­)bQ*X'+€a©å® »SiÜ*¨+"ó?¤ÂµL òƒ+H¦Ý ~@5;[Ú­T™/Þ¡Tàu"Ácò·¥ï@-6ÆŠ‹Ì§)q<¶µ¤óM’×Lg¸þ‚GöÔ;Ÿ-U;-;ÆR÷³'I4Ÿ¨°PÅ^Ù¥ñª¸l0…! 8zÇÊî†p¸("ÎW±Žõ]¤Aí-ðíiUXâל÷¿W²»‘Ò»T$`{æ÷ïwœÃô& ¨ëro?%¶–®”÷pµa‘T X#°Ä-üèB›“Ž…;/†¿o„QO“ïQ,A é“_ë[WKÄXA] 9-ÁB¡ð- „wË»K7̹p°"ö¯ÖGrô̺ÉCaý\8 ÌXs^‚IrA)˜0ÉÏ­ ,[Å•çV-?é ÓÃVC’_Q" Ö¥$“gqÿì(ÏWt«†‡æÀÂ/Á³;aÔBxñ‚É{O°FïýÅ:×á…ª ´ÛAW˜®…æ <;`בNAx÷ ïhçÈ;™©)r(VŒ˜ý .?Åa²s^4Þ¸ N8Îú Üø4 ô èÀÑÝŒî]—šÚñÃu?ø)l÷‚2¶òs?p¼ûyÁ QœÃÏåmÅ/¬ëôå΋ƒ?Û§,ú*üúJøÍ&8åϰa?æq”ŸcW‡ÒÓ·eX±­Â  ²—…7SA®e^­ùƒäÿ¹~À-ºSjª°`u%bßÊצØw¤Ù'„€kO‡Ú[ s7÷'øÏ×ÁQ9”îQ~ΦÚ'³Í4Î ;ÚÁ0¿ø*ÏqtndêX~ßeUúÀ|M~~š¢),X_!fwã»ç†ÿOCzÃòïÀ÷σ﯆)ÏÂ{ ¨«@(Aª\,.UÜåç\¼u~j«@ÕIöEWý©öQ9› Rõgkp¸"¬¢ö|}j„£ ¬‚#|:¼rìIºÝ¼ƒŠ  üÝ*k eÈ̇q,¨šsæ ØM\Ë0S8ý>“ïhsäw ÊM˜ž÷«¢;ß8«Ðÿ•Ñ¿ €µ·Àwž‚«^„¿¼÷N€£¢äŸ2Ó´¼ž’Û ŸÝý™$aâ\‡$¬p Ö­À›ö4Â'G@]êŸtzHè-`¤Ã,-`’å>aÙש´U i cù5‡U±@îr‡ïŸË?Á2“cQeoã “ûsÏ¥dzd\õ$ðÛÉ0½þÑköQŽ+¦éÔ”5uS‡P•›öTÃüjX˜€UkñBбZ=ã;ÁÅU0«z{þ1 êäd)7«é¤*Z×ÑY²_ݯ¾‘Àa˜øUø‡¿™B2Á_Ùt;Œ8:ìÿÖÇupÝ|X°® wƒÎu°àM*¨T`5"ˆgŸäeUpWx®P˜tZ-‰ö€iøv5LɆKÄFüÁÒAå”›º•.ïµ­Ìü½â7\ö˜±ÿÆä!g±ô†–8|õQèU8Æ÷DïZÙGÝ{VÔ`A’Ë¢ð‡oѲ¤ô‘äÔ*øIL‰$s²â–·x~n•^6¹èlêX¸ ÷³;L¹M‚÷$“çðµ)- À¬ñ°a.ôï“Á­µ°pCÁh*EËQMÊ棻Áž•L-T=ï"˜Y$ØçB* ¼&ìÝ×oY5o»©ã·*â\¶Ü&`ͦ[M‚Ïœö» SÿðÜ7á?/Ÿm€ …Íuø¤*gyØ#M,O!ò%¤ž‘$X”`&À©"ƒ0€ùõ‘¹ÓÙaË VÌþ<³ÇG‰µ¼a5Ëðͳaõ÷ Qcÿ ÷l™ ®Õ‘kÿ˜‰ødù  –8’ý¢'3iâZâ4£Pb!n $!/g|˜²5–¦ä`f‡úÎÒéøcàï7Ã×Ï‚ë_…sŸ‡]q2àÄ<Óœt¢ç"Þ¹¿2™×K à~’œKœáa±Ue˜êпʵ‚Àú7zw3~`˜ï,­b¸ã"w¬×[upâBXð>ùpe§Ø^ˆžX¿¬r÷—Á2š8ƒ8{•ùA¥ʤª4Iíf—Ën7œ‰üÁŠEfpéØ(¢EoA3Ó¤!P{+üÛX˜ùüû Ø/ÉÀÕœöCôÄ+µͯÄ8jiââìÏéÛÒA›Ic¹êÑ]>ŠN3-›XƒhJ çÂVñ€8W]«á·Ÿ…?–ì†QOòȂ« b#žkõP¥%¦PK‚‹i¢)¯ Bš€aƒû x+° LËåÖ4b‘$g óÙ¥Bºð$·[bÔ§àìgá[ë Áª®Güii¥³Vb:K‰s}LºdÚ‚Ô9UçÊì|ã2i·XÖãœ9ô^¸Á¸^­ˆX7,€^UÙvàt Í¸•WòA#Áey'>¨§=L'¨ê%¿a´Þ$ ž~ߢαŽ3“¥[lžYÕivkºz²;Ö«WÏ,ñp¥¹_²üJr-ì6v.“Ö£®¥¨s­  äML1)ŠÎ±ºw³§Ñ”ì0¢/LìчÀ £L¾¿|J:0í¿aÙ€ÏÏV8GIþŒ+‰3ßÈ­ »°læPª1ÚîüïÅJæ•ä¹×‹Çü&«ÞèÉÊõ°v+ÄЯLL6iŒêv¢!#çÆÙ±ï9ÉÏT.#ÅKÞÆRâL Uö|þ˜Âª=uÚ!VÑ?¨ ÁÝéòµ® z2ów¹®^Û/¯…W6À÷ž†ƒ‡ÝÛ„Á.l“‡Â¸OA§2>WõçÏÃûŸ$H:_.ß?m!æû$Y©|g~q¹— Hq6æØQ5|{ÃaúEàìüø®·ÁŽ%kÏioçL&aÃVX±–¯ƒ•ëa×Gµáä0)]}†^-ôŒÕ Ðÿ¦î¤7´ɯñI¦jÝÊl°^Á@J†:¨­wÓš:x£š$D@Ž€ø‹Âª8œêÍ¿X¯øYj%\Þuï.dË×Áæí ¥§Mä:ÚÄÁî8øRè'‹aî3u$œþÀ'¥ùÒÊJ^Íy8,**]Õ§kojë`]¬­w§o7¹»vîS_FK›NÀí5¼ øØ‡Þü€õæ}À5ù0eÏë@K¥öe {e¼ö¦§Ý=ãf“‡ÀIýÉ»6HŽ„þ7ÅÙµÿnàÆpn½’g¡;IÒ;°ú Qímkp!Z›©¶v&Üÿy´HÁ#a îüôMìÅÀtw¶7°7{›Xo¿ ÎäÔ™i n€×6¦ªÎZxåuØ_]ªáÔ.d‡¸ó«üó÷·pî/%0ØXž6$y)¿ É7[~ ‡J8°¹Ö‚uõ.Lµõ°ÏqOú c²\èd oÈü½ vg'¯fo3ëÝÀ1¹°è¦U¤.9Ixý­Œ£½¼v~Æ—[}öñ<ôwÎ#’G_[M<1.°,mLò3LÀaePõIX(å@u°î5H÷b×§E¦*;wZŠG'7Õnsðxö6°¤´áýÔ3‰Â‚•½Î.o ðÞ®Lc`Å:ØøÿÜ" ;ÚmÒ·:á§q>©ÿð#ÓÒV$Ç¥;Ÿ¤s¤]pÖÕAí!¤­n ÙEÀ(2UÙÉdâ¡–RhÚß§9wÖž£!±;˜ìù0–=›'8øx¼Rë6 þ¶r?¯¿Û GFS_2Xë[–¶© á©÷“†h{ÜÝÐ+‘náƒâ¡–ÒXhZ ÷×g¯kïXpVg­ >:Ó*Ó»¬ƒÌ¸1ú6`nS÷¿ÒÚƒløk²9.†©ª, Ðh(îþ÷j:8‹áÀ¿g¯è µzf~*pLæ‹q4mÚ‚{¯ËòTjW²`HX† Ñ2àÔQ`E O³>¬.jSó–´T ¥§AŽÖ¾Z^ÅaÕÙ0øLÌGlVJG6¬¨¢«\õóñÍ»\ ‡sv)2Ñžôî[n<ÞêÁªq'¼ëÀŠxžþáçɺmÅ€¨Ï>ä“‘ö m¥€©¢äµÀ² ¼¸g„5½®ú`¸ü´9Õn#cʺI÷A)9 r¬ÊN‡Ú»üɉsÐø±!ÙjiÊÓø(TžÚ–:×´‘î“€yÄS³üÁJr(¬Öb¹#\Û3XÝŠ~ºl™”êYÌûøƒ•P8Vkh ŽÞSe¹hÐÐ6Ð"8ìNê½ëƒK¥JwcI†ã¹šÞž…ñσý"©Ò çÇOIøÐ»>(Æú¨uv¼3·%r 0¸ƒ6“˜È·aéÛa"ƒl™Ðš.é|N>ð®÷K²“DÎrþ|P3¾ïH<©g܃Nƒ;ÆÅ©ÿd:í¬,íø"Ç Ëüº>$Î:êXG=µÔó õÜE“;lá›IÁ6†–6³#g’QpgÂvéô Röº ˆ ظj_µË¡v%|²¢UpÜX2†L„Á¡³çÅÌ‘¼öèjñö7Щ€•™ñÈÀ2ó’z’¬o†í0ë¨ã i@ºýŒF–u _ph‚w(,?¨t!Zÿ ¬y6¾ uй žg~Ó…èS§@´Ú?§\!xõ÷ÿ §Ý]œî<íiü‡vBr1Nãˆæu 6ÓÀZêXÇaj©çi³ÇšœŠÛŠš¼Ãýoòo¹v¬­2u3…Wsìt](]­½½ÁŽÜó8z: šC'CßOƒ%H¾Ó/δ«›)€ˆäÒì|»³TL½ónÚF#µÔ³–úf‡KÒG§â¶ÑÈ2ÜLñ¦toÿ2É‘ðÎ&¤tµ¶{X6ô;Á­ÖOp:¢Dm›Å?gæÖá$ÚÏí_|öCS±ÑénÕvôˆP¯äŠ7ÀÜ‘qöíxŽd¢m?„›–BrJþÃ×+üð°‚ÕÑÕ !~‹°ÎÁIvÊÀ€10h¢džÝZàÕ'ÅÈIÀM·Wü`I…sT$?¾šæ‡†QÙ7ó{Áª9AåÐu7DÊK‰Dáúÿ…§BUÞX®Ö£¶ÀƒW&ر^7ÏW:Kª;Äîrï6.Té© .› P6¥u/ïzÒóKM ¢KbYO0hÂ%Œ8«õ^e—^ú5<õèÔ·'9ØXél*ɯïƒxßܗ҅ˤKÂ.7*à’ËLÊ¢ï4rœ¥¼³&ßS~íÛwÿ+<~=œøu˜±©;WÉÉ•ÎV¡’üþKPuYæt¦IûOÊ~QijÎôM¶öfÁŠÀç‚ÿ5ËçH4Ùl}Éä{Ê«ÕOÀí'®·áÂáä; ƒ&îæ 9µÒÙ +É©»;‹.?xTëUPøm3}%rd‘i™üÀz—Hl3ëŸ6ý®–Wý>øílxà2øÔEpi-ôœ”ý°× ,dº]鬚J²d4ÄB,Î¥Â&/d¡€J%ëÓrù_?I4=Éš'ãHé»[Y´y)ü`¼ñL&=²«êû݉³„3[?\’•£!ºbÝÕ¥ƒÉ² wòƒÊï]Üö‡ÐÕxpeÐ…¹?spO”me{½_¾â ðÄ ðßgÃc`æëÐïý›\ÐzÑÄKŒ•FŽ®„$µS öÄzƒäWíéÞ†¦{#š©Så¹Öc‚IÓòµ;ö«æ›~_iõþ:øÑXXþ œy?œó4Dz¿_Æ]׋!¯©Læõ’¼} ÄC´›Ï‹¦ëürSÇ ‚IçZb^˜2%H6=̪yqMa¾·89IX|Üq*X=`F- ýb!¯_«"Á}ô—OÐC¶Ð…ÊPê.ùà ˆÝç6ÓcÒÚS¤k°7;ÖfÁS«ÂÔdŒÊ<ˆðú_Ã|oáÚûüìtXtŒ»Î : Ê‘÷ þof˜àM:Ë+ËSˆ|IWJ½ ‘fNä…Ço}1@©*oÊ­À ¬÷°í%,ûïEJ¯åÀÇÀþýpÉßaÔͰMáQ¿+ój¾$˜ri 2ïj|Ki?òÔäR°çC¤opõe ipn™/\PóPØr›ªK&~É–#ücsØï7Óàž `þ—`äá’ÕÐ}ŒúÝ{ªåo¼ŠÀ ^í\z,rúXšŸ XJEßANß…\š€W0ÅýUêN|1UΩ ‰±TŽe?,¸?ÔìÁlt€…]µÉ_èÏ÷”ö­˜ëŸ†?\¢¦< G+† ù½N¬a‚_m {0Â@ò"±»¹c»M·>aÿO¾Â߀•ÁðÙ0éW`wW#Ý›©üâ,Å %£N¦_;;Ug¦‡ªaEÔv‚­5ðf ì>é“z>At®†] wFVð] “ªÝŠç|gvrCqoßH>X~¯éòS¸‚†Ù(ûà—Ÿ wb]…«;ºƒiß:’‹î(äeôö xè³P·θÎÐï´@°¬D§ÞT£Y¯ú¬ ªôÔJ½Ÿ­8°Šq-£A‚ Hœ ¸» TÂŒ\H ‹íkÏäôk-byq3ø†&øó÷`Þ5Ðë8 5ÞÿØøå—<çůCÙx÷ÍëÆ‘›`i’Ýü{–ž©‰„bªKªý‚>“z”âaÁÏ‘±…½qö’MX\€cízîKÿ&ÿÎ] ±¾zW×U~?^ï¶T²e>~¨NWªÑK*?P)=ÞÊ{-ί³2¨%ç÷}&ŸÉù‰†è\MÑv¬UÒiä½ÕÓ8mŽets„tàùŸÃW@u?8ïoÐï\p„úèãVšª2LO‘ª!ï]ö:”.ù9—óP  ¹–ß~ªýóë‚.4ÌŒR…Üê/ˆÝ,¼Ù Üó£÷àçgÛaÌMpáJè:ÜÕ~:GÓ¸–÷DgN¬¿K…u,{©"›t2w+¯™8šî'ø“Ø â‡šb«Ñ¡Idr;»6^ƈ©Ðs€z¯¿ÿÁ훊K˜þ2 ¤•ïRaK× Ò€%’zgR9’iW¢‰CùÅX¢y^¤ÀUß‚¥—ׂöó~ÆÏ¹¸Zp뺀/T¡'y Û~y×Äq¹[ê>‚ûfÀ#s`è,¸d-ôgŠ©cé\+;¶B}òƒNx[¥¥!î×Wýv41j”ƒKµŸ²ÓSñÝ6`/|b©ð§Þ$_僭°ä®Ìº7Ãm'–•pÞb˜xˆNþndêD:ð4É’æN’Ó"ÿ7­RÎí¨G‘ë‚ù\Ãöò~¸(~0úêétb_Õ7´ © Óú¤à­—OçÄÏXüåvÉ‚o úÿ+œ÷,qbn€¡ëVñëj“<ÎæWr‰Öè÷NPÕ§ŽçìœÀ<ˆ7QPß¼î+‚ëŸ+õ-TQ"Ñu$âÇcEêp_â:y.Wj;}Mc,¯KúYýV–c6Åo¼¦jä¹ê6Ý­ªï÷cá|)GW÷ëì[u U'&ùGÁu³´g¹EŠü|œD|p'NâZ`;<ÅX†VPÕ©;†Žpíç&&­A¯t-B]¼•ÔäÃj®¨ÔT«{æ?«æ³Ôõ ¶€ý%Ãâ«O\œKúI‰ƒ$¸œ$õ%«æB6H÷‹±T u3¨‚yÓ >¸g,;R,IªërÁJþ¦–ydå#¢–sp%…+2Å™RßOe W±ŽUT—Ëäó»TKœ$ˆ9‚Ï×5”Z,€ùâI’üP[Źn›j}ê̘¸UP÷‚ª—G¥¼ÏÑÃe’2®¥I—t–b>=üP0ûIMñŠVËð8·á0¿dÕ ª¬³b)Ü*¨k!*Á¦ ÂMi×Ræ-]Ái>\r›a R±Á{€„Ä–W§/I¦†Úuû{æN8‡ Š¥‚ óƒ)0÷Êòéoð.§{‰²çµ®ˆ½Y´e `h"ÁE$Yå ‰®nÊ U¡}IA—q½ò¶ÉL¯úµ³—óKµTùçí» ÄE‚™-~ËU˃°XÀâ|’l c)»\r—…*oU˜½.­B.éx×ya2íŠÈìã-‘ ° À>çs[ ú|ÁôÅ*‰ÊÀb±—8“I²F ŠÎ±T?é,·ÒýnU…q«02q-÷Ê.¶Þ…t°éÜÊZödÁé9O6nI•,”k52©IDAT€åb/SHò‚Ò‰t] ªÞÉí^0iù…«~,¨Â´esnU» "¯[Y€ý0¥œPA¹ÁX)réHg)¶™ì…ÀUˆJ U&Ö2r$Ívëqè<]0©ì¯:.?XE«¹‚$?À¯ÕǵtyS¡­À°¤ÙóaZ‰~~n Æ­l Ö`Ì‚ãËøl„Œ*Bòº˜‹ä2ꌊ– *žÒëa 2 ÞÓS¸tÁ|PÜeîÍ`׸LpÂÜ–îRðSÁJi“XLÄá-ß*±¨tnf XöÔ+©˜U‡~@…ƒK[¾b¢`ÄM¶Ë¦Êƒ°U¬ç'ã0?訧ö ‡Ò%Ý>(¦¦2LWõ—ùlàÏg>Ôœ,´>dö[D­,€½â;Äl®Å¡¡*Ð6x(æñÌûõ¼«Öéós$ïúUbX× Ž™-è­~ÕrÔzÀJëq?‚Q8<§r«Bà)$¶*&xÏž7u/è®õØ£½î7ÌnÙÔúÀØ+Þb¿8‡$3qØäV^x¶ý€ б²—öu½_·Dªt;Áž)èzŽ û[š,VT­¬´‹42ÉO-8ìWý©€*®´L\+&ï:S¨tŽ¥q±Ãü삪Šè~jÝ` ማfÁƒ$üàò›/² …I•ʱ²æ<˜€a6âfh5±”Nm¬´ÄŽFÄÕ6œ àw$Š…«*ª„¿N茸ºbG™²]´ÚX®"¶@|. Ãlø€F]¬eS…q±°ÎdúO5ØüÆa=Ÿë†hsïº.×·ÅÔyŒŸ·avF¤/j= Áï9,&÷†ÝÇ$O6lŽÂ¼<|bW ®²©Íƒ•­¡ÈñQ°Ëm8ʬ°é¶™Â¤ÈÓ‡<…yÇ#B=òº5«]•Ö ¤ý.œfÃù6\v²Ræ]WPØlÁ36,Ú¯ÎD$[ø”]í,¯&!‹À”Lµ`jŽ5ÌoÙt› ;¢°TÀR –MCl/SÑ+¦ °¼:90ÇÛ0"Ã"nWưôŽ€] <Éì‰ÀV;•"°¹ 6^€ØV‘‚VPÿ”`é4i÷pŸ†Üׂ#m8" ],è….î38: Å`_>ŽÂî°§=ViêP‡:Ô¡u¨CêP‡:Ô¡u¨C­DÿØ'Wï²¢ÅIEND®B`‚agave-0.4.7/help/C/figures/analogous.png0000644000175000017500000002237511224443302015006 00000000000000‰PNG  IHDR––<qâbKGDÿÿÿ ½§“tIME×#v # IDATxœíy˜ÕÙ·ïSÕ= ;QAE\¢¨QÜ $qGðS³¨11Ég^}ÕDÔ$_ÔÄMâ–—ˆ"ˆHѼ.`"(öe0 €Adfº»Î÷GuÏTWŸSuª¦g#ó»®sÕÚÝçTÝý<ÏyêTtªSêT§:Õ©NuªSêT§:Õ©NU¢­+О4Ab÷„¾I`A/öKB…]“P‘,¨N@Õ%ð)°³ |Ô¶MdÚº íEÿ‘`— IÀ‘6 OÀ° ³Ýi_ì`‰lQÍ+ÖelØfCUªl¨JÀºRX}ž`S›4´ õÖi’Ja” £m€Á~@Â@ ÛŸ[“°À†,#ØÜJMo3í«`ÙÇKNNÂx ÎKÀðb€Ô\è<Óu ø‹ ó6Ãëû¢ ݧÀ:B2RÀå ¨´aÍI5‚Ät]Ø>!€‘€6<„éG –¶ØÁieí ` À’CŽAô6X“Õ‡5ÜjùçM¡C1oÞ™ðMýëtp™À´²qMe2õ¼-7r í@m–1›K­ VäY¯‚u|!0ѬUnš ä‹ U˜5‹’£j.\»ßZ™X­ümǯ¶&\­Vwä˜y`¦ÊÄZ©÷ úóúã.S¨â( \Añ”·ÕZKdbµ ;Œóäst÷Tûdà;1›¨Ö«9îY°Fæ[ÿ¼Îbh#=ñ–î«b-Ul–“)d^püëü™ä±¼-a©¶©¬VþüHÏÊg(.^.ijd%Šý…> äùSÁ[TKe7lÏ6ï|îÈÆe'ï[˜Y/«–nÈÍ›æ§L Ê³Vj×-ÎÊŸýÝ'XŒ¸öxd}ž\ÎSÉ`…¦¹‘Õ²`É‹§€œÜŒ/ °& š–<¸Ââ­8½D¯šÓ 4 Ø£¥³VŠ}Ò)øöoá÷/pì=cà§@Cª>Á~óžop8 ØxJ Õr®PV^‰»;ÓâÜ ]¢ã äu1®ÊšÂ¤SX¶]å u] °$j T|„²§νž\³.q¡(±áÙKIt/£OBðz·Ivø.1$¯Ì‘MΩòÔ(æó¾$Âz ‰Œd!Ô}M³0ÊMQÆÇ7ÆViôñ’Éz϶-ÃÙ·À»[á/‡±ç½®%pâ ìiË9TÂn`‰æà«%,V7OƒÝ¥8Ö*,ÑôRaµ¢¤!âôMÓ ap7¦tqSD •+oWÁI7@ª–|FR·ã¬ƒàö3–ààHÃækU|°ä5ƒ}XËÀ¾_X<UXìf)…8pÙ`KÈæ¿gÞÃöƒ×¾Cö >u·žÇöG”XÌ’Á{«¸`Éë¯{RËX©DÈö¦ÿÐ9‰Л(j ®«½qüäw‘šò›?Ã?‹ƒÿ =ËÂÛb ˜~ )8¸Ùð(UL°ëþâÁ’¾õ¾upE½fvÐ$¥×Œéêü eRpÃÃðÝGáÇgÀ㸺©†ï?m ~ñ‡=GøÉÉïÏ1¼0m¨ZF1ßì x¦n‰“KÒát³©·$ Öù—E$†VÉ_jj òÿÁŒWàñóá;#ãáÁì58»ê9Ê‘<ã+Š–¼i"X7«ÿ»(æ½Sû°¯w^•ÊÌõãxGÅ©RA¦F“jKš Råß–Qï÷ïðå[aÙ»0œ×Œ[\-ÇôÞú6CUÀÚÈßÿçU‰ûÌ\šÿ?ï?MºÓ¨ÚOgG ù°8KÔG½¤%HÏ‹­t®Í“Ϊ¥aõ¿à¤ÿ ;wÂâ¯Â™†TÜ@§“Æ)±¸|óÁ’S~ö óXJ7æˆt ê‹ôòª\£i¼¥W”wY„ê* |P½ôœz# ,ƒ×¿îÆHÅÒOFcIÁ ÜÛý#©y®Pþdˆé ’f7ÐL£ì_P ß4›Ä1J†ámKy·ù]ž[\@Rè]¡ (϶©ÏÃewøCàϕУTsˆbj¿2ø¬ëŸp²#ùÐ`úÙfZ¬Ä`—Ÿ‚ W¨saÑMØïäÿ^P:(ÌrA!²þ¿DpµAz:¤d@¦àÖ©ðõ_à 'Á3 ¬…®úÞ|$,ºߊò¹øKÞÈGAX…éÁ0 ¤Ûæ•‰Õ ¶Vº@>ìÄ› ì·JþR¢ØV’ûŒ?`7±ZÙ²·®¸û<ô÷ijoíW—$|Ö€õÆïHÈÖ$TÍáü°M§Ë!ÿ?ìÏ å¶y—½ëã¸C?XÞˆ(?ý™!mb¹ª%,r`™UÀZÛêa×~P“ý‘®@O }nÁ0 F8ÍrŸ°êb,“¢ìØ Nåᯓ ¯ùµ”¾2Ü¿„îÀ7€M>vùà  œDaî:lðJF1%zUýÕ½Ó\iðLÝ’Ä¡(Í/ÛÊà©2øS–¾%HÅ9$oJ’{`d¸¨&—A_ßï¸ËÉ«R~UsEÑ´ ïÃW~{k]¨>ß7N-ãëêyÈ'–³¹!ÃPÜ“¨˜`=ü8ßÔC¥L•éu Õ_Y• ¬z)ïI^X ¿è/Æ…I§7%Éž0&7–Á(/\"Ô –ªEËá‚;àÀn0¯¶ú=7°f;õ;pðç°ýã€5ùØ&¥ú˺&EVn>,‰ã LügE 4 ³0 ·Ô‰æ 1Ñ'’“Jág¥0*‘É«J0XÙæ=ý2\õ 3f^ mr— «³§‘ùǦ3Œ Û7z¯P>þ5°KÍrM&E—¯NFXV…ÏýÀžœŒn-¨z –TF'`2i>*ÔU@e÷ùé“0én¸ú8˜[Ù¶P\wv&ÃÙÀaûÆH7X—ëÓQRaWТ¤*oy6؇#fDooq$3¨åpÒÌ.Ê·œªƒ¯Ý·O‡ûÆÂƒç€Ý’]?C? º•’®Û7ZuåÌ‘ —¨{^*wæý1—.ÞÒõÁuÁ{£©‡úï"þõh¤v¶°äû\CÐ@©ßîþ.žKÖÂô á‚ám[W¯Öî€#~ ¸')0U1ݼ<š\ZÁ"XM0YžeÿÈ&Õ¥ä \˜ø äˆ5 £µ±å%äQ¹Ž ¤˜KŠî¹ÿÃ{[áÜ[á“]°ðJ8a`[×Þß O¯‚+pVlò5ÉT  P«û\°l°*›Nnÿ¼wjÌçöÍŸ¾ôæ¸ü^B¬Û±ˆ.‹Ð¾V•ÎBùg’âèóÆ*8ÿGл–~èÑvuÛV³×ÀÌ•ðÚèQãûÓ°>Áùõi^Æ=92w…rÞi _Upó*°T EÍké2ˆAÊnh8 ñb»…Ê+¹s^fñU÷ÒåäA0gbñ¯ù™hw=<»ÖµN/m„ Εƒáœ¾nªÉéb‹L¾/‚ŲÎs§9èIgÁLÜ¢ßbyÝ¢M>PºÁ)–«ÄEˆ¿v¨Ä(FY‚ò«FÀÃçB²¸ƒÅU—†ùU®ezn8¾Ô¦ç÷Ï^FÈ·çAÑÁJŽW[)?dq-—å›÷C–sÞiÁ˜Ðï!žY`Þ¦6•mÁƒ\w×(¸åôÖùÑ”ãZ¤™+aî:¨IÁûÃGÃ% W‚¦S˜ÁZÇ?4ù3W(_<¬÷ƒG+™€eš@ s‰ÊË;³Tµ§}¨·€%”Ôßm\zT9^Ý캹9«aGœÐ *Á¥ƒ`P êS¨*‚ÅKáï[4´X%£ÜiT&Ö˰œ ôºBo)°ZAõfmi7úD‰¶`é_¤ôþ/ÿÞúȵL³VÁÖ=pDøÞ¨CÊi:=iôö¡°Œ¦…ý¶!Xöhwꥤƒª¥á²³G£1Ó#â¾ÝfmiWZž‘\óÀR¦?FÔü/\»ÃiæJ¨Ú v…Ƀà²/À1Ýh:ìi‚!ò¯§q~4`ºÂ¥[@w…qÜ£ 4ÓžbÈ,DÜ6Ú¨íT ›ùƒ»1vÍ·I–ÇÈ´y7ÌZ 3VÀ²¡_L•ᔞ4=ÀMw:¢•­b)Ÿ mSh­å?‡‚¬¶TÅL™,/`9‹%o mC;W:Ã7·~FÕ¯—¼ù4³Ïl¯…Ù«]Ë´x t/‹ÀݧÀÙ½³iq7S H9°¦ŽÁG—sãŠ:%à‹i˜ü·¿~áK.;˜§³‹ÅLµ¬ºìÓ×Äõg‡¶¡cè'ÝK¹ió $ty¬ÝõnOnæJxy$œÛ. ãú¸/9TÊ@Ug`E ,«uË[5°j/4HH€©UP’„¥)8É_WÃk{®V…Á¥Zä¸u®Ñ.ëWáõï0úemŠïýæ *nõ¤êÒnŽiF6×”q`l?øÃ±pA¿l®Éˆt®O×ö,«wjàíZwúnƒ»kwǧJø608 D ”ü¸õK: ÀJdo³öƒãkÅ¢÷ynqô·ðúwíJ;<ö›7¸þ¿N&ùÊ{0sÌ] Õ)8}øÕQ0¡?ôNÐtH¼A¸•Ú´×…èí,HËjáƒì(öþÂç" ÇâÎ"õC`ŽR°Ð÷2Z£ \á»ÿ'û ‚Ë;4Óྠܸð†Ðúw, Çs×ñÁl¿î ú\:—¢?ŠC—v`]-¼] ïÔº0-«…O÷¤p¬tá ˆXÙ@vØý)ÀëÞmË:¸)•@È4®‹ŒXzvxÝ;œÖávå73ß=“>8,ÆÁuªª6Ë«³¨Þ©v㡽Òv„€ÎÇhÐ]ª~>š¤tþEKJ¶ôË.>Õ­‹ê*C]d5Tü3¤ÝUW5Îý›÷èA ºæš¾£ÞçXVí‚TUïŽN”p-.DG%E€H¥ ¤¶)F”†X¬í} aãbÁ¼óa°úÎ"ÄŠzD{”x‹ÁBÕ–½›ƒhs¶Õ}²ñÐx ǵ”Û(| zXbPþ@A°üëL]¦9È‚ÑaF/Ä‘ ÍÀ8€«ß…!YWv M1Ñ ²BQÕÏe¨—}XVï¦ÿ€ “ùæX4mY\ïŽ- É q!Ú¯@¤Òþ`% Ÿÿöè0°*ÔGK‹ZnfÑØ§ÁJÁÒ/ÂÁg5÷¡-­ ^€ ûG+©¸5Rõ÷ Í¿\ ç|¨¨Ä¾¤š®¶·k•»“.þõ!`%|/¯²ÉºmÍQž]P‘}AŸu”f‡XôBÀ²cÞÌmD5·®lO´út8ÕÔµ~/–º÷A)y ³X-TNíë &'ÅžXOwhiƒ•¢ðI¤:u,u-ÏæUÚ»>ì¦G<5*¬ ÕÚ‡ûÕš!T°oƒÕ½"|Ÿv¡lf±àO VZa±ÚC§P0x_Uå}DCí=B€:wRpGt¸ÅR©­ÓX’Ãð]ôÜ—”„‘/ý Ùi×'H; ì𯋱>iŸ‰wõà²}E¼ ËÞÅÇ"G&Œ4/ñjuí' ûׇŒnàƒ¼G™š€ã_Ï"å—‚K…Œ¬wW¾’òþq õÇ.£–G©esö„ôAdÇQ5w­Ÿ£øØj¸Ó¿>¸Ï'¥ÍGÔ#³þ¾ØÉ¿¬ƒÉ»ìŽž©&I/¾ öõIÉÉ»@vÍ5|)Þ¡†w¨eY¶TÑà›Ap40" Û±d‡Í´`ûAÃ6¸ ¸×»>Øb ‘a³ü$ïºhnÎdÄrµœ€ûö}M“è'ÝèÚ4$[²?%Œ¡œ1žƒSK†å°Õñ5L¥ž½Hw ‚ÈÆ‘¢#p›ÍU°ÝKXpgtx–j£üpzì Ûªè#”ïgœØ·‡&S±ý:÷¹”~ ¦£1ÉÙù4ëØËÛÔðuYëVǧ¸Ï¼šÛZjhr8XUòÜ¡@ÅssÍ*w?Å6z2ˆQÂèöD÷õ§âúM|/ù ï1“UÌe-Õ¤8ÞTÒŸ ô£wÞ}—Á€ùø&êYF-oSÛhártÿlÜ6Ùt3ú¸íy²ƒÆ /‘o¦X+oî-HÑ\^ÀM:@†ñ\.懶¡c¨gkóΪ¸•¦û¿êHó˜ÁJžcÆÒ‡Jús}©@ >pz¸üe;)–eAs«ã]ÜÛ¿®4{û%@öö¯OSÐÓߘp°VÊì «„ƒ¤Z§)ÈBù¡ÒÝVè°€¯‹}ç†UJoÚÌ ‰¨ïXÝM=sYÇLVò2›H"8—~\FÆÑ'û© f€¤š +;{y‹VQOÒè†Õp°VÈ¡8ü«ÙÖÉÄJEªéNûSùžèèAüàVÕ]Œ*¿³{ì·SËlV3“•,f ÝIrý©dgÓ ;ð€Ç)Âa u\Á欠®™·Ø¼)· ³æ[(•ÛÓ»¿üGd9,äFѱ ‚=0ÝÆ®áÛÉò#J6³›Y¬f+XÆÇô£Œ‰ àRp =Ål«àÍЇ‚˜µTNCrEQ ²T‘6¤™ÌÑfÏpo¦®0íe®d5ûËÖ²ƒY¬b&+©b'Ò…Jr8†n°'K¯ «‡X‹ä•ÀãZW¨«_\+ *Hó‡s·èhÏÈ:ÆF,½žKï§øO^{‹˜ÉJf±Š­ìáºs©¤?‡Ðó“—wÒ¯,.Òó±ÉÈð¾±ej]¨rMžÅƒ¢c>*’Û(iÁÁ ’WÙÌÓ¬b«ÙA'ГJr)„÷Y‘a–,s `Qè£"͇ñ½,×"Þ,·gTTz° ÅuL·©mÕøpÛŸ2š[<)†–T ‡—ØÈLV2—uÔâ zs¹„ôrŸ9¦)Î:Á‚ÃM~Ǭå=8ü ê8ñTPïOWðk Èp3Åãvµ½n°¿¼ŠâaÎ%ÙŠ—‘ëH3Ÿ*ffsd’/Ñ—Jr>}©h„¬ñÄÞ+x¡ˆOMx^ž†Ã«F0Åqa`½Ò6ÿU:»©ç,žâniÉ #æ°`ñUüªËÉ bÑå±ZR»©çYÖò4«x‰”`qý©d çЇR÷¸§ þfôœws°ž‘6eüÉþÆñTKäý@é^ÏÖÀvRŒå•ö —dñhxR}Þ`çs'½)á9&qm÷ΓmÔ0›5Ìd%¯±…”0ž~{Ÿá£óëI¿Œ{&íV‰?Êë‹SEJ—ú=˜ŸQϼ%Fjc+I²l¤æBC÷Ü«¿Þc+çr;Ÿð)¡’hû·4½Ïnžf3Xá¬`›e#j2È©Àͼ¤)XsäH–Íýé\ 2ï‹VÃÝ ÿåªõÔó]Ö‰öõZ9Þ½€†RÿkVwó)sKXÏt.äÚÏ{åÖ²ƒ#ø-¸g'°-R¼D,%ͺP bZToßU-ëÞBöêÛ¥¤y„ÏÉgè)Ûð}Zê!ùø(y’¥ª—xö`?žç§Lät.a6÷·ÞË`C5”žt§4 ܶoô.ˆÃtm0í…, pa¯wÖY&ÝúÂ2ÁZºÊI‘Û[$IÒ“$Õk!1!ì ±IʘÊq“ø>/ðž'Ó˜¤l;Íc={¨·'ÂöñNh¦’¦¾ÙP©Þ”‡Ã£ß×ý®¤y ä‚rdÁÕø–ÒnäI{‘ À~  _I¬-ñ­Lb7òosOSMCkU[©‡øgÆÆ~ňQ¿¢ƒõÄGdøƒ6 Õ5ú­•‰k4Nñ; eÁë=‘ #ÇLF>áJþ 9îCä‚4¼ž†Qi@ÿ.lý{­+ÍKü„×ù3™Æ‡´Íc+Ö°…¼g§ÉüÆdÿx¯°~L!E’„2P×íºÔBÜÞ`+ôÆ_ @=ˆ”ûBG_ÙVO•ÀŸ€¥oûä"äÈR¸¨ &—A_Åo!H¹•i¬˜.HÌÿ§m`3_ávöRÇ_™Äç鳚ñt5óä,ßÜ@f(î Tüw£?(§ádG<4§U‹ гü`5@ÒqG>úOvYÓ´º •².PUkËa°«_öù¥Ðµ zV@ß$^ÃÊaDœVe¾ïô– ‰“_)%XªÆ¥ÙÁN.ä.–³‰9L`lnÄy ëcj8€_eÈÜXñ/©ÿíŽOøâ”q8N Ž?'¥ºTcj­â¤6|çEÍ$ÈY’Â0ZbÛäGH¶g]nÞòLUÅnü?Kß4\ \ÌÉÔÓÀMÌ¥Ž4_dh3,D°>¡ŽJædêÉÜ ¼b^Ïæ¨žÛ±˜„Cy³c+?dªÎ€¬ à<ßeËB‚¾¢’ê’iØ…„tãoìÆZ8Ùš ñJ €Ÿr3€oò;6²‹'¹²xžÙÏYDgð»(ŸkÞ¥ôÛĤy0´7d}tŸÕAT4ÖÎ “©UñB¥{àŽ*“²ÐÎym_PiÚçk|™ç¸yÑ<Ávý–XzŸÝüš¥™Îí­;Úü1w‘ác—%k¯Ë‘©¬˜N?LMî(ØJEµX:ë%¨A²)tº~èšöù"dz˜{ø:NæXWøà—غŽ@~<õ³ÍkЍ&Í÷¡ÒÍ›ÄW*ÀŠp -” ²(€™¥ƒÉ», j¥+ºˆÎÉ–ðKzÑ‹Sù/£Ã±™§Xa5à|7R¤âŒ*û™x‡Œ¡ ÅÔb鬖7¶B탠òÃ$ÕÈ¡°L‹Ú%ú!RÁ¤¶X¹uýéÃB~Æ|ž±<ÉtV„Ô^¯4×2?ec¿ü1Îwo¸¢Ãõd¨ ta®1È]êÀÓKªã© `]U+ÌMu=L2,î“L¬•ÞbåJW*˜Ã-|‹q\Á\îäï±®0ÞÏÖ³ƒ4™oÅø8PÌǾvÇNNœ²‡ñƽA“tƒiñY¶ ð×QÅ$TöŸFUØ­³ˆB±ì-vãkû¢§ü²|™ãèMWþ›¹ld_áÐìo„k;¸„Ù™4ÎÀ³ñëQL= %ÃŒÈ0DÝRôù#ó¸ Ì‚wï|X¼•Ѭw¯˜ÄZ:‹V¸þzÎc.·ð'Öó%¦³‹½š–4)ƒärþ”ÈÕÀÏC? âܯç›dX_4Kd šçÌéNA˜51é ú¥*.u¬åwØÑ@R•s9‰¿ó3ªØÍ)LeŸ¶å§üƒwø·lÀ™DŒ€Ý«âƒ5Uì!M%j‹ –¡ÛŒ¤ÅXqz…&Cÿu°™cÚ“tËq c ¿ I9'ñ?,ååi{…÷¸ƒ¿KùC`µr§j™{ËHs%²è–KåO²ë… w{ap5×bŪÉÊyy•#W>G?s/#8˜QLckòÚ°&0;eÁ__6=PÅ ÞýZyÇŽ˜b‘áLm*:È é¶|&(Ř«‚tU‡_e7t½Î0¸ÕV3÷¼+¿t}X ïþEJIpg°•ÜÂ|ºäT>—½ó©ô&vmO!Ç`x‘9L-û²œYLá"&ÃäÈ`iâ'¥åʸéÿ K-„î&2 àƒR–gê®XØÙ¥\+¼ßj{¦ÞèÔÔ’‚G¸žRJÞù!óGü‹Ô“a)[3ä9À.Ãf‡ª¥.Š7i‚,a/Ï“at,¨L.FûÒ IÅT?¥L›“IDAT¸©”„̇m÷ÏëÇ…ªëèmCðÅSÓê`;  æÁÄó€ÙÙ³t 1¡:µLŒåÕlÑ@š ɰTÝNM Ú×·lšR0½tãý·…%Hsó¦—zLS…±•j9¬«R°ïR &6spJû]Š U®ö-¯çÅgXŒ'ÃúH1–*Éê[N4¨ü®Ð».§8—tüëü0E¹- Z¤,,°ÏûÜz(/÷™§º¯c8"4ªZ,€çÅvRœN†·´ è,V@v1è«(еŠ"«eb½¼ÍÖ[!l:ke½öé‚3òžlÜ’j=°^ÛqE†—•–H—RPðN~z!JZÁ®8y,¨LÓMéUwÄSP:Ø~ÕšPAkƒ°XìaãÌŠg)¶…A®8*6TM±–‘EÒl·fA×q‚ÓZýž±Ö `µhàM.#Ã%Q¬– 1 ÖM¯úvÍÐ$ v1ºµ²%Xw±— Žl“»\Û,„d¥¸É¥8Ôÿ…=AU<¥ Ö£@e¼ç¦&pé‚ù°¸ËÜ6[€]âRÁQ· DX’«ÅÔ†`eµFÌNÅaC KŒ•Κ™æú%S“kˆf±U\Z¸Ä©‚á¹üT›©íÁ¨Ë©æ8ž ;ê¹€=ÌBéŠnSS™@¦s}aÀ5}6ôïó”'º ÃlÄÍÑnb):X9‰­õˆ«m8JÀ4 ÒÍ…«5ÔL¨ÒLŽêЏº bk+U»Ùê@`¹ÚƒXÿ⪠³á!õºXË4¦ŠbÅ¢Z&ÓÏøÜ`=ðÃz#®êŽX_Œcךj­?n‹ésÈ|Õ†Ë0Ü;Ì8h¨±þQ¦äˆ¶IlX—„é øÃˆ[àpµš:$­®},¿NC€Q%0Ú‚Ñ l Xвé6¶&a€,ƒØÜJMo3ýG€å×xäiÃð K¸©Œa è›;&<™lK@•- XW «ÏClj“†¶¡þ#ÁÒiÒîé> y€½lØ/ tMBE° :5T—À§IØ™„z¶}Ñ¥uªSêT§:Õ©NuªSêT§:Õ©NµýøèaI IEND®B`‚agave-0.4.7/help/C/figures/triads.png0000644000175000017500000002164411224443302014302 00000000000000‰PNG  IHDR––<qâbKGDÿÿÿ ½§“tIME×#v # IDATxœí{˜Õ™ÿ?§ªº‡á* 7EF£ ®èª‰`ðquÁÈÅ(5nãbŒ‰‰«üÝhò¬!æg¼$^6‚ Š·D}H7j"ñ6Þq@1 ?›Ã 3ÝUç÷GuOWWŸª:UÝ=žù>ÏyêÒÕÝuNú}ßóÖ©SЭnu«[ÝêV·ºÕ­nu«[ÝêV·ºUQ‰Ž>*h"pp[Ü7Ζ˜ýap †0À„~)¨3 W êR€ì5 1 »€=aKØzŽÀ®teºªö°. Í…´2:·o°Yuð4É( 7a¼c-kºËÁ&˜`V®¨Öûl¶šÐ‚,X[ïLl¨bÝ;¥º2X&p&—a3•¾ØÆ,ãkŽÍ>¾GÎj$9¸&›0Å„)ŒðRÔkaððq V™°Ê€ÕSÛ¡}:T]¬žÀ7Is5_&k|Ë8H¹سqŒ¿ðαŸò´Ó-_ ʅγ\kÁ&<¹þ¶?ºÐ®VðïXüAoã" ãû1®ô@gØsaâfèq`2 t÷El7ai 8\°¦rÍÕ±ê `Õó±øORô1`š €!!ïø²ƒaä"2¯2@E½VÀò–ì4Ü{°àÿ•Õj¬ÎÖÙ¤ù0Ôø¦y 0HïöYЫ¾¸²|˜â§ ™Ÿg‹÷Xðó!]4ð7:ú4‹¿+Œ ³Öaš·¢ €˜ ÏAfHŠ ¨÷UJÂWTûnã«¶ ¨ðm a»ä¾=…ÃïÜêl`¥€k1xKŒãxk5˜bˆƒã1Ýfçã¥ÁU@ HXÑ}A)lX.tàíÏ%w7IFÄo‰ŽQgëK¤©'ÅBóRV=)qJŸÖŒSaÇ p¥ÚвTªu£tÝ2à[&4d$?“’ºv:ýÄê ` àrL^G1Öz Ó¸7Ø(÷ƒgž?AvO2ë§qK¸PkÀÕ8¬•-ÌŽÛí©Ž«?Oa°Èø1)ë¯XªôARgÌÂÎ?ćI0¯»óïK—ߪà2Ü“Žä!¹—•r7‡j6G»ª#Á:Š4oПS­çæ TÄJi_èA˜JA@y×uá ²X~  pýz¡LEò¦ÜÁ<­öhGuXgõâH†¥Þ %N®Þ‰°û°÷êCǪ€ò®ëôìSx?XàЛ;å'< ·vžØ«£ÀZ Æc0´º_d̹v>£âQ¬ã[÷C&|Kÿ¾ ¸tà ;F•·Ì¥…×䇥Ñ,UWGõð5çpn­ò7 ã„‚; ë!%?hºV*<lÖÊ_^”ë:>°ïÈë æô]mÿä3Õý"1výì–p¸â@¦ST*€‚,—ÒZÙ„ÁÕ ‡eò®—²$l7uXiäÄy`ä¾Þ—ì¹¹¶z_&f€ó9ìZ/€×éæ—º€©z‚± Ò+Éò&ÊwHk6SEÕ`õF÷_Gp÷_ƒ=MÀÎê|¡ Ʊ°sEòÞaàg¿7è,ÊšY)¿µ²Šûú×iâ)ù½5«S1µ7Xƒ'®vsâ`BÏ<|rŸIv– Z#“ÄL÷òމv‡‰>? ¨Ò:î° ª ·g‡¼æ}]r*&«å_â\i-_í Ö ä)σqLáZ~®ùFô€GF"_{Au¾\Ì{'ì^cUòZa9pµì~k¥cµŠ_;x¾=áj/°ú §> Ƹ" ¼€W¿s;8wTþÄ¡`¥Ÿ,ýùE“ .ï_.ÐéX­RÀÆ‘áIù}V1–Ú¬4òŒGÁ˜Th2oó™…rÞ¸fö«*"bì| »ø7𥠙ÿ¾’ä&á@å[¢í˜(ˆT¯©¬Vñú$ʇªÐW,<ë0§T—§Ü0Îèíö×WødfAv+ì~^ßjé\Ò‰“ŸÒªÈZ©][¼8«x} 5ÜSíTDuÁ’3‚9·¸é¬U¾„!iì³ì®Üéˆ/ºÎXdž¥Êéjìq€ ²VaÇKæò( ã· ¾ª–È,ÍjÆVuÀ’Më~0E©…Ò°Z˜pp ¬Ó[¤¶mÕ>ÏrL-,?ç °RÞ)3 ¥ß ޱ Übå—A1VXj!_öôBù‰ÿ¸øí4ù3ΉьªXu`ý·@*«¥ºÉ<äfô)}aÑ0œŸ‚³,ùI‹“AŸ=Rl±Tp~¥Péé¡ÖÊ M8þãüàEœÃË…å/,¹ð:0‡ëÇRAëºîÓ‚ï—À¾ä+ ÏÛñµÂ ­aî0N¯0 (ï¶ÐíáéZ¬0‹¤•[†×%lÕ6•–üép0/O¨ëL±¡:.÷þ_Ç÷"{¶@&œ—ŘûÞ‚¦†ø£t ‹¯J,N5ÒµXaŸ¥UÞj].ÿƒá1›³HeZ,ëúâ€= • r*è|Ûé,=,ìšãŸ½ø ˆ`û#¥ùÈ8Á{Tò3Ъ~ä0P‚ÜŸê•eSAª~o-×ÇlÎ"%Kþr˜êê:3OÅ|ÏÀxl4r­À¾„ø=ňéÑîP¥(7¨‚ª­Fþ€]Çj…¦ gØ{J-Ú…ò‡Ég¹)çÞãkÀ´ ÍêPÜÌþëù×¼ÛÞýAÅ2/ ‡×ÁâƒqÎúq1¯+3¡é^hþR‡Ð(áêhÞ°µvöƒ½¹·ôúK,à0Æ0AÀI†;Ãr¨¥ tº%NŒ5êÔÿo*Þ¶pø1pQ¼u•lL޼mÐŽUš»4BM'‚ ²û™Âò[àê-˜‚1=F]Z ;§×Ü>î¯\ùª “¤I^‘¤>‡I=aF ÌíƒkoI)hõ”Œg™/YÅ2ŽÕQ¥‚IUŠÎ,cůãOþ–Ц~èZ«°Þ^Ô\wº|¾¤Bö¥àª¡ð~Øç ä[1ªRb¢ñ&%… àXAf²à…I‚+³0"g°Úï µ¬UTAût,›Žk-Ã,l~˜¤=’X¬¡È»7€¬Qg€¢þ*k¥ß¡êÎx[ÇÛ¹¿zk+œò>â“}Xk¤Þ €6ØóÁù27|R}&9¾nªÉ–kZ·X^Ëå­jµÊo‡ “ÑýYJÊ£Ä]l‰SïøKÞw1˜5zIϸ–È¿®»[O§áñ1ÈŒIvî¤=àü2CÉ8¿L>Æn x©N0Å‚¹dÙRbqT@e|¯ù ÛŽkÙ‚,Va_ .Ž[ï®Ð8?8m Óû rm*WPXT øò}™âô÷å€AÖ^HÛX†Íàøí¡'!XB‡‘ey Pa€éæ*u Ë‘¹Ëóc×7ÖÑòÁI _*½ºä£\£?² 惂U¤›ó-+¶Ã¬ ˜·‚‘»WQ®{>¹ ››EÀŽXmPÉ0V~E+5JwgEõýͨãU?—zy¼Xª?}ÌtCêüâ³È§ ÅÙè€exjnx¶ƒFŒû/õªR¸ß;càŽýôûʦ‹Ä„ó,8¿LVbsðxu¯œÄHî’kYG†ÇÈÐ'Ô2äA±Uy½À²tý|Ð+ŽÅ2‘+>90è›Ã­Wœ`>*{§²ÿEe´ž†øë˜,Ãf6Y.î‹QçªJþ dXI+ƒBƒ÷ °tR qƒõ`¸¶c2D,ÇÖ©›¾Å’OžP€Êk±òÛ*«Ušu *o­ÂƸ-šTÝ œ†x®›‹‡·µëÛÇQ/Wsž£•¾¡P©zƒIòVA?IÔ8m‡d8xA§n1\a>íèJU\·˜w§6Å®5Ÿ»öZ« Á)mPµ‚˜øc½çÄ›€óôëÙ¾“©—O1ƒVž&CZË z«d\—d:š`Å覦_XNÒŒ[Ò¥fâÑUúuêg°Š Š2òaE·dã$Y‹#iÚuÒ:Jþé`0þ>¸¤’1WT¼¥Šµ2Ëwž«[ñÎ(ù[–’åë‘A{9q•~L¥.‚‘âÏÑÏ[Ôt…éɹª‡¯ ƒL°¼ ôºBo)‰Ç¶@ë|½ºtbÙ̧…/“e¨6XºP麿h¸&‘wyjºBÿ¤a×Ã2êq’i‚]`gYô¸ qWgyè‰ù즕«h¶â¿u['©•¡Wu¼ 0OѪ‹VåšM GD»Â$îQõ—RE¢.q5âZ­ÊvÉ…¬"ÃäX–Ê»ž´ç§W>k8(ªÑ®P¾<Ú½ Oæw$,q\£©h1?`ÙÜqòÚÈ:t55s-6/–„”ª¦¨„ëÓ,ÞmfÄ‘µ\õf3Ã-øjþüØ_…h‹%ëÿx²ø[Hvf‘€©¶ýË"‹µ ñÝS#ëÐ%/çYl¦Z+Xa–*&P6¼¹ê›Üòê^x{´J°@އÌÛîñ58ÞþÁ»9ÞS]Oñoë%FY° ¸Œj?~ ã´[q`é@äúàÚ–ú½ðú^x­É]®ouí#à(àD —€#@¤!ý àÔ×5À²r·]ûÁñ®'µbq{ŽE>`+RåGt Öñ ÃÙŠÍàH÷ÃímØçBôZ¤ú&Øœu¿rˆpÁ™!a"îúÜÃ;È@?Ü‘oÛ¼¯i€•:Ì=;‡Ë»4Ýྤ,ALÎFŸ×”xެœÅl®ÐΤ{–YÖ6Ákðz“ S}ìrÜøg´€‰Ò}>ðàh`¨,=0yLÕâƒe|¡Ÿ"b™ÔE&,»<úÜ»¸šYŽÃQ@5ÙðFcÎí…×ÝxhŸt6_0AÂY¸MúÄ„H¥€)á` h’©p°¤4aÓ¹ ¢—AûâºÊHÙu/GÔ»ëë^¦/{±é•¯úöœ×÷B}£ RC‹ë!ë 'a>.DGé @¤R™­.XEаXÛe–ã]cÁ¼ëQ°…úÎ ˆcßøÐU$^eÄÝchØ´‰yˆ6æj=(M“p ÑñPµ4ØJéCÐ#À¹9òÒË¿O×eú·Ã,ÞÑ ûLø£ g\²Få\Ù<\€&ëd…âê@—¡þý`þ*ptÖ˱håýðóîÚ2`Œ ¬Æ…¨_'H¥`Xp ¿V:‡ê¯i¥@Ë/£,û5XXóUøÂ)Åî¢Sj`ÂÀ˜`¥³éªþ>a ù·+aᜄóËt}¸®0¼£S«Ö]ôôïËòMÀf“ƒ^+Ä ðÌÆÙ´§«T07ž·¤Ï–™pþoÝ  .¨ù}=>w>]N{›Û¿ƒ—H}Û(¥HQ«J§Ó­ý]áädø<ÑìÕ6XzŸÅ:§®¥^µ…ëhZ{³0ÅS›ÂÁ²iôߨö ± Žý¬>eÏ.ÛNÊeKþá`e«3t ÃèÀ;™ÛA£í=Bh›¡³ä‘ÑK¥ŽNcIÆá»è¹?)“þ æsä¤|>aÚذݿ?*Æú¬s&Þ“ÏÙäÀz`lîÖ(F!˜ˆl™0ʛҸ‚ÚN>õïÝÀf²EÛ¥ëQñP2‹T\J.Vç{E6œ™[u7#ÙDËÄzš¸‹&6æ~AˆÜ8ªpchÿŧîˆü’{Âû|Ršl¡™ó÷•¶Hþí ˜¼Ûîè™FR àX±¿pHINØ ²W¾âÛÉð:{y&ês¥VwØ ‚# 9Ø&’6SÅ<Z·ÂµÀϽûÃ-–6å§À°Ø y÷Åss:#–ëh⟀¿FW½ëJ2埀^…ñÈ’¤™J-S=Ó„Ím°5ówör-ìCºýL@¶€›Ø,W­À6w,aÉÑÑÐ,¬¸PÅ¡<›ý,è5Ûõ4áCH{"94'Яm_‡µìã5öò:ÍÔÓÄã4³ Çšœ‹Ûò1ÛÑÀИg÷±ûmXÑéÏy'îP Ê¹¹ò€ÊßT°•þ g²Ø_ǽ[’Y›Á¬?}LPƒÊZ¨§‰×hj³pù@zH.n›€,ÜLApÜö4¹Ac0˜ØcÞmÖ•)žË ¹I‡ÁlætÜ&÷;I.8½ªÊܦ3 ‹QôälϾmd¨ÏöM¬ ™[hÅú 8 Ú\iîö/ÒÀ;@ ve|Pž+\ë©my./, ƒ*è¶B‡ï±Ÿ‚µß žhTX\A^(ƒ0™J SÛ2f’FlÞlë ìãEör'-´"ý7¬*ÇÆE»Â7åh>(Û:éX©8Pn??‘b¿Šµ$Wþ3d^ Ÿ·( .=ר_ ƒÃ»4sð&ÍeÞbðŠÜ„Ì ˜¯PañTØÔ î¾Õ\%ö¯IA¸zØ“K+ÛÁ“7¸€},x%rR½|šÍ*åÔ6:Eg.sÿTª×6CpélƒøðÆ—€ùˆÇAì¾q?XO£˜Ä¢½%©Ÿ éÿ…ô õìÐa3IÇéõ…Y®0KUbµ–êBqÇ…I*(þIšçÒu›*Ø6/†×Õ  ˜Žû¸úÛâÏÀ°SÁln¢ƒFýJÖσôÓê ŒŽËS”4OõÜIñ@œ:Æ¿¹k‰§wÕó‹ê& ؽàúç-ÏÛWÁ;ÿòß@Ü®¨@°äe¡¹²wwÐ>óAô•|z7´Ì~¯ªrªFr…QîP' Q´\+X¢ÕÌ+þHVÇcµÂ~ô8–+ÊB¹JÿþÝoû3€ÓAÜPžÀAl´ {ÁË€µøF@VZ’ìIã{`ÍÖ³Dª-íWY°¸–JeµÚ–±¬$±X¿—CɰIMbK•ÄZš«iÔÿ3dV¡˜§"@[@¸ø}ìöˆÐndÛÃÆ‹¯GE=yIÕVuÉ+aµB-W X£wÅzØxü{è¿!¶p·¼É¥T§]\ίûÛÌo ½mÞÒïLs÷ñ$úP<˜-`?»-‚•ú9µ®ÊÂäB§ÝBýƒÊ¾uñ?…Öö­;¹m%ÿ>dz÷Æ… ’OÎp Y¾…Ä ^7µ “b²X­6¼w45ÇZ_B.¡'“þ1žÖ¼Jâ4R/ 'ÕÀŒ0×ÁYüWÜL–¯!‚’’%gJ² Àl϶£X:¾cüïÏÓUR·$iŒd`]"6p›\‚Ãe»À(¨Ââ¶ ðÁå°ëO㤣‘¼Ä`kÂó= ñ4ä 5Pßjá½ZØ ì<07?A ôêýë`p ëckaB8Ɇº°êdT[ÜV˜¢ËÛ·t|ëQKÆbÁ¯6ÄlT œédlnÂaVd"Ôïâ“Z+?X›nOïñ{Ð{(•ObП¾œŽ PgÀ霎§=po%¯¥øgKå>Å[ݰPѵZ†Xþe^:P©¬–*¿åòZ,YÈþWœÖô*ùýWˆ÷±¹?4RÅšåä¼¼eÛ°ñ7sUAÈ%ôc颇—<˜ÂÏ©ºŠæÿ/Eý_ôŸL[n ÊM=Ðûšy¿`QâLr‹ÐÂO0˜ƒCmÙ±•ÿ—r×h8Ä<àG O¾É»ôçöà'LÜm, ®lÛw̶ÑÁý†xå?#ÕêX­ÐX«ÌŸT]KåÝ‘}­ØL–ÛBÓªÞ±*ǧzj»q=¼7 8ÊUiH.Áâ úpr X^¸ ô§ó:©°°2Ìr[“°‡Œ†åTÛ~«¤Z†} X· nÜ«=}*Ïb8Ü€Ã\†Ç Úãîùeó6x÷_À,!ùL?‚¥ôç\ ¥•Šk±‚¬—*¼Ì³í޲V:)‰¨Å~eÙ ö !_¦¥òçX(Ér¥aëQPeöÁÚiî’§p‡Y%ÕóH6ÑŸ9‘n0*Æ s‡*˜¼Û²h¤hX‰²Daï‹Z÷ãJÁ²çÖ­Ìä$7‰‡pX© UPüäþl ë¿Mkq¡QÞùÊ%¤ù"½˜P•®Ð¡*K£j—¨‚!(¨ ÊUn. D%\+ÿñn3†©|W˜—Ãw±y£-J3è¸Â<\]Ÿ-Ï媾T扶"x˜þ\Yb¥TP…¹Âü2hXš¿ê¦o™ä¢GGåµtò\vÀ¶*UÑæ›Áúnćk«rÓ)ý\¬#ÿl½(·WyË–ßÀ–Ÿ¸‹d¹*¿žA²“œ§å¡.Taî0,ÎR[­j”(÷i,,X¯-ƒUÙyº~%îÂf‰64aeíOÀG—ã¦.¬Ì9Ê%Ôr<=­TTðî] ˜·”LÜ׊ Z"ø÷»µÛPC•s…yµp)Çà0®¤'ÇîyÖŸâ\Ü1y•ÐçÀ“ àfí„h”t¦~¸Té £-wr˨œVкWB±^ò·yÌK5««­ÊÏ,xøœ,çbÓËåyKóÇÐp6îÃÑïAÿgŽÒc@+ý8G¬W¢W¨ æuƒzMë¢yœViã\Á¿UüIÕ™²ò>QO– q±¡jÝ ïÙþÀ *9Ñ¡K¨ã«¤\R˜;ŒR`ºP¬œ  ÿm^-Ä…‚oVåÙÕ› u±x›J\^èeœVx´l¥ü\•_[‘ü¹(wU¹1VTj«R\aЊõüÒºApþÃúíOÕdw qX¬g­$¬¿_§ò7Ò<„ M?¾WE¥üÒ àu®'öç­– 0?‰Ëb˜¹P³Š‰Tùà½HBbÊ‹É0›)¡Öjãu°c)ˆÀ¤*œÉú0 ‹Þ‘±T9é†(Àt¬W!Ï‚ÛôœA~][«`ßÅ•+KÕŸ|¹h%ËÙØ¬QBåÛÖ›po€˜^…“pôùÝ ÎõÁ¨i~]÷Rn*¢Ôb©¶ƒâ±Àc×€8[pN«^»%WõÁxZìÁ`6ï—@µsl¸¸øv•N 0 ÏÛTd5`*%T0é¦" ÇxÝ^`Q}ÑûÞ‡ÓgìÑh°²Õ>`<-¶‘ádl^mk½Æ·`Ý à,Ü{ÕQ~@Ÿ‘Чk­âHÇjéX/ï.Ø Ád­ŒWÁ§ïœÙ4ýí#²=úÄ¿]+¦rúzs²VîªÒ+)Tùb¶í†oé àƒ2ôrÔ^ 8®ê1•_í˜ì~è÷PW‹x™¸·kÅSa@ŸÀˆÕ Œ› õ®Çé%†úù?·WhúÞ¡ìJà˜¸°Ú½¿ uXÆí=ñ ño׊+w@_?ÍÞ Šõ0ùò®'Ék9¹sTƒ¥²ZJKµœo ŽX®×FÕQûÆX8¿•î­åU”g@Ÿ ]À¼Ë’V,£ÜaPQA}p_TÖ8Õ\:IDATQ0¾C¡‚‹™po rJÖl¯Ê蛣Š¥®t r}QÀÞëO’””ÅP{´`ô1O¿*ê°V€}¼ü òˆ ¬®ÂWô…]ÂA±Žo=,ó®ÚXT+꘠ö1_0ì|Áà²ÇªWJ@=´~ v?ƒüª„ëqG÷UH¹}5¹}qc«r‚wﺮõÒNaµþæ‘‚Awižn»©#ÁØÙ³Àù>òÿd'dñ<*¹Ü}~7˜¤7¨sI'¿·wÐû— «µÌs½Oô­ØpâJª£Á·ýnçhxã=äQ6ÜLnN¢„rôõçœØ мâ\ÒQíÓ…*ÈbX±fns¼ ¦Ãô0u°òz2Ç@ë Èk2È#3ð|¢ÊèK1¸¬,»®âÀ•ÊbyÖ³ü6 cMÄ¢ÓÄRAêL`k¦®çXÿò+ Ïsà£QЧÓ¬¶Ê„*ëÀýÀ½—ôD|ÜN§]¶:Xy5@v ÈsaÅ&ä¡ò*òT¨x@ŸNLNJŵLºïñ¹Áà7Œ=qQD{L¼[QuV°òZ­c!ûCX´ 9ÒFþw.4µòúÌ}ì«”táR$N××£‡!¾3±¡Â§Önj/P Õ—u5˜}à±@ÀážC>9†‘,ß3€™}ÂfˆŠš«Ew®ÝÏQ­ç–Û Xš‚G¬©p›u˜:»Åòª¸²AË÷áþMÈ/<5 Ëq½Çƒ€¹ÇfÙNp‹€µqsVIóXª}ëk¸Å“×à ˆË÷'¨ kY,¿ àL°®{2ô¶aÜÌ÷xò` &§aŠS,¡kÁ¶u_3á㬰ʀÕS«×,C],¯.qÈÀÿ†< 9Ê‚ÃMoÁX Æîr°fBxl ¶ZÐ`æŠkkàé]8VJªý,¯¥ÞIK³‘fw6ä¡ 0¡_Êð¶W êR€ì5 1 »R°#[úÃÖsvä—t«[ÝêV·ºÕ­nu«[ÝêV·ºÕ­nu+‰þ?£)L4MUIEND®B`‚agave-0.4.7/help/C/figures/main-window.png0000644000175000017500000011324411224443302015243 00000000000000‰PNG  IHDR.e<[¦°sBIT|dˆtEXtCREATORgnome-panel-screenshot—7w IDATxœìÝwxÕþÇñ÷lÍn )Ð;H³Š¢XAÔ‹½wQ±`AÑk¹z±÷^Áv…ëÏrí Ò¥(JG:!”@ú&»;óûc“MB éÙàçõ_²ž÷¯î^£²/|suê)ùºÊ”·}Eõ@‰ÀŪãhIDDDDDJ³¬ºí,(:‡7-«Ôù|]ÔS²ŒêÔóþÕÝ¹à••–ýÁ5=ªU”\j*è÷awFÕ¶)‡Ãéá®óºðÁG²Ö¯ L""M]]÷¸TTî¾ÏÏ›°¢Zå}4ºg¹m­¬žó&¬à£Ñ=P`RQEÛTÖ®òê®uKúÚ_pz›Ñ¬ýÁ5z½ˆˆT¬Í!ˆsÚíùˆ[òÎÄi·7v“DD¤êzNHE=ûÖS“zÍR=+U«çœ×—óñu½€P€rÎëËKååm»¯Êz\lÕÞƒ}ägo"cã·µ-FDDÊqîá&N˜C÷óG’ñÇ‚:ÿÁ‘†e™fþÙ·‡bßmjRnuë)ú;ûÕ?Âù_×+œ^2h9ûÕ?ªµ?P=.¾Õ‹úoÁæpÕ¨ )+*¦½¶ncˬÙuç‹\ø€/3ûâŽ+žÛ§W+ÎëÓŒ6ñn£`ùÚÝ,I7éC‹=[¹kVNx[§ÇËyÇ´¢_+]Z¸X¾ô/îž¾€ÃkÍ=CZãñíåµi[˜²ÒÀྭ¹cH~œ¿‰gç¤a6†Ù–³‰§™Í ?'‡·¦¬gnz°aŽˆHu ÷¸9ó•e|vchDÖ'7ô)“W‘:íqÙöË— òŠëßI\› {Ö/.µ]îîM¤¯û¥ºÅ‹ˆH¡®SøqÆ<ò£{óÒŠ\.¸. ßÎáü~Ç÷àdw÷?÷&g_5–Îþ]Àým¼ÿÿcìóس"tó®è„$&\׋ÝK1úÎqý›ô=¼{þ ­ä²té6Z¸Ûyÿ¥ÉämÛ Àü5òwÿÂ?ﺑŒU è|ôA\×ÍäþñÏ0âü«¸æ©Ï¹ãÂDܹ¾†?@""MPhµ¬ºû+YnEõÔ¤ÞòÊØ_=ûþþÒïeöÿô—~¯Ñþ@ 3ècÕ„gÿƒ›°Ü˜Ù¡.¡½²cÍõd®¿wLRu‹ ®édÒÏ3puHfÙ»i5ðF¼ië BÿÿÞ}D “>~™ŒÜX¼ÆÓiË6lã©.~›9›`RO<Í2Éß“K‹î^~üa:ÿü2Vb¬6{ ë?¦ =€³7âðöàî¹X=ró9dpK~µ\ÝpF99ó0Ï=ù(+ÖfÕm0Ù??ZsõÆ 󀉈4 VaOB]ýÙ·çcßmjRnu멬}Õݾ¼žœj‹iÕƒ]¿¿Î¦¯Óö¸«1{ `7v³cÅGÄty–öNìH½or'-³,"R±ÍÛÒ+&†i“'•J¿§ËVLÏÄÞ¢ßí òÜèSxz^îŽ#?*–N™µ…ÝùØ /®æ0œnÖ/ØÄÚµó9ôä‹i•Ð gbÇP–3k=V¡øñ31ÕÇ…ãòÈø¼c¸©£Éå÷ÏÁÑy†#ž£½6N~þ%(Ѧ@~¯Ú÷’µa9ͺõÁÀh°ã$"ÒÔÔõ½ÃC«Ì}Nü÷©§&õ–|MUë)éë[/“öå͇rÚóK*|MEõ@ –CŽkÛÓpa¦ÇæY¢Á愼ÌÅ´úÇw´iÑß¿AóžZeLD¤¦œÄ/?Ï}þN;é¹ÿpÿÍÇ’wÿj¢š÷ç­É’ÖÉËuWžD'¯ô=yÌù#•û'/Ä}gÃé :1‘“N;•Ù¿®föæØ\;à܃°(žŸ2õû]Œ¾âBgÝŦgáûci; ¦­‰-®þë8ôܱe/JÙcˆêžGÀÄé¬õJû""¬úZdesZj;Ç¥ºåNÛ7üø”ç—JûúÖÃÃiÕ©»J=.fÐÏòÿ7>™f :¹ùÁ¹ÄeÎ ˜f¦ÑêàX¶}‡ÍÑšíËŸcÏŠt?ýlvg¥ ‘b†ÍÉõ­M.žñ3®Þÿ ÊúÿyåÛ‰»û"úgÞÍ ß¡8Eyñœ›ý 'Ÿñ©ù&6O ®V}ˆîÒ áÅVøû¨ávžã7|éޤNØÌ¼RuýìMKeA^KÆ\ãæç#b™ðôûtä;°»œìŒiE|ì±;6+Ùb†E†¥‹ˆT¦®ïãRqOHå÷u©Š’¯©j=ßÝÞ/üøäg•z\”7elßRyû«ª8ÇÅfwÒãÌ»ÉIû‹íSŸ °åOò³ƒØãs1s |é&­9Hi’ž³Œ„CÇCp#]GÜ­ ED¤šš·ï€¹e5;Ò <^;¶–ãnw8ùö<¶,ÆžîÿkãÏ;„䤞Ü>öFÇigŒ¤CËpzp&&†Ë<2ÎCpÙ^\‰Ithל[/>pÛ ªÔÈ.‹ 32i;ô.†eÏáÇ_Öáé 1í0 ø<Ýɤ;ºÒÜÓw»Ã‰ëy,cÆœÏQ]ûâjÓ»S÷™©Œe™uúW¤ìÜ“ÒÛÔ¤ÜêÖcYf© eøÓ¿”Éþtñâ]ßÝÞ¯ÊûÕ˜ãbŠ¡÷¥Ï°aÚö¬þs·ÉÇnœ ­ 6~ç§ã0;î?›±mÁÉ´èq%†Ý¡+o""Õ0òȶœxtî]¹øÌÓùru.»˲Ú7…<Ë ëã¸Ðÿ+Ÿí4÷Á:FäM'ÛÑœ¶í;2pÀ!Ò.†Y3WòЂìp¹/²ñÞ„Ëq:]¬Ý”ÎL!îÖ³xzìüoöþ4M #ÁlùsÛ¶dòøwÈ7"*P€-уeYÌüt-ýOìÏ{'“‘c±;=›w¾žÃÜ?âêuNh˜˜¦¸ˆˆT¨dÅÔ;¬Q'=¹0ü8’z\JîOÉ6îë¤'†·ý~ÜUÚ¨æÃî Ó°Iéûvý9…¼ô˜V{—çâéŸÈºÿk#v(‰=ÛW§X)ôåÂ-|ôáû䯛KÀÕ†¨ýq¶ åM]´¯?ù¹+gÄK«¡`Ûiã?«wáÛýs°~šµîÅÔ.æÎÉßÛ­ËþÅyÿù„Üm[0ììIñ$gÉÇÍÚáï…Óê-1ƒù\üÜìÙàÇݱ-–‘ŒÍŠF r3yäÝÉZñ36OFt+¢ÚÀÈÚŒ•Ð1‰ˆHYu1Ç¥&sOj$ÕtŽË'~ÞoÙCžø™iÿPåz “ó¼ÍÛÓþøëÊf4¯Ii""R’«åÁؽ-°ùàpÌÍÆî å¥ôÆæIÂòûxöò\ÿôJì)ýð&fƒ?A?–3‘üœuä¯ýOËëqĆ^ëîtŽæ»0~À†a"¦ï¹XùYµ3¾%¶Â ÃˆêD\¿Ó1}>쉥—¶·%LôÁÉX¹Y¡»Û6;¶fm1l ZDD*Sòîðƒ›_%†þß-ïŽö‘^OùÛ—_”*fjý}‘H`¸cp´èZ*-üt‰¼µ1xà¸|ÞYo²9? ƒ˜øXFÖ• ï}‰áh™¹+ºGák°»¨pФä.{|Ûð¶¥#œØãÚBܾ˜¥~ÀDD¤¬º^Ṵ‚árKþ_} Õ¥— ""Òt¼ôÆÎêáæßWFB”_€­©{ø¿¦0ö÷Dõ 6»þ‰ u½ª˜­èDß´Jý Õ`tèÖÛºô…™ÌZø[V*""õÏÊ\‹oý¯dîìàô`i‡»UWìF#®-†C+}‰ˆDß²/qtR–Y°j*‡]ÇöÔml=fæv6õ¨z\DDš´èöDu‹ÇåË‚`0À°a8œàM›þ‰NºŽS_¯ó2S·n> ë)¢ÀED¤©sÅa¸ÊL8Êv³‹ˆHãIݲ'•³ÀU-Ë<Ðë)R¼ªXnzV*"""""¥¥®n˜sî­cÐÀVnbï«PDDDDD¤:¼é†z\~ýê-Òwl gèn÷"""""ÒXJÞÌ8mëF‡­Û#"""""R%ŽrSÕã""""""¥DK‘r…-"""""ÒXʆ-êq‘&@=."""""ñÊïqQè""""""¤Þ†Š3ð2>ž7 €ä6Ù±õ¯Z—YömKÉvˆ¤ý‹¤Ï‘ˆˆˆˆ4¬KiÓ¹LZZ‰“JÓ2K•SŸ}8ûk˾J¶eßv^Î^ûxZƒ·©¾Ô×þÕDJ›Î僊ÒË£¾@‘¿§Zõ¸¤mYWáë>™7¹t9%ìYË÷3W‘rð ŽìWõÖÖ°-–™Ç²¥+ˆnß{¿íütþz^«£Å *kSC©ÊþÕÇûQ¡ŠŽAU?Z8BDDDäo©^n@™Ò¶ )m»”›çÛ9ƒaƒoâ«©_qå°cyaéîúhBX03ל|Ÿÿ¼œ/ž¾®Òv=®¬ýuåÞ£¥e»ntï2ÏNK §_rpo¾Û“@þžépð5á¼`þfþyÙeÜpëíœwÁ8þÈ ”j{ÖÆo~äatø@•÷¯²÷ã÷Érä!ÓºÓÁwÎ õpʪêç#¥mî¾ã_Œ¹þ†ŸËsån'""""†ò‡ŠUñªvEÛmß¼––íº–Ê/züùèû¸ùËï8³m4Ûfü“nx—›çŽ­n»«Ü–¹÷\Eîè7¸ï¬`ÇÿíÞvßv=ß¾ym¥eÖ¶MÏ_ÊÃÀêïîaØ­÷3ö÷‰ÜpbKûf3Ã/'Òzð¸p9ÓÆ^Æ® 'ñæÉmI[p§\ÿ‹Þ.sÊ4'Îú™Ü]A,˪ÒþUö~\rÿynÚÏ î_'Ç£²2ªúù(ùú;}€‡õ_ÞÀÙWOañ{ÿ¨uûDDDD$2ժǥe»®á¿ªz3õ8Îlzý ;ÉIý°6MØo[žøf ÷œÜ&ôÄpÖI]µmSI݆ÞI~ÆìðóžcŽcÕkßðåëk|c·pÞÓRùçñ­h~øõìXðr©²Ž»dÍÜ.ZµñT¹•½ƒS<|>ý²ƒu7<«ä1)ïØTçó‘à}|Û »¿¼Rgm‘ÈS«—ÔMk*}My=.+·|DËvÅ'£6GL\ɯ¨-¿åøée/·-U}^×mòí^ÄC÷¾Î.WÁ¿c™þp~lÇ›±§b]Æ)¼œjgQÇØpÞª¼Ý6,ËÂælEÀ÷W©rSÆ~߇}ŸWö~<þídþçƒöêËÜõÒŒ:ºEmPú˜iÕ¾[•?å=¶»Úðm¨³÷MDDDD"O÷q©?GĺxyÉo´rÚÈÝ’[¯õuöØY• ·ê»°ÀaÔ_›nqG¿;‹Kz6#{ëùæèÂy6G3nëàæ¶ÿ܃»ãMÄ;Š;ź{l.ÒÉm'à[‹#ªìÊeUQrÿ*{?\ÍúðàëqÝü78jÔhF-ÿ´FõUGM>þ¼58¼Ýë»i""""ÒˆÊ*fYûÿÛßv%ò;G9˜¼|7X÷]ÞƒÛ'ÿ–Eз™QçßVµújØ–;ŽIááO×ea2Ën»Ïóž^ïü¹³^Û´ =ŸXòñgoቛ~æä„¨RùƒoìÎÏOÿJÏ•J¿ý˜d^Z¼ ,‹m3^ eà˜ý×·Ÿý«ÊûÓ¦–oý“镵§äçÀo†Ò×}öm†ÜZûöéOúÓŸþô§?ýé/2þÊQãû¸Te»¢ü×ï>“KÎ>ŽK–ÿÁ¡·Mæ„ûÆpòYyxMƒa?Y'÷æhÕ¡ô÷mW0ì¥7ùþŠ[¸`v/:4s—Ûî’Ï_¹÷LÎ<}O%ʪ_>¨U›*Ú¯ÿ>r)—ž3˜;¢;sß[ï2ôí‹KmÛêÄQÀB®;±e©ô¡/N໫ÿɘÙ¶=–ÿ¾5´J÷Ê©lÿ*{?^¸`/-Ú1­¹ò¡×êä}Ú_+kOÉÏÀ]÷ÜO~F*ësÚñÁÄAºÇ‹ˆˆˆÈÌ4p€5kîÒwl 'æûêwø–HmµîpÛ6®jìfˆˆˆˆH=pGyÃÓ¶n`ô˜q5»eëŽ=*ÌÛ¶aeÍZWC‘Ô–Ú:öe_•í[‘jïã~>§""""rà¨ÑP±­•œ`6ô©d$µ¥¶¤}ÙWeûV¤ºûØÔ‰ˆˆˆˆT]z\DÛÖõ+ô9ù©Õä|‘† ‰xå.Û6¯kèvˆˆˆˆˆˆÐ¥ÇaeÒÊ \Ž8î´zoŒˆˆˆˆˆÈ¾|¹Yäfg”I/7p)yO‘Æfk숈ˆˆˆˆì‰x \DDDDD$â)p‘ˆ§ÀEDDDDD"ž—&jÇŽ¸£¼ÝŒ¿%ûº¥ã)"""UQîrÈùRS·ÓµGoò}¹Ý”¿º8ößOýq¿Û ?ih˯®¤”vûÝfwÚæz©[ÇSDDDªB‹”aš6›±ßíÒöæãuÛ‰õècTGXaÞ‚ùóÁ0À²¬=ŸÏ[Sâ™…ÛéË ®?o°ÏgÂË41ŒýVB÷îU˜·fÍê?ž·<öFø±Í0ˆ‰öPôµz÷é{‰ôã)""iêýŒsñúYüïçWxø¼÷°Ûþ'¸mø‹Í›רM©’­»rùtÞ6~ß°—{}øƒ1QvbÝÜ¡ÇöN¢O‡xö⪽Ù~îzû7¿ê.µà÷ʤ9bcc±6¾ýá{N2àANhwgæàu;h—ä¥ßAmÃyI)mË}Íö­ëq:"ã3›—W&Íëõ6Úñ\»i;Íãc9úÐîœ7â¸p^S8ž"""‘¤^§,™Ì·¼Ïæk0­ ö¿IOVN I~Ÿæ‰IÝœ Y¼ôÕfý±‹£nËÈúíÆf3((ð““çgsZ&¾ßÀöݹœ7¨gÝË‚;ÞþméyèâpÍ™¦‰iš¥Ò l†öíÛ3{Þ<?¼/S§Mcȉ'`³Ù°ÙêoZš??Ÿ‚|n» › ª¾ùy-Ûvg“[`Æ’õäçdð0õ…(È/Àa·7zOÍfÃn·—J3 ƒ¨¨¨F9ž.—o” 0ˆ‹ñëšÎñ‰4õI˜–ÉÄiÿfÓÞ5\qÊm<6ù–ú¨&¢µiÓ†iiø|>Ú¶nÓØÍ)× _®fÓîw^v ùþ {³}XxœbÜv’šyhŸÇ1‡¶#;7Ÿ9K7rÙ3?“ã¦kûdüæNlûw‘*3ƒ&Á`0üÜ0Àápâv»øã?6lÛÓv˜Ôœi3~bð ÇÔÛÉv¾/¼œlÀÂeDáÏhLœ;±6ƒ_.¹»ðeïÀðcYQ~¢m³‡‘¢f¸Ýnš5‹cö¬Y ~<½.7ž(7†aàrcŽRk*ÇSDD$ÒÔyà’ïÏåáÏGãñ2òøKq:\u]E“`Í[´`OúþÚðÛw¬×«»ÕµrK&KÿÊä¬{ñêÇ¿²#=› ,ÓÂf7h—Ë¡µá°î)Xäù-Žë×™Ãz´aÝæt†ôïÀ²ui:¹ª… Y¸€ÓåÄëõ0}útFŒÁÞŒ 111Lÿif½žlçûrÉË .Q6“@ЀÝf†z‡löÈí5µÙl8Šz\ p»Ü4‹oÆìY³åxFE9‰ñDaåv…ç5•ã)""iêôW3=;{?¼ÞÝûrH·,ÙúGu‰Ëåä¬gz”Ù>>:‰ÿ\¿ Þç¾$¥´«—|–¯Z‰?à/“n7lXäädŸOvV6kþZK—Žp8œuÞŽšø~ÑvÜno}¹»ÝA\Œ›C;Ær÷y=ÉÊ °mw_ÌßÊS“×r|ÿÎÞ-…­»óðMú÷jÓa#4i¬X¬¾ÞÓ†dšA‚Á †N§‹ho4³fÎdĈìÙ›Qj^tt4P¿'ÛE‹ø`BA•êǬ`^»Õ€Þ+c³Ù±Ùí¸\.šÅÅ1{öìF;žQnÑ7`à‰r…ƒª¦r‰Å+6sÎ1¡É±µåÎs{°.5›—¿^Ëï+·rîÐ>Dy¢øiÙ.<®Á YfŽËA=ú“C¾ßÄÛ¬‡=”>ñoŽIñ4Â^F63Ä q¹]ÄÆÄ0{vqÏ@‘¢Iä–eáõz¤z;Ù.*^§,½p@škTv›ÃnÇér[ª§¥HCOÛ…×x].ìŽÒóo"ýxŠˆˆDš: \®›Æ+?Ü͈cÏÆæ¶øyã—Ø ;v›“i«ßÅf8°6ì6;6 ÃàØÎçVXÞÞÌì«é&˦<Â)gÞÇÈeÏ×ES뜅EFÆÞÂÇE‰V(€±BùYÙYx=^Z$'³~ãÚ¶nC\lãbþ“¶É±œ1¨±n;vz‰ö”í êÒ*†Ë‡tàÑWëq²aw&å´Ze†ŠíÚ“Á–-ˆr„Æïo^ö?†Žx€ ‹¯u›-3eKþ$ºÃÁµ.+˜¦…£p±9sf—:É.:ªû^|÷x¼$&Õ}OÓéÄiXxœ¡÷×4‹çßXVÙ÷ºHèb„U¸­‘†Úìv¢¢ìÄÄD3³°çª1gB\LøBF³è(ì%"•¦pÃÇ’7ê0 8p¹«_OÞÜšK\Ë®ÜðÔdÆÔ:”aùùð¥×Y•¶¿ý•£®}'¯;~Ÿ2M>yô&–u¼’ñõ¯íîcY¦Ube(«(€±°,«ðDÉ";'‹¨()))lKM%¿ ŸIÍk]M9gÓŽ¾¼D¹lôjÓ¯Û^f»õi9<øþrFŸu-¼´jÍ }’q;í¡¡båœTyœ¡rÜžºô¿€œí‡ÅKEï_ËÇñ¨Ü÷öT|Ñí¹õÕ¸íø‚ù›¸zÄåt8ûJb>(Äó7s×Uÿ$+±;S Æ¿û4G‡>Ú)íòÙã#óÀ$râáùÏ'sÄ–ÿñ+%ÍÕž±/þ—›¥ÔÉ1­Ã0°;ìx½^æÍËàÁƒÉÈÌÄ0lX–Yê–ú¦¡ üÉ)-ëôd;))‰®í[2抳ËÍ·,«Â:ºtï]êyÚÖõ8x9_Ã0p¹\¸\.fþôSDÏ.í’9¿Ï±åæGúñ‰Dµú5œ8}<˶Îã´Îcõî…lÝ»ª8`±‚8 Ó^@ hùÁ.ÜöX–¿Ò±ÜA ðg2ýÝ;ˆi}~©¼Ç­àq`Õ”;|Ó¿·òm–Þ}âI’ÏyŒñÝëæ+–e…—µ ïa”:¡· ƒ™ÜÜ\.-’[¾{7~¿ŸÖ-[ÕI;ªë±G.½[Ôβ…ô¬î}w¹¾>ýË´ ÷%´Cù³Ü5Å|þ QNy™»YüÃ3´:þÞRù½~ßz–u}”%k^eý÷ÿâäëä¶å¯0÷®ËÈ»á?Œ?§#XòؤÎáò~¼ùBv]üïœÒ–´yw2ìÚïøí½ÓäofRæÑÌþãÖÿôgžÿ&Ïßs3~[ÆŸŸßËÈ«ïä¦UïÖöpV›Óé$**Šùóæ0}úôpÞ ãŽ+÷þ.¿ŸôôÝ¥ÒB'Û'ÔúD;##ƒ5ëÖóñçS8çŒSóÊTŽêÑ»Í`WFnhéà}Þ쨘x\xY;6³|Ú{,_¶˜@ Ðà'ÚN§·ÛÍO3f‘q<÷df3ççÅ; o“;ž"""‘¨V¿†é9i`³°âøÈäâ7ìXXØ]l„V©2 ¥-ÓÂòA®¹§Ò²“[¶ ?¾âÃ…ånÓ}Ø=ägô ?ÿ÷›0alhÒ­;þ&O<$œgúwñÜ=ïqþ#÷ÒÖU¶g¡¦‚Á>Ÿ¯8¡0Fh^ÍŸÜïÛ9(çdª¡\ôÄò ‚åæy]v½ò`Ú¶ˆfâM÷J‚&ÑQe?BÝ»v#7?œ{ãxfLò¾J IDAT¾¸Ü×ïûþ<|Qè uï÷â»æðpú£_mæéG oØg”ÒöØÔmL|¾%Íû!mÞ(à´pþë×  ÏI7‘~I;N=ùfúžõùcÊ.Ñü~?™tîÜ˲°ÛíÄÅűxñbì6;~„ûî,«Ô§£vi¡ùûí¹Ü¿‚‚¶¥ngæM¼ó߸ò’“Øóø— 9¬.§‡=ô~ï+*&ž-cù´÷X8N‡{#¬”å÷ûñûý pA3–…Óédþüùv<-Ódwv?ΜÃÐãmRÇSDD$ÕêñÎÓ^áÍ1eÖ'œ4p$^W¤ÎÂá2°Ûm8Ü6.;v‡Í^8f;hô[˜FA¥eoߺü™üôÞ½\5æ1žùãE|»~áßw½Ì.g"ÁK±ÌâU½fì,ÿJé-#Ï!×`êºË¹²g|mv»”R½F…WR€ÅG+åÅét²sÇNâbc­· Û`Ò}§âr„ÆÓø <ðÖÎ8º%[†–ŒuyB‘@Ð"ßoâvÙ)ð[¬Ü’ÅãþÁG÷ ,Sö¦‘Ÿ¾€aý/b‹·IŽâ÷¤²÷¯$Ëe懟/Íös§üëʼ (»«5ߺ*Ã…e•¼Õ7˲ÈÏÏ'77 WÁ*ºªÜgnɾl6N§#t³Eè“;阦IvvÛRÓ(È÷1ñíw¹öª‘äŒÿ„Ót­ðuE'ÙóçÌ Y\ÑÑ^Žº»0PU–e…ŽC‰ï ÛíïxF¹=äû˜ÓfÎaÈñÇ6™ã)""‰j5ÂfØuü¿8ë°øjÚ‡$ºÚqT§àt:±;m8\6œn.w´·×ŽÓcÇá¶…™}ï^Äé°áôÄ3ôÊ'ÉÛýM8ý–¡—Òë¶xëµçxù…+J½¦§ÇÁŠÜò{1ŽyüS&~ôS¯ÅÒìòO–kËVxÅÖ°…z[lv;v»‡ÝNlL,‡ƒ´íi4OJ¢erÃÏ«(ɲ,¢\~ús'3ÿL£ `òÑô•Ú)–!‡–mÛÞìžýl5nñ±dC.o~¿·«â¥Ý‰GñÅwO°æù‹y{UñªN•½•éâ±³"¯ü÷¶‡ÇÁæ‚P^À·GT—*—Û˜‚A“@0@ À ‹‡'΋*œ]æú¿Qx—xGág¬¶,Ë"7'‡Ýé»X·n=‹~ûƒ×Þx›ÏÇŸÍ×?¯Å†—ñ-Rò$;1!ØØ\.W£ÝÛÇf³ã°;p8¡Åœ…ŸÏF:žž(Ñ/î¨( ‡›™sæ5©ã)""ij¸øý¡aR»œÊõÇ?Î÷³¿ÄŸc0¨Óù¸ ›Á)ÇrJÇÛ9¥ã8Néx;§v¼ÓºŒÃn³ƒ¹yyåŽ?/ gv/ûQ‰CÃéówçgøñçlá‘ëç3"¡xiáÎîÈ=“ÿ,,ÀÇ—¿λàÐDì®¶LøèR®9s<ÙÁÚ )yå¶Eó´hÞ‚æI-HJlNRBs’°v»ØØfAÒ¶§Ñ*¹%q±q ïšÞh÷l0B½,þ€IÛæÑÀoëv²qG.;3òËlž[äÏü¼*ƒI?®eݶLZ%º+­"¾û¹üøÎÕŠ eòÆ·ëñ[S¬Ãí²“’ÍC“÷[OÛ¡wòÙØyã‡,zã¢J߿ʌ˜0™o/ºžsfö¡c³ÒÓð×ßaÊec¹þý$¶¦Æòáäa59$ Î4CÁ+€£DàZÜÂ,ܦ.f\TMA^.¹¹9€E^N6ù¾\üùy¼öò \yùiì¾{2¦iFìI¶Íf+1ŸÌ·§±Ž§Çí.\ÚØÂ²Ü˜³¦ÿÈ‘Gô‹øã)""ij¸M3ÔkĹZpãÑ/òîâñdefrÔ€ ±‚¾Êâç5;yzÒZ''Ò½S2í[6#Öã"ßoâÉÎ-à·ÕÛøåÏ­œÑ?~deeãŽrãrVdhÏ h›Ö…ë> .6—Ã…ÝáÀétàrºp8x¢¢p»ÝMê»d ‚iòM ­&ä¡Y\3¢=žðöF‰Ç°Ù00ÊÌëi(@›ÍÆ5C’IŠŸ/Ÿ^)ãílر¿¦òán¿eçq‘ãócYг•‹NŒ¥sË(ò 0l¶ÐR­ \jÄ4M‚¦ –E0$ bú¼äääàv»Ê¼Æ"Ô;YŸŸ/—¼¼¬ð\E½y99dffíõàv…¾·Ž}'¿G€}/~X–…Ó0°Ûlr<=nw¨†rŽSS8ž"""‘¦VCŎнœùù8œ¡ %¼bGĞȑÝž¨ÛÃÁÛå*uÆ(\1Ìf Ík1 —Tµ,‹mÛ•÷‚Pð‚ÍÖ8=-E\.wÝ^mÝäûB+ˆÙl6ì;µsѹ¥?ôZ“17±'N—+ô¾¹]¸Ýnb¢£q¹Êž JÕ˜¦IlLL™ô@ @0¬°²¾>7þ|½{ö,“^ï# âp„–n*'Ø%/4Æñ ßX¦MñxŠˆˆ4¶ZG †aà*þU.ëV.mèvˆˆˆˆˆˆ”Bb‹VeÒË \ºô8¬Þ$""""MOl|‹Æn‚ü díÝY&­ÜÀEDDDD¤"~c7Aþ†4ÇEDDDDD"ž‰iiiØÎr󸈈ˆˆˆHDض-‡ÓUnž‰xu29ß²,æÍÿ™o¦|ÇÂ_~%uûvvîÜE0¬‹âE"ŠÝn§E‹æ´jÙ’#èÏ©§œÌÀ£`F”¿|ÅJ¾þük¦3•-iÛÙ‘µ— eÖIÙ"‘ÈnØHާmJKŸz§q½zö¨“²—¯XÉß|Éw3¾%uëöìÈ ZuR¶H$³Ù ’ciÕ&™“OÁé§Ž¬³ï•Hc1 `Íš»€ô[jTÀ¼ù?3þÁGX´xI7M¤éè×÷pÆß/Pã2ÖoØÈøÞÏÒ…K¸Ìß…Sü­éD)x°S7A‘H$ b‘FëÉdŠs“œë8ìÈÃÿătêØ¡Fe®ß°‘»¼‡_û•.—ùi}ŠŸ¸NàIÃ^Ç; ¬ ä¥AæzØ6ÅɺINúÚŸÇî´Æß«"±ñ-´ª˜Ô›%K–rÔÀcØ»+5œ–¶u£ÇŒ«ùP1˲x쉧9ý¬ó´ÈßÞ¢ÅK8ý¬óx쉧±¬ê_Í>c&§9fûX{&øûr -iWA‹ðì´ÆË1´ä_VçžÉ ³}œ:ä4¦Ï˜Yíò¦Ï˜ÉI#O&焹œ¹:—¾øiy x[+h‘¿ÃúÌ·<ú>âçÌÕ¹äœ0—“Fž\£ï•H$¨ÑP±`0ÈÕ£oä˯¾)Nt5ƒn—@Ç3 ¡—.kÉ«è2Öžå°ásXó_(ÈÀ4Mž~öV¯YË›^Án¯Úçöœ¹Ü6êf¾È9$×sãE"Ÿ·ûplv2玺™—&½Ê c©ÒkgÏ™Ëè;Fsü9$×¼Tä€ãð@ŸqA’e3úÜѼýü[Uþ^5%§|_/û¼±›!õ¤F=.÷Þÿ@é ¥ûåpÁZ8æeh3T—µäÀVt«ÍÐÐgþ‚µ¡ï@¡/¿ú†{ï JE¥¦n禫Æ(h)Ç’ù"çnºj Û·§íwûÔÔí\sëhNPÐ"R¡äpÂ9\sëè*}¯ªÊÓ¬Ì_c0÷™zåˆ~Ò©Õ\fÍžÃo¾SœÐ÷~8á?Õ¼›%Ò„D5}úÞNzãÍw˜5{Î~_úÄýq_voGß‘òNsîËîÍã÷=ºßmxúzÿ+›æ‡7@ÃD𰿇Cïe3þ©ñuZnnvF©¿Æ0å/K=ÿpöÚ2Û䧯ä³ÿ}Êü5ÓF©¹j.<üXñ“.çCÿñuØ‘&¬ÿøÐw¢P©ïJ9Ö­û‹_~šÇUÁîõÜ0‘¦íª`w~ùiëÖýUá6ëÖýÅì_gÒm”V³©Šn£‚Ìþuf¥ß«ºt{¯¶DÇ&ЪûQ<öÝÖpúÙí[òuº_ú7$µ/þ ú6rËÙ§sÕµ×òÓFó{Ž?œçiFæúOÔ£­¾3œV²§§èqÉô¼ßsìWòé7ŸpÁѽxê×áí—¾ùOzwhElb+ú\ùo¸4Žj.ËW¬déÒßCOœ±0ðEÐÄa‘BFè;áŒ`éÒßY¾be…[öÉœ›×N“ïEöÃŽÁ¹yíøì“/*Üæ“/>£Ý¹>R©"ÃíÎõñÉŸ5H}Ï,ßBNÖ¦?}$O_{{8ýÖa­yîóMlüìEÚ ¿9œ÷Ãu§³ëò—x{âDÞ¸Ë͹—}SªÌ¯¾wñÕÒµü:e<@™^ž¢ç%{€>¾d,w̘Êäÿ¼ÇÜÿ;g®œÞþ¬;ßàùé’•žÊ¢ïî®»—:S­ÀeÊ·ß?é}x4&_¤Orè»Q¨ÔwfÓ¾úžþÖ Ñ*‘&o„¿5Ó¾ªøû4eú7´á¯0_DÊj=ÂÏ”éßìÃ*ªÊü–§<€oï´ðó>ㆲü¹ÐdúOŸ_Á°Û{…óøv+÷ ýN¶èÛç6mßFGb¢E"M^GbÙ´}[…ù[7o'¶cõGä@Û1ôÝ©+ÍoÉÛ¹€Û.9—K¯ºŽ‹OŽe„óšu½ǶçX“±†g·9¸·kqг"ÏOWOh\»»-¼5¥ÊmåªþSË7N W1 ]±Ì¼pÞós¿&~î t=èx^›]wÇEêNµÞñM›7?Ñ/„HùJ|7J}gö±3+ƒd< Ð ‘¦/;³*žH»wg¶ˆT“'9ôÝ©o7s}îšÈä·_gÂkהʳ9¸§S7¼~îÎw‘à(>5íéq²1?@ oO·Õ(Ñrtœ›5ééá+í·UáþZÎ<éÆÄtãѾdÄ«§”Êo3ü&`·/=ïó”·?àëó¯gÔäælÙÇg•~]U¼ûÈ… =±'%öcûÚèwïלtÛ¥;$—hËàÔg‹'ç?qÊ‘<ýó:ˆiËuϼ_£}•úe 8Àš5wé;¶ìw㤔vÅO®ÕÄ%‘ M,îIÙVþp±¤”vX\ÛP-iò &Vú}ÒÏ’HõM4*þªHl| þüzj‘üÝ-Y²”£ÃÞ]©á´´­=f\õïã""""""ÒиˆˆˆˆˆHÄSà""""""¯Z“óEDDDäï- jñ©7A3ÌYTà"""""UVPP@À_°ÿ Ej 1!Ÿ/·Ü<.""""ReþÆn† š7oNVfÎrî¼¢ÀEDDDDª¬ ÀO0 ©_N«Lš©²_f~ÑØM¿ACG–ISà"""""UvúE74väo }Ç–2iZYDDDDD"ž‰x \DDDDD$â)p‘ˆ§Éù""""R+†aÔYY–UÁmÓåoO‹ˆˆˆˆÔÚ¯×ö«uý'.ªƒ–ÈJCÅDDDDD$â)p‘ˆ§ÀEDDDDD"ži 2çáI< €üŒŸð$¯u™KÞ{#{ŸZå¼_è_iú òHX ÎË2éÒo8O¾7‰‘ãö›WÄînÀع©eÚZYžÔœz\DDDD$âÙÍØ“» ·ÍÀsyóK ƒ¹™ù´t•=µ­(}}În<þ-9y¼}mwK•òŠøswñÑC§ðÖ…U+OjN‹ˆˆˆˆD¼UoKï›`YY 9ôúùáab}¼NþÈñ—y]Eé‡Ç¸xèÌÃqÙ]}ً䤾_¥¼"OçÜýdmy§ZyRs \DDDD$â-y}-}¯ì ÀÚÉ·Ñ{TçRùO]Ü•['. =1󯣕¦ß=´5·¸‚`€EÝAtË‹ÃeU–÷øi}¸jâLòƒ,þì~¼-FV)OjOs\DDDD$â½´jOw ÍyòÁ%ܸ*¾Tþà—g3ïš‹8åœDâýÛH:ñ¾JÓGLþšOÿq>ñ—¯$¾ë±¼9í³pY•å]óðœqÎ9Dß”G#†1yÖ;UÊ“ÚSà"""""oÎ^_øñ;©Ùeò G"÷½ó]•ÓÞ^¼3må…•å%v³×^Vn+Ë“ÚÓP1‰x \DDDDD$â)p‘ˆ§9.""""Rký'.jì&ÈN‹ˆˆˆˆÔJÉû©ˆÔ ‘ˆ§ÀEDDDDD"ž‰x \DDDDD$â)p‘ˆ§ÀEDDDDD"ž‰x \DDDDD$âé”""""R+†aÔYYº™¥TD‹ˆˆˆˆÔÚ„_ûÕºŒÑýÕAKä@¥¡b"""""ñ¸ˆˆˆˆˆHÄSà""""""O‹ˆˆˆˆ4 ™óð$ž@~ÆOx‡‡ó2×~ÌÞmp¹c8tèU¬È T)¯º6~ñ =Rbpyâé7ürf¤æV)OjO‹ˆˆˆˆ4 k_%åèÛؽäZ7.œwljWÑåžÏÈÎÙÍÄQ.N»ìû*åUׯ}Àqÿ@VÖv^¹ÌÃénªRžÔž1hàkÖܤïزߓRÚ?¹VKÕ‰Thbñ²»Ó6—»IRJ;,®m¨‰4y+ý>égI¤ú&ÿNU$1¹m™4Ã0êlU±Š–C®lÉe˲ðÚmì(c7°Ì< Ãñę4«€IO<Åòmëøö‹¹{Ë‹¼rÛðŠÓKÖÌÆáN!È)Û¦JòdÿJÆ&i[70zÌ8õ¸ˆˆˆˆHä³,‹qmc™”–ƒeY\Û*†Owå… [ÇpË{?ãúùí‹û)È^~mey¿Œ?­çáñßfáÒ÷ضpc¥éEÌ‚L¦¿uqo,ÓÖÊò¤æt‰xV0“·ÒcÙÞ‹?g“sfBRT8ÿùÙïsÅ%WõjœÉ=éß¹Jyw¾¸„ÿÞ €;¡?Ÿ}пÒô"vw3ÆÎM-ÓÖÊò¤æÔã"""""ÏæhÆžÜm¸m®˜CÈ˘_jøXlÇSùdÎrr ¬þä2òúý«Jys3óié*{J\Qzî.>zèÞºð¡jåIÍ)p‘ˆ·êícé}ó,Ë¢ k!‡^?¿Üù0«ÿÇ ¡ñÔ¤‘UÊëãuòGŽ¿Ì¶¥qx’8çîÿ#kË;ÕÊ“šSà"""""oÉëké{ehˆ×ÚÉ·Ñ{Tç2Û¬øîEúv1G=;“sZz«”÷ÔÅ]¹uâÒÐ3ñgœõâõ§Ò"ÆMRÇ#xë·ôpúâ×o¡K‹îúœ0¾T¹ûÖusÇfØlvÚöá¡o6×ÕnJ¸ˆˆˆˆH“Pt˲ªt¿—_ÆŸÀÖóÆðø‹o³pé{l[¸1œ·æ°[ø+=“¯ÿ݃[O½'œ~Ú-¯ðʼò³ùã§ñeê.éÅ ˜f¹/Íc—ßX‹Ðs[’ IDAT=“ªPà"""""¤;_\Âemcp'ôç³® ç½4z±.7G]þ:9©“Âé#ZGóþ”Ùd«~#Ìžÿxßžï÷¿¡ÔŠ9 ÍÍ̧å~&öh,3/üüÕÅÓI˜ý$mÚõ祟R+|]ÞŽ¹Ütñåœ;üX,³ ÎÚ-åSà"""""M–Ã0(wŽ”^õ«×É9þj•çNèÇóÏãÏÿ;Ÿq#GV¸ÝÕ}Oæàû&óá{ïòÎÛ&Ö¸ˆˆˆˆH“5º¶]W]»>Š€‹®îZVD°!¨ ¬Q@DzBB’ùýHdf„9÷ëº"3ç{ŸûÜ™Ì|æ>åáË ¦¤5â¶g'Eí£øóÿ™<‡ÿ‰aÛ‡yˆÅC**ŽžÃèµ3œq‘$I’xI’$Igp‘$I’xžã"I’¤Öeæ•É‚vsI’$í”Ò'»KUÁCÅ$I’$žÁE’$IRà\Tà—ÀsuáÅA/“ª¡å|C{Fшw+\&©jmù^n £3+^&I‘\’%g:Œ>eûã)0ú´¢ÚÒáðN?˜xÌWr½Šj;|¼rz|µ·o…ž3aà芗I”à 2x€l–‘Á„õKøŒ“8›åœXî²…Ìåb&q os+‹É/¶~Eµ¾ä ަìM΢դ Êß#<ÎÛPô¸¸Õ/À˜C"¯_^mÊhñ \ômùË6¾ SÎ7ûÀgAñ3'*ªIÚý\’eã“Ð솂ǫ}†<^uL m®‚aÎ`˜5'zm‡y—ÂÔ§áèûÊn³¼Zîw½ö;Òk•¿L ¨ ̦‡°†Yì³ý1@.ëy‹<þACjЏl_Ò™ùCn¤ óxŸ¾¬¨°¶Ãl¦Ò•9 ¤k™±UT“‚*ç{È8¶àqö—P»gÉúºQðúeÐæÞ²ë–WËÏ‚¥ëàØ3 µ^äe[?‡×.€¦çAÇ«aÃ0ñ±‚¶Õ$í¼ªX2 OÙþà¾cáë6‚>sa曆¯‚ׂCŸ÷ÿQ~ k |4ΘM÷.¹ÍŠj£ÚüùÌöq G^&PJá‹è{R —."3”t^ c{»HËî¡&ƒ9ß‘À±l¥ß=Á7åÖ¶°ˆ,æaÎãjJ†üŠjRP O)ÿñÐ0䮀±¿‡nS¡C©<^QmDí‚?G|ÀÐpÙeG N„G[6˜D«ÅòV3{t,š0%­ä®-x\QMÒžÁà’ á]2jCî·{ÔÚþÁ&/B¡¢¶©õ!MôÀŠ,ø¬;ŒÈ€×ÀƱդj,L#Igilc-ÏÓˆ³E_±˜å„Ù·Ø|M*é䓵p'¹Ìg,錤oó91Õ¤Àʃyk¡íÞ¿lÌbߙ͜nƒ5àåcañ±Õb±%j×(zž‚ð¶è5I{ƒK2<Ór—Ì»:r>.š… 7·¨mÞ"HËŒ^È]]'Âe ý^0îúØjR5–Ê?YÇj2œ¼J+Š>›}Iea±Sîsù•u£Ö~d+]éÃf†0Š\Èô˜jRP Oƒì-0"FÔ…Ü %Û´šÞ —fÁñCarÏØj±¨S6n-zžŸ ©µ¢×”|))) û‘Êã9.Ép|Xótë Û>ƒOò Ç1µZ°v 4mVð|ÝcP÷ªè5€ôy¤¤ÀAÂ{ÏF¯IÕØ<šs6Ç0‹¦lcGæ+šÆÕGB) ÇÇдiôÀ‰ã ‚Í”ï ~è7&¶šT=F6Ppàû}¬æ÷ÔŒ»vœÆ«Ìd_³™š `Ü>ÃRQ  ½y÷hÈzÒœœSM ªÙóà˜¶¿º ™W²Þêyøñ øçÅPãèù^lµX4¼ zåÃwÃ!7™OÂaÇD¯IÚ3¤×­køƒi3X»riÔÆ›µ*z╦¤ò; |ÍŠŸ"6iܬUáÕ­$E—Âð _O¾-IñžRþûTy5mYfYJJJ ‡ƒñbNII ÌXöDųɊŸqå5Õep‘$IRà]*ùŠ®šü:))ÛÃD8‡çþ~?s–-dâØiô¸þQžøSÁŒÌu™ x|ɯ4hÑž?==‘ÛNoU²óü,þpÉ,þ;§}‰Å7\sË—ÎâÇ”#xõ¥ûiQ#5êz[VŒ¡ÇïÇñðÔ9\Ý5¿Ui*&I’¤À ‡Ã kYçVl&3tŸº¼¶:«pä³;Nàçó®áÞGGñéW/°ìÓÅ…ë>ºhùùyL{ìXþ÷âß—éûûÎgÛߣ~¨ä}dî|ä^x}2?òcN¼¢ììI¤õÆ]t=žýØÐR .»L~ô&{¢â7Ô”bæÉ’‘Ìó÷Œ”0ë·${*-œ·‘‘kë1hïÚlÛü-Ïo9Œ³Ý…ô¦G¿dpË‚Kâ×Ü« cþSö8íÏø;[×½UbY~îZ.»5—çÏÎ,Ó¾îö@rÌaÑk7Ç´Þ3²˜[wÒkdÐîØ¼ñÃÆÊì®"0¸$ÂðhwyÍÿ4Ú%C©vÆÞì(`¢ßõ>Ÿ ½KÆRÝtgyÉ„%êÛS&¥Íên~E4©i X·e5SS¨Q÷p²6|\ìð1˜¶1›æ¥å²VNãÚ§3è‹xZÂù9%êó†¤öÝ“‘Zþ &½NG¶m™Óz?n^C×{'²9k£†îÅ…=¯¯Ìî*ÏqÙÖß\Qô|ép˜ûä¦C«KáÐ3âï3ëCxùT¸8«äòòú^t?|þ8¬[ i y_èñ8Ô‹ñf}ÑÖôî¸ãÚ¤ÕrFÊ?C³f±C{¼µ|Ê ®Þ²¯¹”Ù|ÂfR¨IGZsÝéM:9í¸uEµX,d.w±˜e¤Ò•ƒ¹‹ýâþ&(‹åœÂ›|DÉ;ü•×w´ýÂ|®áþ¯Ø}f¤ŠdKJMÔ宄 íáÌ5%—o|¾x6o¦}¡Ëµl So…•sÚи;ùÐ*3¶1D[¿²o/1m»œ}8h#Lûz{ªZóFõàì¯`Ö#]ÙöëguS_=Yt3ŸCk§3kó6:ÖI/±Þå{sü„Å =¼›?Á3¯)¬…s×3äÎŒ_Ú¶Âmçf-¤FÝ.1­wDÝÜ}ÖÔHMáØÁ²ùò½g+¹×*Η]áÛ‰pä•WÝ“GC›« Ã@˜3fÍ©xýÒ?/õ‚ì­%—WÔ÷—`¿Ûà¢õpñppsxý²²}—'–õ‡†KþÄRëÒ>ù(öqh7%t¤¯°†tf—ð+¿á!28‡©%Ú‡Zâ'ÖZEVñ%™Ï1tàFÚ0÷é˺¸öã[fÑ…ñL+5GRQßÑöw(yƒåqC{¶õ@ã;‹ž¯c„åkK¶Ûú9¼v4=:^ ž€‰Ô~øÔ8þ—®†c‡À;qÜ2–õ+óöMEûÐþNX´ó·%Q}ùÔ÷tÒ€ïŸÿ‡\Ö¦Dýþ àÿ*x’ŸÅîàÃÕ[i’ö_së…Sè߸èËE¯_ÌÆ³ž¤IzäÄ›ò þQ-™ðöxwLëÝÒ«7¼ô)9y¹Ì|ùFê4¿°ò;­œq‰dx œÿ%¤†ó…ìÏ`òï`Ù×Ö Z M®„Ã{¬3í:Ø< 8zÝ©Åþ!/]›<~ÿÐg.ì½ýŽ÷WÁëÁ¡ÏÄ>¾ogBŸ0v¿’Ë+êûäÏK¶Í¼&û6wvýò´è¿œ³ó})RÎN¦²€ƒXG7²YÅ5|ÈK¬% ާÍiÏ(ö঳œµüH^¥+-(úZõ]¶ÐûŒÂÍœ]b[]9”lþ[åû4‚oÌyünû8Že+-øès粊¿r>çñbÌ}GÛß}Øõüì_©ýRð OK¾‡7O„ épÉBÈ[Ó.„…“!\öé µ„ã·‰;ãز6¥À)/AíEýýüVÁwR;¼ó5Þí^r»ßýœŽ*xÞ¬#ü«+p-túwɶM@Þocß§]¿²*Ú'€Ú'AŽG3ÊcóÖñ@ÛÜw×—ü~^Ãõ“ÿéW\@ßsÑpÛ2ŸXð{Âÿ]ÃéÇíÏкí¸ÿwé÷Èñ…ëüíºÉÜòU©„ÛÕÏü W¾Œ”üuü’w ï¿pbLëõy~<¯1ˆ†GÃz0â½1;µß*bp)Ï’š0hdm?y|lo8ì58í˜̬ 'õ*jßíHI/ºÁoà ½‹jÙ[¡æö“Ç6m€F‹jµ/‚­â[¿ç"/§ï¹C óÉø¶mýÖ­óí½FCíÚÑk5OÜ'*?U ¯â-.bóö#Æog[9••4å3>àtBlÜZî¤uˉ,eE—­|“<ž!q;³™Ê~ô(±¬ £ùŠ<¦5s§ûµWQ­"OÃ4ŠN­ÃdñrLëî0#.§ïÒû[“–äç ®ªE ïü‚Cºfv‡¼?Àà7`Õ?aâ0¤X>òHÁò¿Â¸+`P±SÄ–¬…ž{=49ò6g/‚þ‡=Ok¹k#·]7ê ¨Ìž•¿þkûÁšåÐð(8öehÙ"¶ZE¢íS¨!äÿZéÝPøh}Ñ‘&ÏþRöNJZ#n{vR™å‡yˆÅC*Z0zVáÃË6•»½ ?¾Xn­¢õÒjwàÙ÷¾õà°*à¡båép&„jBÝ:Ï7¬ƒv=!µ&ü8l)õyÇÉa‡=?–¼êÛ¶Ahû­¼ü¢Ç©õ!¿ÔÄ•kßkž/rá„J¾³DZ¯Ðo\²Z¬‚qwÅV µ<mÙÝõb?ö"DËíÁàQ²y‚}¨Eˆtg3ß—h_wûŸÇÐE|Z¢6‡|ÚFøÕµ†ï8|&’Y¸¬3mxAdq!‹óø"¦Z4Ë ³o±Y TÒÉ';æõÑw¤ýM£>ùx)¤Ý]Ë+ ¾ «Óºàù¬yÐý2¥Aó!ûKÉöéÛßšþ6½V²¶n3Ô¯ET[rJÎÔ¤„ ¼­l»­_Ä¿BŸJ^?#ÒúMc߃ËÖAç“áÝb«EmŸR3 œSv=IÉcp)Oj©¿ššð݇¿Õ\u.‰¼^zGÈ-õg8\lB¡’—Î[i™‰s,}o~Æß ÆBZ%&ÜÊ[àËP¿ ¤5ÎÿÅVKÉ"¼ûi·RüP/€3Iã*~!›|>a:u9(âzé4f[©sG¶¦ôç¬Í,¡'_ñ§qP±_k3éEOj‘N-r2™S-š}Iea±Kçò+¡Â¸µsb黼ýM!DØK"ïöŠØد1|4òò`å Þ2òz©u ¿T®ÍˇP ŸêÔ€ÅN«ÌφÔR/ÄÜŸa܉Ð}4¨Äõ!Ê[ÿìY°ÏZÚülû!¶ÚNïSjÁÛ·¤à0¸Äª÷}0ý$x¦|»Îü{äv¹ !½KÉe©Å~ûÕÊ€µÅfAÖ=u¯JÌ£õ3^û-œòQìW+.æõó µIlµðfHñRÑ{šÇèÊTÆ“ÁH‘Å¿è±].©AÉx5"¥ÄœB«9Éü†39‡’W’).L˜Ô2‘'z-’þ„x°Ø,ÈzfQŸ8ù¬dßío˜\R©™q¨úè>–]#Óá݇àÄ©‘ÛågA¨T¾®™¹1\C;³ |ûMÑ󜹞Y¬ï0±3´}öÏ$nñ¬ŸRÁwnÕJ‹¶OäÅן¤ªçK2V3GB›s¡N²õ³*Kþmî.YKK/ø*,- Ž8& ‚ž·@þ"˜6N+öÑAsàì8NÖß¡¢¾ó~‚1'ÑïC‹}Ê®m»ÑÖŸÙBWÂá§Àì+ ém±ÕòAÚ¡ñ﫪µÛøšAÏÚpX„_C›€zÀ>gJ~p©,"ŸCI%_Ìxö¡·R»L?˜Ä(Úó-™Î4¥sLµ¾ŒæköççrN¶¿š}èÌ»ÃìÍ&îç;®æ71¯_‘Šú޶¿yl"¿ØÓ|ö'h{/<í[¶¾-¯àp±_'@½%k{Õ†MÙШì?§:Ü ¯õƒ¦Ï@F|}-2¶ Ά÷»@íÛ¡óIeרÖì¿ý¼l-–õ—Ü ójÁ‰‚OB­®±Õ¢m·¢}‚í30Qþ^TÒÑ»/ÙCÐnÎà«´ú0c|| ‚:íàèWàÀöPï7ðþe^áá¤R'ÝÖª9ÙÁ¥Ã8àN˜û@ÁLC¡iÓ¢¶.…^¨Ü+êûÍ£aÃø¨3¿úðŽkGFÛn´õÓZÀWçÃÌ´½µ©¨–3 jõ©ÜþªÚªO a 1…RhHC®äþ—†Ôç®f*)dó xŸ’gÚö&ÄGÛƒËÿãu^"xÿk³ãÒÆ!j3“÷¨O GЖñÅI«¨öÿ8˜“KwS\;NãUf2‚¯ÙLM0€?»wJ´õ+RQßÑö7›åÔ*v!íjÔoo€oÿ¤@Í}¡ý=pôEP#> äÖ<èWê×|«F°|CôàÒð*è•ß ‡ÜPÁµYÛ~ÉâOzÁÂÀïaáï‹Ö)|{¹Æ_S¦ËBÑÖOÍ€Õ‡go‡&'BïñEm*ªEÛnEû¿B~³°ÇÕiH9®[×ðÓf°våÒ¨7+ö†ÏÅÒw;ù°æxýf¸ìÇèÍ?:ZO€ÖûEo›5Þ_}‡ìü0㑬í.9 ~ººÇqÑÿê Ø]ÑÖ¬ø)b“ÆÍZÅuïÝW˜ŸùL>e[±Y‹òÌàn§o%蜒H²XÂAdñ'eýÊZÌúÒ…Ù4Þ¸Jax…¯§=úm©˜Í_ÿ˳¢·]ù{ø¼ôíWuãÉ] /ý.|»ê¶QÛýu½mu6<¥ü÷©ò4jZΉTRÏ&+~^Ä•× ó—˜}x4|õ/ÈÎ‚Ü °æ3¨Ñ1¶u;>‰ñ+Ó&©U~œ••¬í~2k¿ë·«¤ú/c¸‚,&—\r˜Ï*jÐ8úŠ@;ög&ó«t|÷³„÷80iëWÖhVs. £7ÔnåÇ+áƒÿ…_לDzáë‚‹JÆ¢á`õÍÑÛíŒo®…~c£· Úvçß û_Ÿ¸ñHÚy*«&}à»»áóK æŽ[ €³c<¤«Á]‡–ñ—èm{%éž&ÉÚn«¡~ƒäl[IS—V,â a yÔäH2G„ƒÛ#hH®æ%(vNJ¢ý¥Ô½`võú•õ˜Gè µ[Iï ›FÀËw@¸&ì}ôžÛº5„Uüåyç—ª¶ÿªÚî‚–0è€ÄŒERb\bÕþ΂ŸJI¾ó:œÝFß»¢·Ñnç4ºpZ©“îãqƒ8šÝǼø;UõÕòÊ‚ŸÊêRö~}ù÷"އŠI’$I <ƒKByã·„*~3Mí<Ó:‘æùûIÚ)ë·Do#©jí™ÁexJô6qË)¸Šgì ÉbÂð*è5Ÿ ˆñ‚ŠIwfÃ}0Uòv†É»þÚÕÞÝü:EJ¶=3¸T…õ·W<^t?¼º<‚g÷†‰æM%Ûg}£3ÊtSèû»à•Ó+7–òú^:ÞéÏ‚Yãb¯%k»9£aÅŠÊEÕÚZ>eí Ÿ/æ Ú1Šü“#™ÂûäÆTÛáK¾àh*wÀzËéÁÈ2Ë2—‹™Ä)¼Í­,.1ŸQQ-YÛÂ|®!†ëãj·—ý,)ö#ç{Œ¨ ¯öŠ<³°úsHå¶—»ÞˆpÑÀoÔsàÍ>ðÙc%CAEµdm÷ 0íãJ DRÂ\åÛ‰päö³#¾ûÝ­‡‹„ƒ›Ãë—µ]ü¼Ô ²·FîkÞ¥0õi8ºw -¯ïU÷ÀäÑÐæ*è0æ †Ys¢×’¹Ý.á“ОgKèH‡ÂçÏð==9M\Ä„èÏ´˜j³™JWæ0®Äë[fÑ…ñL+5W±Š/éÌ|Ž¡7Ò†y¼O_ÖE­%s»CiÌ,ûï@»Ÿõ@ãbךùäD¨ÿg¸t3ô¼ & .Ù~ݨ‚·°6÷Æ¿­µã`̰|mÉå[?‡×.€¦çAÇ«aÃ0ñ±èµdn·ý°è¦øÆ!)±öÜàòÑé0ª&¼x¬)ö›mÎõð\]QÆÝQ´ü¹Ú°uû‡ò­cá¹3Jö·t´h^ðøäÏá¨Ë¡V=H­ ™×Aö”¢¶ß΄> "+k |4Îø ö«Ä×[åõýþ? ÏhÛö»úÞ_=½–Ìí¶èë_‰oJŠG™ÄÞŒ 1cIváò/˜N[F‘Æ(¥èú¬g0бÛ?”oeµK͆¼Ëú»ý_9á4£&!ºr ›YSm ‹èÁbæ\nd¯¸÷ë\Vqç—Y>‚oÌ©üŽÖœÊŒ¢ Óø6j-™Û݇ýXÏqCÁ0ëwoK£3ữ‹–¯~ þ³7U°|ú0p4(5¿Üª%ü¸Ú·ƒï‡V¥~‹fo…šµ"okîÈ|²èy¿çÊ×û×à CÓ½ãÞ¥ ûÞ´Û§ÚÁÖÑkÉÜnÍS 7I÷—Q\p(?p ³ø€Sù”Ë8€~ÌfÑ›’¯aÔáØD²ˆohÉQ%êo’Ç3„Êl'ŸÞg:õ)ê#ÕÆ1 àjÊymF1#.‚¦ë³’ÅËQkÉÜnMZ’Cœ3© „ à7ÀÚ`ÂéÐnûͤ']ÇÏ‚V¥ÎWéØ>û/d…M¯B¾%ëKÖBÏb9¾m ˜þw!¬{ò~-ª-¾2Ÿ…ñOX0hräå³AÿËž§µ€ÜµÑkÉÜn¨!äû»‘´ëí¹3.íO…ÔšpÐS°¥Ø‡î:uà§!\êˆÚN½áëíßþ=:Z²¾m„Ê~ÐbÍ3ðE.œ0 ¶q­È‚ϺÈ x}lÜû>U$/¿äøRëCþšèµdn7Ôò<´¥:xŒ–Ô#Ä1ÇfŠfÞúοYN©3¼8ŒVÌÞþíÿ+¬¥%/l1‡|ÚFøõâŸôb>C8,¦Úä2Ÿ±¤3’v¼ÍäìÄ^YN˜}):k:•tò·Ï4UTKævÓ¨O>^©:ê~%¤×€fö_Š–·j 'À¶RW]ht ¬Ý~¤ñ÷C«›KÖ×m†úŲ|·!g8ü3Æ] Õf΀ ·Áˆðò±°8A“v[r v±{¥¦„ ¼-z-™ÛMÍ€pb~…Hª¤=7¸ìRÂÅNX={2ür¼Ð–{‡hplþ{Á<ñæ4hаd?á0¤”ºüËæ7aü½0`,¤Å8¹•»ºN„Ë6@û½`Üõ•Ú­2B¡’—Î[i™ÑkÉÜnJ w+í)¤.vrü“ôc/¾f_^ã±bšr$i|Å|ÖówR¹½Áƒ¢ž IDATÔÝÞ·Ž8G²Á¼LkFòELµÙJWú°™!Œ¢2}çwØ—T;õ=—_ Q7j-™ÛM!DØK"Wo©”¸ê~/ Æ‡ð¯V0kJÑòAêRذ¾Z GT²›¼|{÷OÏ„S>‚Ks`Ð!ïÈ¢Ú¦ÍÐô^¸4 Ž “{&fWêÔ€ÅN‰ÌφÔZÑkIÝnjÙï4%íZ—Òj §L‡“Á[g-OmTðլˡþíZê¯.µÔo´œ™ðÚo Þ êÕ‹}ûé5 óH©= [þ½sû³C­ X[l6cÝcP÷ªèµdn7¼R¼ÄtuV“&ñmwß°ðSçÂÂ!ã¢ÚÁkWÄ×ßG“Á¢·à‡§aâH8á¢èµdn7o¤±[U/õÙ«ÌáR}Ø‹YÎa´*ÓþRYTì«å{y…Kù…lòù‚Ï©Í~1Õn¡67°’ò™É êp@a­/£Ù—*µ?W³Ïó.ϲ”ñÌå¾ãjŒZKævóØD:~°;ª±e&§[ßËoƒF7—m¿WmØTêèÅõ“àµNÐìAhÓ¼hy§^ðñKŸ«^†ôbµ‰má_]*7æ·Â‚~0ïuXò2¼Ó½–ÌíægCjíÊmWRbøÝAiã;ÀŠÞº-Yk= ˜ ­[–]¯V-ÈÉ.8$ìÍ£aÃø¨3¿šïÐæ˜O_ða~ÊwP¿ôSTët)|ôBeö :ŒÌbôøš6^Kævs¦A­>•Û®áo¼Ìÿ²¨Ë5œZ¢Ö’ŽÀ/ £N™õzâ#ò9tûw+WБ¼CriGKžç„¶ÕúЛ×x†¬§!ÍQl ÿƒ9™ï+µ_í8W™É¾f35Àþ¸ý*hÕ’¹Ýl–S+BHTõõåIðåt òxÉÚŽòï[f5Z5‚å Q±á3þ< ].*Õöyøñ øçÅPãèù^Q­ÓÍ0þšÊ½áUÐ+¾¹¡‚ë×vLôZ2·›¿Bf)©RŽëÖ5üÁ´¬]¹4jãÆÍнéÅò!|OòÑ!Ðz´Þ/zÛÊÊ﯂¾CªnAÚî’Óà§;¡û1ÑÛM±Û]¯YñSÄ&›µ"ÌÐ]5¢je¯p;}x+Aç†D’Å"‹Ÿ8¸Ê¶¤í.f}éÂlšFoP) ¯ðõäÛRlVþ>ï}ûí\?¹+á¥ßÂ…o'f\Aßî¯ãaâ[00Î{ÊÝð”òß§ÊÓ¨i„/p¥+žMVü¼ˆ+¯æ¡b sØÙðÉèªÝÆ´‰pêEÑÛí.Ûýd&Ö~×oWI׎ý™á<–DºŸ%¼ÇÑî&ÛÍjÎ¥aô†Úí5ü¬ŽpY¼¾¹úÞ.Ñ’µÝù7Ãþ º^ޤÊñP±DipÔiü¥ê¶Ñ+I÷4IÖvë\ õ$gÛJª†táj^:WÙ6þB*ë;ˆÛ}Ì+uõ6í™jð…yç—v¾ê´Ý-aÐÑÛIª:θ$L ôõ–º Õ÷®d@Itƒ’=„ÝÊ<*y6³vK]&%{ÕÏ ÿΤ¤3¸H’$I <ƒ‹$I’¤À3¸H’$I <ƒ‹$I’¤À3¸H’$I <ƒ‹$I’¤À3¸H’$I <ƒ‹$I’¤À3¸H’$I <ƒ‹$I’¤À3¸H’$I <ƒ‹$I’¤À3¸H’$I <ƒ‹$I’¤À3¸H’$I <ƒ‹$I’¤À3¸H’$I <ƒ‹$I’¤À3¸H’$I <ƒ‹$I’¤À3¸H’$I <ƒ‹$I’¤À3¸H’$I <ƒ‹$I’¤À3¸H’$I <ƒ‹$I’¤À3¸H’$I <ƒ‹$I’¤À3¸H’$I <ƒ‹$I’¤À3¸H’$I <ƒ‹$I’¤À3¸H’$I <ƒ‹$I’¤À3¸H’$I <ƒ‹$I’¤À3¸H’$I <ƒ‹$I’¤À3¸H’$I <ƒ‹$I’¤À3¸H’$I <ƒ‹$I’¤À3¸H’$I <ƒ‹$I’¤À3¸H’$I <ƒ‹$I’¤À3¸H’$I <ƒ‹$I’¤À3¸H’$I <ƒ‹$I’¤À3¸H’$I <ƒ‹$I’¤À3¸H’$I <ƒ‹$I’¤À3¸H’$I <ƒ‹$I’¤À3¸H’$I <ƒ‹$I’¤À3¸H’$I <ƒ‹$I’¤À3¸H’$I <ƒ‹$I’¤À3¸H’$I <ƒ‹$I’¤À3¸H’$I <ƒ‹$I’¤À3¸H’$I <ƒ‹$I’¤À3¸H’$I <ƒ‹$I’¤À3¸H’$I ¼´d@’$IÁóÓ¢,þ~N‰e­2¤QÓ–I‘ötI’$•q`‡Ît<úÄ˶nÙ”¤ÑHI’$E°`Îg\Žèvj’F¤=ÁE’$Ie8㢠1¸H’$© g\4I’$•ጋ‚Æà"I’¤2œqQÐ\$I’T†3. ƒ‹$I’ÊpÆEAcp‘$IRθ(h .’$I*ÃÁE’$Ie8㢠1¸H’$© g\4I’$•ጋ‚Æà"I’¤2œqQÐ\$I’T†3. š¸‚K("//¯àI8RBU1&©z ç> …|H’ª'g\4q—&M³bÅÊ‚'Y+¡ö>U1&©zËZYø°I“Æå6 ¥¤’"eWŒJªÖòJI-·žJ!œöû4)ἂ×NyœqQÐÄ\Z·jU\6-2¸H‘lZTø°u«Vå6Û»^VnÌbjï‚AIÕÛJ²Ø»^ƒrë ÷®KÖÊM¾-IqÈZYðÚ)3. š¸‚K¯“Oä³ÏgóŒÓùÛ]·ÇÔUóæÍxlÔãô|5¯lîIWšVÕ¨¥jçV2°Î<6êIš7oµ}óæÍxæá§¹´ÿeô|e3M»î‚AJÕÌÊOàƒuõðÓQ_Wθ(hRŽëÖ5üÁ´¬]¹4®Ãá0÷Þ÷|ø1òóó«hxRõ‘ššÊŸþp-7ßt))ñ³2ùý©\sù5ܘիóÚ‘Q¹ï¤ÝB¹<úŽû3æðøˆÇ9éÄããZòûSzýU´–E»ßç‘–QE•ª‘Ü,øî‰sÈ`ø#OÅôºªU»µë–¼ ùÖ-›¨U»^U S*T<›¬øyW^3ŒÐ~­ZÞ1ä²ËÉÚ¼1®ÎRRR8®G7ztïÆüù øå—副TmÙùž~ò1.8ÿ¼¸C ÀþûgÒ·ÿéüsþ‡üÏÊ÷YC6µòSH#•Ú¤‘êÉûÚåf9Y|ÞNŸÏ嵦³µ[+žyþ:Ñ1îþöß?“3úœÁ£0ùÖUd¯”Zù¤¦AZm¨à>–Òn#œYËaÍ70ÿét¦_^‹Ì­Ç0ú©gc~]ý¸`6ŸNÀ¼o?+üÉÙº…}Zµ­âÑK”È&›7­gü„·+?ãR\8fúÇŸðæ„I|úÙçü²|9«V­&/Ï$µû …Bì½wöiÞœ£êÂé}{ÓíØ®• ,‘Ì™ûã_Ïä7ßaéŠå¬Ü´ž¼°³šÚ}…RRiZ¯!-›5ç¤ÓO¡ß€~^‘/sæ~ÇØ7ß`Òûùå畬[¹‰ü¼pBú–‚,5”Â^Më±Ï¾Mé}búŸ~fܯ+g\”L‘f\\$I’´{ùiÑÏqQÒD .H/I’¤2¼ª˜‚Æà"I’¤2¼ª˜‚Æà"I’¤2œqQÐ\$I’T†3. ƒ‹$I’ÊpÆEAcp‘$IRθ(h .’$I*ÃÁE’$Ie8㢠1¸H’$© g\4I’$•ጋ‚Æà"I’¤2œqQÐT*¸dee%zU"###¦vÕe$I’%Ú礭[6E *µj׫ª!IªTpY¶t Ó§Meù/Ë=žJ ±w³ftë~'IAwpYñË2Ze¶%oÛ6ÂáüªSB´ÊlÊW^ˆÚ®ºì$IR¢Äú9I ’¸ƒK^~©©ilËÙZãI˜”Ô4òòó¢¶«.û#I’öl_~ùÇtëFvÖ–î+ÖÏIRTò„Žpàg'â_ð÷G’$íÙv|VIÄg?÷¨:JØ™èµj×MTWqÛºåפm[’$IRÕ«|p ‡K=‡§¸“É_ZuÈÙº™#:u*5žpäÊo{I’¤]* aó™ÅÏ=ª†*\"ýsÇýë„J¦2òžÌcúô#Ž'¾|%IR…Ký)íi*\ÂáÈI=Yé=ÒxâKyû#I’;>«8ã¢=TjåW GøI†âß?ìÌx"­ÿÏÏ®Ôzu4JØüñÇüñÇŸÝñ‡¨mV¯^ÅYç dõêU1ö'U•šq)ïŸ{²^‘ÆÏX"­_¯AãrÛoÚ°¦ÜZ~8¿Òþ ‘$Iå —ú³´-YYœ;è>ÿ|&纀7Ç¥vFF…}IÕI¥/‡¼[*a6­_]ø¸^Ã&%žWÔ÷ø¯_‹yÛáü,¾žù-u3;FíW’$íá*8T,//!C.çóÏgðùç32är^ü×hB¡Pù}IÕÈN*¶g«×° ›~à ‡´¡e§[ —ÕkؤD»ÛŸú{5¥eûüý­Ÿ —çm]Ìàž'óêdzøï=•Xç«Qæ°¶­iØ´5GŸ~_ÕïŒ$IªÖ†Ýt3&N*±lÂÄI »éæ$HJ¼Ê_U¬TR,ÜÉáTbÛ·[f| ò—‘ÚûÙBÕ‘3.;á„KzÓ°f ömY;jÛƒ{ÿ…­ëß/|þ×±K¸½_Ë‚')5J´=¥ym^yg¿æùKE’$I‚ÊžœVzïäŒKyû­¿æé)þ=d­ú”¿Üø0«j4"oåW„ós k_þºƒk¥•XÇãLyÛ¯¿…ƒþyæ®ìÑ,æ}‘$I»§ŸñyËUGθT¡kOÄ!7>Á?‡?Îÿ=vi‰ÚiÌÍÚq½š ;rïè |úÌn½à¢ˆm$I’vøÓ°›hШi™Ÿ? »)ÙC“&qW þg×Ú±Ý_U¬l“8®¢¶}ùôµÙô%‡m¿þÄÝC§qz£Z…µ?÷lÎí/}ϘKÚÎÛ±¿z-&Û:¯ü!I’(ø¼BÄÏ÷ß{¿,û… “Þ*\Ö·÷iÜï=Áº¬´*r~ŒËv…½K,íãÙßË_}àRžÞ…ëêÈÝ/¾ÊiOõ/¬õñoÞtgM9ŒÌ†5K¬÷@ÿ<øÙPw_®¸ï9¯µ.I’*¼Kj(ÄÈOsFÿ³ù|æt9²3#Gù„óª´+“$IJ¦Š«l_RuRùCÅJ%õMëW³yÓz>œ:ygÇ”ñÄýM‚ß-ÈÚ¼…m9ÙU1ž„Y±üšíÓ"j»ê²?’$I‰ëç$)Hâ.=O8™O=Èñ'œÌÞMš)U0¬fÕêÕLûp2}Nµuð÷G’$)Qâûœ$IÜÁ¥UëLNîÕ‡éÓ¦²jÅ òòóªb\•J ±w³fœÜ«­ZgFmôý‘$IJ”x?'IAR©“óít‡v:*ÑcI¸¬ÍcjW]öG’$)Qbýœ$E¥‚Ëîö}wÛI’$iw“šìH’$IR4I’$Igp‘$I’xI’$Igp‘$I’xI’$Igp‘$I’xI’$Igp‘$I’xI’$Igp‘$I’xI’$Igp‘$I’xI’$Igp‘$I’xI’$IWíƒKãf­’=I’$IU,­2+M›>ƒ3Ï÷zoŒy…îÝŽ‰XÛ/ó2;•ö9¬MmÍíü™CêVjxåºò¬ãyzÌÔ¨Ë$I’$K¥f\ºw;†7ƼBãÆ™2e áp¸ÜŸ)S¦Ð¸qã C À¯YÙL}þIž>‚¿¶’³ÏzªR;”½noŒÇ'ßo,S{uú1-«¨I’$I»^¥ëÞížñçœsS§Fž±˜:u*çœsÏŽxªÂÐRZÛ~w±vö%–Ý|d{š4ß6Næw–E\oëª÷èÕówŒ4–Á'uåá/WÖvRÖ¸Y«K/«¨I’$IɱSç¸T^*ZÂá­¤¦5(±ìÞ™sY½|1ï9’‡®½5âzc.ÿ3˜ø:#ŸÁägûðÈ•ÏÖÖ¬ø©ðÏâK/«¨I’$IɱÓ'çG /• -áí~ÿúí4ízCÄ6úg²7L‰X¾ìÎiY€}zþ™ÍË^ŒyÛ‰ìC’$IRb%äì÷âáåºë®ãÑG­ÔLK×þWÐiï\V¥d2æù³ —o]ý·ßü8«Ó‘·ò+ÂùÛ"®?÷§Ó¸YQÐHM«÷¾$¢I’$I‰•°Ëví/gž50ê‰øåùtì3—_ßë"º½8ƒ‹;4ä×¥£wdäCÅŽ®_ƒ§fÏ£Ez€-?m.Ó&7 i)å/‹¥I’$I»VBïãÒ½Û1ü¼xA¥BKE>^“Mý”mlÛ¼”¿ýîcúìU«°Ö¶Vÿœ½€;/íÀþù5yÙ?qñÙ×–è§Cí4FÎZ]á²h}H’$IÚõ{£ V­ZÑÅé¥û.áü3åuàÎçþÍiÏœ[XqÛ@y4—,\È7½ÌI7åä~[¨“ŸBï{.ÑÏð;Î¥_Ÿ£øßFXô͘ˆË¢õ!I’$i×K9®[×ðÓf°våÒdE’$IרiËdA{€âÙdÅÏ‹¸òša‰=TL’$I’ª‚ÁE’$IRà\$I’$žÁE’$IRàÅuU±wÇ¿TUã$IRôê7(ÙCb÷åÏ»ô†lv¦}$º™áï#(û²;õáÿ—`ö‘ÿ/˜ý±ŸèÝøÿ«Zõãÿ¯jÕÏË#HH?Ò®à¡b’$I’Ïà"I’$)ð .’$I’Ïà"I’$)ð .’$I’Ïà"I’$)ð .’$I’Ïà"I’$)ð .’$I’Ïà"I’$)ð .’$I’Ïà"I’$)ð .’$I’Ïà"I’$)ð .’$I’Ïà"I’$)ð .’$I’Ïà"I’$)ð .’$I’/-ÞfVÅ($I’$©θH’$I <ƒ‹$I’¤À3¸H’$I <ƒ‹$I’¤À3¸H’$I <ƒ‹$I’¤À3¸H’$I <ƒ‹$I’¤À3¸H’$I <ƒ‹$I’¤À3¸H’$I <ƒ‹$I’¤À3¸H’$I <ƒ‹$I’¤À3¸H’$I <ƒ‹$I’¤À3¸H’$I <ƒ‹$I’¤À3¸H’$I ¼´xW˜Y£$IÒ.×0ÙâàŒ‹$I’¤À3¸H’$I <ƒ‹$I’¤À3¸H’$I <ƒ‹$I’¤À3¸H’$I <ƒ‹$I’¤À3¸H’$I <ƒ‹$I’¤À3¸H’$I <ƒ‹$I’¤À3¸H’$I <ƒ‹$I’¤À3¸H’$I <ƒ‹$I’¤À3¸H’$I <ƒ‹$I’¤À3¸H’$I <ƒ‹$I’¤ÀK‹w…™U1 I’$ír''{Rœq‘$I’xI’$Igp‘$I’xI’$Igp‘$I’xI’$Igp‘$I’xI’$Igp‘$I’xI’$Igp‘$I’xI’$Igp‘$I’xI’$Igp‘$I’xI’$Igp‘$I’xI’$Igp‘$I’xiñ®0³*F!I’¤]îäd@Šƒ3.’$I’Ïà"I’$)ð .’$I’Ïà"I’$)ð .’$I’Ïà"I’$)ð .’$I’Ïà"I’$)ð .’$I’Ïà"I’$)ð .’$I’Ïà"I’$)ð .’$I’Ïà"I’$)ð .’$I’Ïà"I’$)ð .’$I’Ïà"I’$)ð .’$I’/-ÞfVÅ($I’$©θH’$I <ƒ‹$I’¤À3¸H’$I <ƒ‹$I’¤À3¸H’$I <ƒ‹$I’¤À3¸H’$I <ƒ‹$I’¤À3¸H’$I <ƒ‹$I’¤À3¸H’$I <ƒ‹$I’¤À3¸H’$I <ƒ‹$I’¤À3¸H’$I <ƒ‹$I’¤À3¸H’$I <ƒ‹$I’¤À3¸H’$I ¼”ãºu 0mkW.ÚøÝñ/í‚!I’$iWéÕoP\í5mYE#‘ŠÏ&+~^Ä•× #-žâý‡-I’$I‰à¡b’$I’Ïà"I’$)ð .’$I’Ïà"I’$)0¶nÙqy\'çK’$iÏË•h¥ªP©à’•••èqH’$iÊÈÈHö¤¸T*¸,[º„éÓ¦²ü—e‰$I’ªH(5ÄÞ͚ѭûñ´=ðàdGŠKÜÁå§%‹xïÝIœ{þ`öks0¡G›I’$UùùylܰŽÇ¼‡þgÕ¤UëÌdIŠYÜ©ãƒ)ï1ðü‹É< ùy¹änË®ŠqI’$© Ô­[ÓÏ8›¦¼Ç…ƒ/Köp¤˜Å\Vü²ŒV™mÉÛ¶p8¿*Æ$ýÿöî<.ªªàøgf†M@@·,ÜJ³ÇÇ-—ÜR+3ËÒÜ·ÜMl5­ÜÍ|rOÑ2³Å%ëy´2[Ììgæ‚f¹oˆ *Ê:ÛýýŽ( 40$ß÷ëukî½çžó=w./Ïwî=3B!„(EÕÃ#IZÿ±«Ã¢XЏX¬Ôj-&cviÄ#„B! pà@,5oNNVæß®K¥Öb±Zœ•e§„T¹Û"„BQ†n޽œ1“qœë³®sb÷§ûy9Ùש×âyuäê°þdf½B!„eäÏ–påÔ.š¶zµ5‡½»7áRðƺ:´r¯ä‰‹¢81 !„BQ8œ3“qœËœþm=ÿêЋë'¿E_)˜ú[²oó4ÂtB-ßÖ[¨’?*†\ðB!„e忨Ë9c0ǹŒJ…ÕlF­Ñ‘žxˆÀúµñõ äįS©z§¾OóG?‘$¦%;# ¥~½{ùT&=íré6$íZLç~3¹äþñ‡W•z{eÕ/!„BÜe”;þ_€””† ÁŠåK (º.µÎ ÒnIDATt'.¤P»š‹F<àÚ€ÊP䃽øsÿv5kKfb,×âöP§~SvWˆS&™×ãðòtu¨åN‰—ܼ%ÿß!4„yÇÎÑÐÓ €¬ÔÿR%²?kO_ ‡¿SÆ!ªÖOê…ïh§ôÿª†õy›ÖK~fVëêevIîV !„¢¸nÝo)x‘™•Å“½ŸaïÞ}<Ùû¶üïK<ÜÝíÔåڱȉ éLö0 0uù.¥¬5î2‰À®íëiÚ¢3šœâ.íÄ·†]žÎo?~MZÊI\  .ñ‘JþeXíJ|”˜i[?ûùB|~Ö¶-3ñc¼ªõ³­ç¤cóú/Ø}<íöúì´áÌÅœu‚íWs˜Ñ©:O}Ñ19c)ƒ~É"‹,²È"‹,wéBÁÛ-f  fïÞ}ìÝ»c1[ ¯K”=•ŠÆ]£yà±iüúÃFŽ$îBí‘M‡£Q2ðøòqíFqæÕ)®Ž´Ü)aâRð_@Ñìû.Á¶þñÂã´y«=Ç®³mKøîÕº6².m£õ¿ñÅ×›èÓ²ïìK&ï_Ó+“^bPŸ´{öu»í‚B쪗©_³:¾Uªó`×Ù·í›T?œJ~„Öû7³¿·m÷«ú•ýñöõw ¦;%‡uï¾Ã”É£ùWÔƒLXü= `É>Ëø§ž`ððáôè1‚CÆÛúuóuaå¼}ý¹~fmî‹ ´ÑKEöQYd‘EYd© n1z2[¿þ†¼¶~ý /FO.¢.á*‘Qx×Ñj ñ¿î#ëü>ötZ ;.Q/0˜„µk‰;º«ÅìêPËÏúQ ø6Šªm;rþù(ÃêbʈeÉ%  ^BçéQìO•ÆžnÛpžûÞ EQ6>ÿ"¿û…'«{¿}4 zŸ ^¶Õ÷ÊÌéxjTü:¯ ]ÆüÈþ¥míÆÓ륖üúíkVÎßœC§™ýßxZˆ&úÔZ®]I¦’_ ×®$ÛŽ)*¦¼öÏìAÂ3Ÿ2-¼¯¼Ë€‰‡P…m#{’Òwk­ÎÅ]ãiÛ+}Þ=ß¹+ªÜ·éøbß2’Í(ŠRh…Bq—Srð*èßÿùóæ0Þ;‡å/_^Æå#в—šø;»·>Oí{CáêïÇ9?á<Á?|==8|ñ<>ëxr)í™EýæÓ¨V«««Ãv9§~]gPˆ !„¢‚°óÙñÜY3HLHdë7·>ÔìÒ©#sgÍ(x¼P†cˆÚÕ¼ üÊãqϵbß©«ìü¿CSZÜõΜ‹+ö1¥%tüöÐäéŽd¤|„bÍû¡¹ •Ê ³97c,·³<Ô¢1÷6|?~ÿšo>˜E͆C¨Óx8jMé$XåIÉ'çÛ¹â+ÕȱÅÝxxÕâÛÊÜ7áöÔC·oCmÛ¿´‰vÑiÓ9«Š.sÙöy‡=΄‘ãPYÓ¸h‰à¿Ë›Ûm`^–Ìÿý xUcÈœme7ÌH¯®MãY›·Ö­§ã²ÇòÕ“w½°˜îÔröWì7‚'ûûâcºHå–PPè´b [žÃÐý‰OôfýºŽ¶:VM}Š^]Ñÿ\\¡å :Çöú(„Bˆ»ß{þû¯Ö¨‰Y¹Œn=z²wß~š_š·mÏ= `˧‹¨Óx¸‹{P6T-›7S~Þµ›Ë—â:`îÌ©L›¹¬Œk¥šB!„¸)öà!Z´jCzÚe»eRRS>r4Ë–,$Àßßn¹ŒŒ ¾;ƒI/O-…H‹ÖñµLÖŽm“ÙµûP™&.åÑ»ÞÄ ;Bh˜7™W¿E±ªñððÆàˆVž˜­Ád¦Ä7 µÆ ­ØóÓf2!4j=×Õ](UIÎ2lÔ‹%Ÿã"Ÿö !„B”%Ï={üý+³þ³‹,W.Æq7&ã ‰ìÂÞ6Q·ª´X•lŒF3zw‹µYWñ®\ «r/—Oñ'íáü¹Ú<ãêðËÌߘã"WšB!D™¹9örÆÌEã8‹Å‚F“;ñ<,Ð@‹{üøõ·¼a)¨Të'¬V+î>÷¢ÕU%)þ>¾ ɹþf“…œÌ«T ˆ +-ÍÕSxvÆh®ÆÞ븟ɿ»­G£-½ù7åMÅû5!„Bá7“–ÚÕ¼0}‹íõM)i±Z­ddd’™™»ø† ãðþ·iÛ­æì3¨õ2ÓS1xœÆ;°Éçÿ¢Wømç·¤gyÞdiéVLÖt¼¼<+Ĺ+QâbµZ±˜ÍÎŽE!„BØà_™ìÌt§ŒÁ\9ŽS…÷†5¶}qEpßIQ[Â’žžNFFÙ– r”*=ð=÷4îNFêÜ+Õ$íJ:ÞU"ÐyÙ¶q ÙÚ‡ð @FFûÞjµ OOO×vª ;qѨ5X¬fŒÆâýâ¨B!„(9ÿʾ\»šâ”º²s²Ð¨5N©«¸T*U…LVòÊ{T*ÜX7àäñ×ñö=Ipõè Á˜.þÉž×pâD2VŸçñöo*µíîîÿ*d(AâBVF&&cNiÄ#„B!JYÒÅD‚‚C\F…æéé‰V«E­V£ÑjÑétx¸»“á>ƒƒ{&¢÷è€1ë7þø=•G|k¿ŠÞÝwƒƒ»www|}|ðòò´=‚w·+vâÒªM;V.›Oë6í *vÆ,„BñÏ¡œ’®?йëc®¦ÂÓëõê±Z­˜L&²³s0™B¨°œ=?Á; >á÷ÏǧJ#Ü´n¸éÜ0èõètz´ZM…»sUìÄ¥zX8íÚwæ×];HNJÂbµ”F\B!„ÂÉ4j AA´kß™êaá®GÜ V«Ñëõèõ¹|´¤v½£.Žªü)Ñäü¨FM‰jÔÔÙ±!„Bˆ2"?&.þiJ”¸È….„B!„(KjW „B!„E‘ÄE!„BQîIâ"„B!„(÷$qB!„B”{%šœ/„B!*¦SGc]‚¸ËùùQ908ßö—ƒÿ(õ€„B!Ä?QÅø•vá:é )Ž'.-nWê !„B!DA®]¾”o[‰KA…B!„ÂUdr¾B!„¢Ü“ÄE!„BQîýíÄ¥gï¾Îˆã«<öß•1•Çó!„B!þùú:äŒ ûX¶r#N$ òªB«nýÒ5ª´c+S¡ÅuíÔ/,Œù’Ãç’°(nÕéÆÂ©¹:,‡–Dmüì£2ŒD!„Bü]E&.¦ô?ˆ~u5FŽeÔk5ɾt‚–í êMé ì=x¿ˆúÜâá¤:ËWKBQŒœ=yCP¸Óê|û­•D ƒèf¸©œS§³Þ?GêÉ›œôìÝ×iÉJi\ƒB!„¢pE&.¿¿ƒÿ3¯ð؃!èƒë2jjÝÛÊl]9õ?ÆêF¿èÉ´«á €Õ”LÌ;«Èôö!í²Š¾“aйïÌw1÷³$gBµº]XðÆÓby)ú3ªÝÄá¥1t›6'jV²{Ì Cø:5¿º ™D¯ûýKÔÇÂbÍ«°r={÷eí{£˜:-†DMKÖ,,øn€½˜{÷ÄÈN¡|ðÍŒ†@žý*=øÚÚÿê<‚Z<‚á§/ìžâžEÎMjœ´(v|¹…óW“Ø¿ç8õºöcH×ú€ýë¡°÷ï©ç&0uP­ýž,ÏFNDÝ”¼>÷S®¸UቑÑ<å[d=Ž0ebØÄݬZ64϶Ãô·ƒOV¼@ÏÞ}éôp[²²¯páš#'¢†^ã”¶…B!„}6oeèС\¾Ÿo_‘s\6»Ê³­‚nßxÇ@6!¼KV¯ä•'CX5ësÛöýKf‘Övc_ÎèžZf-Øëо髷3ä­¬_·Ò–´ìz÷Ÿ>…‰cÇ1wb¾X°­ÐØ-^Á†O×0c@m6-^Sâ>k^E•Û³_ËëÿY»SŸ*vÌfãE΄´géꦮdž…Ûöý3—œnèÛ½½O´[wQmÜ)zTGÞ˜½†C²òí;¹~:©Í;ð\ÿ!Ìž3’Ë'Rlûì]…½S2ßeÖcþûKy£Oÿ†#×"™»l¯?ÉgóW:T#Ü<0âÞãü/õV¿®ÝBhÇ®¶õ§‡ôg̸ ŒoŸÅŒy{œÖ¶B!„°oèСv÷™¸ÄåX©UÀÝ…¼·Â]£¥N›ä\ùŶýÓý©<ÝÈŸÚݹú×—ík\YÇÎØcdY•ÛÚÙšÚ€–îø×šìÔ‹ €j<)ã`‰ûXX¬Å)×à‘ûñrÓâï¯/QÌý¾ƒVC¦Ï`º¾Ï¶ý“ÝÉ<û`@îŠÊñ_³-ê¼6}†IÍu¼?õe¾ŠM¾mßšoÎÒÆß€›W“Ç=lÛgïz(êýÛµ1Žðû»s=~ÍšD¢Óh©Õ¢¦Ì?®Ç‡ å§ÚÖmާÇ#!¶uoMnæؤWnvjÛB!„¢`—/Åx·xT,ÐMM¢ÉB¨®è±J¥GQŒ¶õó9V‚ÝrSk+c1&8´oè¬Wùèý5 ùr3}ÆL¤Ë½¹Å%ÿDÏÞ·Š*Án,ÆkÇYóio¬WO£(–÷±°X‹SÎOSøDGcV©ÝQ“mýT¶cïOqÚ¸)âá>,lù(Û×-bIâÓŒì À±L3¾EôçÎë¡8ïßíõèPëß®'/­{úûÍ ÅÜ­Šÿ^‰bv%]¾r· ,¦$§¶-„B!nÉûxXaŠ™¸t­êÁºƒWˆnPì ªëÕ$›-TuÓ`1% Ñ…8´ÏÍ+œ¦Ðý¯-¼0g>]>x€ºZÆ®X‰¿&÷FQNr¶Ý¶—LžË}// C˜'Y)ÛÙý‡%îca±–¤œ3bÎ+X§&Îh!R_tòR’6TÚJ´v ï÷ÌÈ΋Ó«‰Ë±î@›7çý+‹zîéó,K÷_fhÃX[w,°ŒÙF_Ýém !„Bˆ\yû[еÕ…ýïÍá‡?0Y,$û?f,øÁ¡ zEù±ñÄuRlÂ/êq‡öÝäŠbN·­÷ëÆÒm§Ü ésÞ\b·í#×Lx`Ɯº÷ŽÐÔ+ÿ§éŽö±°Xƒu¶»æpŸ Sœ˜óz:ʵ;P¬ùç£üÝ6«‘¿~ú­g-Û¶~-‚XµýÜF>›ûU‘õçý+‹z´ú<šKÊÞŸéÞñö$Ó|ã)Å„_>#àþžNo[!„BäÊûxØßzT̻ƣÌnfñ²é,MÉÀ'¨m»?ëPMÆN`Ïœå¼÷£7)—ÝymòýíÛøæd6K÷Êt4Á¶½ÖS¯Ð(æ=¢_ÏÆ ¨h:p¸Ý¶_ÜéoŒg©!„ç£_¢ÉÖ·KÜÇÂbЧ%ÓßË#¬.´œ#Šs^MÇMbÏÌE¼y¨U=ÝœÖÆW3^á“?/`AGõº™4ýÖùŽ8…£ï/fú|/<ÍWðŠ*ú÷]Šóþ•E=aêñÎ+gˆn{·bÅjL™©$dWaÊÄ¥Ò¶B!DEeïñ°ÂSµlÞLùy×n»™w³¬K?2eGs{…Û¶9ó7_„B!D~•«„¹wXì½¾)éÂY†z±è;.BÜ­ŒéIlXôOFÏsu(B!„JÞÄÄÞë;9ÇEˆ»Õ€ñs±´G3ç !„Bˆ’Û°y«íŽŠ#¯ï$Š !„B!J#‡É£bB!„B—räñ0yTL!„Bñ&‰‹B!„¢Ü“ÄE!„BQîÙæ¸$]8ëÂ0„B!„Â>UËæÍW!„B!„…ù*ŒøµIEND®B`‚agave-0.4.7/help/C/figures/complements.png0000644000175000017500000002046411224443302015341 00000000000000‰PNG  IHDR––<qâbKGDÿÿÿ ½§“tIME×#v # IDATxœí{”Å}ï?ÕݳiK!YXD»FG¬PbC|XÙ#Gäb[¼¤L ØçÚ!!Ä$Ø8¶sbcû^á`+A¼”‹ï5œÃcE®ÁX Ú]ty Ð5Hz\,¤}hwfºî=³ÛÓSU]ÝóØÙõ~uêôcF;U=Ÿùþ~US]SšÒ”¦4¥)MiJSšÒ”¦4¥)MiJU•ï 4’ÖJÜ`Næ:p¢ 33ÐæÀô ´eú=p ¿ oOƒ}'ÀKùñnC£è·¬5’…œáÂ:<èpƒí\p¯PTûŠsy¸°3;]ØéÁŽfxñ"Áîqiè8ê·¬s% š¡Ë…U.¬ò`~8â3ÁçÀž t»ÐíÀ–óoÔ©éã¦É –»BrvÖ8p‘KªR¥Ð…¶;<ø© ¿ÏNÆ:©Àz¯d¥€õ\æÂ,Í›j‰í¹¸çƇ\¸?÷œ!ØZ³‹SgM°N9Uò© ¬w ÎT)PqU°¢“ÝÓ?Z øu ®UÝ4aÁ:I²PÀ_ºpµÍá7É2Ù¶†)éól!‹ž öàn¾yòMüñ®@R'Y âVjŽ‹͹jIDŠêœ ¸øªcš|ØyHòã#’ÅU®bÍ5aÀj•Ìo‘Üåà ®”à…ÁÑÁ¥+X>/úT€˜Šíÿq(‡ÍOÀ•>¼pTr× d~ŲNš`µ!ùÆìôáÓE Â © Òí×Ê¥tŠs*Õ¾S¾ï9ðivf%ß’¶:U?µ,Ùºéíç& ­*ÒBeãN¶Jêb)áB@«7á³C³6a5ëªF«ÙöˆÁb"Tási  ˰p¸‹žKW4ªàr‚ÊÍCò à1ùí1Õ5Xrֵȷƒ{~éåtJàRA* T:ÀTÒÞ·…KçXQ "Àç|$ÛåÛ\«©æ¸©‘ÀjCžr¸w‚ÓR~I$¢“‹ÙôuP% ‡* Âû6½A“;•€§n| yî”oq<Ð8¹Wc€%ž‰|O8ëÔ—5Þµ¢û¶Ð¡Ø'²…LD¶Ñs:¸là1=GÙ¸±²ŽazäëœIhüÁ’‹×‚û ˆö8¨Š®‘©Äm…·¶Š‚fëR:ðT°iÜ*ZÚgä®ñOìÇ,<ãËà<Ît3Pnɱɑt%Mh oË+_¾µ }qŸX·Ê;Ÿä‹|YʲT°n/°šËï÷oÁ6N•$$ª€²q4û&¥É­T=ÁDPÙäoÙÎ}òEšbšQXÇ!ß÷8—–:’ª¨\+ØÚ†Á¤=D"ûqJÓŒçf%.u«¼¦_Ê È§9β9US½Áš>aÙÌĪ XòªNð6‚+ÌpÄåX¶çƒ·%.2˜zŒIÇ³âÆ¯’8T¸EÚ¼ÉÔûKâVcç>å&:5M¬Hµë8÷ƒ;­:n71öRáZ6P™àŠ“íð‚ ¨Qg+º•ªò•;” ¼iä¸_þSõP«–¼öà.® Lñϳq-Tq¹Ø )¤Ë[ª WŽÅøü@ù^V ê‚%?w-¸WÔÆ¥¼˜ÇÇ>ÿ¦÷$IBo£¤‰º®öÖùS.æñtå ù߸ƲÉVª&Xíà|»z°Ä¤/¦Þ·®ZäXqC %=ÁôŽS}îwTošsõ†ä ßÙZ>l>·¶„ž£ý£Š­®”úOž|Ù›,|œ´‡X)PenU‹üI:UŸ®±ãV|¾üAùû\Õq,yÓ%à]P™#Eï ?Gu³ÙÑ|„òzª\K—cÙ±Š[]ŽeZ àá„]ç:Åu¢¨#EŸ—ÜÑ.ßàM“©`µ÷v™@Ñ£»=z®4Û<Ë4ü`RÒáen¥{³uD¡Ò¢8Ÿ”·V>w¾r°ä­_wž}.¥Û7ý?ˆú"#c[6€UÚ+Œ*|,¢•Šs­8Ç29’ TA™|‰ UXò«óÀý¼]Rm sqËk˜œÍô·J]Ë”È'í` ˜)¿*sÙ:–éoÙAU¼0Ÿ—ÉcÙ@5Z³hÂnãZ6€ÅÁiú?å^)¿~•›Jë‹àz¥N¥s®°c…ÃçuŶ(ÓpDtø!§qý¸ú%<íCŸ;—†ß̄‹LN0GÀét8Ð)à\'XaÙèTÚh[’äX¦î°*(=öðùkà*R(.Ψ%¿»Ø ¾W>vmêwéü8Iö¾ÊYŶXFBÛ dðišKËØÔå`ë6A6Í%yN’9 +§ÁÇša] ̉¼M@Æ/©RiU‹EÕ´$®£³dSìW½…’>â{ÉKéX™/P…Jµ¯ËµÒº–M¾¥v,È“ÃÇeô½ÙâÂíï‚ÇÓÂÖïãiàéç$7eà|ntƒÕšGC¡•[é 2%å¶neέ¢û’/,—Hik.ò®Ý ›Õ#@q •[©²Í¸AœðUÏ*JÔ±†<ò[2ðÅ!Á/S´=±þŸäýÍðµfèòò%UÑ;VعÂMÕ¹UñØ&i·u¬±·rÁB±}IÚôÈYºW6»W’d>nôNåÿ%å Œ\€øE_‚öÕ]ò?è$ËcŒ0Û˜¼§í ¦IÖõpÂåd±™¼MÛìK>|öTaÇ*«\«|ÔMTÑ­Ló‚+kžx¸ñTCC ÞGŸÜÂdyŠŽ7Be3v¥Ê.LeTñxYÎ&R‰U‚äݹHÝë³MÚÓ$çM¡¢;ß>7MC<ÞðP%ºè#ÇÇa¤l":šU¾œ_™'—T3çŠË·T©ìˆ;/³mx#JþûÉqilÒ^I^eŸS©‹àTñDüï-ZæXM]…¦J8Ï2AfXñ‹—â6ZÊò±}0r][Xy®c˜’c®5XÕîýÅÃÕlŒkŠe(Œ.ê¡›¾7¢žd°³$wŠ”æÐ¶h¹±á»¶4®Äu¼Ã72 £%úPÜØ6ƒªq#ôªŽ÷Ì«¬ÚbÕb¹õMóãCašð¨úH©º6Ú¸q³Uc'Šä­t“¥+‘S…÷Óöüìʱ•wǵA ¿Žçý!¹Ü,kßËó¯Íç½ !㥪IòÐè*®X°\áyòæ¸FN8 q3yž)K)U—¢¡Ï²d}xiˆùËZ¹qûó<øp~üu´ jÇÊd~I6»’¥KGر#C.'hÊÀÒvX±:Cg,ûhkMXC`ªcÕ×>£W¼ñ¹™ß¥‰)ùyž$Ï*­[©À29UB úó°}úƒ²m^8#@ÔS©oö®àÉ"§SÂr‚ýEè{x«ƒÝ9ÀÁðc*°Î~Ák¯Ái§%»ûöAOϘ»õöÀë»AJ˜9#€m¸Å°äTð„â*èÀ*)ßF\üçÉ*8±$?Á·Èóg±Ã ŠK—óaÇ ôôCï`Sß öƒ7ý4Ëe$à,`nÂú½üN°ûàÙðc*°.Eˆûd2 _J¡#GÈFë…—^†lZša颴Îö`{æ"˜ÖD<`¹sø‹Ê+ظ’åø<Ô`žï/8ÐôöùÐ1 ؼW.T¨ª²tòÐØÆåÀáÇT9Ö©Ìž%“©Îʺ3fÀ?”Ñò¶žž±PzßcÐ?® § uvÀòö ÌšAèjöCÛV¥~¬·øOŽg€<Ó‹M?4€Ó;}ýH;‡ƒÙ&`ð> ×@´h’µ©^0²`Aô1Xó˜?¿65­QœuVPŠ çmÛ¶aôöûàà¡àñs °µÃ»çì⚯χäwL$‰mÌ¿k;ß<Æò"Donû˜]ȇÖHXA!’Õ^ð,^óØýú¿pá…y¤” Qöì‘üìg’¯~UrñÅ’…ï)í¸î¿Õò‡\ø7Bm\(ƒü*ÈŸÜ„Ÿ†(fù/Ñ6”;–çĬYõ_¯yó‚òÑŽ;|8p¶®.pœEä­æžM9°(l!p¢™5 eÕÐ,p<8)Ú5/Èugqâ‰õ©UZÍœ çþpžlÖzºìDQ¶~òç3Ç»21:paVô¼Ê™¦ÑÚZûUC»vå z½“M¯ïÂn ðx«@Ê´èùr°ÇA¤»ó¾îêï82ÞÕ¨Žôw ,U¸½¥Œ£r°òùę́ËDU®¡!‡±Å:&“†êßÁK¥@>X(¥D¢òSšxR%ï™ Ñ¥µÕGñi™šÞŒ7¼Ž®"j”ƒåû>²û·aµµAu¾h4ͨxuÙ:©ð­RÙ‡@ ª}ª¡övHøMù„Ðií…5Ú]R£çUÉû!Þ~»æªH‡ÃSOÁO¸d2+Ç»:ÕVV>îSÀáñ®LŒÞòp(z¾|ä=—ÛÏ¡C>’ØïÝ;6 §§zzáÿ†¾"ôýWǯrµ‘¯…[£Xˆ`9rtfB'T¶¤quüìžW} ý6û÷ç ö¿\¢ð—Ð==°­0ÍæPaþØ) `q'üÁÃIïîå+×|Ø=Ù¾ÎÈCñû«…wqêÿx“áå} ²AÞ øòd6¢0 f 8Ó¤¼Zi0#¿,Ä©FB¿Àœ9·±íÀ*N›éí-LéƒíÛa ?˜6óžèè @Z¼<(3BËFøô“áD~WT¼Äcƒ+#9û7 §~ˆ,½ ÐË }…²“‘`Ú ‚e@g¶å¦ÍÔ°‚'Áȸøfø¼Ê±~ÅÁƒ²Yj2ѯ·^~)˜è×ÜíKpºÖÛö3¡iZù¤Òa“ÛÚä÷€É=ÑU¿L›,™EçÓÊù¡‹3HžçGaâ?àn†9† &ú!èDÖd¢ßÁ`.aÙÑ*°Þ@JÁ›oV>5¹§v¿L°˜13p e]°öXr¼gIðÝxtnö63”×2ÉÁ‚ékƒHcžB: ÉÙ4q63GÏåðÙÁ1z —!úä1Äaü`jr!o«djòžàÕ °ªs3Eo¤ýoŸ4/€hÉò ŽN8eaü;I¦¼ç9À Ì£KLÊ›)Oò‰½Ÿ½î¶œò[rv3Lƒô08êp{ yÛÉ…¼­YñÍ*Ç:H&s˜—^šÉ…RvûWo<ÿ<=Üþµ`QÐål;:aæìr€²em¬ð&æ°—Ü09é$ùäGJ¡ªÎm: ñXÈ4.;H–¾h= òCü#Áí_΄ÑPZ¸ý‹&àE ‡³¨ É «™¦ :}E!©î„EË µm¬ÞP$“CE¡ÒÝVèÓÍŸˆÉyÃ*×= ¹UéîVÕ9˜ÚÅJKðêýäÙ>ÚA8Æ6xaFV7¬êæÇŒÝb¿dÙ^¾òÏßdá{ÁÍØd — "[¨Æn??‡ëŤʵ$7|²Ï˜×-ŠƒË.4ÚÈâóC|’7þr;C)n±ê9ù&²0a¾@™ò)ÓÒ Á¹-Ü(&×¢ ÜÔ ù®òÆŽóâ `{ÏÅ. b7ž–§[¹´M±YËÜ´b¸¨–÷9F·Ê+¬Ú1$ù»+ ¥«ôx¢¿È£*ª% âÖÀOòC£KVu۴ì,ÝÆVMPE÷MpE—BÔ­Ç^3*ívn’Ç[µ¥±u|°$B*Ha€t© Š[6¼hÙšhV`Ù®š¼…<éó¤¡O•Ëb†x.Yî&öR‘ü÷;!;·ôGér¡­êbW=Œ» IB£OéêŒá’ßbÓûÉíOÊ—‘,I•Géõ4P©Á*ºÜg¹[üÀºM $É?²ßW¯FͳTɼ \¦7Å&ÿòwºO·iý:ï>ã‡ÀR½~X&ÇRõþTpé  ¶wp¹ÜÉ}ÂÊ®E’‡VÁÈúßkÍE¶ÑßrÍSúS~qc]IÁ*žs¶m“ý—á9~³T³]®eʳLÅn©ê&Žñ«e§u»ÆY’Ç:¡é¡`Ý›%ÇM9TÜWÙäV¦%ןڶË>>(]Zx É,ë|*S™B`\Ga ƒd¹€§DCÿ€ä™Ny ²³Õ?³ª*¦‹£» Õp.ÿ4Ÿ,Øl5OÉÞ±.y²Ü¯t«$Î¥[Ø>®×hZ!¸|5áÙŒðï¬Å¹r 'I_4ý;4ÍÖÿÚ†n%é$½>“s™œªÌµî·… ’Î “Ü£J—ÿ¤ç² ›*Ø‚s3Èñ(K䵉ÚXI^½š…Ì =06!OPÚqª¸ß÷$icò[žï õãz~q½À4 {Üèºåºñ¯a6ÓÏ5üFŒ÷ZðÇKößÃkͿ߫jœê"èBa\8´†(ÙîÜkÕ,*ùLV?äZ¦7=‰sÅ9”.TÚ†Ð,k¼Ìôñ¡—ä®ô¿ ÞZ;'RýЂî¼ÊÁ’:•ʵF·‰Ü Rý&4w“c¸b¨T=Å$¡ÒTÔau.96ìnE–}_+½ƒ|ÿ1d7¸›À›¾l¡ÓÁ“¦h„kZïNÚîä`ý±ØGžiÃTšËä\6Ç&À"Ûƒ.ž=Ù=¹z² ó¯Ë”y ¹ú×Èî<›ƒÂÒκ7Þ ›ã4®Z(ùñø 6$ú{H“cÜ%’e'Ϫm‡l†tÀêà*ϳÙÒ¯s å@+lj‚‡€­ÛH}ƒFæiäÊføX ¬k9Š×BÅœ_©â|´ÄÄ›fAèr.嘧Cð½ÝI/Fúõо+7âóÉÔßÚBe ±¦^ì@h´=iÝ*i˜ Ç|¨8cÛ6>âÀG5£…àVòVƾtÉ›ðóLMʾžƒƒ§¸X%sžÛ¢DhWüÐ6Ú‡¿FòCÿÇÉAîë¤TúûÿL¼BžJWV9w5ƼҖ|9L ¨p(ý¦.ú6ú[´èg)îóbÿË´•ÝØ”î§Kò¬‚;^!¥Ò;À0·àp>­çVÑw¤  ¡¿åJõå‹Be**`&¸r£¯!pGkájfš6V´FªÚ¸VÔ±JœkÜ[4M·Rewdß,ö’ã»±½ASX3¹œéØô:‘׳q*\PþÖ…ƒ”)­49—>0'P›zx&Ç*ù{ßüÝ^*PeŽàs>ëð™—(iO’¸«òUK׊žlbr©¤Ž¥s/UzY,îèçV*ç KWó|h‹â¼²ì…üm†³RåkHÜ*úÉqƒ¦}›Ä]˜¡¿Ü¡T%Ì(LácYV+]‰k2ü¿¸ý2/¿ApkÅkëVgq’¯‰ñyÌ*(q9Tôo«þf1·BMPEá2I5s(δÕ!Qƒ.©Ö%åª0gQ ×c‚¿y0¦ÙVª<åó9ò‹K®d^±µ ‡¶ …þ¶öò)JÜ€hœlL£p©Á/¢ï¶qcZºý°„b¿ìcó ¸Ÿ±l®µª¿²àÝâ(9.#Ï`UÛ%€I“tSŽ•¦W¨Jæm“zKw±|žUç2ÁŸU¿™éU}°~,úÈq%>²&9”æ2>ìÅÁU©c¥jÌåúFÕó. âJÁ§jrÃImÀØ$þ•<·©B•• éS/¼36n7¼PÍËf²G¹ké@ÒÁe‚ÎQì·Þm‚õÿªi^ŪXp+>›ªU£…sŽÂ­T…Ã^’ž N6 ¼Í÷‰cç‹®¥,ÚºÔe|üVË&¦Rõ“÷ ‰+¯&Ë\ò¬Jœ´ëžý˜ûÉ*.—ªd¸!0÷Kä‹!zì†jPÜ·V7»Z âÄ*Rm `³!ÇÅäÙj„Db€ŠBeÓû³«¨¸Òâ¾íW=¶C厥:Ž þeÏÝ âbÁ%#šfUMµ àQq‡5äy%Q޽âŠÇ„Ÿ ªh( Ÿ+*ÍW:ÑsQ˜l‡"Æžm‘ °¸Ä¾äÿ½-k«ëòÓnõ àQq,¿OžmZPtŽ¥úH‡ÜJ÷¹U”Ä­’ÈÆµlÜ+Ül½ é`Ó¹•³ Üß|°lÚZ©~`ü\ħ‹»Œ!1T:7³,¼J*¶qáÐT2¸´!pˆsK6kª]7?X;Åóôs>›â®z1as(]Ñ=ÅÖV6éB_pcÿ7öã³ ZÏœö|Âê×DÀAÑϱŸëð9–&š`Ó‡bŸÈ¾iä]uN˜É‘¢ç„Äcà\'8e½`NÅsÕ«¥Æ«¨ýb‚eø<®r«4ð¤É­*IÞÃû¶îeµw™`öËêÖMÀA±‹wÄ也½qn…'iOÐT\Ž>NÚ;Ô%ô¦a‰Bëö‚{‰à¸ ÇWm:q5Õ˜`5$63Ì$ïÀ)ü©€JWQ6®†)zÎ*ci\lȇ¿w‰ yÜt“,D?¾ø+:ø¡9\¦ý´Å) L:¨TŽÚÏùðÃt¸ˆ¿ˆ†É¥tš`%ö #®qa©€ä*…«ªªœ¥Ó×LCì©Sµ+Ö+ÐQÄ+GWå¡Ã…ï ÖåZ¶9UKêL¶ÿ'‡ïûÐñ.ÄU3©W}/Õëƒ[3½yŠŸra½KŠ_jÄ-ä·Ô†í’¶Ï±©“ ;2p?Z€øu .WÝ4áÁ «¹2v™ ³lÀJ ™î1[˜u:äÀý¸ç ÄÖš]œ:kRUÔZ&ßaÊIDAT¤û:œíÂ.*:Y5‹žK”;ø© ¿Ï^‚È×ø’Ô]“¬¨ÎE.ð « V9°Êƒù¶€™ŽmsaOºt;°å|Äujú¸é·¬¨Ö zp† K<èð‚¡Œæx঄'ïÁvº…âÁŽfxñ"Äîqiè8ê·,Ö"Ý‚Õç:p¢ 33Á‚·Ó3Жè÷`Àþ&8œ·3°ï80CÚ”¦4¥)MiJSšÒ”¦4¥)MiJSšRƒèÿ’ |ÏZa¶IEND®B`‚agave-0.4.7/help/C/figures/gtk-color-selector.png0000644000175000017500000010105411224443302016525 00000000000000‰PNG  IHDR@QþàsBIT|dˆtEXtCREATORgnome-panel-screenshot—7w IDATxœìw|eþÇß3³»ÙM#¡&„&]°ÐäE°¢xÂÙN°{Ö³a?õ§¢b×Å»³œ'*Þ© ŠzŠTAé „$¤—-3óûc“l›Ýì&›Ý <>×ÎÓfžÙ<3óÙïó<ß‘0 g¿ÁºQº@ ‚£›½;~•üÓ|DÄåÏ«6 @ hC¼{󩀯¨hÜèÙo°Þ "v8ë¶ @ hôÍi¸EEƒ À#$¶í+Šcó@ D‹½Ë^êþzN˜ãÏß¾ŽýKgïŽ_%“w†ªiQ=°@ ‚Ø“·üu&^uT÷¹ô¯0ñªûù-·0 Oj°JlÚ•Õƒ @ ˆ=ù+Þdà¹7E}¿å•5ä¯x“‰WÝߨJöüÂþ%Óh™V @ Ž´(?×t‚¦išÁ#&T!&‚¶Šb²2áÄLN”Á½ïn‰ws"B1Y9ã„ N”Éýk[mM®—‡ éz€fhÑV0 eXÓ’©«¬ «¬î´³%¯ˆ›Æu¡èëùts+·.zèN;Ûæ–S³(Z>Ÿ§·¶ ‰Œ¦yÄÄ{W÷àÒ7·‡Uר¼Öh™Ð4C£˜Ð›P05«¡$ÙÂjDå…NÃ/@’åˆê è?¾ÞûÉ–ÝdY]w±;Ͻ¤Û^QBmÞ/XsŽoí&F]w±{öò¶Õv ‘Ñõ@#Á{W÷ç’7¶†¬÷þ5 ÷Ñ 4]Ð >«9B‘J5ù¥Îp‹PZ|CÎA‘­ÕŽDlí:ríèæ¤aÖ4LV³DUE-«~+âíµ¥¸¼Ê—î/ƱñC’F\¦ä¦ ¥6nªŽºèŸ€²baÊÉYŒë™LûT+¬:ûò+ùÏÏûù÷žÈîHžó‹EÛ‚£oËÄůmáÃkÜbáâ׌‡Ê4Ôij¿ „m™˜:q4gMœˆ$ËȲŒ$ÉȲ„,»?ÝqY’Ë\sçc(àh¤¦¬ˆg/åë®aØ9—£c—¬ý¸`Ælœ\Áµ+Óê]Éí]S€žz ®’(Ãù¥îëá¶5¯;Y±pÿû¿ÍÜôægT:HÇœ^\Ýïqþ´˜j}ÉÓ"ØcìÚ.-øÏ™˜öêo|4gà Ó^ýÍ'¿!¯¡¬?¡,a?H’ywçÁQ‚dé €«²””>cHp:•¶Þùà¾è9â5kð¾F-ÇŒE²vŠSkƒÓgL_XµŽçƒ®™6²­¿î9ÌŸ?Ýç3<Ò@»œ ^¸¸©¥å¼¿®ˆ7–m–Ù–ÌÅ¿Ëfx¶>,ü¶a7þ&xù³ÂÃú+jÖé$[eäÔî˜RÓÔ¾˜Ú÷AwÙÑ%÷µŸÒ!ƒÇg1 ½•4œ,]½××W†üšη©º&K SGwdTŸ$n{{—œÓ™Ç¦R^TÊïßÙòÁ‘N°Õ¾´‰Å×»­ÿºî¸€¼`DÅ2ägð x‰ O@àßu!ItêÆe“‡1ø×"% *·ñÍo{9¾½Âáožl,ÚuPo®ËvñÈü7˜:ûFf>ôwºfþFÑÚ/ñ¿g˜,Ì<¹;ù?¯fÒųyéùW¨Ùk<‹;%³¯ÍDÉúµ\{çÃLšû&ÆfSúkðY߃œ‡(ÍsÒÑŒœÑsZýðŒ)K§¾$eÆ”dÆbkÇ5ýe^xçS.ºò¦Þõ݇à 釚ü¦Â©ërTóź] noᄲÉÊÏãO ¾&U^Iñw5y àHƽêÂ8œ¿à—€òç/ø%dïýúÑ2 Iν-BLMb²öâ©»/ã‹Û‡óì¹9h;Öq×ÂWpv9$3‡K8«ë°ØÀÔ1&nYô:ùE:Ö>'“_ébÚ=Kqçã(Þß((2žÆ‚&Q¹ñg®{êjÚŸHJïþÈ&Wey@[:õOæë¥ßð·w_DozªYIűç#‡Ë´s8pH‘2–Ôà¬OšÁsßýLÁþ*¬ýÆb·drÏãó»©e{„üŽÂ­[QéDVl\§ÿG_z”Ÿ7læ¾WV£ÕÖ`ÏßòÁ‘LÃÈ@°ÐÜòF°‡9ÜÖÉ-(­FÂÂË‚æŒpÕårçã¯`ß·{eJZIÙƒ±µ3¡Ùrб4–Õ\.t]çĺC”n+%å„ÁHR&–®ÁÙƒvi%èp_gͽ’Ž»¿ã…—þ‰Òs,©)°eaÉèRൾçÇ}ìܹŠϾŒìÌv˜Û÷rgèN´Ê=è™'ž@’ ]é„&u y}OO-cù¦_±õ‰®Z0wíj5 ]Ãqn»g瘒-õt] ®[Ìüß «¨5@zfëjzbë[†¦šÄýGpÔÊÔç· Hû즙òÜú u‡9´hOÀÄïSr¯êê- r:ÉÇM¡Ý‰“Iéu"¦”t””n˜Ól ‡ÉŠä¶8$,í;º‡-X²z“”Ý£±ÜÛwÞM^ß³XpåD,ÉIÈ}±dv2Ú%)íÛ3uÊdj«u~øe/+þ·º1OG5¬s(9›TÝŽ.™Cžb§$35U]‘ê˜ÚeºÛlJ¡Ô¥c5B- |aPs뮬tÔµº)sf7’{‹¥SVÈö G2š®o!qÎüuœ3]cüó[†­ç½_·LÔ Ù{®„ìõ){ ê‡<– ¦ÌÞé›ÌüX”Ö•ŽŠ:©£ñ5UŸ¦ÚrïÓËxoÞeÜQý1Ï[C^ƒW¥ðÜ©;¬cêp ²VÛd{–VšX0½œ±ä÷èžÄ¾ývÖXs•*±É•ŽE×i(9ª²ïÍ)(r9ºÞÍð|›Sפ((é躎d’YÜG-Fs¾¼mxãöÙϬõÙnÈûÏ­Ã|òe™ÛiÕ¢¯äËŸÜ,¬îO o#„wÞo{‹Iï,,A4X|ÈÄ»÷eó§O$ kZ*מÍÂm§Bó½Îjç1÷u¼å¿øoþ^üúÈtê¦2,Ç÷¦{÷ŽLÛ H’Á*Ñ£øûÿpÓwóÐâ¯yu·Äa—NjF*ÓÇvÇš»—7–£´oÇß—WðæKcyðÍ|Ö’¬púÉ=øïÒ\IÇc–ƒ[6š[W–Å=G €@˜_Ý~RãöYOÿPþ¬§n,óåmà ˀ±eBÉèÐùÁ']Á¾‚’Ò:OejoªÒúR™ÚúP™Ú‡ŠïÐ›Š”Þ”'÷Æ’s<²)p)¬[µÿ®û%g8È)Ø:dñ‡ñÝ9>ÛÆ±-Ôrp0©3UŇ›¬kiבËOïΜdz¥É˜e‰}jàw*M8ó7ÓqÀ(*ªjÐu·Ñré#ó'<µº1Ý?¼»ò³~—ÀåcrXôßyš¦ãÌßL‡~#)¯¬@«)¥bûH=û Ö/þ;VnØ—“Ž&t×j·­£fïLûaësI ý'ßÀ‚bœÅ»Ù¿äñð‡9AË‘”,¬=NÂÔa ¸œÈRšÝŠœäg²W:Ôý$Ì™ýÐ]N¨*BOï‚Òþ8RNè€Z[ª†$›t%³’lÇÚëd̃êÂUV€)# Ë€É(]KÐ:ZUrZç€É˜IÇŒÃÔ±Íåd$ÅJê°éèöJ¨<„–‘…ì7©Z2e`é9Sûhö:·IU2!Y,˜Òs,õ·—¤ÎXûœ‰©ó!p:Ñ% IS‘’ë…€9k$÷÷¢ºk¡›²Â©«t$©ûÌíÝß•¤—£9’-âö&8ºñöZ9þ/«"ªk\Þ}Í…ö€©ùÐÑÅŒ”Ò³ßçÀëOANÜÅ+ME×MÈéÝ‘Óý÷[Ÿ—Ò9¥«Ï~%k'L^.¹uÝ8")%)“@ûCC%5À1¦äÌc —…ùœSR;LIíüKx•± ¥vÅœÚÕ+¿Þ…o“uä”,äßy!âž&8Ú æ³¹HºÚ¸_ÿëËKL/@Ðö0² ´¹ALhz€fbB ‚#ëñç±uÉ XLˆê~k·-£×Ä9äz¯bB ‚#Œžæ°wÙ«Qßgþý†yBL@p„‘Ÿ—KÏ s¢¾Ï`x¦;׎êA@ Äüí±{®K§Œ¥×´³ @ 8rH>ü«Û2±fÉ_9|(/Þí@І(<˵7Üþ[C@ ŒbB A‹bB A‹bB A‹bB A‹bB A‹bB A‹bB A‹bB A‹bB A‹bB A‹05]D ZŸÚÚÚx7!êØl¶x7A%Dÿ  !°ÙlìÙµƒŸWýÀ¡ÂƒñnŽUá?HE¡s—,ÆŽO¿[±U‚X"úgh„˜ˆNÉA‰²—Ry?eJeÊ~ªå"ìr)µÒar)©YÒšT$é)˜1¡èÉz;¬Z&Éz{¬Z&)Z'RÕÝHѺ“¬öDÑ-ñ>U lìßË÷ß.eìøÉtíÞ YVâݤFžyônž|þͰÊjšFEyÏ?õNŸAÏ^Ç´rë±@ôÏÐ1ÑŠ¸\. ­»9`ÚÊÓoä+Û(4m§\9€„Š‚{ÒŠâŒÒœR5 Hࢌje/¥Aê›PHUsHwõ']@ªki®Ø\½‘Ä¿]€¬úï·œ:ñ|†ï¦¢ëöºš°ÊZ­&_0•Ë—2ûªk[¹e‚X úghÄS%ŠTVV±½ÃOì4¯e»y ¹æ ¨RmPÁ ûÕ× ÒšBªþi R£ìîìã0_7פÛhçBºsiÎá¤:G¡è©U ˆ>EùtÉîïfEÓtT—+ìò]sºS [$ˆ%¢†Fˆ‰ ë:»Ì¿²Þ²‚õI+ØÞy-à °04–'¸`ˆTDøã/(Òüņ.ÕRiYEµe‡&ÒœÃI·ŸFŠã4¬®ÁAö&´.ª¦&”éØ]×P]NŸ´â’æ^3¯¼ô<;tðÉ“ÐQU5–M´"¢†Fˆ‰f°Ã´‰Ö%ü´„"%ÏÇòÐ`qhM ˆæX#‚a$‚åy¶]T›¢Îü O’¤v#Ý~.©uçbv¥– m]×Ð4ÏÍ·¶¶–K/›ÍÚuë¹ô²Ù|ò¯÷}fÇ{—Z›x÷Oág"L y7ùE.ép ×´?‡÷’_!_ÉóM £²­…DpqLXH€KÉ£<ù ÚŸCA‡S¨N~M.låÖ m÷Õ«ª.®™sk×­`íºõ\3çTÕEì®rÀŸøõO!&B ë:?Z¾ç¶vW1õ„Ѽœú$yJnØ¢9âÁ¿Žw]Ì aD°:¡„…¦äR•ú$¥GSÙî*\–ï#8àC½>Ü}Ï<¾üj™Oö—_-ãî{æ5–ÑÅ¥5:téï&$>qîŸBLàp:ùÔúO¦u˜ÈÜŒËX‘´'®&D(ñL$DÃZLd„k0øl»p%-¥&ã2jÚODµþ]r"~“7¿–³ëÓÿãÔã{b5)ØÒ;1zÒl¾Ì­ô)S{èÆvîxgýßfäàÉÑkTý]ø©¿[¼„ŸvVÄ») Å?ßÿ€Œóîgs~UÅ{˜ESG_Õ˜¿iÉóŒèw&+×Öÿõ­+uÕkLâ©(µHðï覸´œ»wR”¿‡Vðìu¸lÒC>eBõ}]«å—µkØUlU“#¢hÍã ›ù£/žÃ×MgÛK³8gÁoqlQ|û§¸-³½Ëé]ÇòpÚ< ä‚F ¾˜hJPÄBh„+ š#$$ÜF$¹=mR‡±H¶wAX*‚âo¥ðŽ×-çÌqsùôËO™5~Ï­/ö){ÑÈ™1ic"r÷{køô±«éÛ) Œʨ nÂ~xEcþ´ùkyð‹†uk 3öú%<÷Ýî8wpôåý«.œp”c3+H’L’-•>#.¡ºà“ƼP}_µïãÊ3Ïáãcñ“Wì7®‹7ÿ ³¾XÌÜS˜xîLÞZú +ŸßFűÕ«9\.¥~ÌsæsÐkU†Fý¯ðf†H‰æ0GKêFd@’óQÒîAJ~­úV\uq”w«ˆX|õ=ÜòÅr¦vKåÀò?1öڅܲúŽx7+!ùõõ+èyÁËñmß, ZvÉå7sÁÂU\7ªSÔŽ¯ë:z7àHÊ©Ô9U¬f™ÚŠÖ-}†ìSïmÌ Õ÷WÞ=‹ÚëÞæÁi½@¿”¿,ê§3ÎK¹å¬<Á³Ü2¥ëåÔ·öÄ»µwýå–Ìkÿ0;M;E„¿(ð-á Hÿ½M-Vƒl7¦)y˜Óo#)ùUìUàrœá™´]Z2?âõƒ§ñm7·Ó°ìq÷P}pà¯þGK›wDP²ñ ÎzÔÅŠ=„Uþ¡kÉÜó;̳*è3ü,žúû"ÎëÞâv,ûú›°ËŽ991=%Æ’þ}ûQcwÓ¯oß½¬1/Tß|É~ž~¬ÞA”dØo"\‹Ç¤£9KâØ¢øöÏ£NLl7íâ¾ÔGXnù ­ñÁ¨ù}6%š+.ü1JWP›TiT®%â!œr ŸŠi–ŒËqÙO£¦jªÚ7̳i»”îH W`lÙÿºxnŒ²Ix#õ§úÀ¿wú,X·þ¶ðnY{ªK8û‰5|{Áq¬Yt-g»™Ê¼…-nË´á›×ìÝÕâãµuöíÝýðL1“¼äãè`òŒ¬‡êûªœ ó/r, »ê\ítÙsQ¬½âÚ¦xöÏÄþoE‡ÓÉüŒWy.ù’БÐÑ …D4­Þ„J÷ÇHHøÇÄEkX'ü…¤ƒÙ´‚v©+©­»ZÇ þº8Z0I,à7ß{dº…WÝFW³ûNÍþêØ70qT¬eò°ßséG¿1µWZØõ†¦Zxä¡Xd‰“g½@õÕ€Š ÊŠ"x[¤æ ©ýh>ýòIFŸqoMù™+´B÷ý>6…-µ.NHNÜGÔùm<ûK ¯ê@Ù–¤÷š¿Ź0W›7pZ—©<•ò2Émrkxô5L°ôžhl;TZ(!L\Å o ”ðþ‚À(-ëD8‚¢ñK‰Í2ŸvIga’×9›#Ÿñí’xôë¸ì|öüÕ>y]9ˆ[ÞÞ€jßÏì‹nôÉO„‰fñBµïgÖˆ3Èž÷ ÷ÏŽ¨îŸÏìÊm¬Æ¡ºXûá¤d]Öt¥&ðž×½óÈêÑ/ ÜuïIÇ.•׿ªü0N¹»\D²Ÿ:%Ze7Ne_½T2FéÁ…¿¨%(|Ԗ抴ƒtÓTê\s¨Ñîàïv<óÊ\xÓÞ¨IæÌ™wg2Cïüñwÿ‘3¦Ô¢IœýÄsñkh‚q×™#ù`G9\?Œ÷¯÷¤‡3qlÒ»Ÿóñ¹3Ș½•Œ¾cysùâè4ªþØ=t|µÌ3F}Ö„ñ<öÐ}ž_|Â2áC·3ïdñ­×qÞõ°ö™!ûþ¤×Þå‹™s™öÝqôj—ÇVgàœ%|¤=Ä›¯?MµÒž ^^Å­£;Ç·Qõ}®{×l@¢¸Ä³B¦K—l†8™Úêr*Šzÿë"š‡lJ©âÀm™¨ÿ ÉdEwÖ´ø·IË ©æ*’j®Dµ|–ü’å¿H^ß‹¿°ð1ቈPi:Èê~ÒK/ *ý œ–“cyº‚âä±§óõWŸÒ.=^}ú£(‰u{ÊÛ½%Ì’¥¥å¬üþ;&Ÿ?µUÛ$ˆ¢6±×Sƌҿ_ù#‡åEm§±âßI?quúS8$ž§“ŠïÓJàÓ$tÜ.¶ÍÈœW7™jnb€k`ÔÚ.)Vä䎠kA÷ÚF×ÐÕ:t5ÞÊiÚŠ”ü&ë¿Qп…z«„ê"ùÊþefª2_Æa;;–g'H öìÚÁÏ«~ ¤¨5LÊUá¿:[Q:wÉbì¸ñô½{† þˆþHá\®½áö¶k™øÐú=7¤/@E#p…qÿ¬þV ¹q»a©èhÇÉ<\õÇ¹Ž‹þ XRëçJPo•Ðë‡;4t]­ÿ”‘ýEÄ  ¯¦Ž IDAT×@ôŠ—qÕlFJ}“e•ïRÐP–£lDs’Z<‡ªöÏâHiÛ+=‘cKIgÐ ÃtÂðx7%jÔV‹×Ê)ˆþš6)&Þ¶}Íi­Ä iþyÁEDƒñþµ'Uý™ÉöVú…,›Q%«—/©ñS÷Ž#¡cBÆ…A•–£»ŽÃQö!zÒ—ØR)7ПD(QJl4橤ÞJuÇìé¿éù â‹xð Ñ?CÓæÄÄ[¶åÜ™öv½$ð·BàozI¨÷¶…›ª¯æ¶šëIÒ[Ï뚦4X%Œ†8t¥B×AM—1Ëq¶Nxá´ŸËq:Vë Ø’^Íe,šX"Üz¡‘Rp¨:öÌø¹§Ax´)1ñŽmw¦½[?0Øp†wšÿv°!æ<Žç+f«tíß*IÆ%'ûÎîlXÈ4.#k:Šì/˜â‡®'Q[{ǹ¤˜ïÀĆð†8ÂþÐIÉ¿±g¶ü½ @ h=ÚŒ˜øÐú#·§ýÍ@H#<1aFáîªk¹©æ ä¼÷L•SÑt©q~„÷‰PÛª¦bµH(r" xxPÕT¨Ÿb•_!Y~Ú×Ji😩é¤äÝƒŽ G¦˜C!‰J›Ÿ'­ç†ôwÐB £aÿmßÏ>jw^/˜!®c£ÖÖPè’„CN °BY&Üi’'ŽD­C#ÕšˆNpdê´ëqi§¢ßˆ¢ín¹•ÂkÈ#5÷OTaÑ9)Ö'&‚0HøWÿ`ÙÆ5é q/ æ—1ò0£n2+/Š™P±¡ê š¦5UÓP5Ý+®7ÿ¸KÕ©®k]Ϙ-ÁÅ TH_`gZÅ ª¤î¼sÅÊŸ‘@ Â!¡-[LùÌj÷ÉhND$x,ÝÄ£U×qUíùQhadÔIi^Nª¨·>x&ZúN¼Ô¼âž!‘:—ŠI‘I2'¢…t’©6ÍÇ¥%¥îAМá i qø'©[¯¡â¸Å¨Éb}Z‚P[þZù¶‚Ífkº M úghVL—”pyÿ…THš/$|‡>²´¼]~/'9µ¸}‘â’’pêæ +8âºß¶'x‹ŽŠª:Ú§ÛP”Ä5,ÙͳPåÁ¤V^‹¬† M w\•¤þz5C>A7wˆýI Z›ÍÖèèPáÁx7Çá´J úghRL8œNfõý€=J)щäêÉ{åÐMí•ýEJ­žêªir®„VZYU-íÛ¥$„ÿ‰`¸”áT¤JZéP\[ÅC˜B¢!(Õ¹¤ýr Ã>)¼7³ Úöïåûo—2vüdºvï…,'Žõí™GïæÉçß «¬¦iT”—ñüSpáôôìuL+·N Dÿ MBЉÚÉOæý ÿ7Dá;ùò4lj,,¿“t=9Ê- …:ÍænUÀ‡\7ˆëqUÕ¨¨¬¡]Z|Î)\49‡ŠÌI=|-fçÍ[Õáç“ÂTú3ÉÛ¡fàñ?!A«±ê¿ßrêÄó6bt¼›bˆ®kØëÂ{_ŽÕjaòSY±|)³¯º¶•[&ˆ¢†&áÄćּa[M hšA­à¿Ï§×‚Šë0?Y£¥¢ú9©2æˆ,^QU‹ÅlÂfµÄíÜÂA—Ө찈TýOX*7Þ„—¨°æ.Ä•6GŽX2z¤PTO—ìÄ|##€¦é¨.WØå»æt§ ÿ@+¶HKDÿ MB ºïر“ÛÒþïÊ‹†WJ5µBÿœÂìÚ ¼Tq}\…„ŽDµž‚¦ãT]÷¬æM סøpªj$° ÉDUÇùØÓ.3êg¸Ã¯\Ê/F©ÜóS´ª¦&”éØ]×P]NŸPWWÃæÍ¿PWW'¡£ª‰ó2(AËh‹ý³°°€‹¦Í °° Õûgˆ ‡Óɵ£VP#©ø „H—}ºë̪Ï3•W¢Äù«Õ\ªŒ¦jAõÛvÇuOž¦»U¦¦£jþqßm§ªQX\æIt$…êÎÁž6³Ùs&¼ëHÎRÖÞzâ.—9躆¦©Áår²uëVÊÊËØ±s§O^Cb…ÿ¬®®âÒËf³ü›o¹ô²ÙTWWµjÿL1ñdæÿØh*"¸PÂî²ÓêÆðtål¤˜žX®º‡8¼ƒæ·,®…ˆ{‡š:¥åUñ>Õ0‘¨Î~GÚÆÖ‰PÁ@P˜o"ù×gb‚£÷„&]ר¹k'UÕî뮼¼Œ=¹{ó½¼Í 1ÄÝïTÕÅ5sn`íºõ¬]·žkæÜ€ªºh­þ™bbµù/$7Ì“&$³JœâÄ‚°HÔh6šÉÀI•jW=qUESUTUõ²\4ÄUƒ¸JQI5µöxŸrxH U=žÅ™ò»ð‡8Ḇ°nySñšØŸG䢑3ãÝ„¶‹×|èܽû(-+óÉ>TTÈüBïÝAìðêwwß3/¿Zæ“ýåW˸ûžy­Ö?ãþĵ;Ü’¶ ÍP8Í—n•äêÆ¢ò9XôÄ×*u¤6Îsˆ(èZý?ÛÛá—òäµù’™ª>o Z6m1oÂ×HùñNÐ1?’õ1ã¬qätëI—nýuþsa×½öÂS[±eÆû×Úà®öÐŒíè\g×Ò×™=u &]È} –øLÍ•×"êï½zô`üø‰œ3eªO8aÈI¤¦g 5Q³zÏÜ5‡QCN «ë1 8é,|ûÇx7+ªDÚ?w}úœz|O¬&[z'FOšÍ—¹•ÑiL}¿{ê/Pt07 <õ—Gh-5w1ñ\æz¶™Ê1FÂØ*‘­µçƒ²¹¤ëÖØŸ„uš™5É`XB÷º0Šë¨¨^ó%m‹ÕpÉ´ùkyð‹éoþþf}±˜¹3¦0ñÜ™¼µôAV>>¿É¼ãç™¶Épóýíäüwßçæiãè’ž„É–Áø™·ñí§×5–1ê×uEË9sÜ\>ýòSfÅs닡ʋGŸmNÿ¼û½5|úØÕô픆bIeÔ7a?¼": ŠcÿŒ«˜x íGRC3üŃb°ml™x´êÛœþéϯ¯_AÏ ^nq[âÝ?ãæ´j¹%¥–<Ü‚ Á•ѧ·£*ï——Ô ãªÚÄòHvØ™‚ªK§tƒ¸n÷~GC^æÇ »só4 7²÷‘¬°¨ë>¥t#Iûÿi,(ô q¿OsîrÌûVàìqZLÚÝ}Ò}¼]öW?Ù/þ“ëÇw7,×â=ØË‡µèX§Îž@†Y&#'ÐIYsöÿ—eyý¹,:¿Âÿ]LiÌtæXOº—ºk†úÔýxõ?"l}t)phäXHÍe‡R{Ø"” ¶ÝÁ¢K¼^~!Ézb¹’.³Û°»]g«– •@WÙ*F®³›ãn»°¨„ôôT:¶Oœ¹$¡Ð•dª‡. }žº< !JñN’¶ü ûà1k»lîÀ弯½ÆóüÕîµÝ7Ÿy9cþñ#³eP•÷K†ßPÏ¥ƒ©ÞŠI’pè`‘ÀW8éþýh3±ßáâ˜$®º˜¬}Â=ݸs~GÏþRÂk£ºP¶e齿4™×"t(+Šàm‘Gù0ÇoñEþ%LÊŽìýA#Ó-¼úë6ºšÝ¿ìköW‡•—H4Õk™<ì÷\úÑoL핃ƹÆÜîp:y&e3¾ó!šú œ;qWõ8†¸²cÝü&)¬K3pm÷_ÅׄËú¸ÁJÏꆹÞ8ýâ:ìØ•K=öK&›‹+ój޽Íx¦Ñ\‰ Ÿ¶Ÿw ’¡«µ¬zÿQ,éž¡†U%vÒ%'Îê<›»ŠI™¾+%›øëfϲñí’xôë¸ì|öüÕM3ÒýûsÇ)]˜¿Ömz=°ü²ÆÞÖ¹BüýU\wß)¼;e ?ùŠÏ?|©gÿ•ëÞº¼É¼–à=þ®{ç‘Õ£_@¸ëÞy­8_¾mqî+wqç„‹yóóŸ(®¶£:ªXýùëMÖ{èÊAÜòöFÀ=IxöE7†•ױ쳡ú jßϬg=ïî½gX¼ûgÌ-OßË^¥–À!=Ègà܉áÎln¬ë¦7I¥3‰*§9ˆE!Ø| ÝË¢l¾DÃ6ÃþC&¾q·¸Ø²m'?YŠ¿GÐp¨0ËÞ¯0­>W"˜u¢~[.ÛOÒ¦÷±ŸØò‡H(^ºdù#Ïàí/ŸoÌûà©?pÉy'skJ_Zôg½1ͧîëNcʤ“øKû!äþ²˜g^¹‘ ošÂ5Éœ9ó`¡ˆtÿþœõêBþ3ëVæ¾×ùi|ðîÄæ1fàœ%|¤=Ä›¯?MµÒž ^^Å­£;7™×bêÍ=öÐ}ðÕ2ÏõYÆóØC÷y~ñå–‰”®çòíßTnð>™³‡9•þÇàþ…¬7ôÎ÷9cJ )šÄÙO<V^"ªÞuæH>ØQ×ãýë=u¢2!2ŽýS:eÌ(ýû•?røP^Twl„ÝngDÎ2Ê5>‚~z¶ÍÀ7‡g0ÈÕ±ÕÛ)ÛË;Pj·z0¾Pƒ UD^¶©cuïÚ™>Çôˆ÷W6JÙVÚ}> \®ˆ‡9¶µÔlʯý]IŠË9"ãÅgåš[æ‘xÇÛ¯ŸÍÃO¾@y‰g¹amm-Ó/ͺ 6äDþùÞ;ØlçEÕÕ5¼úÒ|î™÷X<š,ˆ2¢Sx —ko¸=¶–‰Ey”¸­Þ–+„Ѽ w™›ª‡&¤¨SM”ÔÙ܆£`*, þq?K„fÔšá-4üã¹ûÑ.mdþ„š1ÚcçbÛ° <a Kåò|’Öýƒº“®h•6úO$ó&Üåž‚¶DCsc³Yyç­W¸éÖ»xaþ“ØlVŸ|ßí£‹P×Fâ‰6ñíŸ1§“ç:îÄ3¼Ñp×7Ú6î試s[͈X59"Ô¸_èžåÀ?®ÄutÍ_ èqÝ n$@`ÓoÛ3r(‹9Þ_WXÔ ¹™¤íŸ —ïoÚ*dÛºò%ê†ÿä蟳¸]èš^ÿ¢$íÒYôÖ+yªæ?š×Fì‰wÿŒ™˜XœVHìÄ=2”nx¤êd’ä½Þ¸4™‚ªÀå n«ƒä¼Ò<ó$¿¸;-pÙhó÷gw8Ù¸y+#†‡ÔæOèJ5£ õ?×Dl•ðÌ($é—O±™fx Aâ ÈJB¿¶[ÓTœŽð—:íu(JâݯÍCôÏÐÄDLèºÎ‚ä\<ÃÞV‡ð¬cÙL¶÷ŒEs#&¿&§fä¤*T\7È÷XŒ'eY%t¯ý…q•”²{Ï>úôNÌïÒÇ1gã̃yÿÿ"¶J4ë¯b?q*´u4Ó)+›ÂüÇôŒÝ—ÖLÔ.ƒqö‡yçwM[$Œ…ËEÒP;ᆸ´_Ð4âÁ+HdDÿ M«»Óþ›­ßWˆû¿JÜ(ÏæÖômí&6›Ýõ®³5­1¨š†¦©õ¡!îIS}ʪ¨õåʪ~uUUEóz½¸û•ãªÏ+Çý_Aîy=yÓië6l¦¬¼m\$u#¯ t³m–ú¥[V}f ÁO«Š‰¦ö( NªüCh \í8Ý‘˜fi»K!¯Â†ªã´âZ8q$ƒw{HïúðMÓÂLs©+WýŒª&ÖøŸÎ>ãPÛ÷‘‰Šú æbÚ·).m‚#™VŸXK G4 ³êz¨‹ùv—§àÒ$4Uk j}0ŽëùºAyMÕ}ëû¼à«Á²áý‚¯ËFC¼¡¼æ÷Ïw‡ÒòJ~^»1Þ_iÓHö3ÃA‚eÍ’x´\ ŽhZMLèºÎ'Ie4WH$éffÔ%žtp[v—¥üêÇçm ¾iºAb–ÕŸ„^½¢«™7®@í18ö „¤¶¶6ÞMˆ:Þoi´mDÿ M«‰‰¯“ªñ>"2í5™SíZ«i-"¿ÊJ™ÝLË]g‡r`å_^÷[êiäj[÷«ï_^7(/8TÌÏk×3ê¤añþªƒâìÿ;tk&RUiÄB,¾¡îÜëãÐrA(l6{víàçU?p¨ð`¼›ãCEUø’§@cǧ߀­Ø*A,ý34­"&***YÓÙÇ2‘Üí'Û;`NЩ—[JTùºÅö·DÁ/„æ]>\qÊ›f(1£±nÃ&ºfgѽ[×ø|ÉM¡˜p6I?¼±0m_‡TS‰žœë– Bp`ÿ^¾ÿv)cÇO¦k÷^Èrâ¼$ë™GïæÉçß «¬¦iT”—ñüSpáô æ‚蟡i1±º£‚3`ˆ½ã_hOL×Ùåv3*¬îH€˜Ðýâž´PN«ÂvX¥éuý…JÓ"Å»]þ"G÷iËÒå+˜yñEØlÖØ|¹âq.I+" i.¦mkp==Æ­„bÕ¿åÔ‰ç3lÄèx7Å]×°×Õ„UÖjµ0ù‚©¬X¾”ÙW]ÛÊ-ÄÑ?CÓ*bâGsƒo }‡÷ë¤è';S[£Y-fKI ªŽÏ¯øæ½‡C÷‰‡7Ta'ˆ0À0-¸è Œ×ÔÚùêëo9ÊÙ ùºrç€Ñèæ¤ÚêðÄ„_ÜôÛÏBL$EùtÉNÌ72î Ë.WØå»æt§ ÿ@+¶HKDÿ M«¬æXmvâñrÙ’ÐSiXôÄ{x9T™í%)Ë>Jù. 5Î×}âž4ÝÀ•ŽªëhhšûÅ™¾¾"Üiî|ïÕ åýWoøî÷¼ïjÜ}X³.AýO(fœÇ6o‰¨¦-kâÒlApTMM(Ó±?º®¡ºœ>¡®®†Í›¡®®& OBoÎàá!úgh¢.&\.ëÌ.šë_b¼#1­[KRp¸|Ty‚$=Še|Eø5Œ2‘—]¹ê'ò ãýõâ<îÔfû›0mÝjø*^ ÐuoWù*.—“­[·RV^ÆŽ;}ò‚@+âÝ?£.&vY%j%o‹D°m£`JH1¡é°¹0ÐIUäV =ˆ•B÷«¯Ô÷õ^‰—E"´…Bó³PøÖ÷÷†‰_\ÇéÒøìó/±Ûñþ7à<ñ4·kí¦ÜkkÛRM-Ê=ñh¶ Mã'Óu»vRU]@yy{r÷b<Þ&ÄŠøõϨ‹‰ßL*Íâ0ÑU³ÐSmõ™FÌžRå¥ÑyTxAHóFðuÝ”Ó)o®û‰ÿ|QÌ+§‘ÏÀPVQÅ—K—Çû߀ֹ;Zf¶[$„û¾/Q¡ìÙ—vwèÒ=.Ç´¯iK¹{÷QZVæ“}¨¨ù…ÞS›A×@+çþõ'÷æF1á=ë­á3ôöHgb®X_†ÔIU° F¯Çó_4,¯7£¼ÿñ==%xy=Hy=hù_·î Gn =ñøX|åaãê7KÁ’HºYã§iç¯8N=·ÙǾfpÎûáÎmïé·u‡ÿCßSþMÞ¯/5{¿_jýÀ„c'òßßµô»–¾Îï}ÆÁ3£Î¹’‡o<·ñ×Q¨¼QîÕ£Ç?«Áò⺚JªÊõj¢O¿cq¨îûG—þ£yà¥9¯ï‘³{×§ÿÇ•÷½ÈO[ò’ÛsâïÎáÁW^äì^îs4š¸®×÷‰Py-"Žý³,:«„ÿ§¯%Â{¤3)ÚÍi1Uò«,s <¯7r—­bìN;zå#› ô¯–}KQqI¼ÿ%>¸ ÷X¼­F– Í÷SÙÕ2ËÄWôaÁ¿öù¤åþëUú]1·EûõÆ^ºƒÏ/á§mã5ñÑfÓ’çÑïLV®óI/Zó8Ãf¾Ãè‹çpÇuÓÙöÒ,ÎYð[“y-C÷ù«,/¡(?7 T–—Ô—8º)«¨bÿî­ìß³……7÷åú ïoÖ~õøçûqÞýlÎ/£ªxó¯Èbêè«|Êèõ?ÊB¸yÍ#¾ý3êbb‡Í|y’Óíæ´˜õiΕ׃ä›[aPÞp~„÷|ˆÈV|ϧð.ï;Ôbw8ùèãÏpE°ü¨µq ùG}Prw¶èØý¯˜Ëö—?ôI{ïåÜxE_î~,³zÒ{È<½ÌØcž¿¹×;^W´œ3ÇÍåÓ/?eÖøQ<·¾Ø§ìE#g¶¨ýmió×òà;Òßüý3Ìúb1sgLaâ¹3yk郬||~“y-Æo‰v“AÈwÖ­Ôn˜ÛV¯»ß[ç]MßNi(–TF]pöÃ+âÖ ®ý3ªbÂ.Á>E"Ò¹  cb +±–ÝT:¶Ûº± ’qºI¢P60½àP1_|•8ó'ÔžýA—=‚"a!ÈCrØ›}lk‡ó˜èø;ªÝâÊYý o;Îà¢îa'Ön¡¸`/_<>œù7Þñþ_}·|ñ }íM¾Y8‰ÞÆ]/ IDATç¯]Øì¶¶U¶}³ˆécz¤¿”[Îí'thŒ§t½œÚÃKšÌk þ¿$à G;ªª£‚¯ßºÔ®3"®ß–®__¿‚ž¼ì“6¢gLI) ;ekÂÎkñîŸQ3±W•AàÝP½ÉÏžªLr‚ù—Xw0§ÆNªTT©:©R1vjÕŒúZœ_~\½†czõà¸ÁÇÆû_„nMFíÜ%/·>ð>Tùà~Ô^}›}ü®èÅÃßæóÑ”îüöIz_ñç€2ý'Þƒ½<òw¼~ð4¾íæ^Ý”=îªNîhÌÿxõ?šÛì6OC#Çâùñ!+éhÎ’&óZʲ¯¿ »ì˜“ÓSb,éœå±2üáƒÕ×o+×@ÉÆ78ëQ+ö\И6lðtžýäeNî ?9‹O{˜ÒíO4™×âÙ?£*&öÉ:D$&<Û}ÔV{z³pª ÝNªÂ›t©ûÅÝi“0ußúZC]ÿúz@ýˆÝekº_[üëëõ½ãº_[3ë<Ñd^KˆgÿŒ®˜hâ0º›ÛvöPË*±©0…‡lð‹>X\7Èoxøz—÷~X{êú>¬5þáºÔö:Fâû< ︾g»¦ÖÎ?Þÿˆ¹¼YޝÔºts]4­Y¶åƒy-:¶µÃyŒ/ÊÞʳx®ìT¶ÖqÜ|æåŒùÇÌ”AUÞ;,n<Ìa’$:X$pÏ õ02Ý«¿n£«Ù-ÐköW·¨­Gçw´ñì/%¼6ª e[ÞkN“y-B‡²¢Þ)†90›d0epæOQ{ÿ @ ˜hË×€£b-“‡ýžK?ú©½‚¯TÑQ‘M#΋ˆ8÷Ϩ>"Ÿ/á™3ÑCMœù:°æ` ëìæ…`þŒXyÒ'iÖ—÷šdÙ0AÒ÷4ÙÚ2÷ìÝÏ àBÍêѬ9¨ äí3Üg$\?+‹ߺìYžæ¬*±“.9qVçñØÜULÊô,íc5ñö¯n³ûøvI<úõN\ö >{þjŸý>tå nyÛíÎ\µïgöE7úä 0ƒqÝ}§ðî”,üä+>ÿð5¦žýW®{ëò&óZ‚÷Lù»îGV~á®{çù”;Úi%›ÞÆÚþÌÆô#áPíû™5â ²ç}Ã}ã³òÿóЦ=¹„gß¾| GÝV^s‰wÿŒªeâ¬@À«ÃóRtÖçÂÛ}ØJaµÙÇÊz®A¨¹ Fq£¹ º×¾ ó5ßã5m-i*I›ãË¿ùŽ~}Ž¡¿æ´=³£[@¸Ý­©ØwvxsèÅ\Vºž7~ó|<õ.9ïdnMéËC‹Þã¬7¦5æ½yÿtfœ7’?ìÚÅ3¯ÜÈ…7MášdΜy°¬±ÜÐ;?düÝäŒ)5¤hg?ñ\‹Ûz¤0pÎ>ÒâÍן¦ZiÏ/¯âÖÑ›Ìk1õ¿æ{è> øj™gŒú¬ ãyì¡û<¿ø„e‚c&Ó¿½Dµ”ÍëŸ=Û˜~$\w9’v”ÃõÃxÿzOzÃÄFÅÖ•µO^Bú<…¡§ÏàóÏg5– •×"âØ?¥Sƌҿ_ù#‡µÌÜ pq†…åcG°;ºoüÃ2g8ãâûÛÆŽì:l@D’cÐúZœoP?5ÅÆŸï¸…ÔÔøŒgšW® íºËÃíj>Ûα§QùÚ»­Ø:A¸¼øÌ£\sË<²³åśۯŸÍÃO¾@y‰ç=5µµµL¿t6ë6ldØùç{ï`³Ùó««kxõ¥ùÜ3ï±x4YeDÿ4¦ð@.×Þp{t-‡¥U ‰ã»|{]5È‹=E5fv–XÝ- sþ@ËãR ëKԗª_QYÍ»ÿø9×\—וëí2Ýà þŒ*¹?¤’Òf7˜Kà’ÂýÍÞ§ ‘ièônl6+ï¼õ 7Ýz/̛͊og‹ÿý,^„r—-®Ö"¾ý3ªb¢LnŽ˜p§ehÉqà{SQu ~¥GkhÁh¢¦;=°¼PÞ½BCo,o<‰ÓûXFåuƒòzòºAùÀø¦_·²lù &žyzÌÿgZz†ñ0M§É¥e™á!nŠGº¦£ú½i6£]:‹Þz OÕǹ[¬×Fì‰wÿŒª˜¨ò±L„R=y© â«2k&£jøüJýK_7È7zφ÷C¸¡¼ÿCÙ¿¾wùúmÍ¿N8 A¤ø—%D‚­FñQôégÿ¦¿>ôêÙ#¶ÿ¸äßÕÞ4Õ +kvøÑŒ"+$òk»5MÅ“3§½EIœ‰å‚–!úgh¢*&ìb"eà[&)&+ý´?‡*±*Db•÷lô÷¶X4£úM #Ìrž%ÂHô¨ºÆko,ä{ïª7©Å=)Éw˜£1£éºRmó=` ¢K§¬l óóÈÉé廉j*ŽnÖEÅÅdeç´b‹±DôÏÐDULh­æh ÷?Þ.«\ºÄÊ}Nª¢;?Âh¾B„q"™ßàNoyû¤°Ë*>Ì¢¿½Çµ×\½NSH’g˜Â¸â/bnN{:_õ)íÒÓéÕ§?Šõ—·ˆ¼Ý[Â,)QZZÎÊï¿còùS[µM‚Ø!úgh¢<ÌÑüÝ¥ÆÙ2±ñ òZÅÀJŸ¹V‚¦æG„;ŒÌ*ÊŠY|Õêµ{ìÆ“ÿžšjl™©¼*º4›œî=wúD–}þ%E…¨ fR~{á°Ê)ŠBç.YL8{ ={ÓÊ­Ä Ñ?CeiÕvÇWìI«Ÿxéôzs¾ñ¯úPî²u¿òÞ\£4=È> ÚZù!ED°á!a$lŒ„“¿Ðq‡wÞ}¾}zÓ5;+6ÿÀĺ®ÍÀ–’Π†3è„áñnJÔ¨­N¬×f šèŸ¡‰ª˜HuéT5si`•$ÅÍ:±ópûʃ9©Š4ndyf©0z ³Tx Íÿxቈ–ͧˆ,®Ú,xé5žwf³¹UÿRUͲzœ|c^A"#úgh¢:UAVõˆ\7º?vñ\‹èñÞÔ8¼f¼A÷,êðvÉ­û½2Ü“/Å¥|î¾<Þýûû­ÿÔtܺ¸!DàÎ]N¬qO@ h‹DõNš¤éîù—áüÊØã$&×*¬Ï·y;(ÃÃ:MoøÿjÇ7r™§‘Õ ©¹¡æjÔ­9Þ0Ü|‡ç󋯾æ¸ÁƒyRë™%»cËDÓQOŠÝª@ 8R‰î0‡ªSÔ  BÝÇ òªèÍÆ„É·»Rq¸ðyX†~`‹Í)w^B󆂗áÿÛ»ïø(êüã¯mé½m ½ˆb¡‹Š¨`AîDOQO=±wzwžžåÔŸ"gAÏOl`? VÄŠAAz¯ ÒHÙ6óûcSv7³}6Ù„Ïóñ˜Gvf¾;3[`Þûý~ç;ë zð³ŒÆmxÎû®÷œ×¸Ͻ0ƒ=º‘Ÿ§Ãñ´ÔÖáþ*k}é‚|SýßéO!DhtmæÈr*-Í þ›54–U¶ÃÅ¡6§ï·¶ÍÝAýÞTõ¼k¨ªQ^Õ.¯ygPÏ;{»3¨öD]Š÷A]ÍåU¯»‰º|æ=Ë«^å«kjùçÓÏ¡(JL>Gce5žw Õº+mëɘP²rbrLBq(ѵf"GQ¼†òC±qþ€Úöabá¶TÚ~j%ÂÔìà[ká[Ãî0×áÎ7Õø–A£¼kô¨±€ßÖ¬gö[ïréÅêþ9TáÝÌáçK¦±LÍ‘0!„ÑÒ5Lä¹”Ðï@î3¿cøã]EAUዠÑõ•h*è­ú÷šLm&VìI¦´Æìub ~²v ªPÆwЫFõZáÇ7y>ß3Li…+4žï»Þs^åñ'Ÿæùg§‘™‘¡Ûgi(¯ ¥f"Ä/\Ó£ü܈÷«Ç?@!„è tm[èÚ&½<ÔÛ]m;àÕÜujOj;.×Z§±¼Uÿ4ú+x÷^^õS^Õ­ü¾ýLöŒ;„èÄ´½”°.õ˜\]ãsœ}!„èHt­™èª:[ß½1ØãÆ¿Û1ClÇ6j¶µÂÂê²Ä–ý‡ô«Úß¼Ö¯xÐîSèW¨å=jßýù«eð­UPÃ(¯ú)àΦ­Ê«^åüi)ïýwÎ;G—ÏÓ¸c/Þ;ý?VJŠu9!„8”é& ®–a­u›3´Ñ%ÿs×¥7Ž+j_pÆZÔ· ÚýyÌ+‘îÏß|ýéÅ€#ûÓ­[×°?Só’õ´t¾ 3LôïÙI!„ÝÃÄ“£ù3àÿÿwÇ‹ëc[åüáêôƒT…3¯U‹à^zù µ!”W­ϲªŸmë]ã ú)¯†T¾®¾¿Þ÷ /¿ô/¼]¹yÉZw¾ å18H˜B=è>†õ&GDãLà‚Ý6Û±¹%ôÊÒDÖï³4öKˆvjê|¹âµ\mœ÷î/áùœÖã8¨~Ê«xwªôîóà=ïyoßòA:iªúSèÓwBQaͺ üóééa}¦ÆíåwWñý{èöýBˆC™îgî^&ÉŠJ}ã$CþÁØ8ÿum"Wd9õ>,þ»*-̾Ñíï—y㤄2šeSS€ïú¦æÏò¡ÜDñy~(Í%á4Ïø»¼4´¡¹ß|ë]†ÂÉ£F†ô™Z¾þíZ‰à_:59WO¹,T!ô {̈́ـ»¥ÖÝCƒ]áᄯ«õlbwµ™EÛ’½.·T<ΣÚó† ë=ç !l¯iÞ]ViÉÍSëyCõ:o í{ƒ.ÇÛ<Z­WT¸÷¾)-+ ésµ|³ wv)¨±ÕcçÀ~`nÛQW…¢³ŠI›Â°; kCª‰ðšWáÛê$쪃Š^>ø- §B¿šõÄI£ ¹ÖÀ·¼o­ƒo­„V­ƒêS«i­†ªñ|ÏòzܵTk=­ÊWTU3åž{™ùÒ ˜LþOöv‡Ëwëh©™ð}ÙÀ9ôݾ_Bõõõí}‡„äääö>Ñ Å$L—hWº{&Ôÿß§ZÕÀ•nÓåXÚŒÌ]›ŠKã|£Æx¾-öÑûŒõ>–,[Áó/Ì`ÒM×ûý\SÜ€¡ÖAdaBÅ9üp¿Ûí#99™-›6°äÇïÙ[¶»½§Ó0Mäæ[:b$=zE?â¬ZbS3‘dÇ¢ª8?ý&-Sáƒ})º…‰×¦Rk3€fÍ—k†[³¡ópÝJ¤¯GãóW>úËcŸû׋ 6„aC‡h~® ÿûÿA"ÈÎbÄ9´Ÿ.ß/¡Ÿ];¶ñÝü/8ñÔq—tÇh”f(=(Š‹Ý;¶òÝן@—’ní}H¢ŠI˜È0) I´óãA¦ŽÂÄ'û“y¢[%£ê»é°¸xÿ×Ö/õý%mÐy{žó?ë :Ô´ÞF¸û ÿ=1„\^Q&ßq7Ÿ|ø>ÙYY^Ÿ«Ãá$aîJÂîåÎÁ}P3¤ª7Þü¸`>£NÏ !ǵ÷¡t:]ºFÕÊç¾Íù¼¼½GtBºwÀl2&¥!p§KË]p ÁÈ÷U‰QÃw›“ÙScjŽºé2Í–K6c;ïyY§çzÏ!²õ+¯}Yi¸—¡FrÙjìæ÷”îå®)Å÷vå) 6b¨°¸ã¥Ñïrûèc£þn ý•—îÁZ$·„•úö ¼tO{†è¤b&NMoˆ(H4Ýüëí=)QÃ{+Ó¼‚#ÒyCŒ·àŠ‘°® hš÷w…Fë+,¿¢£e[á]ñ¡]þ˯¿a櫯{}®‰ï,£%„(§õwKèÏ¥¸¤i#†L&3.ż ˆÍQÀQɺšœl·™ƒ×<{NŠûïGeÉ<Ö×H¶Y‰hÿëÊ-,Ý™¨¹OwuºªQÝîži]=¯j”W=Ê«>ÏW=Öƒæ• ŠïóÍ7õ%ð\ïÙÁ³|°+A‚\‰¢Ä¢¿DtÏèáÇ6d0IEe%ÙŸ¬Æ»‰ÃÂËýEPJrpYÑwJ!„¶˜ÕL€s²ëÝá i c4L›ÃÀÛ»"¯˜½"Ýýë֣ɠ©ßÿ¼êg½ªQ^Õ(ïyWNßçû”WUŸIiœ´–û.ó™”`~–i,o®hÙ¾wm;ÌxŽpé]Þ·vÁ÷ùžåC«í°9œ\wÓ­ÔÖÖRôÎj 6•Hî Fì㇀!ö·ºBˆCIÌj&À&žÙ‘üG£FÍ*¼¶-•ëº$Üÿú÷Õšø|{*íªÏ|ÓzU‡òªŸòÁFÔŒ¢¼¢ú)¯úÙ¾åÛöî¢7maÊŸïåå½hÝñ2”š ÷d?[ûêök-aÙŽö> !„ˆZLÃÄ1ivz$8ÙRgõÿz¯0±®ÊÂü½IœZÐÖ~ßþ%›Ëûrж»fÓ‰Ñw}Ó‰QÿòÞ7üŠtÀªpËû†€èæÍ&¹¹Yó±äQ\”Oa~E…b-( Û†:Lo@¤aÂÕ#ç1ú7qT­ÿœÛîžÊ¼e1fucÂñøõ¡ .³Wÿ@f÷û©?ð%¶ªoÈêñ(õ>`Ó/òà¿?dw…ág]Ƀ“~ß\Õh]“å³äºG~bñoŸ´Ú¯Ö:ƒFVSçà@ë„8Ä4L\ZPËC›3†¿Ëø×†´°Â„Íià_ÒÚeª 5Š^ùˆjJT?å5ú‚(a–º}ßãu/ÏHK¡(?«5‡Âü\Š­¹î¿ÅXós(²æSŸ‹Ñ¸Õ-ýooÑÒdáùEñ&¼¿dö?êÉ¡­â[Fý3—=3ƒéïKíöeå{ üýÕ©•ÚúŸ] r¹Ö¶þô<çž{7›-ç³yñƒ­ž_Øí$ž¾êpþöò—4¤veòóïpû(kóú{÷ç¥]udöæÆ'^çÎÓÜ79³v=žËͼFmÖÑ<õ¿×ºó]~ù#”%tå¶gÞ`ÒH÷vÊçqÚ©Ò÷øî,¸u 7ÌùžÉóš÷ñ‡aóßųuxWÝZ~íÏòèæò? x¤_—}º††0â˜rЇÿ&Íà¥KŸô» ®ìN¼é#žúv57Ï÷Úg uBÿb& \œžSÏܲdí0(P4ž¿žþ-—N8t_ª ¯. twж˜×úEßxpÁÊ+¡–÷­h*¯êV>+=™ÂÜ Š 2ÉÏIã0k6Ö¼ Šò³(Ì˦¨ ›üÜ ÍêÝXH~f1¨FZBÓ_ï0á;ßX+qZ”‚tÝ럋Ëy|Fwï…oÉW·ü‘}—¼Å̳£ì‡)œ~ígü2ëw­¶¬ÜܯxoÑ êöißQ×Ѱ…•½aù†çÙòù½œyÃܾú¹æõ-[ÃcÀº¹S8uҽܹöeœ¶¼V=‚ïWÝÅ–ofpî…/ñÔ_Nbþ/+ùíåì«§0iÝ«|põ_˜üé<Î;,]ónçÄëf2yñ]‘½q!PU•»J28zY)*HáºâtÎ\Yι¹I–dfáѹÍeS‹ÿDýwÍÃs[«ü®øèO·rÎÌ5ÃB uBÿb&®8¬–¹{’½ÿ¿(|Ïٚ­ýk8*'píÄ­IlØgÁÿ¯~½j%¢œ÷ªqЪPð¬ð^¨¼V DK-ƒª*$˜ æfP˜—Ž57œTºX3)ÈI£¸ ‹¢¼ Šò3IJ´Äî &Óªr>ÚLK­„g`$Ü_&ÛÄá19¶5uN¥ù¯ýr7/>U@Þà›)ûá* u˜VnÔÄÓȲÉê’àw__|"GŽý+ × Ô,Ó÷ô¿`«äµì…ëÇ0à´I¸´„qgÞÀ ?<„íæ–{˜¼¸ûdæ–@ÑI¡v÷i@K˜Ð³V@uUóŸ锿§à¨]ÉëuGñï\÷]…Kí ]ZƤ0š2Pûƒ®x`Q=Ù[NÀrY5½ŸÁã³^ãìžA×wßßf@ë„èìÚ$Lœ’×@ÿkª-þ„¿@¡¸/V¸÷§,æŒ-¸Ÿ——¤áÒ*ÁkBæ¹e>аÓZÛ3ØžÁÏö ~¶gÐÜ^^F2ùYIç§bÍN¡8/•ÂÜT¬¹©tÉOÇš“F~vjÄŸc{I¹ïPšúSø«•Ъ¡p—užãäÞ19¶’D›œôMÖþ§´¶ÞIÏ$÷:SB1ΆM•+´„~·Á”Žª´ÜÛ¦aßî¿g:û,9¸ö®@UBk24“PÕ–AŽÖìx“\kK`0šÓB>¦HÍ™$[NÒƒUUé’`bSƒ“~ï»Ó¶SRw€€ë¶ÔîçÌÇ–2ÿœ,}í:Î8éVjvÎ º‡ âPÖ&aÂLêYÃËrZèÕHxþ]°+‘O¶&3®»ömŠ7î³ðÝæ¤ÁÁ•¾w“BÓ¼JK„ç¼ïzŸy¥¥¦@»¶ ¥¦ ÔÚˆD3e§`ÍI¤('kv2]ò’±æ$S”›Jan E¹©$Z:ßè ŸlÁ²pîZ ßÚý&¼ƒEÃM'Æll‰ëzfðoJyu¬ö0Ї'›ÙawÒ#ÑŒ³a#æ¤^Q•‹Ä­cþÄñ³1ñˆ,î|•ßÑv†e$ðÂoë(nüžÕí¨Õíµ¬{ùDþ°b*«žŽãà†Nq±âyw'ÚñyÉLûu?ÿîîÏQ¹æY2º_tÀÀ´:w F#.{†Ú«ó™A× !ük“0pîaõ<¸ÊEi)¬áù÷o 3SÒ@¢©õ/€×–¥6ÖJ„Óä ub÷ ¾ÁÀ38h‹¦×¢TZÖ5Íçg$Pi¡KN"Öì ³(ÎMÄš•Hq^2ÙIäeDß±#²Ùldý}1­;]ê7áýX)LÅvî‘1;Æó¦_Çýã.eö¬œ7¼;»~þ„¿Î8È›3.஑Vþ¹l?Ïoe×¼')<ñ¶æçöJ2óÊoû¹üÈÜ€å¢õã~g8jwò~dlvRDÛyàÊ#˜üÊ/¼sÍ \¶LüÃý¼»äåæõzwÀ\þÂFý»'_¿#¯z¿yÝ÷ŽdÐï.ä¸&ß¾•'&ý‡çlºàÏcйãíÅÿÍÀÿ–kÕBxì˳VBi©µH¶¨tÉ2Pf¤8ËDa&e@Q–‘‚L‡e›ÈÏ0Åò‡®\.·/GS§CÞMþj'¯2õ“‡A"×êTO®[ÑÚüÚKzÕñì¯él«1‡Ü¼Ñôø†Æ«û®|Ï42y„ÂÇ«’™ú¥‘-ûTÞ¼ÆÀ5# ¼¿Ô»S£•‚4…Ât'Öt…â,…Ât(ÎT)Ì0R˜e¤(2’ÛúÝZRŸÛˆùçJÜ#]<&Eã±vs‡Ò5ÛŇƭÆ%0!Ú[›‡‰£ÊGÕpË‚ìÐk®CňnîmÌ]‹’2¸v¨×N¥w®ƒŠÄÈ>þ1®–â Ö Å ùé*fÍ+뤿B¼1¯¨"åñõ´\½¡4®Ñ þ;cÖß6 ¸œR´?“Ñ„¢¸‚q¹œ˜ŒR­*b£]ê€/ì]˳¿¤³¡ÂrÀãŽÓú¿/4›’û—•jã€1]°˜àêÚ—ŠøVWWGÑ+Àa %L„S+áþë꓉í‚~íð D4ò ‹(Û³“.]´/³ÑÙ¹} ù…ÒEÄF»üt3áÇUBSߺ@=ÿ´Õýüÿ^é0½™¿ÌÍÀ’à¾ÜÍé°·åK:Ê¿g ¦Mõ¸¿–FÜÂs2j¸Onë—$„"ˆ¸#ûÙ˜qõwÿÿp‚D&·?NáäK¬¬fݘW)“Nâ;ZµÁD€@a2qðß=qœ˜ÑƯH!D(â>LünP=Ó¯<àr;’q'üL›¶˜9ó²|žš‘Ž¢ "¤( IÏXÈøÓ¦púF„0M|¦û8¹—BÄ«&.QÇÔ‰t›‡¦erÆ…¬^'mñá2­1‘uV)ÿHGèýBš Fj/Â~~V¿*!„áè0a`â)µ<>±²u ãªÍI…ŸW$pêÙ<25›MúRc³ÙH~,•ÌÓ²0/·àþ*…Ò¼bÓ‡ÁHíc…Øþ$AB!â]‡ Wžv©WU¸Ü# èUKñäÓœpª•OæJG?,s“)Õ•ä¦ë\ÑFŒFjÏÇv¹ô‘BˆŽ Ã… €ËO«å¹›ƒtÊÔ ªÆ:ßr*lÙlf⹜{n>+WJÓGÃJ Içæ“|E.Æ-þj# µj,üÔb˜L|6ÛeémúÚ„BD®C† € FÕ1sÊ~ŒjðÚ ë|C…ǼXôC"ãN·róµ9¬[s‡Š5Œ×æ`9ÝŠá‡Äæ·Ì;h…ˆDÓ:‹‘ƒ/ec??¥ _œBˆhuØ00nD=ï=¼¬TÅo-C¨}&<ç=ïS©*ðñœÆbåò ù,˜Ÿ„zÜ3LUU”ùI¸&䣞b…9)¨JKæjšB ÊP³LÔ¼“ý¬¤6|•B!ôСÃÀ GÙøtZ9Ý 4†ÞÔÄ¡ÕäÑ8¯yúSaÑw‰\wQeeöŒ4ª*;üÛ×JEe%öiÔ*ÄvQ®ïQŒæ¿™ÃßßÖ“ÒÕDõÇ™8Ž?„k„¢ëgþ]|>½œáGÚC«ð·Lõ>%ú›6¯³0õÞ,Î:ªˆ¿ß˜ÃO_'áttÜ+@'¶¯“¨¾1õ¨#©»7 ×:K«ZßÉ;P„Ú/Â{™s˜™ê¹i¸útН¢B’Ìí}zÉÏv1ç©rþ6=“o§ïx©±Ü jŸý… ‡ÝÀï§0ïýr²F«ç”ñu aÇb‰ï¶»ÃóÇ4êæ¤`û$*ŒÍ·Õ28@x5* ç|ÿ¢±Ü­áj#u7TH!D‡Öi€ŬòØäJnçödS_k«™Ã· ¡¿ßÛZA£ºÂÈÜ7RùüTÒRUl`ð© <ņµ«³ÍÞƒ@lÛÍÔÌO¤öë$¾OÂPkÀL˽9ýßI»œÑc¿`áj2ÔNûù·6G!D‹N&š\pfƒ·sí_søeUBHý'<[öý…ŠP'[­ÅŸ%³ì³dL@~‘‹þCí>ÜFïÁvºî !9¶5J½ƒk-\–@ÍO‰Ô-I@Ùcjusï`MÁj'¼ç›Þ9­š÷ëu£Pû¼Š«· !„è,:e˜èÝÝÉ篔óès<ûŸÆ{oh/ÑøWk„„HC>ó{L,þ0™eºÃ…Ù…Ýœõr’Wâ$¯ÄEF‹Ôl…´\…äl…ä,`²¨XRÝ'bG­¥±o†­Òˆ£Âˆmãß½&v˜°í0S¿ÉŒ}›“âÌø^‰¡Wˆp?6 F# 79¨»[‘f !„èd:m˜°XTî›\Å™£ê™ü×lÖ­·xŸ›úJ ]3áÛÔI-…gÀ é±å[ÌTl1{è=¶^ë±gh€ð‚ƒ¿ ¡5ïù¸uß ®¾*µÓêqU~^B!:¦C¢ ý°v¾™³—)“ªI0©­j&ü…}' þj-<Ëh=…oXð|ì¯öÁ·L(Wlø.ó÷Øë³¨¿³ª¯k%H!D'vH„ €‹ÊÝ·Vóí§{=ª¡U5P„[KŸeø™'À|ßÞþB„ç|$M¾!"Xð ŽSTͯ¤þ®zˆó+[„BDç MúövðÎëûxgÖ>ïãð áŠHš8²<м¯@¢iÞ7Xø.¤©#XpöuPóæ~jÞ<€«O|\Å"„"¶¹0Ñdô) |;¿Œgžª k‰S3Pš" ¾B þø Zå¢ ¡”s•8ixª‚ƒóËpœÚâ+BѲaÀl†‹þXË÷?–ñÈã»ü†hk' áÐ+^íÇ2œ¬íä]z…Bh9¤ÃD“‹ÊŸ&ÖòÍO¥Ü÷p%EE.]B0Ñ<ü7i„ûܰ¦"êÕ(?•¢L¬•~Bq“0á!1Aeâ5ùjI)=s€¾ýQ1‹ðH¸¡ ÜçÐßù™˜–”b¸æ $HˆBˆCTJkH°¨Œ¿°Ž³/¨cÑ·I¼;3•Eó’P†ˆƒD<ˆ4P`Q1n éŠZÌ£âç !„ˆ &0`ÄÉ Œ8¹}¥&æ¾Â'o¦RºÅý¶ ^Û qŠD8µþžã» ÀØÃIÚkIº°c¡+£BÑÙI˜Q^¡‹Ën­á²[kØð«…ùsRø~N2å;´ƒ…ï²PƒB JHðÇßs|—™Kœ¤¯'m|–£!n]!Ä¡LÂDúí ÏÑU\so›VYXþuËç'±~I"ª3ôÚ‰X µVÂ`†”¡62Ni õÔ’8¤C!DX$LDÁ`€ÞG9è}”ƒ ·ÖPWcdÍ¢6,M`ÃâD¶,OÀUoðôj+šÃC²Jú@;Ãl¤±“vœSº u-„"r&t”’®0ø´Ÿæ´Éå„ÒMv®±°ë7 ¥k,”­7SµÓ >]¢ ¾Â`‚äÜdôu’ÑßAú‘Òú;HîåÀ ŸºBÉi%†LfèÒÏA—~8§e¹Ãn`ÿV3ÛMTì0SµÃDí^¶ #õûØ*Œ8*îëv”ZwÔ°¤ªX,*& %«ñVå¹ IÙ ©.ÒJ\¤–8Iíê"¥»“\¶)„¢ H˜h–•¾ ûJG!„Ÿ Z%„Bˆ¨H˜B!DT$L!„"*&„B B!„ˆŠ„ !„BDE„B!¢¢Ë8 ¾š£ÇfÄ!àÄ1㮯¯¯o£#i‘œœÜæûBˆÎD·A«Ž£×¦D'”‘•Ë·Ÿ¾´ÜîÛùaá·”îÙÓã1Mä[­Â(zõéÓ} !Dg§ë˜]“ÿ”…¶ºiÕAËìØ¾•y_}Æù]F·žý0™b7@«¢¸¨®ª`ú´Gn"%]»Çl_BÑÙÉpÚ"n|÷Í<&\4‘î½Gq9q:l1Ý_ZZ:ã~ÿ¾ûf—\vUL÷%„™„ 7Êö즤{/\ªÚ6·E/éÞ“²wgµÉ¾„¢³’0!â†Kqa4šqØÚlŸ£—â ^P!„_&DœQÛ¬VhÓ} !Dg%ãL!„"*R3!âªvÎ} !D'%aBÄ9½ !DÇ"Í"ΨºL»ï~N>e4—]~Eå…BDC„ˆ/:d‰Gý?¦?÷/–.û™9s>bâåWã°;$K!DŒH3‡ˆ+îó{øgx—ËÅ÷ °aÃFGóò 7òËÊU t¬Æþ$M!D´$LˆøÁùÝawòò˯ðÁÿ¼o:—œœÌGá»’%„"j&Dœ‰¬íÁb1sÅW–žÁ믿ÀgœÕjåôÓÆÐõ°.~¶+iB!¢%aBÄH®ÖüaÑb† ?Ž!C‡áp8xë­·2d—]z1II‰dgeinW® BˆèI˜q(ô3¼KQøqÑb†;ŽììlÞzë-EaàÀ˜L&Š ‚lSÒ„BDK®æq(´Ë6øå×U <´9HÌš5‹3N?·ß|¡C…¸-!„Ñš WT5´¦‡ºúz6oÙFÏ^}°Z­Ìš5‹Y³fqÁ6dÖ‚¬A·%ÍB= "ί-p8lظ™nÝ{RRRÂK/½Ä—_~ÉyçýaCrX—¢ ÛðÞŸBˆhH˜ñ'Èù}é²_8ê˜c)..æÅ_dáÂ…üñŒ<þ8 ­áåÉB5 "îHjï¾ý1kÖ,æÏŸÏàÁƒ9ëŒÑä‡=• Z%„Ñ“0!âKVŽïþHII EEE 2„sÆçä“N ?/7²ZÉB5 "ÎN'p“o¿‹¿ð<}zõ$?/'às‚ïO!D4$Lˆ¸ìôþÏiO„U>š} !„N„ˆ?my½¦\*„Q“A«„B©™qEQ\.g›í¯-÷%„•„ 7LF.—»­¡ÍöÙÐPÉhj³ý !Dg$aBÄ kQ1õµu8ì¶6ÛgYé¬EÅm¶?!„èŒ$Lˆ¸qÒÉ£yé…iŒ:y4ùùy€!†{S)/ßÇÂï¿fì¸sb¸!„èüt Y¹ÔM«ÖksâTÒµ;£ÇŒå‡…ßR^V†KqÅl_&£‰|«•ÑcÆRÒµ{Ìö#„‡ÝÂÄ·Ÿ¾­×¦Ä!lÀ±CpìÐ6Ýg}­„`!„ˆ†.aâÄ1ãõØŒrbBˆHÆ™B!DT$L!„"*&„B B!„ˆŠ„ !„BDE„B!¢"aB!„Q‘0!„Bˆ¨H˜B!DT$L!„"*&„B¹¹B褾¾¾½¡ÃKNN©Üb|$_NNŽnÛ’0!„:Ù½s;?,ü–Ò=»ÛûP:“ÑD¾ÕÊñ'Œ¢WŸ~!=gõÊå,]²‡Ãã£ë|, C†lj£Fë¶M B¡ƒÛ·2ï«Ï8ÿ¢ËèÖ³&“ü÷*EqQ]UÁôi0þÜDJºvXþ祋XþóbF½zNRJFƒ¡m¶ƒSQ±ÙÌ|ñYRRS4ä8]¶+ßv!„ÐÁwßÌcÂEéÞûp—§ÃÖÞ‡Ô¡¤¥¥3î÷à»oæqÉeW,ûý·ó>l8ýúÍž›¨­©FU•6:ÒΡoŸÞ|ÿí| BOÊö즤{/\‡œØ"TÒ½'eïÎ ZÎn·Ñ»_vmÛÀ°‘g¶Á‘u.ß|úéiØíú^ B¡—âÂh4ã°7´÷¡tX£—â ©lRJ:õµQ n‘0ô½˜S„BèF•Z‰(„óÞ TU‘÷;NH˜B!ÂÔ¥[7¿ëvmÛÖ†G$L!„žTµ½ ãŠä½k‡÷;5#›¹?¼Ó<__[OUeµûq}]ºuc×Ö­m~\íI„Bè(šS[ZF6«+ü®÷·îPÕÑ-+'€n=Jøñ»%Øl-Ëvïm·ãjO&„B/ªñ/å´ÌLº“ ËW¸CCÕVë?s¶æºN£ƒÔL4Ù¶e‡WðrˆÕPI˜B]E~©Z³ž‚¤”VÛIËÌeÞÅWÒ°w_ÔûhKi™¹¬ÚÆ3"y]í÷^lÙèî¡**£ï Yã3Ò‹ÜèK!t¢F1ÕTígÜW0óÄ1¤eæ¢â$~(ÛÒ~*×ÎåOãFRh-¤¸ßpnŸþmTÇéÉ{Ò–ïy¨Óa=zú=Æää$ ¡½õ>ŨýÉÎ)¤ïÐ3xì_½Ö7}æ*PºèzþtÌ>½I˜Bݨ47uD25jªH÷k*ð•K©©Üp ûç1rô ºîI6mßÉòŸ¢ö£yÑWɶ-ÿ{÷¿,Z_ÙúõDø„þ–Çîu¡ª”ôèÉMw\EIžšÇX_ïg\ŸíT­û7§Ü6»_ù’²²­|üì |9å,^RÞêýRUÜô§ÙLŸ}ml^W H˜Bˆ8QS¹¯¹vâ“1góɘ³iØ»½ uܹt;Hñé5·qØý0ù÷CII0QÐû8^øô¯2wÕƒŒìë"ÿ÷ù®æå9…Ø}ßåt/*¢°Ïpž˜_Úò$ÕÎìNã¾»oaÄ€áÜþÜ×Ôïý’Q#®æƒO?àâ‘Çðä²àÇØQ”ôìÅìgPÚØ©²¤g/JzöÒ,{`_K­ ºú æú÷®™Æï^›ÁØ£»`1'Ògøxf½y/Þðf«²+ž¾˜ÝþÙ¹Iú½˜“>B¡#5¿ü®XðÕå!m{ê¢ržœÙ½uYÙÇÝÌãÀÚocÔ S˜²é  ›ùµÏ¬Úö"›?½‡1×ü;7¼ÀÏŽg÷ßâîüåž\qǯ¨ªÊûïäŽ/p~I;¿šÄqW½ÈíËÿܲÛ0ÞHÞ»X¼ß]{õföÇ38X}ÂâÎøÝ©Íë ï¾1£Á€%ÁBvN]{Æ1ƒ0ûå÷4ë™u•¼70ÇkyÎ17S³}ªzsó2[õ".z¦ž¯× Ùk‹ B'2²ó}:Z¸¯>¤º¢<äm¬®s08-!¤²ýμ†Ê^˽ô$Œ»Ÿ†+Žh^þ·ÿÊŒ;ÒHÌ:–Ùÿ9€vŸÊ÷%îåÅ£î§v÷IÀŸéÈš‚ĶÍ;P…â’"ŠKŠ0½+ôFN§‹ k7ñîsøyñ/lß´±Õ6·Û\tMô>嚻Თz-{óÆ©RÆÚƒNŠsL:¿²Ø‘0!„:q7IGök23§ UhÙnèÛìšhbc½ƒ~ÉÚÿ½×—/æ¾»ž¢ÅÖ`¸Û=»ÊXõËvlÛÉŠe+Ù¶a}ÀmŸóü$¾»y",Û†ÃÑÀoßÍæükçqÓóçj¾ß—¾øþr +Ú;ÄÕÒÌ!„:Šä¿êª5뛃Dåþ2÷XûËÈʵòɘ³™yâ2s­T6†Œ@²Lâë§íÜtë¹Ü²£ŠünGré-6×{S¯d¸!Ü’Ú‡‡f¿Ç/Œ÷:fßãošù±hòõœy™Ž2rFÞŽ ¼çFO¹’“ÇÖ‘¢8ëñéÍÏyùï0aܱ\¾mGHïC$ïÞ§Æ­ÖÓ½O_ÆŒ…ÉìÝoAUTJ÷ìeõ¯kÙ³«Œ5«Ö³uÃú Ç‘Ùïz¾z²š®<+wÖ`í},W>ý·•­ùþ›’ûðæó'3fâ+¬~ïÝ^_¬H˜B]…wz«Ü_JVnaócßçïm¨Ó3#λùçÝ®y\ý/~U?زøùo›×ùîßsÞ`ÎdÊtßËU0&rÃÔYÜ ±¯£¯y’u×<òqÇGœ€­ÖѽO?—˜³NFUöï«@U*T±kÇö––7‰u!Ñîâ» wù=~ß÷¿xÌìã]&^I˜B½DX\¹oOËó}–gåµ” ²í¦²A÷¯"m戭ë×Ò½ïáX,fUeþçßc4[• eÿÁ>èŸM&„BGzŸÚ*O2¡l·"È )Þ߯G½D‹-ë×Ò£ïá~DŒ&#[Ö¯hßÁ>—p¶¯$L!„ž:Ð@Cq'Žj&šlY·†ýú³eÝùl«9„Bˆ¶¬[ÓÞ‡÷¤fB!t¢( .§³½£ÃŠä½“÷;>H˜B˜Œ&\Š»ÝÏ]$EP ¶zLÆÐ†V{ÈûUm=ºg4$L!„¬EÅÔ×Öá°ÛVí}­‰IDATÚûP:¬²Ò=X‹Šƒ–KHHÄnw×HüºtA¬«Sª®9HBB¢nÛ“0!„:8éäѼôÂ4F<šü¼<è0wUˆ*åûö±ðû¯;¥GŽ:…7^ù}ûô&;3ƒAºÿ…JU*ªªÙºm#G¢Ûv%L!„Jºvgô˜±ü°ð[ÊËÊp)®ö>¤Ãd4‘oµ2zÌXJºvZ~Ð㨫­eé’E8­ï"³X, zƒ†§Û6%L!„N;”ÇmïÃèÐêk«C*7vüEŒQŒ¦s«© ýÖöÁH˜B„z"ÑÓóD(¢' MB!„ˆŠ„ !„BDE„B!¢"aB!„Q‘0!„Bˆ¨H˜B!DT$L!„"*&„B B!„ˆŠ„ !„BDE„B!¢"aB!„Q‘0!„Bˆ¨H˜B!DTšoA^¶kk;†B!:*ÃÈ㇫í}B!„è¸þ†Ém²TIEND®B`‚agave-0.4.7/help/C/figures/tetrads.png0000644000175000017500000002243611224443302014462 00000000000000‰PNG  IHDR––<qâbKGDÿÿÿ ½§“tIME×#v # IDATxœíy”Åç?‘YÕ‡ºÕ¡nµH¨%²è;ƘÁ– cðà]lsXãñpسx<ö0f–Áclãc0o°Ç^sy½fÌÍ,ž5>ÞrHxm<–Çên !BHêQë@H­>ÔU•ûGVugeEdFVeõe}ßû½ÌÊ̪Š_Ô·¾¿_DFDÂ1Ã1Ã1Ã1Ã1$ 1јhÚ€…ÀIÀ`¶HÑlÛ4#¨j%Ì0Œ É8ûeŽýÀA`7° Ø löO€/“¨Äúšfµ„en–YB ëO ;ë˜ÑBjÆ Xõ³!UçYºÞ{cvrG=>Coáí#wè ~‹´”^Zi xÕɲ¸u‚üœ0üAK¤xIæXqÁ7¡eœ°š€]SÙç:èß o½û6Á³"Å&™ãÉ”|ê 5јÈϵ¬`é»o¦B*îã{¶äý°áA2û6ñ\’ß1U`Mt&3WÒ{` i'S½ïp2p` é“WÒ[½o™¼øƒ…,YX 6¬¶aõÐü²nì‚ÖŽê|g_7Ü· îîÅg²; klXcÁÚ ;«ó­“Ó5ÚgIÎIÃ%|Ђå.žö}`Õ•V©…D'LÅLZ‡MíÞ'™À>+ŒXÁÖ`˜:Oí|÷É>’û&Oî59ˆ%‰<¥ ¬«ÕÕ­ZÁ}Ò¥[ ~¾w_/)ôuÃñóḖòÈvÒ¹1»šºävÎLΛò1ñÄ’Ë.ûEmQ¤*¨V‰Â,xÍq ÷À÷uõ_E©”Žx*²iÔ*hmÀ‹rëÄ'öI,<ãK`=VC8¡ì¢×aФ3¹š:`O‚ üÞžRb©:BÃ,R­œPgpy\¾Ì— £Y'E¬dÇ£`ÿ=XÂD©â„D¡tŠÖÔ‡¶ÃHåNôÃÁíúüJ•¨Ç&•™ $ÏF•/';˜ÑA¬™Èwþ¬+ŠIe*Õò¶¦a0*DÎl÷v’ȳúºAJ³>,]hT‘­H¥‚jåhÌ;Cü\þš™•{ãM¬fä¹kÁzo1¡ÂB î¼müVuK¶õ‹¡fV2ýY}=0c´.ï>0 ‡£¤Ò…='äœÿ¼ä½Ø¬•ÿæÊ=4Çx«yþ¯À:«”0ñÔª°-$òå’ª¨>ÅÚÓ­ÑP.¹Fö Z™¨Vñ¹³€_'¹Æ‹XMÈ žk™šP&j¥¾.ìÏÌ»t}ZI%ðû‰»îVŽ\~¯µJd¢Z¥[F–§åÏiªÜÓhŒ±jÿ¬³‹'¸¯S¬0"ÚH_¾¥«cÝíž‚Íl‡›Á)ßIgömS¬ Lú±üž‰(©Î©T«xÿl?–OT?¡¯6±ò?ÿìÕ¥¤‰“_éBç˜jÅ!WI(ì7ëÍ,û6“…S5}XqHU¤VêÐ/Ï*Þ_M-?¨vWDu‰%?|;ØW—æGQj¥#•ž`q’ø ±N»®²¾¯ÒupÒiñ{ÜKö8„Ò©UØõ’«ù1·—ïm4ªG,yåG õ3™,øYþ¢(ú tê¥ê†(L®¨$ßÓ '­€TJM(]>U¢V5¡T |eöù()ßãpT‡XòãízlNލËô¸÷³DE†°ãÌ oíìí.ƒqÊï‘6o kýÅQ«±c—åô—ïµÕ ÖL=#µŠêŠû©P-R¹ä'Wl¤¬ÉÒ…¾Å‰»)¹Šö‚Z© _¹B©ˆ7ƒÉÿ™|jòÄ’7Ü ö²ê)ú:ÕRõi5­‚ìÜßåƒ[!3§®R+– ¹l0%C²äʱ —{ã{Žd‰%oº쫪£R©ˆócÿÿ°ßDG²†w€°ËKàûzÀ²á”w˜µþTfœ?å"ΗgWÉÿÁõñ=×#Ibµõ­äÈE$½…µ¾uä²¼ÉåŒßÓåMž¨o¿ç§ â£-Áò'º|[~;¹aÎÉÍ„–Ÿû.Èúâ†6¿v|[|×h?T±iåÑÅÁ)ùQýó¿.XSGùŠUèq7!T‰ZU#R…NÕ¿kìu=.ßþ$~ ”"Å’·\© +S¤”æXðÚ”æÚ j e}ªTkt¤C™·v c°ât-Œp®S‚•(¨HÁëâ+Ú…ò\¿J‘±!õf #ŠŽ8)ÍuÁc¥D3ͳüŠ5´ŽÄXÑêH/ ìëj0IÒCÕÊOš0⯠/Šˆ:¹ü£¼½ò±ó•KÞþ°ç›çRºý°÷…Qo2зE°†2&Wø'O˜ÊÿZ ¥ZQЦH&¤òl>ðóP£2bÉ;æƒýi³¤:,Ìé,L±Â®;§#SðµÒs`Æ‚xƒþúºaö8nŽ: †åW%Š£S#SÅ û,3R*æÓòï˜o^ ¥¨0yO} Üúâ*ÕµÇT |0‘&þ/ÁÞjNQHäu9m°¤3cNb-LN KÚµ!Põ#‡%Œp*炎úÖɶW…õ¸| ¸Î¼&ŠQ¾bÉo-ûZóD=J¡Ê}^­Ær-¡LYTõ;³=^¿·GU¤-Y0a7Q-‚E‘3ì=¥$½V~¾üUn* …·‚Ò‡9ÕlBˆj˜:‘Wk ~!݇¶ÃÑCÑpô7ybÎBº ˜(•6VÃLª¾%™"Ë®5Ê#–üÎ"F{ØMk•ʘZ:æõjsó‰¼âϺυ»]8ïÌ~é:>fá°pÍ÷®ãCÍ08φ»-اË0-—dH“y}Lf „«åMå-þVÞ`/yï=à~R?Y7KäƒIA˜>‡Õp6`ß6Œ ÈR Ô5°¶îš Ï®dƒ,z/ÎÛÛÈe¹£^]¥ê5ÈãO%µãyO€‚õø{Iúx¸ 7×Agá;k‘F|ÅòÕoaä1IÂËË­Tû÷Š{ø1Q±æ!زV[×ÄtÄ*ì«ôÙ_«þZþ*jbA†ÎÚ4Ü:,ø­¶Rl~&,–¸Y~¼ôƒùÓ @°ÄJóNéòºtø€î³Þ’¼«¾V )§¨(áÄ º–#^›$íQVúSŽ X$î'ÖÒ)ñ[…ò‡Ÿ·ÖûfK°° kúMøÞçøÞçoAúû²ã¶KZ‰{À¹9'œGrQ.:|@:nPç8Á#ðj)¹Šw‘e^‰àêH¦X:Õ ’Ë”X*Åò¶µH>|5ÚÛ1”‘cYרpÓ–œ.wÒåRiß¹´¡¯M= öiˆÌ#ñýMBðCœFŽ'KF0át¤ 7ÉÅT¡x{Mlc]-=äoÕ7~Uá0*4ÿVº|K×Ä þµKÂàŒü%bÛý±ü¬2ä›Ü@†"C­2ª\Óý蕪•^©‚Ûw‰ÇÌס Ó×—ÂË!V!ôöƒa1x[7,<úÿ# äAl^ÏÇêCœÌýr [Éò¯di2…AB©r«¤B`éþ5`N¬8Še#Ÿê9G÷Íáê'™Û:,ùeöCæBÄoªøì‰Ê!G;Yž!Cshò^nk°œd]O®Ø´Š'1È>ã(–|úœ1Rù«ðZ¥Zº¹È*BÔ*l|€…W³aKnˆÃÀ…ˆ&5©Ä;é‘k¹,/á¸PRéúŸÂH¥"XØôpZy¯çåà×&¾ÅHÞ­Fwx†%íå$ç5>Ó¯ñË@͇ÏNzR :é!LJÈ)é‚ð[°'Eu¼œä>*‰/&ôMýŠA¬ô%á·iâ¶ãZL*«ý âÇkÌ}š³†,Ÿ)!“ÎL[:4íµv!æ¸ÄØ'£«ä³ Áz3|hp’9WT¾¥úKeGÜw¥©ã“òûhèÌ© 9µ!Ï'Å|zqh‰ 1ÂÞŽ£‰ºòDê‚Þ| ¶ 8í:ðö— oáý¸ØÛmöûÏ©ˆuð¶mƒÅ‹ãÕÆž=ÐÕ5¦nÝ]°}H ³š<²n,?RBQ :bÙ·—~6^§äG¸‡¿ŠìNPT]Î…-CÐ5ÝC™z†àëýè‹tÈ<‘€UÀ¼˜åÛœêí¾ø7ÿ9±®@ˆG¤Ó1¿Jþ~d£„ë†Í¯@6 uµ°b‰G´ö6o{æ˜QC4Árç"þô7•pòB~€wãòb¡†Ø0W Aèðò¡£Òë°9]x*T P;$²tr¨ódã£Àãþsªëd𛳤Óɬ¬ÛÔïyg£%Êçm]]c¡ôÑg``l–žì­})t´y6§ _m@ã¿'R¾ÉŒ>þãÄ¡¡àú8݃Ð3àéµ/B6 X ¼SÂx$ZÔÈê¯h†ì>X<§"Ö|,¨NIFKT«VyV€?o[¿Þ £w= ûxçÎË“­ NjÙÊõ__ì¨nA'b= XÂk»ŽÒQ ÑÎüpèæ|>t‰„³ÈçC2éÏ¢±Ø‡ÙCÐÄE9H)'…íÞ-ùéO%wÜ!¹ôRÉ¢SŠ[¶ý³jVÜDÀ†Ÿáóq‘@^ ò?¹Û ?“Â.òÄòGAJ+•šËœ9ãM|=æÏ÷쾉0‡yÊÖÙ –µÇhìÙ”K`-žͪR(KsÀJÁÜ`Ó¼”@¶=‡Ù³Ç§TåbÖ,8ÿ|xßû²Yãá²SYX÷>pÎfMta"0°aNð¸J™fP__ý%­[¼VïtÃö­˜ žhä™2#x¼”X–e!ªú4Œä00ÞdÒé†þ‰.!òÓ[JxTJ,Çi i\U9†‡-Æf(O' ¯,4Ž7;¼S¢ðÇ0õ JÞéŸ"Ñ¥¾ÞEño™h¨÷zƒ'=ú[5J‰åº.r·oýhl„dîNL64U¼ºì8!W©äO  …C W¿DI ­ÍbÞ)ŸXÜÆèI“y¦ «’÷o«dhònïÛ b%3™¢;O¤½}Þù¹ó=-ïð´´N\=q'Îw‡}Ï|:Å´œL¤$é§%z½nZN锜ŒÐÃ] *\o>okÍçmíÈŠ'S¨k?éô!6ožÅEQ2ý«»6l€#ýÞô¯…K<}ô³Þvi;Ìj.%P¶ÄÇ 'éÐB/ïÇ›09í ùØû‹I•Ì4E¤XÄ .õÛO–ž<Ѻâ)†¹“Œ7ý Á™0JóÓ¿¨^Òp( Ä™°š®ñò¡ÓÎÊ'Õí°d%Ô7Ž•JÉ£#R˜BI¥›V貆?ÓsÂ*7>¹ÕåÍVÕ)˜ZÅŠÍûö6Ž6޲žA61Bi4aU7>flŠýò•½|ùŸ¿É¢ÓÁN›È”\*™’jlúù¹|FL«\Kò¹wCöÅðu‹¢ÈeÍ ²¸lf˜±óo62\Æû ~/w!óæ«A¨°|*léïØZnÓkQnYNg©³¼xƒG°Ý‚ßG. bÖŸæ°F¹´‰™¬e¶¢ßTËû¥“ÛåUF~LH¾zÔuâ8 þ‡¦èV3T-µ~9Ï%²×˜øaF¬,kBX #Up?Œ\Á¥uëqú׌òˆv·ÈãŒ|™Ü8Î[!H*‘üÒ‘LEª¨uaýK–¬‰fD,ÓU“×âP^b7ô©B rY,ü$žG–û€©½T$ß»²óŠJ—ómU•QXõ0ªBã„F—âÕýæ¬5ñÅ|pûóò$ËËÊ£t‰z9¤R« rŸââ^cŸ&$ÿüIÈÞ£^6˜g©’yr…ý(&ù—»E°æ4Ì×ywy×G,Õ÷G+L±T­?¹t¤ò¶ßæ£ò5Fr=Y yj5d¾­~ªtam{ÿ6ø,W‡âcEõuÅ%Vá˜õ´©Oæ7Ãsü$b©f³\+,Ï 3³¥ªk8ÊS\,Ûýš`Hži‡š§¼uL–Ë¡¢\e’[…-¹nýÄÔ/óPø„´©£Éã|ª¥ Q …1î'Ë…¼ &õƒ$/¶CæÈ6—6uކUŽ®B“P.÷Ô¶ ž4§d®X— ‡,)Õ*Žré¶j5†­\ºšp3~ÉY²0VnÒAÒÓ 5¿„šfýÓ6t+IÇiõ…)W˜R•¨Öc¦¤‚¸ãÂ$i ¥ËÊíç2 ›*²yÇšÈñ –Ëbù8¼~ÔüÒMz˜„<Êí§Šzî¤x(Žñ§\OëÖ#æ\ËZNáüÐ:zƒxN€S€Þ_#Ï®…ÕÁÕ.´äÞq³¤¡ë” ÂÿxbÕ@ý=ùÏ nÝÀ5Á÷®)실ïÔù†òf ]/vàðˆV•ú`ÊmEª1ß­ºµjC‹ŸµáW pðt¾ÿ@+Ñ}¬…knâûOý_äA~åÂghÑý?Ìžñ¨ê:(§s3¬•Ö:ºÿ°à»;"+Br ¾†ËU¸¤";BƒJ\®ZÅíÊð™å–V[Á¬±mc†³XLÁZzuÌb6‹ÙÏΕkA7¼ï³°H)*+¨VÁmaª4¿Z9„+—_±`å ÷õÈJРüù%^ÅáÁÐ|H•k&D”Xæ(•*H*,à=Ì3P«æÒÎvzŠþKQÿó'ÓVj:ÕÒ=°Hµ|ûU㊠²‰³#|‡amEG¨°†NÜ÷è®ñ}–-ÕÕ$•ôÓe h¥mt…¶MJ]”þQ„ˆê&û<“÷‘jÒ_4®*#Öm¢—ß1Ê­ta-LåÂ^›’S£V*R9`˜Ý´Òa\­tpÝ‹JUË”º<)L}t}S‘äûŽà«½Æ• @åSý]¾‚Cohž¤ —QdQ]'¬:¥dò6ñ¿xa`^ b®-„C“ô2<$š„/ES‘IGæ"ëñã РrbÝ.Èñ9cRéöMwÁBL¸¥ ¥"YÁèf-ÌŒ±–ËLæÓH Ûèí²+˜ÿµ,)UXx S¢Ð°±_¢åŸÜ^ñÚºÉ,Nò5ñ.Ï“*Œ(¦Š¥S-n…:꬟îXùU^ßmtkTUdÐ%ÕaЇˆJr=#ø»'bW€É­zãr…DÞD‘ÂHbBÄÕ²¤:ŸR‘«Ðà>Bw¬a^ß]Ôi`~£!˜È‡å\QŠ¥má…|öèëa¨¹)¶ó$G¬oŠ­ž­gÖªhaJ¥"—d¶2߃£ 1Uô±•a#o8¨”Ë,VjQáÓúŒà3[c;¯A²ëtý“¸‡GŒ GÑb˜.ÔéB¡x ‰SV(l¥‡7xI«XQwì*'LÜsE¤zDð—Äv<É/7Â'qx5qŠ"šï—ÓVŸÂ }ÎGè"M#³i‹íòlÚ¨¥±¨?+Œ\*+ Ø•’ÅØ^…šOÆv:Éëâ9®Äa(QbEÝú „À°$](¶Gèa.+eT‰Àb.+KºL}Ä ‰¦-I#ëJÁŸ‰ítª³dåE9®ÅEV%‡Òü2BF‡=¹¼Äݼÿ*ˆ¹t°Í×2ŒCª1•ó'òª@ž¨I× þ¬*NªC,€‡Å¿àðU¨2R!Ý9Õñü/c¢V*rAŽ~6UD¬yt°‹MäÈ•=|{ÙΠºÄBHl>›_­ÆT­T×÷¯ã(”Ÿ`…þ+‹4-¬(ÛÓV`“ ‡Ái—q¬TiTÊcJ°’ë×@æ¡M˜ªL,àI‘!Ç¥8¬ %‰.6D*H*]( N\÷«Ÿæp:6µe»iSK §³Ã—À«”Ê´+BM¨0‚é:XŠ®]âRÁ噲5Dõ‰ð ÑÅ%8¼+Ç Ö¸âœpã‘Jµ:B¹=îA´ä{àUdŠ;r[–x¤"XTb_ô¾W¡îÁÅãòh·ñ!À/Ä~²œ‡Ãz-QtŠ¥úKûÔJ÷¿U©TP­ ŠUIâ^À<:”ŠwÅ‚«zÒ‘M§VÖz°Ï¼§dÚjaüˆð+±—NžW*‘®KA•À»ÅÝ Qy•j+€a¶“áPE‰{­´3Ä!ö°]Kª8-F®Ž7´IDAT9ZZUâ®"QP­,À~èORÁx àEq„#\ŒäñXy–âœIÂE.o –ˆ5¸O‡V:ˆÈŽÒ8Ý†Š¤9o=  þ8ñÐ(Œ?±^~ÏGqø2a¨!ª¥#jR“î\! Îb1µ <¤–&f³XuݺD¿´•hªV¶ëËÐñQÁUOÔU˜b $/‰/"¹W3, Ä¢ò)]²$VR‰{þ±YQ„R‡?±LÍq…`ūݥ† $V›Å“À¹¸l ‰eJ§fþׇ+¼•D«ïÖŽv¥©‹&—6nq®`ù“‰9T&&žX¯‰ ° —‡£j½°G)”Îü×dÙÇ0½‰äW´ÒÁÛôrˆ}¡ä2 ƒcïüû< õ«‹7$æL˜ÄØ/Ø-®ÁåF\Ž–ÃȦ"^“'¢Pø¬°ŽR“0#$ëFÁ‰×Z*«ž&± Ø+îG°—gUj—<º¾«B‹°¹4Æ~ šÌ£‘¹E-C]ŸV\Ò)TëY°W šïOÌ„0ùˆ°_lå°¸‡ËqéR« yLÃâᘓSMQ˜Äút }X·DÞ»^°/̼Pp\bÉ“Ää$VÃâIFXŽä, ºÛ6aÄò¦ÓÇã…VV…*–J¹Js*¥Š »ð`/ÔNx‚†ÉM,Ä®ø[–Zð} raä Û÷›Ãl­šby“+ŒI¥»õ“ßϹðý,µ+“&—Òa «±{q½ +Þ„({Õ—‰Â”#V‡;úaÃb n°%¬#Ôoàu5ÌåLÊ™<E+gŽæY`Ö:ta p°øDÄ_´"v$^¸qBj¢ P)v!þø*ðÕ6äÙ®±àJsÂ÷nÚxwÕÊ5—¶óµ:àÀc<´ ±®jgLYÅRa+bÝfħ—A«ç ¸SÀ– Z&OT#q/ •vvú&WÀ™€-.ÜéÂy¯Ck;âÓgL#RÁ4P,žD8À¯óvË#¬°z€—8ŒT%q/`äa/s*gîÖ¸°&k;;«öÅ“"ú’釙¬¼yÍwÞÊ °©©Êw8dø ò$Nÿü›l¼«*_2‰1­B¡)ްqþ–g«E*›æ°<û&ÍÛšF°'ºAê®AúæÕÐÈý,jhÀª°:2æMzYÇþ•—xؤÁ½'¡¢OLË+ ’ÜÓ6éÁç¹u™Kv€@ÈzNÈÎâfÐ’šÁ V=³IQGŠ:ÒÔe˜GÉq”a2Ä[îûr‡xƒaÞJK¤°H²I¿ê]3®Nþ s¬š6`!p°˜-H5ÛØÍ j€Z 3 # 3Î~In?pØ ìv[q¼p Çp Çp Çp Çp ÓÿóquË)ù-IEND®B`‚agave-0.4.7/help/cs/0000777000175000017500000000000011224443302011142 500000000000000agave-0.4.7/help/cs/agave.xml0000644000175000017500000004611211224443302012667 00000000000000 ]>
Návod k aplikaci Agave 2007 DokumentaÄní projekt GNOME DokumentaÄní projekt GNOME DokumentaÄní projekt GNOME GNOME 1.0 2007 PoÄáteÄní verze Tento návod popisuje verzi 0.4.2 Agave. ZpÄ›tná vazba K nahlášení chyby nebo podání návrhu týkajícího se aplikace Agave nebo tohoto návodu použijte postup uvedený na stránce ZpÄ›tná vazba GNOME. Agave je návrhář barevných schémat pro pracovní prostÅ™edí GNOME. agave návrhář barevných schémat Úvod Agave je aplikace pro pracovní prostÅ™edí GNOME, pomocí které můžete vybrat poÄáteÄní barvu a generovat z ní různá barevná schémata. Tato aplikace je cílená hlavnÄ› na návrháře grafiky (a zvláštÄ› webové návrháře), ale může ji využít i kdokoliv jiný, kdo potÅ™ebuje nÄ›kolik barev, které k sobÄ› dobÅ™e ladí, například na vymalování pokojů v domÄ›. Jak zaÄít Tato kapitola vysvÄ›tluje jak Agave spustit a poskytuje o aplikaci základní pÅ™ehled. SpuÅ¡tÄ›ní Agave Agave můžete spustit následujícími způsoby: Menu Aplikace Zvolte GrafikaAgave. Příkazový řádek Zadejte agave a potom stisknÄ›te Return. Okno Agave Když spustíte Agave, objeví se okno, které bude vypadat nÄ›jak takto:
Okno Agave Zobrazuje hlavní okno Agave.
Okno Agave obsahuje následující Äásti: Panel nabídek Nabídky v panelu nabídek obsahují vÅ¡echny příkazy, které budete pro práci s aplikací Agave potÅ™ebovat. Panel nástrojů Panel nástrojů obsahuje nejpoužívanÄ›jší příkazy, které jsou jinak dostupné i z panelu nabídek. Oblast zobrazující schéma Oblast zobrazující schéma obsahuje nÄ›kolik velkých barevných vzorků, které pÅ™edstavují barevné schéma podle souÄasného nastavení. Dále pak obsahuje ovládací prvky pro výbÄ›r nové základní barvy a typu barevného schématu. Paleta The palette offers a selection of color presets that you can click in order to change the current base color. You can choose from several built-in palettes and you can also create and add your own palettes. See for more information. Oblíbené Seznam oblíbených zobrazuje seznam barev, které jste si uložili. SouÄástí je malý panel nástrojů, kterým můžete seznam upravovat. Stavový řádek Stavový řádek nemá v zásadÄ› žádný význam a v budoucí verzi bude pravdÄ›podobnÄ› odstranÄ›n.
Používání Agave VýbÄ›r základní barvy Je nÄ›kolik různých způsobů, jak vybrat barvu, kterou můžete použít jako jako základní pro vaÅ¡e barevné schéma. TlaÄítko pro výbÄ›r barvy NejzákladnÄ›jší způsob jak vybrat barvu je použít tlaÄítko pro výbÄ›r barvy. Kliknutím na toto tlaÄítko zobrazíte následující dialog:
Dialog pro výběr barvy Dialog pro výběr barvy
Dialog pro výbÄ›r barvy umožňuje vybrat základní barvu různými způsoby, vÄetnÄ›: UrÄením tónu, sytosti a jasu (HSV) UrÄením Äervené, zelené a modré složky (RGB) VýbÄ›rem z barevného kruhu VýbÄ›rem barvy libovolného bodu obrazovky (nástroj kapátko) Použití tlaÄítka pro výbÄ›r barvy je pravdÄ›podobnÄ› nejlepší postup, pokud dopÅ™edu víte, kterou barvu chcete použít jako základní.
Palety Další způsob, jak vybrat základní barvu, je použití barevných palet ve spodní Äásti okna aplikace. Tyto palety nabízí Å™adu pÅ™ednastavených barev, které můžete použít jako výchozí bod. Kteroukoliv barvu z palety vyberete jako základní prostým kliknutím myší. You can add your own custom palettes to Agave so that they will show up in the palettes selector. To do so, you must first create a palette file. A palette file is a file in the gimp palette format. An trivial example file follows: GIMP Palette Name: MyPalette # 0 0 0 Black 255 0 0 Red 0 255 0 Green 0 0 255 Blue 255 255 255 White All palette files must start with the GIMP Palette header and a palette name. You can optionally include a comment starting with a #. The remaining lines define individual colors' red, green, and blue components ranging from 0 to 255. Your palette file should be saved with a .gpl extension and saved in home home directory at .local/share/agave/palettes/. If your file is well-formed, Agave will load your custom palette next time you restart the application. Oblíbené Pokud jste si dříve uložili barvy do oblíbených, můžete kteroukoliv z tÄ›chto barev v seznamu vybrat jako základní pro svoje barevné schéma. NáhodnÄ› Pokud jste uvízli na místÄ› a potÅ™ebujete inspiraci, může vám Agave základní barvu náhodnÄ› vygenerovat. StaÄí kliknout na tlaÄítko NáhodnÄ› na panelu nástrojů. PřípadnÄ› můžete použít CtrlRUpravitNáhodnÄ› v nabídce.
Výběr typu schématu V Agave si můžete vybrat z několika rozdílných typů barevných schémat. Níže jsou jednotlivá barevná schémata vysvětlená. U každého je k dispozici i barevný diagram, který na barevném kruhu ukazuje vztah mezi generovanými barvami schématu. Komplementární Generuje 2barevné schéma, které se skládá ze základní barvy a barvy, která v barevné kruhu leží přímo proti ní.
Komplementární Zobrazuje komplementární barevné schéma
Polokomplementární Generuje 3barevné schéma, které se skládá ze základní barvy a dvou barev, které jsou mírně posunuté od komplementární barvy.
Polokomplementární Zobrazuje polokomplementární barevné schéma
Triády Generuje 3barevné schéma, které se skládá ze základní barvy a dvou dalších barev, které jsou rovnoměrně rozmístěné na barevném kruhu.
Triády Zobrazuje barevné schéma triády
Tetrády Generuje 3barevné schéma, které se skládá ze základní barvy a tří dalších barev, které jsou rovnoměrně rozmístěné na barevném kruhu.
Tetrády Zobrazuje barevné schéma tetrády
Analogické Generuje 3barevné schéma, které se skládá ze základní barvy a dvou dalších barev, které jsou mírně posunuté.
Analogické Zobrazuje analogické barevné schéma
Monochromatické Generuje 3barevné schéma, které se skládá ze základní barvy a dvou dalších barev, které mají stejný tón, ale jinou sytost a jas.
O aplikaci Agave Agave napsal Jonathon Jongsma. Pokud chcete najít více informací o Agave, navÅ¡tivte prosím web projektu Agave. Pokud chcete nahlásit chybu nebo poslat návrh týkající se této aplikace nebo tohoto návodu, tak nahlédnÄ›te do kapitoly ZpÄ›tná vazba v Uživatelské příruÄce GNOME. Tento program je šířen za podmínek GNU General Public license, tak jak je vydala Free Software Foundation ve verzi 2 této licence nebo v libovolné novÄ›jší verzi (záleží na vaší volbÄ›). Kopii této licence můžete najít pod tímto odkazem nebo v souboru COPYING, který je souÄástí zdrojového kódu tohoto programu.
agave-0.4.7/help/cs/cs.po0000644000175000017500000006017111224443302012030 00000000000000msgid "" msgstr "" "Project-Id-Version: agave\n" "POT-Creation-Date: 2009-06-15 22:40+0200\n" "PO-Revision-Date: 2009-06-16 11:53+0100\n" "Last-Translator: Marek ÄŒernocký \n" "Language-Team: Czech \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==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n" "X-Poedit-Language: Czech\n" "X-Poedit-Country: CZECH REPUBLIC\n" "X-Poedit-SourceCharset: utf-8\n" #. When image changes, this message will be marked fuzzy or untranslated for you. #. It doesn't matter what you translate it to: it's not used at all. #: agave.xml:152(None) msgid "@@image: 'figures/main-window.png'; md5=e484e1a6723892f8c7f138fbc21c3edf" msgstr "@@image: 'figures/main-window.png'; md5=9287f17622a53db5e2e9a99cc4da5136" #. When image changes, this message will be marked fuzzy or untranslated for you. #. It doesn't matter what you translate it to: it's not used at all. #: agave.xml:231(None) msgid "@@image: 'figures/gtk-color-selector.png'; md5=9fa6005346d0e2075ab4d1224bec6051" msgstr "@@image: 'figures/gtk-color-selector.png'; md5=d9cac650781fb1f5bc1fef006fba6708" #. When image changes, this message will be marked fuzzy or untranslated for you. #. It doesn't matter what you translate it to: it's not used at all. #: agave.xml:323(None) msgid "@@image: 'figures/complements.png'; md5=9e2a0a06520badf060bf3f9bc0bc0f35" msgstr "@@image: 'figures/complements.png'; md5=9e2a0a06520badf060bf3f9bc0bc0f35" #. When image changes, this message will be marked fuzzy or untranslated for you. #. It doesn't matter what you translate it to: it's not used at all. #: agave.xml:343(None) msgid "@@image: 'figures/split-complements.png'; md5=77ba717e85f11d5cc029e20bec97e613" msgstr "@@image: 'figures/split-complements.png'; md5=77ba717e85f11d5cc029e20bec97e613" #. When image changes, this message will be marked fuzzy or untranslated for you. #. It doesn't matter what you translate it to: it's not used at all. #: agave.xml:363(None) msgid "@@image: 'figures/triads.png'; md5=29b2927c5529de5482a7d7c8e7ae2f62" msgstr "@@image: 'figures/triads.png'; md5=29b2927c5529de5482a7d7c8e7ae2f62" #. When image changes, this message will be marked fuzzy or untranslated for you. #. It doesn't matter what you translate it to: it's not used at all. #: agave.xml:383(None) msgid "@@image: 'figures/tetrads.png'; md5=e1d7ae6e911786e8cf9a47e956dd5753" msgstr "@@image: 'figures/tetrads.png'; md5=e1d7ae6e911786e8cf9a47e956dd5753" #. When image changes, this message will be marked fuzzy or untranslated for you. #. It doesn't matter what you translate it to: it's not used at all. #: agave.xml:402(None) msgid "@@image: 'figures/analogous.png'; md5=ffbe96570ab1be2aa7ac21397c77d3e2" msgstr "@@image: 'figures/analogous.png'; md5=ffbe96570ab1be2aa7ac21397c77d3e2" #: agave.xml:23(title) msgid "Agave Manual" msgstr "Návod k aplikaci Agave" #: agave.xml:25(year) #: agave.xml:72(date) msgid "2007" msgstr "2007" #: agave.xml:26(holder) #: agave.xml:37(publishername) #: agave.xml:44(firstname) msgid "GNOME Documentation Project" msgstr "DokumentaÄní projekt GNOME" #: agave.xml:47(orgname) msgid "GNOME" msgstr "GNOME" #: agave.xml:71(revnumber) msgid "1.0" msgstr "1.0" #: agave.xml:74(para) msgid "Initial version" msgstr "PoÄáteÄní verze" #: agave.xml:78(releaseinfo) msgid "This manual describes version 0.4.2 of Agave." msgstr "Tento návod popisuje verzi 0.4.2 Agave." #: agave.xml:81(title) msgid "Feedback" msgstr "ZpÄ›tná vazba" #: agave.xml:82(para) msgid "To report a bug or make a suggestion regarding the Agave application or this manual, follow the directions in the GNOME Feedback Page." msgstr "K nahlášení chyby nebo podání návrhu týkajícího se aplikace Agave nebo tohoto návodu použijte postup uvedený na stránce ZpÄ›tná vazba GNOME." #: agave.xml:87(para) msgid "Agave is a colorscheme designer for the GNOME desktop." msgstr "Agave je návrhář barevných schémat pro pracovní prostÅ™edí GNOME." #: agave.xml:90(primary) msgid "agave" msgstr "agave" #: agave.xml:91(primary) msgid "colorscheme designer" msgstr "návrhář barevných schémat" #: agave.xml:96(title) msgid "Introduction" msgstr "Úvod" #: agave.xml:98(para) msgid "Agave is an application for the GNOME desktop that allows you to select an initial color and generate a variety of different colorschemes from that color. The primary audience of this application is graphic designers (and particularly web designers) though it can be used for anything where you might need to pick several colors that go well together, such as painting rooms in your house." msgstr "Agave je aplikace pro pracovní prostÅ™edí GNOME, pomocí které můžete vybrat poÄáteÄní barvu a generovat z ní různá barevná schémata. Tato aplikace je cílená hlavnÄ› na návrháře grafiky (a zvláštÄ› webové návrháře), ale může ji využít i kdokoliv jiný, kdo potÅ™ebuje nÄ›kolik barev, které k sobÄ› dobÅ™e ladí, například na vymalování pokojů v domÄ›." #: agave.xml:110(title) msgid "Getting Started" msgstr "Jak zaÄít" #: agave.xml:111(para) msgid "This section explains how to start Agave and gives a basic overview of the application." msgstr "Tato kapitola vysvÄ›tluje jak Agave spustit a poskytuje o aplikaci základní pÅ™ehled." #: agave.xml:116(title) msgid "Starting Agave" msgstr "SpuÅ¡tÄ›ní Agave" #: agave.xml:117(para) msgid "You can start Agave in the following ways:" msgstr "Agave můžete spustit následujícími způsoby:" #: agave.xml:122(term) msgid "Applications menu" msgstr "Menu Aplikace" #: agave.xml:124(para) msgid "Choose GraphicsAgave." msgstr "Zvolte GrafikaAgave." #: agave.xml:131(term) msgid "Command line" msgstr "Příkazový řádek" #: agave.xml:133(para) msgid "Type agave, then press Return." msgstr "Zadejte agave a potom stisknÄ›te Return." #: agave.xml:143(title) msgid "The Agave window" msgstr "Okno Agave" #: agave.xml:144(para) msgid "When you start Agave, you will see a window that looks very much like the following:" msgstr "Když spustíte Agave, objeví se okno, které bude vypadat nÄ›jak takto:" #: agave.xml:148(title) msgid "Agave Window" msgstr "Okno Agave" #: agave.xml:154(phrase) msgid "Shows Agave main window." msgstr "Zobrazuje hlavní okno Agave." #: agave.xml:159(para) msgid "The Agave window contains the following elements:" msgstr "Okno Agave obsahuje následující Äásti:" #: agave.xml:162(term) msgid "Menubar" msgstr "Panel nabídek" #: agave.xml:164(para) msgid "The menus on the menubar contain all of the commands you need to use Agave." msgstr "Nabídky v panelu nabídek obsahují vÅ¡echny příkazy, které budete pro práci s aplikací Agave potÅ™ebovat." #: agave.xml:167(term) msgid "Toolbar" msgstr "Panel nástrojů" #: agave.xml:169(para) msgid "The toolbar contains a subset of the commands that you can access from the menubar." msgstr "Panel nástrojů obsahuje nejpoužívanÄ›jší příkazy, které jsou jinak dostupné i z panelu nabídek." #: agave.xml:172(term) msgid "Scheme Display Box" msgstr "Oblast zobrazující schéma" #: agave.xml:174(para) msgid "The scheme display box contains several large color swatches which display a color scheme based on the current settings. It also contains controls that allow you to select a new base color and scheme type." msgstr "Oblast zobrazující schéma obsahuje nÄ›kolik velkých barevných vzorků, které pÅ™edstavují barevné schéma podle souÄasného nastavení. Dále pak obsahuje ovládací prvky pro výbÄ›r nové základní barvy a typu barevného schématu." #: agave.xml:182(term) msgid "Palette" msgstr "Paleta" #: agave.xml:184(para) msgid "The palette offers a selection of color presets that you can click in order to change the current base color. You can choose from several built-in palettes and you can also create and add your own palettes. (add reference)" msgstr "Paleta nabízí výbÄ›r pÅ™ednastavených barev, na které staÄí kliknout a zmÄ›níte tím základní barvu. Můžete si vybrat z nÄ›kolika zabudovaných palet a můžete si i vytvoÅ™it a pÅ™idat vlastní palety. " #: agave.xml:193(term) #: agave.xml:274(title) msgid "Favorites" msgstr "Oblíbené" #: agave.xml:195(para) msgid "The favorites list displays a list of colors that you have saved, as well as a small toolbar that allows you to modify the list." msgstr "Seznam oblíbených zobrazuje seznam barev, které jste si uložili. SouÄástí je malý panel nástrojů, kterým můžete seznam upravovat." #: agave.xml:202(term) msgid "Status bar" msgstr "Stavový řádek" #: agave.xml:204(para) msgid "The status bar is pretty much useless. I should just get rid of it." msgstr "Stavový řádek nemá v zásadÄ› žádný význam a v budoucí verzi bude pravdÄ›podobnÄ› odstranÄ›n." #: agave.xml:212(title) msgid "Using Agave" msgstr "Používání Agave" #: agave.xml:214(title) msgid "Choosing a Base Color" msgstr "VýbÄ›r základní barvy" #: agave.xml:215(para) msgid "There are several different ways of choosing a color that will be used as the base of your colorschemes." msgstr "Je nÄ›kolik různých způsobů, jak vybrat barvu, kterou můžete použít jako jako základní pro vaÅ¡e barevné schéma." #: agave.xml:220(title) msgid "The Color Selector Button" msgstr "TlaÄítko pro výbÄ›r barvy" #: agave.xml:221(para) msgid "The most basic way to choose a color is by using the Color selector button. Clicking on this button will bring up the dialog shown below:" msgstr "NejzákladnÄ›jší způsob jak vybrat barvu je použít tlaÄítko pro výbÄ›r barvy. Kliknutím na toto tlaÄítko zobrazíte následující dialog:" #: agave.xml:227(title) #: agave.xml:234(phrase) msgid "Color Selection Dialog" msgstr "Dialog pro výbÄ›r barvy" #: agave.xml:239(para) msgid "The color selection dialog allows you to choose a base color in a variety of ways, including:" msgstr "Dialog pro výbÄ›r barvy umožňuje vybrat základní barvu různými způsoby, vÄetnÄ›:" #: agave.xml:244(para) msgid "Specifying Hue, Saturation, and Value" msgstr "UrÄením tónu, sytosti a jasu (HSV)" #: agave.xml:247(para) msgid "Specifying Red, Green, and Blue components" msgstr "UrÄením Äervené, zelené a modré složky (RGB)" #: agave.xml:250(para) msgid "Choosing from a color wheel" msgstr "VýbÄ›rem z barevného kruhu" #: agave.xml:253(para) msgid "Choosing a color from any point on the screen (eyedropper tool)" msgstr "VýbÄ›rem barvy libovolného bodu obrazovky (nástroj kapátko)" #: agave.xml:256(para) msgid "Using the color selector button is probably the best method to use if you already know which color you want to use as your base color." msgstr "Použití tlaÄítka pro výbÄ›r barvy je pravdÄ›podobnÄ› nejlepší postup, pokud dopÅ™edu víte, kterou barvu chcete použít jako základní." #: agave.xml:263(title) msgid "Palettes" msgstr "Palety" #: agave.xml:264(para) msgid "Another way to select a base color is by using one of the color palettes in the bottom part of the application window. These palettes provide a number of preset colors that you can use as a starting point. You can select one of the colors in the palette as your base color by simply clicking on it." msgstr "Další způsob, jak vybrat základní barvu, je použití barevných palet ve spodní Äásti okna aplikace. Tyto palety nabízí Å™adu pÅ™ednastavených barev, které můžete použít jako výchozí bod. Kteroukoliv barvu z palety vyberete jako základní prostým kliknutím myší." #: agave.xml:275(para) msgid "If you've previously saved colors to your favorites list, you can use any of those colors as the basis of your colorscheme by selecting it from the list." msgstr "Pokud jste si dříve uložili barvy do oblíbených, můžete kteroukoliv z tÄ›chto barev v seznamu vybrat jako základní pro svoje barevné schéma." #: agave.xml:282(title) msgid "Random" msgstr "NáhodnÄ›" #: agave.xml:283(para) msgid "If you're really stuck and need some inspiration, you can also have Agave generate a random base color for you. You can do this by clicking the Random button on the toolbar. Alternately, you can select CtrlREditRandom from the menu." msgstr "Pokud jste uvízli na místÄ› a potÅ™ebujete inspiraci, může vám Agave základní barvu náhodnÄ› vygenerovat. StaÄí kliknout na tlaÄítko NáhodnÄ› na panelu nástrojů. PřípadnÄ› můžete použít CtrlRUpravitNáhodnÄ› v nabídce." #: agave.xml:303(title) msgid "Choosing a Scheme Type" msgstr "VýbÄ›r typu schématu" #: agave.xml:304(para) msgid "Agave allows you choose from several different types of color schemes. These color schemes are explained below. In addition, a diagram is provided for each scheme which shows the relationships between the generated colors on a color wheel." msgstr "V Agave si můžete vybrat z nÄ›kolika rozdílných typů barevných schémat. Níže jsou jednotlivá barevná schémata vysvÄ›tlená. U každého je k dispozici i barevný diagram, který na barevném kruhu ukazuje vztah mezi generovanými barvami schématu." #: agave.xml:312(term) #: agave.xml:320(title) msgid "Complements" msgstr "Komplementární" #: agave.xml:314(para) msgid "Generates a 2-color scheme consisting of the base color and a color directly across the color wheel from the base color" msgstr "Generuje 2barevné schéma, které se skládá ze základní barvy a barvy, která v barevné kruhu leží přímo proti ní." #: agave.xml:325(phrase) msgid "Shows complementary color scheme" msgstr "Zobrazuje komplementární barevné schéma" #: agave.xml:332(term) msgid "Split-Complements" msgstr "Polokomplementární" #: agave.xml:334(para) msgid "Generates a 3-color scheme consisting of the base color and two colors that are slightly offset from its complement" msgstr "Generuje 3barevné schéma, které se skládá ze základní barvy a dvou barev, které jsou mírnÄ› posunuté od komplementární barvy." #: agave.xml:340(title) msgid "Split Complements" msgstr "Polokomplementární" #: agave.xml:345(phrase) msgid "Shows split-complementary color scheme" msgstr "Zobrazuje polokomplementární barevné schéma" #: agave.xml:352(term) #: agave.xml:360(title) msgid "Triads" msgstr "Triády" #: agave.xml:354(para) msgid "Generates a 3-color scheme consisting of the base color and two other colors that are equally spaced around the color wheel" msgstr "Generuje 3barevné schéma, které se skládá ze základní barvy a dvou dalších barev, které jsou rovnomÄ›rnÄ› rozmístÄ›né na barevném kruhu." #: agave.xml:365(phrase) msgid "Shows triads color scheme" msgstr "Zobrazuje barevné schéma triády" #: agave.xml:372(term) #: agave.xml:380(title) msgid "Tetrads" msgstr "Tetrády" #: agave.xml:374(para) msgid "Generates a 4-color scheme consisting of the base color and three other colors that are equally spaced around the color wheel" msgstr "Generuje 3barevné schéma, které se skládá ze základní barvy a tří dalších barev, které jsou rovnomÄ›rnÄ› rozmístÄ›né na barevném kruhu." #: agave.xml:385(phrase) msgid "Shows tetrads color scheme" msgstr "Zobrazuje barevné schéma tetrády" #: agave.xml:392(term) #: agave.xml:399(title) msgid "Analogous" msgstr "Analogické" #: agave.xml:394(para) msgid "Generates a 3-color scheme consisting of the base color and two other colors that are slightly offset" msgstr "Generuje 3barevné schéma, které se skládá ze základní barvy a dvou dalších barev, které jsou mírnÄ› posunuté." #: agave.xml:404(phrase) msgid "Shows analogous color scheme" msgstr "Zobrazuje analogické barevné schéma" #: agave.xml:411(term) msgid "Monochromatic" msgstr "Monochromatické" #: agave.xml:413(para) msgid "Generates a 3-color scheme consisting of the base color and two other colors that are the same hue, but vary in saturation or value" msgstr "Generuje 3barevné schéma, které se skládá ze základní barvy a dvou dalších barev, které mají stejný tón, ale jinou sytost a jas." #: agave.xml:426(title) msgid "About Agave" msgstr "O aplikaci Agave" #: agave.xml:427(para) msgid "Agave was written by Jonathon Jongsma. To find more information about Agave, please visit the Agave project website." msgstr "Agave napsal Jonathon Jongsma. Pokud chcete najít více informací o Agave, navÅ¡tivte prosím web projektu Agave." #: agave.xml:433(para) msgid "To report a bug or make a suggestion regarding this application or this manual, see the Feedback section of the GNOME User Guide." msgstr "Pokud chcete nahlásit chybu nebo poslat návrh týkající se této aplikace nebo tohoto návodu, tak nahlédnÄ›te do kapitoly ZpÄ›tná vazba v Uživatelské příruÄce GNOME." #: agave.xml:440(para) msgid "This program is distributed 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. A copy of this license can be found at this link, or in the file COPYING included with the source code of this program." msgstr "Tento program je šířen za podmínek GNU General Public license, tak jak je vydala Free Software Foundation ve verzi 2 této licence nebo v libovolné novÄ›jší verzi (záleží na vaší volbÄ›). Kopii této licence můžete najít pod tímto odkazem nebo v souboru COPYING, který je souÄástí zdrojového kódu tohoto programu." #: legal.xml:2(para) msgid "Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License (GFDL), Version 1.1 or any later version published by the Free Software Foundation with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. You can find a copy of the GFDL at this link or in the file COPYING-DOCS distributed with this manual." msgstr "Je udÄ›leno oprávnÄ›ní ke kopírování, distribuci a/nebo úpravám tohoto dokumentu pod podmínkami GNU Free Documentation License (GFDL), verze 1.1 nebo v pozdÄ›jším znÄ›ní vydaném Free Software Foundation bez nemÄ›nných Äástí a bez textu pÅ™edního a zadního pÅ™ebalu. Kopii GFDL naleznete pod tímto odkazem nebo v souboru COPYING-DOCS šířeném spolu s tímto návodem." #: legal.xml:12(para) msgid "This manual is part of a collection of GNOME manuals distributed under the GFDL. If you want to distribute this manual separately from the collection, you can do so by adding a copy of the license to the manual, as described in section 6 of the license." msgstr "Tento návod je souÄástí kolekce návodů GNOME šířených pod GFDL. Pokud chcete tento manuál šířit oddÄ›lené od kolekce, musíte jej doplnit o kopii licence tak, jak je uvedeno v bodu 6 licence." #: legal.xml:19(para) msgid "Many of the names used by companies to distinguish their products and services are claimed as trademarks. Where those names appear in any GNOME documentation, and the members of the GNOME Documentation Project are made aware of those trademarks, then the names are in capital letters or initial capital letters." msgstr "Mnoho názvů používaných firmami k oznaÄení jejich produktů a služeb je prohlášeno za obchodní znaÄku. Pokud se nÄ›které z tÄ›chto názvů objeví v dokumentaci GNOME a Älenové DokumentaÄního projektu GNOME jsou si vÄ›domi, že se jedná o obchodní znaÄku, jsou tyto názvy uvedeny velkými písmeny nebo s prvním velkým písmenem." #: legal.xml:35(para) msgid "DOCUMENT IS PROVIDED ON AN \"AS IS\" BASIS, WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, WITHOUT LIMITATION, WARRANTIES THAT THE DOCUMENT OR MODIFIED VERSION OF THE DOCUMENT IS FREE OF DEFECTS MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE OR NON-INFRINGING. THE ENTIRE RISK AS TO THE QUALITY, ACCURACY, AND PERFORMANCE OF THE DOCUMENT OR MODIFIED VERSION OF THE DOCUMENT IS WITH YOU. SHOULD ANY DOCUMENT OR MODIFIED VERSION PROVE DEFECTIVE IN ANY RESPECT, YOU (NOT THE INITIAL WRITER, AUTHOR OR ANY CONTRIBUTOR) ASSUME THE COST OF ANY NECESSARY SERVICING, REPAIR OR CORRECTION. THIS DISCLAIMER OF WARRANTY CONSTITUTES AN ESSENTIAL PART OF THIS LICENSE. NO USE OF ANY DOCUMENT OR MODIFIED VERSION OF THE DOCUMENT IS AUTHORIZED HEREUNDER EXCEPT UNDER THIS DISCLAIMER; AND UNDER NO CIRCUMSTANCES AND UNDER NO LEGAL THEORY, WHETHER IN TORT (INCLUDING NEGLIGENCE), CONTRACT, OR OTHERWISE, SHALL THE AUTHOR, INITIAL WRITER, ANY CONTRIBUTOR, OR ANY DISTRIBUTOR OF THE DOCUMENT OR MODIFIED VERSION OF THE DOCUMENT, OR ANY SUPPLIER OF ANY OF SUCH PARTIES, BE LIABLE TO ANY PERSON FOR ANY DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES OF ANY CHARACTER INCLUDING, WITHOUT LIMITATION, DAMAGES FOR LOSS OF GOODWILL, WORK STOPPAGE, COMPUTER FAILURE OR MALFUNCTION, OR ANY AND ALL OTHER DAMAGES OR LOSSES ARISING OUT OF OR RELATING TO USE OF THE DOCUMENT AND MODIFIED VERSIONS OF THE DOCUMENT, EVEN IF SUCH PARTY SHALL HAVE BEEN INFORMED OF THE POSSIBILITY OF SUCH DAMAGES." msgstr "DOKUMENT JE POSKYTOVÃN „TAK JAK JE“, BEZ JAKÉKOLIV ZÃRUKY, VÃSLOVNÉ NEBO PŘEDPOKLÃDANÉ, VÄŒETNÄš, ALE NEJEN, ZÃRUKY NA TENTO DOKUMENT A Z NÄšJ ODVOZENÉ VERZE DOKUMENTÅ®, ŽE JE BEZ VAD VZHLEDEM K OBCHODOVATELNOSTI, VHODNOSTI PRO URÄŒITÉ ÚČELY NEBO NEPORUÅ ENOSTI. VEÅ KERà RIZIKA PLYNOUCà Z KVALITY, SPRÃVNOSTI A PROVEDENà TOHOTO DOKUMENTU A Z NÄšJ ODVOZENÃCH VERZà DOKUMENTÅ® LEŽà POUZE NA VÃS. POKUD SE V DOKUMENTU NEBO V UPRAVENÉ VERZI PROJEVà V JAKÉMKOLIV OHLEDU VADA, POTOM VY (NIKOLIV PÅ®VODNà AUTOR, AUTOR NEBO KTERÃKOLIV PŘISPÄšVATEL) PONESETE NÃKLADY NA NUTNOU ÚDRŽBU, OPRAVY NEBO KOREKCE. TOTO USTANOVENà O ZÃRUCE PŘEDSTAVUJE STĚŽEJNà ČÃST TÉTO LICENCE. NENà DOVOLENO POUŽÃVAT TENTO DOKUMENT NEBO UPRAVENÉ VERZE TOHOTO DOKUMENTU BEZ ODSOUHLASENà TÄšCHTO PODMÃNEK. A ZA ŽÃDNÃCH OKOLNOSTà A ŽÃDNÃCH PRÃVNÃCH PŘEDPOKLADÅ®, AŤ SE JEDNà O PŘEÄŒIN (VÄŒETNÄš NEDBALOSTNÃCH), SMLOUVU NEBO JINÉ, NENà AUTOR, PÅ®VODNà PISATEL, KTERÃKOLIV PŘISPÄšVATEL NEBO KTERÃKOLIV DISTRIBUTOR TOHOTO DOKUMENTU NEBO UPRAVENÉ VERZE DOKUMENTU NEBO KTERÃKOLIV DODAVATEL NÄšKTERÉ Z TÄšCHTO STRAN ODPOVÄšDNà NÄšJAKÉ OSOBÄš ZA PŘÃMÉ, NEPŘÃMÉ, SPECIÃLNÃ, NAHODILÉ NEBO NÃSLEDNÉ Å KODY JAKÉHOKOLIV CHARAKTERU, VÄŒETNÄš, ALE NEJEN, ZA POÅ KOZENà ZE ZTRÃTY DOBRÉHO JMÉNA, PŘERUÅ ENà PRÃCE, PORUCHY NEBO NESPRÃVNÉ FUNKCE POÄŒÃTAÄŒE NEBO JINÉHO A VÅ ECH DALÅ ÃCH Å KOD NEBO ZTRÃT VYVSTÃVAJÃCÃCH Z NEBO VZTAHUJÃCÃCH SE K POUŽÃVÃNà TOHOTO DOKUMENTU NEBO UPRAVENÃCH VERZà DOKUMENTU, I KDYŽ BY TAKOVÃTO STRANA BYLA INFORMOVANà O MOŽNOSTI TAKOVÉHOTO POÅ KOZENÃ." #: legal.xml:28(para) msgid "DOCUMENT AND MODIFIED VERSIONS OF THE DOCUMENT ARE PROVIDED UNDER THE TERMS OF THE GNU FREE DOCUMENTATION LICENSE WITH THE FURTHER UNDERSTANDING THAT: " msgstr "DOKUMENT A JEHO ODVOZENÉ VERZE JSOU POSKYTOVANÉ ZA PODMÃNEK GNU FREE DOCUMENTATION LICENSE S DODATEÄŒNÃM VYROZUMÄšNÃM ŽE: " #. Put one translator per line, in the form of NAME , YEAR1, YEAR2. #: legal.xml:0(None) msgid "translator-credits" msgstr "Marek ÄŒernocký " agave-0.4.7/help/cs/legal.xml0000644000175000017500000000600611224443302012666 00000000000000 Je udÄ›leno oprávnÄ›ní ke kopírování, distribuci a/nebo úpravám tohoto dokumentu pod podmínkami GNU Free Documentation License (GFDL), verze 1.1 nebo v pozdÄ›jším znÄ›ní vydaném Free Software Foundation bez nemÄ›nných Äástí a bez textu pÅ™edního a zadního pÅ™ebalu. Kopii GFDL naleznete pod tímto odkazem nebo v souboru COPYING-DOCS šířeném spolu s tímto návodem. Tento návod je souÄástí kolekce návodů GNOME šířených pod GFDL. Pokud chcete tento manuál šířit oddÄ›lené od kolekce, musíte jej doplnit o kopii licence tak, jak je uvedeno v bodu 6 licence. Mnoho názvů používaných firmami k oznaÄení jejich produktů a služeb je prohlášeno za obchodní znaÄku. Pokud se nÄ›které z tÄ›chto názvů objeví v dokumentaci GNOME a Älenové DokumentaÄního projektu GNOME jsou si vÄ›domi, že se jedná o obchodní znaÄku, jsou tyto názvy uvedeny velkými písmeny nebo s prvním velkým písmenem. DOKUMENT A JEHO ODVOZENÉ VERZE JSOU POSKYTOVANÉ ZA PODMÃNEK GNU FREE DOCUMENTATION LICENSE S DODATEÄŒNÃM VYROZUMÄšNÃM ŽE: DOKUMENT JE POSKYTOVÃN „TAK JAK JE“, BEZ JAKÉKOLIV ZÃRUKY, VÃSLOVNÉ NEBO PŘEDPOKLÃDANÉ, VÄŒETNÄš, ALE NEJEN, ZÃRUKY NA TENTO DOKUMENT A Z NÄšJ ODVOZENÉ VERZE DOKUMENTÅ®, ŽE JE BEZ VAD VZHLEDEM K OBCHODOVATELNOSTI, VHODNOSTI PRO URÄŒITÉ ÚČELY NEBO NEPORUÅ ENOSTI. VEÅ KERà RIZIKA PLYNOUCà Z KVALITY, SPRÃVNOSTI A PROVEDENà TOHOTO DOKUMENTU A Z NÄšJ ODVOZENÃCH VERZà DOKUMENTÅ® LEŽà POUZE NA VÃS. POKUD SE V DOKUMENTU NEBO V UPRAVENÉ VERZI PROJEVà V JAKÉMKOLIV OHLEDU VADA, POTOM VY (NIKOLIV PÅ®VODNà AUTOR, AUTOR NEBO KTERÃKOLIV PŘISPÄšVATEL) PONESETE NÃKLADY NA NUTNOU ÚDRŽBU, OPRAVY NEBO KOREKCE. TOTO USTANOVENà O ZÃRUCE PŘEDSTAVUJE STĚŽEJNà ČÃST TÉTO LICENCE. NENà DOVOLENO POUŽÃVAT TENTO DOKUMENT NEBO UPRAVENÉ VERZE TOHOTO DOKUMENTU BEZ ODSOUHLASENà TÄšCHTO PODMÃNEK. A ZA ŽÃDNÃCH OKOLNOSTà A ŽÃDNÃCH PRÃVNÃCH PŘEDPOKLADÅ®, AŤ SE JEDNà O PŘEÄŒIN (VÄŒETNÄš NEDBALOSTNÃCH), SMLOUVU NEBO JINÉ, NENà AUTOR, PÅ®VODNà PISATEL, KTERÃKOLIV PŘISPÄšVATEL NEBO KTERÃKOLIV DISTRIBUTOR TOHOTO DOKUMENTU NEBO UPRAVENÉ VERZE DOKUMENTU NEBO KTERÃKOLIV DODAVATEL NÄšKTERÉ Z TÄšCHTO STRAN ODPOVÄšDNà NÄšJAKÉ OSOBÄš ZA PŘÃMÉ, NEPŘÃMÉ, SPECIÃLNÃ, NAHODILÉ NEBO NÃSLEDNÉ Å KODY JAKÉHOKOLIV CHARAKTERU, VÄŒETNÄš, ALE NEJEN, ZA POÅ KOZENà ZE ZTRÃTY DOBRÉHO JMÉNA, PŘERUÅ ENà PRÃCE, PORUCHY NEBO NESPRÃVNÉ FUNKCE POÄŒÃTAÄŒE NEBO JINÉHO A VÅ ECH DALÅ ÃCH Å KOD NEBO ZTRÃT VYVSTÃVAJÃCÃCH Z NEBO VZTAHUJÃCÃCH SE K POUŽÃVÃNà TOHOTO DOKUMENTU NEBO UPRAVENÃCH VERZà DOKUMENTU, I KDYŽ BY TAKOVÃTO STRANA BYLA INFORMOVANà O MOŽNOSTI TAKOVÉHOTO POÅ KOZENÃ. agave-0.4.7/help/cs/figures/0000777000175000017500000000000011224443302012606 500000000000000agave-0.4.7/help/cs/figures/main-window.png0000644000175000017500000013025211224443302015464 00000000000000‰PNG  IHDRtñäü!9sRGB®ÎébKGDÿÿÿ ½§“ pHYs  šœtIMEÙ 3 JÔÂO IDATxÚìwxU‡ß™íɦ‡Ð{ï ÒAE‘" ¢ ˆ€t˧" ¢„bì…Š ("©ÒAz"AZém³mf¾?RH0 ²û>Ï}&»³÷ÎsOf~sn)66—Ë…ÛíÆårár¹hذ¡†@ ARªT)Ün7‹…þùÇ#e–-[»ÝަiX,.\¸à‘rË—/ÍfÃd2qñâEñòòÊüìIÊ—/ORR±±±ŒÕB’YÖcЙÐÉô"ÎétR¯^= `æÌ™˜ÍfEÞ% H°X,lÙ²…æÍ›£ªªGÊÔëõlß¾€V­Záv»=R®,ËìÚµ‹¶mÛb³Ù £^½z™Ÿ=‰ÙlæÄ‰”-[–!C†h£G6—TMÂhлÝîL17oÞ<¢¢¢Ø»w/‡Cx–@ ‚[Ž,Ëøûû†^¯'))É#eûøø€Ñh$111ÏßkZZ'¥$I*×l6@||<)))™Ÿ=I@@áááØl6>þøcFŽ©½ñj I–ä´]½zõ´I“&qæÌ"##q:»@  "JÓ4EAÓ´Ìï>¾@ýÊk¦ä’Âû@ xTÐe«ëEQjj*z½¾@e¹\.¼¼¼²•_„ÎívH·nÝ AÓ4úôéòeˈÍñØ9‰ÏÜ"tŠ¢P©R%Z·nÍÂ… Ñ4-›¨s¹\”,Y’öíÛ³jÕª»›3dFÙ6› ‡ÃÁ°aØòùtM[àA‚ñ•¶â{ù~,ÑU„ @ ð˜ Ë*Z²Š"“ÉÄóÏ?_ ²æÏŸŸMÓä'èE¡X±bôìÙ£ÑÈO?ý„Ëå¢GôêÕ‹Å‹õ¯H]NuÍ+º˜@HHdæÌ™èõzt:n·›àà`zöì‰Íf#...Ǩ`ÖóÈZ÷Œ.b=@RRRC›’^ÅVm7ªäÂëj\~¤‚& @pCÂ.'Qät:III)P‡#[ô+«Êá‚´ÈXñâÅ8p 6›~ø+W® ióçϧOŸ> 89sæpåÊ CžuÍMÐI’D\\óçÏgðàÁ™eºÝn¬V+ !!yóæe¸¹Ù&+ÙÝôUkšF•ú%9í8€&»ñЍÝ^W‰ ÞK‰ó…g w+¦Êô}o4mü¢Y3ñ–^p »‚B“›(š;wnòët:ŒFcŽ‚.«Xr:TªT‰þýûÁ·ß~‹ÓéÌì^‰‰á›o¾aàÀ >œo¿ý–³gÏf–Óº¼&E ¢¢¢øüóÏùßÿþÇСCÙºu+ݺu#&&†Y³f¡Óée9WAw½ ÍzìtŠ tv/|ü¼‰W£O Æ‚&+$•<@Š_nÇ­™á!þ˜Ë·¦‘_Ƨ`š7/ͪóçóãAaÈ-B§×ë <†.«ÈÉ*„$IÊ&ˆdY&""‚}ûö±zõj$IÊ&¦dYÆív3}út:wîLDDD¶ý7¡ËzÉÉÉÌœ9“AƒÑ»woâãã™6mƒI’rÍ›[„.› »þä³âÔÇctûg~vÛ@µéA•0Ä•ØM±°ÎÄWÛ€¹„“ûëWdçÒ³BÐ w-*>Ð+༮x0M[Svi8akõÎ Ô™:±Ç×±)¹%=›úbÛù¯Ï9C_ŠGGŒ CÍ’øœÄÝÇêï²å‚L½Sxù>—y‹ñ¿]A‘¼¨7|*ÿkd"bÉÛŒ_‰\² O<Ó•VµŠcA!þìNV|ÿœOE\}‚;“ Á”S$ª0"1CÐeÕ;²,ãp8X²d ‹%G1•!ò–,Y‚ÙlÎ&è2fÏêtºZ¶D’¤ÌÙª"3c†m~KªdäËIÐå;Ðí|Ð*â½Nd~vÙ5œ© )`4q˩ĕ߆>ÀNÍ&i³_—$¼R ¸K‘¼«Ñ¶̾ŸsÈø6¢M…´iö’_#þ¯+uu¤†âŒvO4õÍ^ˆÎ›âA.ÎíYÇÊ¿±ý´“€J-éûr7*R8½ù 6 TËFÓƒd©Bë:&à<[ö]Añ©GÿÑCh_+„¤ƒX³5 C¥Öô=„&bü®@p§‘!‚2&d|öTÊ_YW† ²X,yÈ&ø²&Y–³}Ÿ5B—Sr»Ý˜L&LRR‹/Æjµ2lØ0œNg¾ùó|ùv¹*n”’ÇI¼zž’I ¥°%9Pݪªaò’qš/R½A9\N7N‡ŠêÅ‚£ò,'› Oî9‡wõ©kRޱóÔ L'œ4jh¥áƒ•1Ÿ:Ž¾ÚƒÔ3‰[ù|òwœvpüÍ© ¬*¡‘~Qr„ñãø ¸Uж] ØGC¨P‹êþ2gÃ6³/±mJ¶ Qð:6kMmhÿÎþhŸ¦hb¢~cÎëˆT¬\-9‰þÕêÑá¾önŒF%Üq¸Ýn¼½½q:‹Ðe,c¢×ë±ÛíÙ¢Z7}%”$l6>>>¸\®Eè\.AAA 2„„„f̘Ûíæüùó¼ð Œ1‚Y³f¡(JŽëÔå¡ËWÐéuÊ×·råïÂN-Ç”êE|l’T4MÁ/ÐI’p9’âìXKÈØê¯ÀhÀ,º^‚»HÏùP«mm €ýÄÂm)è¶ŸÂÕ°–úm©î}’Ë>H±á\ujhj2—/&BU?ÐÒ/>¦2´yn ]›–Ú- oÀ¬Í~Ž-»ãhóHIZÜ_ËåjcBáä¦CÄ*2%‹ù¥£XGÆ|Ü1[ýKù¡Ó¢K¤ wÐ¥%½;4))‰êÕ«søða*V¬xCãærˆÇ§fÍšX,¶oßN5²u“ÞL]N'§OŸ¦M›6Ù^%–Ûûg5MÃÏÏçž{Žäädf̘¦iFâââ˜7o}úôaÀ€Ì™3'×cç¤× <†.5Z#ìÀU|½ð-'s6‘Øh~!fÐ@q+øYp:Ü$''›@HEü}øëw›K'ÜEÈþuiW#­KÄÜx$ßÌ˲ÓT—¶5,ÌŠID¥4r@y‚ ±NoJ–ÉèrÕÐ4‰€fÏѧY9ˆßÍ‚ùÛ8¯V¢÷+=(Ÿv1BÓ\ض¨GºPâ¡§yÒÛÎÃl<š€ªAòÕ4Š#ÅneÎwŸq •dÔØK85MŒ£î@l6Å‹§nݺìß¿?[ôëf„—^¯§Aƒ¢ª*Í›7gçÎd¼%ëf1 ´jÕ N—õƒÜ'E(ŠBpp0 üøã™ÝµÝÌ.\à矦}ûö›£˜Ëkla¾:«£I‘a¤&¤¤¯-§‘éÀ'ÐŒ¦ª¸*F‹ŽèèÜ.…êµ*ããoáŸ1¸¯z A'Ü=rÿúm©&ÄröD©€„W™ZTôÓSë¡:ÈÓ~ç°£& ýÚòÚ˜ŽÛÊp_U)‹ »Nl¬”«Ó‚r×=º.ï`Ë¥.ô,]™@êþœHRÑ4H8º–})ÕhØŠŽ8ÙwÞ†!° Õj—åò¬w8&®;ÁKdd$¾¾¾têÔ)Ïw©MÓˆŽŽæÒ¥KøûûÓ½{÷B•™1‘!**ŠÈÈÈlû®_Æ$óê)Ëœ:uŠãÇc±Xþµ4‰^¯çìÙ³|ñÅèõzL&SÝ¿"t¹á¯VâêÕ³ܨnÅ $F9°øéeñ ñ¸íP§IUôú´~ß¿w'`H­*ùdž?:—ò'QŽ0$³Õ š Öe}5d£FËÇj¡3¤‰¹sGb9¼*–Š)3΂{ £·WŠ3-§ æ¡qŸð\E¸üó›Œ]!Æ· ‚»’£GÒ®];¢¢¢<{U•$üýýÙ±cµjÕʶÏív³råÊüÇД÷j„Eöå\òþt¦’©`´:ñ1Êxé-\K@oÐqv_—Ã)k´´Ymà^ÂB­að”rƒÿØð®Üœv÷ Ö[t‡ ‚»EQ8{ö,/ûôéÓžySD1S‚ŒHqÇ‘âŽ%Ù.1•ÔT7¸C8~†"%ãe+O¥²fbN ¸'q‰©ÃCt¹ •+'gõ‚ElŽr‹«‚@ ¸kiÛ¶-»wïæàÁƒ-W–eÊ”)C»víþ5n/C¿IV«U{â‰'p»Å{@ n½^OpppæX8O¡iÉÉÉÄÆÆþkˆœÛífÍš5è…ù@ ÜNî–1\.·ô¹Íü-p—«@ tÿMÛé…1@ Awg’ñþ[=€Óé@ ¸Ců^(c@ ‚;±ê¯@ ÁŽˆÐ @ A'@ ¸ˆ.W@ ‚;Ñh_¹råÛWceúŽ‘ íà¯DU´H¦]ÊóÔ¸W¨ù÷N$(ÿ­6¹®n’©„ò·¸-%ciÚ¿ô(Ç9rÉFQy.°9CG?õ䟄'ßâ£Ê¾4è;”Ž0R÷§G±p]°åðÚ,#žÇÿªŸeljxñÒ{@ ¸ùûï¿ ú¦¾Õæ©îR·”7n#ΰû—ïX}Ævw¼›Ñ\ƒAû‘:}å»ãWqûV¡UÏçxñ?>Ÿºœp5Ÿ6ѲÔÇHPÂZæí 'U®ì¹¶ÌUè&pdÁTŽx¢¬Ìó¨J§‡Ëqø—piÕÏ<‡ŒÓÐy… ?ô öÇã.¢'-ù8 &ŽÎïWéuôÀÿ¢@ înA§ó«@IÝ~Ýö1©ñ\8¾‹ ×$¦Ò-xúÙ.Ü_Æ )ùsÕü¼ý"vS^|· Ç?œÌæh0Qé™qô³OçÝ_/à4$|k?Á«Ã›SÉWáÊÌýñ.9´¼Ë6VáÙqÏaØ{ ßzÕ)&ýÅØ‰?ÞäÝ3]ÓidtZƽ_C3VáÙÐþÿ<µZü¼­¸Ã×ñ]F]Mÿ®Ï·“Wbè4€§šW&Ø,ãŽ?Ë¿cÙá$B:Œáõªk˜øÕ5UžÇ@ù[&üì¢Û;QgOåØÃƒhéç /½ÇýŠƒð%S™¶'þ¦NSò®Áã˾hË$¤E}¢N²aî‚ƽHûÿà“½ù´IV›h&*?܃ŠçN°82¿¶}`}ºôéN«jÁ˜\ќشïû‹$Cšít»Ža­S`_+ZøoÌš¿•Ëùå½ÙЕ¦æâìÚíx=Ô•ûÿ‚í1J†žK;?É—Zݯµ_NíjÊÇrõÝüÍ£í8ƒ’ë¹J˜Ë·£ß€ÎÔ †„3ÛÙ–,Cbº “³×÷š¿Å‹Ÿ@ ÜÅhR„ýáÎÊtëÕ‘fµ+P̪'ë«a%Kz¼ð$%ŽÎæ­—_æ­YG(Ñ}OT1#HVqýV¼?’ÿ½ñ5ûƒ»2¬KyL)Û@í2çXøa(c'.( ìOí’aü8å}&Žÿ„ßM’^Wr¨Ï§†#|#3Ç¿ÊK/bòo6šöíM}«ÊÕ{ˆ-ßšê>éV2—£E8ºó|Z¤€TN~?› qlýâ-Þxãí›sÆõ©l<Ï®“‰Ùnðšý<ûN¤Rºa9Ìù´ÉͶ%Ærtz±5/.æÝW_â•w—×x ÏÞç—æˆ†j— gÑÔIŒ÷»‚;Ó«Qú¾<òwÄ,ÿ«8=Z ‹ôo¥ŸsûIùúCî¾k *¯¶Ïã\u–*ôÚëŽÏxýå‘|´7ðË2v"Ÿú àîtZf—bÎIM9ÎSg³ËY•‡û¾J臟ñÁëOq°MÓ0”nF=Ýa–m¯sõ-ÝŒºò!Vl=Gª¢prkÂ\×Î)ŸúŠ$’H"‰t÷¥w¹‚†=ò k¾;È$ þUh×ý^%|òï$[1¥œ&Ñ™ÑEé$አS odÍ•mYGùdTFM!*Ñ•YwB46S ¼uRže'¡©vâmJáÇl¥‹7YÊ>þK’$È*Uq)îÌß()q8Ì%ñÖihªöïúH^TxðIz´­C)o=‹Æ=hJ ‡w^¥SËÚøì=@éV5püŠK ÍxÀÌòwaPR°ƒ±êA³kÙ´½ÅߌjKÄžO›hJöºe«gùdk>Þ•0îýÌqh’ÎŒaÆ %¢i’íJ¦Ÿ¸Ý*²!M`å•÷¦m’¥îî+ÛXz¤-ÏuªÎ‘ÃY}"öËÇòô]åï\Û^ŸÇ¹š¼1&Ÿ$Ñ•!¤íÄ^MAÍh)ïú àîDãY4\ñgغ1ŒŽ*høD[,¯| 6íЀoq/ñÉ(’·*¡“µLá`ò2"¥fÕÞûè´œ:ß`¼1$»AÍ«ìôúxd$¸’JœÃL¹32ô®O ”äý“²•â~$Ò„ªÞ¯xf]ÓãÙêc(ó(;òû§¡|v1ÅPŽ'ǽHZG¡Bì‘D>Þ’º¥lÔ®žÊŸŸ^&·y¬’zÍœ‘GøÛ9€µ}9°'!³ÛU²”£I- —Ö]À®ùçÙ&yö£çÕ–)1$&F1;ôþv\—ÏT%Ïzç™×h6N­^O̘î<é,`ûåíyûnîm/çq®¦ªU±›°è2ÊÔãíoFŽ*`}@pïv¹ÊÁ÷Ó¹CªóF/K˜ƒkð`û*讞&ڥḰ“Ãj}ºµ­„—,ãU±-Ý(iãìW9@ªþHš†.ø>ÚÕòBÎ*”,ÔéÜŽJ^2’¥"m»ÔÂqxÎ|Êέ›ôf’ó2û$R¡SG–´ K&‚j¶ç‰†'wœ#5³®fjuy˜ÊÞ2²Weêz­®9uÛ¢· wÆŠ[“ñ©Þ†FAúÌè¤w„í—JðH.TKÚ˾׿»¦;‰N3Á¦Bw»ªÉÇX¶æ"•{¥[ÃRXõ:LÁÕi?p-[ùeW4î|Úä_ÝæYþÎ+ŸýüöÚÒó±ÚAC‡wñ*Ô*gEÊÉvYfoæ•·Píž%R¬Dídé~oìP#k¿¼ü!?ßÍ­íó:W×ù]—êñ`Mß´ÿ§by¨†©€þ&’H"‰$Ò]Üåšoð‘eç¹öÏd‘@³yb ³¾ÝN´¤žá—¯~¥w¿Lîâ…d»ÈŸK¿añ_v4ÍÁö…©9` ï·O !ú 'Î$R,ëÜ1üyÄ—'Þù”J~*W.gú²ô%$ò*ÛèImëàÜò/ù^߇£?fÔ¤ ì_þ‹%] º¹cØ{ЋnoF%?…«—^«kN±skYrlýÇ')1•”ˆ0Ââ²ÄàÔŽm;Ï3ý«quÅŸ×Ö=ËfŸHv­?ÉýÏMæ›ÁÂLäãm±7yžn"7}Åä”®<Ùýu&6ƒ’ȹýøì»ß ³k`ʧMò,>|ŽXþù·tîÝ“±Ÿ¾€YRH¹rš]K¾åTd~Í“{Þã‹Ò¥ò÷o«9×ü*´ýòò‡¼|7¯¶ÏËNÿœfñÌÍ xn º$aK¾À™“ ´¾@ ¸+‘¬V«Ö¶m[a‰‚`ªJÿ‰ýHüj"¿^7IáÂ@pûÙ¼ysÁ&E̘1#ÏýC‡½ã‘ß9 }yªÇ&'ü§Ïó.hÏ"±…'«@P Ôåz/Üà tަª÷ÆyÞ#[ànA²Z­Z›6m„%@ î@¶nÝZÐuè@ ÿUôáááÂ@ w(’ÕjÕ>,,!@pR¿~ý´ÛíÖ@ ¸Ccè@ „ @ ÜNda@ !è@ ·Ñå*@p‡#"t‚l¸\.Œü—K¼l¾¨©U«?ýôSžÛ¢®O~IØóÞ±§@ øo#"twn·½^ËÊOJJâÄ;CÇþÂôw{`0„Ñ‹¨]BCCQ½BgîÏkþµ0aBæqTUE’¤[~^ËvžÉòIÃdЃ¦ßzY–s´Eaëæ){>{…-[¶ðÙœEÿÚÞ{þïƒYמ¦% «·9ý°ßM{Ëì)îA'¸sˆ‰‰¡xñâ·¬|»ÝŽOHij4ªÉðÐåL›ÐUˆº"j— &Îçß.eXïŽÙ¶¯ x‚víÚ1lØ0Š/ÎÑ£G3ÅÈ­¾ÙÇ$¦àeÒS6È‹FÕËdî«Q£FŽy>\(Aæ){nÙ²…7?œÆ˜a½³m?=œÞ{† Øß‡æõ«ñÔcÜr{ !è Œ¢(Dlü‚ä]³©8æ&“éž5ª¢(Ì{¹Ý'®ÂßßNç±²#""<&è4M#Åfgë®Óì;z‘¿#ìÄ»½èûD3ôF#n3ÓéD§ÓÝt½Í7§(ßαÉOðä§'p¡ïx¢]BCC™öÝ/ zº#ŸÍù‰ÁOwdîO+y}Äsât:™üõw¼> ßüºyóæÑ°aCTUÅår¡ªªGý8MÐÙHµ%“jKÆa³áVÒ&Ëèd ·¢âVTd>ÇèïíöóÐÐPfþ¸”1#žåËï~ëgùqùz>zg$¥J•º-ö4› X-f¼-fÌ&#rúº[mO‘DéîN™‚®0‘¹Ëë?£®î2AuBVXn"ˆ“²ý´nÕŠV9¤Ç§ÇQ iă/öÁþé Æ…wäÕN¥ÒÂŽcLîÖƒOO8‹L%ÇÇÇÓlÔRvÍãc~âø÷¯*ovj IDAT€¢(·]Á«ªÊ–'ùýP4µï«KùrÅP‘P4 E“P‘ÒD*y5•°Ãûx½ÍÜg¾:ÿfFÏV´j÷*k£Õ̯“¶¼ÈCÏÌç|ÖlÊÖ}²ïèYÁøy¬ÉÅwŠ˜ &0àéÎ|:kCŸyœ¹ —3ú¥ç)Q¢N§“‰ŸÌdàÓ˜¶ð7Æ éÎ׿leîܹÜwß}™Wžžà”!èì¶ìvª;͇õº´K‡šËáþ ­&L˜ÀËÏ÷fÚ÷¿òæð¾,Z±÷ßz•²eËÞ6{šMF¼-&¼Í&,f#úôÈý`O@ðßæ¦ï[™bN:OP퇑Uh*f¨²âQiᤴmV®ÚÁ:|f·¬w‹Ùô»šµtb¶¼Ëà£xª{ Úy+û7ãÍ…«o©Á—/_æðÏÒdÔÏüùñS4õ û>éI“‘¿ðçgOÒìõeœúê þp/»ç¾Nû7fÃG=¨ûÜ×øúúªûµ0].š¦‘˜ÌÊÍQ¢j}||½P4 M…+ÑÉœ½˜È•X¶®²LDd GÿØÈ =Jâïï_€.׃Ìþá$m^©%7¿‰?³ÍXÞhŒî?ôPXßñDWXhh(_Ï]Ȱ¾Ý™»p)ãßü_f$éÝÏf1ð©ŽÌýy5#žéÈÀ·>ç!Ý™0ý—LràÀw^ër/ƒ„ª¸³ÛíõzÊžs.cäоüðëÆ¿ñÒm·§ÅdÄËb ¼ŒFtz]‘ØS Ü#‚îFŸþ2Åçªõ :Õ† ¨ø>:_MAÓÜ ¹AuâÕ™¶UœÈ{–r91‘àààô«·ƒáÚ…ÍùÏR&M9Lý1séUɈ–z˜÷{'õáFÄø‹˜„Dôuú1ntwªXÒ®€ÎÈ?˜ýáW,=ÝX’¦½ß`쀚œ~÷-VDÇÂ˳Þ`¡ÖK3˜úX±BE¸þ,½¦ÿÉžyïðô7ûÙ3ïmžþj?»ç½EÏÏ÷³kÞ´{7;¿HÃ_³óÓ'hþÂ|¶OéH˱Z­…u7û´®( þ8N‚Â}¥ƒQ4 ˆ+Iœ9´@ÝU,¡ç·­õk–äÈÖŒx¢UªT¡X±bèõúœ­i€‘:ýº’´ðkÖ=ý]KèқѭËî¯Cùdõ"RT¾˜Ý€î¯ŽcXëbèµ4`.#ÇüÌžH(Õz8ïëAe³h¤†­à“f³þt<øU¥ý 1¼Öµ*^’JʉŸxwâl¶_‚àûºÑÍWA J?®ýï÷žˆ«SsvàbLú:ý™ôNFÙ¹ûN€ì]$í’5¢´gϾ™»€‰o½F™2ep8é⣳ZÅ §;3eÖbÞü8ã§-aÜÐŒÿæ§L²ÿ~\.—GDˆÁ`À iX `6Ȩª’í|s;†N§C–e$IBQ”›ª‹'ìyüøqfÿø ïŒ|%JÜv{øZÑH;/?o3º, îVÛS ÜÝÜp—k¦˜SÎ\½²bGsÛAq )45-¡:ThМ ¹2·’œÎœ»@ÕäCÌ3ƒ¸.“ݮص(Ž+Š]áõ=c> M£WÊ\ÆÌ<‰Àñs_{—=ÕFòãÆ­lúáEНÏ{¿§Òxì{<\œ'>_Κ5¿JÌÄÆÆÒäŸÙ=ëMšôŸÈîÙoÒ¤ÿ$vÍ|½Ç±mÊ“ÔìþÛ&¶¦ÚÓ“Ù;¹-5ûÏáÐgÐô•åüº+ÉÉÉ7ÝýZ˜ ¹ÓédÿñK”(‚‚„[ˆ«6Âï§I%'Ov¬OƒºÕˆü燷®gÄŨZµ*ÅŠ+ЄSÅ'Öä<ßÎ?LÊ¿îÅ^µžáƒEùcëZf÷÷aí{SØŸ™uE°i³‰¾3Ö²yŇ4;3©£Q-å_¾þá-ÞeùæÍ,¿ÿ|5Š/¦ ¦âË·æßå+Ön]Çìg4Öo&[Éy…Ýgk3júü¼øK:]žÍÇéeçå;EQš0aß-ú•ñ£_¡|ùòÄÄÄðÁ—sÔ« s^Í §;gF”&Î\ÆÛƒ»2zòLF=×™fýÂ?þH£F2» KPPUÊ•àÝ×3éõÁ¼:èilÙ¤@¤Y³fÔ©S‡ÚµkS¯^½öwOÙsÉʵŒye8%J”øOسrÙ†?ýß~Œg:·¥Ù}u‹Äžàt74býgTwœ$¨ÊýÈn;(×R6!çˆEM G‹>†zeêåí¨·¢\ØŒ¬Ëå˜î«üþáÛ¬ôÂûCêã-eÙ'ûÒ²W;Jé54} ìÝÇë8ëаŸ^ÎÚÄæŒèׄb Cñ–<ûL ޝ:F¢šñ<왇~~~ì›ò¾Ïž™¯ÓðÙ‰ì˜üÕzŒe×ĨþÜ7úäê¼´‚ßt¦îKk8>­u_úãÓ;ÑìµµìOu73QâFÚëúd·Û táïçKÑpk~1‘ÒÖZ5­MåÊ•)Y²$%Í1 ïL•*UÎŒÌå™Mö§ÉóOã¿i«.:Ѳܨ4ÉŸºíšQÉO’íK{Ÿ0öœOŸh!ûÑzPOêèÑù×ã±6DÀ¡iØÏ¬f›»5ÃzÕÃO§Ã¯îÓ kãfÛÊ¿ˆ;³†Ê î^/IG`ã¾ ¨oÌÞÞú@ÚôjC ƒ†f(Eã&×ÊÎÃwŠª]2Ò'Ÿ|Âk/ ¦bÅŠ„††„–t…råÊ1¬owf/ZEÿ'ã›kx{ÐãLšñ+o z’>}úÐë‘ÆôéÓ‡ÐÐÐLRØ”À™¿ÃùeÙ^üz?l:ÎÂÍ'ˆN°!Ëò¿ºÍVšöMÓÞ£©õP6oÞ|ÓűØÂIr+î"q ǘԷûµr§ UJÆ¡yTÇÇÇÓxÔÏìùjuLa×ÄöÔ|y1G¦>FíWWqâËÎÔùߎ&âŽ}óõ^\ËÑi¨÷ÂZÓÆ/­dÏÒ/iÓ{T‘Fè\. .&‹ · I6"èÚ¶,Å‹Çjµ¢ª*F4Àjµ82—­[©ìã kµ˜÷æî§E묡×$Nüú%_ÿ²‹³ ndI%%Y¦­+=B'ûdk_£Ù€åB”Ä«Ø|”YAå|IÝ—ˆ=ñ*©¾ ÊÈ*yRÆ7»cK^ø™¯£õÕžV¶;ß)êˆÒÈ‘#ÿÞdÖ®]ËçÓf³aÃÖoØDhh(‹W¬gàS™óÓj†÷~Œþo~ÌÛCºójèTBCC)W®{÷î%<<œÝ»w“pmHC!"º—#"9wþ<ó~XÄ€¾í‰ûp5(Ñ G¯·¢þ+ŸÙêOÔÙ£œØô#«W¯F§ÓÝðOÙsÎü…„……1뻜8q‚_—­¸­öÔT•˜äT6nÝÎÃmZ™=ÁÝÏ OŠPkö`㎙<&í&¸rCdGZây´ä `N‹ùéÒ’¤ËPpd›!ýëZ¤’øçWŒ™—Ÿ¢MP=Áî.Ä8Ð0"Θó$YJàc½_ üƒJ3iáÔ5_¯B”>ÌËøûû³i\ž´Žï¶§æÈœüìqj¿–&æj¿¼:›˜«ûÂZŽMŒz#ÖqxÚ£Ô²Š53ÇÑ®ß[8Î^ý½0ãŠÒºi$œ.•ˆ„T®&¸P4, ²,ãííM™2e0 èõzÎ_Š¡ß{ÿàW¶"H2šË…íâ VÑ4çµ%îë߇ƒ¦±¢üµ©ο`âÜ«ôü|!_Tµ¢sþÅW}_'¦ Nê‚WÒb]PÁà"æ|–b¾˜}BðN½B²zíÁ 1Ú†Rº€ÿyùNµKãÆcíÚµ¼=ñ#^y(}ò%ß|>•jÕªqùòe¾™ÿ+Ï?݉ɳóÎnL˜¶˜q¯<ÏÀÙ±cqqqT­Z›Í†¿¿¡ë£ª*ÉÉI\ޏ‚ÓagæÜï2ðqRÆ/¡sÓ*¹æË+V¬ÀjµâååuÃÄSö¼pá3¿[ÀóÏöâÇÅKyað@BBBn›=Í& —§ª±iëvjÓªHì)î‘.ׂb2™(^¼8ú†}YéÏ•#kp„mB<ˆ–z˜“ù—¸ËH×GèÜ‘ëx?t-ÁƒÇól5.§gFʈà`cïœEIPPŽòÓ¬=XZµ§¢ÌÕºñ¨e3Ÿ»‹» š“„²ûd<ªäMÙÆ¥+)¨ŠÐ5µ˜#v¤æÈœúìqj½º’Ÿgˆ¹ÎÔyqÍ517ã1ê_Ëá¨=x5«§ågÞ@Q,Ë7˜\¨•fð1Ø »Àù(NEÃèeåÈéØk6ƒ/// Š¢ðǾpJ7lB™e)Ó ,%ëT¤LùRRRrI¥;2´]"‹¿?‘¹äŒæ´á2…P¾¤7:bÿ\ÊÆHWÁü®êc´ÒocÆâ£$( Ç3s«LËNÕð¯úMÕm,Þ‹ 8/l`Ñ~[Û:/ß)Êv´Y™Ÿ|1—†ögÒGŸ2bpý¼˜ÐÐPæÿ²šOudöO«Ñû1&Îø•w†ö`âgs åòåË¥E£ ;“:«¨²¥¤Í߇³ÿð1¦ÍšË²ñ=Xµ' —[É\n#'ñáç燷·7ƒá†#nž²çâe«ܯ7‹—¯aHÿ¾¬Y»î¶ÚÓb6âmñÂd6#éMlݾ³Hì)î‘]AŸ†eYÆßߟ *pŽ~¬?0Ÿöº­y!=çÔ Ù.-MÔe¦,ןÙú}/o\ÀÎ$;|=€Ç¾¾î udzbJèKÐîDf<÷(ÇbeÊ>8Œ÷†ÔĤih¦<ÿÉXä¿b`‡7IQ ø•k@‡áoqÒ<Òû~6¾ß•C-Ôù_=~ó¯òóócé[xd춽ߙ&#—°ýÃN4ym)Û'?F“W–³çÓÇhúêo›žEÌ=¿Š5ÓÆÒæÙ1ÞT$BÕÔ›Ž^èt:Júª\ŒMÅ+Àd&«™ÿèhtò"õk—˼‘ªªÊÑS—ØsÎ ¯Òfd½$§S¡˜‰¢”¸V,۴H÷lj®ù˜cécÙŒÕú0¢ùۼׯA>øV¨Kýc6?È÷–¶Í©ñjÀ  ç“ÇÐuN"øV¡Ý°x©¡’TŸ'=É{í[ ô½bœ0Cz£1÷Ecƒƒƒ©^½zÁǤØðÁ38yC«ÜÞÅh£££Q…Ý»wÓ A:ô¯m½zõ¸´dÍ_]ŸM̵î;H›ív³OØ;vî e‹–7]\´t«N‡P®$:“ÐáHÑqþCëZFš7, ÀžC—ÙvZO|p#¼ƒè :4Uâê™dö]É“ïóH7ÔÝBaÚ%ƒ_ý•M[¶Ñ§WO>˜úïOx‡ÓgþFBEïW’^]bÆÂÕôîÔšAo}Â;C{ðÚøy®ûÃÔ­[— *d.oá êׯÏS}püÔi@C¯Óaõö¦b…²<ô`k<×Îc¾GUUÎý¹>›ø(l$ÉSö,]®"OtíÌOK–ÑëÉî¬[¿¿N¼mö ;ÝéÊ|°PÝnÜN;ŠÓN“Æn™=ÁÝMË–-onaaNG@@çèǦÃ;·h—Õkç-ÖŒF#>>>w¤Ñˆ‹‹£}ûöÄÇÇç¸ £áðicæ¯ö˜˜¥›¿¹˜L&š7*Ͼ¿Ž‘”„ÅdFgÐãå¯'ÁU‹%g%TdfŸ†XJ›±úÐÓ^f‹ÿèu4iYâž~W¯§Û%kDiÑ¢E¼:òMƼ9’&Â’ŸP£F öîÝËÀ·¿æç;òü詼1  c¦Ìfükƒéß¿¶ˆ’'qØmØS’2Ç¡ÚS“±§¦R¬ï¾û.o¿ý,µêãqñá){&&&òó’¥ôyúI–._E¯§z`±ôºmö4› èd)Ý6š¢à²Qæ[jO@p÷sS õî×òåËsNëËæ#ð~ Jºh)Y²d¾eø¸š††v]ÚmºqËræØšŒ1p×o+W®Ìž/»Ðâ•5¬úæ-è;MÓ2óæŒFãMç7  ¦EÖ:ËRŸÙ Cg1`4 ë Hz}ÚV§GÖéÑ$Ž$ û™´¯j'¤X ƒAtûx¨]2 eòÔOxýµ—?ñ=>xo"Ÿñ%¡¡¡4iÒ„ÐÐPyäBCCyæ™g ¥ÿþ„††AùòåQUÕc%»=›-c¼¤† ›-…Î…³ÿÊe¶mÛFëÖ­Y±b>>>ëô”=W­þÞO=ÉÒe+xºç¬\¹ê¶ÚÓb2aÐÐÒ†¡h jšª°aÆ[fO@pº›%{¤®/¿…ªêÏ×Ò\1K~¼cŒOýÁ‹Y5m,m<™Ë 0Y–ñõõå¦Õˆ?ÄÞ‹'Ðh€w Y’Ò;J’Œ$§%MM‹Ì¥žÙÉ}‡iq_ |}}=z“»ðD$g„ Ì›7—^~…·ÇŽáÑoñáûïòÅ—_±dÉFŽɾ}û ËÜîÝ»—þù‡Ò¥Kg¾ÑÀ£ºÔTì)Éik J ¥¯SÑ#GÐétlذ“É„ÙlöX$ÉSöt:,[±‚žO>Áò•+éÚõqNQQQ4nܸÈíi1P3„™’&¥­ qKí)î~$«ÕªmÛ¶­P…(ŠB||<çÏŸGQ*V¬˜ºq8=z”Š+i Ï0qÒ$ƽóï¾÷¡ãƱ`Áz÷îM‹-°Z­™ÇËØ:N,‹Goþ 6¤Y‹–:t´ô%'ÓÅGÆ Ù»g7»wïFQ”̵Ñþ+~žaÏF÷5¢s—άZµŠÎ;³råJ:uêÄ’%K +r{jjÚÄr(W¯×ß2{ ‚»›Ö­[{FÐeˆ:›Í†¢(xyyå9)ân'ãµf‡«ÕêÑ‹²'º€2DÝÕ«WùçüEö»Âù(™8Já4–CÒ09/ã/]¦B°“Fµ‚(W¶4!!!BÌÝÂviذ!Ó§OgÊ”)Œ5ê_ÛaÆqðàÁÌceÝJ’äñ›Æ iÔ¨Q®û÷ïßÏio=ðô±=eOUU3Å\Öm§NÐétEnϼºM%Iºeöw¿ óX‚N§»c':xš 1{+D­'Ä”,ËX­V >>>”*Yœ„„RRRp:eÖÝÛ;???ñõõÅd2 1w Û%44”aÆå¹Íz¬ë··‚ýû÷ç¹ÿV OÙS–eBCCyüñÇsܵ=ó³—rয/žŠÐ î<4MCUÕÌEœ].WæKÈõz=ƒ£ÑˆÑhD–eq³à?Hf„NÌžºw‘e³ÙŒÙœÿ{¯„Ÿ@𽟠@ ÜÙˆ@ ÁŽˆÐ @ Üáˆ@ ÁÝ èò[š@ @ðßE²Z­Ú_ý%,!@pR½zu1†N àNG:@ !è@ BÐ @ n½0@ ÷ƒY1; ‡ÃáYA§i»wïfíÚµüùçŸ\¾|™˜˜EÖäŠN§#((ˆR¥Jqÿý÷Ó¡Cš5k†$I)ÿøñãü¶bÛÖnä•¢“P4U^¿oJ2ÁV?Ê/I›ŽÐ¡K'jÕªå1¿\õÛ 6n[KÄ…+$D'£*bíOAþÈ: ¿`+%Ëç‘6éÔ¡‹Çü299YøÄd2åºï†—-Ù½{7“&MâСC²‚BÓ AÞyçš5kvÓeœ={–ÞÏÑ}èç¬LGwi*âCtHÂÈ‚|QиJ*á$±F‰ùƳÔmܱïO¤B… 7í—ã?x›G÷Q¹Ÿ“ÒÝøTKH:asAþh ¤^…¤p¸´FÏÙùFÖmÌıïß´_fàp8PUñÀ{§a±Xrü¾zõêtªª2eʾüòKñf gŸBe™—^z‰Q£FÝp´î÷ßgä°e¯ÍKJMLˆ;¥ ðØQøJw’)æ|2ã+Ú¶m{Ã~ùâÈaÔe§æK :“°©Àv8ù•ŽSÌ|õÉŒöK!è„ CQ† ÂÚµk¯}iô‡ª}¡B7¨%;ÜŒ;ç–ÙÀŸ¹»cÇŽLŸ>®`~´cÇ^ë?”%¶64!DØWàqöp•žÞðñ¼é´lÙ²À~9ôµþ´Yb#¤‰°¡Àó\ÝôôfúÇó ì—9 :1LêÎÃËË«p‚nìØ±|ûí·Yr€¦“Á,¬+(D$v¿§¿ËüêùçŸgâĉùfŒŒ¤KÛGX“ø õ ¶Ü2MW¿m¬Ø²ž|ýò‘.mypM"Aõ…í·Žèƒ°­«ëWlÉ×/sÂétâr¹„!ï0¼½½stùNqùã?²‹¹Fã¡Í\!æ…Ç ~ ÷ËüjΜ9lß¾=߬Sǽ˄äºBÌ n9 flr-¦†¾›ïoß:Žº’…˜Ür‚B­±É¼;5ô¦òK’„¦iO©™Ð±_þåÈeÿQ>züq¦³£iªí(_öêÎøµ›—W>%5õ/æ îÉ[«/ἅǹÝ)/òtï¿ÿþµ•{A£qâ?IàYî•zæìs9Æ¡m» V¶ ƒ”jü¹y;áááyúåîCÛ¨:@ŒK Õ)lÿssž~™ÙÄ‚jãïÕSyéÉv4mÚ”¦­»ðüøŒs_û ä&6ÐHÛ­¡i©œ˜7…?[M`dëä¼òy"¹cøã“8Ùa2ã+‰^ºsüøqŽ=šöÁè ->1kPàq$hù%|8|ø0§NÊõ×+—.§§­Œ˜Á*(2tHÔ‘6ñA ¸XŠC­á™³MÀ¹Ž­«×ÑÁ]JØLP¤tp•bëêu¹î_·u5¥:¸…¡EJ©.Öm]](A§Æïá›™'©÷æ‡ oW™£ïÒé3a"“~â³µ¸5 PˆÞöC:µ¡yóvôz{1glêubCCÓ’9ôý§,:cOÿ>ï|Žˆ-|ùRÚ¶hNó{ðʬ½Äº5´ÔCLêÒq3'ó¿~½èÑ©Oþ™3©È+]v6oÞ|íCùÇÅŽàÖR¡kξwÿD^¦">Â^‚¢uO|8y9×ý—ÿ‰Ä§¢°“ hñ©—ÏGÞp¾¬cèìç¶rÄY“ÎM‘³ŠïZ<ÚÜ›°Í§HR54WÿðcØ÷ùã·OyèÒ׌š~œÔ,bCËáï<óÙO2û•‰ì©6’…¿ocó‚)¾v7EáÖ44çvý]›Q3°xÉ×t¾4‹)ëÓ÷å‘Wºë¸páB¯W*A\™rò½ëˆIN a/A‘R QIñ¹îOˆIÆRLØIP´XŠC|TR¡ÊP’£±ñ7Kÿ’>żQ“bIUÙ›æƒzÓÀ_‡Î·.OiNê–uœuäs€<ò9Î,ç·„¼Ø¿!Fc‰VôïS’㫎‘¬ú@ìÝ–RFÀXš&Íü‰<‹¼óÞ‹äùꯘ˜˜,^#®T‚"¸2¥ûÅGSÅø9A‘£CÊóUrª¢‰ñs‚"GÒqS¯’ˈХé­`¼œ—ˆ·«hÙDBbT ²?fIÙ—Ò†Ì|†€Òx§ž#Ñ¥¡é54@ʘ‘åï¼ò9c.—pŒñ½»bH?´æNFª˜Œ]ñÙ ?sF]5tzÅîBÕ4”<òÞ‹/@ÈSÐe[tP\©EqeÊÉ÷@àq2Þa(Û’:Æ ¬ÜM›Gƒ2»î´”ã¬Ý•B¥~ÕðҢДD.ÆØQÕ4éàˆ¹HŠ¥8VŠª¦‰8MËáï<òɾ%ð*ͤ…oP×|]íGÒ&[¨jz]Ó'ghiŸóÊ{/¾C.-Á½E¶qY¾ò\UŽLôßÈs8H¾´'„ò›Ww^x¤8²¦–ž¹?s4Þ: « IDAT’xŒ_fïÁÜêa*´ÌZç‘ÏTµ+X~çóowq9UASÄŸ;È®q(Ù&Z\›M›Qÿ¼òÞ‹cèô­ÁÿÙ»ïð(ª.€Ã¿ÝͦÒ $BKBEŠƒDzUEDýÀ(MDšØ@A,€RDŠ(Ò‹Ò›´„ÞBKHO6[¾?faH² I€ó>OØ=;3;wïÌœ¹3÷ŽâQæH¹î“™á1‹éߤãètÐúكϦu§¦› 2‡"O`FïÖNPÙqýªâlköyMç\…¾Ÿ¿ÏŸMã•§/fÔâU6‚Ö¯à1[·îç1mÃGðWÌóÑ_AAA–ýLRçÅý7ËrÿFlll®õÒD?)+Qø;LfåY/e7)Šj·™[½Ì^¯'11Q ïãïŸs»ý%„B!Š7¹ä*„Bík•0ÙŠKB'„Bˆ‡š†ÒÏ.áø¹­|P'œþ+Orvë(êTȚӱĞZÍ€JZÒÏcyRK>Ö†W5*­au«â­!Ϙ!õ )ÙçY¾§“¶žáôŽ/i¸ÿ}^¿—tlÇÎÔzo)[¶ýÅŠ)=1ÌÄ';’1Ù—„N!„1Cܺ„T® í‹ffÛJ„4˾cÓxªBEžžqŠl@ŸpžTïPJ;ß=¼bj/\pæÉÁ}iàçˆSéHþ÷f-6­ã¬Îv\¡ÂÁÃ’å©Ûm$ãÚ¤³ì»ý¤ao\:!„B<Ä4=Xzü"‡f6#¸Ó/¿ø/3š”¡Ã¢bcO±êõŠhŸ²¸ß8A|½GóŒùV#ÌËë‡^¨LÊŸ­xNL˜0so³—„N!„¡LÎn»@ÉFåqÎ<ÇöØWp¹í®Õ_¤“ç:Fº–s&LúŽï=F¢!ïîôîäɶ/~`_¢žì+Ûøfú¿øFµ"ÄÉvܘ¸›ŸÞÀ‘¸$ÒR.sä÷É|ð[6»UÇÛqIè„Bñh0$pø0T¯æ G8¢®IuŸ;üp­Íð_ÐìÈûæ§uÌ —¸JÇéeïÓµ~UBÃëÐîÃ=Tµ€/žöS&[ñ"¤rww7ÅÄÄä ²¼è'Ú…`–¥<666×zi¢Ÿ”•(ü&³ò¬—²›EµÛÌ­^æ&00ðîú­Rس\M&Ù¸¸ß “:!„Bˆ$tB!„’Ð !„BIè„B!Ä=“g¹ !„P:4Iè„Bñ€’ž©6¹ä*„B! B!„(JrÉU!„xĤ¥¥I! ’ò$C ¬¯ ߪaù— ? ›ª*¯)¢‡ƒþ 3;·gêqÙ§fбÃ4Nfß šH=º€÷:Õ',4”Ðú±ä&{ã÷úâø}x7ž¨Fhh(¡OòÂØœÍ´3. ]1 a#aL 8–†ý£ ªÕ†j71Òg‚i*,i^*û㨠v3Ø9L3A7Ƈدÿ4Ô;^¯Aƒ P½%DÿסÖ%¿àÃI[ öŽ‚êP¥ hŽ7ƒN0¼¬šê7àËDÜ öÌÍ@ >•à÷•J•ú ¹}«·W;Cÿ^pi†ò™ø¡ð˜£ýqñpʆuaÏa0ƒ%¨³ŠáÚLX^f©`vìÚmüʸú4ô6B§·!á3ˆ­½ ÐíCP'Àþöð½ f¹ÃºÏAg´Lo²ÅDÚIö$…P'PKÚÉ=$—«Mi­ù7LÝÅø¾s´É—l9t˜mS›qtl?¦ΰ+~ïY‘'U:eÆo[Ù½gë¿ëëòá ý=^9‘°—„®84A37Ø–¥Áû \Ð[’­Ö=`¸ <1ü§@™Žðy¨ì‰Á acgX9‚AØ4Xuòx[ñ’~põ¤›_û—‚ë!Už¥üpó( >W༪V‚§àÖÓ*8ÁÁë–ו]àà50*7˜þ:xý ¾¡Õ;"]ÌõÚF5¼ø*Lð…¾cÁo´ý â vÆÅC+.%@@YÐ…¬Êàn•ǧ΃?†CÙÙðÂ5xv%” ´?žqœkYzíežP^kU€ . €IÐþ:ôZ i£`ûæ[ 7yÇE±‘y~7üQÞ%‹ó;/à×0äÖÕ¦¬S«ø+¥6^iDI'Güöa@k,[p”t;âYç×0¡w "BC ¯ÃSoýÊy½˜ÚJõ£jY¼<},[ŽwJx:*Çs[ñ"$½\Í\ü |Äè b(ÄÇÀÍ<_å kÂü)°; 8ÃöÁ²H É6âIZx³=ì[ã™/¤Á™[­0yÄUÐýu˜WœÊõnæïë Îap¹|5>¼ ¿áC©‚¹2¦9@¤l¾bÎ¥<`éûÐÔŒÉææogxr$¼ϯƒvFhý$dÃ?aI ¬€w¥¼ãÎA0º¼ù!¬4Ÿ]\¶: ²-ýiH €n¼\#Asë( ‡GƒßT¨ÝÖ|Rë öÄpº lÚ†0÷]óòÁ°æM†jóáêPi5øûCý®°v4záH^qùùŠ˜ø%½h=|÷­Ä«y•Ñ7ÿGÕIÕ²ü^4™ª[Y’ •*›„cǹa¨‹·¸kÖA>ë3„¿š~ÆŠ¯[¬MâäáËxª€ôn+.:n/ÃË:hØjǡdMè’ýÒ!"Œ) ÓÁÉíÐì¼rJï„ÕÃ@í¸-¦ 0¨ÀÑÙ*E(¤ƒÁ`;.Џ}îÒbž%´jK&8Î÷ÝjQ­å$Ä̤Sšt™}†l@åш¾}—Š›Þ䉴sœÚO uóÅMm;nH¸@Z‰ÊäÐc0¯ØÍÖ>w_üK—£v§÷øð©t~Ÿ{ðV‹¢íxÑx¤/¹j¼aÓhzóGƒÍÿÝ7 ö.ÇׂQ™*ð°*-¥A#Ãh;nÈV.ß®ú¶˜ÏR'ý ¯·‡JpÄFü ì„-Ááh/¸9hû®¯¬Î¢à½±0ù²íùd¤ƒÊœÌ7¡/-¤§+×õ퉓 c6À=pƃ15Áé”í¸ôÔy¨˜.ÀïU!þæêÿæÿ.u¿O Ó» rQ,ÁB@I%^k$ý’²ÀÛFÜׯ5Q• hLmU¿ I€+h4¶ã¢ˆ»¥»3ÿ@7W÷¡ëÚþüñY(›{weíkðe#·ÛÚ›‘“ûc¸aÈ;f¼±E‹6sìR2é©W8¶êK>^™M£NUqÁv\º"V) .‡ -<áï8^šÒaúaèÙ"œ¡DŒ«K7C²q2aú.x²4tGOÒ®BsÇV\<‚´ÐÜþº .þPö×åo‰'áO×<5ðX$t5Á´ÓöÅSÎÀ‚ ø |ÕÃÊÂʃiG\<”’7ëà—ÎC`èð€j= ö#¸rŒñpp"8·/g;â¶xCµ6pr$\OÝnؽÊ4wx°Å¢5åØ1¨RÅ­®NUï;›O³¹øÇžm\‡Ú Ú0lS†ÌýŒv¥4öÅ]k1ø‡‰4>6–vµÂ«ÅÀ9‡I1Ùˆ©tœý},=#ëQ§ ÝÇí'|èLlé«$L¶âEHz¹ª¡v0ì߸C„ ~¼ó™Â&X5>yvL',[ƒbÌ'”¶âÀ¶e0¬'¬þ¼L°o;´Y ivÆÅ#Fãµ9©àWŒçáZ>Ò2¥Á€o`NoHzÒ/Ã_Ãæ ûâdÁ°iðM¸Ö Œ©0w! ;cg\<|b¸¶|_®Áu5„úÝý±€‰Ðà5øÓtjðëOO´plÅón*„àéPë%XîWùEÚÅ`ÿH_Ö™_ô`Ñšœ>äÆc¬`ï¹ÍÄVœ‚Û0ò§6ŒÌOÌ«!CÚÀÐÜRñ¢¤rww7ÅÄÄä ²i¾Ÿ x& Á,˵ºØØØ\륉~RV¢ðw˜Ìʳ^ÊnRÕn3·z™//¯»Þswwg枺ÿùûô¯·—ÔÔTùa¤¤ß “K®B!„:Iè„B!$¡B!„EI:E!„P£…Î ~œ“‚óþXÝΰ» 8ÉïnWª?t8|"EqÏÜ*CìXˆÈkð+G˜0 F––ò²‡c)ØùÔ—­øž¥Áæ Øy ï]ËÆ™Ÿ--ò¦ƒ `Ç®{5RSS ìOHBwÿVÔ >®Ÿnµ `¯vƒ }&˜¦Â’à•Qëµc•Gn&õµ ìóW9ÁÀ^ó…2}ÆDøº!¸Ú¹|›Ó« çP%vëo*D9Û×Ãká™Î$æïŸÒðü ˜¯¼v†ïCÂ7Êrþ]è`¨Wåÿ̼ý‡Kégyò¹­¸=|*Áï+Ó¦~ƒBò±§p‚‘¯Á sÅ\–¿ùÛZÝø4Æ×±z¼(h¦Kʳ£köµóÕq°¼²Ò£òÇÊØÓ·M“ûÛÃ÷*˜åë>ÝÍ‘vRáÈ+°ÈG™þ»²°u.èíílkzœ|\‰Ýúó€Ø;ãö”I^ëçaCàôH“ X];LñO9ÕÆ»£Ï¯ru öEè™bIhZ÷€á.ðÄ 8+߆Ï/Bßh»,'#f/…‡ñwe\yÏ_åþ©0äKØy*Ô…½!)†_°#¡³sú]s¡ù.sù™@wÇÃóŠ_=ûžƒgýàó+²±ÜF£)€Cª¡kü®˜kœ‹'\Û-çÀ9#t~ÿŽ7¡YÐw üœl>ÒïxÌ–­x^Ë ¦¿^kÀw„·„uàÀ°1ÞÜ?C·Â˯äþ6×ßëÿ†¯:@ù]pRŽž·1€IóßÔ‘º®Õ‚'KZ,ÊBø$ûvåð³_’ ýuðˆ†Õ-a{<ñ¤ò|Õ ?h¸J–ƒ”Űº78Ö„úvÔ*;§/9Úõ4¯¿ Ôw4äÚŠçU­óZ?—à÷œ:5+IU’Ð)—O?—JãEEàùqp0æ¾í}áâq˜™¯$AÕ…ÊsPJׄmoÂãž½ž› ³” ÷‰Çàì6¸a>nª\a`M˜?v§§`Ø>X ƒ¢!ÉŽ¯zdšEpWkÍù§À‡K-Ÿ¿² f·‚È@P]°PíœÞh€ÌìÜâ¼â¦ Xz„Á”+ø¥·Êpü˜w:…ƒ*ê΃ê­àçöPØü7$Ô…¸ðæÙ›™´ï«C€~Y¯l†T¨=¡G|wÎòƒ]=CX–ûýðîp¨îb•Й@—­üp¹}òŒçÁ»´3Bë¿ !þÙK¢``ØxÄŽè`ÞeCîh¸{h~[ó·gý“ÎÁ)hî 'í=xlý‹¾’Mµ|æžpî ¸EBˆ „îS-;ýôßá·§ár<”x¢¾_wÀ—€Ç+àh•z¿ÞÀ¥ß”Ÿù6‰p䨴ü}€Ç¡~WX; = ŽþPo’åã.} |2\: ؑЩìÞ4Îy$´¶â¹±µ~^RŽn‚•ŠÿÓïÜÜÜ$zå6¹‰ ÒBÛ2ðêXúþVïƒç&(ñ?¨û'<Ú;¦y.†í Xä+:›9ÖØŽ^¶$.Ž^ª-W-³8qœ  .åäwþ^ÐÔvÄÛ×:hïô Ÿ…Ä©pþ}ø8î|²Nžqœˆ…JwO÷Hrö†ˆ³P{$„ÍM,oÓ?í[ð±:•¸ãÅ:¥B7Àw TìãÊ›çç å³àx-_å¡d˸ý¬gê‡òì{:ùÞ}V”g<å@{ Nê, ÚÖë|Çwò;ÿœÖߘÿfBS©“™pþ4Û/Ä@iüÓ t w6tyN/¿ã¤- N-‡ú‡ ïu¨x ÖŒ½y~ñgÀ;Ôþ¤ÄIÙ`Õ2åÕ ÑžÃy…1â¯@É*÷¶Ê¹MåM˜ãóëÀîåwŸ„ÚŠÿ§õSƒWMHÙ"÷Š¢Q<:#ü¶bÌŠk0´Fm$#\‰bîH|Œðç ø;ôiðÅoà^ªi•µ,©…«³Jµ#8› Ùjg“‘¡œÁ¹@©ägþ*'ô ”ÝÎçY9No‚½«¡ÕPg¼¹ú¿“*Ø¿Ù.r»úT˜´2ÌOh¦}0ó¼rùuÓZØtǵMc&|°^ylWÂ)yºÔÀÁ\ôžKû©[0üÜ͇ýæŠdÊ‚IßBÔ'Po ,u€¥ƒ¡‘“}q[\\Á¤ƒL“eú‘ ®®S ò3ÿœÖÿæ4 z()#”³9 %ÌO×€ *x¬?8jÀ¥9Ôi~÷ž¿ìGPÚÔ>Pcd/…„ @¯ì«œ\íÿ ¦ 0¨ÀÑêÌOSHÏá΄48ÔRŸ…Úµï­Uò®éUà7Úl€.{àñ.p¬ ìÜng¼€ÖOëú+ÿý!!îqWP àbºÕFâîépÕ`IF.]¿ã,ȧ’­N@“!É |4ÊçõàiÕ`ÔA¦ <¬JÀÅEi0È(€­Ñîùkáõ~0(š.€«ùmžËcúèƒmþÿ©UàR>mÃN+—©mÅœ!+]vPÊ‘2nX•„Ü8j¹;ܤƒ³w'ñVÉÈå«à^Zi2è KÎ9´ƒ¸”†ÅoÁõ_aÀa«@¿Y +0~´=aû;â6d¤+7h:©” 5xi!=½`šì®ëo>:{j 1[ê¤y/îfÕ0lL€ìଵ—kÈ­mà`•œ”ÇTÈÊ4àäºÌ|œTº€ÆÙVç3†$ÀU¹ÝÔòûÃÑîð¯/t˜Îù=yÎcúáf1xŽýzØñ3Ôo¤èlÅ býôÉ ñ.þ—[…´Ð™ì4HueUÚ÷Žz5T´êÉçä ^Y`²ag"„ûZu–K‚ãzhluÕ¦bEÈŒ‡ø8pÙ5-ôëcT5Nä÷ø”Ïé³ ÊÎGeo\!A{2e[Që„;!J”´\*T9BˆË[w(eu&QÊR¯+I`æu¸è !w´49—‚EƒA½zlË»ðMFÈ6V}oñ;ÅTÐZ*Ycˆ¾pw·Æ{aÏüm­¿ÊI¹§nÇ5©’VÛê­]¡hoXÝBi‚ô³w\ÑÐCòe«ää2èÜÁI 8CÉ2pã¬ý‹×‚—#ÄŸ¶¼—¼ 4áàzó§Î„cÏÂ#´[^ù½#?Ó«@­Sö=ÆïeýLzÜ>¸W4T*Uý i¡ËQúEX­‚šBÇ à £Â@{B÷th|v˜àÍŽvŽ˜7ØÍ`TMðØÉ€)¦†ùaÖ 8ãêÀÒ¯•8@ó¾°Ò¾²¼w[åWƒ“œÔÊòµJR”e´cþЧ/|ê­¦Ã)“2½Ñ`é ŸçòmL¯vÎUàÐIˆÓCͺðy8¬ž¢´¾ÙŠ+Y1t(¿3ß[#nwp¨_ƒ~aJ<Ñ "à˜u½t†1Q°s%CàãjðÛ—æBN†e о Ì7OäT¼ ~¡ÃV0:(70fëÁ`¯`há[cAç Ý;BTLº¤Lo+Ž,˜^³¡Íá»×)ñ$üéãšBçÍ ]MÐñ´}Ó88˜ÿT qP*¦^¯Œ1akþ¶ÖÀ½ „Ý€ 7¤æTüµ Ø{fA«·ÀðìÛ Xßof„óB|(¥†Ã#ø˜ÏG;þßA÷¼U¿=ÌÀ jå'ƪµ#¡Ê2ðˆÝK üoæé³ ¦‡’ƒ·]žjez•Ôæì'®¬N‚þ¼»/­éMIpv=ø4WGHX ;6@ðPå g+nsù¶Ö ÎÆ@¹¨{<°=ugþçyÔÛÛ_6DIèridH‡·gÀ¼W ©;ćYÿBoëË0ÙðË¿ðÉh¥—ëñ}Ði¤™Ã'vÁ™ÁÐØV¥+gS«æÃ'/ÃŽ)ःe+`ÐÍ{óTPÖŽì³JpîP» ìmiy}µ.Äm‚J •Û¬òš¿£/¼¡ ¶ý3Ë</†:ë!ÛÆòmMoÐ@ó§`^åv­ÌD˜÷ 6É¢²(Qš&Âè˲¡äèF4tY ? …ÏQz¹þ‘F«¶¬ëð»'ž Føu9 ?c9BÎÿ 67ïhH4AH]èät„«-óü>|~´žð^/øÕ|ñèÂ)è÷%l0ߣ`+®v†2&X’Ë84¦4ð Ìé IÏ@úeøàkØœaßôhaâXìm~ý&t¾š ôüµ5[ë 5†‹[ FN3rT-…M/ÀƒÌ½\ÛAŒu–áÛÃÎêJ/W¯nÐj‚å€àùŸA—AÊÐT©Á»kÎ%[Ó«²!îØÔM9ùÔCåYÐ(Êr|È3ncùØX?"ä|n IDATÝvˆ/õ¤ Š"jauww7ÅÄÄä ²¼èg*FßžyF‚ºëíl=RÁ“/À¨sÐòo;¦qEïÁ÷“aMz¬cQ/_ ¯¾×ÂËGî­çí=™eiªÍµ^šèW ·&X?þ_\µs˜5 öN…o®ßÿïèU ¶Ö‡f?* daOÿŸOA}`ÍÛðÉÄ"Ù0TÌʳ^§Ý¤%I‡Ó-`_;èòŽ­G&ˆëûêB›× ¡Å) Ö7ð¿¡Œw”Ñ]¾¢Ÿ‚ø÷ ò©Âÿú³T¹ï/sxwýV© ¬…ÎdÊ}cÐù™7^ø•g¡Öè%üoý3|µ–5ýÊåÝÊ”±ŸO¼†zÖ_|z·› ÂÞFFV+øRú‹ x©óbžøyýB‹O¬¸¸¸ß {pžåX J]†ý)P¦|T,ÊÇ¥@lZ1.vÞàŸÏŽ)Â.êå›`Å0ïF!&s 4 ƒãÇá ðôÓÐ輕±ÑLðÆdðÒÒëÔ8RtÓÿW†xi2ĦKõËCúVH¿’¶ öl‡ŠSò‘˜© ð+ðJ*¤ü½ Å¡",°ÿº| ”›•ƒ¤îÙQ;Ù?õ3þZHô˜z¸«²94‚ÿûŸKÕúX–Žœ…ûÈô }pzÓ?0 g9Xñ6”vP®Úü´&_ÊgŽ’ ±Ò1Îî„îr¢ƒÍ£^ݰö ¥»Ýõsðæ,8’ÏK™©Òë$?ñEÙˆmÑí…5­ =T¾Pi*Ôª–Ï™8ƒ› @i÷®À¥Œƒµ“kçÒðé^Æü¨J-åÚ¼D¹bô õ §Èló“;<8Iн›Ñ x 8¼ÚÁðòVH—¦#Q´›=L™ ®¯ƒº?ø‡ÙqÒ¤)Š\‰· g:¼j„¾W!²¯rŸ›EÊx?úD1pg*†GR½jUªV­B…  ¢fS®¸®²qt7…—%((ˆòõº1fõ%WãŒÜØ9™ö5#¶æ2zL¤ý‰·žªAÙ  ÊVoÅ[sjÊæÄ”HŸ[ÁÕ[—êÒØ9¤µm'ͼì¦Í^`ø ¶Ôªoϲ%¡B!Ä£DíG»ïÖ3µ¾;ÿâðÑ£=º‹™MÜ­>¤Â½Îë|¿í/D³ê/¿=”5×s¹YʤçÊÆÑtí»‘†_/eÜS¥Ð¤ì`tÏ9Þò[öŸ;ÇþïžâÄG/0z{&!í»t`[®™ç—zùT´z¾nù]ö#ŸÐ9Á“`RpÁϺngØÝdüøBàC‡Ã§!Éú¸U†Ø±¡-à;„Q0²´Ô™ÂàX v~õÒ½@l‚ ~Ö׆òqòت¡ƒ `Ç.)Š|ÓøQ¿CU|µ¨Ô„w}ƒ.%޲ùtVÉœŽ‹+†Ðéí#tœû Ûø 2Ž,dMvkF¾Ö_|ôçý6zÖÌ?Œ®l[ž-{ˆŸ6_Ťìû™ÍÚ6ô¨æš¿eKBwWÄ >®Ÿn…,”±Gö‚˜/À42&Â× 1_³WÔk;Æ*ñ¤¾à~çLUP»윬|F7Æç#±5µŒé3Á4–´/•ýñ"]¾~X Ït† içÍ]éxþÌ6šèà߇äo”&uõ:Ôt²|£NÏÀÅi`üÒ'ÃĨÒn¼ ¥¬¶¼¦½ î%pWÁÁÙpãæq3>\ ¿Ÿƒ+©°c̾OZ6Þ#;`ö~8–ÓZx³=ì[ãA\œ9[ò‘Ðå5•+ ¬ ó—Áî4¸v †íƒ®‘àiG¼8,ß”K¯Â³aKcˆ"ÛÂÙi`šËž7smqð†/†@Æ7`œans…÷GúzV[’Ìž߇‚ÚzÀòs–ŽÆ øëœL‚Ä8yRtpCo_Ü9FW‚7€•qp=öFC¬½ æm€¥'ÌÏÅ»ƒw%hg„áAB6ü³–¨a`ûâÅaùIçà”?4÷äa•¹þ QZ—v†„4KËùÙwàg˜¥†ïÍ­f7>†[Þþéø¾ðSÈ6Â¥àÑ ÍÕ] .$A!àê ®OBÆp|†ùä0¿©P»-¸ú‚G]ÈǰÞ/Bx(á“C0Žü•&€¿8?õ»Â™i ³'^–ï!áô&é'•¯º¬t.ATöÀ=W·üÈorÿUµmøä×IT\ô"/~u€¸T–V«?{7‰z=‰{f3þO -Ÿ«Ž+  hAÏðLó ÿøv¡seÇ{Z¶$tædéÙº0a"8?ƒaF=%)p-_Õ×G*OU*9~I€“{áB´¸ù¼Vgxµ¬Ø ©ZhìG/ç>Æœƒ4õ€ñöm\Oˆò‚‹åàÐ0Í€½/C­êÆïè¡Øb5þ쉓àÛñb±|œˆ…JÊÓ™xN~Ð] ߆RÓ ¢3œÏ‚_¶ÃcÍ ¤ùHèmÙçÀÙÊgÁñ;ŸõáS?‚Ìpé°ðX–b_¼TEL…zÏAÒLÈþæ4êÂX´×à¤Î’€m½áÁÊ3kmÅ‹Ãòðo&4õH›0àÔb¨½ú^†à°e¡²_Óï‚mK Éièg„wA…²àù ¸ï†Ø›øHc+¡\_ÐfBüðµj©2YZò­[õ3@¦L—!.Ü÷Àb/˜¥…¥/)çÁIÙPÉòžW0DCz¶íx±X¾¼jBʹ/1?\j½Á¨¨hÞjÞ”–OwdÀï^4ÌûžX‡À|¶d,sŸ§÷ׇHsoÄèyïSaeoj•+GÍ—V2r.c{(UZSŠ'_¨Á¥NPº[Ç[–¾—e'E3ÄŠ–ÿ™Púã~èR œ·)Ï"5:BÍ`Øž×`@üp úW‡…ÿ€{yxJí/(NI-œÈ%‘V9Á W ìèrÞ΂qOèQ¢Þ‡Ý0áXÙÂX)vÏ™´#8› Ùjç“‘¡Ë]Ô¶ãÿuQPËOK߇¤…Π﯇x=p–&Cc_ø.Qy©›?D”„ëñpþ‚2MÂ~8ó4´ö‚o@æÊÍG²ÀÁ\ô~çiF6¼?&»@d|ý¬ú6¥ÛŽ{x‚£4Ú•gƒc8¬ÿLŒ…§ `oê &dš,ëlpuU~d[ñìâ°|#$è¡üCÚ1B!CéåeX8³ ¯({tU$€R¾à\ü| ´<] {Cö¸èOE(­zàåjµÿ ‡ wØÿ”þT;`ßz ôFå ˆN'·C»௃]-`õ0xvú?°˜2À G«3EM  ÛñÿzrQPË×ú€þŒƒÙ?*TÞ´_Cû[oxÐrQ ·ž¢éP†Ž“WÓñ¶‰>4ÿ[›ñ»všÿ߀/÷m³´weÆÞ®–Iª÷æ«u½ù*—¶¬RÝ~å|·;üy-[Zèr9pÞ>Ð{Vh´ÊÉ`Æ9xöwˆz®L‡# M ešeÛ f(­†Ç›AÚ^øW§œM&êÁS›skàëý`P*´XWílû6d+ÏP]õ;lIQžu:éOð«• 6ê SVórqQ2Œ¶ãÅeùÎΕþì°ôéh°4Q¤ÀÅœªîù>¼_¾Y_ÀЍ†ìkðÝxµ:8¸B¿*°øH :ÈÒ€ó­g&HN W`ÞRXâo†ØÏHW²–1àŠ.qçàéšÓ½;#]¹ÕIeÕÌ …ôt%‰·/ËW§ÒˆÀÍêñTj7%Á0õ Åˆ}æ:Áâp>NÙ–¾…t=\žÝÁ×UIœ@g=¸u h¼Jüó]à—Ð Ôà¨QžXç%ASj„ÌUTU. 1A¶Õ¼ I€+h4¶ãÅeùúdÐxÒÓ6Ä#¯øuŠ0ÁŽMðäà<f:Àœ.JÍó!:ÚÁka°p‡y€ýlØ™á¾wl8Zè×ƨ j6œÈÇþ]Ÿ‡ÓÁúqt&ó±¢ ¶N]×Cc««B+Bf<ÄlÇ‹ÅòU±gÓ`Ú<{J~ NOÂ'•”Ö [¡Z¨O¦Ã<ó³ö2¯ÃEg±•i©@­²/~墒tïþH5âη[× ÐBcˆ¾ ´~ÙŠ‡å«œ º ì¸öHîÑK„v1Ð÷ TÉ‚Íï)EãÞJs‡àèF¨ø¢¹eÝJ–goŸ•c}ˆ:¯è¡×>ð÷–à¤uIðö•úö*ˆ‰¹aL^ŽÚò^ò6Єƒ«Öv¼X,ß©‡Á­¡t¸hBç\:W75è2àJ¦ea¸߯ÁÐîÐ<~Ž¿y°…Í RMð°:‹íÓ>u‡ößÃ)8kÁÑz¤VÞsR+%qëÿ™0}<Ùº£' i WÁIó£y_H#÷N yÍß”ÓCÏŽá %B`\Xº’툇åãJÁoÇx`FÒ¾g•kA#oeÏœœÉzË+ö. Ÿu„«»à˜¹4 ɰ,Ú[u­ö­¨Üüì ^%à™Žðœæž·/žrdÀ‘૆€pVV4gÕN°àKø³z-<àì <:@ã TŒ›H< :À¸¦J+×c‘ÐÕÓNÛ/òåîe ìl¸ñÈíÐ 'àìvД>9.žJ¦¥TA^ †8¨\åfö!ù÷Û;¤nƒÄx¥úÂØqê½nNN< Zˆý®\c<œÎmÁË|2®|ß&N z0d‚A¬þà ÕÚÀÉ‘p=t»a÷(?í‰ƒå“ gc \”Œà/ G±{L™ÆÞxûƧcàå…æ{ÖŒ°êo˜ù2_'¬²ˆ»àÌ`hì «ÒÁÑÞP¼íŸY>wx1ÔY¯œ±Öî{[ZbWëBÜ&¨´P¹Üºm ë «?/ìÛm–š¿‹ ÊzÑ}Êgs’çüM°j>|ò2ì˜N:X¶Řó[ñ¢^>P¢4M„Ñ—-Å;~~Ê»€! 6n‚7Oš¢7`Öy˜ #w[Aô0ÿ/ØÜ¼£!Ñ&-ô|fú)GÙ¸3ðîK§[q²`Ø4ø¦\ëÆT˜»†™ÇFP;C,¹’ËŠhaâX|óšÝ›Ðøj¼yVyPò€o`NoHzÒ/Ã_Ãfs-³/ê壂FáâˆÑ?r;tS"î ë΀IžOBäTóŽ^eûÁ–—ÀkœÒÂt“çóà©<¿9ØüÓ¤,„5æ^›.  þ¨dÕ‹5`"4x þôüzÁÓÍË2BêEðîšûAæÚ0Xjµož»\߀ç¦*ù}ðt¨õ,÷ƒ+„|"-?sžñ¢^> Ûñe ^˜$¢p¨ÜÝÝM1119ƒ‚¬¶Þ~ż㵠ž|Fƒ–B‹‘ ,z¾Ÿ kÒ‹`}‹zùjxõ-h¼^>R€ÝògY®ÆÆÆæZ/Mô{@¶0˜5 öN…o®ßÿåyUƒ­õ¡ÙJYØŠzù>°æmødâ}Ù0TÌʳ^ö{Pǧ0A\?ØWÚ¼V-JI°¾ „ÿ e¼‹`}Šzùzˆ~ â߃ȧîÿâf©rß_æ&0ðîAUª‚»ÛÏd’ÁZ¸¸ß {ˆ:@¥…@¸”,½Š #.U’nXu8”„.gÎîृË:©7…±r†Ø”û2ø×C›ÐdBZ¸–’›ø "AΈÇ ÐBaTB'ì„Îá¡Ú†²!6[~ðÂÚa]N”b°ï@™úô)F;‹²¸·ps–b(¨^—2R ¢pɽšB!„8)!„âÑ’––&…ð‘:!„BIè„B!„$tB!„âžÉ=tB!„ÀÝݽÀ敚š** B!ŠÂ®‘ïýçyÔ÷‰dK®B!„’Ð !„B<Ò÷0´I &Ë’„N!„â?ÓŸafçöL=®#ûÔ :v˜ÆÉÿú —¤5<Jè Fì%½ ¦7¦rtáº5®Jhh(U–ÏÿÍ(òâ”{è„BQøÒN²')„—µ¤mÛCr¹>”ÖþÇyzµdΡC·žçnLXËÿžO@§p\ dz=—~{‡?ÍâåOãë².粿¶È‹SZè„BQè2Ïïæ‚_#Ê»dq~çü†àdÏ:¿† ½[JhxžzëWÎëÃ5þÿQuªJõf/0a]ë8s¿ÚCµQŸòzdeJ–ð%¸z#ê•*úö1Iè„BQH Ä/éIDh(5»þÈé£i^¥&Ý~:ËÁ1Í©Z³3³NgCúA>ë3„ÍåßcÅhbm`ZïêxªT¸Gôåëõÿ½¥¼X6ô6$o_”þë:ˆçî„;[½¯»Èë}òÇŽîþž¶&óÚçï¾$›Ãô†kØ~Ù‡€ÃÑ®N(¡UÒù½D§™$¡B!Ä£BC@ן9ptÃ"BéóëAެJDX–:Îñ—ѯ‚–ôc ù#©9ïnEYW5*­7•k‡SBh|©Û&’0-*µ;¡ûÓ¡D4[ÎÞÞÑAqó£ƒéÞ©Ž·e>îD¾Õ‡Ç¼pðªÃËï4#mí NfbszCÚUR²/ðÇþpÆ®;Ì¡“xìàX^|À¾{ôî#¹‡N!„…Âpi1/>=’=7³ŸnµøÞüßN5æPý½ßXÔ·<†„ ¤•h@€S31&sð§qL˜»™ã Ù¨UFRSÔ´ÖY·’é8½|çB{Ó&øŽûÛ4ÞûYR<­_Y<ÓNqCÍéÕ.ž¸àÌoô¦ž¯#ДW_¯Áü¯6r^W›pÇ¢+[i¡B!D¡Ð”îÎü1ìœÚ˜2íær f_6 ¢Íœý?þ/Kû–G h|‚qK:ÉåFÉŠþ†ÁSâhûÕzvíÛÇž~¢W™;’¶Ìh/»BZxgÓ•!‘ ×u·^f_;O²[ %lOïàS…ÊžT*Ë{*“ù¯IB'„BˆB”ɹíñ¯_§ÌóìŒ+IÃçÛ>áZå9Úynbü” œÏ0aÒ'rr 7 `ÌJEçHÅ2î8 çÚ??³ò¢î¶éÓ-beÒc¼ø„?š;oL審?²ï†Cò~æ|¹רöTr¶cz·š¼ÐΓíÓçqà†žì«;ønÖa|žx’²N’Ð !„âQaHäØ1¨RÅ­®NUï;Ò.×Z þa"¥]­0ÂjD1pÎaRLàR£?C#ó^›VtèòƒVyR¯´U6eJaÏOkÉjò"}rHsËЦù5&µ­M•z/ó[à ¾aÖ$Ïé]©óîLÞ-³’>õ«R­é;ì¨9ŠÙïFØ7,Ê}¤rww7ÅÄÄä ²¼èg’J(î¿Y–vìØØØ\륉~RV¢ðw˜Ìʳ^ÊnRÕn3·z™//¯»Þsww/°g¹¦¦¦Ês$%%åø~XX˜´Ð !„B<è$¡B!„„N!„BHB'„B!î™ ,,„B@éÐ $¡B!ÄJz¦>Øä’«B!„$tB!„¢(É%W!„âãææ&…ðÊm`a:!„Bˆž$tB!„’Ð !„BIè„B!„$tB!„’Ð !„BIè„B!„$tB!„B:!„BIè„B!„$tB!„B:!„Bñß:Fcya2Hi‰û˪ŽÝV÷„Bqï ¯¯¯åEÆU)-qe\¾õ_??¿ÜO4Tj ˜¤¼D¡2`B£Ê}—©Ö¨ä¼WÉy°Z£’‚y'tÁÁÁ–)g¤´Äý•l©ceË–ÍýDÃÝ‹«dHy‰Bu™ ü=Jä÷òu—ó^Q$çÁ%ü=¤ DÞ ]óæÍ-/έÒ÷—U‹ŒŒÌõcå9CŠ”—(TgH¦\é \ãåä¼WÉypP¹ÒR"ï„î©§ž²¼822®H‰‰ûwšyôë[/[·nëGŸhû«â¤ÌD¡Z£½D³6­rß_>Ñ–¸ÕRP¢P]Z£¥U³6R"ï„®jÕªÔ¬YSy‘ÛÞ¹wI8lÙ©DDDžë§;téÄb× r(4zŒ,v¹@Ç®sýL§]¸°ØUƨ‡ ‹]èܱ«†°=lɈ#,/Nÿ{FK©‰‚µçC8³äÖË‘#GæùñŠ+R»Y#¾×œ²…â;‡ÔlLùòåó¬—j7ãÄ÷ÒC[Žß9иndžõRHBwKÓ¦MéÓ§å}ÁæÞyMJOü¿½ûŽ¢Îÿ8þšÙÝôB ½Š@€Ð«(ÒDì½ã©?+žrœ'¢ž*èz©`CEQð8+p‚RDé! I¶ÌüþØMH0dd7¼ŸÇ’°evæ;“ý¾÷ór|ò÷ÂW×ÃÊqEw1‚3Ï<3èKï;†ÇâÖò=ÚåÄZÉ^žˆ]ÇcÇ}î˜ûDzö±8ö~¯v“kïJX÷D,c«Æò:€G}”Áƒ‹Ñoü7¼ÕÌ?L¶mÚ¡óÔIp¶Ï¿­l[àßvÞ:6¾VôðùçŸÏ# £bçSúꫯ¸ïÖ;¸7¯%#}­‰F;¥ËñËÃ˳ŽuL‰þ‰IÿœVæQ×GÛ.ï¸ïVZÞ›Gë‘>œÑjS9~Þ÷ß…ÃøOoòÁ‚y,ìK‹˜ø‹k%‹ÙÅé  )76;8Äbv1Úµ‚´˜XÔ3–Ì;¦N³OŸ>Ìû`± {òA‹VþÅÅ®ÅÌŠ)ÔØµVŒvñAZ ±‹z2ïƒÇæ¤z*w…®ÄFfÛ,]º”ÿüç?,[¶Œ;w²wï^|>}RÉÑ9RSS©[·.]»veàÀœqÆÇäJóÓO?1ï£Y8o[wïdOö|¶ªÉRŽmÓ0©_ƒÆuêÓó¼ :¤Ì#­+º]~<ï#,œÇέ»9°'˧/œé0¨Q3žúë0 çy <´Ò¶KUèÂSYºc t"""¾èª_ 3Õ<""""áMNDDDDNDDDDèDDDDDNDDDDNDDDDèDDDDDNDDDDèDDDDèDDDDDNDDDDNgyždÛ6>Ÿ/,Èáp”ûbïá´\"""ÇÚ߉«W¯æ“O>!999ä7˲ÈÌÌä‚ . }ûöÕf¹DDD޵¿:æÎ˸qãˆÅëõ–x¬¬ T!Éét’‘‘Áرcƒnàe-W¨QàTŠˆk' tx<’““q:ìܹÛ²À0À¶x¶MQŸyäCØ¥Ýyd—{ôÿ~õ¿¥qdOퟶ †i’’’B||<—ËU¾å²mm ""V_RËÓ߉M^  IDATà/é†ANNùù%œaØ%óZah³'ºÂ¬UjÊ+ QÅ*'þ*JÉ Wâ ß»è÷ÂÉ%B]NN¦ibYVù–« @[È)Ü)Š„«òôw¢@WÊ'ßaÎ*^u³ýÛV‰§–xŽ]2ð~Ú–]Ò Ã ¼Ðö‡4;è ï7ŒÀd¡Î60ÌÀ¤  UÚDDDD®ìDgÛøÃœíP¶}8äÙ6`žãxþâYa˜;KäÄÂM³èw;à à õšJœq8ì2¤a u"""!JãR¥Î¶mlËÂ0llÛÆ°mvíÞé?˜Àl_Q˜³-ëˆç­]ø»]¼bW¬Æ(ú†M ¸g€å³Á4ý¹±ðe†‰ 8NZ¶LÃÆöl˨Ðþp¶mkÿ9‘0v¼C¦úû—“-##ƒzõêUÊ´´ýʱºâ!ͶÉËϧIÃÿû«r–ÿ÷¢çªu¶]Tw+9KQÎW úfE:Û6À4!Î(ñsåêµþy LÓ?k t""švìØAݺuè$T…×ëŶmZMë\%3þÓ+ñx< t""6²³³+­ßQÿ%•èlðÿwÁXÖåùmË´þ5üÃÇκô»ùfŒ:ŽÃOðífÁä·‰¹}2—4QT9ñŸêÐDÛ­H…Ý‘C®‡à' >‘àõ«ÐÙöñWèûòìggû—*oO^ý(¾¿¾É˜ŽÑÎÿûX^,3‰öƒ–øãôíßBA¯‡Õ7Ó¶Ò:EõÄÀ¼‹ˆÈ©è&L˜À¯¿þZêsÓÓÓ9r¤‚¡ 3 ãpð±­ÃÎëñÑZU–Ï¿eaX6¦ÿ(ÜrùVb¹ß‹³ðpr¯ ÓéÂå[Ï“W£`P2­`»Ý™Gž¿€/o}sìÜ–ÃÒÆ2eÞvæZ<ÿ¯ ¿{ ·ž]'¹ëßaü¸±x;¤vư/¤€m»Ù2s·¯¸Ž×ŸîO² Çê‰W1Öx”™¶'ZÛ¨ˆHµ sG±aÆñÊ+¯P»vmLÓô|>222>|øQƒ[yû;Q +e<¼¿:fUé…çÈ}è°+oºÂêYà9¶'ƒ%›ZòÒ+£h¬ç »pÓê ¿úï4MððÛ¼ñÜ=þiÒg§WÄj¦ŽžÁþKžã“+šQ°üÜóçL¼Úض“z}†PoÖ¾ÍìàTr×òá'½žH#J<‘j¥°˜P\ZZÍ›7Ç0 jÕªÀöíÛéС 4(3Љs +ü.à¯ÐUå>t¶ÿþøc±,‹üü|.¼ðÂ2ûõR¡@Wrh²äiK¨Â …E†\mÃ, tF±sÛ•o¹ŽèüÓÌXjÆ:йX(ôdýœxñ½¥ü’åÅaZäæ˜ôvûðäfß™dG`:DS³AŽÂ}èŒz kÁKï.b× ~lš³ŠÄsn¤‘ÓF«""§F kÚ´)õë×'//‚‚Z´hAíÚµƒºòôw¢@Wì„¿¥ ¹z}U>äZü´%…¯åùÆòÇå*í Wâüïá¿Ælñ+]ø/faãÞ<‹Çgìæâg^cR³8ž¼xÃCdÚ6ޏšÄägí³±díÉŪxº‰]†‘>m_þÃÊu59ïÿêãÔp«ˆÈ)èºvíÊâÅ‹±,‹AƒíÏT¡“rºÂðSâ²]¶ÿjnOU¹ZxûñÙ^Y‚ã<(¢Änv)ûèÞgÛø rñDÖ¢QíLÛ˾åòù.7l›ˆÓÏ¥›5ž÷¾»Ž‡{&áÝö9ï~Ÿ‡UÃG¹ÆµchÇý<9ùeÜõ¯á¾ºý¡ŠˆTGÆÑƒXƒ ¨Y³&ÑÑÑ$''—+Щ:'åt…e^ÖËÂ$D*t>/VÑ«ÿRaV޼-Z®ÒXV ÀYXV úgY‡ŸoYþ eájv9êöo¾Ääx§Ó®f¤?lF·åÖG.â©¿ßÆuÓk_£m;$±ÛöOË?µZŸß ã4½¯©†E@,""'°ï*«ŸJOO'**ª\}™¥ŽBŽ%Е¼¼>oUÿU`Yþo'…õ30*ü‡uTÑíyø½÷ÿiè7§—|<²w½ñzà?µésï4ú”x­E¿ÅµºœÇ^½¼Ä£·ñv®”†$Ŷgh÷dLm—""ÕRáiIަð(×Ê”‘‘q¦-aèlûðþsŇ;«ò[NѼÞƒ.<¯åjâ§?f‡Ûéœhh¸UD¤šr9]'õÒ_~ø!Ë—/ K—. 6L+áTt–χmûÀöáõú°,‹•WЉaûü7Ë üîž5ü4üaЀÀ~x‰þlÿW—bûÃ9°0° ¶éðŸ4Øt`&&–å¿ä–åóaaƒéßÇ­Ò†\Okÿ×üå¦ ¬‰?“»&t$ζ°”çDDª¥ØØØJëw‚M'//ßÿ®]»°eËòòòˆŽÖ)ëOé@Wü(WÛ¶‰ŒpñæGÿ-|†?”äÊRlttÉKAØU茽ÿ~¯ }ã‘𔚚zR+t­[·&55µ(LÊ)èŠÅ °aHÿž¨Ê*rø0 +sv R‡…aûën…—3ŠB šþI`*t†øéÜLlÃe˜E¿Û†°(Üîðþs:êGDDBQBBBåÊè£éСCàÚëþ£hUS Ã;pd§áuv±Ç Ì@•¬ðà쟅O41Œ?^?ÕïüÏ· Û.t"""ÕT᥿֯_¯ýçª9UèDDDª)]úKNDDD˜.ý¥@'"""aN—þR ‘0§KZ*tP„Ïç«Ð­Rå¯aÜ€sx⇭5‘rˆ¥fÍšÔ¬Y“ØØX5H5V¡ Ýœ9sX½zuÐç†AÛ¶m¹ä’KJ‚{#Ï^p!/m+ÚähÜó*züNzÕ<΢aþ*=ï\Ï}Â_ÚFj ‹ˆÈ)Ͳ,5Â) Bº3Ï<“ƒ’œœLíÚµK½%''“••E=‚L-‚¿fõêïùvþDzo…ûÇ.䀎ª9q®nݺôîÝ›’’Rê-;;›ž={R¿~ý Ó3ÎâÍ5Žiï»ÝÛ‘žžNÇ~7ðÔç»ñ–òZ÷ŽÏxúæti“NzçÜ:u ™¾¾›w3v2ëÆÞôèÑÛ>ÜÏ·—EË7]‘jèÎ=÷\<>Ÿøøø7Û¶9tèƒ ªÐ4­ÜM|ñÙï˜õ›Ó¨ËM3ZÆãtÿÈÄ!·²çÈ™®QŸäÔFLþô1:Eñ`þ*0 ø%ëÊ;]‘pdë ›6mJÓ¦MY·nëׯ§qãÆ´hÑâ¸fÆrçàŽªKÓúq8ñ²wÉ›ÌÛþÇaÑèÖWpAìxòÅ…l˳Àv³ÿ—e,úa>3–Ôè\¶îÌÁªàtEDDDN©@gC‡eÙ²e,Y²„áÇcÆqÍLTú-Œê½‰‡‡žÏE—]ß&Ð¥N)ç’‹nËÝÿšÀY'rq·¶¤·éÆ‘/±4ÓÂŽh°›Îdëè^´MïʵïìÄUÞ銈ˆˆ„!#..ÎÞ°aÃ1O`Þ¼y¸Ýn†®Ö õêÕS#„¡;v”zZZÚñ_˵ÿþja‘*tÜ.2RC—""""UÉTˆˆˆˆ(Љˆˆˆˆˆˆˆˆ«2÷¡3f n·Î×&""ª"##7nœBîè™ùä’““uÞ3‘aY™™™\pÁ´oß^ FlËǦϟfûª÷ñ¸óiÑçšœõ§èæÎ˸q㈠Ë(BÕÖ""Õ‘Óé$##ƒ±cÇS S…®ê¬ûx N÷šu¿œ6-1çõ§iÐí:ÎÈè<ÉÉÉ8NvîÜ©•/""B_¢SRRˆÇãñàr¹Ô(a ó×¥äì\E|ƒî,ùò#§\LN‰iÿ! G‚eY†ANNZ "R¥—ˆ””““ƒišUz€Ãäg'qð`¦i’X#‘‘wÜ£S†-‹_ c×>lZ·‚ ½ìغ‘„FÝ0LÇqO[§-‘c’•u€ñO<ÉM7Þ̾Ì}j2䨯¡¬$ÄÇѼQ [tcñª-´îw{¥L_§-9I ˆŒŒ¬òù¨ìݨLÓÜuèÕÿ†J›¾ˆ„„#?g´ßœTG»víâ´ÓNS ;e>Øòpì€aÆpæ@Ç>›ìÖîŒåœÿ‚ÃYy³Tm Ë_ÍW ‹œ¢áN$œY–UiG¥žÌ¿‹)ÏN";'û÷'&$}éJˆOà±Ç-ñ¸aÄÇÇsÏÈû*u~~þùgž™ô4#ﺛçž¶B?gü{'L<ámfØû±½±es-Ö®ÈÇ4ëÓøôú´ïOíºØ÷ó…Äþ¦«öÉ t %NjwjOÜ[‹ùùÐy¤Ä‚oÏV{ê´ë›÷-?PAiqGP¶mŸèàSÀ¾íyÔT›HlNÊöoû³ªA—Ëòb™Nz,"r }A™0a¿þúk©ÏMOOgäÈ‘•è*úÚCy‡xrü„R§c\wÝõ¨¦Û¶ÍÔiÏWz?yÊ$>œóï½ÿÎùˆÙïÍ.úÿ»ïÌfÆ¿gðÆë3yó­7ÿðóúë®?áaØð®À•?–s.èÅÁ³¶ñËonV/1ùnQ*ÿûÜEƒ&M¸ôÞ{1œµ*m^Ê t†a”¶"A3ûY–l) [+Ù–²¿õ•\´ov±û¾a{bgÚ¥:(صMœÆœ•;ɨK·+`ô ]H²mÀËÞožçÿFÍgí>úþ‰¿ýùBšE—RÓóíaÑ‹1åÃÈô¸’Zré“SøS‹\–¾0–)óÖ°3×"¢f†ß=†[Ïr²è¯#¿æîõ×pÁ+M¹jÊd.‰ú¶ôù)%I¹w|ÅËÏü“¹ËwgÆÒ¨÷L3˜zN›¼Ÿç2yÂ+üwS$6cÀÍsïÐfÄØv ÕÙØ¶uôç¬áÉ«ÆQ0¨ ™‹V°ÝîÌ#ÿ¸‰ì¥,cËH} ŠˆTƒ0wdŸ:lØ0^yåj×®]t´¨Ïç###ƒáǵÃ/ S'sÞ·oß^"ù{á9líb#U'Â]wŽdö{³9÷œsùç?ÿÉ•W^É?ÿù®¼ò*¦O•+®¸’™³fråW2kÖÌÿ¿öºkxñ…œ¸0çYF¤ûI¶|oÞ’ö’”ü#-Ó=l8+‹å Óøù‡HÑÍ+õ}mºØæœÕ ‹9«2ð´Lá×o¶R«gºüöSŠîûg«Ëh`ýÄôûŸà»³åµ'»Rcÿÿxîž±Œo4 gÙØž]|±(‘g¦Ï§±ž×GÝÏÃ/§ñÚ]­‰:²Ö¶~Ï~]ŸûޚęÉ&y›Ùê4±mˆiu_ýwš&xømÞxîÿ4鳯ÓgÜ«Ø#¯àíó^ç…Á)˜xiÄQæ§JÉêXþ:^ºÿ ¾í6†WïI=G6[6í%Ö°±rW1uÔóüvÁßyÿÅtX÷5Š© _çÖ‡+e>¯•íÉ`ɦ–¼ôÊ(E@ÁÏpM©Ë¨!'‘pgšüqaηŽÈ‚ñ4jy/.°ò~Æò`:mânÚ¶5H®S@‹ô˜Ž{C ÐI¤wNáÅ¥8xa–oŒ¢ãå©4J9ýoî[{ˆÆ×žŽ±i:ŸfÁC×v£¦ ¨u&×^Y‡›?YKv`ÆÐýÆKi—`é\rSwÞú¿üò§V´:òxÃ…‘¿ƒÍ›¶ÓºcCk6£9`Sƒ6}»-R“s®fÀðÝV7½ýåÈß4÷èóÓ· žìäoœËç9gòçgS/ Æ­›üMóXìíÉ_/kG¢h{)·öú€±oäŽÂ·ƒ<¯¥ ŽDκb ]]Œ t""Õ²BЯ_?>þøc±,‹üü|.¼ðÂ2?ûOf¿0ò®Ò¯ñäÄ'p¹\†Aî¡\þú—¿”ùyò‰'xaÚ‹%~N}~šÿçsþŸÓ¦¾Pâgáý'„o®Ü‡h˜v+¦Q@NÆrœQ,_.ù9ûpEZø rhÒ¨ Y[r+ý탹–¾§ƒ:]ZñÉb~Þ™Ëʼ挨í$"®;µ·ûï[¾§6=ÒbñlÝʃëxüÚKpÂ’íÍÅh’Mž/ÛL¤^ WÑ{8kÔ#6o Ý^vÏÿ?®˜²Éÿ¢f#™5õz¹þ%^™z¯nµiÔãBn»÷:º%bý‡/ðâ{ßòk–‡i‘›cÒ»À{ø Û¿ûÊš‹¸b%:÷ä&´'Õiqd¸³vs(¡5…9Hj@ÞŠ¸­šØ€m[Až—„mÆR3öð¥[œÍ²Œ)}ŠˆT¥qÚi§Q¯^=òòòÈÏϧyóæÔªU«Ì( ‡7eص2àËåÂápœôJ {7‡î¦AÓKñx²ÉÞ»†¨èXlÛK^î>¼žC˜ùYDxsðy+¿­œe…¹²¾MD6:“Óܯ°pa6õÑ(ÂÆ0Óèó& ä÷ØvÜ^ˉã@“ëñ·×î§Í‘c¨ù?€•ÅöýùضV öm''ªqƒÔ!/òÙ’/©5ì>žvžøxƒLøgG^½ô;ž˜‘ÁÅÏü›I§ÇáðläÅf_`Þý{´ùwÄ—1?G4áH¨KÌÁßÙS`Óøˆ–rÄÕ$&{+û<…yÈÜšMtjŽbûžQ4oþ†£e)ËøÆÃí‰Öç ˆHµ¨Ò•¦[·n,^¼ŸÏÇ Aƒ‚vÛGâ8îIDATø¡žN§³J¯)[¥aÎ÷3y¦vƒdgïÆ›û 1q©8]O6¹2pFøð¸ayÝøŽÿñ¯ÙkÉòzÉúq6ÿZdpÆ Ó‰´ó{^ñy+k9ÊzÐM7ÝtÓ-|nõ±úõ듚šJ“&MHNN.×ôBéņ8uÒùA\97—Ј¬ýÛØóû'DE§‰×›ÃŽ_~“ŸƒizpÊÁ4äíÇt&Wú¬û‰…©´í˜‚õ´IOÁ´ml"hØ­ ¾ßÓäŒÓ‰±mìÈ4n˜øg^öÜ6l ¹–‹„†í8÷–Qtj ¶«6½ÎØÇK#.`Ý~ zÝÄ£7§EÅx®çƒñylW.–MÝŽCy`Tkjñ§nñÔˆILŽ'¡q:íjF*n%÷¡+s~l»äùò"[rÓ“`MžÊˆ!à6ciØë6žxð4â£ÛqÛã·ðìÓåÒgC|SzxœÛÛÇ€ûpP£¬çš=ÜÆG[ÆÈ}î<©Ò @›6mˆŠŠ*W0 • `Û6¦éß}¨ðHÝSC<žØçÈÚ;ÓÙ€FÍ®2Ö.[HLT®Ûv³w¯—Zu8”‰ÙŒœœœN'‡‡ÃqÜá܈‹‹³7lØð‡Ün73fÌà²Ë.#''G"""ÇiùòåtéÒ¥R¦•ÀôéÓ¹ýöÛ‰ˆ¨ØÞž={*efüûUöfîŲ,âââ¸ýÖ;N¹+»X–EAöb¢òÆ©uZ’±s;Y{7“”QyØv›Öš´îZm¿m_FdêùEÃÕ…?ƒµ]Íš5K½?--M×r9Y¢££«Õ¥¿®¿îÆ6ípaÛ6nÚsáØ;—ÌÝ`Ø0âqD$âŠq²oD×°163Ålؽô!ùã @'""r’¤¦¦†D “Êcš&ñññ¸\.Üî«Éõ\ù«0s?aËo[ñÄë.À0 Ö|cáˆ>Șš˜¦Y©C®Nm4"""'GRRR¥ºSmx3T†Att4ÑÑþóQXV?|¾ÞEGþîcX o•É©Õ ""rrž¯Mª·ØèDDD¤„SõœqÕYÐ+E†ÛíVK‰ˆˆ„Sëô rÌÎår‘““Cff&IIIx<µ–ˆˆT;á¸ZDDÛ¶mÃãñàr¹*üzí :Ã0èØ±#sçÎ%**J-%"""lÛ¦  €Î;S 3gŽ1 Ý~ûít={ö¤uëÖäåå©EDDBHLL IIIÇôÚÁƒ««™2Óé¤V­Zj%‘j¤qãÆj„jF{TŠˆˆˆ(Љˆˆˆˆˆˆˆˆ(Љˆˆˆ(ЉˆˆˆHXÒ¥¿DDDDÂÇãaúôéÀɨÐå­`tŸó˜ôSˆ\>,Ôæ§:©@ÛÚy?ñÒµC¸ÿ£mè$"""“••Åøñã™9sfùÝ»WuâÜgÖS²›¶9ðÅtïùKsNâä¯âѾx⇂S{M†s;øöò儱üxÁó<9´.µˆˆH¹íÚµ‹Q£FñÕW_]þ@×÷êìûx6?å»ÓÊdÉ›ßuÎå´;YAÀ‹RÁ$Äæ'\8Ré7öMž½ì4"Ô"""å¶víZî¼óN¶lÙBtt4¦i–?Ð¥œu5Ýý—·È=œeö.æÍ•‰œIsv½<Œ3nžÇÞ¢tsˆåíMŸG–sÈÿlö|5«{w$=½+CîŸÅ†C‡/ ìÞñOß<.mÒIï<[§.!ÓG`¯?÷Oþ+× 9‡>CGñÜ=wónÆNfÝØ›=úqÛ‡»ñ•5Ò“ØÑçÇ·—Eo``÷v¤§§Ó±ß <õùn¼”6?c˜=ùº˜_bÙW<Ò‡Þc–q(çkné~¯oóËãûGú2èïë(uP²¬÷.!‡Å£l‡­ü\ÖzÈ[ÁèÞý¸÷©‡¹áâáœß¿7ÃX%xwóùÄëèÛ± mÚ´£Sï+™üƒ?Ñ»·.੃蚞NzÛî ¹ÿ}¶ͤÅþï^àÖs:’žÞ‘A#ß`c^y×õ¹üåÕ¿sSߤ§wçÒÇ?gÛ–ùý(_ì ‰óó$]8Œº?¼ÃÒÂÇs×2ûkƒ~…Ë^!AÞ»H=ÇÙ it=ìfáÏ÷Ö>ùt&×çN㮢å.)í‹<± ûï*Ö®ýžÅo=ÂÀºNÈ[Ãä[þÌÂ&÷óÞòX»òS¦\—N|ᵡ=Û˜ÿŸHF¼ù«NãìŸ&3v^†=[Ožíü÷ë$îþ`9+ç"yî\{÷´7Ÿ•ßÍæF÷<öÖo}îŽÖV1¥´Mmú,‘0åõz™9s&Ï=÷¦iâr¹p8E·r:Œx:]Ñ×âY|wÀïþûÖ]<„Ó"ÀYï.o¶‰·¿ÊÀ‡MÖŠ·ù&f0·Œò¿ÞŒ£×]7Ð%ɉ3±#×ìÅ¡ÿÎåçÈÿé]æèŨÛΦN„ID½¾Üzs}V¿Î$úÝ<„Ó" À(uö‚NãHeÌŽ:׋É. 3ŽæCoaHâþ·%PÇ9b~œ ÎåÂëxgq&> gõ»üÏuµŒ®ø öÞA]ŽDúÜx ]€«o:‹üÏË}ä*wD`æí`ãúßÙï1‰©ÛŠÖ©Nòֿüƒ}yèžshmb¸’hÖ>…‰É‘Dÿ»¯£kª gJ†Heû÷Ûq—g=9’éwçU´¯á$²Q.l®Þ73¬yÎØæ <¿>+·QP m%""rss™2e sæÌÁårár¹Š*sÅ+tå>mILÛK9/î&f-ɤgËù¼»¥WjàŸ€£}®Lgò¿?gÇ…ƒYÿæw$ ½‹Ó#€<À¬AÔȢiE¤6$þÐf²<àÉü}Vñàù}pòšíÍÁh–C¾•fuâ˞Ͳ§(Ï”1?¸²fÖžzc!›ö{0 ‹œl“n«( –˜g=ú_ܘÞýš½C²ñÝ%D|‰´( ¢‹XAÞ;h ¶â©pøgB]brö/wdÉIE¦ßÁ¤;'1yÂU<÷›MÓ>×0êÑÛé°95ºR'ò(ópÄ{DD»°3¼Ø€·ëºVaÛ.¢""ˆ¯øÖaàŠva¸±+£­DDDB\FFS¦LaóæÍDD”½×yùÏC™ÆECS¸rÖg|Ûñv¥ßJÿ:…/7I9ëJ:L˜Ê§«âXºª=Ôäðыֶî+€À.ðî½[ÉŽ©G¢ œ5ꓜڈɟ>F§#‹Zy+üU¹# sØÅ*oeN£Ôàtôùqox™§îäÚó™Ñ2§ûG&¹•=ÅßÜ(Ù„uû^BÓgßã«M‰,ú6žó¦7 LÙA„ÃÂS4îë#7++¾ôÙ þÞe·CÐõàÛÏo{ò±‰À öüJV`¹ÿÌiwÕX¦_5Ͼxû¡<üô̹¼qY¿°»šUððÔàëºü‚¶ÕÚ¦bëBDD¤*mذiÓ¦±oß¾¢*\Y*pºNz1õ×ü¿¾‘I§«{‘Z¬òe$vãÊî™Ì;™Õ/åÜÅÞÜÊaÑÔ×øþ€ßÁÕ¼ñü"¢û ¡Y$D·¾‚ bÿÓ/.d[ž¶›ý¿,cÑûJßÿÍŒ%5:—­;sŠŽ0­ð4ʘ˃;ª.MëÇáÄËÞ%o2o»;Ha¬7—4ßÌ+O=ÇwÉCÒ4¢£йö.¾þÎ`ƒû÷ù¼¶ø G;V£Bï]J;]v.ÿ{~:+ö{ñXÉŒ)‹‰ ,÷Ó–/ùlõ.ò|àŠK&%6ÀØV—18þK&Ný’­ù6¶w?›Woä€/øTáõTV&/«­Jk› ® ‘ª`Y‹-bÊ”){=¸ªGrÉñtº¼Ư™¤]ÖŸºÅä«>ƒúìåéa]i×ãfæÖ»‡çïmG4@t[îþ×ÎÚ8‘‹»µ%½M7†Œ|‰¥™¥Ñ„a7ÉÖѽh›Þ•kßÙ‰¯¢Ó(c~¢ÒoaTïM<<ô|.ºìü4.G_,Lt5éuYkv÷ µ‡¦qaåÊÙˆK¹ˆ—.cÀàa\ýÄZwM=êy×*ôÞ¥µC9ÖÃàs²˜<¼+íÏúŸ6ºïðz8‚ïàf>8ŒîíÒIï2œgs.â‰:ÝŽ{_~‚3z‚aÛÐ¦Ó î~ýGrìrl@]Oe(³­Jk› ® ‘“Íãñ0wî\fΜ‰ÛíÆ4Í?í`ÄÅÅÙ6l¨”ñny•K.[̈O^aHª.[UJ]y+}ÞRÿñ!÷µÔÙßDDDBI^^³fÍbÙ²eXVÅöÿúë¯+ñZ®vkÞ|›½g¬æñxX°`[Õ5ÌÂÒž×ë%//O­*"""âòòòðzý×'4MŒM›6‘ŸŸO=ì.]ºAdd$111j-‘ rùùùäää°fÍÎjY×p˜`üöÛo…:€ž={ªÅDDDDBÐâÅ‹èÛºa˜à0 ŒíÛ·ÿ©  à%·ÛMAAn·›¾}ûÚj.‘ÐÓ§EÃá01MÃæ ƒÿÁ Úˆyñ˶IEND®B`‚agave-0.4.7/help/cs/figures/gtk-color-selector.png0000644000175000017500000010725711224443302016763 00000000000000‰PNG  IHDRï-!©èrsRGB®ÎébKGDÿÿÿ ½§“ pHYs  šœtIMEÙ &sº¬i IDATxÚìwxUÛÆ³5e“B „é¡ Ò‘¢€¨ˆ ˆRQñl|‚…¢¢(Š€¾*ꋊ Ä ‚& Ò»ô.$ôl’-S¾?Ò6Éî&$làܹε³sf'Sî9÷<ÏyÎs¤åŸLFQT4 UE–Uœü‘†€€€€€€€G„……À¿ÿþ[îû®W¯$''³yófÉ`0`00F ²¬ ªŠ¢2ö™Ñ^¸p!~~~(Š"€€€€€;vŒV­Z‘••UîûöóóãŸþ¡N:tîÜYؼy³¤( ªªb(°¶?Ö-ZÄŋٺu+v»]ÜHOO'33“”””rßwhh('Ož$++‹7ß|€Î;k›6m’ J®p¿ôÒK=z”øøx‡¸+^ ª*š¦¡iåßÓ¬iªª’@ff&¼ùæ›téÒEÛ´i“d°çºÆ³²²8wîœp• ”²,{ïÌÌLEÁb± ÓéŠÕ;N²²²0›Íøùù¹ï¼ýgdd Ë2z½‡Ãd±X´)S¦ššJZZš¸¥@RR7.æ6W…èèhºuëÆW_}…N§+$àN§“¨¨(úöíËŠ+ÈÈÈ(¶ïÐÐPŽ9Bxxxþ:½^O`` ï¿ÿ>:€äädá*(EÉ·¼] @ZZ‘‘‘Œ;‡Ã‘oE;N"""¸ë®»0™L¤¤¤¸Ý‡¦iÅ<ኢäÇ222¼úì?sI'Ö7ú„¸»žàߊIs£¹î<Ëž‰ß.(׿1\âí I’HIIá³Ï>cܸqŒ;–?þY–±X,Œ3†´´4-ZàVóÄ»h]!ñ.M‡û»n.ÓI}÷Í/Ò‰/ pÅ¡«ÎMÏÏbXHúe&/|{gn•©ÁfMíEˆvœÏž} ɪçý¸>åôb¨ÉÀi/q{M™½óždÁþìÊ?«ÞÖŒF#/^dÞ¼yLœ8‘ñãdz~ýzn¿ýv’’’øðÃÑëõèt:â·ÿ¢ëË$Þþu T'ÔýÆXoUÿu;‘]ëO2ldÂoèDÔg8í0S§k{BõÈ:ö$+x}\*˱*é HªŒŠ÷}k¥åK<†r9F«Ôò·6°Z­,\¸|áÇ“ššÊ{gÑhD’$¿õdyï’„öáž*ÿ7º ‡º‘r]š¦!IH:—å˜úˆ¼¸’#‡„x \•,É»×rdD‡u sô÷œ:és=º¶ dþYwšÆßc| #g—Lá¥ß. H´þÏomâß%S˜¹!ozBÛÜÍäþ½h"“°ó{>üßïœÌÖÀ¿5OÍœæºÖ~„ýºQ_^Ë+ϯ¡Ñƒrs³(‚MRNlãçÅ_±.®:wÍšFÿ°œG¼Õ¤|$üðƒ#·p&×—Ÿ¶ëׯaÓ‰L/–°—cÐ{ù_&OÇxšýkv‘Ôêr=Õ ù7¤[ 3p†uÛ ½D'@U·¼ÝY–1›ÍŒ7ŽŒŒ ¾ùæ, ?ü0‡£Äß{÷2¹ÍuºË¤ÜWv)gQÒ¡“rÞ0rV”lÍ Tihéì_sg³V„\ß…ºKÏcîÑš {ÏZe¨dù¿Ón WT7nˆü•UAhîœXÇî$ÍœçÚÎfÛ{¯ñþÞ,Z=Ìë“:Ô¾;õ¾8À?ùîo•£ŸÎ`öú¤–t|1}² z“ ㆳTŸýMB›Ó$x «VüDô ©[SæÔï_òé>Ï}Þ%ƒý˜çÿUMljtÇhnĶôNôˆº‘ë#~emõnÄšA;¾†‰ ZH^û ¢mƒò/Á4*jy;NÂÃÃy衇HKKãƒ>@–eΜ9Ä xôÑGùðÃQÅ­Ñ[’å]&ñ–rÝâ9nóÜï’® Nˆ·Àµ£ÞX®a¯½×_O÷؃øµò2Ù¹î(Yš¶S¬ýó"½n¤Ëõ9äß‚@4Ž®ÝC²âúÌ¥p:!USÉN8M ð7‡lÍ™·ÍöNEÉýd®MQc¹­c],…,t#~Ü ¡'ñ.éÐJû¿ #¶S¬û;…ý¢¸±}}Î×ÅŒÂÁÕ»IV4$wÇ(\_!ÞUA¼Ý?V!!!Œ5 «ÕÊ|€¦iùCÃ-ZĽ÷Þ˘1cøøã=·2nžÝ2õyˆ·®@¤sý÷®‚žcˆ ñ¸FäÛz˜µ»³¹¾£…N#ïEoÒ·²öxv®&:9·q5goFî÷0„`P±v_JŽÀå?¡Ô­n†¸,ÌÕë `K!Í®¢å?N N%/òTGX§QÜÛ©.¤þÍ—ŸmàŒÃðIwR/_UÔÜýKxï’ŽB;—ô¿Ü#€³6r±ß­Ô¼é†šÁ±‡?ö¥¡j’ìÌí:0`’Ф@jÕ²ñ¨2ð°¦( ¤¥¥ñÅ_ iZ~T¹^¯çìÙ³,]º”¾}ûArr²[ávmž‡2ºÍu¹BMÁÛµ·ÆMˆ·ÀU,Ž®ÙŽµc7,Õ‚HÞ¼žÓ¶Ñ‘/lá×Ãwó`“ëhÈû×°/5g Þ—µ?7<ú,¦=ID´mƒ?`ݱŽ6 ͯ`_ÏiQ3Z¨ÛâFêºn'g‘˜®A”æw?ÈØ¶ ùõ[6ÄÉÅ,ï’ŽÁ¿¤ÿ¥¹;Æ\×áùM¬;w+wE_GM {Çü“‘sþZöyŽ%Ãuau¸mÌ}Ô´6¤gLaK\´ UÁò.ªu:ŽC‡qàÀüýý‹ 3 œ8q‚ùóçc00›Í¥ïK X+tp’$¡CÊ d“$t’$Ö®ØN®gk~VáDþÚx¶p„´šÂî_÷æ®sp`Í?dS¤x~ûá0M[SÛääÂÎ%¼õù²<*—JòæOùzçœÕ:1â¡»i•µ“c…"ÀÒÙûí §kj_O÷^}hnðr&žŽ¡ÿËä lY{*÷‹•«œ—ã4+þ·Š£Ô¼m²jo¶ •@•oOff³™€€€üÑYE‹^¯' “ÉTê k®,‹6tèP¯ŶlÊÿ=3µL'5ûYØwHÜ]kRPGž}gÍ;xkÒ|vg {R@àjÀ¾}ûèÝ»7/^,ß6C’¨V­›6m¢yóæ…߇e™åË——¾Ï{ö³Ê|Âm.pm«v 1]{Ò¾u/šI¾ùZUá ¸J ( 'Nœ ,,¬Ü÷}äÈ‘Ëϰ¶oÏ?â. ”ú`ZÜ:Œ[£ ãðrþ»ä0Ùâ…V@àªA¯^½øûï¿ÙµkW¹îW§ÓQ»vmz÷îM||¼[ñ–,‹6dÈdYwB@@@@@ ”0 DDDP®ûÕ4 «ÕJrrr±.mY–Y¹r%qùʧÓI\\\…þœü)n^òT^ôO ”ÍB¾RÿÓp%B@@@@@@ˆwé¡×ë ÄÛás÷T•Éb±h‡WH@@@@@   I“&ˆthU B¼„x ñâ- Ä[@@@@@@@ˆ·€€€€€€€o!ÞB¼„x \=óy ”ñññ¬\¹’øøø+@§ó8ïð•„Ñh,¶Îu 䢓>Óºuk:uê$n²à›OóMˆ·€€@™ñÝwßC¿~ý$ ƒÁà“©;¨ªZ¬äaëÖ­ìÞ½[ˆ·à›ÏóMˆw%À)ÙHÖŸ&Õp–TýYÒôgÉÖ'b×%c×¥`×%áÒÑH4)=`Òü1j&ô€¿Œ¿Ž¿†ŸŠŸE©C R¹J=tšY\lJkúôéCݺu}ú8SRRÊ´½N§cåʕ⠾ù<ß„x—#dY&ÁïqÆCÄrÞðIÆã¤éÏ¢CEON¾Hq·@–²ó…\!lýY¿7 #P©ƒÅÙ ¹Μâ'_‡$n³@9C’¤*cù¸ƒÝnÇl6»mLߪßD«~ÈÈÈàxõ­7nç˜y+§»Q%›[Õr‹+Ü­+‘Ĺ¥è:PÉÖŸÆ¡?M«óÿ¯Aó#ÈÑ‹£g{7 SƒÄ͸,èõz †ªÙ|$$$pÿý÷óöÛoÓ¬Y³BuF£Q¸à[•à›ï2@Ó4Nš°Û¼–½~ë8Vk; ³ ‹Š³;Ö.óX$/ÂîZ§I62Í›É6o&0` ÐÑž@[Oì½09c=ìM@À{cZ-!›ÍÆôéÓQ…3fðî»ï^5ÎK>DzIÏÿÐL5…-·½Ï󂮉§Wð­8Ä+f)pĸ‡ƒ_b\ÍNš>A üÞ½Ù;£ýfíÃ~) @Ö^Þ¼íf¦¬IDñ¡³ªŠ®å_~ù…¸¸8jÕª•_œN'K—.ÍÂãë}«Æ£ø|ãf~½7a>| äóß2þ¦ûùô¸Cð­‚ø&ĻțÒVóz¦„exÛø(h6ç §K-Ø—"Öš‡âN=YÙesoB®NažMfä ØÃÆ¢š×WÂkGU#IGœÅƒ:KlÛÞ Ÿò;R.SZm»™Þ«¯ìs•ølöø2[{Îæ¹^ø’íáiœ­–y€EO ¥[óÚDGGÓá¦,;Fv>²Ø3ƒº4'::š¦þEf¡Vÿß?9Mr~ݨC_øŽ¶Ë;ÞsçΑ––F«V­ŠƒÁÀ¡C‡|[(´,Ž-ŸÍø[»Ð*6–ØØëé3âY>Úx§Ï)w+^þ”À§æpïu¦ åZ"ß ŽÎáJ^i<žÖ+{ *ƒo¢Ïp8üZí{¾ \È)ã¡ü¾k] ‚­•Áêö&Ò—ke—F䥄»ÐwIFõûÙïWtΦ2†ìÛA3^ëLáä0l®a³3»G}L·³ä•ÿãû.òÉ×OÒÆRŽV›-޳‘ã™sgk,>f zrcj¶‹$… àůߢmm=gVLgô¤û n¶–)±f@¯VGF<7œaK&ðj±V:˜Ø»^`Ñã1ÔÕ“vø^õ$“šwæûáQ—üͰaÃJ~¶|Òòvpâ³ñÜý¶•Û^x‡•}š¡%rxã·|òÓVR:"²´F‘Qõ† µÚäÔ“Øû¾ÂŒ›#ËM`¼»Íi3g ˆTÏ9/IÑteïXeðíš¶¼m6Ÿ~Ä€º™VíIŽ•ZtµRXÎWÞD½´/’ñT›„.²#ºÀA²_³|ÑR71wÁ~ÚN[À“ýîg"¨Î<0çMnÏXÌk+Î#£bÝ·ˆÿÜÜŽØØvô3Í©²KË–ÀêÙ÷Ó«m Z´hE»Ù»/‘S'òÍ…8¾ÓƒÎ{óð (XÙññk|vØÙ;˜Ú³Ï,˜É¸;Ñ¿GLüœ#ù&­“3+æ3wÙ •p-<ÚèÂ{òôscéÛª.aÑ´ö#êıùPzîsáO“¡2b@'Vsó2¨ ¢qçN´¨Iµp¢ë7 Ê@h°©Rúwõz½ÏYÞZÊŸÌy箟ñÏiKí`?üBjÓzàDæ¾>H=8ÎÿÁœúÓ¾E,±×÷gü;›IRÈåÍM<5÷îÔ—žƒ§±â[éøà*ÕoÈŽ{ÒãùmdQÒ¾¼pPIdÃìÑ ø03ŸF÷>£y}ur9ðÓ{`—„ÎhÆlÎ-&C•¶ËáÛ5)ÞN§“/?áæz]x-duòEW-ƒx—$à•!ìRKY£ËûÔ'`y¿È.?C’œ×ol'V³ÓÞ‚!] »°%KKnífáðoÈÈØÎìÇþKòÐOÙ²w+ß< ±ü÷‹ù®MÛþ÷xå·ºLû}7û÷ïbã×/Ò?ª]gÍã®È(F,ZÏæÍkxÿ¶Å­LG޶aÚW+øõ÷Orv3W^Èí w¿î ÿq®RÄ»´ Ž|a'[#i×(¸ â›ÍŽºÓ¤A]êµîÛ>âí[Â+¥±Òét>e;¾šÝΖ éZÝçAÛÞ7…ÍžgÅÎ}ìZþ QËŸfê/s¸áˆgý¡–Ìøö7Öýü2ÝFÔ¾¥üœ«Þ™ûY¶^¢÷Д¸/o”l5–«v°ß–>ÌS§³&Y½l~zç[;_èMóÆÍéÐÿfÿr–ªbb\ß®)ñ–e™¯¾ä¦Ú]™òñúøKìËãòt›W´Ør>¿)X"»aø¯þ(Ö‹dšÃ ó/zåõ×° ¦'“rð{Ö©}˜4¢%½ˆ.ãx´}ArIoB—}ž#ÏâÔÕŒæ¥t.#è;º/µM€©.]º†qnW^cÀ s¶°óýnX*Éb(‘çYXøØËœü*ÿiQ–ì~´žü6­ç§y÷¢|ö$¯ÿ~ÍF_(Ö‹d™#ósÿÄÛ}éÝyæánÔ4é0ÕêÅø¢ÙóÝ.24ÀJïÑÀœó$j÷ãŽÚÿ°tc `Ýó ›Œ}ÒÔ¿ä}yã >œv·t§q˜Ig¡Ñàq 9Ì¦ÓŽËæ§G¾I´šð_-ý_W}ÉK|þàP^Ù‘yÕóâšéó^k^ËÌÈéœ4ËïÓ.*Âj®H].ÏâNÈË*¾å)È%YÜE—ó×éÏb©ö–°¦½ˆÃÞëªçÞR@ûYRl¸Þ …ô+ºà0Léqd…ÜH„± q‰ª’ÿ ™c'ðÖco1÷µÌ?¥Ós$ÏL„n¥É›#PЈŒzT›|ED­Äñ©¶£|6~8 C_äûY½ ו冠"ƒ"ˆú¯l\ÁèwñÜ=*üÅÄ“è«`#Å^”w¹žÄ¤S$§îfòÀžs«5ÙŠÔЊM …šA.çd¨ÅMwÖã¿ß¬'qPŽ|³ÿþ iâö’öåƒj:{¿|×?ÿ“£)Nt’Š5CG‡Z|ó§aÿA4ÌýVï?oaÛЉ™ßaêõmñóõ6å2øvÕ‹÷ÃQf†¼ÌZó$Ô|!R‹|–$º—*枬îKpOAhå!æº2n—÷i0!<|$[/ÒÒ¦!+®Z.ùÅô¦­ù¾Ý˜H¿Á.LͺŸå¬4ßœ(,Yñd(€ÀAjB&J^Jf]­FÌ`ш8“÷±äÙ™2§¿Í0‚Z1/½º1íÇùüá¡ÌQŸ`Ù‡Óà2Sîkhhjå\_çí×°7mŒSønS"}ukªEQ—¹¿Ì¤‘gïÈyR¥ÂÍ~T¯¡ÄÌû–uGCذ%ˆ[5Ä(%îË3‡?dò;qÜ÷É*>i„Áq€ÙƒÆs±¢ùVèê1$TY©ž1ÎÛ‘Þz›~Õoe­ùO@BC*ä&W‹ˆó¥ö{—6êÜ›`—D4©”B^R”yyXßE\ÒÀl\Kõj} òóªí—ªuå‰Gš²sÆxë×#$ÛXÏnæã§ŸäûÀáL¥ÙítUW³xcθlÇ©|òw&y¶‡ãôZþØO¶FKá&$ $] þ™œ³rivJå¬ylp§øúÑ!¼”<–O §¾ÎÝnÇ©0\“sÖ9 {βœS¯¦lã‹/Vsà|™ Xþ/þè¤ËÐpmB íÁÓš²ý…Gxíǽœ·Ú±¥ŸcïÊy<ù?“Ñd·þÊ«ïýÉ¿Ù*hRNlcþd¹ô‘=Úè8½>Ÿ­aƒ“žíß¼ìûʃê°âð‹"&Ú‚™ÄÍ_±òœ£\øé‰ojÆ~~þy+'.f™ö/Û¿˜ÆôôÔØç­îËÅUiyo5ídrä‹5©ÑPÑŠYÜ%¹ËËbuãEÌÝ}/€{noã¸Ë ¦»DÏ»HN‚üÞÂ_¿‚Ôì7p(í¯2f™ˆ¹ÿ¾ y›ÙsGÒíÉL0FвÿX>Z|×[$ Ïλg§eÀ‚pBšq}§âr÷ ¤ïå‹ÉÏòä¿V}u:Žà•çÚâoÒ¸m쬜ږOÐnÚO|2¸lâ¿î [Û2nh =RÆS¤óìrÞû%+¯skË×ó×7ö¿>TvöÏêÊ͜ϭIËPcìÏüõRL’ƒß?ÏKÿw† L5Ú2ø…¯˜yKÄeY»víbþüùÅæSÎÃ]wÝÅÀ}2` LÄŒú€%aï0gáxúMMGèÖ}6a8¡–H&~üïΘÍ7<‚U5R­AnúU:7ôt«ÓýîæÌ˜²zP/¯›Ç¿eÙ÷•ç!ˆÇ3=&2eð@ªSíºv´¯i.~z¼'΋üõß§xü¡l€¹V†¾þ5/v ¾¢Ùç*ƒo’ÅbÑ>|U4­N§“×Ãßå}Ë"Tä\áVs‹’ÿ)¡¹Ñ«è„"î&ñT ^ÖÑS]®K”|áJ•:X”Õ0ÔPªà/“iKG¯™0h9þ*YÊF•rÞSRzÎÔ¡ºdœºœúDìú³Øõg°N NçÏ\f(ã1º+Þ®…벤º´.—[‡ÕñÊd4M¤¸ÚðÛo¿1hÐ """|ú8]§h\¼x1?þøc±m:tèÀäÉ“‘$‰ôôt~þùgn¿ývq“ß|–oMš4¹z,ï£GòŸ§³Ïø‹½™—fÅuY‡†R¢Å}9k¡J-š:n ¡ãzb툒›`Òü={XPƒÕ¦GÕ œ¦Írg"„@¥Žg—•”M–ñ0™Æd™¶“eÚ‚¦/—¹7 Üs„ŠE÷.fm)Ê;È\Wå9[â6¸&Óª˜kzäÈ‘Øl6öîÝ›¿®víÚLš4©P0TUžz²4œ­Š|+Ž«B¼—¬âÙ-eé‚OŠ­SQ ¹Ï‹ŠxY„Û_³ÐÖÞƒ¶¶ž´´w'B©]z‡˜ÉŒÁä—#v ééé—t tš?G,Ž696ÇZ×ÿK¦ß:²Ík°›7‚”Yö¡a¾ëÜ ·Z|QÛKuú“ªÍ&[º³JóìZæRñ­ æš–$‰Q£F±xñb b̘1…æYö˜†SpVðÍÇøV¥ÅÛét2-bŸ~[Dv]7b®y´¼K+ÚAjݲÐÍ6ˆXG' —˜:Ôß„ªª†ÑhÄh4ât–OÀ—Q©MµÌ‘TË ’›éoìþËqø­BÒ%_–ˆK¸nWwrIË&Ty“´›tý44‘•·ÊC’$ýy¾„¢Çh4¹çž{Xµj½zõ"00°Ø6W“x ¾]½|«²­è… x°ùLv˜ö¹±²Ý vqWÝŠ¶êAÄü4?zÛÒ/k(mì7¢¿ÌËg4™ÑéM(Šš3FH“ ==½ü‰ªñ³wÃÏÞ Y8Í‘¾EñûdÏè¢Å“ˆ»³²½ ¹òÿ0:÷‘lþUª.Z¤* MÓÈÎή’ÇÈ!Cò­9×gÍf³‰›+øV%øV%Åû°á÷·|žõq¥n\¤Ùµï;ﯸ`»ZÙ ä&Ü‘y/7gßI°Z­ÜÎÃìŸkuç $f³¹B &{OLöžhº—Pü—Aà—H†Ã­îBB^ ¡ö´Þ¤l£º<˜$ÿÏõD«T…áp8ªì±mHó>eY–·à[•à[•‹6ßhÞøЗH×eP<ĹXȳ—O%ÿ»ûÈl‰®öŒ²>LG{·r?½ÑL@p8hjnQò—5U!;;E©Ìœ50ÿ‰Î²½y=z—ˆü¢ÅÍ%ôüéá©Z)–°o­RD||ÄãÖ ˜4S¥œÎàzªêjek i9A šæ’GUò‰!vÛ-$Ú{c ˜‡Åï]$Uv/Ð% ó(äªJÈ…gAQÉ ¹_<•UY¼?XËÔÏr³‘ë<µ;1×¼|æ,·s´â´™4u6®ÔsÒÌA(ešåÄ7‚24ÍLFædlöÁ„˜ŸÂ$íö"Æ¥,…]#$a*š¦#«ÚHñd TEñ^°™)Õ»nòR*ñ6j&g<ÂÃÖÑè*»×@”¢ýÛ9Ajš›Èó¼ès_Iè”›’(/Çbø/Aú7 [áe-EûÁUjqSÐð'»šè¨Râý³ÿNž¬öInS])ĺtâ}\—wS^¦¥³é9/Õ”3_³‡RP'³¾eYö¡hKVù1ìJ7B¥Ç0¨'.ß wq¡‡ž} lÕˆ'T@@@ *ˆ÷&óa&TûŸKpZi,í’Åûî¬ÌJ{íÊÌòªêý%cîp°¢%¯Ï»øºBŧœZk.j¿¢N!@]VŽ®zòQ’~=¨‹xJ}ñññ¬\¹’øøøœ'ÕGÇÝÅÓkyñ%OgLëÖ­éÔ©“¸É‚o>Í7ŸïCÆ8ý§¤Áe¹´ DÛ¤™™>û2o»²B§ BS‹ZÛ…ÅY+&Ø…E^‘t:O%é× U7§ÖŽ`y’ê,‹\ñ.à’ê$ôÈ$6û9 ‰h½| ß}÷111ôë×I’0 U&3YÞØZ×’‡­[·²{÷n!Þ‚o>Ï7Ÿ襤$F6ÿ€ ã2„»ð[M %œR^¤£Ù=7EçâÖêölmkn­ïœ\¸>GÐLý(œæXB3B¯$xh¥t¸NÍ ìÐX[þ„j -˜5H}úô¡nݺ>}œ®ó+—:Ž•+WŠ,øæó|ó Îét2¶ÉWÄé3ð°jû?ŠmëM½6ƒymw¶ÏóíŠDl3ãË6—w)·…ÆÃwÏènoÎ[)cÑùpk@†”s³©™„¤Øúâõš›Ä-YÙ6ü23 ôm s—ÀQ‰©»FÇ~lkÒÛ3éá®Ô0›ˆì2ž':\à›Ïö‘`cßÅPzßÓ›zþcú1¢kñ°ûOõz½ï¹huL&S~áßeL™±ö/Íctãévœÿƒ9ô§}‹Xb¯ïÏøw6“ä¦Ið¸]ö¦öìÃ3 f2îÎAôïÑ…?çHžGDIdÃìÑ ø03ŸF÷>£y}u2@%ðÏs`—?M†>ȈhXÍMv³´-,úÃÀSFѦš™°öðÜ@™ŸmÇ `?ÄÇon¥åK xü¦&Ô n«®t¬iðy¾U:Kç…ïà¨!oc´K34,J çóä ©~>õœi@ªä6B<Ï ^0–Ûݜ޸­‹Ýu½k‘•‹/ú¼µ¦ê‚Hnô9о¦÷¾oŃh»,R`9ðN¥¿±v'ÚúíâÍïòƽœNv¸¤2Rçæ¡Ô9ð5s[Mën–¬7ÒwhGúÍšÇ]‘QŒX´žÍ›×ðþm5ÐY·3û¡×8ÞómÖíÙúù½9ñúxfo³’½ÿ=^ù­.Ó~ßÍþý»Øøõ‹ôªFW7ûÑã$~Ý,þã\¥‰·§'§/O¢ •$'I“¢͹½“ÊŸKÖr&[&ëäï|¹Ù@—ñ÷Ôé|:8JÍØÆÜÇæ’4t./ÝR#ÇúµàÝqSØØìyVìÜÇ®åϵüi¦þr‘Bú]ÒvŽ86mô¯VðëïŸ2äìf®¼»‰ÀVcY°jû÷maé#Áü8u:k’U¨þ]ªÀ9ã÷rÜY‡êûç‹}ƒµ±;À”‹;ØFÔÞ縩i4ÑõZqóÄÅücÕ|žo•*ÞÇ )¼cÙY áöny5 SÆ¥Tó¹‡+S À¡PÕCÑ\Š›õ…;oYÎw­Øú‚bµfaµZ}^ÀS)?@Seêëv·lÙ·CúñÊóþ‡tã¥/ßâ¿m|üÜý èÖ–nÃ_âç39M–¡V_îix”%ë.  ‘¶c  àΦî_0m‡¾c|OŽiO˜Á@Øõ£yª¯ÂšeÉÖ›ÐeŸçÈÁ3¤8uD5£y„'k €ælaçûݰ\a7¦_Ã[è¸y ÿ&Q–IÚòooÁ–†Mô5ôÒ4Ú¬Gç†õhÔu[ºÌdZŸpDŒw‰®~yá –…?Á;Ot H—Ç£oø!µ;Ï<Üš&¦Z½ÿ@4{¾ÛE†æÊ·¶3FÐwt_j›S]ºt ãÜ®\AÖ‡Óî–î43"é,4<ŽA!‡ÙtÚQ)ü»TSméØ%?‚üòÞ&õø…øAv6ë2œgøa{,³7žäÄßoÓi×óÜ7kGŽ§È‡Q©ÏË´Mȸ£­w³ìÞò~9ýÚ9êùžkXƒ$§Åc„y©ŠGW{q×{ÑïóîsGP{Òc¦—Þò.ºœ—ÿ\v¼uF%¹„ƒ¾<òê',ÿs»Ö~Âh¿Ÿ˜òÔל‘}$=‡ÇrfÙjÎ;SØòÕVBÆS\œGfH"òëMD4!+!}ìÞz¬›_A·6s=¹1¥à®¼¼ø9ý1ž1èñÜaÚŒÂEZƦÝý c¾e×É3ß¾„¡Ç&sÏ«»Éö‘óòÍd vŽ~2‰wu╹÷ãÂ)gÒ)’SW3y`OzöìIÏž71lþ $ÅŠM-ÃvR¡"i0êQmrŽwIMgïçSysW:vìHçcùò\&™õŠò­Dó Æ¬Ù°ÚóÞblévðÁO:ÿüñ£÷SÒ1„9ª'>ޚ䵿sÊáÛ|«4–®ö;Ã:ó¹\Î Hs÷é¬&+÷d]ÏÈÌŽ>)JjvÕàfÖ°ÒÏæ.(­4nh Ê ÔªUËç<3z4¦Ô]øÿ»¬Ôjî>ýάÆüï:ìµ{VòH˜";0lL;Þ}fçP× #¼ËpÚ¼ö¿ì¶ð÷îš y¶>Æ‚Ÿà:©!8ŠÀôS$9 ¡ÀAâÉtj„bÔ…ÐjÄ ˜3yKž})s:ñÛ c±ý\)÷²'{ ¸Í8þûû¸Ü¶2ޝ‡v'º{kBuà8³š5 M˜roG"MDuf䈼÷ៜ{¶Mîu¸rðÍqÞ*i›_ç±ÿZñ¿éô(l…ªEQ—¹¿Ì¤]ѾÛÞÒm—½Ãû ÷á™üN÷}²ŠOšap`ö ñ\¼â|ócÍV\gúŠmgl ‰ðlœÚö/憱DÀK“6ÉõÉviW}˜o•ÂRY–™¼Í¥íîÓsàZC¹¯¤Ýê“b¤iè òØÏ­æãv]—ß—­¹¥FV:5/}jŽ›]QT·éS“’’|:ûš+R›¾ŠìSú@5Ÿ!›§ƒZñV©óìϼ³p9ÛO¥`—e¬gÿâ‹w 6hŸãj¤Þ1‰OfÌeO½»èW;÷ýXH„&gã¬ù¯¦~Íî —~5sï"U–Iݽ˜¹¿ëè9¤úÓkùcO<Ù -a„š$Üì‡+°æ¹Áqp~ÛVŽ\ÈÀš|œµïLdæ‘.<=ª1&ÀKŒ~?Ÿ-ÙI’¬á¼°•¯¾<„¹Qs"ªföËŠo?ÏÿÄ”'$râ›<ÔÜ„ÓáÀ‘Wœ*þ͇qk௼úÞŸü›­‚æ åÄ66ìK.Ôç]Úíܾ>8¬8ü¢ˆ‰¶`@&qóW¬<ç¨4þy8Mv`·Ûq((öœeYËG÷vòýk_p C&}÷§Ì^©gÀ˜ö9.~KFß̦¹‹Ø™"ã¼°‰÷ßÝKøMý¨ïã£H*åqY|‚c†ô\AVKiy¶¸šÄ‚”!økFŸ¼ir6YïÑêÖ¹»ÿ÷þÓÌ|nݤ¡…4á–§ÞãÙŽÔý{ùbò³<ù¯E@Ž#xå¹¶ø›47û É ²¶eÜÐ*cô­gn98óãsŒYôéè©Þö.¦.Áí5s¶×UÈ›ïýÃ33î¥Õ+@1½áýY=©V#´víÚÅüùó‹Í§œ‡»îº‹údÀÚ¿+ÿÇúôlxý:¾^¤²Ý›lúìf&~üïΘÍ7<‚U5R­AnúU:7rUï–ž·kèýübÇñL‰L<°êÁT»®íkšóÅ»¢ùçùžØÙ?«+7p>÷ûHZ®€c毗Úà'…ÒkÖG<:qƒšNÃáÃ-ÏüéƒrÒaê§L}ö?Œh1› ]-‡¾ÌçSÛàã|“,‹vøðኳVœNºÖ^οzkÉ­°Ç[ejzw&X}uŽ]‰Ã™‘8TOâ­¸ïœõhjñ:UÉ_ÖÜl_¼N)¶ïð°PŸŸ>/–#ï¼ïÕKî¼OÅR— ÷ý‰¦»ò/wòéÿ1ôî<øóG Џ:ð~ûí7 DDD„O§ë‹/æÇ,¶M‡˜|¸j¼µêͤµÞ½H«ÞE;oYŸ–€ÿþEkW p8UöØóܰyÏE^c*˲°¼ߪß*Äm®iïYNRà.w JS=,þìj¯ÅͶú>muŸÉ´ ¸ºo=Î vyõ—»Ì¬lN:Eƒ |žä¶±×¼ó¿•ÊU^lYƒÀ¿Þ'«å á C³fÍ8pàÛ¶mËO4á‹¢WRƒ¯iZ~ŽMÓ0 DGG‹,øæó|«ñ^ï—ÄCjš±Ö<,Kè€é}šLqÙ^"Ì/ax˜kô¹ziÃüEŸŸ¶{£ž¢Õ« \wÝu4iÒÄ玫hƒ®iZ‰ÁN®¿ÉóŽ¥§§‹›,øæÓ|«ñþ,ð\áV݈µg |pv]š:«ù,‘TMâ´Õâ%¼dk¸ôuå}®åD­vìØÑçÝ‚Îê-ÈŽ„ÿ¡ŸÊdq»® Üú…ï Dff¦¸‚oWåÞçÀj¿d¼Ï æ)XM‡„ž‰±>}ÑÎg_j_·êÒOí~}Iu®õîú·½õ§¥gpâĉ*ALk‡  JÞƒ×T<ÎHæ÷Ïoè2.ˆ'\@@@ˆwi°ä:;²×Hr×ï=ìµh,û´Õ}2ÝRdÞíâsp»[¯x™›[õ"¼E£É=­w­÷}~ôèÑ*1u¨3²öº=JlOÂî Ø¶T<áB¼Kƒ¯/zí’†‡égmèÓìlf Ù^¬î¼ˆpÏùŠÖkÅ‹æ©xjVš!j9/ {öì©ÑçÖöã¼s7y‰K ø{‰x„x—„ÝF+§ó“²-úK9”öHŸ½XŠ&q"ÃÛ¸nŠÌV¼ÎS½ëœÞªªZPŠ[âžë\ë= KJN©îs{Lä°Æ S6Ï-†„ÏîO¹€€€ooXîŸR*‘öTîͬ‹/‡R¶’%늌ÃV‹ÙöV§–P§æMÿYbß¹ç:µ„:UUùçŸ|?D’Èl;¢tÂí¡øï\.žr«åm®i+üS)><¬¤’eî§I Í®åÓV÷±4 ª×qÝš‡(r­ìujÑ©A o_¶ºâ©SEaûöíôèÑç šÝf(Á?ÏBRÞ£Ì=ÿmËIÍ·rïý&ÿê 'f¡Ôâ=ÀIˆjðYòœH$[Ö•Ã\+!‡yžxz«+)¹;áw?ß·÷ ¸p1‘'Nã³×] Å;ÿ?”M¼s©§¿p㹃8k7-`9â»ï¾#&&†~ýú!Iƒ¡Êd&sç‰ÊÃÖ­[Ù½{·oÁ7Ÿç[¹©å:³Õ‹ÕM‰â}WVMŸ½ø²*q4ÍÛ¸îÒŠknQ= vÑwbï’¨EU/;ËÎ;©Y³&>{ý³ÚÞ‰ÿ¶RŠ·ª™÷¬â] RŸ>}|~Îx×ù•KNÇÊ•+Å |óy¾•[Ÿ÷¿L¼ßöÜ×m L5s£=Ägoȱô’úº5/ëÝä+ÏL+(ЦZ+Žû¡cÅåªæT%¥X Ex-E#ÀÝEƒ{«sW_ÞæÞêþ=wžãÇû,ñ5[‹[.I¸QÁxhRv†hËz½ƒÁP%=!!ÁƒsðàÁbuF£Q¸à[•à[¹°t[¤¥LÓ}.·ÚÂ|öÂI Ä&ë¼Fn_ eëÖ­>=å^v»[Ëmž+è’CÆtx›h˹1­Š–Ífcúôé(ŠÂŒ3HJJº*ÎKðíÚã[¹ˆ÷v“’2§y*Aš‰Nßœ,éHü“bAÑðR4/ë=Ôå[½î³°)ªæeZ®›¼è¾\-l7û+TWÜúζÙù믿|ö!p4ê„f ,³pçÓ!!ÞåݘV5hšÆÂ… ÉÊÊ"::³Ù̼yó ¹4óf¬|óu¾• K·šœ—dqƒž.ö >šìëPª›S‡ª¨‹¢hê´Üº¼âRç.«š§lk.ýÞî³±Q†Ìk9„ò”Dæä©ÓœÂ·Ë¾"²,³ÇèäR³ÜdóÍ<æNUÇþÄ@¯ÙÔJ+MjS×z—ï¥wo©V½¥iuï>߸q£ÇàŠ+ {lÏKNÖb:¼ ù2Íÿ#Ìëß–‘«Rp}ßLÿmmûÌá ãJ¶Å»™Þ«¯ì³WZcê¾ÑÑÈØÿû· vt4Ñ-næ©%GÉο`Yì™?ŽA]šMÓGÿ¢2R;wŽ´´4ZµjU¬ :ä»Bá8¼þ±ÄÆ棓N—Æ÷,Ÿ ‰%6¶7³Tà}—ãXñò§>5‡{¯3]1ñvÇ7-ó‹žJ·æµ‰ŽŽ&¦ÃLYv¬€oò9¾r šäÔG7êÄоㄭbùX|»ì€ã~-éòÜâãu<-ç|ïnôI¡8H¶RÒ¸nÕK½æ¡Þuì¶—:Õs]áßz®–rÜxábÍÌbãÆÜtÓM¾g+´ìIˆì‘J^—¥¬l çN ×m,|èÆÔ263}ä‹ì¿{1;~ꈴ}.÷Åœ¦«y¡µ? áW«##žΰ%xµ’Ž7::šaÆ•¸/[ÞµSøiÅ)îÿO#L€óÌ*¾¿P‹`ZþÿL‘Qõt€œz{ßW˜qs$_ã›í"Iaxñë·h[[Ï™Ó=é~‚›­eJ¬tÁÄÞõ‹¡v¨ž´Ã?ð¨'™Ô¼3ßB_A|¬ ¾]ö+æ?F™Ks™ˆRLÔV|/‚СêØ[*«»$‹ÛÍúҸ½NN¢¡jª+Ý“îÉwo}÷-c]à`Õ+àÏesÏJïÑÀ,R…ò§¼øVèÅ1ë {™sƒ_å?-\ÏÍÖ“¿cæõü4ï^”Ïžäõ¿Ó©êt¼lŸõ£”+È9n›’? –Û9}O¼w_(©¯[ñÒ×í©.'-iñ~ìÂ)K5ëK¬S=×yKZRÝž={hÒ¤ uêÔñ™ûãlÚd¯´òøi8y´ŽÀHìs_3¯wµÜ7{Œ?Ÿà®…¹oþiqd†Ü@D~\‰ˆ!dý•BvZY!7‘瓉ªRø!” (h¨ F=ªMF/ûvâf*]5½_¾ÆëŸÿÉÑ':IÅš¡£¿C-—ÆÔS îÊË‹ŸãÙgÆÓáÝ ÷åŽQ<¥  ûv2#µúÜIõO?âIÇò)µ£C.›{: 5ƒ •Ÿòâ[Á›ËQ>?œ…¡/òý¬Þ„âš„!(‚È "‡>Ç+W0úã]Á’ÿ§A 6¡††¦jUžo—ÅÒÓzõ³ªÕ— øk¾Õ¹+Á‚Í)yíçV¼Öi^ëÅݼۮýÐEçõÖ •¢ãË Õ¹ô¡»ïãöVç¹<9%•õë×ûÌ=Òü#ê\Z¶5‡‚þü™ =>¿fwÐK¿š¹‹w‘*ˤî^ÌÜßuôÒŒ°f·ÓU]Íâ‰(€ãÔ >ù;µöí¯ $Â?“³qÖüý©+¿(b¢-IÜü+Ïåµì—pä¹Áqp~ÛVŽ\ÈÀš|œµïLdæ‘.<=ª1y¡&;°Ûí8 {β,|ê¥3Õ"è÷ʧü{ç&E‘þñO÷¤Ý ÉY‚$• ˜N3Šãyê9âOÏpÊé!êϜń1b:<#É **H’°°lÞÐÝõûcf—ÙÝÉØ…÷ó<õtÏÔt˜êêþö[õÖ[ÓŸû7Gv²µhÝkÉúÓlõ-¸Š—.:ži[ÿƳœJ=\·Bf¸>Y%‹˜9ó#–­/£ªbËfßÉ o…øÓ¤Ýp·óúؤö¡uöXMæ‰Ú.·­÷1ÚÖÛ­ßÐù¦Èƒ™pªÉÄsr7Îo0<ËŠŸ·mÛxû¬8ûj›Îãç%›¥,ñt¦‹-bðàÁtïÞ½M\+³[_ìkW'ª^qólë×`ôê×roÒÞQ\óèß¹éú‹ý@*w G\ù×îãE×Fqí}áÚë&qä…ä fÏ};°¡ö­i}˜ø·ýyïºÑì~…›‘7¾Í3ÇŸËUc&ócŽ¢ cyýF²WWÝÃwãܙ̨Á¹“ú’îèÝø}AÖ¼u=}úGʱÑqĉ\÷ÊTŽíRûûKo=€Ã[ù|:»¿ÿö._MNVK½˜÷÷ߣù”k9ñÄ9ꨣڴÃZ­uœÝc8ûöhùº—5´åêÍTßBkgóÈ[¨äŽÞýŽºïÝøÿ=¯7ºdåS˜vÍ*8;à˜¾ÈMGtˆX®-S[£¾i^¯W-_¾<£Ÿñ(®ÏUqžž‰ŸªgUéÜRÖv†Š|þG 6x“Œë6›–gµÀ>£“ÕûŒ¤…œwÞymâÁ–{÷?ð¼ù\*ïˆÖË®þ7UÇŸ!\™3g&L C‡mú<£§hœ1co½õV£ßŒ5Š«¯¾MÓ(//çÝwßåØc•‹,õ­ÍÖ·6Íò^kÓ"Íåéˆwx½§Ùv,ïêÎ7=X‰æ‰Ž­­š—ð|´Û6^Ñæ-|úé§|ðÁÛßòîܳ±ÓZŠë¶uk3>îСC“þfÙ²e;Gëm;Œ5}úé§ã÷ûùþûïë¾ëÑ£—_~y=g¨¶¤%•z·£×=©oi’xoŽY ©=M;¶¡1Ÿ 6x©1´„Vw2/óø×Ì#²ÅÈ·¬”=Î3ÚšùŸ}öC† ¡K—.ÛõzY¨ó´IS¼õ-EwgæTh±¦5MãÌ3ÏdÆŒlÚ´ ŸÏÇ_ÿúW\.W½ÿÕÖÄ[êÔ·˜eÒ”“+ÖÓqR«?λÐj7HUHgѦäÑÔÌ$yf‚(luùusrG;‰m›¬Q^ƒ™ÅFok8ëXt´µX3‹EGv‹=ëXâ™Ç ÓbÖ¬YX–µ]¯™™[Ú8ïÉV¼U”·™LñúóÚ* ¸69N>ùd À©§žŠÇã©—ß-oAê[³[Þ%ºÞ@ÿUK|Ûçüº6êí˼õ^I¬îDÎ\Ûâ„'Êkè(/ÆxÃøæ ÐH°-qò‰ãx§2p̃õ6òé§ŸrÐAm¿$·`[³yü*ó;MÄ»ÙRmyþ÷Dx<Ž?þø:k.Zü~¿\\©oí¢¾5I¼Ku;õ¦$Þáïò¬í?v¸2¨³p}â¾nÕH `lñŒénÅËK&öÑÍÚ‰òâ9Åe¤%žÛ‡~È!Cèܹóv¹nVn~ìf󪡾µDž„ÍD0l·çÞðAZ»4 C,o©oí¢¾5I¼+4[”x'²¢çùÚ@ Èë¼øM-Ã~àä3ƒ5ÎOoö¯ØÃ¿¶½,¨8ß7~ñPi¾˜Ð™Î2L^yå.¾øâíÒeee‡Å;UáŽÊÓ«jä)Ø <˜eË–±hÑ¢º@mQô’=ð•R˜¦‰iš(¥°ÛímfH¤ õ­ÅÄ;Dm³y*J\ÿ7Û{XEÐÆ‚ á¾îÌ=ÌUz»•\TSÜÛZÉ„¼~¾JûAñûªÕ|þùçŒ3¦õ/^vvýfóT„»ïf¡_¿~ 8°ÍWúR*é fô6µÁŽÊËËå"K}kÓõ­IâmÕ³¼S%ü„Õ·³å=w­—@R«»ùÇ`'óêVÍq>VºûÍ,ïwÞa·Ýv£°°°U¯B£^\Ç4ê’fJ$¯æ ªªJ Aú¶i’xWi™oîÙŽžƒåóÿpc&G­X݉óbZìV¼(l$ˆÐF K8…<+^ô6XØéç™ Ï?ÿ<—]vY«6a)¯7¶åŠx—UÊ]/ÂÎ-ÞÛB£¶/>Zí%h¶†‡¹•¾‡y'·øæ±òb¿´„÷ù/¿þÆ—_~ÉкÑ”›Wï̬gCQ•¡ÅU¥iÛÅú. ؘ¿Þ¤¯;±ÐÅÏO ¢Vºlj-Uá·b9×Å‹mž(/ÙËŠÅk¯½ÆÐ¡CÉÏÏo•k¨UVfü⨼^¹ëAعÅ[7èiŠwD¯-­Áü…­ÄœßS×m%±ºÓõ@O-/f¾•‰÷zúyÉ<ß½XTU×0cÆ .»ì²Öo¥TÝÔë‘Òìr× ‚°s‹·#ʃ:UÑ®%´º¼Kü6¾Zçn’‡yÓóµ&åoÏc'Êÿþ‡¥|õÕWì¿ÿþ-!küq,ï*U¶[îzAvnñöŠ­z ÏÍyh´òŸý`¥—ÕŠæuÓuš;Å1gΜÉ!CÈËËkÑë¨W×Dªnú½-wæÍæo¼ñFý½E\PJÕ…plaAh;œx≭+Þy¦ÅjeKüÜŒó]©¦Ó[µž×QqMÓ­îŒ-b´–Ùo"K­eö› ¯²ªš3fp饗¶¬x—–{ùäÑÊËü•ñ¸ãŽ“§Œ íßòÎ7­ø39Åû.ò¹Dµnd®÷WøRð0O–§’x§«$Ûª$ÛÆ{3ÊZ¼mëçÇw~³’8ÇYi:ÎmK .bŸ… Ù{ï½[ìZj[K©ßlžzpsUP(w½ ;·x6ï†ÏÍyÅ­(Þ[ªm|±6»Iæ© ÃR±ó¬T&IÕû<Ù°3+Îq[Ïûüé§ŸfÈ!x[ȳ۶µŒÆÍæ©UDSÄ[„]¼;ZfêâÝ`}³ÖzcÄßùÍ—B_wfc¾U*Ö¸•¦µr^ V¸Õ4 ]e`}o-)å™gžá’K.i‘ë©»Ù<ùºÕ©£Üõ‚ ìÜâÝS™Q}¬é=K×ê¶&Î&žEU6>_çÆLju“d\7ñ£¢Y$ˆŠ–,º™JÝ,Ùä$ɚƓˆ½?/YW@²—¹sç²ÿþû3räÈæ·¼×nÊX¼Íž2é„ "Þ‡Š%[,×Z6p¶ü|ë!ƒ&öu§?Þ[ÅŒk®RšLe8KYÌ<+ÅÌæ© òàá‡æþûïÇínÞáYö5›¨ßl®Ro£W¹ëAh÷4Éöí¡Œp˜J‹ð²ázm2·Êlù`›ªì|ñ0oí¤”Öêû™G í7…¼-Å[yæ™gšßòþ}}Äòn˜ì1¾Óë­›=»É]/ÂÎmy÷ÖLôˆñÈÊŽµ\…ê, ·Örcb_ÿÙKȤEÆ;§<˜ÕBûMu[«…ö›bÞ|ÀÈî»ïÞ,×T«öc_»…ÆÍæÉ–€]Çì%â-ÂNnyg¡è¡Ìøw‚dšð‹Õr³zo¨´×õuÇOª yQùVtR‘ùc;+á>c·nŸ ËŠw¼ǭ͋گïxö«%+Ã<ÓRÜ{ï½øýþf¹®Žå«ÁÒâXÞ‰’ŽÑ«Ê!áQAØÉÅ`€ ¥%ÚuMè|l9ñžõS¸¯Û2­¸É4U‚|I±óÌè|+:©)Q^ôoT†‰$y$É«mæ÷_[‘oœåÙ6vÞú yöÙg›G¼¿ù™úMäö”Üè¿‹Üñ‚ ì4Ù ¬|T(-•̨õ¯ýNÎÎnþIÖ×WØùlMKŒëŽ5{W‚¼¤Î]V‚€)ñ¼ÂS“ZS·™ yÝŒ³™`Ÿ±óÞxã <ð@† Ò¤kë\ô3ÛœÕâT¬8ËР¾rÇ ‚ â 0H Õ÷8÷<±¾Èß2îæ/ýè#dÑ3‡¥æ-^/ßjîÙ½Hèá;Ÿºk¤âl{[âä“vØU˲¸ë®»xì±Çp82oqq.ú%bI§QÑ"Kc°ˆ· "Þ µEšÍ3ï †u†öæ‹q¾¶ÜÎg«³›Ã\%ÉK#ßJm[•² ¦—¯ K´]êù*ƒ—‹ßW­æÙgŸåœsÎÉèÚÚÖaÛTž±x‡I³¹ "Þôµd[Š¥¥þú<·ÚÅé9ÕÍö‡^\êÃHju·°‡y oï–òæNy¿V {µ§˜7sæLÆŽKÿþýÓ¾¶Ys¿#ÜÉ+Êvbô•-m7òÞ{ï±qãF4MC×u)”f¤Öÿ¦k×®Lœ8‘ÂB ¼ÓŠ·]ƒá¶óΔĺ¡ÕøIEV³‰÷ê2;Ÿ¦Ô×MóDZ³H…)ñ£´eÁ­á~U‚ýªÛªMü$‰ G‚ÈpñóLeqóÍ73}útl¶ôBäº>ùžúýÝ*ÅÊÁƒÀn“;¾óúë¯Ó·o_=ôPl6[ÚuDHŒa†Á×_Ík¯½Æyç'…²³Š7À(gyÕ™‰÷. 4ì4}¼÷ó?¤bu«$}ÝÉ&ãPqûÂcæ[É'‰ŸÈÑ$›ÄÉ·HqB•†ù¤éð—øEè—_cÆŒœuÖY)_Û`0ˆëËèþî4Å{Ô¹ÛÛ‰e8~üxzõê%…Ñ‚ðÔSOIAˆxÃýÞÉÄ:†xW*ù•Nðšt¿—:Rèën&ó:Ë;¹¸&š,eïs+s•Üà f¤O;V2䙑þîÄÛª$Ûª$y™ä«&䫸ùµ}ññ·ŸoÅÍSI¶U ·]°p¯¾újÌë[RRBÖ{ËH¯©|›ˆ›½»ÜLsxá¾Ã†2tÄ9¼]´­¯¾|Ιì9áq~E+÷Þ¹ùYí.7ÎùèµÇìÓ%ú,Èo³^`툫™vV=ý1E MÔÛ¿Ë…Ë¡×=rußÛ)ÿj&‹r&rÆo«>ø¥Ï[Ä»Ãýö[¾ýö[¾þøAŽï‘Ã^“¢«±Œ‡Îý_ žÂ;ßþÀw³¯¢ëì¿sÝ¥ô8l"]x…ù[#*Yµ”YŸjýyw¦¾6‡¹ïþ›ã‹wì :|=—½Ä["ªU¹˜—?upȤ])Ÿ;“ÿû##ñŽß”k²áåص{wúù¿}{ûôêÇQO¯ä»ë÷¡w¿Ãyè·¡ß³"Ô“½ûÔ¶âe³Ë¨~[F‘±íEãÛÌ]‡0ê°³¹ýƒµÔºÊš›¿á‹týþzÆ êN÷Þ{pøäü}¡ý?òÒ«›Øý´CØgâD:-~†ÖéÿYc=<ý-N<•!Y´ºxK³¹ˆw=NíT]¿é<&tžX‘Úè#_û"Í׉Æn› óâå׿ÅÍ7͸}mžiš ÷k߉ò£÷ÛðØ óRÊsÌècÇÚ.z߉òãå%KS§N¥¨¨ïc IoÎn½^ª>iŸjo,à€Ë΢àý»y}m¨A^!#Í®4ÝË€cÎeBîr¾\%e¡µ¼vÍÕ|2|wÿ¹/Öϯòféh®ºà@º8uœÝâü³»³äõï¨î~(Çõø‘W¾(Æ*—¼Ê—ŽC8~Pœ.&ÝËèKÏb¯|;öÜœyÙhª?œÍoÎÍžÏÁgO`—hØ{Ä?¶½Û!œÜÿW^ž[„‰¢ì›—ùÊ}$' *dï»ðí£’‰-ß´Ñõä×øeõÜ0rç¿û«¾ø'#_ÂWþÁ+>àâþ,9- _–V·]VnÔ”á7ÍÃ?‹¯¼ÉßiGyþœIÜòMxjb³²ˆŠÐÞüz(·ñ;+çß˾ßMá/·~S×ÒQµøyÞÜ:œÓFw$»ïÑ×u3f¯Áˆ²Ì]4œ>½{Ó»woz÷ÀÁÿ^Jñ4ÆšÙ<÷coN›ÔŸÖöŠñnÿ4{wÜIj¸keN$LiŒd%ølÁ§\üTî`pN(î1¾ßää³Õ ½ÁþÇö·qÁŸ\Œè¡£€Åk ù¬š¹Ëý)Ï*†Ò’Ì:–Y^[ÜoÂmi¡ý&È+)-ã†n`ú%Sq}¶šmÕ´¨jq*Ѷï•]£ú¤½[ìÆqô9‰+žÁuÎg츨 «œï_¸;žÿŒ_KBèšEe…ÎaÁˆõª*ùþ¡K¹kó)œÀX.ºlÏÞý!«‚{1ÄQ΢gߥ|Ä4FwÐAïË„ãzpßÌ×ù휿3(\;Øãæwyò°|jÿ‰Ýש@ùmÖL~tÇôv´úƒ_Ä[Ä»&ãóý|P”ÿÁOÀ#Q=øÑËÃû–Ä=ÆC‹|X b˜kXÜsœ3ökp] IDAT®ÿ—Ær0~P.ÏÎsð/— ¬¦Ìà•JèÑÆ!MUÌy¿å©$y‰çoŸ=VœóD±ÙU’¼øa^uMÃçõ’ësãqgáó¸ñx²ñyÜx=ÙäæøðyÝx=n¼^/^ŸÏÞ&7¯ÇƒÏçÃ{éÔ…ªEU­AåÑU²À¡C±:úZðé—þM·IwórßmVppù\ýàþòÌû<3ȇ=¸ŒÛ'œÏæÚþè9ÿâÒY]¸æ¥ ÙÝ~´ÛóºSС÷|p#cÔæA“è{ßkÌý5—Ïø8âé–šUÊÚ­ˆü"¸e-înä:’[øe ­þã¡kÜcëþéT†ßö ,ö2qŽ¿¶M•¡x‚bëv*¯ÿr [ß9#ß¿„ÄG§Éû—~Ä#l³ñU—=èç|‘Eküß!ð³jÑ:\ý‡Ò)ÖÓN³á°kX†‰ì…C˜kǯEw„D½°–~Å3–¬¹’}\®yA?–õ2/ÿ| 7 oá*èJ·nÄí½÷ÿÈ‹¯ndøUGÐ};y4Šx‹x7â/ݪø`cV|±ŽaqG¯Ï^Í%ƒ*’רúþncl«û˜Ýlœ±·r¿bÊl?ï, €R5ÔÎ-½œ¹Ÿ›ÿýäç­ïª’XŒXÀV*–(-duGå[MÛ¯Ï7Û‰Ïã“íÄëÎÂçÉ"×—7; Ÿ';ü7;‹\Ÿ',Äîì:Aö¸›êÖ±´ˆìwWF‰w´@'îp!Týyï–¿yzÏG<ŹÿŠÑí °v+ fu¥ow/v ¶Ì{‘÷þ2 üú,“oXÊø{_æØÛn½ì!§p´çþýÈxî¹ðzd”ü¾„¥UýØ÷lÆ0iÀ]½^ÀªXÊûŸU3xïÁtv–ñÓìÛù×nÆ^¼kØéÍ;œ³ŽÍá/÷<Í·Ã/b÷Ð<}è{ ÇÝH—Åæ÷žâ3}÷Ͻ“sµº¾ëWΜÈô™?pÕ´ð‹„ ¶‰·nÇé°Õ}®Zü·‹o^· Ÿ'¼ ‹r¹m(|hî_‚ª}°Ä³ºcYàá߆†v&0f@+<½Œ<ï"vc*ßE¾Êz.W™Ì?Ž9Š‚Ž9äõÉ^]\@5¼Â’Êuü<ùf× ÷Ð+™ùÄÉLž~M½ö¾JËAÞ.£8öïÿf?[GFŸ4„©ÿXDïÉG’°•ÕÑÃÇnᮉ£X¼ÅFŸC/çÿÛƒl€¸ç–H½[ó1òäÑhg½ÉÀ›ÆÑÕbãܙ̨Á¹ˆwBhs+K—Ân'ÀÖX¦ïÁÉ ~¯åsЭOrÑäË™0èF‚Ù}9⪧ø×~¾pm m櫇¯ä²ó6á\ÝF1鎗¸á€œˆ°zuݳ\wí¥œ¶ÛíTèì>éfž¿n$nso<½ˆÜã_áðñÔ´'_z÷_?ƒo¯¾òÍä½è79ê¼ú\ÁÇŸ\É@' ÊYøÌûÆÜÏèÂí' âm޾Ѽ^¯Z¾|y³ïxÖn&——–ÅÝpùäA[9¢·¿nŸ_¯wrêk"Ïôú¢VtK't¼¶œª@}ô8›ïîBUPÑáòÕÍrTYM j×^§\·o¶ _– O– _¶o– _¶ƒ\_¶o¶¯Û7ËÏíÄçvëÍ›íÄnÛqÞ ³ßYIþùįI+’¢ô¾c©ž´‡ÜÝ­€±ú)&ôç¼û$:4½Ι3‡ &СC)ÜdÆ ¼ýöÛ}ôÑRí¶\üˆ‰Ýj¸e©"¿-mÑ®]Þ4?—ƒ{pÙÂÃ4î™×S#VWíê耼fšLúa[éóñNÈŸw©æ¡Ÿ½l¬²¥mu×._Xê墑~\ä#?ËÂë0ÈqYøœ&>§…×aâqš¬ÚdÀ®9<û7ìk²¹¬·C±K'7»vÏ`xç~ºÎ%W½ âø±Ï£?E„;Z¤S·¾Íî>ªO.…Ù èŽdú×G¶ˆ¨$š¤Fh¾rË[Ä;..]qù J®]”›žpGÖ«QèÊeÆq[’-@uµ·Û͘Á9@N½Üêêj~¿\ñ6ˆištüûB´º‰iж•`¹í7—퇒®ˆvRŠšš)ˆÆï÷‹x·÷è–>À)»TÓ3Ûl<5¨giB'7¼t2¼ñèêƒùëœÌü!y¼¦ÒÒRŠ‹‹ñûýuÄü~?ÅÅÅ”––ÊÕn£ä=ô+Ž%e4žÒS±®ÇÌ3{PsÊnR˜;Á`P ¡… …B"Þby'Æ¡+.ZÁ•_å¥ÔL~Ú0¸otð@Eþñ.<ò9Ø”Ý:Ö5”Øþ„ÇW íçâR¼wÿLýæòhë;µæóŠÿÛe—>¼öÎàÁƒY¶l‹-B×ué—mfjûÝnvÙe)vL‹ ‹Æ°`Ü›ø­ÔW¸»{á‘cáèÁámþ».xVm¡®)½o¾ÁÏÙŒÛ)}b;UUUìrèì«*‰_ÅXo¼4æQ4çDñn÷x<ìöí7‰jÒ¹Äwc†Ba#¨²²R*];¤E‡ŠÕ3ïuø×Þeœþ~a£g¯üm$Ü}äfAI \ù<³ $úÙ½r³¼“Ë}ÇKøŽ@kV`_åg[ïÖ Y1Ö/Ënü“÷ôB'B ºÚZ:¨G€q=ü|´*«N¸wɃǃñ‘`Xo.…‹gÁú’†W$ÍúÖ͈n!ÎÚWnòvma=¹–ì76±­¹<ºÉœßÅnÿ!½Œé!*ÂNE«š+7ì[Ž…nÁ¥û—‡…»¨NÇ= ë·’tѽÃ׫œrõÚ)Î…eäÜ\»<ÙôžñÖ”ÓAùûH ‚ –wKÒ?ßàúý*?ÄÇŸú„¿{á[¸ü Ø\ÇÚŽa}‡,óŸËç˶Ð5Ï”«ØŽØ°a#Î]‹Ò¼;¦Òt•“÷ÀØ%G U±¼[š3w¯¤‹Çà2˜8þül.k`m[É­ï[mœþH~éël/TTT°Çé›Ñ·˜)ZÝz +<¼n *¤òâ¡R¨‚ ˆx·N›â÷õ¥ìq¼ý}ÑŽj+N2áçuÎ~4Ÿ©É•lã„B!úœ½ÇÏÁ8"ÝP°mq…›Ò;G¡òâ&‚ˆw«1¤cÓv«Œ/Ú)XÞµù_þäâÿžÊ OX"´ILÓ¤Ó举¬N Ò‰,ïú"^yÑ ‚# ¥`Añnmþ~`{tÅo*·RH!c^6ÿx. ‰ÜöPJQxíf²ß*#Æz ¼þçÐðB*þ>D VïíCW<8±·]¥Õ׳IÝ„™¹¹V,ð6gqç_½÷ åÄ÷"O½ï[yœ”<´'Ê.Ý$‚ ˆxo7úÜvdiúw+ýùÝL~0CúÀ·;¡Pˆ—•à~¡’¸}×)§ð6¥wîŽÑÇ-…+‚ˆ÷ö>†Õð·}ª÷{'h2o(âo|–Í_¦PQ-ÎLÛ‹òòrºœ^Nö›~â{§"âÛ~Wunj&v•ÂAh â pÃåŒêL,ÎɜڢÖ?ûÎűWòÇf™5§µY·ný5q}ah¨Wb¯ÿ}pŸʧ ÂAhKâí°)¦ÿe+} ŒøbªEI?ÿîàèÉøúG‰ÄÖZ8šìutöåé7‹Çîë6ú¸ÙúÄPéçAhkâ P赘~ÖV|N+ã>ï†â¾i‹./ä™7=r¥[ÏtƒÂýèEØk<õ>o+ÏÉÖ™»a:¤€AÚ¢x êj0ýìšJ_¸c}o‚Ò¸þ?¹L¾9Ÿê±Þš›ÊÊJò/±È½ÁD3 ´Ô†€5NÊa£äñ]1údI! ‚ ´eñøÓ®þk 6Òî$Mê³ÞËæ°3:²x™XqÍ…s±FßÃ|d¿™ŒÙŽû[›’Gûø“Ä-Ahâ pä?÷œY‚®HèX‚´r•‰íÀOz1e>“Œ1Mïý6:Lt`_•î°¯$Éf£äÞ^øÏ“‚AhOâ p¾5üûôR´fp#¨qÛ}9óçü´\¬ðtqüd£ËÑ9äÜ…[Ó)½µ5ÇçKA ‚ ´Gñ8}l5·þ¥¬±€gÌ¥Á4£‹—89ü¸Ü~·@@ú“á÷ûɹÍCÇÃsq,±GªŽÖDÁ¶Õî²[»R}º· B»o€3ÆUqÛ_ËÂ'š`ŽïL­ðûôqð!yÿ}qŒŠ‡ëÝ,zî…÷O3[Ûñ×uÊnëLÕ¹RØ‚ ;‚xœ>®Š{/LâĦ|§üNÁªßíœ{N'O*dÙRiJ¯Å¶ÔAΤBrÏ+@ÿ#žµ­ÅX×â uÃd·Qr_GªN÷I ‚ ìHâ pÂè»r+]%·¾U ß«úŸu`á<ÇÑ‘Ë/Èç—Ÿv^×—9pŸçðŽØæ¹êЬ¾kÉ…9a³º†rêl}¬šãe¾ B:h^¯W-_¾¼Ýœð¼¥.Ξ–OY¹žxÈX*ËHÒTì9­þt`€³.¨d¿1´¼[\)…öi¶G½Ø?wÅçKCÑ8ä]ªËmÉÊSl}ÒGp?‰€'‚lâ ðë;gü³5ëmIãœ'n¬äShpì©Õyb59y;Öœ£%%%äÌê /¸Ñ±§4QgÌBL(Øõ/’Ñ[±u†£ŸÄžAØiÄ`s‰ÎyS X¸Ä™Üú¶â댮êÇK”²œŠƒŽôsØ 5ì9:€Í®Úå…7 õ™—Ы٨²°µ”g×/U‚7"+¡Õܶ>ž…ÕA<üAv:ñ0L›Êaú«žŒšÏ5+þ´ñÌYæåYp„Ÿ1ÇÔ°Û~A쎶-ä¡Psž—ÀÛÙßÏB/Õý'[Šeî±N¿¹¼ê\²)6IFAv^ñ®åµÿfsííyTWj© ¸ÙxòI[†ÉëQ ? Àˆƒì1ÆO§^m#|[hµªÏ\Ô|â"ø… ­JK(Ô©ZÞµë©6›+EéP3QD[AÄ;Š•kì\<%Ÿï—9w»F–š[´3ñ†‚Ø¡‹ÉÀ½‚ ¤ßž!º át·¬enVkÔ,wPõƒªENü_;QmIÏ5]ÑŽþ¬%í§° 7)yÈÂè#7œ ‚ˆw CãÎG|<ü”+”XÀcY’Mq{‚Ïv:õ4èÒפ ‡AÇÞ&ÞŽ&Þ…;ßÂoáʵÐuÐí ‡',ô¡* eh( Be:ÁP‰Np«F¨È†à:;þ•6ŒµvlVêçÔÑŽ^+ܺEå%!*®4QíÔ7@¡­Š·}GúCv»â—–sÈ~®¾1åËíõÇsG–Ñ£”c­ÇúœnªE#|ÌâÕvÊVÛ±áj,î1Ö“åÇZ¯ý«µ¨&$+rî±>G¯kè‘5½îc”Þ 8Ò’»L¡ÐwÄ?µ×ð ÿµ™+/©ÀaS¢­ÅíXžªˆG‹uÃïc zŒõTP ÖUÑNGÌưQ4Ži½]rÊ©QqUÍT‹p ‚ ˆx§Ã¡¸â’ >~o34îT<]+œ„=žpk)v"ÑŽ'ÜéXÛ* áŽpÿa!6RFÅå5(‡4“ ‚ ˆx7¾»<ÿL1Ï?WÌÀF£èÛ© x&Mæ$ù>áNEÀ‰ci§#ÜÉÄ<žp‡v5(~~+[Ÿ*Åè#“¤ ‚ ˆx7# 0çÃ"îþO)½z™1çaþÿ\(CËX¸Û ¸]¡Àvfúºß ‚ "ÞmMƒ}ÆØgL€â"9¯ºùàE7·7jHÝ˼¹­ðt¬ìxÛã³ÞßÀuR5ΓªÑ:Ê8mA„6«W;RxÔ–bÅRŸÏÎæË·³Ù¼Æ–r(Õ¦LvÒÔíS='g/Ï15dSƒ}hH.¶ Bg‡‹mÞ¬\ê`ñ'.¾Ÿ›Åo_;QFê‚›®ëÍôÛè<»Ü{ñŒõãÀ1X[AÄ{'¢ºBãׯüºÐÉŠENÖ,qbTkÍ&ä:Ml‡[áÄ·wϨ Ù{±ù¤[¡=‹·ôy7·O1ì Ã"AJLŠVÚÙ°ÜÁúlZn§h¹òuv”QÛ¦:µ5”_ÍY= |»x†ð1p ‘Õ×@“«,‚°C!–w+`†4¶®¶Q²ÖFÙ:;¥«mÔl¶áߪ(Ñ ”è„Êtt 4Cê [ï.ÂnWØuÈʵÈηÈÊ·È.P¸;™xz™¸{¸{™¸{™h2ŒKA,o¡y°9ûtìoJTAhº ‚ ˆx ‚ ‚ â-‚ ‚ˆ· ‚ ˆx ‚ ‚ â-‚ ‚ˆ· ‚ ´w2ç=eÊ‚Á ”ž—ËÅ´iÓþF)…iš­r>6› MÓä‚°ó‰wnn.þóŸcæE?5MC©pÔ/]×ý&:_hÛD_§X×,Þuœ9sfÂý.Y²„wß}—‚‚‚U˲(..æè£fذarQAعÄÛétÒ­[7úÜ"­îB|V]oáp8þföìÙL›6 ǃa^c½f\ÙívŠŠŠ˜:uªˆ· ;Ÿx Bs …(((Àn·³aÆo…Ñ4ÂÂB|>¡P(é‹… Â%ÞÒg(¤JtwIC,ËBÓ4*++ 2ùžN}¬¬¬D×u,Ë’‹#Bû}¶6÷Y¤®‚ ˆx íi¥Ah~2j6ñRÅf³%ýR*ãþîtG,ÈèAvZñkJhκÒA1AÄ[,o¡™I¥®4Åò†°×úo+Vðõw‹ØoŸ½é·Ë.1_DìAØ!ž­"ÞB[°¼3MÕÕÕ|øÑG|øÉÇ¡E›6òæ[³Y¹jUÜmAvJË[šÍ…¶`y—•—³ü—_Yþëot,ÌgõšÕ”––QZQÉK—±KïÞby ‚ â-–·Ð–Äû¡G%+Û'ÛÅêÕ«ÙX´‰@ šŽÓéH+Œ« Â/Þ©x $o¥©õOWTý~?§ƒŸÓ4()-#4ðCìÒ»ƒvW¼¥åH„voImÅòN§Ÿ{Þü¯ØwŸQØìvÖ®[GEUþ`ˆ¯—q¥[×.Òç-‚ˆ·XÞB[ïššæ/˜GçΙ8áhŽ>êHrró¨®öãv»¹ô¢ ÙsÄt]ña‡Eú¼…¥9›Í«ªªøvÉwvîÊ^ûHHÙ騱 ÆÁ¦éhºFçN°Ûlq÷'Íæ‚ ˆx Bš+ÂZ àçÛ%ßc¸»S™;”'>ÙD°º½øuñqþ9gãt:ëö—èX©¼T‚ ˆx ;-‰êJ­€¦"Þ¿­XIÀž‡§Ó`VmªÂ_]Úô»92d(‡#%ë]šÍAØ!ž­"ÞBK’N³y¼TT´‰Õë7“ÓcwÖoõ㯪¢æ¯Ùµ³Ý†î†ËåJ«ß\¬nAÄò„f¨+ñ,bÃ0X°h=†Ɔ ³¦kã× êìdø{Ô wªˆå-ÂN+Þb¹ÍYWâ5›+¥øå×åøºf«ßN`ó/˜›–±[ï® è7]×1M3­—IoAD¼¡,ïXâmY¦i²qÓ&6|8µM¨òuôï?€N;QSSƒeY8ìv;6›­Åg0AñÄòN ÞJ),Ë¢k—®XëדírѱÏ0ìv†a i6› [dXXª¢,â-‚ˆ· ´xCx˜YŸÞ}èѽ¦ibF5_+Üv»½ž×ºˆ· "Þq‡5¡¥ëЦiu©v¬xÃ1Úµùòò)­ˆR ,4 Pã…X5Z‰•¹#™)ñ¿Óâü^ÓQ ÐtÈà™$â-´Iñn(â‚ ´™²Í2Ñ,¬P#qÖ‰´ŠZ¨m/)¿0´–èkqÄ6î*†Pk ö§E ¨ïuJ·ƒ1LH?丈·Ð¦Å[„6†e [A4£ݨF7õ­r¬ÈR¡^Ö µ²ê+²j É¼u,h-qÃCcñ®ÝH‹|§5°ªë[×–= Ë–²gcéN°µ’xËÄ$BsÕ•ZË: Ê˄Ь(¥0MS "…{4Ö-Í ¢ÕØ‚eØ¥ØB(¥0¬ps:Ê [çÊËBÓ"â­j…Ü ¯ös´"ªøzÚJÍ Iß´hk»ÎªŽj …†¦éá¦ñÈMÇ®ëhš†éðafåc*…æÐP6W눷 4‡ƒÊÊJŠ‹‹ÉÏÏ' µÌý¹ÙœN'ëÖ­# áp8äìÀ,Y²„wß}—‚‚évIdD[ÅÅÅ}ôÑ 6,µûÉ2ÐC5Ø娫·ðí²Ìú¶ˆ¼NÝ¥¬“”uɦ?8iTFíØPš¥;!ƒÇQFâm·Û©®®æÇÿ‹ÿ Œv8ŠþN¼yÔƒÚªåRûV™hzÍÚa] ©ª וD¢:bÄfÏžMVVV«üŸ@ Àž{î)uogöìÙL›6 ÇS7J!Ñ‹]&/ƒ;v»¢¢"¦Nš²x7äåo6sÓ­wHY§XÖ7Ýp}D¼›¸¿L6 …B¼õÖ[q± ?úAßT Jh}2-ûÎ;'Ì?à€2d555­ò?Ün7ùùùrAw`B¡Øív6lØ Ã“Ü×………ø|¾ŒZ¤‚†E~Ç.RÖi”µ7¯ aÑÔ¼ŒÄ{üøñr%„f{íÔ©“„ÐlXV¸Oµ²²’@ °Ã¿ 7•ÊÊJt]Ùz–´¬#ýHY§YÖJ5Y¼Å{GAÚ"Þ‚ BzÔzg`­ „ËM©ôƺ‹x ‚ MnT“ÅG^~,êO*&Âú|T9PUUî»Ý4#³Âc’•·¬, ãÈ#ÉÙo¿f;W-z¼ðv(§4·Ø&> F£l_0 ·72Š)ò}u¥âÎ}ár¹Ú^Y[µe˜ù¾D¼AñŽnþõ/ ÝîpÓ¦i‚i¢L³î³2MÌ™3)É=ºÉ¢™€nOñëw´å½=Å»¼¼Oãøa2kYB–Ÿ—¿Iyy9:thƒe ±¼A2%£ª n¼ŸÛ]_´k×£ÄÜfY¼ð[-‹Ü±c[W8·Á¢iuÁ@·ûÿ„'Z )4=|ŽºN=ø¶TÖZtë…XÞ‚ ™YÞFUÜp9Ocᶬú"ùÎfš<÷[œ1cvš—œºÐ¦ÊËÜî–·RÁ®}›ˆÌx¦ëÛ÷¼–µem{ùÉðüÄaM„Z¼“¥Pe%êŸÿ$ÇíÃ@î}÷ÅѱcX¬ j“¦‘{ aA7 ôêj ž|’²O>Iùx™§¼u=ÿ÷äR6,z€Ënù˜-¦Bù—r÷ “øÏ²@ÆûN¿p­˜Íæ-‘ ÃàõŸîã’¹Ãñûý1Ï]×ÍBÓ, O]·i-~n—u”ÃZ¦cÎE¼AØiÜðûQ×_On¤©\™&Þ¤óµ×ÒõÎ;±wìX'èh]nº‰ŽW^Iço¬ëת«)xôQÊ>ý´n¿•_Lfôr`Œ4ñ®eø3M;ÝŽºœ#WÝÀ9ÿ©æ´‹ÆP¨ö®|öÙÜÅ¥ÜyÜ$îù1˜V¥Y¨Q}ÞVÚ/Ké ÷›ËïÇÖ¹ˆœ\òòò˜¿Óu 0Q˜ …S´å]ï?ª~ÿ^þï´ÃÃ×dÜñ\póË|_Ž  ÿIDATù/Á<~Ò8.ú¨4ÒmRüå]œ6î¦~¸¡y,ï:}2vZ“fsAvXáNFч2Àç«nG§Nt¼òJÐuì;ÒíÞ{ùãâ‹16l Ë´ix"ýÛ¾£Ž¢fñbJŸ{.,àG…ˆ›g¿»øðÑý™&ÅŸÞÊy·qâ±ýp5Ã?,ü9 "ZÐ’ÍÅÛ†ŠiÍö:¦iòÖò°wÝÌž=cÑïÅ}P×Aa„…[?×m±êC5³®âÜÇ‚w݃üsÿž8¶,á­û¦qùÅÅÜ÷ØìæPÛ\ÉTˆ¢¹wqéÍ‹ùÏG¸rLÇæù¯–5«š4› ‚ Û†%K–a B¡º¦ñÐÚµl¹÷Þºæ`{§NtðAºÞqGpT~ø!e/¼°Í*7 ”inÛ·fÃápÔ%µ~67ßµ˜a×Lãä¾NTÍn=n7>v—œ~"Çýå.–lþŠ+ø¯®7"û©á‡Û甇–P eñÙ—püø1Œ3–ñÇ^Àc?ùQþeüçĹ÷ÇbÜ:…Ù[6ñúäc9꨸êý¢”Ê!í¦Û(ÍIµ¬Ó¶¸¾½Ë&Fô8Kp8âÇåÔ €nkÜ`•.ä±'f÷¿ßÂùcû’çtàé¶§Þð/¯œÅs6bÔ½Y?çV.¼y){O}ˆ+GwÀÖ ÿ­®¬›ø –· ;¬åÔJRª‘ƒZù[o¡ ƒNW_ š†½sgìQìT~ø!&OFùýõœÚ´8dz*—ðØuSrÔüû èµòPó~ÄãO^E/'P5ŸD7óÖ·¢ý?=Ã}Ÿv犗þÃþ:5E+Xk×#¿¥<Œºv~˜ŠcÚóLìLÉ*ÎÌ’Œjö¥yÃLÓäí_„.ëÞ}&°,²Ý:ÏúÅü-ì ¦kái²v ·[CÚ&àš…Íʪ^þÕŸó}h—핾^µîA²›ÿ~ú3•‡÷ 6}p/®`Ü-÷sᨼðuk®Ö Õ„öroAvvñVJÕYÍÑžå寿Žt¼æšz¿¯úä6\z)V P'úµ!BµXBhnæ“;nàÝüsxô¼=ðh*òÜV`ËåO§Œ§§ƒmßEìuâ=žZs ù׳â×?2¢'¹û3€pSyýí¬§*(éèv뻹ĻV¸Uçu ï6“ÊR€ÅÄW¡0±0ÂKÂ$ˆ¥‚˜*„¥‚XZ¥ ÐŒpSºYÿ¼ÌÊ-T;òÉs5üßÞ¬ßJ¨¶z °Ø¼h ¶~cüМúBß â]çeÞ„J³¹ ;©6åۼɣ<Ë5M#{ï½íױ뮲²¨Ü¼™òÍ›©Øº•ŠÒR*JK©v:ì?ÀÊ—oäÎ¥#¹úÆãéiÎt=¶úßÑ ©·V#•±ë™ÜxVW¾}ðbŽ;ôhκî)æo1m×h-Ñl¥ÞÍÕlnoÿò ¡Ž«Úm_  d0U#’LŒ¤ð÷Š E¥…€°p£Ån6×<…¸C[)õ[ òL*6W¡{sÉBN†\z#'ZÏsÅ ¯ó{£ß7±Ù¼ÞÄòA,ï¨jè:n¾ïA5ú½³{wÌžÍDpÅŠº %`èzÔñ,*¾y˜)ÏVqì]Wp`~ƒœJ¡Â¶zÔ÷:Ý$dX(¥&Õå”§¶ÝÇ ‰Wp×Ä+•þÌ;ÿ¾šÛÁÌ+(Â?¿KÏ®³3é÷N£¬“Yܳ}ˆšÂìÞu åƒÿ±ð‹4‰ûÍ2ªÍ­Ì2V!U‰¡ª1UCUE~ºMkt^Ξû³›ãÞ[XÌèC ë¬WUý3sT³ËépS.Oß0þvçÍ„.¿žÉ7Úy`êÑôt6“å­ÑdË[„ÎêNãi¶¶M Y…S¦à?¾î'[ß|“ß/¹¤®YÛÕ³'C?ùO¿~Ø"mÑÆŒMrÛ´9þퟜ¶«#"T—âDÕrva÷Ž[˜¿d üãf-ªÀŒd‡Ö}Å?nÆoÃGžÇQélÛŸ÷PUÃú¢*¬¶VÖ TVWaZ†åǰᤂør6ÕüÊʲ¯ø¾x6‹‹ßä—²X[õ5[Ë)ýß*Á¤ ]›º-¼lt¾9£8çŒþüpÏ <þéJJƒAª6|ÃKÓn⿞‰\xH¢ÔõÜ=¹à?Sûǃ\~ˬ6cáÕ5™ˆå-‚–5hËËCƒ˜UUT¬YƒÞ¡žáÃëòKÞ|“'Ÿ Á Z(DŸGMÃÑ­ÞaÃ0W¬¨³¼5—«îx>~™ù~xô\Žy´ÁAw›Âëÿ.Œ<·£ÎÑÖ#'Oâ›[/ä´Wò)è:œ½†åóGä7fÅO¼qËmLÝX…¥gÓuÄD®ºf(.õ˶ÿëèÆ!'íÉ'·O⛲ÙíòéÜ;¡SJÖ`ÚVw3öy+¥á:†—<Å2}» Ço•RXKi`Õfñ6aÖA×44=lÁÚt¶9°iÔ5K›1[ ô<þß<àΣO^Æ 7Õ€£€£Oâö{N`77¨`m_t¤™;oo.ùÏB“ofòí^™rp“-ï¦ 7€æõzÕòåËåNa‡  òÌ3ÏpÊ)§PYY™ð·–eQ^¯:øƒŠ.s/OÚ:àt:ÉÏϧk×®¸¢º2R¹.-}m¶hXž"Þ‚ i[ƒš¦Qx笻újúÌ›‡fšD»áúæ.]LŸÞH¸wÄœ˜–·F³YÞ ¼W¯^¨Õ'3ïEÍàx¼†©0`………I÷ár¹ÈÊÊ G·k“/JQV·&–· BFâ]+àù·ßΪk®aÀ¢Eè–UO®ê’¦±©°ê'žh÷ÂÝ4KS˸¬Óð?CÍÐ(téÒ¥•þ_ –u]“¹osA„¦>´u]'ÿöÛY:w.ZEEÌßXšFÞ˜1xsswÞ­µ5½EÒf³‘——þ°údý¤QÒã+pî0XWŽ™–œˆ· "à ,ð®1´´e‹®5Ë(üûÆŽVÍ]Ѹ¾îÌ-'âèíØº(4šòWD¼AvrÒ¶¢¢š~[ŽZ Üåran·{Ç(kMGɬb‚ B+KP½xì--à^¯w‡*½p¹5íÅG£ ‚ B;C,oAv<»PÓÐ4`0(…‘Ì‚Óu)ëvRÖ"Þ‚ ì°8*++)..&??ŸP(´Ó¿ÈÄÃét²nÝ:B¡‡#ý²¶éRÖ™”µMoòÄ1"Þ‚ ìpÐ#F0{öl²²²¤@ ”"°çž{f4C˜ŽbÔÀ^RÖi”õ>ƒwAÇñAhÈÀ!C¨©©‘ÂH‚Ûí&???õ lN,[šÃ‹•Ïø.åìÞc$UÊ^7—¦"SŽÕy´m›©«¤¥¤¤5†ˆiiü$:ÞžŠŠ”¦m‹>§iáyÛ#Ÿ½ºI'£Ë•‡åô l.Щˆ· ;v»N:IA´„is`9Ý`™ ÙÐíºÖeZaÁVVXÀ•I Õ‰ydíªžŠÛzs¸¶kü áWõZ(¢&© ¸ V»TDÍš‚tÁÈòbº|a·gyFÄ[AHK¼qz°t;Ê‘–h`I«ÚˆçQ"%Ö1DXK$–j;XÞZ|£_ÅòhAó:Ëê¢Ñ(»åp¡ì.”ž™ ‹x ‚ ©‹·n [”šŽæpiÄ·­kqæáhOQÓ´8*‰ Ga³£4è6”LL"‚ ´¼vé(°ð8¤H¶¤EAD¼AAñAAÄ[AD¼AAñAAÄ[AÚ=ö\q’6pà@u衇f4«Œ ‚ -O(bΜ9øÇ?§é>o†aHAAhƒÔÔÔ`‘hvºÝérqçÍ“µ?þ˜òòrJJJ¨®®–’A„6 Ú%%%lÙ²…?þÿ!ÏkèN´gž‚LÓâ²kîUžNOA„íÏ_|@ð°4lN°¹Ð^zòF,¥0MEÈaWLyXIq ‚ ÂöÇ?îY ›t'Ø`sñÿeÂêŸ[Ñ<IEND®B`‚agave-0.4.7/intltool-merge.in0000644000175000017500000011474611224420535013032 00000000000000#!@INTLTOOL_PERL@ -w # -*- Mode: perl; indent-tabs-mode: nil; c-basic-offset: 4 -*- # # The Intltool Message Merger # # Copyright (C) 2000, 2003 Free Software Foundation. # Copyright (C) 2000, 2001 Eazel, Inc # # Intltool is free software; you can redistribute it and/or # modify it under the terms of the GNU General Public License # version 2 published by the Free Software Foundation. # # Intltool 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., 675 Mass Ave, Cambridge, MA 02139, 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. # # Authors: Maciej Stachowiak # Kenneth Christiansen # Darin Adler # # Proper XML UTF-8'ification written by Cyrille Chepelov # ## Release information my $PROGRAM = "intltool-merge"; my $PACKAGE = "intltool"; my $VERSION = "0.37.1"; ## Loaded modules use strict; use Getopt::Long; use Text::Wrap; use File::Basename; my $must_end_tag = -1; my $last_depth = -1; my $translation_depth = -1; my @tag_stack = (); my @entered_tag = (); my @translation_strings = (); my $leading_space = ""; ## Scalars used by the option stuff my $HELP_ARG = 0; my $VERSION_ARG = 0; my $BA_STYLE_ARG = 0; my $XML_STYLE_ARG = 0; my $KEYS_STYLE_ARG = 0; my $DESKTOP_STYLE_ARG = 0; my $SCHEMAS_STYLE_ARG = 0; my $RFC822DEB_STYLE_ARG = 0; my $QUOTED_STYLE_ARG = 0; my $QUOTEDXML_STYLE_ARG = 0; my $QUIET_ARG = 0; my $PASS_THROUGH_ARG = 0; my $UTF8_ARG = 0; my $MULTIPLE_OUTPUT = 0; my $cache_file; ## Handle options GetOptions ( "help" => \$HELP_ARG, "version" => \$VERSION_ARG, "quiet|q" => \$QUIET_ARG, "oaf-style|o" => \$BA_STYLE_ARG, ## for compatibility "ba-style|b" => \$BA_STYLE_ARG, "xml-style|x" => \$XML_STYLE_ARG, "keys-style|k" => \$KEYS_STYLE_ARG, "desktop-style|d" => \$DESKTOP_STYLE_ARG, "schemas-style|s" => \$SCHEMAS_STYLE_ARG, "rfc822deb-style|r" => \$RFC822DEB_STYLE_ARG, "quoted-style" => \$QUOTED_STYLE_ARG, "quotedxml-style" => \$QUOTEDXML_STYLE_ARG, "pass-through|p" => \$PASS_THROUGH_ARG, "utf8|u" => \$UTF8_ARG, "multiple-output|m" => \$MULTIPLE_OUTPUT, "cache|c=s" => \$cache_file ) or &error; my $PO_DIR; my $FILE; my $OUTFILE; my %po_files_by_lang = (); my %translations = (); my $iconv = $ENV{"ICONV"} || "iconv"; my $devnull = ($^O eq 'MSWin32' ? 'NUL:' : '/dev/null'); sub isProgramInPath { my ($file) = @_; # If either a file exists, or when run it returns 0 exit status return 1 if ((-x $file) or (system("$file -l >$devnull") == 0)); return 0; } if (! isProgramInPath ("$iconv")) { print STDERR " *** iconv is not found on this system!\n". " *** Without it, intltool-merge can not convert encodings.\n"; exit; } # Use this instead of \w for XML files to handle more possible characters. my $w = "[-A-Za-z0-9._:]"; # XML quoted string contents my $q = "[^\\\"]*"; ## Check for options. if ($VERSION_ARG) { &print_version; } elsif ($HELP_ARG) { &print_help; } elsif ($BA_STYLE_ARG && @ARGV > 2) { &utf8_sanity_check; &preparation; &print_message; &ba_merge_translations; &finalize; } elsif ($XML_STYLE_ARG && @ARGV > 2) { &utf8_sanity_check; &preparation; &print_message; &xml_merge_output; &finalize; } elsif ($KEYS_STYLE_ARG && @ARGV > 2) { &utf8_sanity_check; &preparation; &print_message; &keys_merge_translations; &finalize; } elsif ($DESKTOP_STYLE_ARG && @ARGV > 2) { &utf8_sanity_check; &preparation; &print_message; &desktop_merge_translations; &finalize; } elsif ($SCHEMAS_STYLE_ARG && @ARGV > 2) { &utf8_sanity_check; &preparation; &print_message; &schemas_merge_translations; &finalize; } elsif ($RFC822DEB_STYLE_ARG && @ARGV > 2) { &preparation; &print_message; &rfc822deb_merge_translations; &finalize; } elsif (($QUOTED_STYLE_ARG || $QUOTEDXML_STYLE_ARG) && @ARGV > 2) { &utf8_sanity_check; &preparation; &print_message; "ed_merge_translations($QUOTEDXML_STYLE_ARG); &finalize; } else { &print_help; } exit; ## Sub for printing release information sub print_version { print <<_EOF_; ${PROGRAM} (${PACKAGE}) ${VERSION} Written by Maciej Stachowiak, Darin Adler and Kenneth Christiansen. Copyright (C) 2000-2003 Free Software Foundation, Inc. Copyright (C) 2000-2001 Eazel, 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. _EOF_ exit; } ## Sub for printing usage information sub print_help { print <<_EOF_; Usage: ${PROGRAM} [OPTION]... PO_DIRECTORY FILENAME OUTPUT_FILE Generates an output file that includes some localized attributes from an untranslated source file. Mandatory options: (exactly one must be specified) -b, --ba-style includes translations in the bonobo-activation style -d, --desktop-style includes translations in the desktop style -k, --keys-style includes translations in the keys style -s, --schemas-style includes translations in the schemas style -r, --rfc822deb-style includes translations in the RFC822 style --quoted-style includes translations in the quoted string style --quotedxml-style includes translations in the quoted xml string style -x, --xml-style includes translations in the standard xml style Other options: -u, --utf8 convert all strings to UTF-8 before merging (default for everything except RFC822 style) -p, --pass-through deprecated, does nothing and issues a warning -m, --multiple-output output one localized file per locale, instead of a single file containing all localized elements -c, --cache=FILE specify cache file name (usually \$top_builddir/po/.intltool-merge-cache) -q, --quiet suppress most messages --help display this help and exit --version output version information and exit Report bugs to http://bugzilla.gnome.org/ (product name "$PACKAGE") or send email to . _EOF_ exit; } ## Sub for printing error messages sub print_error { print STDERR "Try `${PROGRAM} --help' for more information.\n"; exit; } sub print_message { print "Merging translations into $OUTFILE.\n" unless $QUIET_ARG; } sub preparation { $PO_DIR = $ARGV[0]; $FILE = $ARGV[1]; $OUTFILE = $ARGV[2]; &gather_po_files; &get_translation_database; } # General-purpose code for looking up translations in .po files sub po_file2lang { my ($tmp) = @_; $tmp =~ s/^.*\/(.*)\.po$/$1/; return $tmp; } sub gather_po_files { if (my $linguas = $ENV{"LINGUAS"}) { for my $lang (split / /, $linguas) { my $po_file = $PO_DIR . "/" . $lang . ".po"; if (-e $po_file) { $po_files_by_lang{$lang} = $po_file; } } } else { if (open LINGUAS_FILE, "$PO_DIR/LINGUAS") { while () { next if /^#/; for my $lang (split) { chomp ($lang); my $po_file = $PO_DIR . "/" . $lang . ".po"; if (-e $po_file) { $po_files_by_lang{$lang} = $po_file; } } } close LINGUAS_FILE; } else { for my $po_file (glob "$PO_DIR/*.po") { $po_files_by_lang{po_file2lang($po_file)} = $po_file; } } } } sub get_local_charset { my ($encoding) = @_; my $alias_file = $ENV{"G_CHARSET_ALIAS"} || "@INTLTOOL_LIBDIR@/charset.alias"; # seek character encoding aliases in charset.alias (glib) if (open CHARSET_ALIAS, $alias_file) { while () { next if /^\#/; return $1 if (/^\s*([-._a-zA-Z0-9]+)\s+$encoding\b/i) } close CHARSET_ALIAS; } # if not found, return input string return $encoding; } sub get_po_encoding { my ($in_po_file) = @_; my $encoding = ""; open IN_PO_FILE, $in_po_file or die; while () { ## example: "Content-Type: text/plain; charset=ISO-8859-1\n" if (/Content-Type\:.*charset=([-a-zA-Z0-9]+)\\n/) { $encoding = $1; last; } } close IN_PO_FILE; if (!$encoding) { print STDERR "Warning: no encoding found in $in_po_file. Assuming ISO-8859-1\n" unless $QUIET_ARG; $encoding = "ISO-8859-1"; } system ("$iconv -f $encoding -t UTF-8 <$devnull 2>$devnull"); if ($?) { $encoding = get_local_charset($encoding); } return $encoding } sub utf8_sanity_check { print STDERR "Warning: option --pass-through has been removed.\n" if $PASS_THROUGH_ARG; $UTF8_ARG = 1; } sub get_translation_database { if ($cache_file) { &get_cached_translation_database; } else { &create_translation_database; } } sub get_newest_po_age { my $newest_age; foreach my $file (values %po_files_by_lang) { my $file_age = -M $file; $newest_age = $file_age if !$newest_age || $file_age < $newest_age; } $newest_age = 0 if !$newest_age; return $newest_age; } sub create_cache { print "Generating and caching the translation database\n" unless $QUIET_ARG; &create_translation_database; open CACHE, ">$cache_file" || die; print CACHE join "\x01", %translations; close CACHE; } sub load_cache { print "Found cached translation database\n" unless $QUIET_ARG; my $contents; open CACHE, "<$cache_file" || die; { local $/; $contents = ; } close CACHE; %translations = split "\x01", $contents; } sub get_cached_translation_database { my $cache_file_age = -M $cache_file; if (defined $cache_file_age) { if ($cache_file_age <= &get_newest_po_age) { &load_cache; return; } print "Found too-old cached translation database\n" unless $QUIET_ARG; } &create_cache; } sub create_translation_database { for my $lang (keys %po_files_by_lang) { my $po_file = $po_files_by_lang{$lang}; if ($UTF8_ARG) { my $encoding = get_po_encoding ($po_file); if (lc $encoding eq "utf-8") { open PO_FILE, "<$po_file"; } else { print "NOTICE: $po_file is not in UTF-8 but $encoding, converting...\n" unless $QUIET_ARG;; open PO_FILE, "$iconv -f $encoding -t UTF-8 $po_file|"; } } else { open PO_FILE, "<$po_file"; } my $nextfuzzy = 0; my $inmsgid = 0; my $inmsgstr = 0; my $msgid = ""; my $msgstr = ""; while () { $nextfuzzy = 1 if /^#, fuzzy/; if (/^msgid "((\\.|[^\\]+)*)"/ ) { $translations{$lang, $msgid} = $msgstr if $inmsgstr && $msgid && $msgstr; $msgid = ""; $msgstr = ""; if ($nextfuzzy) { $inmsgid = 0; } else { $msgid = unescape_po_string($1); $inmsgid = 1; } $inmsgstr = 0; $nextfuzzy = 0; } if (/^msgstr "((\\.|[^\\]+)*)"/) { $msgstr = unescape_po_string($1); $inmsgstr = 1; $inmsgid = 0; } if (/^"((\\.|[^\\]+)*)"/) { $msgid .= unescape_po_string($1) if $inmsgid; $msgstr .= unescape_po_string($1) if $inmsgstr; } } $translations{$lang, $msgid} = $msgstr if $inmsgstr && $msgid && $msgstr; } } sub finalize { } sub unescape_one_sequence { my ($sequence) = @_; return "\\" if $sequence eq "\\\\"; return "\"" if $sequence eq "\\\""; return "\n" if $sequence eq "\\n"; return "\r" if $sequence eq "\\r"; return "\t" if $sequence eq "\\t"; return "\b" if $sequence eq "\\b"; return "\f" if $sequence eq "\\f"; return "\a" if $sequence eq "\\a"; return chr(11) if $sequence eq "\\v"; # vertical tab, see ascii(7) return chr(hex($1)) if ($sequence =~ /\\x([0-9a-fA-F]{2})/); return chr(oct($1)) if ($sequence =~ /\\([0-7]{3})/); # FIXME: Is \0 supported as well? Kenneth and Rodney don't want it, see bug #48489 return $sequence; } sub unescape_po_string { my ($string) = @_; $string =~ s/(\\x[0-9a-fA-F]{2}|\\[0-7]{3}|\\.)/unescape_one_sequence($1)/eg; return $string; } sub entity_decode { local ($_) = @_; s/'/'/g; # ' s/"/"/g; # " s/<//g; s/&/&/g; return $_; } # entity_encode: (string) # # Encode the given string to XML format (encode '<' etc). sub entity_encode { my ($pre_encoded) = @_; my @list_of_chars = unpack ('C*', $pre_encoded); # with UTF-8 we only encode minimalistic return join ('', map (&entity_encode_int_minimalist, @list_of_chars)); } sub entity_encode_int_minimalist { return """ if $_ == 34; return "&" if $_ == 38; return "'" if $_ == 39; return "<" if $_ == 60; return ">" if $_ == 62; return chr $_; } sub entity_encoded_translation { my ($lang, $string) = @_; my $translation = $translations{$lang, $string}; return $string if !$translation; return entity_encode ($translation); } ## XML (bonobo-activation specific) merge code sub ba_merge_translations { my $source; { local $/; # slurp mode open INPUT, "<$FILE" or die "can't open $FILE: $!"; $source = ; close INPUT; } open OUTPUT, ">$OUTFILE" or die "can't open $OUTFILE: $!"; # Binmode so that selftest works ok if using a native Win32 Perl... binmode (OUTPUT) if $^O eq 'MSWin32'; while ($source =~ s|^(.*?)([ \t]*<\s*$w+\s+($w+\s*=\s*"$q"\s*)+/?>)([ \t]*\n)?||s) { print OUTPUT $1; my $node = $2 . "\n"; my @strings = (); $_ = $node; while (s/(\s)_($w+\s*=\s*"($q)")/$1$2/s) { push @strings, entity_decode($3); } print OUTPUT; my %langs; for my $string (@strings) { for my $lang (keys %po_files_by_lang) { $langs{$lang} = 1 if $translations{$lang, $string}; } } for my $lang (sort keys %langs) { $_ = $node; s/(\sname\s*=\s*)"($q)"/$1"$2-$lang"/s; s/(\s)_($w+\s*=\s*")($q)"/$1 . $2 . entity_encoded_translation($lang, $3) . '"'/seg; print OUTPUT; } } print OUTPUT $source; close OUTPUT; } ## XML (non-bonobo-activation) merge code # Process tag attributes # Only parameter is a HASH containing attributes -> values mapping sub getAttributeString { my $sub = shift; my $do_translate = shift || 0; my $language = shift || ""; my $result = ""; my $translate = shift; foreach my $e (reverse(sort(keys %{ $sub }))) { my $key = $e; my $string = $sub->{$e}; my $quote = '"'; $string =~ s/^[\s]+//; $string =~ s/[\s]+$//; if ($string =~ /^'.*'$/) { $quote = "'"; } $string =~ s/^['"]//g; $string =~ s/['"]$//g; if ($do_translate && $key =~ /^_/) { $key =~ s|^_||g; if ($language) { # Handle translation my $decode_string = entity_decode($string); my $translation = $translations{$language, $decode_string}; if ($translation) { $translation = entity_encode($translation); $string = $translation; } $$translate = 2; } else { $$translate = 2 if ($translate && (!$$translate)); # watch not to "overwrite" $translate } } $result .= " $key=$quote$string$quote"; } return $result; } # Returns a translatable string from XML node, it works on contents of every node in XML::Parser tree sub getXMLstring { my $ref = shift; my $spacepreserve = shift || 0; my @list = @{ $ref }; my $result = ""; my $count = scalar(@list); my $attrs = $list[0]; my $index = 1; $spacepreserve = 1 if ((exists $attrs->{"xml:space"}) && ($attrs->{"xml:space"} =~ /^["']?preserve["']?$/)); $spacepreserve = 0 if ((exists $attrs->{"xml:space"}) && ($attrs->{"xml:space"} =~ /^["']?default["']?$/)); while ($index < $count) { my $type = $list[$index]; my $content = $list[$index+1]; if (! $type ) { # We've got CDATA if ($content) { # lets strip the whitespace here, and *ONLY* here $content =~ s/\s+/ /gs if (!$spacepreserve); $result .= $content; } } elsif ( "$type" ne "1" ) { # We've got another element $result .= "<$type"; $result .= getAttributeString(@{$content}[0], 0); # no nested translatable elements if ($content) { my $subresult = getXMLstring($content, $spacepreserve); if ($subresult) { $result .= ">".$subresult . ""; } else { $result .= "/>"; } } else { $result .= "/>"; } } $index += 2; } return $result; } # Translate list of nodes if necessary sub translate_subnodes { my $fh = shift; my $content = shift; my $language = shift || ""; my $singlelang = shift || 0; my $spacepreserve = shift || 0; my @nodes = @{ $content }; my $count = scalar(@nodes); my $index = 0; while ($index < $count) { my $type = $nodes[$index]; my $rest = $nodes[$index+1]; if ($singlelang) { my $oldMO = $MULTIPLE_OUTPUT; $MULTIPLE_OUTPUT = 1; traverse($fh, $type, $rest, $language, $spacepreserve); $MULTIPLE_OUTPUT = $oldMO; } else { traverse($fh, $type, $rest, $language, $spacepreserve); } $index += 2; } } sub isWellFormedXmlFragment { my $ret = eval 'require XML::Parser'; if(!$ret) { die "You must have XML::Parser installed to run $0\n\n"; } my $fragment = shift; return 0 if (!$fragment); $fragment = "$fragment"; my $xp = new XML::Parser(Style => 'Tree'); my $tree = 0; eval { $tree = $xp->parse($fragment); }; return $tree; } sub traverse { my $fh = shift; my $nodename = shift; my $content = shift; my $language = shift || ""; my $spacepreserve = shift || 0; if (!$nodename) { if ($content =~ /^[\s]*$/) { $leading_space .= $content; } print $fh $content; } else { # element my @all = @{ $content }; my $attrs = shift @all; my $translate = 0; my $outattr = getAttributeString($attrs, 1, $language, \$translate); if ($nodename =~ /^_/) { $translate = 1; $nodename =~ s/^_//; } my $lookup = ''; $spacepreserve = 0 if ((exists $attrs->{"xml:space"}) && ($attrs->{"xml:space"} =~ /^["']?default["']?$/)); $spacepreserve = 1 if ((exists $attrs->{"xml:space"}) && ($attrs->{"xml:space"} =~ /^["']?preserve["']?$/)); print $fh "<$nodename", $outattr; if ($translate) { $lookup = getXMLstring($content, $spacepreserve); if (!$spacepreserve) { $lookup =~ s/^\s+//s; $lookup =~ s/\s+$//s; } if ($lookup || $translate == 2) { my $translation = $translations{$language, $lookup} if isWellFormedXmlFragment($translations{$language, $lookup}); if ($MULTIPLE_OUTPUT && ($translation || $translate == 2)) { $translation = $lookup if (!$translation); print $fh " xml:lang=\"", $language, "\"" if $language; print $fh ">"; if ($translate == 2) { translate_subnodes($fh, \@all, $language, 1, $spacepreserve); } else { print $fh $translation; } print $fh ""; return; # this means there will be no same translation with xml:lang="$language"... # if we want them both, just remove this "return" } else { print $fh ">"; if ($translate == 2) { translate_subnodes($fh, \@all, $language, 1, $spacepreserve); } else { print $fh $lookup; } print $fh ""; } } else { print $fh "/>"; } for my $lang (sort keys %po_files_by_lang) { if ($MULTIPLE_OUTPUT && $lang ne "$language") { next; } if ($lang) { # Handle translation # my $translate = 0; my $localattrs = getAttributeString($attrs, 1, $lang, \$translate); my $translation = $translations{$lang, $lookup} if isWellFormedXmlFragment($translations{$lang, $lookup}); if ($translate && !$translation) { $translation = $lookup; } if ($translation || $translate) { print $fh "\n"; $leading_space =~ s/.*\n//g; print $fh $leading_space; print $fh "<", $nodename, " xml:lang=\"", $lang, "\"", $localattrs, ">"; if ($translate == 2) { translate_subnodes($fh, \@all, $lang, 1, $spacepreserve); } else { print $fh $translation; } print $fh ""; } } } } else { my $count = scalar(@all); if ($count > 0) { print $fh ">"; my $index = 0; while ($index < $count) { my $type = $all[$index]; my $rest = $all[$index+1]; traverse($fh, $type, $rest, $language, $spacepreserve); $index += 2; } print $fh ""; } else { print $fh "/>"; } } } } sub intltool_tree_comment { my $expat = shift; my $data = shift; my $clist = $expat->{Curlist}; my $pos = $#$clist; push @$clist, 1 => $data; } sub intltool_tree_cdatastart { my $expat = shift; my $clist = $expat->{Curlist}; my $pos = $#$clist; push @$clist, 0 => $expat->original_string(); } sub intltool_tree_cdataend { my $expat = shift; my $clist = $expat->{Curlist}; my $pos = $#$clist; $clist->[$pos] .= $expat->original_string(); } sub intltool_tree_char { my $expat = shift; my $text = shift; my $clist = $expat->{Curlist}; my $pos = $#$clist; # Use original_string so that we retain escaped entities # in CDATA sections. # if ($pos > 0 and $clist->[$pos - 1] eq '0') { $clist->[$pos] .= $expat->original_string(); } else { push @$clist, 0 => $expat->original_string(); } } sub intltool_tree_start { my $expat = shift; my $tag = shift; my @origlist = (); # Use original_string so that we retain escaped entities # in attribute values. We must convert the string to an # @origlist array to conform to the structure of the Tree # Style. # my @original_array = split /\x/, $expat->original_string(); my $source = $expat->original_string(); # Remove leading tag. # $source =~ s|^\s*<\s*(\S+)||s; # Grab attribute key/value pairs and push onto @origlist array. # while ($source) { if ($source =~ /^\s*([\w:-]+)\s*[=]\s*["]/) { $source =~ s|^\s*([\w:-]+)\s*[=]\s*["]([^"]*)["]||s; push @origlist, $1; push @origlist, '"' . $2 . '"'; } elsif ($source =~ /^\s*([\w:-]+)\s*[=]\s*[']/) { $source =~ s|^\s*([\w:-]+)\s*[=]\s*[']([^']*)[']||s; push @origlist, $1; push @origlist, "'" . $2 . "'"; } else { last; } } my $ol = [ { @origlist } ]; push @{ $expat->{Lists} }, $expat->{Curlist}; push @{ $expat->{Curlist} }, $tag => $ol; $expat->{Curlist} = $ol; } sub readXml { my $filename = shift || return; if(!-f $filename) { die "ERROR Cannot find filename: $filename\n"; } my $ret = eval 'require XML::Parser'; if(!$ret) { die "You must have XML::Parser installed to run $0\n\n"; } my $xp = new XML::Parser(Style => 'Tree'); $xp->setHandlers(Char => \&intltool_tree_char); $xp->setHandlers(Start => \&intltool_tree_start); $xp->setHandlers(CdataStart => \&intltool_tree_cdatastart); $xp->setHandlers(CdataEnd => \&intltool_tree_cdataend); my $tree = $xp->parsefile($filename); # Hello thereHowdydo # would be: # [foo, [{}, head, [{id => "a"}, 0, "Hello ", em, [{}, 0, "there"]], bar, [{}, # 0, "Howdy", ref, [{}]], 0, "do" ] ] return $tree; } sub print_header { my $infile = shift; my $fh = shift; my $source; if(!-f $infile) { die "ERROR Cannot find filename: $infile\n"; } print $fh qq{\n}; { local $/; open DOCINPUT, "<${FILE}" or die; $source = ; close DOCINPUT; } if ($source =~ /()/s) { print $fh "$1\n"; } elsif ($source =~ /(]*>)/s) { print $fh "$1\n"; } } sub parseTree { my $fh = shift; my $ref = shift; my $language = shift || ""; my $name = shift @{ $ref }; my $cont = shift @{ $ref }; while (!$name || "$name" eq "1") { $name = shift @{ $ref }; $cont = shift @{ $ref }; } my $spacepreserve = 0; my $attrs = @{$cont}[0]; $spacepreserve = 1 if ((exists $attrs->{"xml:space"}) && ($attrs->{"xml:space"} =~ /^["']?preserve["']?$/)); traverse($fh, $name, $cont, $language, $spacepreserve); } sub xml_merge_output { my $source; if ($MULTIPLE_OUTPUT) { for my $lang (sort keys %po_files_by_lang) { if ( ! -d $lang ) { mkdir $lang or -d $lang or die "Cannot create subdirectory $lang: $!\n"; } open OUTPUT, ">$lang/$OUTFILE" or die "Cannot open $lang/$OUTFILE: $!\n"; binmode (OUTPUT) if $^O eq 'MSWin32'; my $tree = readXml($FILE); print_header($FILE, \*OUTPUT); parseTree(\*OUTPUT, $tree, $lang); close OUTPUT; print "CREATED $lang/$OUTFILE\n" unless $QUIET_ARG; } if ( ! -d "C" ) { mkdir "C" or -d "C" or die "Cannot create subdirectory C: $!\n"; } open OUTPUT, ">C/$OUTFILE" or die "Cannot open C/$OUTFILE: $!\n"; binmode (OUTPUT) if $^O eq 'MSWin32'; my $tree = readXml($FILE); print_header($FILE, \*OUTPUT); parseTree(\*OUTPUT, $tree); close OUTPUT; print "CREATED C/$OUTFILE\n" unless $QUIET_ARG; } else { open OUTPUT, ">$OUTFILE" or die "Cannot open $OUTFILE: $!\n"; binmode (OUTPUT) if $^O eq 'MSWin32'; my $tree = readXml($FILE); print_header($FILE, \*OUTPUT); parseTree(\*OUTPUT, $tree); close OUTPUT; print "CREATED $OUTFILE\n" unless $QUIET_ARG; } } sub keys_merge_translation { my ($lang) = @_; if ( ! -d $lang && $MULTIPLE_OUTPUT) { mkdir $lang or -d $lang or die "Cannot create subdirectory $lang: $!\n"; } open INPUT, "<${FILE}" or die "Cannot open ${FILE}: $!\n"; open OUTPUT, ">$lang/$OUTFILE" or die "Cannot open $lang/$OUTFILE: $!\n"; binmode (OUTPUT) if $^O eq 'MSWin32'; while () { if (s/^(\s*)_(\w+=(.*))/$1$2/) { my $string = $3; if (!$MULTIPLE_OUTPUT) { print OUTPUT; my $non_translated_line = $_; for my $lang (sort keys %po_files_by_lang) { my $translation = $translations{$lang, $string}; next if !$translation; $_ = $non_translated_line; s/(\w+)=.*/[$lang]$1=$translation/; print OUTPUT; } } else { my $non_translated_line = $_; my $translation = $translations{$lang, $string}; $translation = $string if !$translation; $_ = $non_translated_line; s/(\w+)=.*/$1=$translation/; print OUTPUT; } } else { print OUTPUT; } } close OUTPUT; close INPUT; print "CREATED $lang/$OUTFILE\n" unless $QUIET_ARG; } sub keys_merge_translations { if ($MULTIPLE_OUTPUT) { for my $lang (sort keys %po_files_by_lang) { keys_merge_translation ($lang); } keys_merge_translation ("C"); } else { keys_merge_translation ("."); } } sub desktop_merge_translations { open INPUT, "<${FILE}" or die; open OUTPUT, ">${OUTFILE}" or die; binmode (OUTPUT) if $^O eq 'MSWin32'; while () { if (s/^(\s*)_(\w+=(.*))/$1$2/) { my $string = $3; print OUTPUT; my $non_translated_line = $_; for my $lang (sort keys %po_files_by_lang) { my $translation = $translations{$lang, $string}; next if !$translation; $_ = $non_translated_line; s/(\w+)=.*/${1}[$lang]=$translation/; print OUTPUT; } } else { print OUTPUT; } } close OUTPUT; close INPUT; } sub schemas_merge_translations { my $source; { local $/; # slurp mode open INPUT, "<$FILE" or die "can't open $FILE: $!"; $source = ; close INPUT; } open OUTPUT, ">$OUTFILE" or die; binmode (OUTPUT) if $^O eq 'MSWin32'; # FIXME: support attribute translations # Empty nodes never need translation, so unmark all of them. # For example, <_foo/> is just replaced by . $source =~ s|<\s*_($w+)\s*/>|<$1/>|g; while ($source =~ s/ (.*?) (\s+)((\s*) (\s*(?:\s*)?(.*?)\s*<\/default>)?(\s*) (\s*(?:\s*)?(.*?)\s*<\/short>)?(\s*) (\s*(?:\s*)?(.*?)\s*<\/long>)?(\s*) <\/locale>) //sx) { print OUTPUT $1; my $locale_start_spaces = $2 ? $2 : ''; my $default_spaces = $4 ? $4 : ''; my $short_spaces = $7 ? $7 : ''; my $long_spaces = $10 ? $10 : ''; my $locale_end_spaces = $13 ? $13 : ''; my $c_default_block = $3 ? $3 : ''; my $default_string = $6 ? $6 : ''; my $short_string = $9 ? $9 : ''; my $long_string = $12 ? $12 : ''; print OUTPUT "$locale_start_spaces$c_default_block"; $default_string =~ s/\s+/ /g; $default_string = entity_decode($default_string); $short_string =~ s/\s+/ /g; $short_string = entity_decode($short_string); $long_string =~ s/\s+/ /g; $long_string = entity_decode($long_string); for my $lang (sort keys %po_files_by_lang) { my $default_translation = $translations{$lang, $default_string}; my $short_translation = $translations{$lang, $short_string}; my $long_translation = $translations{$lang, $long_string}; next if (!$default_translation && !$short_translation && !$long_translation); print OUTPUT "\n$locale_start_spaces"; print OUTPUT "$default_spaces"; if ($default_translation) { $default_translation = entity_encode($default_translation); print OUTPUT "$default_translation"; } print OUTPUT "$short_spaces"; if ($short_translation) { $short_translation = entity_encode($short_translation); print OUTPUT "$short_translation"; } print OUTPUT "$long_spaces"; if ($long_translation) { $long_translation = entity_encode($long_translation); print OUTPUT "$long_translation"; } print OUTPUT "$locale_end_spaces"; } } print OUTPUT $source; close OUTPUT; } sub rfc822deb_merge_translations { my %encodings = (); for my $lang (keys %po_files_by_lang) { $encodings{$lang} = ($UTF8_ARG ? 'UTF-8' : get_po_encoding($po_files_by_lang{$lang})); } my $source; $Text::Wrap::huge = 'overflow'; $Text::Wrap::break = qr/\n|\s(?=\S)/; { local $/; # slurp mode open INPUT, "<$FILE" or die "can't open $FILE: $!"; $source = ; close INPUT; } open OUTPUT, ">${OUTFILE}" or die; binmode (OUTPUT) if $^O eq 'MSWin32'; while ($source =~ /(^|\n+)(_*)([^:\s]+)(:[ \t]*)(.*?)(?=\n[\S\n]|$)/sg) { my $sep = $1; my $non_translated_line = $3.$4; my $string = $5; my $underscore = length($2); next if $underscore eq 0 && $non_translated_line =~ /^#/; # Remove [] dummy strings my $stripped = $string; $stripped =~ s/\[\s[^\[\]]*\],/,/g if $underscore eq 2; $stripped =~ s/\[\s[^\[\]]*\]$//; $non_translated_line .= $stripped; print OUTPUT $sep.$non_translated_line; if ($underscore) { my @str_list = rfc822deb_split($underscore, $string); for my $lang (sort keys %po_files_by_lang) { my $is_translated = 1; my $str_translated = ''; my $first = 1; for my $str (@str_list) { my $translation = $translations{$lang, $str}; if (!$translation) { $is_translated = 0; last; } # $translation may also contain [] dummy # strings, mostly to indicate an empty string $translation =~ s/\[\s[^\[\]]*\]$//; if ($first) { if ($underscore eq 2) { $str_translated .= $translation; } else { $str_translated .= Text::Tabs::expand($translation) . "\n"; } } else { if ($underscore eq 2) { $str_translated .= ', ' . $translation; } else { $str_translated .= Text::Tabs::expand( Text::Wrap::wrap(' ', ' ', $translation)) . "\n .\n"; } } $first = 0; # To fix some problems with Text::Wrap::wrap $str_translated =~ s/(\n )+\n/\n .\n/g; } next unless $is_translated; $str_translated =~ s/\n \.\n$//; $str_translated =~ s/\s+$//; $_ = $non_translated_line; s/^(\w+):\s*.*/$sep${1}-$lang.$encodings{$lang}: $str_translated/s; print OUTPUT; } } } print OUTPUT "\n"; close OUTPUT; close INPUT; } sub rfc822deb_split { # Debian defines a special way to deal with rfc822-style files: # when a value contain newlines, it consists of # 1. a short form (first line) # 2. a long description, all lines begin with a space, # and paragraphs are separated by a single dot on a line # This routine returns an array of all paragraphs, and reformat # them. # When first argument is 2, the string is a comma separated list of # values. my $type = shift; my $text = shift; $text =~ s/^[ \t]//mg; return (split(/, */, $text, 0)) if $type ne 1; return ($text) if $text !~ /\n/; $text =~ s/([^\n]*)\n//; my @list = ($1); my $str = ''; for my $line (split (/\n/, $text)) { chomp $line; if ($line =~ /^\.\s*$/) { # New paragraph $str =~ s/\s*$//; push(@list, $str); $str = ''; } elsif ($line =~ /^\s/) { # Line which must not be reformatted $str .= "\n" if length ($str) && $str !~ /\n$/; $line =~ s/\s+$//; $str .= $line."\n"; } else { # Continuation line, remove newline $str .= " " if length ($str) && $str !~ /\n$/; $str .= $line; } } $str =~ s/\s*$//; push(@list, $str) if length ($str); return @list; } sub quoted_translation { my ($xml_mode, $lang, $string) = @_; $string = entity_decode($string) if $xml_mode; $string =~ s/\\\"/\"/g; my $translation = $translations{$lang, $string}; $translation = $string if !$translation; $translation = entity_encode($translation) if $xml_mode; $translation =~ s/\"/\\\"/g; return $translation } sub quoted_merge_translations { my ($xml_mode) = @_; if (!$MULTIPLE_OUTPUT) { print "Quoted only supports Multiple Output.\n"; exit(1); } for my $lang (sort keys %po_files_by_lang) { if ( ! -d $lang ) { mkdir $lang or -d $lang or die "Cannot create subdirectory $lang: $!\n"; } open INPUT, "<${FILE}" or die; open OUTPUT, ">$lang/$OUTFILE" or die "Cannot open $lang/$OUTFILE: $!\n"; binmode (OUTPUT) if $^O eq 'MSWin32'; while () { s/\"(([^\"]|\\\")*[^\\\"])\"/"\"" . "ed_translation($xml_mode, $lang, $1) . "\""/ge; print OUTPUT; } close OUTPUT; close INPUT; } } agave-0.4.7/pixmaps/0000777000175000017500000000000011224443301011265 500000000000000agave-0.4.7/pixmaps/Makefile.in0000644000175000017500000004243611224442712013264 00000000000000# Makefile.in generated by automake 1.10.2 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # 2003, 2004, 2005, 2006, 2007, 2008 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@ pkglibdir = $(libdir)/@PACKAGE@ pkgincludedir = $(includedir)/@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 = : subdir = pixmaps DIST_COMMON = $(dist_privateicon_DATA) $(srcdir)/Makefile.am \ $(srcdir)/Makefile.in ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \ $(top_srcdir)/configure.ac 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 = 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 = `echo $$p | sed -e 's|^.*/||'`; am__installdirs = "$(DESTDIR)$(privateicondir)" dist_privateiconDATA_INSTALL = $(INSTALL_DATA) DATA = $(dist_privateicon_DATA) RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \ distclean-recursive maintainer-clean-recursive ETAGS = etags CTAGS = ctags DIST_SUBDIRS = $(SUBDIRS) DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ AGAVE_CFLAGS = @AGAVE_CFLAGS@ AGAVE_ICONDIR = @AGAVE_ICONDIR@ AGAVE_LIBS = @AGAVE_LIBS@ AGAVE_LOCALEDIR = @AGAVE_LOCALEDIR@ AGAVE_PALETTEDIR = @AGAVE_PALETTEDIR@ AGAVE_UIDIR = @AGAVE_UIDIR@ ALL_LINGUAS = @ALL_LINGUAS@ AMTAR = @AMTAR@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ AWK = @AWK@ CAIRO_RING_CFLAGS = @CAIRO_RING_CFLAGS@ CAIRO_RING_LIBS = @CAIRO_RING_LIBS@ CATALOGS = @CATALOGS@ CATOBJEXT = @CATOBJEXT@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPPFLAGS = @CPPFLAGS@ CPPUNIT_CFLAGS = @CPPUNIT_CFLAGS@ CPPUNIT_CONFIG = @CPPUNIT_CONFIG@ CPPUNIT_LIBS = @CPPUNIT_LIBS@ CXX = @CXX@ CXXCPP = @CXXCPP@ CXXDEPMODE = @CXXDEPMODE@ CXXFLAGS = @CXXFLAGS@ CYGPATH_W = @CYGPATH_W@ DATADIRNAME = @DATADIRNAME@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ DISTCHECK_CONFIGURE_FLAGS = @DISTCHECK_CONFIGURE_FLAGS@ DOC_USER_FORMATS = @DOC_USER_FORMATS@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ GCONFMM_CFLAGS = @GCONFMM_CFLAGS@ GCONFMM_LIBS = @GCONFMM_LIBS@ GCONFTOOL = @GCONFTOOL@ GCONF_SCHEMA_CONFIG_SOURCE = @GCONF_SCHEMA_CONFIG_SOURCE@ GCONF_SCHEMA_FILE_DIR = @GCONF_SCHEMA_FILE_DIR@ GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ GIT_PATH = @GIT_PATH@ GMOFILES = @GMOFILES@ GMSGFMT = @GMSGFMT@ GNOME_CFLAGS = @GNOME_CFLAGS@ GNOME_LIBS = @GNOME_LIBS@ GREP = @GREP@ GTKMM_CFLAGS = @GTKMM_CFLAGS@ GTKMM_LIBS = @GTKMM_LIBS@ HELP_DIR = @HELP_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@ LDFLAGS = @LDFLAGS@ LIBGLADEMM_CFLAGS = @LIBGLADEMM_CFLAGS@ LIBGLADEMM_LIBS = @LIBGLADEMM_LIBS@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LN_S = @LN_S@ LTLIBOBJS = @LTLIBOBJS@ MAKEINFO = @MAKEINFO@ MKDIR_P = @MKDIR_P@ MKINSTALLDIRS = @MKINSTALLDIRS@ MSGFMT = @MSGFMT@ MSGFMT_OPTS = @MSGFMT_OPTS@ MSGMERGE = @MSGMERGE@ OBJEXT = @OBJEXT@ OMF_DIR = @OMF_DIR@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PACKAGE_WEBSITE = @PACKAGE_WEBSITE@ PATH_SEPARATOR = @PATH_SEPARATOR@ PKG_CONFIG = @PKG_CONFIG@ POFILES = @POFILES@ POSUB = @POSUB@ PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@ PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@ PRINTING_CFLAGS = @PRINTING_CFLAGS@ PRINTING_LIBS = @PRINTING_LIBS@ RANLIB = @RANLIB@ SED = @SED@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ SORT = @SORT@ STRIP = @STRIP@ TR = @TR@ UNIQ = @UNIQ@ USE_NLS = @USE_NLS@ VERSION = @VERSION@ XGETTEXT = @XGETTEXT@ 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_CXX = @ac_ct_CXX@ 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_alias = @build_alias@ builddir = @builddir@ datadir = @datadir@ datarootdir = @datarootdir@ docdir = @docdir@ dvidir = @dvidir@ exec_prefix = @exec_prefix@ host_alias = @host_alias@ htmldir = @htmldir@ includedir = @includedir@ infodir = @infodir@ install_sh = @install_sh@ libdir = @libdir@ libexecdir = @libexecdir@ localedir = @localedir@ localstatedir = @localstatedir@ 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 = 16x16 22x22 32x32 scalable themedir = ${datadir}/icons/hicolor gtk_update_icon_cache = gtk-update-icon-cache -f -t ${themedir} # icons for toolbars, etc. privateicondir = ${AGAVE_ICONDIR} dist_privateicon_DATA = lighten.png \ darken.png \ saturate.png \ desaturate.png all: all-recursive .SUFFIXES: $(srcdir)/Makefile.in: $(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) --gnu pixmaps/Makefile'; \ cd $(top_srcdir) && \ $(AUTOMAKE) --gnu pixmaps/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: $(am__configure_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(ACLOCAL_M4): $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh install-dist_privateiconDATA: $(dist_privateicon_DATA) @$(NORMAL_INSTALL) test -z "$(privateicondir)" || $(MKDIR_P) "$(DESTDIR)$(privateicondir)" @list='$(dist_privateicon_DATA)'; for p in $$list; do \ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ f=$(am__strip_dir) \ echo " $(dist_privateiconDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(privateicondir)/$$f'"; \ $(dist_privateiconDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(privateicondir)/$$f"; \ done uninstall-dist_privateiconDATA: @$(NORMAL_UNINSTALL) @list='$(dist_privateicon_DATA)'; for p in $$list; do \ f=$(am__strip_dir) \ echo " rm -f '$(DESTDIR)$(privateicondir)/$$f'"; \ rm -f "$(DESTDIR)$(privateicondir)/$$f"; \ done # 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): @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; \ (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): @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; \ (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ || eval $$failcom; \ done && test -z "$$fail" tags-recursive: list='$(SUBDIRS)'; for subdir in $$list; do \ test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \ done ctags-recursive: list='$(SUBDIRS)'; for subdir in $$list; do \ test "$$subdir" = . || (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) tags=; \ 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 || \ tags="$$tags $$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; }; }'`; \ if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \ test -n "$$unique" || unique=$$empty_fix; \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ $$tags $$unique; \ fi ctags: CTAGS CTAGS: ctags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) tags=; \ 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)$$tags$$unique" \ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ $$tags $$unique GTAGS: here=`$(am__cd) $(top_builddir) && pwd` \ && 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 $(srcdir)/$$file && test $$d != $(srcdir); then \ cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ fi; \ cp -pR $$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; \ distdir=`$(am__cd) $(distdir) && pwd`; \ top_distdir=`$(am__cd) $(top_distdir) && pwd`; \ (cd $$subdir && \ $(MAKE) $(AM_MAKEFLAGS) \ top_distdir="$$top_distdir" \ distdir="$$distdir/$$subdir" \ am__remove_distdir=: \ am__skip_length_check=: \ distdir) \ || exit 1; \ fi; \ done check-am: all-am check: check-recursive all-am: Makefile $(DATA) installdirs: installdirs-recursive installdirs-am: for dir in "$(DESTDIR)$(privateicondir)"; 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) 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 mostlyclean-am distclean: distclean-recursive -rm -f Makefile distclean-am: clean-am distclean-generic distclean-tags dvi: dvi-recursive dvi-am: html: html-recursive info: info-recursive info-am: install-data-am: install-dist_privateiconDATA @$(NORMAL_INSTALL) $(MAKE) $(AM_MAKEFLAGS) install-data-hook install-dvi: install-dvi-recursive install-exec-am: install-html: install-html-recursive install-info: install-info-recursive install-man: install-pdf: install-pdf-recursive install-ps: install-ps-recursive 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 pdf: pdf-recursive pdf-am: ps: ps-recursive ps-am: uninstall-am: uninstall-dist_privateiconDATA @$(NORMAL_INSTALL) $(MAKE) $(AM_MAKEFLAGS) uninstall-hook .MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) install-am \ install-data-am install-strip uninstall-am .PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \ all all-am check check-am clean clean-generic ctags \ ctags-recursive distclean distclean-generic distclean-tags \ distdir dvi dvi-am html html-am info info-am install \ install-am install-data install-data-am install-data-hook \ install-dist_privateiconDATA 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 pdf pdf-am ps ps-am tags tags-recursive \ uninstall uninstall-am uninstall-dist_privateiconDATA \ uninstall-hook install-data-hook: update-icon-cache uninstall-hook: update-icon-cache update-icon-cache: @-if test -z "$(DESTDIR)"; then \ echo "Updating Gtk icon cache."; \ $(gtk_update_icon_cache); \ else \ echo "*** Icon cache not updated. After install, run this:"; \ echo "*** $(gtk_update_icon_cache)"; \ fi # 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: agave-0.4.7/pixmaps/22x22/0000777000175000017500000000000011224443301012044 500000000000000agave-0.4.7/pixmaps/22x22/Makefile.in0000644000175000017500000002577411224442712014051 00000000000000# Makefile.in generated by automake 1.10.2 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # 2003, 2004, 2005, 2006, 2007, 2008 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@ pkglibdir = $(libdir)/@PACKAGE@ pkgincludedir = $(includedir)/@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 = : subdir = pixmaps/22x22 DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \ $(top_srcdir)/configure.ac 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 = SOURCES = DIST_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 = `echo $$p | sed -e 's|^.*/||'`; am__installdirs = "$(DESTDIR)$(iconsdir)" iconsDATA_INSTALL = $(INSTALL_DATA) DATA = $(icons_DATA) $(noinst_DATA) DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ AGAVE_CFLAGS = @AGAVE_CFLAGS@ AGAVE_ICONDIR = @AGAVE_ICONDIR@ AGAVE_LIBS = @AGAVE_LIBS@ AGAVE_LOCALEDIR = @AGAVE_LOCALEDIR@ AGAVE_PALETTEDIR = @AGAVE_PALETTEDIR@ AGAVE_UIDIR = @AGAVE_UIDIR@ ALL_LINGUAS = @ALL_LINGUAS@ AMTAR = @AMTAR@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ AWK = @AWK@ CAIRO_RING_CFLAGS = @CAIRO_RING_CFLAGS@ CAIRO_RING_LIBS = @CAIRO_RING_LIBS@ CATALOGS = @CATALOGS@ CATOBJEXT = @CATOBJEXT@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPPFLAGS = @CPPFLAGS@ CPPUNIT_CFLAGS = @CPPUNIT_CFLAGS@ CPPUNIT_CONFIG = @CPPUNIT_CONFIG@ CPPUNIT_LIBS = @CPPUNIT_LIBS@ CXX = @CXX@ CXXCPP = @CXXCPP@ CXXDEPMODE = @CXXDEPMODE@ CXXFLAGS = @CXXFLAGS@ CYGPATH_W = @CYGPATH_W@ DATADIRNAME = @DATADIRNAME@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ DISTCHECK_CONFIGURE_FLAGS = @DISTCHECK_CONFIGURE_FLAGS@ DOC_USER_FORMATS = @DOC_USER_FORMATS@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ GCONFMM_CFLAGS = @GCONFMM_CFLAGS@ GCONFMM_LIBS = @GCONFMM_LIBS@ GCONFTOOL = @GCONFTOOL@ GCONF_SCHEMA_CONFIG_SOURCE = @GCONF_SCHEMA_CONFIG_SOURCE@ GCONF_SCHEMA_FILE_DIR = @GCONF_SCHEMA_FILE_DIR@ GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ GIT_PATH = @GIT_PATH@ GMOFILES = @GMOFILES@ GMSGFMT = @GMSGFMT@ GNOME_CFLAGS = @GNOME_CFLAGS@ GNOME_LIBS = @GNOME_LIBS@ GREP = @GREP@ GTKMM_CFLAGS = @GTKMM_CFLAGS@ GTKMM_LIBS = @GTKMM_LIBS@ HELP_DIR = @HELP_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@ LDFLAGS = @LDFLAGS@ LIBGLADEMM_CFLAGS = @LIBGLADEMM_CFLAGS@ LIBGLADEMM_LIBS = @LIBGLADEMM_LIBS@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LN_S = @LN_S@ LTLIBOBJS = @LTLIBOBJS@ MAKEINFO = @MAKEINFO@ MKDIR_P = @MKDIR_P@ MKINSTALLDIRS = @MKINSTALLDIRS@ MSGFMT = @MSGFMT@ MSGFMT_OPTS = @MSGFMT_OPTS@ MSGMERGE = @MSGMERGE@ OBJEXT = @OBJEXT@ OMF_DIR = @OMF_DIR@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PACKAGE_WEBSITE = @PACKAGE_WEBSITE@ PATH_SEPARATOR = @PATH_SEPARATOR@ PKG_CONFIG = @PKG_CONFIG@ POFILES = @POFILES@ POSUB = @POSUB@ PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@ PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@ PRINTING_CFLAGS = @PRINTING_CFLAGS@ PRINTING_LIBS = @PRINTING_LIBS@ RANLIB = @RANLIB@ SED = @SED@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ SORT = @SORT@ STRIP = @STRIP@ TR = @TR@ UNIQ = @UNIQ@ USE_NLS = @USE_NLS@ VERSION = @VERSION@ XGETTEXT = @XGETTEXT@ 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_CXX = @ac_ct_CXX@ 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_alias = @build_alias@ builddir = @builddir@ datadir = @datadir@ datarootdir = @datarootdir@ docdir = @docdir@ dvidir = @dvidir@ exec_prefix = @exec_prefix@ host_alias = @host_alias@ htmldir = @htmldir@ includedir = @includedir@ infodir = @infodir@ install_sh = @install_sh@ libdir = @libdir@ libexecdir = @libexecdir@ localedir = @localedir@ localstatedir = @localstatedir@ 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@ themedir = $(datadir)/icons/hicolor size = 22x22 context = apps iconsdir = $(themedir)/$(size)/$(context) icons_DATA = \ agave.png noinst_DATA = EXTRA_DIST = \ $(icons_DATA) \ $(noinst_DATA) all: all-am .SUFFIXES: $(srcdir)/Makefile.in: $(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) --gnu pixmaps/22x22/Makefile'; \ cd $(top_srcdir) && \ $(AUTOMAKE) --gnu pixmaps/22x22/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: $(am__configure_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(ACLOCAL_M4): $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh install-iconsDATA: $(icons_DATA) @$(NORMAL_INSTALL) test -z "$(iconsdir)" || $(MKDIR_P) "$(DESTDIR)$(iconsdir)" @list='$(icons_DATA)'; for p in $$list; do \ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ f=$(am__strip_dir) \ echo " $(iconsDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(iconsdir)/$$f'"; \ $(iconsDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(iconsdir)/$$f"; \ done uninstall-iconsDATA: @$(NORMAL_UNINSTALL) @list='$(icons_DATA)'; for p in $$list; do \ f=$(am__strip_dir) \ echo " rm -f '$(DESTDIR)$(iconsdir)/$$f'"; \ rm -f "$(DESTDIR)$(iconsdir)/$$f"; \ done 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 $(srcdir)/$$file && test $$d != $(srcdir); then \ cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ fi; \ cp -pR $$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 $(DATA) installdirs: for dir in "$(DESTDIR)$(iconsdir)"; 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) 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 mostlyclean-am distclean: distclean-am -rm -f Makefile distclean-am: clean-am distclean-generic dvi: dvi-am dvi-am: html: html-am info: info-am info-am: install-data-am: install-iconsDATA install-dvi: install-dvi-am 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 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 pdf: pdf-am pdf-am: ps: ps-am ps-am: uninstall-am: uninstall-iconsDATA .MAKE: install-am install-strip .PHONY: all all-am check check-am clean clean-generic distclean \ distclean-generic 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-iconsDATA 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 pdf pdf-am ps ps-am uninstall \ uninstall-am uninstall-iconsDATA # 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: agave-0.4.7/pixmaps/22x22/Makefile.am0000644000175000017500000000030710760701126014022 00000000000000themedir = $(datadir)/icons/hicolor size = 22x22 context = apps iconsdir = $(themedir)/$(size)/$(context) icons_DATA = \ agave.png noinst_DATA = EXTRA_DIST = \ $(icons_DATA) \ $(noinst_DATA) agave-0.4.7/pixmaps/22x22/agave.png0000755000175000017500000000176710760701126013575 00000000000000‰PNG  IHDRÄ´l;sBIT|dˆ pHYs × ×B(›xtEXtSoftwarewww.inkscape.org›î<tIDAT8µÕ_hÖUÇñ÷÷üþ<Û³gS!Ýšn%b„‰ ÅMf³… Ä.¢Ë.J"ˆ ‚ÊŒ®ÊºÁª› ¨ ¢´d*4ºþÁÂÄÒ’9çŸý{ž=¿?ç|»y(e"æÏÍáœ×ùrœ¯¨*·b˜ÿº°ÿ°do \Hýûv¾n\rبÜi<žZrXTîv½- K ‹¬/–²¾— _RÕ5å–ÛŒyúÁ½/ÊŠ¾—ü¯ŸD’ËŒp²jè´Þ ܾ/X¹íå`…¿à¤Ä° ·¼ì8±/9 °m/Ë¥ I»Œïi<£ƒÀ½ú.a‡ˆ·'l¯9eSTlcû=FŒ:ý¤÷9ép55ê§IMñ<¿h#v í×bÍx¾ûÐ÷½Må¢y%©-€Gßä×hÚÍ·Þ%~™o6<)-ñ¼®1J˜Ì;Ä 6Òî¡·Â{3A~´o{oKG÷òbåZ2UÜ–‘½Éô¢w¬ªšÆz$©bKËL^Õ|eÖ©š|TQ\bp)«2^þøÀÖÁbÞ”ùéĹ¹¸ê6-¹xÃãuJO÷Y/"WÍûWÏh6 ^@gZ•‡]l°±b%Ûà•6nØTBŸcGOVj•äùû’³Ã–ááÀ¿ûfU~è`ª£O>›=osÓç]®rI½L^$\ûülj] µùˆ;ºn'®qæ÷1.OLÍ”;Mó#‡r§Õ2ikòÑo„EQUd—x]Ó¶–]ù& Ô¢‚†vÁ„¤6ÂÏ5¦½#'ÕZ•îMíDµ„‰sÓ6Ÿ)ºÖ¶f{ùêd8ù×앸â6¼šœ–ë¿Í•[åõ +Ï”;%«f/(aQ2CKgH±%?¥­°ŠûïÙF±Tàȱ/k¿ü8ög4gûG÷§n€EDZ×ñ¨çsP a¡M²"ä…|³Pl7›}z:ײ»ÿYŽýü±~ñé×ÑÌdôùÙoÓ=Sè¤ÖÁ0ДèÊ7óD˜å±°H9[iê2d…4R\"ª©ç¢÷Ý¥1ûÞø)w*‹Âu<”€¦zÊ@c¹CVšãŠÎÌMð[Ze¸ \.sªšþã, à!P¨'d,Pª@˜"Uµ787ëyõ àÕ#õh·€SU·èþ[ÕLÿRŒÈ¦®IEND®B`‚agave-0.4.7/pixmaps/saturate.png0000644000175000017500000000204510455603151013546 00000000000000‰PNG  IHDRàw=øbKGDùC» pHYs  šœtIMEÕ %ëIß„tEXtCommentCreated with The GIMPïd%n‰IDATHǵ•ML\UÇ÷¾y÷ÍcPË0‚¦c¤E´*ÄÔDîHˆE7]hÂBÝcÂÒ„®Œ;7&¦1ºÓ4y;5±. $Dq¤,„d`b)33¥ÌÀ|¼{]ÌðÕy`kÂIÞæÞ{Îïüï¹ç8ekæúZ(hñƒO¿<Öá‹ß§P(t¶´´„ÕÿJH·±´z»é“R088ˆmÛï !ÊÓÓÓQ@¤(PR6-á†_Ã5$%‰îN&''yòùצ?û~–ÞÙ?›L&3KKK• 5€åà†„ûÁ‹Ÿá…gúãÖÆ]¾úáO†^›k×®®Ž%€õ H ¶iuà R ºcQ.]8Çèp?Û;e®ÿ¾B[Ä¡ëü(žwuå8H0ÀQD\!%]íŒ õqéâÛ;e~œK²$RH„´ˆ?õ,Zk<ïë@H Àu­—ÎGÚ¸x¾g?óŸÿX=x¤”h!ˆ÷]£ñ¼oš ¯È ;œíî`d¨Ñá~¶JÁ÷ê¢ï)g¬gˆ§_½‚çy+ñÞÞ^ˆ&¶m?ó0]Q†ÏõðW*˯É4!KRó5–y祓§Fkmî`£4Z¬gsä7ó¼õæe&&&®ˆFKcL¹\®...fR©ÔV©TªÝ—0ÐÈ܃²-\G±¼¼ÌÚÚÚ¦9kLÍSÚÜÜ,íøX@}ȈÃÒ±m˲ØÞÞÆqœÛ‡§Ói“Ë嘛›óï§>ôOÝþ‹šŸŽ¯e IEND®B`‚agave-0.4.7/pixmaps/Makefile.am0000644000175000017500000000114710760701126013246 00000000000000SUBDIRS = 16x16 22x22 32x32 scalable themedir = ${datadir}/icons/hicolor gtk_update_icon_cache = gtk-update-icon-cache -f -t ${themedir} install-data-hook: update-icon-cache uninstall-hook: update-icon-cache update-icon-cache: @-if test -z "$(DESTDIR)"; then \ echo "Updating Gtk icon cache."; \ $(gtk_update_icon_cache); \ else \ echo "*** Icon cache not updated. After install, run this:"; \ echo "*** $(gtk_update_icon_cache)"; \ fi # icons for toolbars, etc. privateicondir = ${AGAVE_ICONDIR} dist_privateicon_DATA = lighten.png \ darken.png \ saturate.png \ desaturate.png agave-0.4.7/pixmaps/scalable/0000777000175000017500000000000011224443301013033 500000000000000agave-0.4.7/pixmaps/scalable/Makefile.in0000644000175000017500000002601011224442712015020 00000000000000# Makefile.in generated by automake 1.10.2 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # 2003, 2004, 2005, 2006, 2007, 2008 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@ pkglibdir = $(libdir)/@PACKAGE@ pkgincludedir = $(includedir)/@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 = : subdir = pixmaps/scalable DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \ $(top_srcdir)/configure.ac 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 = SOURCES = DIST_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 = `echo $$p | sed -e 's|^.*/||'`; am__installdirs = "$(DESTDIR)$(iconsdir)" iconsDATA_INSTALL = $(INSTALL_DATA) DATA = $(icons_DATA) $(noinst_DATA) DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ AGAVE_CFLAGS = @AGAVE_CFLAGS@ AGAVE_ICONDIR = @AGAVE_ICONDIR@ AGAVE_LIBS = @AGAVE_LIBS@ AGAVE_LOCALEDIR = @AGAVE_LOCALEDIR@ AGAVE_PALETTEDIR = @AGAVE_PALETTEDIR@ AGAVE_UIDIR = @AGAVE_UIDIR@ ALL_LINGUAS = @ALL_LINGUAS@ AMTAR = @AMTAR@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ AWK = @AWK@ CAIRO_RING_CFLAGS = @CAIRO_RING_CFLAGS@ CAIRO_RING_LIBS = @CAIRO_RING_LIBS@ CATALOGS = @CATALOGS@ CATOBJEXT = @CATOBJEXT@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPPFLAGS = @CPPFLAGS@ CPPUNIT_CFLAGS = @CPPUNIT_CFLAGS@ CPPUNIT_CONFIG = @CPPUNIT_CONFIG@ CPPUNIT_LIBS = @CPPUNIT_LIBS@ CXX = @CXX@ CXXCPP = @CXXCPP@ CXXDEPMODE = @CXXDEPMODE@ CXXFLAGS = @CXXFLAGS@ CYGPATH_W = @CYGPATH_W@ DATADIRNAME = @DATADIRNAME@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ DISTCHECK_CONFIGURE_FLAGS = @DISTCHECK_CONFIGURE_FLAGS@ DOC_USER_FORMATS = @DOC_USER_FORMATS@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ GCONFMM_CFLAGS = @GCONFMM_CFLAGS@ GCONFMM_LIBS = @GCONFMM_LIBS@ GCONFTOOL = @GCONFTOOL@ GCONF_SCHEMA_CONFIG_SOURCE = @GCONF_SCHEMA_CONFIG_SOURCE@ GCONF_SCHEMA_FILE_DIR = @GCONF_SCHEMA_FILE_DIR@ GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ GIT_PATH = @GIT_PATH@ GMOFILES = @GMOFILES@ GMSGFMT = @GMSGFMT@ GNOME_CFLAGS = @GNOME_CFLAGS@ GNOME_LIBS = @GNOME_LIBS@ GREP = @GREP@ GTKMM_CFLAGS = @GTKMM_CFLAGS@ GTKMM_LIBS = @GTKMM_LIBS@ HELP_DIR = @HELP_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@ LDFLAGS = @LDFLAGS@ LIBGLADEMM_CFLAGS = @LIBGLADEMM_CFLAGS@ LIBGLADEMM_LIBS = @LIBGLADEMM_LIBS@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LN_S = @LN_S@ LTLIBOBJS = @LTLIBOBJS@ MAKEINFO = @MAKEINFO@ MKDIR_P = @MKDIR_P@ MKINSTALLDIRS = @MKINSTALLDIRS@ MSGFMT = @MSGFMT@ MSGFMT_OPTS = @MSGFMT_OPTS@ MSGMERGE = @MSGMERGE@ OBJEXT = @OBJEXT@ OMF_DIR = @OMF_DIR@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PACKAGE_WEBSITE = @PACKAGE_WEBSITE@ PATH_SEPARATOR = @PATH_SEPARATOR@ PKG_CONFIG = @PKG_CONFIG@ POFILES = @POFILES@ POSUB = @POSUB@ PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@ PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@ PRINTING_CFLAGS = @PRINTING_CFLAGS@ PRINTING_LIBS = @PRINTING_LIBS@ RANLIB = @RANLIB@ SED = @SED@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ SORT = @SORT@ STRIP = @STRIP@ TR = @TR@ UNIQ = @UNIQ@ USE_NLS = @USE_NLS@ VERSION = @VERSION@ XGETTEXT = @XGETTEXT@ 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_CXX = @ac_ct_CXX@ 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_alias = @build_alias@ builddir = @builddir@ datadir = @datadir@ datarootdir = @datarootdir@ docdir = @docdir@ dvidir = @dvidir@ exec_prefix = @exec_prefix@ host_alias = @host_alias@ htmldir = @htmldir@ includedir = @includedir@ infodir = @infodir@ install_sh = @install_sh@ libdir = @libdir@ libexecdir = @libexecdir@ localedir = @localedir@ localstatedir = @localstatedir@ 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@ themedir = $(datadir)/icons/hicolor size = scalable context = apps iconsdir = $(themedir)/$(size)/$(context) icons_DATA = \ agave.svg noinst_DATA = EXTRA_DIST = \ $(icons_DATA) \ $(noinst_DATA) all: all-am .SUFFIXES: $(srcdir)/Makefile.in: $(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) --gnu pixmaps/scalable/Makefile'; \ cd $(top_srcdir) && \ $(AUTOMAKE) --gnu pixmaps/scalable/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: $(am__configure_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(ACLOCAL_M4): $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh install-iconsDATA: $(icons_DATA) @$(NORMAL_INSTALL) test -z "$(iconsdir)" || $(MKDIR_P) "$(DESTDIR)$(iconsdir)" @list='$(icons_DATA)'; for p in $$list; do \ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ f=$(am__strip_dir) \ echo " $(iconsDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(iconsdir)/$$f'"; \ $(iconsDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(iconsdir)/$$f"; \ done uninstall-iconsDATA: @$(NORMAL_UNINSTALL) @list='$(icons_DATA)'; for p in $$list; do \ f=$(am__strip_dir) \ echo " rm -f '$(DESTDIR)$(iconsdir)/$$f'"; \ rm -f "$(DESTDIR)$(iconsdir)/$$f"; \ done 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 $(srcdir)/$$file && test $$d != $(srcdir); then \ cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ fi; \ cp -pR $$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 $(DATA) installdirs: for dir in "$(DESTDIR)$(iconsdir)"; 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) 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 mostlyclean-am distclean: distclean-am -rm -f Makefile distclean-am: clean-am distclean-generic dvi: dvi-am dvi-am: html: html-am info: info-am info-am: install-data-am: install-iconsDATA install-dvi: install-dvi-am 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 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 pdf: pdf-am pdf-am: ps: ps-am ps-am: uninstall-am: uninstall-iconsDATA .MAKE: install-am install-strip .PHONY: all all-am check check-am clean clean-generic distclean \ distclean-generic 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-iconsDATA 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 pdf pdf-am ps ps-am uninstall \ uninstall-am uninstall-iconsDATA # 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: agave-0.4.7/pixmaps/scalable/agave.svg0000755000175000017500000005770410760701126014601 00000000000000 image/svg+xml Agave 2007-11-01 Vinicius Depizzol agave colorscheme plant agave-0.4.7/pixmaps/scalable/Makefile.am0000644000175000017500000000031210760701126015005 00000000000000themedir = $(datadir)/icons/hicolor size = scalable context = apps iconsdir = $(themedir)/$(size)/$(context) icons_DATA = \ agave.svg noinst_DATA = EXTRA_DIST = \ $(icons_DATA) \ $(noinst_DATA) agave-0.4.7/pixmaps/32x32/0000777000175000017500000000000011224443301012046 500000000000000agave-0.4.7/pixmaps/32x32/Makefile.in0000644000175000017500000002577411224442712014053 00000000000000# Makefile.in generated by automake 1.10.2 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # 2003, 2004, 2005, 2006, 2007, 2008 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@ pkglibdir = $(libdir)/@PACKAGE@ pkgincludedir = $(includedir)/@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 = : subdir = pixmaps/32x32 DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \ $(top_srcdir)/configure.ac 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 = SOURCES = DIST_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 = `echo $$p | sed -e 's|^.*/||'`; am__installdirs = "$(DESTDIR)$(iconsdir)" iconsDATA_INSTALL = $(INSTALL_DATA) DATA = $(icons_DATA) $(noinst_DATA) DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ AGAVE_CFLAGS = @AGAVE_CFLAGS@ AGAVE_ICONDIR = @AGAVE_ICONDIR@ AGAVE_LIBS = @AGAVE_LIBS@ AGAVE_LOCALEDIR = @AGAVE_LOCALEDIR@ AGAVE_PALETTEDIR = @AGAVE_PALETTEDIR@ AGAVE_UIDIR = @AGAVE_UIDIR@ ALL_LINGUAS = @ALL_LINGUAS@ AMTAR = @AMTAR@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ AWK = @AWK@ CAIRO_RING_CFLAGS = @CAIRO_RING_CFLAGS@ CAIRO_RING_LIBS = @CAIRO_RING_LIBS@ CATALOGS = @CATALOGS@ CATOBJEXT = @CATOBJEXT@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPPFLAGS = @CPPFLAGS@ CPPUNIT_CFLAGS = @CPPUNIT_CFLAGS@ CPPUNIT_CONFIG = @CPPUNIT_CONFIG@ CPPUNIT_LIBS = @CPPUNIT_LIBS@ CXX = @CXX@ CXXCPP = @CXXCPP@ CXXDEPMODE = @CXXDEPMODE@ CXXFLAGS = @CXXFLAGS@ CYGPATH_W = @CYGPATH_W@ DATADIRNAME = @DATADIRNAME@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ DISTCHECK_CONFIGURE_FLAGS = @DISTCHECK_CONFIGURE_FLAGS@ DOC_USER_FORMATS = @DOC_USER_FORMATS@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ GCONFMM_CFLAGS = @GCONFMM_CFLAGS@ GCONFMM_LIBS = @GCONFMM_LIBS@ GCONFTOOL = @GCONFTOOL@ GCONF_SCHEMA_CONFIG_SOURCE = @GCONF_SCHEMA_CONFIG_SOURCE@ GCONF_SCHEMA_FILE_DIR = @GCONF_SCHEMA_FILE_DIR@ GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ GIT_PATH = @GIT_PATH@ GMOFILES = @GMOFILES@ GMSGFMT = @GMSGFMT@ GNOME_CFLAGS = @GNOME_CFLAGS@ GNOME_LIBS = @GNOME_LIBS@ GREP = @GREP@ GTKMM_CFLAGS = @GTKMM_CFLAGS@ GTKMM_LIBS = @GTKMM_LIBS@ HELP_DIR = @HELP_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@ LDFLAGS = @LDFLAGS@ LIBGLADEMM_CFLAGS = @LIBGLADEMM_CFLAGS@ LIBGLADEMM_LIBS = @LIBGLADEMM_LIBS@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LN_S = @LN_S@ LTLIBOBJS = @LTLIBOBJS@ MAKEINFO = @MAKEINFO@ MKDIR_P = @MKDIR_P@ MKINSTALLDIRS = @MKINSTALLDIRS@ MSGFMT = @MSGFMT@ MSGFMT_OPTS = @MSGFMT_OPTS@ MSGMERGE = @MSGMERGE@ OBJEXT = @OBJEXT@ OMF_DIR = @OMF_DIR@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PACKAGE_WEBSITE = @PACKAGE_WEBSITE@ PATH_SEPARATOR = @PATH_SEPARATOR@ PKG_CONFIG = @PKG_CONFIG@ POFILES = @POFILES@ POSUB = @POSUB@ PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@ PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@ PRINTING_CFLAGS = @PRINTING_CFLAGS@ PRINTING_LIBS = @PRINTING_LIBS@ RANLIB = @RANLIB@ SED = @SED@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ SORT = @SORT@ STRIP = @STRIP@ TR = @TR@ UNIQ = @UNIQ@ USE_NLS = @USE_NLS@ VERSION = @VERSION@ XGETTEXT = @XGETTEXT@ 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_CXX = @ac_ct_CXX@ 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_alias = @build_alias@ builddir = @builddir@ datadir = @datadir@ datarootdir = @datarootdir@ docdir = @docdir@ dvidir = @dvidir@ exec_prefix = @exec_prefix@ host_alias = @host_alias@ htmldir = @htmldir@ includedir = @includedir@ infodir = @infodir@ install_sh = @install_sh@ libdir = @libdir@ libexecdir = @libexecdir@ localedir = @localedir@ localstatedir = @localstatedir@ 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@ themedir = $(datadir)/icons/hicolor size = 32x32 context = apps iconsdir = $(themedir)/$(size)/$(context) icons_DATA = \ agave.png noinst_DATA = EXTRA_DIST = \ $(icons_DATA) \ $(noinst_DATA) all: all-am .SUFFIXES: $(srcdir)/Makefile.in: $(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) --gnu pixmaps/32x32/Makefile'; \ cd $(top_srcdir) && \ $(AUTOMAKE) --gnu pixmaps/32x32/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: $(am__configure_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(ACLOCAL_M4): $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh install-iconsDATA: $(icons_DATA) @$(NORMAL_INSTALL) test -z "$(iconsdir)" || $(MKDIR_P) "$(DESTDIR)$(iconsdir)" @list='$(icons_DATA)'; for p in $$list; do \ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ f=$(am__strip_dir) \ echo " $(iconsDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(iconsdir)/$$f'"; \ $(iconsDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(iconsdir)/$$f"; \ done uninstall-iconsDATA: @$(NORMAL_UNINSTALL) @list='$(icons_DATA)'; for p in $$list; do \ f=$(am__strip_dir) \ echo " rm -f '$(DESTDIR)$(iconsdir)/$$f'"; \ rm -f "$(DESTDIR)$(iconsdir)/$$f"; \ done 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 $(srcdir)/$$file && test $$d != $(srcdir); then \ cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ fi; \ cp -pR $$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 $(DATA) installdirs: for dir in "$(DESTDIR)$(iconsdir)"; 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) 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 mostlyclean-am distclean: distclean-am -rm -f Makefile distclean-am: clean-am distclean-generic dvi: dvi-am dvi-am: html: html-am info: info-am info-am: install-data-am: install-iconsDATA install-dvi: install-dvi-am 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 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 pdf: pdf-am pdf-am: ps: ps-am ps-am: uninstall-am: uninstall-iconsDATA .MAKE: install-am install-strip .PHONY: all all-am check check-am clean clean-generic distclean \ distclean-generic 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-iconsDATA 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 pdf pdf-am ps ps-am uninstall \ uninstall-am uninstall-iconsDATA # 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: agave-0.4.7/pixmaps/32x32/Makefile.am0000644000175000017500000000030610760701126014023 00000000000000themedir = $(datadir)/icons/hicolor size = 32x32 context = apps iconsdir = $(themedir)/$(size)/$(context) icons_DATA = \ agave.png noinst_DATA = EXTRA_DIST = \ $(icons_DATA) \ $(noinst_DATA) agave-0.4.7/pixmaps/32x32/agave.png0000755000175000017500000000302510760701126013564 00000000000000‰PNG  IHDR szzôsBIT|dˆÌIDATX…í–mlžUÇçÜ/Ïý¼¶][Vhç¶ôQdkP˜®›ë^µ8—‘f„øA¾ F^¾HBX4qQ¢Ñ)˜‘H 1$ˆFÅL§l LÑ5&ºAÜf7†+ÝÖv}ö¼ÜÏ}ßç\~ØSVËZÅ.¨‰WòÏùp®sý''çœ þÿÓ!¨ù–pæ³x[—¿£»?˜8ú|\þwkèù r§ëGOΧļúýˆÚ²þ ‚ÿZréŒbû{°íqòZ9ù¶«›|¥øÜ{`c·'•và ã€Ö7Üòtçè{À˜k¡‰ÔuZ;ž5B®ˆr’O]Q«Ô}}zwÍ6/1Ë]Wqh|/-‰¾íÊ©˜Ø>²ö ÞM—›7†í¨ZÉàú&– ì!5[½›wÓ²å«þàæ¯øÏnü’;±~—³}N€$VßV’ØŸ¯¾‡â;c)j­‰ë„‚çºqº}3óú¿ænÚº'ý›ÄMd²þ÷MÝî°F~°—ùÑÜ’W¡¾hrDœÖžæ©¹ÁAœ¤F‡Ò`c!© žïf1¬ŸÊÙö ÞüÍà@>×ôãu½k{?yëæ”‰¬Aéöï2wNåÍ pè1&“PÎd[uªs•nªçgƒƒŸîÓKY(¢#ƒMS´hÇ$ª``wC¢‚#Ë–õ¬ÞÒ¿!›]àªý{[/Äß}áÁh÷tŸ9¯¡‰yqò ‰2ÍŠL+ˆ[ô£R÷:M’ÔkÁÄ ÄÁDríÀ×Ý>—Ô‹ëz×µt-i÷Êѯª–¶ü)¾¦ÇœŸÑU˵'±ô§š~^KyT®ïèQçqp‚Œ»=“÷RÖ€ÈEUJ‘ä‚[Ó›'[S‘©0|ü”œ|íìð$ц}ÍôÐË?Á‚Ùê˜}ã§$—¡ò– ›+k„‡ãšZ‹Õž‰b@ `„ I+W¬È'^™J}ŒRå<¯ýþtÖeç¡]TgÖøínÍ¡³Ø¯Þ(«zÖª\sšñx˜#‡Û¡—Ž•ãºÝúÒîäå)ÏwôtÅ›(DO[Å?CÖË€ŸSÔσŸ¿”îe4mitÆÐÜž¡Ðá26r¥×,gëªÛѾ᯵ƒŒV†úʼnꙓ¥7ëÕø–ßíáèt¿Y›ÊkVr—XÖ.i”ŸVx9…Ÿ¥@;irI·Áâ51ö··nºƒ•Ý›*ý‘ðgO•xõ§'«õ²yúñÝǾE}¦Ïl ð¹ÑIó˜ºÑ¤ƒf¥ü4¸è”"ߡɷ;8ܱã^º:–ðË×çÜÙ³«NŒÔÊ•söî??cž@.g4[¸@òïc‹°S;|ØõhITàÐz­ÆË(l"x:%a VMØ:)&Ïž:hŸ©3„ €Ëît¶Ð€×€Èy Ðs@º‰—E+K5ª1\J±ÔæöÝLA¸€¤0©†<.=åˆzc·Sc<—ù¿0•£fÓ¥¹ô™Ù†Ì Y.sîï`f®š¦é!ÓÿÄø¿&þ”>†^nnIEND®B`‚agave-0.4.7/pixmaps/desaturate.png0000644000175000017500000000170610455603151014062 00000000000000‰PNG  IHDRàw=øbKGDùC» pHYs  šœtIMEÕ  ÀŠ‚&tEXtCommentCreated with The GIMPïd%n*IDATHǵ•Mh\UÇ÷¾¯ûf&%m)‚.Œˆ¡ Ø*!HBÌ"A²*¸­˜…›àFBÝ´¸ ‚ˆHQ”™FI‰¥! I”A0Ž&}Nâk&iÒ&yïͽ.œ±y3„œÕåÞsþÿsîù‚c‘rgþ§]ªØi—o½w©y–BËúÈä'ï¿Ãâââ£õ-ËŠ–––¡¡¡jG+kôvwñì™Çxé…çšo}}}¿¥Ù xÅb1:’Àu2Ê'r>'»|¾YX¡\¹Ã~”ðÃOPÛÛ ‰# ¾NE ˆ~s*AÆõ𕇂Œò õ(Ñ8¶E—DÕ}öw6¨Þ¹ÀÖÖ–ÝÈO{¥r¾!Pž‹l$À’‚¤®ÑZ#-;ÅN‰Žr <—¬ï_¹Ø–õ¯²%Ð-êLÞóä(ßsÉø d\˶þ $:ïyÿ…ã8œ<‘ãt_7§{»é=Õ…uуé ÓÓÓ”J¥þr¹üp>Ÿ÷R#èéé¡ÿ¡xù‰ÁTc RÊÔ·ÉÉÉ…ûý=äŠïûæòìø ž{’7?*ðÌãbIAœÔ‰ðåÕ_¸}óFÓî^%ÝoPœaxx¸¿P(¬r%Š"ŒÖTvö¸27Ï…7†ùvñwîÖb¤”Ø–LM²Êu7ÁGGGÏ•J¥= 9D µFy>Òqˆ´ÅìÜ<3çǹ|}…j”Ôuê÷Ü,ýLqv†±±±Á0 ÿªÕj»©Æ|å’õ3xJ!l¹ùk|õî‹|½°BœÔ›åš¾±±ñg†[AT#[5Z6«Èe²ø™,Ž—eþÚß}ð*×-³W;oÓBHÀ`Œ‡N’Èæê÷W8ûôSTÞþ­õ‘à-÷Að÷&qœ4ê]`êub £ˆ/>ÿŒ©©)žåHð¶8¶ƒÀ £KƒÑu …ù|þâÈÈÈkãããƒA´oCà iÆ(ŒhÎÈååeÖ××?ž˜˜¸°ººº†á­Vàm#)#aww—µµµâöö¶¬T*Õ âvkV¤OƒÖk¹1‡d§ûûØ—þ±Ë?ç{m²ÃôIEND®B`‚agave-0.4.7/pixmaps/darken.png0000644000175000017500000000172410455603151013165 00000000000000‰PNG  IHDRàw=øbKGDùC» pHYs  šœtIMEÕ %lÑÃKtEXtCommentCreated with The GIMPïd%n8IDATHÇÅ•Kh\eÇßwçvn¦ !PD»°ÁJ¶YÔE7Ac” T!Ôº¯»"dé¢iiE4àÂE_ÌPÜicm¢ b2“‡“I¼Î£3™û¾ó]“Æ´s§„âYžïœÿÿ¼¾sà‹ˆÑEÿÑ/VqÊ…VïãKê ˆ xûÕçXZZ¨Ðu]Dôé‚”.0t‰R­‡6Š"žaffæ©B¡p¦T*N§ÓÉØ úûû<}Š‹¯_ˆ‰¢)eìÛôôôâƒñvÔëuVóë|±ð ¯¼<ÁÅ«ž}æq4)(×m¤”%2NœäÜk—Ø3ÿ$wkžÑÑÑ3™LFïÅ÷}J;»ü˜½ÃÇŸ}Î컣|»”Çñ¤”$4ÛdãÄÉðñññs…BÁÂ¥Íæ[ü¼’ãÚÍO˜¿4É—·×pý°¥bËówáWr·æ™˜˜8ošæ¶çyX‚(а-‹JµL>¿Nvù7æ®ßdáò¾Z\#[ã¾»»»ašfµX,º@Û-Ïs° ªÕ2«äù){‡«s×ùîÃ7¹ý{ Ë zïú|ÇÆ¶- ±šx®Mà9ÌÍ^áé—¨¼ÿ)J©#Á´ü˃OŸ¥´½Múxž‡çÙ4ê úRÇyñ…çùèƒ÷ÐãG‚wÍÀuý Ú÷ÀE`Û›ëdÿ*‘N§¯½599y¾X,vï¾*×j¶­"@P«UXYYaggçÆÔÔÔìææfÙ4Í»ÝÀ’ãìAÔöû ر,[[[¹Z­&+•Š[,ƒ‡ÙØ›<<<Üuye³ÙÃ;,úßþ#—yèâI‰1€—IEND®B`‚agave-0.4.7/pixmaps/lighten.png0000644000175000017500000000205610455603151013352 00000000000000‰PNG  IHDRàw=øbKGDùC» pHYs  šœtIMEÕ 5öþÏàtEXtCommentCreated with The GIMPïd%n’IDATHǵ•Mh\U†ŸsçÎL~Z§ä§̤Mªù™bKÓJÑEwP#](daÉJÄ,…l܉k»Ñ¹î„¬ $uÓ,šÀ$M3“ŸÉÌû33÷3MšÌM´B>8›ïÜsÞó¾ï÷ÝN8D@NýÏs¡%øõñ‘ÆGÉçóÍÍÍy!Dåߤµ±Up–H$‡Ã !¼ééé`Ç(AÅó({îÍBBÕ£LLLÐ{í­éÏ¿ŸããÛ×·ÆÆÆºS©Tvii©Ä&ç:8%«¶l‹²S¢Y—tw´299Éìƒq¼ —Þ~Ÿ™™™ÕÁÁÁ®¾¾¾@&z0€c[{/h?sŠþîvú{Îa9÷_átK„s¯`š_­ŒŽŽÆÃLŽÐ4Agì4‰ g¹–èÅr<~šO£‡44¡!´]/_EJ‰i~¢%‘ç”8Ûãò+ÝܸÜåx<øcu_[š¦!… ëâPÓü¦D 6Ù!ÖÚÄÕÁ^ÞNP°÷/¢&³Ÿgþ·$w?ùåû´D# ¿:Ä{ïÞ¦¥)Ìæ.(¥J¢¤_©ÇÔÔÔ]Ã0)e)™L¦gggà år™'YÒéUР«ý ­mm”ÜÊÞw¾T(uЈ………åh4ú·a]×ËBˆR`¹Že@)N5G‰FM¥ê¯ØÙÙ)år¹­x<¾m†ŸËådp™znÉŽm!¥Ü ª¾¤ê×$zºWgïg³ÙÊÜÜ\GöAÙ±±í ðœ6üjµ\ññ*>J)Ürõ€þÏõ³ó\·T¬3°ñýÀÏ© ÒY;=ÆÎgQJ GžÀu:°Š»¬­­ðÙ#ÇO!!””[0˜Só@™ŒÇ—÷îñúÍΟ“J&¿#ê-­”RžçU³étº`Ûvõ?0°qœ"(pl°­]ôŽ® –——Y__Ø0g•ª*¥ìíímû©ÁÇ —¡†|±XÀ²,"‘È“gó™LFmnn2??ï:'>ôO<þš‚ü.m4ìþIEND®B`‚agave-0.4.7/pixmaps/16x16/0000777000175000017500000000000011224443301012052 500000000000000agave-0.4.7/pixmaps/16x16/Makefile.in0000644000175000017500000002577411224442712014057 00000000000000# Makefile.in generated by automake 1.10.2 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # 2003, 2004, 2005, 2006, 2007, 2008 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@ pkglibdir = $(libdir)/@PACKAGE@ pkgincludedir = $(includedir)/@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 = : subdir = pixmaps/16x16 DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \ $(top_srcdir)/configure.ac 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 = SOURCES = DIST_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 = `echo $$p | sed -e 's|^.*/||'`; am__installdirs = "$(DESTDIR)$(iconsdir)" iconsDATA_INSTALL = $(INSTALL_DATA) DATA = $(icons_DATA) $(noinst_DATA) DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ AGAVE_CFLAGS = @AGAVE_CFLAGS@ AGAVE_ICONDIR = @AGAVE_ICONDIR@ AGAVE_LIBS = @AGAVE_LIBS@ AGAVE_LOCALEDIR = @AGAVE_LOCALEDIR@ AGAVE_PALETTEDIR = @AGAVE_PALETTEDIR@ AGAVE_UIDIR = @AGAVE_UIDIR@ ALL_LINGUAS = @ALL_LINGUAS@ AMTAR = @AMTAR@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ AWK = @AWK@ CAIRO_RING_CFLAGS = @CAIRO_RING_CFLAGS@ CAIRO_RING_LIBS = @CAIRO_RING_LIBS@ CATALOGS = @CATALOGS@ CATOBJEXT = @CATOBJEXT@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPPFLAGS = @CPPFLAGS@ CPPUNIT_CFLAGS = @CPPUNIT_CFLAGS@ CPPUNIT_CONFIG = @CPPUNIT_CONFIG@ CPPUNIT_LIBS = @CPPUNIT_LIBS@ CXX = @CXX@ CXXCPP = @CXXCPP@ CXXDEPMODE = @CXXDEPMODE@ CXXFLAGS = @CXXFLAGS@ CYGPATH_W = @CYGPATH_W@ DATADIRNAME = @DATADIRNAME@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ DISTCHECK_CONFIGURE_FLAGS = @DISTCHECK_CONFIGURE_FLAGS@ DOC_USER_FORMATS = @DOC_USER_FORMATS@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ GCONFMM_CFLAGS = @GCONFMM_CFLAGS@ GCONFMM_LIBS = @GCONFMM_LIBS@ GCONFTOOL = @GCONFTOOL@ GCONF_SCHEMA_CONFIG_SOURCE = @GCONF_SCHEMA_CONFIG_SOURCE@ GCONF_SCHEMA_FILE_DIR = @GCONF_SCHEMA_FILE_DIR@ GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ GIT_PATH = @GIT_PATH@ GMOFILES = @GMOFILES@ GMSGFMT = @GMSGFMT@ GNOME_CFLAGS = @GNOME_CFLAGS@ GNOME_LIBS = @GNOME_LIBS@ GREP = @GREP@ GTKMM_CFLAGS = @GTKMM_CFLAGS@ GTKMM_LIBS = @GTKMM_LIBS@ HELP_DIR = @HELP_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@ LDFLAGS = @LDFLAGS@ LIBGLADEMM_CFLAGS = @LIBGLADEMM_CFLAGS@ LIBGLADEMM_LIBS = @LIBGLADEMM_LIBS@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LN_S = @LN_S@ LTLIBOBJS = @LTLIBOBJS@ MAKEINFO = @MAKEINFO@ MKDIR_P = @MKDIR_P@ MKINSTALLDIRS = @MKINSTALLDIRS@ MSGFMT = @MSGFMT@ MSGFMT_OPTS = @MSGFMT_OPTS@ MSGMERGE = @MSGMERGE@ OBJEXT = @OBJEXT@ OMF_DIR = @OMF_DIR@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PACKAGE_WEBSITE = @PACKAGE_WEBSITE@ PATH_SEPARATOR = @PATH_SEPARATOR@ PKG_CONFIG = @PKG_CONFIG@ POFILES = @POFILES@ POSUB = @POSUB@ PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@ PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@ PRINTING_CFLAGS = @PRINTING_CFLAGS@ PRINTING_LIBS = @PRINTING_LIBS@ RANLIB = @RANLIB@ SED = @SED@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ SORT = @SORT@ STRIP = @STRIP@ TR = @TR@ UNIQ = @UNIQ@ USE_NLS = @USE_NLS@ VERSION = @VERSION@ XGETTEXT = @XGETTEXT@ 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_CXX = @ac_ct_CXX@ 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_alias = @build_alias@ builddir = @builddir@ datadir = @datadir@ datarootdir = @datarootdir@ docdir = @docdir@ dvidir = @dvidir@ exec_prefix = @exec_prefix@ host_alias = @host_alias@ htmldir = @htmldir@ includedir = @includedir@ infodir = @infodir@ install_sh = @install_sh@ libdir = @libdir@ libexecdir = @libexecdir@ localedir = @localedir@ localstatedir = @localstatedir@ 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@ themedir = $(datadir)/icons/hicolor size = 16x16 context = apps iconsdir = $(themedir)/$(size)/$(context) icons_DATA = \ agave.png noinst_DATA = EXTRA_DIST = \ $(icons_DATA) \ $(noinst_DATA) all: all-am .SUFFIXES: $(srcdir)/Makefile.in: $(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) --gnu pixmaps/16x16/Makefile'; \ cd $(top_srcdir) && \ $(AUTOMAKE) --gnu pixmaps/16x16/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: $(am__configure_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(ACLOCAL_M4): $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh install-iconsDATA: $(icons_DATA) @$(NORMAL_INSTALL) test -z "$(iconsdir)" || $(MKDIR_P) "$(DESTDIR)$(iconsdir)" @list='$(icons_DATA)'; for p in $$list; do \ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ f=$(am__strip_dir) \ echo " $(iconsDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(iconsdir)/$$f'"; \ $(iconsDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(iconsdir)/$$f"; \ done uninstall-iconsDATA: @$(NORMAL_UNINSTALL) @list='$(icons_DATA)'; for p in $$list; do \ f=$(am__strip_dir) \ echo " rm -f '$(DESTDIR)$(iconsdir)/$$f'"; \ rm -f "$(DESTDIR)$(iconsdir)/$$f"; \ done 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 $(srcdir)/$$file && test $$d != $(srcdir); then \ cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ fi; \ cp -pR $$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 $(DATA) installdirs: for dir in "$(DESTDIR)$(iconsdir)"; 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) 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 mostlyclean-am distclean: distclean-am -rm -f Makefile distclean-am: clean-am distclean-generic dvi: dvi-am dvi-am: html: html-am info: info-am info-am: install-data-am: install-iconsDATA install-dvi: install-dvi-am 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 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 pdf: pdf-am pdf-am: ps: ps-am ps-am: uninstall-am: uninstall-iconsDATA .MAKE: install-am install-strip .PHONY: all all-am check check-am clean clean-generic distclean \ distclean-generic 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-iconsDATA 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 pdf pdf-am ps ps-am uninstall \ uninstall-am uninstall-iconsDATA # 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: agave-0.4.7/pixmaps/16x16/Makefile.am0000644000175000017500000000030710760701126014030 00000000000000themedir = $(datadir)/icons/hicolor size = 16x16 context = apps iconsdir = $(themedir)/$(size)/$(context) icons_DATA = \ agave.png noinst_DATA = EXTRA_DIST = \ $(icons_DATA) \ $(noinst_DATA) agave-0.4.7/pixmaps/16x16/agave.png0000755000175000017500000000137610760701126013577 00000000000000‰PNG  IHDRóÿasBIT|dˆ pHYs × ×B(›xtEXtSoftwarewww.inkscape.org›î<{IDAT8ÒÍKTQÆñï9÷Î{§§´ÌÒ@Ë2 +Ü$DAT‹2„¨m‹ EP›hã"Ú´K"ЄŠõ/´*ja‹ E¤Ô¢Âuƹ3÷ÞóÒ¢7ó¥Eü6Ïá|8ð;XkY8ÇSwÿÉÒ<êòÎ,Ó/›%€"ðg°wÈ;¿Ò¥SW…·"ÐÖÙä9RÞ8q'}yñÙ‘Ô¾¹LêÅŠ€NÀ©e¨Ëå3Öp¥wÐë8xOøÇnùŽvžYMÇo`¿Û±P!˜Ð#ðÝLFUÅÐ…kŽ“«ú#ù†ìÙîCm¾QØ…/Ýßï^üU$UK\«ÁKy˜D4åÜǾŸîر·)PñÀ5‰Heë½ë=—Ü>£9í²–£:£,ÆX‚ MLÔ׺kƒLbEŒÂœ|è5W¥ã¸¦¥3¬kÉì3-͢Œ¶h«É7d…‚$Ö”gªd…R|T¡ì“•é¸4öf$©5Í~> ÙVœšAiƒQ •¦®>q¤(NÏR(~£qKݪÍ7¥Ã‚ø*U'å «'?V("°Ö›ˆ¬Q ƒŠ ^à055Í|9¤½£•í][Ü8´T¾™q™„ö~eÒÖ¢’¥:£‰BCQ*D(eÒavn–$´ìܽ•Üꀱ×Å0ª˜ùî©y¥B†Ë_£Äó0_0L©–cd ŠŸ#:»[qÝßæÓÛ"3á¤5ö¶°öÇF¶•瀛@ HK¿¾Í!·A’É4·¯ÅM9ŒNU¾~(I£íáÑaõü7ðYt{€ž\“Øì¦E€•/W¶‚]ŸÔôk¹;:¬æþþ'ß2)Wi†1jíIEND®B`‚agave-0.4.7/config.sub0000755000175000017500000007763110712511433011524 00000000000000#! /bin/sh # Configuration validation subroutine script. # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, # 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, # Inc. timestamp='2007-01-18' # 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 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. # 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 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* | \ 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) os= basic_machine=$1 ;; -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 \ | m32c | m32r | m32rle | m68000 | m68k | m88k \ | maxq | mb | microblaze | mcore | mep \ | mips | mipsbe | mipseb | mipsel | mipsle \ | mips16 \ | mips64 | mips64el \ | mips64vr | mips64vrel \ | mips64orion | mips64orionel \ | mips64vr4100 | mips64vr4100el \ | mips64vr4300 | mips64vr4300el \ | mips64vr5000 | mips64vr5000el \ | mips64vr5900 | mips64vr5900el \ | mipsisa32 | mipsisa32el \ | mipsisa32r2 | mipsisa32r2el \ | mipsisa64 | mipsisa64el \ | mipsisa64r2 | mipsisa64r2el \ | mipsisa64sb1 | mipsisa64sb1el \ | mipsisa64sr71k | mipsisa64sr71kel \ | mipstx39 | mipstx39el \ | mn10200 | mn10300 \ | mt \ | msp430 \ | nios | nios2 \ | ns16k | ns32k \ | or32 \ | pdp10 | pdp11 | pj | pjl \ | powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \ | pyramid \ | score \ | sh | sh[1234] | sh[24]a | 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 \ | v850 | v850e \ | we32k \ | x86 | xc16x | xscale | xscalee[bl] | xstormy16 | xtensa \ | z8k) basic_machine=$basic_machine-unknown ;; m6811 | m68hc11 | m6812 | m68hc12) # 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-* \ | m32c-* | m32r-* | m32rle-* \ | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \ | m88110-* | m88k-* | maxq-* | mcore-* \ | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \ | mips16-* \ | mips64-* | mips64el-* \ | mips64vr-* | mips64vrel-* \ | mips64orion-* | mips64orionel-* \ | 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-* \ | sh-* | sh[1234]-* | sh[24]a-* | 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-* \ | tron-* \ | v850-* | v850e-* | vax-* \ | we32k-* \ | x86-* | x86_64-* | xc16x-* | xps100-* | xscale-* | xscalee[bl]-* \ | xstormy16-* | xtensa-* \ | ymp-* \ | z8k-*) ;; # 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 ;; aux) basic_machine=m68k-apple os=-aux ;; balance) basic_machine=ns32k-sequent os=-dynix ;; c90) basic_machine=c90-cray os=-unicos ;; 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 ;; cr16c) basic_machine=cr16c-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 ;; 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 ;; m88k-omron*) basic_machine=m88k-omron ;; magnum | m3230) basic_machine=mips-mips os=-sysv ;; merlin) basic_machine=ns32k-utek os=-sysv ;; mingw32) basic_machine=i386-pc os=-mingw32 ;; 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 ;; 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 ;; 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 ;; 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[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. -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* | -sunos | -sunos[34]*\ | -hpux* | -unos* | -osf* | -luna* | -dgux* | -solaris* | -sym* \ | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \ | -aos* \ | -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* \ | -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*) # 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 ;; -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 ;; -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: agave-0.4.7/intltool-extract.in0000644000175000017500000005565411224420535013407 00000000000000#!@INTLTOOL_PERL@ -w # -*- Mode: perl; indent-tabs-mode: nil; c-basic-offset: 4 -*- # # The Intltool Message Extractor # # Copyright (C) 2000-2001, 2003 Free Software Foundation. # # Intltool 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. # # Intltool 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., 675 Mass Ave, Cambridge, MA 02139, 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. # # Authors: Kenneth Christiansen # Darin Adler # ## Release information my $PROGRAM = "intltool-extract"; my $PACKAGE = "intltool"; my $VERSION = "0.37.1"; ## Loaded modules use strict; use File::Basename; use Getopt::Long; ## Scalars used by the option stuff my $TYPE_ARG = "0"; my $LOCAL_ARG = "0"; my $HELP_ARG = "0"; my $VERSION_ARG = "0"; my $UPDATE_ARG = "0"; my $QUIET_ARG = "0"; my $SRCDIR_ARG = "."; my $FILE; my $OUTFILE; my $gettext_type = ""; my $input; my %messages = (); my %loc = (); my %count = (); my %comments = (); my $strcount = 0; my $XMLCOMMENT = ""; ## Use this instead of \w for XML files to handle more possible characters. my $w = "[-A-Za-z0-9._:]"; ## Always print first $| = 1; ## Handle options GetOptions ( "type=s" => \$TYPE_ARG, "local|l" => \$LOCAL_ARG, "help|h" => \$HELP_ARG, "version|v" => \$VERSION_ARG, "update" => \$UPDATE_ARG, "quiet|q" => \$QUIET_ARG, "srcdir=s" => \$SRCDIR_ARG, ) or &error; &split_on_argument; ## Check for options. ## This section will check for the different options. sub split_on_argument { if ($VERSION_ARG) { &version; } elsif ($HELP_ARG) { &help; } elsif ($LOCAL_ARG) { &place_local; &extract; } elsif ($UPDATE_ARG) { &place_normal; &extract; } elsif (@ARGV > 0) { &place_normal; &message; &extract; } else { &help; } } sub place_normal { $FILE = $ARGV[0]; $OUTFILE = "$FILE.h"; my $dirname = dirname ($OUTFILE); if (! -d "$dirname" && $dirname ne "") { system ("mkdir -p $dirname"); } } sub place_local { $FILE = $ARGV[0]; $OUTFILE = fileparse($FILE, ()); if (!-e "tmp/") { system("mkdir tmp/"); } $OUTFILE = "./tmp/$OUTFILE.h" } sub determine_type { if ($TYPE_ARG =~ /^gettext\/(.*)/) { $gettext_type=$1 } } ## Sub for printing release information sub version{ print <<_EOF_; ${PROGRAM} (${PACKAGE}) $VERSION Copyright (C) 2000, 2003 Free Software Foundation, Inc. Written by Kenneth Christiansen, 2000. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. _EOF_ exit; } ## Sub for printing usage information sub help { print <<_EOF_; Usage: ${PROGRAM} [OPTION]... [FILENAME] Generates a header file from an XML source file. It grabs all strings between <_translatable_node> and its end tag in XML files. Read manpage (man ${PROGRAM}) for more info. --type=TYPE Specify the file type of FILENAME. Currently supports: "gettext/glade", "gettext/ini", "gettext/keys" "gettext/rfc822deb", "gettext/schemas", "gettext/scheme", "gettext/xml", "gettext/quoted", "gettext/quotedxml" -l, --local Writes output into current working directory (conflicts with --update) --update Writes output into the same directory the source file reside (conflicts with --local) --srcdir Root of the source tree -v, --version Output version information and exit -h, --help Display this help and exit -q, --quiet Quiet mode Report bugs to http://bugzilla.gnome.org/ (product name "$PACKAGE") or send email to . _EOF_ exit; } ## Sub for printing error messages sub error{ print STDERR "Try `${PROGRAM} --help' for more information.\n"; exit; } sub message { print "Generating C format header file for translation.\n" unless $QUIET_ARG; } sub extract { &determine_type; &convert; open OUT, ">$OUTFILE"; binmode (OUT) if $^O eq 'MSWin32'; &msg_write; close OUT; print "Wrote $OUTFILE\n" unless $QUIET_ARG; } sub convert { ## Reading the file { local (*IN); local $/; #slurp mode open (IN, "<$SRCDIR_ARG/$FILE") || die "can't open $SRCDIR_ARG/$FILE: $!"; $input = ; } &type_ini if $gettext_type eq "ini"; &type_keys if $gettext_type eq "keys"; &type_xml if $gettext_type eq "xml"; &type_glade if $gettext_type eq "glade"; &type_scheme if $gettext_type eq "scheme"; &type_schemas if $gettext_type eq "schemas"; &type_rfc822deb if $gettext_type eq "rfc822deb"; &type_quoted if $gettext_type eq "quoted"; &type_quotedxml if $gettext_type eq "quotedxml"; } sub entity_decode_minimal { local ($_) = @_; s/'/'/g; # ' s/"/"/g; # " s/&/&/g; return $_; } sub entity_decode { local ($_) = @_; s/'/'/g; # ' s/"/"/g; # " s/<//g; s/&/&/g; return $_; } sub escape_char { return '\"' if $_ eq '"'; return '\n' if $_ eq "\n"; return '\\\\' if $_ eq '\\'; return $_; } sub escape { my ($string) = @_; return join "", map &escape_char, split //, $string; } sub type_ini { ### For generic translatable desktop files ### while ($input =~ /^(#(.+)\n)?^_.*=(.*)$/mg) { if (defined($2)) { $comments{$3} = $2; } $messages{$3} = []; } } sub type_keys { ### For generic translatable mime/keys files ### while ($input =~ /^\s*_\w+=(.*)$/mg) { $messages{$1} = []; } } sub type_xml { ### For generic translatable XML files ### my $tree = readXml($input); parseTree(0, $tree); } sub print_var { my $var = shift; my $vartype = ref $var; if ($vartype =~ /ARRAY/) { my @arr = @{$var}; print "[ "; foreach my $el (@arr) { print_var($el); print ", "; } print "] "; } elsif ($vartype =~ /HASH/) { my %hash = %{$var}; print "{ "; foreach my $key (keys %hash) { print "$key => "; print_var($hash{$key}); print ", "; } print "} "; } else { print $var; } } # Same syntax as getAttributeString in intltool-merge.in.in, similar logic (look for ## differences comment) sub getAttributeString { my $sub = shift; my $do_translate = shift || 1; my $language = shift || ""; my $translate = shift; my $result = ""; foreach my $e (reverse(sort(keys %{ $sub }))) { my $key = $e; my $string = $sub->{$e}; my $quote = '"'; $string =~ s/^[\s]+//; $string =~ s/[\s]+$//; if ($string =~ /^'.*'$/) { $quote = "'"; } $string =~ s/^['"]//g; $string =~ s/['"]$//g; ## differences from intltool-merge.in.in if ($key =~ /^_/) { $comments{entity_decode($string)} = $XMLCOMMENT if $XMLCOMMENT; $messages{entity_decode($string)} = []; $$translate = 2; } ## differences end here from intltool-merge.in.in $result .= " $key=$quote$string$quote"; } return $result; } # Verbatim copy from intltool-merge.in.in sub getXMLstring { my $ref = shift; my $spacepreserve = shift || 0; my @list = @{ $ref }; my $result = ""; my $count = scalar(@list); my $attrs = $list[0]; my $index = 1; $spacepreserve = 1 if ((exists $attrs->{"xml:space"}) && ($attrs->{"xml:space"} =~ /^["']?preserve["']?$/)); $spacepreserve = 0 if ((exists $attrs->{"xml:space"}) && ($attrs->{"xml:space"} =~ /^["']?default["']?$/)); while ($index < $count) { my $type = $list[$index]; my $content = $list[$index+1]; if (! $type ) { # We've got CDATA if ($content) { # lets strip the whitespace here, and *ONLY* here $content =~ s/\s+/ /gs if (!$spacepreserve); $result .= $content; } } elsif ( "$type" ne "1" ) { # We've got another element $result .= "<$type"; $result .= getAttributeString(@{$content}[0], 0); # no nested translatable elements if ($content) { my $subresult = getXMLstring($content, $spacepreserve); if ($subresult) { $result .= ">".$subresult . ""; } else { $result .= "/>"; } } else { $result .= "/>"; } } $index += 2; } return $result; } # Verbatim copy from intltool-merge.in.in, except for MULTIPLE_OUTPUT handling removed # Translate list of nodes if necessary sub translate_subnodes { my $fh = shift; my $content = shift; my $language = shift || ""; my $singlelang = shift || 0; my $spacepreserve = shift || 0; my @nodes = @{ $content }; my $count = scalar(@nodes); my $index = 0; while ($index < $count) { my $type = $nodes[$index]; my $rest = $nodes[$index+1]; traverse($fh, $type, $rest, $language, $spacepreserve); $index += 2; } } # Based on traverse() in intltool-merge.in.in sub traverse { my $fh = shift; # unused, to allow us to sync code between -merge and -extract my $nodename = shift; my $content = shift; my $language = shift || ""; my $spacepreserve = shift || 0; if ($nodename && "$nodename" eq "1") { $XMLCOMMENT = $content; } elsif ($nodename) { # element my @all = @{ $content }; my $attrs = shift @all; my $translate = 0; my $outattr = getAttributeString($attrs, 1, $language, \$translate); if ($nodename =~ /^_/) { $translate = 1; $nodename =~ s/^_//; } my $lookup = ''; $spacepreserve = 0 if ((exists $attrs->{"xml:space"}) && ($attrs->{"xml:space"} =~ /^["']?default["']?$/)); $spacepreserve = 1 if ((exists $attrs->{"xml:space"}) && ($attrs->{"xml:space"} =~ /^["']?preserve["']?$/)); if ($translate) { $lookup = getXMLstring($content, $spacepreserve); if (!$spacepreserve) { $lookup =~ s/^\s+//s; $lookup =~ s/\s+$//s; } if ($lookup && $translate != 2) { $comments{$lookup} = $XMLCOMMENT if $XMLCOMMENT; $messages{$lookup} = []; } elsif ($translate == 2) { translate_subnodes($fh, \@all, $language, 1, $spacepreserve); } } else { $XMLCOMMENT = ""; my $count = scalar(@all); if ($count > 0) { my $index = 0; while ($index < $count) { my $type = $all[$index]; my $rest = $all[$index+1]; traverse($fh, $type, $rest, $language, $spacepreserve); $index += 2; } } } $XMLCOMMENT = ""; } } # Verbatim copy from intltool-merge.in.in, $fh for compatibility sub parseTree { my $fh = shift; my $ref = shift; my $language = shift || ""; my $name = shift @{ $ref }; my $cont = shift @{ $ref }; while (!$name || "$name" eq "1") { $name = shift @{ $ref }; $cont = shift @{ $ref }; } my $spacepreserve = 0; my $attrs = @{$cont}[0]; $spacepreserve = 1 if ((exists $attrs->{"xml:space"}) && ($attrs->{"xml:space"} =~ /^["']?preserve["']?$/)); traverse($fh, $name, $cont, $language, $spacepreserve); } # Verbatim copy from intltool-merge.in.in sub intltool_tree_comment { my $expat = shift; my $data = $expat->original_string(); my $clist = $expat->{Curlist}; my $pos = $#$clist; $data =~ s/^$//s; push @$clist, 1 => $data; } # Verbatim copy from intltool-merge.in.in sub intltool_tree_cdatastart { my $expat = shift; my $clist = $expat->{Curlist}; my $pos = $#$clist; push @$clist, 0 => $expat->original_string(); } # Verbatim copy from intltool-merge.in.in sub intltool_tree_cdataend { my $expat = shift; my $clist = $expat->{Curlist}; my $pos = $#$clist; $clist->[$pos] .= $expat->original_string(); } # Verbatim copy from intltool-merge.in.in sub intltool_tree_char { my $expat = shift; my $text = shift; my $clist = $expat->{Curlist}; my $pos = $#$clist; # Use original_string so that we retain escaped entities # in CDATA sections. # if ($pos > 0 and $clist->[$pos - 1] eq '0') { $clist->[$pos] .= $expat->original_string(); } else { push @$clist, 0 => $expat->original_string(); } } # Verbatim copy from intltool-merge.in.in sub intltool_tree_start { my $expat = shift; my $tag = shift; my @origlist = (); # Use original_string so that we retain escaped entities # in attribute values. We must convert the string to an # @origlist array to conform to the structure of the Tree # Style. # my @original_array = split /\x/, $expat->original_string(); my $source = $expat->original_string(); # Remove leading tag. # $source =~ s|^\s*<\s*(\S+)||s; # Grab attribute key/value pairs and push onto @origlist array. # while ($source) { if ($source =~ /^\s*([\w:-]+)\s*[=]\s*["]/) { $source =~ s|^\s*([\w:-]+)\s*[=]\s*["]([^"]*)["]||s; push @origlist, $1; push @origlist, '"' . $2 . '"'; } elsif ($source =~ /^\s*([\w:-]+)\s*[=]\s*[']/) { $source =~ s|^\s*([\w:-]+)\s*[=]\s*[']([^']*)[']||s; push @origlist, $1; push @origlist, "'" . $2 . "'"; } else { last; } } my $ol = [ { @origlist } ]; push @{ $expat->{Lists} }, $expat->{Curlist}; push @{ $expat->{Curlist} }, $tag => $ol; $expat->{Curlist} = $ol; } # Copied from intltool-merge.in.in and added comment handler. sub readXml { my $xmldoc = shift || return; my $ret = eval 'require XML::Parser'; if(!$ret) { die "You must have XML::Parser installed to run $0\n\n"; } my $xp = new XML::Parser(Style => 'Tree'); $xp->setHandlers(Char => \&intltool_tree_char); $xp->setHandlers(Start => \&intltool_tree_start); $xp->setHandlers(CdataStart => \&intltool_tree_cdatastart); $xp->setHandlers(CdataEnd => \&intltool_tree_cdataend); ## differences from intltool-merge.in.in $xp->setHandlers(Comment => \&intltool_tree_comment); ## differences end here from intltool-merge.in.in my $tree = $xp->parse($xmldoc); #print_var($tree); # Hello thereHowdydo # would be: # [foo, [{}, 1, "comment", head, [{id => "a"}, 0, "Hello ", em, [{}, 0, "there"]], bar, # [{}, 0, "Howdy", ref, [{}]], 0, "do" ] ] return $tree; } sub type_schemas { ### For schemas XML files ### # FIXME: We should handle escaped < (less than) while ($input =~ / \s* (\s*(?:\s*)?(.*?)\s*<\/default>\s*)? (\s*(?:\s*)?(.*?)\s*<\/short>\s*)? (\s*(?:\s*)?(.*?)\s*<\/long>\s*)? <\/locale> /sgx) { my @totranslate = ($3,$6,$9); my @eachcomment = ($2,$5,$8); foreach (@totranslate) { my $currentcomment = shift @eachcomment; next if !$_; s/\s+/ /g; $messages{entity_decode_minimal($_)} = []; $comments{entity_decode_minimal($_)} = $currentcomment if (defined($currentcomment)); } } } sub type_rfc822deb { ### For rfc822-style Debian configuration files ### my $lineno = 1; my $type = ''; while ($input =~ /\G(.*?)(^|\n)(_+)([^:]+):[ \t]*(.*?)(?=\n\S|$)/sg) { my ($pre, $newline, $underscore, $tag, $text) = ($1, $2, $3, $4, $5); while ($pre =~ m/\n/g) { $lineno ++; } $lineno += length($newline); my @str_list = rfc822deb_split(length($underscore), $text); for my $str (@str_list) { $strcount++; $messages{$str} = []; $loc{$str} = $lineno; $count{$str} = $strcount; my $usercomment = ''; while($pre =~ s/(^|\n)#([^\n]*)$//s) { $usercomment = "\n" . $2 . $usercomment; } $comments{$str} = $tag . $usercomment; } $lineno += ($text =~ s/\n//g); } } sub rfc822deb_split { # Debian defines a special way to deal with rfc822-style files: # when a value contain newlines, it consists of # 1. a short form (first line) # 2. a long description, all lines begin with a space, # and paragraphs are separated by a single dot on a line # This routine returns an array of all paragraphs, and reformat # them. # When first argument is 2, the string is a comma separated list of # values. my $type = shift; my $text = shift; $text =~ s/^[ \t]//mg; return (split(/, */, $text, 0)) if $type ne 1; return ($text) if $text !~ /\n/; $text =~ s/([^\n]*)\n//; my @list = ($1); my $str = ''; for my $line (split (/\n/, $text)) { chomp $line; if ($line =~ /^\.\s*$/) { # New paragraph $str =~ s/\s*$//; push(@list, $str); $str = ''; } elsif ($line =~ /^\s/) { # Line which must not be reformatted $str .= "\n" if length ($str) && $str !~ /\n$/; $line =~ s/\s+$//; $str .= $line."\n"; } else { # Continuation line, remove newline $str .= " " if length ($str) && $str !~ /\n$/; $str .= $line; } } $str =~ s/\s*$//; push(@list, $str) if length ($str); return @list; } sub type_quoted { while ($input =~ /\"(([^\"]|\\\")*[^\\\"])\"/g) { my $message = $1; my $before = $`; $message =~ s/\\\"/\"/g; $before =~ s/[^\n]//g; $messages{$message} = []; $loc{$message} = length ($before) + 2; } } sub type_quotedxml { while ($input =~ /\"(([^\"]|\\\")*[^\\\"])\"/g) { my $message = $1; my $before = $`; $message =~ s/\\\"/\"/g; $message = entity_decode($message); $before =~ s/[^\n]//g; $messages{$message} = []; $loc{$message} = length ($before) + 2; } } sub type_glade { ### For translatable Glade XML files ### my $tags = "label|title|text|format|copyright|comments|preview_text|tooltip|message"; while ($input =~ /<($tags)>([^<]+)<\/($tags)>/sg) { # Glade sometimes uses tags that normally mark translatable things for # little bits of non-translatable content. We work around this by not # translating strings that only includes something like label4 or window1. $messages{entity_decode($2)} = [] unless $2 =~ /^(window|label|dialog)[0-9]+$/; } while ($input =~ /(..[^<]*)<\/items>/sg) { for my $item (split (/\n/, $1)) { $messages{entity_decode($item)} = []; } } ## handle new glade files while ($input =~ /<(property|atkproperty|col)\s+[^>]*translatable\s*=\s*"yes"(?:\s+[^>]*comments\s*=\s*"([^"]*)")?[^>]*>([^<]+)<\/\1>/sg) { $messages{entity_decode($3)} = [] unless $3 =~ /^(window|label)[0-9]+$/; if (defined($2) and !($3 =~ /^(window|label)[0-9]+$/)) { $comments{entity_decode($3)} = entity_decode($2) ; } } while ($input =~ /]*)"\s+description="([^>]+)"\/>/sg) { $messages{entity_decode_minimal($2)} = []; } } sub type_scheme { my ($line, $i, $state, $str, $trcomment, $char); for $line (split(/\n/, $input)) { $i = 0; $state = 0; # 0 - nothing, 1 - string, 2 - translatable string while ($i < length($line)) { if (substr($line,$i,1) eq "\"") { if ($state == 2) { $comments{$str} = $trcomment if ($trcomment); $messages{$str} = []; $str = ''; $state = 0; $trcomment = ""; } elsif ($state == 1) { $str = ''; $state = 0; $trcomment = ""; } else { $state = 1; $str = ''; if ($i>0 && substr($line,$i-1,1) eq '_') { $state = 2; } } } elsif (!$state) { if (substr($line,$i,1) eq ";") { $trcomment = substr($line,$i+1); $trcomment =~ s/^;*\s*//; $i = length($line); } elsif ($trcomment && substr($line,$i,1) !~ /\s|\(|\)|_/) { $trcomment = ""; } } else { if (substr($line,$i,1) eq "\\") { $char = substr($line,$i+1,1); if ($char ne "\"" && $char ne "\\") { $str = $str . "\\"; } $i++; } $str = $str . substr($line,$i,1); } $i++; } } } sub msg_write { my @msgids; if (%count) { @msgids = sort { $count{$a} <=> $count{$b} } keys %count; } else { @msgids = sort keys %messages; } for my $message (@msgids) { my $offsetlines = 1; $offsetlines++ if $message =~ /%/; if (defined ($comments{$message})) { while ($comments{$message} =~ m/\n/g) { $offsetlines++; } } print OUT "# ".($loc{$message} - $offsetlines). " \"$FILE\"\n" if defined $loc{$message}; print OUT "/* ".$comments{$message}." */\n" if defined $comments{$message}; print OUT "/* xgettext:no-c-format */\n" if $message =~ /%/; my @lines = split (/\n/, $message, -1); for (my $n = 0; $n < @lines; $n++) { if ($n == 0) { print OUT "char *s = N_(\""; } else { print OUT " \""; } print OUT escape($lines[$n]); if ($n < @lines - 1) { print OUT "\\n\"\n"; } else { print OUT "\");\n"; } } } } agave-0.4.7/NEWS0000644000175000017500000001641310760701126010232 00000000000000=================== Agave 0.4.5 =================== 2008-01-28 Bugfix release * #10897: Missing info on creating palettes * #10853: Wrong icon in the .desktop file (Yavor Doganov) =================== Agave 0.4.4 =================== 2008-01-14 Bugfix release * Added tango-style icons (Vinicius Depizzol) New or Updated Translations * sv =================== Agave 0.4.3 =================== 2007-05-24 Another bugfix release * tweaked the Tetrad theme to be a true tetrad theme * Fixed issue of warnings on first run * Build fixes * Improved the user manual * Fix the Tango palette New or Updated Translations * de * fr * nl =================== Agave 0.4.2 =================== 2007-02-15 This is basically a maintenance release that fixes a few bugs and annoyances and adds a couple minor features. * Added a dependency on libglademm and use glade for laying out the main window instead of hand-coding everything * Draw color swatches with cairo instead of GDK, enabling some slightly nicer-looking color swatches. * Remember the width of the favorites pane between sessions * Performance improvements in palette parsing and switching between palettes * New User Manual for Agave, though it's still pretty basic and unfinished. Bugfixes * Actually close the 'About' window when the 'close' button is clicked Translations * cz (ZbynÄ›k MrkviÄka) * zh_TW (Cheng-Wei Chien) =================== Agave 0.4.1 =================== 2006-09-24 * Moved user configuration directory from ~/.agave to ~/.local/share/agave to reduce home directory dotfile pollution. Configuration files will be migrated automatically. * Added the ability to use different palette files. 4 palette files are shipped by default (Websafe, GNOME icon palette, Tango palette, and Visibone palette). Palettes are standard Gimp Palette files (.gpl) and can be added by dropping a file in ~/.local/share/agave/palettes Bugfixes * Fixed an issue when compiling with g++ 4.1 * Improve handling of removing multiple colors from the favorites list Build * Building from git now requires Intltool 0.35 Translations * updated German translation (Martin Ereth) * Added Italian translation (Sergio Durzu) * Added Swedish translation (Daniel Nylander) =================== Agave 0.4.0 =================== 2006-07-17 * Renamed application to Agave * Colors in favorites list can now be renamed * Added Catalan translation (thanks Xisco) * Make the rgb(...) and hsv(...) color descriptions lowercase Bugfixes * Bump gtkmm requirement to 2.8.0 (bug # 5665) * Display triads scheme at startup (fixed #5699) * Set sensitivity of 'remove' and 'clear favorites' buttons at startup Build * Added a configure switch to enable more compiler warnings (including werror) * Add a debug mode switch to configure.in (no optimizations) =================== Colorscheme 0.3.91 =================== 2006-04-02 * Improved the monochromatic colorscheme algorithm to produce better results * The Palette is now shown by default * Display a tooltip when hovering over colors in the palette * When dragging a color, change the drag icon to a block of color * Make gconfmm and libgnome* dependencies optional to make it easier to build on windows - Added some basic Windows installation instructions to the README * When built with gconfmm support, remembers your last selected colorscheme type and reloads it the next time you start the application * New translations: Dutch (nl), German (de) * Minor bug fixes =================== Colorscheme 0.3.90 =================== 2006-02-17 * Added basic drag and drop support - You can drop from any application that provides an application/x-color target (such as the Gimp color selector) - You can drag a color from Colorscheme to any application that accepts a text target (e.g. Gedit) or an application/x-color target (e.g. the Gimp or the GNOME desktop background) * Added the ability to export your favorite colors list as a Gimp Palette file * Remembers your last viewed color and automatically loads it on startup * Remembers your window size between sessions * Added support for pasting a textual description of a color from the clipboard. Supported formats include hex string style colors (e.g. #FFFFFF) and all named colors that are understood by Gtk * Add support for selecting multiple colors in the favorites list for removing multiple colors at once * Removed dependency on GnomeVFS * Added dependency on GConfmm =================== Colorscheme 0.3.1 =================== 11-25-05 * fix to configure.in so it will indicate failure if boost is not found =================== Colorscheme 0.3 =================== 11-22-05 * Added a color palette to the main window for easier color selection. * Favorite colors list is maintained across sessions (Adds dependency on gnome-vfsmm >= 2.6) * Internal rework for increased efficiency (adds dependency on boost shared_ptr) * Numerous bugfixes * Added Russian Translation (ru) thanks to Roxana Chernogolova * Added Spanish(Spain) Translation (es_ES) thanks to Xoan Sampaiño * Added Czech Translation (cs) thanks to Zbynek Mrkvicka =================== Colorscheme 0.2.2.2 =================== 11-03-05 * added Brazilian Portugese translation =================== Colorscheme 0.2.2.1 =================== 10-18-05 * Increased default window size * Added bulgarian translation ================= Colorscheme 0.2.2 ================= 9-20-05 * Favorites list should now display a small swatch of the color instead of just the hex string * Clicking on a color swatch automatically makes that color the selected color * Add a history feature similar to web browsers -- allows user to go back to the last color they selected, etc. * Fixes to improve building on other platforms like FreeBSD * Fixed problem with random color button where it would only generate a different color every second (fixed #2831) * Fixed a bunch of unit tests * Added keyboard shortcuts to a few more things: * Random Color: ctrl+R * Add to Favorites: ctrl+D * Remove selected from favorites: ctrl+X * History back/forward: alt+left / alt+right ================= Colorscheme 0.2.1 ================= 8-28-05 * Added the ability to bookmark your favorite colors (only lasts until you quit the application at this point) * Added the ability to generate a random Colorscheme by simply pressing a button on the toolbar ================= Colorscheme 0.2 ================= 8-22-05 * Display more information in the color swatch * Improve readability of text on swatches by setting it to white on dark colors * Added Toolbar with buttons for modifying the brightness and saturation of the colorscheme * Moved the Color and Scheme selectors below the color swatches * Added ability to copy the hex strings of each color swatch * Minor memory enhancements ================= Colorscheme 0.1 ================= 7-23-05 * Initial Release agave-0.4.7/po/0000777000175000017500000000000011224443301010222 500000000000000agave-0.4.7/po/de.po0000644000175000017500000002005410760701102011067 00000000000000# German translation of agave. # Copyright (C) 2005 Jonathon Jongsma # This file is distributed under the same license as the agave package. # # Martin Ereth , 2006. msgid "" msgstr "" "Project-Id-Version: GNOME Colorscheme 0.3.91\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2007-02-16 17:36+0100\n" "PO-Revision-Date: 2007-02-16 16:27+0100\n" "Last-Translator: Martin Ereth \n" "Language-Team: German \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../data/agave.desktop.in.in.h:1 ../data/ui/agave.glade.h:2 msgid "Agave" msgstr "Agave" #: ../data/agave.desktop.in.in.h:2 msgid "Generate color schemes" msgstr "Farbkombinationen erzeugen" #: ../src/gcs-mainwindow.cc:145 msgid "Choose a Color and a Scheme Type" msgstr "Wählen Sie eine Farbe und einen Kombinationstyp" #. The File Menu #: ../src/gcs-mainwindow-actions.cc:94 msgid "_File" msgstr "_Datei" #: ../src/gcs-mainwindow-actions.cc:98 msgid "_Save Scheme..." msgstr "Kombination _Speichern..." #: ../src/gcs-mainwindow-actions.cc:99 msgid "Save current scheme as a GIMP Palette file" msgstr "Aktuelle Kombination als _GIMP Palette speichen" #: ../src/gcs-mainwindow-actions.cc:102 msgid "E_xport Favorites..." msgstr "Favoriten e_xportieren" #: ../src/gcs-mainwindow-actions.cc:103 msgid "Export favorite colors as a GIMP Palette file" msgstr "Bevorzugte Farben als GIMP Palette exportieren" #. The Edit Menu #: ../src/gcs-mainwindow-actions.cc:109 msgid "_Edit" msgstr "_Bearbeiten" #. The Help menu #: ../src/gcs-mainwindow-actions.cc:114 msgid "_Help" msgstr "_Hilfe" #: ../src/gcs-mainwindow-actions.cc:115 msgid "_Contents" msgstr "_Inhalt" #: ../src/gcs-mainwindow-actions.cc:115 msgid "Open the Agave manual" msgstr "Das Agave-Handbuch öffnen" #. Bookmark Actions #: ../src/gcs-mainwindow-actions.cc:135 msgid "Fa_vorites" msgstr "_Favoriten" #: ../src/gcs-mainwindow-actions.cc:137 msgid "Add to Favorites" msgstr "Zu den Favoriten hinzufügen" #: ../src/gcs-mainwindow-actions.cc:137 msgid "Add the current color to favorites" msgstr "Aktuelle Farbe zu den Favoriten hinzufügen" #: ../src/gcs-mainwindow-actions.cc:141 msgid "Remove Selected" msgstr "Markierte entfernen" #: ../src/gcs-mainwindow-actions.cc:141 msgid "Remove the selected color from your favorites" msgstr "Ausgewählte Farben aus den Favoriten entfernen" #: ../src/gcs-mainwindow-actions.cc:146 msgid "_Clear All" msgstr "Alle _löschen" #: ../src/gcs-mainwindow-actions.cc:146 msgid "Clear the list of favorite colors" msgstr "Liste der Favoriten löschen" #: ../src/gcs-mainwindow-actions.cc:152 msgid "_Lighten Scheme" msgstr "_Heller" #: ../src/gcs-mainwindow-actions.cc:152 msgid "Increase the brightness" msgstr "Die Helligkeit erhöhen" #: ../src/gcs-mainwindow-actions.cc:156 msgid "_Darken Scheme" msgstr "_Dunkler" #: ../src/gcs-mainwindow-actions.cc:156 msgid "Decrease the brightness" msgstr "Die Helligkeit verringern" #: ../src/gcs-mainwindow-actions.cc:160 msgid "_Saturate Scheme" msgstr "_sattere Farbe" #: ../src/gcs-mainwindow-actions.cc:160 msgid "Increase the saturation" msgstr "Die Sättigung erhöhen" #: ../src/gcs-mainwindow-actions.cc:164 msgid "D_esaturate Scheme" msgstr "_weniger satte Farbe" #: ../src/gcs-mainwindow-actions.cc:164 msgid "Decrease the saturation" msgstr "Die Sättigung verringern" #: ../src/gcs-mainwindow-actions.cc:169 msgid "_Random" msgstr "Z_ufällig" #: ../src/gcs-mainwindow-actions.cc:169 msgid "Generate a random color" msgstr "Eine zufällige Farbe erzeugen" #: ../src/dialogs/gcs-about-window.cc:52 msgid "Project Website" msgstr "Webseite des Projekts" #: ../src/dialogs/gcs-about-window.cc:61 msgid "A colorscheme designer for the GNOME desktop" msgstr "Ein Erzeuger von Farbkombinationen für den GNOME-Desktop" #. Translators: change this to your name, separate multiple names with \n #: ../src/dialogs/gcs-about-window.cc:88 msgid "translator-credits" msgstr "Martin Ereth " #: ../src/widgets/gcs-schemeselector.cc:43 msgid "Complements" msgstr "Komplementäre Farben" #: ../src/widgets/gcs-schemeselector.cc:46 msgid "Split-Complements" msgstr "zwei halb-komplementäre Farben" #: ../src/widgets/gcs-schemeselector.cc:49 msgid "Triads" msgstr "Dreiergruppe" #: ../src/widgets/gcs-schemeselector.cc:52 msgid "Tetrads" msgstr "Vierergruppe" #: ../src/widgets/gcs-schemeselector.cc:55 msgid "Analogous" msgstr "sinngemäße Farben" #: ../src/widgets/gcs-schemeselector.cc:58 msgid "Monochromatic" msgstr "Einfarbig" #: ../src/widgets/gcs-bookmarklist.cc:77 msgid "Favorites" msgstr "Favoriten" #: ../src/widgets/gcs-bookmarklist.cc:121 msgid "_Rename Color" msgstr "_Umbenennen" #. The instructions for the rename dialog #: ../src/widgets/gcs-bookmarklist.cc:387 msgid "Enter a new name:" msgstr "Einen neuen Namen eingeben:" #. the title of the color rename dialog #: ../src/widgets/gcs-bookmarklist.cc:391 ../data/ui/agave.glade.h:3 msgid "Rename Color" msgstr "Umbenennen" #: ../src/widgets/gcs-paletteview.cc:77 msgid "Palette" msgstr "Palette" #: ../src/widgets/gcs-textswatch.cc:122 msgid "Double-click to select" msgstr "Doppel-Klicken zum Auswählen" #. namespace Widgets #. namespace gcs #: ../data/agave.schemas.in.h:1 msgid "Palette Expanded" msgstr "erweiterte Palette" #: ../data/agave.schemas.in.h:2 msgid "" "Saves the last height of the application window so that it starts where you " "left it last time." msgstr "" "Speichert die Höhe des Programmfensters, damit es nächstes Mal dort startet," "wo Sie es das letzte Mal gelassen haben." #: ../data/agave.schemas.in.h:3 msgid "" "Saves the last scheme type selected which is loaded next time the " "application is started. This value is an enumeration value." msgstr "" "Speichert den Kombinationstyp, damit dieser Typ beim nächsten Startgeladen " "wird. Der Wert muss vom Typ 'enumeration' sein." #: ../data/agave.schemas.in.h:4 msgid "" "Saves the last selected color which is loaded next time the application is " "started. Color format is a hex string (e.g. '#ffffff')." msgstr "" "Speichert die letzte markierte Farbe, um sie beim nächsten Mal " "wiederherzustellen. Angabe im hex-Format (z.B. '#ffffff')." #: ../data/agave.schemas.in.h:5 msgid "" "Saves the last width of the application window so that it starts where you " "left it last time." msgstr "" "Speichert die letzte Breite des Programmfensters, damit es nächstes Mal dort " "startet, wo Sie es das letzte Mal gelassen haben." #: ../data/agave.schemas.in.h:6 msgid "" "Saves the size of the favorites pane so that it starts where you left it " "last time." msgstr "" "Speichert die Größe der Favoriten, damit es nächstes Mal dort startet,wo Sie " "es das letzte mal gelassen haben." #: ../data/agave.schemas.in.h:7 msgid "" "Saves whether the palette area along the bottom of the application window is " "expanded or collapsed." msgstr "" "Speichert, ob die Palette entlang dem unteren Rand des Programmfensters " "erweitert oder eingefahren ist." #: ../data/agave.schemas.in.h:8 msgid "The last color selected" msgstr "Die letzte markierte Farbe" #: ../data/agave.schemas.in.h:9 msgid "The last save directory" msgstr "Das letzte Speichern-Verzeichnis" #: ../data/agave.schemas.in.h:10 msgid "The last scheme type selected" msgstr "Der letzte ausgewählte Kombinationstyp" #: ../data/agave.schemas.in.h:11 msgid "The main application window height" msgstr "Die Höhe des Haupt-Programmfensters" #: ../data/agave.schemas.in.h:12 msgid "The main application window width" msgstr "Die Breite des Haupt-Programmfensters" #: ../data/agave.schemas.in.h:13 msgid "" "When exporting a scheme or palette, this key keeps track of where the user " "last saved the file." msgstr "" "Wenn eine Kombination oder eine Palette gespeichert wird, merkt sich dieser " "Schlüssel das Verzeichnis der gespeicherten Datei." #: ../data/agave.schemas.in.h:14 msgid "Width of the favorites area" msgstr "Breite des Favoriten-Feldes" #: ../data/ui/agave.glade.h:1 msgid "Enter A New Name:" msgstr "Einen neuen Namen eingeben:" agave-0.4.7/po/LINGUAS0000644000175000017500000000015511224442705011173 00000000000000# keep sorted alphabetically, one locale per line # bg ca cs de es_ES fr gl_ES it ja nl pl pt_BR ru sv zh_TW agave-0.4.7/po/pl.po0000644000175000017500000001146010760701235011122 00000000000000# Polish translation of agave. # 2008 PaweÅ‚ Åupkowski # This file is distributed under the same license as the agave package. # msgid "" msgstr "" "Project-Id-Version: GNOME Agave 0.4.2\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2007-03-12 09:10-0500\n" "PO-Revision-Date: 2007-03-12 09:10-0500\n" "Last-Translator: PaweÅ‚ Åupkowski \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../data/agave.desktop.in.in.h:1 msgid "Agave" msgstr "Agave" #: ../data/agave.desktop.in.in.h:2 msgid "Generate color schemes" msgstr "Wygeneruj zestaw kolorów" #: ../src/gcs-mainwindow.cc:191 msgid "Choose a Color and a Scheme Type" msgstr "Wybierz kolor i typ zestawu kolorów" #. The File Menu #: ../src/gcs-mainwindow-actions.cc:93 msgid "_File" msgstr "_Plik" #: ../src/gcs-mainwindow-actions.cc:97 msgid "_Save Scheme..." msgstr "_Zapisz zestaw kolorów..." #: ../src/gcs-mainwindow-actions.cc:98 msgid "Save current scheme as a GIMP Palette file" msgstr "Zapisz bieżący zestaw jako paletÄ™ kolorów GIMPa" #: ../src/gcs-mainwindow-actions.cc:101 msgid "E_xport Favorites..." msgstr "E_ksportuj ulubione" #: ../src/gcs-mainwindow-actions.cc:102 msgid "Export favorite colors as a GIMP Palette file" msgstr "Wyeksportuj ulubione jako paletÄ™ kolorów GIMPa" #. The Edit Menu #: ../src/gcs-mainwindow-actions.cc:108 msgid "_Edit" msgstr "_Edycja" #. The Help menu #: ../src/gcs-mainwindow-actions.cc:113 msgid "_Help" msgstr "_Pomoc" #. Bookmark Actions #: ../src/gcs-mainwindow-actions.cc:133 msgid "Fa_vorites" msgstr "U_lubione" #: ../src/gcs-mainwindow-actions.cc:135 msgid "Add to Favorites" msgstr "Dodaj do ulubionych" #: ../src/gcs-mainwindow-actions.cc:135 msgid "Add the current color to favorites" msgstr "Dodaj bieżący kolor do ulubionych" #: ../src/gcs-mainwindow-actions.cc:139 msgid "Remove Selected" msgstr "UsuÅ„ zaznaczone" #: ../src/gcs-mainwindow-actions.cc:139 msgid "Remove the selected color from your favorites" msgstr "UsuÅ„ zaznaczony kolor z ulubionych" #: ../src/gcs-mainwindow-actions.cc:144 msgid "_Clear All" msgstr "_Wyczyść" #: ../src/gcs-mainwindow-actions.cc:144 msgid "Clear the list of favorite colors" msgstr "Wyczyść listÄ™ ulubionych kolorów" #: ../src/gcs-mainwindow-actions.cc:150 msgid "_Lighten Scheme" msgstr "RozjaÅ›nij zestaw" #: ../src/gcs-mainwindow-actions.cc:150 msgid "Increase the brightness" msgstr "RozjaÅ›nij" #: ../src/gcs-mainwindow-actions.cc:154 msgid "_Darken Scheme" msgstr "_Przyciemnij zestaw" #: ../src/gcs-mainwindow-actions.cc:154 msgid "Decrease the brightness" msgstr "Przyciemnij zestaw" #: ../src/gcs-mainwindow-actions.cc:158 msgid "_Saturate Scheme" msgstr "Przyciemnij" #: ../src/gcs-mainwindow-actions.cc:158 msgid "Increase the saturation" msgstr "ZwiÄ™ksz nasycenie" #: ../src/gcs-mainwindow-actions.cc:162 msgid "D_esaturate Scheme" msgstr "Redukcja nasycenia kolorów zestawu" #: ../src/gcs-mainwindow-actions.cc:162 msgid "Decrease the saturation" msgstr "Zmniejsz nasycenie" #: ../src/gcs-mainwindow-actions.cc:167 msgid "_Random" msgstr "_Losowo" #: ../src/gcs-mainwindow-actions.cc:167 msgid "Generate a random color" msgstr "Wygeneruj losowy kolor" #: ../src/dialogs/gcs-about-window.cc:52 msgid "Project Website" msgstr "Strona domowa projektu" #: ../src/dialogs/gcs-about-window.cc:61 msgid "A colorscheme designer for the GNOME desktop" msgstr "Projektant zestawów kolorów dla Å›rodowiska GNOME" #. Translators: change this to your name, separate multiple names with \n #: ../src/dialogs/gcs-about-window.cc:88 msgid "translator-credits" msgstr "PaweÅ‚ Åupkowski " #: ../src/widgets/gcs-schemeselector.cc:43 msgid "Complements" msgstr "DopeÅ‚nienie" #: ../src/widgets/gcs-schemeselector.cc:46 msgid "Split-Complements" msgstr "Rozdzielone dopeÅ‚nienia" #: ../src/widgets/gcs-schemeselector.cc:49 msgid "Triads" msgstr "Triady" #: ../src/widgets/gcs-schemeselector.cc:52 msgid "Tetrads" msgstr "Tetrady" #: ../src/widgets/gcs-schemeselector.cc:55 msgid "Analogous" msgstr "Analogiczne" #: ../src/widgets/gcs-schemeselector.cc:58 msgid "Monochromatic" msgstr "Monochromatyczny" #: ../src/widgets/gcs-bookmarklist.cc:77 msgid "Favorites" msgstr "Ulubione" #: ../src/widgets/gcs-bookmarklist.cc:121 msgid "_Rename Color" msgstr "_ZmieÅ„ nazwÄ™ koloru" #. The instructions for the rename dialog #: ../src/widgets/gcs-bookmarklist.cc:387 msgid "Enter a new name:" msgstr "Wpisz nowÄ… nazwÄ™:" #. the title of the color rename dialog #: ../src/widgets/gcs-bookmarklist.cc:391 msgid "Rename Color" msgstr "ZmieÅ„ nazwÄ™ koloru" #: ../src/widgets/gcs-paletteview.cc:64 msgid "Palette" msgstr "Paleta" #: ../src/widgets/gcs-textswatch.cc:124 msgid "Double-click to select" msgstr "Kliknij podwójnie aby wybrać" agave-0.4.7/po/POTFILES.skip0000644000175000017500000000002610663715205012264 00000000000000data/agave.desktop.in agave-0.4.7/po/gl_ES.po0000644000175000017500000000763211224443073011505 00000000000000# Spanish/Spain translation of GNOME Colorscheme. # Copyright (C) 2005 Jonathon Jongsma # This file is distributed under the same license as the GNOME Colorscheme package. # Xoan Sampaiño , 2005. # # msgid "" msgstr "" "Project-Id-Version: GNOME Colorscheme 0.2.2.1\n" "Report-Msgid-Bugs-To: Jonathon Jongsma \n" "POT-Creation-Date: 2005-10-26 23:27-0200\n" "PO-Revision-Date: 2005-11-14 11:22+0100\n" "Last-Translator: Xoan Sampaiño Villagra \n" "Language-Team: Spanish/Spain \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit" #: ../data/colorscheme.desktop.in.h:1 msgid "Generate color schemes" msgstr "Xenere esquemas de cor" #: ../src/gcs-mainwindow.cc:171 msgid "Choose a Color and a Scheme Type" msgstr "Elixa unha color e un tipo de esquema" #. Create some actions for the File Menu #: ../src/gcs-mainwindow.cc:254 msgid "_File" msgstr "_Arquivo" #: ../src/gcs-mainwindow.cc:257 msgid "_Save Scheme" msgstr "_Gardar esquema" #. Create some actions for the Edit Menu #: ../src/gcs-mainwindow.cc:263 msgid "_Edit" msgstr "_Editar" #. Create some actions for the help menu #: ../src/gcs-mainwindow.cc:268 msgid "_Help" msgstr "A_xuda" #. m_refActionGroup->get_action("HistoryFwd")->property_is_important() = true; #. Bookmark Actions #: ../src/gcs-mainwindow.cc:289 msgid "Fa_vorites" msgstr "_Favoritos" #: ../src/gcs-mainwindow.cc:291 msgid "Add to Favorites" msgstr "Engadir a favoritos" #: ../src/gcs-mainwindow.cc:291 msgid "Add the current color to favorites" msgstr "Engadir o color actual a favoritos" #: ../src/gcs-mainwindow.cc:295 msgid "Remove Selected" msgstr "Eliminar seleccionado" #: ../src/gcs-mainwindow.cc:295 msgid "Remove the selected color from your favorites" msgstr "Eliminar a cor seleccionada de favoritos" #: ../src/gcs-mainwindow.cc:300 msgid "_Clear All" msgstr "_Limpar Todo" #: ../src/gcs-mainwindow.cc:300 msgid "Clear the list of favorite colors" msgstr "Limpar a lista de cores favoritos" #: ../src/gcs-mainwindow.cc:306 msgid "_Lighten Scheme" msgstr "A_clarar esquema" #: ../src/gcs-mainwindow.cc:306 msgid "Increase the brightness" msgstr "Aumentar o brillo" #: ../src/gcs-mainwindow.cc:310 msgid "_Darken Scheme" msgstr "_Escurecer esquema" #: ../src/gcs-mainwindow.cc:310 msgid "Decrease the brightness" msgstr "Reducir o brillo" #: ../src/gcs-mainwindow.cc:314 msgid "_Saturate Scheme" msgstr "_Saturar esquema" #: ../src/gcs-mainwindow.cc:314 msgid "Increase the saturation" msgstr "Aumentar a saturación" #: ../src/gcs-mainwindow.cc:318 msgid "D_esaturate Scheme" msgstr "_Desaturar esquema" #: ../src/gcs-mainwindow.cc:318 msgid "Decrease the saturation" msgstr "Reducir a saturación" #: ../src/gcs-mainwindow.cc:323 msgid "_Random" msgstr "_Aleatorio" #: ../src/gcs-mainwindow.cc:323 msgid "Generate a random color" msgstr "Xenerar unha cor aleatoria" #: ../src/dialogs/gcs-about-window.cc:43 msgid "Project Website" msgstr "Páxina do proyecto" #: ../src/dialogs/gcs-about-window.cc:51 msgid "A program for the GNOME desktop for generating colorschemes" msgstr "Un programa para o escritorio GNOME para xenerar esquemas de color" #. Translators: change this to your name, separate multiple names with \n #: ../src/dialogs/gcs-about-window.cc:78 msgid "translation-credits" msgstr "Francisco Dieguez " #: ../src/widgets/gcs-schemeselector.cc:43 msgid "Complements" msgstr "Complementarios" #: ../src/widgets/gcs-schemeselector.cc:46 msgid "Split-Complements" msgstr "Complementarios partidos" #: ../src/widgets/gcs-schemeselector.cc:49 msgid "Triads" msgstr "Tríadas" #: ../src/widgets/gcs-schemeselector.cc:52 msgid "Tetrads" msgstr "Tétradas" #: ../src/widgets/gcs-schemeselector.cc:55 msgid "Analogous" msgstr "Análogos" #: ../src/widgets/gcs-schemeselector.cc:58 msgid "Monochromatic" msgstr "Monocromático" agave-0.4.7/po/ca.po0000644000175000017500000001123110626437552011077 00000000000000# Catalan translation of GNOME Colorscheme. # Copyright (C) 2005 Jonathon Jongsma # This file is distributed under the same license as the GNOME Colorscheme package. # Xisco Bonet , 2006. # # msgid "" msgstr "" "Project-Id-Version: GNOME Colorscheme 0.2.2.1\n" "Report-Msgid-Bugs-To: Jonathon Jongsma \n" "POT-Creation-Date: 2005-10-26 23:27-0200\n" "PO-Revision-Date: 2005-11-14 11:22+0100\n" "Last-Translator: Xisco Bonet \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" #: ../data/colorscheme.desktop.in.h:1 msgid "Generate color schemes" msgstr "Genera esquemes de color" #: ../src/gcs-mainwindow.cc:171 msgid "Choose a Color and a Scheme Type" msgstr "Tria un color y un tipus d'esquema" #. Create some actions for the File Menu #: ../src/gcs-mainwindow.cc:254 msgid "_File" msgstr "_Fitxer" #: ../src/gcs-mainwindow.cc:257 msgid "_Save Scheme" msgstr "_Guarda esquema" #: ../src/gcs-mainwindow-actions.cc:98 msgid "Save current scheme as a GIMP Palette file" msgstr "Guarda esquema actual com a paleta de GIMP" #: ../src/gcs-mainwindow-actions.cc:101 msgid "E_xport Favorites..." msgstr "E_xporta preferits" #: ../src/gcs-mainwindow-actions.cc:102 msgid "Export favorite colors as a GIMP Palette file" msgstr "Exporta colors preferits com a paleta de GIMP" #. Create some actions for the Edit Menu #: ../src/gcs-mainwindow.cc:263 msgid "_Edit" msgstr "_Edita" #. Create some actions for the help menu #: ../src/gcs-mainwindow.cc:268 msgid "_Help" msgstr "A_juda" #. m_refActionGroup->get_action("HistoryFwd")->property_is_important() = true; #. Bookmark Actions #: ../src/gcs-mainwindow.cc:289 msgid "Fa_vorites" msgstr "_Preferits" #: ../src/gcs-mainwindow.cc:291 msgid "Add to Favorites" msgstr "Afegeix a preferits" #: ../src/gcs-mainwindow.cc:291 msgid "Add the current color to favorites" msgstr "Afegeix el color actual a preferits" #: ../src/gcs-mainwindow.cc:295 msgid "Remove Selected" msgstr "Elimina seleccionat" #: ../src/gcs-mainwindow.cc:295 msgid "Remove the selected color from your favorites" msgstr "Elimina el color seleccionat de preferits" #: ../src/gcs-mainwindow.cc:300 msgid "_Clear All" msgstr "_Neteja tot" #: ../src/gcs-mainwindow.cc:300 msgid "Clear the list of favorite colors" msgstr "Neteja la llista de colors preferits" #: ../src/gcs-mainwindow.cc:306 msgid "_Lighten Scheme" msgstr "A_clara esquema" #: ../src/gcs-mainwindow.cc:306 msgid "Increase the brightness" msgstr "Augmenta la brillantor" #: ../src/gcs-mainwindow.cc:310 msgid "_Darken Scheme" msgstr "_Enfosqueix l'esquema" #: ../src/gcs-mainwindow.cc:310 msgid "Decrease the brightness" msgstr "Redueix la brillantor" #: ../src/gcs-mainwindow.cc:314 msgid "_Saturate Scheme" msgstr "_Satura l'esquema" #: ../src/gcs-mainwindow.cc:314 msgid "Increase the saturation" msgstr "Augmenta la saturació" #: ../src/gcs-mainwindow.cc:318 msgid "D_esaturate Scheme" msgstr "_Desatura l'esquema" #: ../src/gcs-mainwindow.cc:318 msgid "Decrease the saturation" msgstr "Redueix la saturacció" #: ../src/gcs-mainwindow.cc:323 msgid "_Random" msgstr "_Aleatori" #: ../src/gcs-mainwindow.cc:323 msgid "Generate a random color" msgstr "Genera un color aleatori" #: ../src/dialogs/gcs-about-window.cc:43 msgid "Project Website" msgstr "Pàgina del projecte" #: ../src/dialogs/gcs-about-window.cc:51 msgid "A program for the GNOME desktop for generating colorschemes" msgstr "Genera esquemas de color per al gnome" #. Translators: change this to your name, separate multiple names with \n #: ../src/dialogs/gcs-about-window.cc:78 msgid "translation-credits" msgstr "Xisco Bonet " #: ../src/widgets/gcs-schemeselector.cc:43 msgid "Complements" msgstr "Complementaris" #: ../src/widgets/gcs-schemeselector.cc:46 msgid "Split-Complements" msgstr "Complementaris dividits" #: ../src/widgets/gcs-schemeselector.cc:49 msgid "Triads" msgstr "Triadas" #: ../src/widgets/gcs-schemeselector.cc:52 msgid "Tetrads" msgstr "Tetrades" #: ../src/widgets/gcs-schemeselector.cc:55 msgid "Analogous" msgstr "Anàlogs" #: ../src/widgets/gcs-schemeselector.cc:58 msgid "Monochromatic" msgstr "Monocromàtic" #: ../src/widgets/gcs-bookmarklist.cc:58 msgid "Favorites" msgstr "Preferits" #: ../src/widgets/gcs-paletteview.cc:60 msgid "Palette" msgstr "Paleta" #: ../src/widgets/gcs-textswatch.cc:131 msgid "Double-click to select" msgstr "Doble click per seleccionar" agave-0.4.7/po/zh_TW.po0000644000175000017500000001212010663715205011540 00000000000000# Czech translation of colorscheme. # Copyright (C) 2005 THE colorscheme'S COPYRIGHT HOLDER # This file is distributed under the same license as the colorscheme package. # Zbynek Mrkvicka , 2005. # , fuzzy # # msgid "" msgstr "" "Project-Id-Version: Agave 0.4.1\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2006-10-12 19:46+0200\n" "PO-Revision-Date: 2006-12-24 05:23+0800\n" "Last-Translator: Cheng-Wei Chien \n" "Language-Team: Cheng-Wei Chien \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Poedit-Country: TAIWAN\n" "X-Poedit-Language: Chinese\n" "X-Poedit-SourceCharset: utf-8\n" "X-Generator: Pootle 0.10.1\n" #: ../data/agave.desktop.in.in.h:1 msgid "Agave" msgstr "Agave" #: ../data/agave.desktop.in.in.h:2 msgid "Generate color schemes" msgstr "產生色彩é…置檔" #: ../src/gcs-mainwindow.cc:191 msgid "Choose a Color and a Scheme Type" msgstr "è«‹é¸æ“‡ä¸€ç¨®è‰²å½©å’Œé…置型別" #. The File Menu #: ../src/gcs-mainwindow-actions.cc:93 msgid "_File" msgstr "檔案 (_F)" #: ../src/gcs-mainwindow-actions.cc:97 msgid "_Save Scheme..." msgstr "儲存é…置檔 (_S)" #: ../src/gcs-mainwindow-actions.cc:98 msgid "Save current scheme as a GIMP Palette file" msgstr "將目å‰é…ç½®å¦å­˜ç‚º GIMP 色盤檔" #: ../src/gcs-mainwindow-actions.cc:101 msgid "E_xport Favorites..." msgstr "匯出我的最愛 (_x)" #: ../src/gcs-mainwindow-actions.cc:102 msgid "Export favorite colors as a GIMP Palette file" msgstr "匯出我的最愛為 GIMP 色盤檔" #. The Edit Menu #: ../src/gcs-mainwindow-actions.cc:108 msgid "_Edit" msgstr "編輯 (_E)" #. The Help menu #: ../src/gcs-mainwindow-actions.cc:113 msgid "_Help" msgstr "說明 (_H)" #. Bookmark Actions #: ../src/gcs-mainwindow-actions.cc:133 msgid "Fa_vorites" msgstr "我的最愛 (_v)" #: ../src/gcs-mainwindow-actions.cc:135 msgid "Add to Favorites" msgstr "加入我的最愛" #: ../src/gcs-mainwindow-actions.cc:135 msgid "Add the current color to favorites" msgstr "將目å‰è‰²å½©åŠ å…¥æˆ‘çš„æœ€æ„›" #: ../src/gcs-mainwindow-actions.cc:139 msgid "Remove Selected" msgstr "移除所é¸è‰²å½©" #: ../src/gcs-mainwindow-actions.cc:139 msgid "Remove the selected color from your favorites" msgstr "從我的最愛中移除所é¸è‰²å½©" #: ../src/gcs-mainwindow-actions.cc:144 msgid "_Clear All" msgstr "全部清除 (_C)" #: ../src/gcs-mainwindow-actions.cc:144 msgid "Clear the list of favorite colors" msgstr "清除我的最愛色彩列表" #: ../src/gcs-mainwindow-actions.cc:150 msgid "_Lighten Scheme" msgstr "色彩加亮 (_L)" #: ../src/gcs-mainwindow-actions.cc:150 msgid "Increase the brightness" msgstr "增加亮度" #: ../src/gcs-mainwindow-actions.cc:154 msgid "_Darken Scheme" msgstr "色彩變暗 (_D)" #: ../src/gcs-mainwindow-actions.cc:154 msgid "Decrease the brightness" msgstr "減少亮度" #: ../src/gcs-mainwindow-actions.cc:158 msgid "_Saturate Scheme" msgstr "增高飽和度 (_S)" #: ../src/gcs-mainwindow-actions.cc:158 msgid "Increase the saturation" msgstr "增高飽和度" #: ../src/gcs-mainwindow-actions.cc:162 msgid "D_esaturate Scheme" msgstr "é™ä½Žé£½å’Œåº¦ (_e)" #: ../src/gcs-mainwindow-actions.cc:162 msgid "Decrease the saturation" msgstr "é™ä½Žé£½å’Œåº¦" #: ../src/gcs-mainwindow-actions.cc:167 msgid "_Random" msgstr "亂數產生 (_R)" #: ../src/gcs-mainwindow-actions.cc:167 msgid "Generate a random color" msgstr "亂數產生色彩" #: ../src/dialogs/gcs-about-window.cc:51 msgid "Project Website" msgstr "專案網站" #: ../src/dialogs/gcs-about-window.cc:60 msgid "A colorscheme designer for the GNOME desktop" msgstr "GNOME 桌é¢ç’°å¢ƒçš„色彩é…置設計工具" #. Translators: change this to your name, separate multiple names with \n #: ../src/dialogs/gcs-about-window.cc:87 msgid "translator-credits" msgstr "" "Cheng-Wei Chien\n" "" #: ../src/widgets/gcs-schemeselector.cc:42 msgid "Complements" msgstr "互補色" #: ../src/widgets/gcs-schemeselector.cc:45 msgid "Split-Complements" msgstr "分離互補色" #: ../src/widgets/gcs-schemeselector.cc:48 msgid "Triads" msgstr "三色" #: ../src/widgets/gcs-schemeselector.cc:51 msgid "Tetrads" msgstr "四角互補" #: ../src/widgets/gcs-schemeselector.cc:54 msgid "Analogous" msgstr "類比" #: ../src/widgets/gcs-schemeselector.cc:57 msgid "Monochromatic" msgstr "åŒè‰²ç³»" #: ../src/widgets/gcs-bookmarklist.cc:77 msgid "Favorites" msgstr "我的最愛" #: ../src/widgets/gcs-bookmarklist.cc:121 msgid "_Rename Color" msgstr "釿–°å‘½å色彩 (_R)" #. The instructions for the rename dialog #: ../src/widgets/gcs-bookmarklist.cc:387 msgid "Enter a new name:" msgstr "請輸入新å稱:" #. the title of the color rename dialog #: ../src/widgets/gcs-bookmarklist.cc:391 msgid "Rename Color" msgstr "釿–°å‘½å色彩" #: ../src/widgets/gcs-paletteview.cc:64 msgid "Palette" msgstr "色盤" #: ../src/widgets/gcs-textswatch.cc:124 msgid "Double-click to select" msgstr "é€éŽé›™æ“Šé¸å–" #~ msgid "A program for the GNOME desktop for generating colorschemes" #~ msgstr "Program pro generování barevných schémat pro GNOME" agave-0.4.7/po/fr.po0000644000175000017500000001200710760701102011105 00000000000000# French translation of agave. # Copyright (C) 2005-2007 Jonathon Jongsma # This file is distributed under the same license as the agave package. # # Yan Brodeur , 2007. msgid "" msgstr "" "Project-Id-Version: GNOME Agave 0.4.2\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2007-03-12 09:10-0500\n" "PO-Revision-Date: 2007-03-12 09:10-0500\n" "Last-Translator: Yan Brodeur \n" "Language-Team: French \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../data/agave.desktop.in.in.h:1 msgid "Agave" msgstr "Agave" #: ../data/agave.desktop.in.in.h:2 msgid "Generate color schemes" msgstr "Générer des arrangements de couleurs" #: ../src/gcs-mainwindow.cc:191 msgid "Choose a Color and a Scheme Type" msgstr "Choisir une couleur et son type d'arrangement" #. The File Menu #: ../src/gcs-mainwindow-actions.cc:93 msgid "_File" msgstr "_Fichier" #: ../src/gcs-mainwindow-actions.cc:97 msgid "_Save Scheme..." msgstr "_Sauvegarder l'arrangement..." #: ../src/gcs-mainwindow-actions.cc:98 msgid "Save current scheme as a GIMP Palette file" msgstr "Sauvegarder l'arrangement actuel en tant que palette de couleurs GIMP" #: ../src/gcs-mainwindow-actions.cc:101 msgid "E_xport Favorites..." msgstr "E_xporter les favoris" #: ../src/gcs-mainwindow-actions.cc:102 msgid "Export favorite colors as a GIMP Palette file" msgstr "Exporter les couleurs favorites en tant que palette de couleurs GIMP" #. The Edit Menu #: ../src/gcs-mainwindow-actions.cc:108 msgid "_Edit" msgstr "_Édition" #. The Help menu #: ../src/gcs-mainwindow-actions.cc:113 msgid "_Help" msgstr "_Aide" #. Bookmark Actions #: ../src/gcs-mainwindow-actions.cc:133 msgid "Fa_vorites" msgstr "Fa_voris" #: ../src/gcs-mainwindow-actions.cc:135 msgid "Add to Favorites" msgstr "Ajouter aux favoris" #: ../src/gcs-mainwindow-actions.cc:135 msgid "Add the current color to favorites" msgstr "Ajouter la couleur actuelle aux favoris" #: ../src/gcs-mainwindow-actions.cc:139 msgid "Remove Selected" msgstr "Retirer la sélection" #: ../src/gcs-mainwindow-actions.cc:139 msgid "Remove the selected color from your favorites" msgstr "Retirer la couleur sélectionnée de vos favoris" #: ../src/gcs-mainwindow-actions.cc:144 msgid "_Clear All" msgstr "_Vider" #: ../src/gcs-mainwindow-actions.cc:144 msgid "Clear the list of favorite colors" msgstr "Vider la liste des couleurs favorites" #: ../src/gcs-mainwindow-actions.cc:150 msgid "_Lighten Scheme" msgstr "Éclaircir l'arrangement" #: ../src/gcs-mainwindow-actions.cc:150 msgid "Increase the brightness" msgstr "Augmenter l'éclat" #: ../src/gcs-mainwindow-actions.cc:154 msgid "_Darken Scheme" msgstr "_Obscurcir l'arrangement" #: ../src/gcs-mainwindow-actions.cc:154 msgid "Decrease the brightness" msgstr "Diminuer l'éclat" #: ../src/gcs-mainwindow-actions.cc:158 msgid "_Saturate Scheme" msgstr "Saturer l'arrangement" #: ../src/gcs-mainwindow-actions.cc:158 msgid "Increase the saturation" msgstr "Augmenter la saturation" #: ../src/gcs-mainwindow-actions.cc:162 msgid "D_esaturate Scheme" msgstr "Dé_saturer l'arrangement" #: ../src/gcs-mainwindow-actions.cc:162 msgid "Decrease the saturation" msgstr "Diminuer la saturation" #: ../src/gcs-mainwindow-actions.cc:167 msgid "_Random" msgstr "A_léatoire" #: ../src/gcs-mainwindow-actions.cc:167 msgid "Generate a random color" msgstr "Générer une couleur aléatoire" #: ../src/dialogs/gcs-about-window.cc:52 msgid "Project Website" msgstr "Site Web du projet" #: ../src/dialogs/gcs-about-window.cc:61 msgid "A colorscheme designer for the GNOME desktop" msgstr "Un générateur d'arrangements de couleurs pour le bureau GNOME" #. Translators: change this to your name, separate multiple names with \n #: ../src/dialogs/gcs-about-window.cc:88 msgid "translator-credits" msgstr "Yan Brodeur " #: ../src/widgets/gcs-schemeselector.cc:43 msgid "Complements" msgstr "Compléments" #: ../src/widgets/gcs-schemeselector.cc:46 msgid "Split-Complements" msgstr "Compléments divisés" #: ../src/widgets/gcs-schemeselector.cc:49 msgid "Triads" msgstr "Triades" #: ../src/widgets/gcs-schemeselector.cc:52 msgid "Tetrads" msgstr "Tétrades" #: ../src/widgets/gcs-schemeselector.cc:55 msgid "Analogous" msgstr "Analogues" #: ../src/widgets/gcs-schemeselector.cc:58 msgid "Monochromatic" msgstr "Monochromatique" #: ../src/widgets/gcs-bookmarklist.cc:77 msgid "Favorites" msgstr "Favoris" #: ../src/widgets/gcs-bookmarklist.cc:121 msgid "_Rename Color" msgstr "_Renommer la couleur" #. The instructions for the rename dialog #: ../src/widgets/gcs-bookmarklist.cc:387 msgid "Enter a new name:" msgstr "Entrer un nouveau nom:" #. the title of the color rename dialog #: ../src/widgets/gcs-bookmarklist.cc:391 msgid "Rename Color" msgstr "Renommer la couleur" #: ../src/widgets/gcs-paletteview.cc:64 msgid "Palette" msgstr "Palette" #: ../src/widgets/gcs-textswatch.cc:124 msgid "Double-click to select" msgstr "Double-clic pour sélectionner" agave-0.4.7/po/ChangeLog0000644000175000017500000000042710507563756011737 000000000000002005-11-20 Jonathon Jongsma * ru.po: Somehow the file was added with DOS file endings -- converted to unix format. 2005-11-03 Leonardo Ferreira Fontenelle * pt_BR.po: added Brazilian Portugese translation. agave-0.4.7/po/ru.po0000644000175000017500000001054610540646701011143 00000000000000# SOME DESCRIPTIVE TITLE. # Copyright (C) 2005 THE colorschemes'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # Roxana Chernogolova , 2005. # msgid "" msgstr "" "Project-Id-Version: colorscheme-0.2.2.2\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2005-11-04 13:41+0300\n" "PO-Revision-Date: 2005-11-04 15:16+0300\n" "Last-Translator: Roxana Chernogolova \n" "Language-Team: russian \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../data/colorscheme.desktop.in.h:1 msgid "Colorscheme" msgstr "Colorscheme" #: ../data/colorscheme.desktop.in.h:2 msgid "Generate color schemes" msgstr "Создать цветовую Ñхему" #: ../src/gcs-mainwindow.cc:171 msgid "Choose a Color and a Scheme Type" msgstr "Выберите цвет и тип Ñхемы" #. Create some actions for the File Menu #: ../src/gcs-mainwindow.cc:254 msgid "_File" msgstr "_Файл" #: ../src/gcs-mainwindow.cc:257 msgid "_Save Scheme" msgstr "_Сохранить Ñхему" #. Create some actions for the Edit Menu #: ../src/gcs-mainwindow.cc:263 msgid "_Edit" msgstr "_Правка" #. Create some actions for the help menu #: ../src/gcs-mainwindow.cc:268 msgid "_Help" msgstr "_Справка" #. m_refActionGroup->get_action("HistoryFwd")->property_is_important() = true; #. Bookmark Actions #: ../src/gcs-mainwindow.cc:289 msgid "Fa_vorites" msgstr "Из_бранное" #: ../src/gcs-mainwindow.cc:291 msgid "Add to Favorites" msgstr "Добавить в избранное" #: ../src/gcs-mainwindow.cc:291 msgid "Add the current color to favorites" msgstr "Добавить текущий цвет в изобранное" #: ../src/gcs-mainwindow.cc:295 msgid "Remove Selected" msgstr "Удалить выбранный" #: ../src/gcs-mainwindow.cc:295 msgid "Remove the selected color from your favorites" msgstr "Удалить выбранный цвет из избранного" #: ../src/gcs-mainwindow.cc:300 msgid "_Clear All" msgstr "_ОчиÑтить ÑпиÑок" #: ../src/gcs-mainwindow.cc:300 msgid "Clear the list of favorite colors" msgstr "ОчиÑтить ÑпиÑок избранных цветов" #: ../src/gcs-mainwindow.cc:306 msgid "_Lighten Scheme" msgstr "С_ветлее" #: ../src/gcs-mainwindow.cc:306 msgid "Increase the brightness" msgstr "ПовыÑить ÑркоÑть" #: ../src/gcs-mainwindow.cc:310 msgid "_Darken Scheme" msgstr "_Темнее" #: ../src/gcs-mainwindow.cc:310 msgid "Decrease the brightness" msgstr "Уменьшить ÑркоÑть" #: ../src/gcs-mainwindow.cc:314 msgid "_Saturate Scheme" msgstr "_Более наÑыщенно" #: ../src/gcs-mainwindow.cc:314 msgid "Increase the saturation" msgstr "ПовыÑить наÑыщенноÑть" #: ../src/gcs-mainwindow.cc:318 msgid "D_esaturate Scheme" msgstr "М_енее наÑыщенно" #: ../src/gcs-mainwindow.cc:318 msgid "Decrease the saturation" msgstr "Уменьшить наÑыщенноÑть" #: ../src/gcs-mainwindow.cc:323 msgid "_Random" msgstr "Сл_учайный" #: ../src/gcs-mainwindow.cc:323 msgid "Generate a random color" msgstr "Выбрать Ñлучайные цвета" #: ../src/dialogs/gcs-about-window.cc:43 msgid "Project Website" msgstr "Сайт проекта" #: ../src/dialogs/gcs-about-window.cc:51 msgid "A program for the GNOME desktop for generating colorschemes" msgstr "Приложение GNOME Ð´Ð»Ñ ÑÐ¾Ð·Ð´Ð°Ð½Ð¸Ñ Ñ†Ð²ÐµÑ‚Ð¾Ð²Ñ‹Ñ… Ñхем" #. Translators: change this to your name, separate multiple names with \n #: ../src/dialogs/gcs-about-window.cc:78 msgid "translation-credits" msgstr "Roxana Chernogolova " #: ../src/widgets/gcs-schemeselector.cc:43 msgid "Complements" msgstr "ВзаимодополнÑющие (2)" #: ../src/widgets/gcs-schemeselector.cc:46 msgid "Split-Complements" msgstr "ВзаимодполнÑющие (3)" #: ../src/widgets/gcs-schemeselector.cc:49 msgid "Triads" msgstr "Три цвета" #: ../src/widgets/gcs-schemeselector.cc:52 msgid "Tetrads" msgstr "Четыре цвета" #: ../src/widgets/gcs-schemeselector.cc:55 msgid "Analogous" msgstr "Похожие" #: ../src/widgets/gcs-schemeselector.cc:58 msgid "Monochromatic" msgstr "Монохромные" #: ../src/widgets/gcs-bookmarklist.cc:49 msgid "Favorites" msgstr "Избранное" agave-0.4.7/po/pt_BR.po0000644000175000017500000000774110540646701011526 00000000000000# Brazilian Portuguese translation of GNOME Colorscheme. # Copyright (C) 2005 Jonathon Jongsma # This file is distributed under the same license as the GNOME Colorscheme package. # Leonardo Ferreira Fontenelle , 2005. # msgid "" msgstr "" "Project-Id-Version: GNOME Colorscheme 0.2.2.1\n" "Report-Msgid-Bugs-To: Jonathon Jongsma \n" "POT-Creation-Date: 2005-10-26 23:27-0200\n" "PO-Revision-Date: 2005-10-27 02:13-0200\n" "Last-Translator: Leonardo Ferreira Fontenelle \n" "Language-Team: Brazilian Portuguese \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../data/colorscheme.desktop.in.h:1 msgid "Generate color schemes" msgstr "Crie esquemas de cores" #: ../src/gcs-mainwindow.cc:171 msgid "Choose a Color and a Scheme Type" msgstr "Escolha uma cor e um tipo de esquema" #. Create some actions for the File Menu #: ../src/gcs-mainwindow.cc:254 msgid "_File" msgstr "_Arquivo" #: ../src/gcs-mainwindow.cc:257 msgid "_Save Scheme" msgstr "_Salvar Esquema" #. Create some actions for the Edit Menu #: ../src/gcs-mainwindow.cc:263 msgid "_Edit" msgstr "_Editar" #. Create some actions for the help menu #: ../src/gcs-mainwindow.cc:268 msgid "_Help" msgstr "Aj_uda" #. m_refActionGroup->get_action("HistoryFwd")->property_is_important() = true; #. Bookmark Actions #: ../src/gcs-mainwindow.cc:289 msgid "Fa_vorites" msgstr "_Favoritas" #: ../src/gcs-mainwindow.cc:291 msgid "Add to Favorites" msgstr "Adicionar às Favoritas" #: ../src/gcs-mainwindow.cc:291 msgid "Add the current color to favorites" msgstr "Adicionar a cor atual às favoritas" #: ../src/gcs-mainwindow.cc:295 msgid "Remove Selected" msgstr "Remover Selecionada" #: ../src/gcs-mainwindow.cc:295 msgid "Remove the selected color from your favorites" msgstr "Remover a cor selecionada de suas favoritas" #: ../src/gcs-mainwindow.cc:300 msgid "_Clear All" msgstr "_Limpar Tudo" #: ../src/gcs-mainwindow.cc:300 msgid "Clear the list of favorite colors" msgstr "Limpar a lista de cores favoritas" #: ../src/gcs-mainwindow.cc:306 msgid "_Lighten Scheme" msgstr "_Clarear Esquema" #: ../src/gcs-mainwindow.cc:306 msgid "Increase the brightness" msgstr "Aumentar o brilho" #: ../src/gcs-mainwindow.cc:310 msgid "_Darken Scheme" msgstr "_Escurecer Esquema" #: ../src/gcs-mainwindow.cc:310 msgid "Decrease the brightness" msgstr "Diminuir o brilho" #: ../src/gcs-mainwindow.cc:314 msgid "_Saturate Scheme" msgstr "_Saturar Esquema" #: ../src/gcs-mainwindow.cc:314 msgid "Increase the saturation" msgstr "Aumentar a saturação" #: ../src/gcs-mainwindow.cc:318 msgid "D_esaturate Scheme" msgstr "_Desaturar Esquema" #: ../src/gcs-mainwindow.cc:318 msgid "Decrease the saturation" msgstr "Diminuir a saturação" #: ../src/gcs-mainwindow.cc:323 msgid "_Random" msgstr "_Aleatória" #: ../src/gcs-mainwindow.cc:323 msgid "Generate a random color" msgstr "Gerar uma cor aleatória" #: ../src/dialogs/gcs-about-window.cc:43 msgid "Project Website" msgstr "Página do Projeto" #: ../src/dialogs/gcs-about-window.cc:51 msgid "A program for the GNOME desktop for generating colorschemes" msgstr "Um programa para o GNOME para a criação de esquemas de cor" #. Translators: change this to your name, separate multiple names with \n #: ../src/dialogs/gcs-about-window.cc:78 msgid "translation-credits" msgstr "Leonardo Ferreira Fontenelle " #: ../src/widgets/gcs-schemeselector.cc:43 msgid "Complements" msgstr "Complementares" #: ../src/widgets/gcs-schemeselector.cc:46 msgid "Split-Complements" msgstr "Complementares divididas" #: ../src/widgets/gcs-schemeselector.cc:49 msgid "Triads" msgstr "Tríade" #: ../src/widgets/gcs-schemeselector.cc:52 msgid "Tetrads" msgstr "Tétrade" #: ../src/widgets/gcs-schemeselector.cc:55 msgid "Analogous" msgstr "Análogas" #: ../src/widgets/gcs-schemeselector.cc:58 msgid "Monochromatic" msgstr "Monocromático" agave-0.4.7/po/nl.po0000644000175000017500000001767310760701102011125 00000000000000# Dutch translation for Agave # # This file is distributed under the same license as Agave. # # Wouter Bolsterlee , 2006, 2007. # msgid "" msgstr "" "Project-Id-Version: 0.3.90\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2007-02-16 12:28+0100\n" "PO-Revision-Date: 2007-02-16 12:29+0100 \n" "Last-Translator: Wouter Bolsterlee \n" "Language-Team: Dutch \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" # Vrij vertaald voor menu (Wouter Bolsterlee) #: ../data/agave.desktop.in.in.h:1 ../data/ui/agave.glade.h:2 msgid "Agave" msgstr "Agave kleurenschema's" #: ../data/agave.desktop.in.in.h:2 msgid "Generate color schemes" msgstr "Kleurenschema's maken" #: ../src/gcs-mainwindow.cc:145 msgid "Choose a Color and a Scheme Type" msgstr "Kies een kleur en een schematype" #. The File Menu #: ../src/gcs-mainwindow-actions.cc:94 msgid "_File" msgstr "_Bestand" #: ../src/gcs-mainwindow-actions.cc:98 msgid "_Save Scheme..." msgstr "Schema op_slaan…" #: ../src/gcs-mainwindow-actions.cc:99 msgid "Save current scheme as a GIMP Palette file" msgstr "Het huidige schema als GIMP-palet opslaan." #: ../src/gcs-mainwindow-actions.cc:102 msgid "E_xport Favorites..." msgstr "Favorieten e_xporteren…" #: ../src/gcs-mainwindow-actions.cc:103 msgid "Export favorite colors as a GIMP Palette file" msgstr "De favoriete kleuren als GIMP-palet exporteren." #. The Edit Menu #: ../src/gcs-mainwindow-actions.cc:109 msgid "_Edit" msgstr "Be_werken" #. The Help menu #: ../src/gcs-mainwindow-actions.cc:114 msgid "_Help" msgstr "_Hulp" #: ../src/gcs-mainwindow-actions.cc:115 msgid "_Contents" msgstr "I_nhoud" #: ../src/gcs-mainwindow-actions.cc:115 msgid "Open the Agave manual" msgstr "De Agave-handleiding openen" #. Bookmark Actions #: ../src/gcs-mainwindow-actions.cc:135 msgid "Fa_vorites" msgstr "Fa_vorieten" #: ../src/gcs-mainwindow-actions.cc:137 msgid "Add to Favorites" msgstr "Aan favorieten toevoegen" #: ../src/gcs-mainwindow-actions.cc:137 msgid "Add the current color to favorites" msgstr "De huidige kleur aan de favorieten toevoegen" #: ../src/gcs-mainwindow-actions.cc:141 msgid "Remove Selected" msgstr "Geselecteerde verwijderen" #: ../src/gcs-mainwindow-actions.cc:141 msgid "Remove the selected color from your favorites" msgstr "De geselectererde kleur uit de de favorieten verwijderen" #: ../src/gcs-mainwindow-actions.cc:146 msgid "_Clear All" msgstr "Alles _wissen" #: ../src/gcs-mainwindow-actions.cc:146 msgid "Clear the list of favorite colors" msgstr "De lijst met favorieten wissen" #: ../src/gcs-mainwindow-actions.cc:152 msgid "_Lighten Scheme" msgstr "_Lichter maken" #: ../src/gcs-mainwindow-actions.cc:152 msgid "Increase the brightness" msgstr "De helderheid vergroten" #: ../src/gcs-mainwindow-actions.cc:156 msgid "_Darken Scheme" msgstr "_Donkerder maken" #: ../src/gcs-mainwindow-actions.cc:156 msgid "Decrease the brightness" msgstr "De helderheid verlagen" #: ../src/gcs-mainwindow-actions.cc:160 msgid "_Saturate Scheme" msgstr "Ver_zadiging vergroten" #: ../src/gcs-mainwindow-actions.cc:160 msgid "Increase the saturation" msgstr "De verzadiging vergroten" #: ../src/gcs-mainwindow-actions.cc:164 msgid "D_esaturate Scheme" msgstr "V_erzadiging verkleinen" #: ../src/gcs-mainwindow-actions.cc:164 msgid "Decrease the saturation" msgstr "De verzadiging verkleinen" #: ../src/gcs-mainwindow-actions.cc:169 msgid "_Random" msgstr "_Willekeurig" #: ../src/gcs-mainwindow-actions.cc:169 msgid "Generate a random color" msgstr "Een willekeurige kleur kiezen" #: ../src/dialogs/gcs-about-window.cc:52 msgid "Project Website" msgstr "Projectwebsite" #: ../src/dialogs/gcs-about-window.cc:61 msgid "A colorscheme designer for the GNOME desktop" msgstr "Kleurenschema's ontwerpen" #. Translators: change this to your name, separate multiple names with \n #: ../src/dialogs/gcs-about-window.cc:88 msgid "translator-credits" msgstr "" "Wouter Bolsterlee\n" "\n" "Kijk voor meer informatie op http://nl.gnome.org/" #: ../src/widgets/gcs-schemeselector.cc:43 msgid "Complements" msgstr "Complementen" #: ../src/widgets/gcs-schemeselector.cc:46 msgid "Split-Complements" msgstr "Gespleten complementen" #: ../src/widgets/gcs-schemeselector.cc:49 msgid "Triads" msgstr "Drietallen" #: ../src/widgets/gcs-schemeselector.cc:52 msgid "Tetrads" msgstr "Viervouden" #: ../src/widgets/gcs-schemeselector.cc:55 msgid "Analogous" msgstr "Analoog" #: ../src/widgets/gcs-schemeselector.cc:58 msgid "Monochromatic" msgstr "Monochromatisch" #: ../src/widgets/gcs-bookmarklist.cc:77 msgid "Favorites" msgstr "Favorieten" #: ../src/widgets/gcs-bookmarklist.cc:121 msgid "_Rename Color" msgstr "Kleur _hernoemen" #. The instructions for the rename dialog #: ../src/widgets/gcs-bookmarklist.cc:387 msgid "Enter a new name:" msgstr "Nieuwe naam:" #. the title of the color rename dialog #: ../src/widgets/gcs-bookmarklist.cc:391 ../data/ui/agave.glade.h:3 msgid "Rename Color" msgstr "Kleur hernoemen" #: ../src/widgets/gcs-paletteview.cc:77 msgid "Palette" msgstr "Palet" #: ../src/widgets/gcs-textswatch.cc:122 msgid "Double-click to select" msgstr "Dubbelklikken om te selecteren" #. namespace Widgets #. namespace gcs #: ../data/agave.schemas.in.h:1 msgid "Palette Expanded" msgstr "Uitgebreid palet" #: ../data/agave.schemas.in.h:2 msgid "" "Saves the last height of the application window so that it starts where you " "left it last time." msgstr "" "De laatstgebruikte hoogte van het venster, zodat bij de volgende keer " "opstarten dezelfde afmetingen gebruikt worden." #: ../data/agave.schemas.in.h:3 msgid "" "Saves the last scheme type selected which is loaded next time the " "application is started. This value is an enumeration value." msgstr "" "Het laatstgeselecteerde schematype, zodat bij de volgende keer opstarten de " "juiste instelling gebruikt kan worden. Formaat: opsomming." #: ../data/agave.schemas.in.h:4 msgid "" "Saves the last selected color which is loaded next time the application is " "started. Color format is a hex string (e.g. '#ffffff')." msgstr "" "De laatstgeselecteerde kleur, zodat bij de volgende keer opstarten de juiste " "instelling gebruikt kan worden. Voorbeeld: ‘#ffffff’" #: ../data/agave.schemas.in.h:5 msgid "" "Saves the last width of the application window so that it starts where you " "left it last time." msgstr "" "De laatstgebruikte breedte van het venster, zodat bij de volgende keer " "opstarten dezelfde afmetingen gebruikt worden." #: ../data/agave.schemas.in.h:6 msgid "" "Saves the size of the favorites pane so that it starts where you left it " "last time." msgstr "" "De breedte van het favorieten-gebied, zodat bij de volgende keer opstarten " "dezelfde afmetingen gebruikt worden." #: ../data/agave.schemas.in.h:7 msgid "" "Saves whether the palette area along the bottom of the application window is " "expanded or collapsed." msgstr "" "Onthouden of het palet aan de onderkant van het venster is ingeklapt of " "uitgeklapt." #: ../data/agave.schemas.in.h:8 msgid "The last color selected" msgstr "De laatstgeselecteerde kleur" #: ../data/agave.schemas.in.h:9 msgid "The last save directory" msgstr "De map die het laatst is gebruikt voor opslaan" #: ../data/agave.schemas.in.h:10 msgid "The last scheme type selected" msgstr "Het laatstgebruikte schematype" #: ../data/agave.schemas.in.h:11 msgid "The main application window height" msgstr "Hoogte van het toepassingsvenster" #: ../data/agave.schemas.in.h:12 msgid "The main application window width" msgstr "Breedte van het toepassingsvenster" #: ../data/agave.schemas.in.h:13 msgid "" "When exporting a scheme or palette, this key keeps track of where the user " "last saved the file." msgstr "" "Deze instelling houdt bij waar de gebruik de laatste keer schema of palet " "heeft opgeslagen." #: ../data/agave.schemas.in.h:14 msgid "Width of the favorites area" msgstr "Breedte van het favorieten-gebied" #: ../data/ui/agave.glade.h:1 msgid "Enter A New Name:" msgstr "Geef een nieuwe naam:" agave-0.4.7/po/es_ES.po0000644000175000017500000000765410540646701011521 00000000000000# Spanish/Spain translation of GNOME Colorscheme. # Copyright (C) 2005 Jonathon Jongsma # This file is distributed under the same license as the GNOME Colorscheme package. # Xoan Sampaiño , 2005. # # msgid "" msgstr "" "Project-Id-Version: GNOME Colorscheme 0.2.2.1\n" "Report-Msgid-Bugs-To: Jonathon Jongsma \n" "POT-Creation-Date: 2005-10-26 23:27-0200\n" "PO-Revision-Date: 2005-11-14 11:22+0100\n" "Last-Translator: Xoan Sampaiño Villagra \n" "Language-Team: Spanish/Spain \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit" #: ../data/colorscheme.desktop.in.h:1 msgid "Generate color schemes" msgstr "Genere esquemas de color" #: ../src/gcs-mainwindow.cc:171 msgid "Choose a Color and a Scheme Type" msgstr "Elija un color y un tipo de esquema" #. Create some actions for the File Menu #: ../src/gcs-mainwindow.cc:254 msgid "_File" msgstr "_Archivo" #: ../src/gcs-mainwindow.cc:257 msgid "_Save Scheme" msgstr "_Guardar esquema" #. Create some actions for the Edit Menu #: ../src/gcs-mainwindow.cc:263 msgid "_Edit" msgstr "_Editar" #. Create some actions for the help menu #: ../src/gcs-mainwindow.cc:268 msgid "_Help" msgstr "A_yuda" #. m_refActionGroup->get_action("HistoryFwd")->property_is_important() = true; #. Bookmark Actions #: ../src/gcs-mainwindow.cc:289 msgid "Fa_vorites" msgstr "_Favoritos" #: ../src/gcs-mainwindow.cc:291 msgid "Add to Favorites" msgstr "Añadir a favoritos" #: ../src/gcs-mainwindow.cc:291 msgid "Add the current color to favorites" msgstr "Añadir el color actual a favoritos" #: ../src/gcs-mainwindow.cc:295 msgid "Remove Selected" msgstr "Eliminar seleccionado" #: ../src/gcs-mainwindow.cc:295 msgid "Remove the selected color from your favorites" msgstr "Eliminar el color seleccionado de favoritos" #: ../src/gcs-mainwindow.cc:300 msgid "_Clear All" msgstr "_Limpiar Todo" #: ../src/gcs-mainwindow.cc:300 msgid "Clear the list of favorite colors" msgstr "Limpiar la lista de colores favoritos" #: ../src/gcs-mainwindow.cc:306 msgid "_Lighten Scheme" msgstr "A_clarar esquema" #: ../src/gcs-mainwindow.cc:306 msgid "Increase the brightness" msgstr "Aumentar el brillo" #: ../src/gcs-mainwindow.cc:310 msgid "_Darken Scheme" msgstr "_Oscurecer esquema" #: ../src/gcs-mainwindow.cc:310 msgid "Decrease the brightness" msgstr "Reducir el brillo" #: ../src/gcs-mainwindow.cc:314 msgid "_Saturate Scheme" msgstr "_Saturar esquema" #: ../src/gcs-mainwindow.cc:314 msgid "Increase the saturation" msgstr "Aumentar la saturación" #: ../src/gcs-mainwindow.cc:318 msgid "D_esaturate Scheme" msgstr "_Desaturar esquema" #: ../src/gcs-mainwindow.cc:318 msgid "Decrease the saturation" msgstr "Reducir la saturación" #: ../src/gcs-mainwindow.cc:323 msgid "_Random" msgstr "_Aleatorio" #: ../src/gcs-mainwindow.cc:323 msgid "Generate a random color" msgstr "Generar un color aleatorio" #: ../src/dialogs/gcs-about-window.cc:43 msgid "Project Website" msgstr "Página del proyecto" #: ../src/dialogs/gcs-about-window.cc:51 msgid "A program for the GNOME desktop for generating colorschemes" msgstr "Un programa para el escritorio GNOME para generar esquemas de color" #. Translators: change this to your name, separate multiple names with \n #: ../src/dialogs/gcs-about-window.cc:78 msgid "translation-credits" msgstr "Xoan Sampaiño " #: ../src/widgets/gcs-schemeselector.cc:43 msgid "Complements" msgstr "Complementarios" #: ../src/widgets/gcs-schemeselector.cc:46 msgid "Split-Complements" msgstr "Complementarios partidos" #: ../src/widgets/gcs-schemeselector.cc:49 msgid "Triads" msgstr "Tríadas" #: ../src/widgets/gcs-schemeselector.cc:52 msgid "Tetrads" msgstr "Tétradas" #: ../src/widgets/gcs-schemeselector.cc:55 msgid "Analogous" msgstr "Análogos" #: ../src/widgets/gcs-schemeselector.cc:58 msgid "Monochromatic" msgstr "Monocromático" agave-0.4.7/po/cs.po0000644000175000017500000001207411215667234011124 00000000000000# Czech translation of colorscheme. # Copyright (C) 2005 THE colorscheme'S COPYRIGHT HOLDER # This file is distributed under the same license as the colorscheme package. # Zbynek Mrkvicka , 2005. # , fuzzy # # msgid "" msgstr "" "Project-Id-Version: Agave 0.4.1\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2006-10-12 19:46+0200\n" "PO-Revision-Date: 2009-06-16 12:06+0100\n" "Last-Translator: Marek ÄŒernocký \n" "Language-Team: Czech \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Poedit-Country: CZECH REPUBLIC\n" #: ../data/agave.desktop.in.in.h:1 msgid "Agave" msgstr "Agave" #: ../data/agave.desktop.in.in.h:2 msgid "Generate color schemes" msgstr "Vytváření barevných schémat" #: ../src/gcs-mainwindow.cc:191 msgid "Choose a Color and a Scheme Type" msgstr "Vyberte barvu a typ schématu" #. The File Menu #: ../src/gcs-mainwindow-actions.cc:93 msgid "_File" msgstr "_Soubor" #: ../src/gcs-mainwindow-actions.cc:97 msgid "_Save Scheme..." msgstr "_Uložit schéma..." #: ../src/gcs-mainwindow-actions.cc:98 msgid "Save current scheme as a GIMP Palette file" msgstr "Uložit souÄasné schéma jako soubor palety GIMP" #: ../src/gcs-mainwindow-actions.cc:101 msgid "E_xport Favorites..." msgstr "E_xportovat oblíbené..." #: ../src/gcs-mainwindow-actions.cc:102 msgid "Export favorite colors as a GIMP Palette file" msgstr "Exportovat oblíbené barvy jako soubor palety GIMP" #. The Edit Menu #: ../src/gcs-mainwindow-actions.cc:108 msgid "_Edit" msgstr "_Upravit" #. The Help menu #: ../src/gcs-mainwindow-actions.cc:113 msgid "_Help" msgstr "_NápovÄ›da" #. Bookmark Actions #: ../src/gcs-mainwindow-actions.cc:133 msgid "Fa_vorites" msgstr "_Oblíbené" #: ../src/gcs-mainwindow-actions.cc:135 msgid "Add to Favorites" msgstr "PÅ™idat k oblíbeným" #: ../src/gcs-mainwindow-actions.cc:135 msgid "Add the current color to favorites" msgstr "PÅ™idat aktuální barvu k oblíbeným" #: ../src/gcs-mainwindow-actions.cc:139 msgid "Remove Selected" msgstr "Odstranit vybrané" #: ../src/gcs-mainwindow-actions.cc:139 msgid "Remove the selected color from your favorites" msgstr "Odstranit vybranou barvu z oblíbených" #: ../src/gcs-mainwindow-actions.cc:144 msgid "_Clear All" msgstr "_Vymazat vÅ¡e" #: ../src/gcs-mainwindow-actions.cc:144 msgid "Clear the list of favorite colors" msgstr "Vymazat seznam oblíbených barev" #: ../src/gcs-mainwindow-actions.cc:150 msgid "_Lighten Scheme" msgstr "Z_esvÄ›tlit schéma" #: ../src/gcs-mainwindow-actions.cc:150 msgid "Increase the brightness" msgstr "Zvýšit jas" #: ../src/gcs-mainwindow-actions.cc:154 msgid "_Darken Scheme" msgstr "Z_tmavit schéma" #: ../src/gcs-mainwindow-actions.cc:154 msgid "Decrease the brightness" msgstr "Snížit jas" #: ../src/gcs-mainwindow-actions.cc:158 msgid "_Saturate Scheme" msgstr "PÅ™i_sytit schéma" #: ../src/gcs-mainwindow-actions.cc:158 msgid "Increase the saturation" msgstr "Zvýšit sytost" #: ../src/gcs-mainwindow-actions.cc:162 msgid "D_esaturate Scheme" msgstr "O_dsytit schéma" #: ../src/gcs-mainwindow-actions.cc:162 msgid "Decrease the saturation" msgstr "Snížit sytost" #: ../src/gcs-mainwindow-actions.cc:167 msgid "_Random" msgstr "Ná_hodnÄ›" #: ../src/gcs-mainwindow-actions.cc:167 msgid "Generate a random color" msgstr "Generovat náhodnou barvu" #: ../src/dialogs/gcs-about-window.cc:51 msgid "Project Website" msgstr "Webová stránka programu" #: ../src/dialogs/gcs-about-window.cc:60 msgid "A colorscheme designer for the GNOME desktop" msgstr "Návrhář barevných schémat pro prostÅ™edí GNOME" #. Translators: change this to your name, separate multiple names with \n #: ../src/dialogs/gcs-about-window.cc:87 msgid "translator-credits" msgstr "" "Zbynek Mrkvicka \n" "Marek ÄŒernocký " #: ../src/widgets/gcs-schemeselector.cc:42 msgid "Complements" msgstr "Komplementární" #: ../src/widgets/gcs-schemeselector.cc:45 msgid "Split-Complements" msgstr "Polokomplementární" #: ../src/widgets/gcs-schemeselector.cc:48 msgid "Triads" msgstr "Triády" #: ../src/widgets/gcs-schemeselector.cc:51 msgid "Tetrads" msgstr "Tetrády" #: ../src/widgets/gcs-schemeselector.cc:54 msgid "Analogous" msgstr "Analogické" #: ../src/widgets/gcs-schemeselector.cc:57 msgid "Monochromatic" msgstr "Monochromatické" #: ../src/widgets/gcs-bookmarklist.cc:77 msgid "Favorites" msgstr "Oblíbené" #: ../src/widgets/gcs-bookmarklist.cc:121 msgid "_Rename Color" msgstr "PÅ™ejmenovat ba_rvu" #. The instructions for the rename dialog #: ../src/widgets/gcs-bookmarklist.cc:387 msgid "Enter a new name:" msgstr "Vložte nový název:" #. the title of the color rename dialog #: ../src/widgets/gcs-bookmarklist.cc:391 msgid "Rename Color" msgstr "PÅ™ejmenovat barvu" #: ../src/widgets/gcs-paletteview.cc:64 msgid "Palette" msgstr "Paleta" #: ../src/widgets/gcs-textswatch.cc:124 msgid "Double-click to select" msgstr "Vyberte dvojklikem" #~ msgid "A program for the GNOME desktop for generating colorschemes" #~ msgstr "Program pro generování barevných schémat pro GNOME" agave-0.4.7/po/sv.po0000644000175000017500000001745410760701126011147 00000000000000# Swedish translation of agave. # Copyright (C) 2005, 2007 Jonathon Jongsma # This file is distributed under the same license as the agave package. # Daniel Nylander , 2006, 2007. # msgid "" msgstr "" "Project-Id-Version: agave\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2007-08-23 22:59+0200\n" "PO-Revision-Date: 2007-08-25 13:19+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" #: ../data/agave.desktop.in.in.h:1 #: ../data/ui/agave.glade.h:2 msgid "Agave" msgstr "Agave" #: ../data/agave.desktop.in.in.h:2 msgid "Generate color schemes" msgstr "Generera färgscheman" #: ../src/gcs-mainwindow.cc:145 msgid "Choose a Color and a Scheme Type" msgstr "Välj en färg och en schematyp" #. The File Menu #: ../src/gcs-mainwindow-actions.cc:94 msgid "_File" msgstr "_Arkiv" #: ../src/gcs-mainwindow-actions.cc:98 msgid "_Save Scheme..." msgstr "_Spara schema..." #: ../src/gcs-mainwindow-actions.cc:99 msgid "Save current scheme as a GIMP Palette file" msgstr "Spara aktuellt schema som en GIMP-palettfil" #: ../src/gcs-mainwindow-actions.cc:102 msgid "E_xport Favorites..." msgstr "E_xportera favoriter..." #: ../src/gcs-mainwindow-actions.cc:103 msgid "Export favorite colors as a GIMP Palette file" msgstr "Exportera favoritfärger som en GIMP-palettfil" #. The Edit Menu #: ../src/gcs-mainwindow-actions.cc:109 msgid "_Edit" msgstr "R_edigera" #. The Help menu #: ../src/gcs-mainwindow-actions.cc:114 msgid "_Help" msgstr "_Hjälp" #: ../src/gcs-mainwindow-actions.cc:115 msgid "_Contents" msgstr "_InnehÃ¥ll" #: ../src/gcs-mainwindow-actions.cc:115 msgid "Open the Agave manual" msgstr "Öppna handboken för Agave" #. Bookmark Actions #: ../src/gcs-mainwindow-actions.cc:135 msgid "Fa_vorites" msgstr "Fa_voriter" #: ../src/gcs-mainwindow-actions.cc:137 msgid "Add to Favorites" msgstr "Lägg till i favoriter" #: ../src/gcs-mainwindow-actions.cc:137 msgid "Add the current color to favorites" msgstr "Lägg till aktuell färg till favoriter" #: ../src/gcs-mainwindow-actions.cc:141 msgid "Remove Selected" msgstr "Ta bort markerad" #: ../src/gcs-mainwindow-actions.cc:141 msgid "Remove the selected color from your favorites" msgstr "Ta bort den markerade färgen frÃ¥n din favoriter" #: ../src/gcs-mainwindow-actions.cc:146 msgid "_Clear All" msgstr "_Töm alla" #: ../src/gcs-mainwindow-actions.cc:146 msgid "Clear the list of favorite colors" msgstr "Töm listan över favoritfärger" #: ../src/gcs-mainwindow-actions.cc:152 msgid "_Lighten Scheme" msgstr "_Gör schemat ljusare" #: ../src/gcs-mainwindow-actions.cc:152 msgid "Increase the brightness" msgstr "Öka ljusstyrkan" #: ../src/gcs-mainwindow-actions.cc:156 msgid "_Darken Scheme" msgstr "_Gör schemat mörkare" #: ../src/gcs-mainwindow-actions.cc:156 msgid "Decrease the brightness" msgstr "Sänk ljusstyrkan" #: ../src/gcs-mainwindow-actions.cc:160 msgid "_Saturate Scheme" msgstr "_Öka färgmättnad" #: ../src/gcs-mainwindow-actions.cc:160 msgid "Increase the saturation" msgstr "Öka färgmättnaden" #: ../src/gcs-mainwindow-actions.cc:164 msgid "D_esaturate Scheme" msgstr "_Sänk färgmättnad" #: ../src/gcs-mainwindow-actions.cc:164 msgid "Decrease the saturation" msgstr "Sänk färgmättnaden" #: ../src/gcs-mainwindow-actions.cc:169 msgid "_Random" msgstr "_Slumpmässig" #: ../src/gcs-mainwindow-actions.cc:169 msgid "Generate a random color" msgstr "Generera en slumpmässig färg" #: ../src/dialogs/gcs-about-window.cc:52 msgid "Project Website" msgstr "Projektets webbplats" #: ../src/dialogs/gcs-about-window.cc:61 msgid "A colorscheme designer for the GNOME desktop" msgstr "En färgschemadesigner för GNOME-skrivbordet" #. Translators: change this to your name, separate multiple names with \n #: ../src/dialogs/gcs-about-window.cc:88 msgid "translator-credits" msgstr "" "Daniel Nylander \n" "\n" "Skicka synpunkter pÃ¥ översättningen till\n" "tp-sv@listor.tp-sv.se" #: ../src/widgets/gcs-schemeselector.cc:43 msgid "Complements" msgstr "Kompletterande" #: ../src/widgets/gcs-schemeselector.cc:46 msgid "Split-Complements" msgstr "Delkompletterande" #: ../src/widgets/gcs-schemeselector.cc:49 msgid "Triads" msgstr "Triadic" #: ../src/widgets/gcs-schemeselector.cc:52 msgid "Tetrads" msgstr "Tetradic" #: ../src/widgets/gcs-schemeselector.cc:55 msgid "Analogous" msgstr "Analoga" #: ../src/widgets/gcs-schemeselector.cc:58 msgid "Monochromatic" msgstr "Monokroma" #: ../src/widgets/gcs-bookmarklist.cc:77 msgid "Favorites" msgstr "Favoriter" #: ../src/widgets/gcs-bookmarklist.cc:121 msgid "_Rename Color" msgstr "_Byt namn pÃ¥ färg" #. The instructions for the rename dialog #: ../src/widgets/gcs-bookmarklist.cc:387 msgid "Enter a new name:" msgstr "Ange ett nytt namn:" #. the title of the color rename dialog #: ../src/widgets/gcs-bookmarklist.cc:391 #: ../data/ui/agave.glade.h:3 msgid "Rename Color" msgstr "Byt namn pÃ¥ färg" #: ../src/widgets/gcs-paletteview.cc:77 msgid "Palette" msgstr "Palett" #: ../src/widgets/gcs-textswatch.cc:122 msgid "Double-click to select" msgstr "Dubbelklicka för att välja" #. namespace Widgets #. namespace gcs #: ../data/agave.schemas.in.h:1 msgid "Palette Expanded" msgstr "Palett utökad" #: ../data/agave.schemas.in.h:2 msgid "Saves the last height of the application window so that it starts where you left it last time." msgstr "Sparar senaste höjden för programfönstret sÃ¥ att det startar där du senast lämnar det." #: ../data/agave.schemas.in.h:3 msgid "Saves the last scheme type selected which is loaded next time the application is started. This value is an enumeration value." msgstr "Sparar senaste valda schematypen som läses in nästa gÃ¥ng programmet startar. Det här värdet är ett enumererat värde." #: ../data/agave.schemas.in.h:4 msgid "Saves the last selected color which is loaded next time the application is started. Color format is a hex string (e.g. '#ffffff')." msgstr "Sparar senaste valda färgen som läses in nästa gÃ¥ng programmet startar. Färgformatet är en hexadecimal sträng (t.ex. \"#ffffff\")." #: ../data/agave.schemas.in.h:5 msgid "Saves the last width of the application window so that it starts where you left it last time." msgstr "Sparar senaste bredden för programfönstret sÃ¥ att det startar där du senast lämnar det." #: ../data/agave.schemas.in.h:6 msgid "Saves the size of the favorites pane so that it starts where you left it last time." msgstr "Sparar storleken för favoritpanelen sÃ¥ att det startar där du senast lämnar det." #: ../data/agave.schemas.in.h:7 msgid "Saves whether the palette area along the bottom of the application window is expanded or collapsed." msgstr "Sparar huruvida palettomrÃ¥det längs nederkant av programfönstret är ut- eller infällt." #: ../data/agave.schemas.in.h:8 msgid "The last color selected" msgstr "Senaste valda färgen" #: ../data/agave.schemas.in.h:9 msgid "The last save directory" msgstr "Senaste katalog för sparning" #: ../data/agave.schemas.in.h:10 msgid "The last scheme type selected" msgstr "Senaste valda schematypen" #: ../data/agave.schemas.in.h:11 msgid "The main application window height" msgstr "Huvudprogramfönstrets höjd" #: ../data/agave.schemas.in.h:12 msgid "The main application window width" msgstr "Huvudprogramfönstrets bredd" #: ../data/agave.schemas.in.h:13 msgid "When exporting a scheme or palette, this key keeps track of where the user last saved the file." msgstr "Vid export av ett schema eller palett hÃ¥ller den här nyckeln reda pÃ¥ var användaren senast sparade filen." #: ../data/agave.schemas.in.h:14 msgid "Width of the favorites area" msgstr "Bredd för favoritpanelen" #: ../data/ui/agave.glade.h:1 msgid "Enter A New Name:" msgstr "Ange ett nytt namn:" agave-0.4.7/po/Makefile.in.in0000644000175000017500000001536311224420535012624 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 tags 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: agave-0.4.7/po/POTFILES.in0000644000175000017500000000044210760701126011721 00000000000000data/agave.desktop.in.in src/main.cc src/gcs-mainwindow.cc src/gcs-mainwindow-actions.cc src/dialogs/gcs-about-window.cc src/widgets/gcs-schemeselector.cc src/widgets/gcs-bookmarklist.cc src/widgets/gcs-paletteview.cc src/widgets/gcs-textswatch.cc data/agave.schemas.in data/ui/agave.glade agave-0.4.7/po/ja.po0000644000175000017500000002104411224363052011075 00000000000000# Japanese translation of GNOME Colorscheme. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # Toshimitsu Kimura , 2008. # #, fuzzy msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2008-05-16 17:42+0900\n" "PO-Revision-Date: 2008-05-16 17:42+0900\n" "Last-Translator: Toshimitsu Kimura \n" "Language-Team: Toshimitsu Kimura \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../data/agave.desktop.in.in.h:1 ../data/ui/agave.glade.h:2 msgid "Agave" msgstr "Agave" #: ../data/agave.desktop.in.in.h:2 msgid "Generate color schemes" msgstr "色スキーマã®ç”Ÿæˆ" #: ../src/gcs-mainwindow.cc:145 msgid "Choose a Color and a Scheme Type" msgstr "色ã¨ã‚¹ã‚­ãƒ¼ãƒžã®ã‚¿ã‚¤ãƒ—ã‚’é¸æŠžã—ã¦ãã ã•ã„" #. The File Menu #: ../src/gcs-mainwindow-actions.cc:94 msgid "_File" msgstr "ファイル(_F)" #: ../src/gcs-mainwindow-actions.cc:98 msgid "_Save Scheme..." msgstr "スキーマをä¿å­˜(_S)..." #: ../src/gcs-mainwindow-actions.cc:99 msgid "Save current scheme as a GIMP Palette file" msgstr "ç¾åœ¨ã®ã‚¹ã‚­ãƒ¼ãƒžã‚’GIMPパレットファイルã¨ã—ã¦ä¿å­˜" #: ../src/gcs-mainwindow-actions.cc:102 msgid "E_xport Favorites..." msgstr "ãŠæ°—ã«å…¥ã‚Šã‚’エクスãƒãƒ¼ãƒˆ(_X)" #: ../src/gcs-mainwindow-actions.cc:103 msgid "Export favorite colors as a GIMP Palette file" msgstr "ãŠæ°—ã«å…¥ã‚Šã®è‰²ã‚’GIMPパレットファイルã¨ã—ã¦ã‚¨ã‚¯ã‚¹ãƒãƒ¼ãƒˆ" #. The Edit Menu #: ../src/gcs-mainwindow-actions.cc:109 msgid "_Edit" msgstr "編集(_E)" #. The Help menu #: ../src/gcs-mainwindow-actions.cc:114 msgid "_Help" msgstr "ヘルプ(_H)" #: ../src/gcs-mainwindow-actions.cc:115 msgid "_Contents" msgstr "目次(_C)" #: ../src/gcs-mainwindow-actions.cc:115 msgid "Open the Agave manual" msgstr "Agaveマニュアルを開ã" #. Bookmark Actions #: ../src/gcs-mainwindow-actions.cc:135 msgid "Fa_vorites" msgstr "ãŠæ°—ã«å…¥ã‚Š(_V)" #: ../src/gcs-mainwindow-actions.cc:137 msgid "Add to Favorites" msgstr "ãŠæ°—ã«å…¥ã‚Šã‚’追加" #: ../src/gcs-mainwindow-actions.cc:137 msgid "Add the current color to favorites" msgstr "ç¾åœ¨ã®è‰²ã‚’ãŠæ°—ã«å…¥ã‚Šã«è¿½åŠ ã—ã¾ã™" #: ../src/gcs-mainwindow-actions.cc:141 msgid "Remove Selected" msgstr "é¸æŠžã—ã¦ã„ã‚‹ã‚‚ã®ã‚’削除" #: ../src/gcs-mainwindow-actions.cc:141 msgid "Remove the selected color from your favorites" msgstr "ãŠæ°—ã«å…¥ã‚Šã‹ã‚‰é¸ã‚“ã è‰²ã‚’削除ã—ã¾ã™" #: ../src/gcs-mainwindow-actions.cc:146 msgid "_Clear All" msgstr "å…¨ã¦å‰Šé™¤(_C)" #: ../src/gcs-mainwindow-actions.cc:146 msgid "Clear the list of favorite colors" msgstr "ãŠæ°—ã«å…¥ã‚Šã®è‰²ã®ãƒªã‚¹ãƒˆã‚’削除ã—ã¾ã™" #: ../src/gcs-mainwindow-actions.cc:152 msgid "_Lighten Scheme" msgstr "明るã„スキーマ(_L)" #: ../src/gcs-mainwindow-actions.cc:152 msgid "Increase the brightness" msgstr "明るã•を増加ã—ã¾ã™" #: ../src/gcs-mainwindow-actions.cc:156 msgid "_Darken Scheme" msgstr "æš—ã„スキーマ(_D)" #: ../src/gcs-mainwindow-actions.cc:156 msgid "Decrease the brightness" msgstr "明るã•を減少ã—ã¾ã™" #: ../src/gcs-mainwindow-actions.cc:160 msgid "_Saturate Scheme" msgstr "濃ã„スキーマ(_S)" #: ../src/gcs-mainwindow-actions.cc:160 msgid "Increase the saturation" msgstr "彩度を増加ã—ã¾ã™" #: ../src/gcs-mainwindow-actions.cc:164 msgid "D_esaturate Scheme" msgstr "è–„ã„スキーマ(_E)" #: ../src/gcs-mainwindow-actions.cc:164 msgid "Decrease the saturation" msgstr "彩度を減少ã—ã¾ã™" #: ../src/gcs-mainwindow-actions.cc:169 msgid "_Random" msgstr "ランダム(_R)" #: ../src/gcs-mainwindow-actions.cc:169 msgid "Generate a random color" msgstr "ランダムãªè‰²ã‚’生æˆã—ã¾ã™" #: ../src/dialogs/gcs-about-window.cc:52 msgid "Project Website" msgstr "プロジェクトウェブサイト" #: ../src/dialogs/gcs-about-window.cc:61 msgid "A colorscheme designer for the GNOME desktop" msgstr "GNOMEデスクトップ用ã®ã‚«ãƒ©ãƒ¼ã‚¹ã‚­ãƒ¼ãƒžãƒ‡ã‚¶ã‚¤ãƒŠ" #. Translators: change this to your name, separate multiple names with \n #: ../src/dialogs/gcs-about-window.cc:91 msgid "translator-credits" msgstr "Toshimitsu Kimura " #: ../src/widgets/gcs-schemeselector.cc:43 msgid "Complements" msgstr "補色(対峙色)" #: ../src/widgets/gcs-schemeselector.cc:46 msgid "Split-Complements" msgstr "分裂補色" #: ../src/widgets/gcs-schemeselector.cc:49 msgid "Triads" msgstr "三色é…色" #: ../src/widgets/gcs-schemeselector.cc:52 msgid "Tetrads" msgstr "四色é…色" #: ../src/widgets/gcs-schemeselector.cc:55 msgid "Analogous" msgstr "類似色" #: ../src/widgets/gcs-schemeselector.cc:58 msgid "Monochromatic" msgstr "å˜è‰²" #: ../src/widgets/gcs-bookmarklist.cc:77 msgid "Favorites" msgstr "ãŠæ°—ã«å…¥ã‚Š" #: ../src/widgets/gcs-bookmarklist.cc:121 msgid "_Rename Color" msgstr "色å変更(_R)" #. The instructions for the rename dialog #: ../src/widgets/gcs-bookmarklist.cc:387 msgid "Enter a new name:" msgstr "æ–°ã—ã„åå‰ã‚’入力ã—ã¦ãã ã•ã„:" #. the title of the color rename dialog #: ../src/widgets/gcs-bookmarklist.cc:391 ../data/ui/agave.glade.h:3 msgid "Rename Color" msgstr "色å変更" #: ../src/widgets/gcs-paletteview.cc:77 msgid "Palette" msgstr "パレット" #: ../src/widgets/gcs-textswatch.cc:122 msgid "Double-click to select" msgstr "ダブルクリックã§é¸æŠžã—ã¾ã™" #. namespace Widgets #. namespace gcs #: ../data/agave.schemas.in.h:1 msgid "Palette Expanded" msgstr "展開ã•れãŸãƒ‘レット" #: ../data/agave.schemas.in.h:2 msgid "" "Saves the last height of the application window so that it starts where you " "left it last time." msgstr "" "å‰å›žé–‰ã˜ã‚‹å‰ã®çŠ¶æ…‹ã‹ã‚‰èµ·å‹•ã™ã‚‹ãŸã‚ã«ã‚¢ãƒ—ãƒªã‚±ãƒ¼ã‚·ãƒ§ãƒ³ã‚¦ã‚£ãƒ³ãƒ‰ã‚¦ã®æœ€å¾Œã®ç¸¦å¹…ã‚’ä¿å­˜ã—ã¾ã™ã€‚" #: ../data/agave.schemas.in.h:3 msgid "" "Saves the last scheme type selected which is loaded next time the " "application is started. This value is an enumeration value." msgstr "" "次回アプリケーションãŒèµ·å‹•ã•ã‚ŒãŸæ™‚ã«èª­ã¿è¾¼ã¾ã‚Œã‚‹æœ€å¾Œã«é¸æŠžã•れãŸã‚¹ã‚­ãƒ¼ãƒžã‚¿ã‚¤ãƒ—ã‚’ä¿å­˜ã—ã¾ã™ã€‚" "ã“ã®å€¤ã¯åˆ—挙値ã§ã™ã€‚" #: ../data/agave.schemas.in.h:4 msgid "" "Saves the last selected color which is loaded next time the application is " "started. Color format is a hex string (e.g. '#ffffff')." msgstr "" "次回アプリケーションãŒèµ·å‹•ã•ã‚ŒãŸæ™‚ã«èª­ã¿è¾¼ã¾ã‚Œã‚‹æœ€å¾Œã«é¸æŠžã•れãŸè‰²ã‚’ä¿å­˜ã—ã¾ã™ã€‚" "色ã®å½¢å¼ã¯16é€²æ³•ã®æ–‡å­—列ã§ã™(例ãˆã°ã€Œ#ffffffã€)。" #: ../data/agave.schemas.in.h:5 msgid "" "Saves the last width of the application window so that it starts where you " "left it last time." msgstr "" "å‰å›žé–‰ã˜ã‚‹å‰ã®çŠ¶æ…‹ã‹ã‚‰èµ·å‹•ã™ã‚‹ãŸã‚ã«ã‚¢ãƒ—ãƒªã‚±ãƒ¼ã‚·ãƒ§ãƒ³ã‚¦ã‚£ãƒ³ãƒ‰ã‚¦ã®æœ€å¾Œã®æ¨ªå¹…ã‚’ä¿å­˜ã—ã¾ã™ã€‚" #: ../data/agave.schemas.in.h:6 msgid "" "Saves the size of the favorites pane so that it starts where you left it " "last time." msgstr "" "å‰å›žé–‰ã˜ã‚‹å‰ã®çŠ¶æ…‹ã‹ã‚‰èµ·å‹•ã™ã‚‹ãŸã‚ã«ãŠæ°—ã«å…¥ã‚Šã®ãƒ‘ãƒãƒ«ã®ã‚µã‚¤ã‚ºã‚’ä¿å­˜ã—ã¾ã™ã€‚" #: ../data/agave.schemas.in.h:7 msgid "" "Saves whether the palette area along the bottom of the application window is " "expanded or collapsed." msgstr "" "アプリケーションウィンドウã®ä¸‹éƒ¨ã«ã‚るパレットエリアãŒå±•é–‹ã•れã¦ã„ã‚‹ã‹ã©ã†ã‹ã‚’ä¿å­˜ã—ã¾ã™ã€‚" #: ../data/agave.schemas.in.h:8 msgid "The last color selected" msgstr "最後ã«é¸æŠžã•れãŸè‰²" #: ../data/agave.schemas.in.h:9 msgid "The last save directory" msgstr "最後ã«ä¿å­˜ã•れãŸãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒª" #: ../data/agave.schemas.in.h:10 msgid "The last scheme type selected" msgstr "最後ã«é¸æŠžã•れãŸã‚¹ã‚­ãƒ¼ãƒžã‚¿ã‚¤ãƒ—" #: ../data/agave.schemas.in.h:11 msgid "The main application window height" msgstr "メインアプリケーションウィンドウã®ç¸¦å¹…" #: ../data/agave.schemas.in.h:12 msgid "The main application window width" msgstr "ãƒ¡ã‚¤ãƒ³ã‚¢ãƒ—ãƒªã‚±ãƒ¼ã‚·ãƒ§ãƒ³ã‚¦ã‚£ãƒ³ãƒ‰ã‚¦ã®æ¨ªå¹…" #: ../data/agave.schemas.in.h:13 msgid "" "When exporting a scheme or palette, this key keeps track of where the user " "last saved the file." msgstr "" "スキーマやパレットをエクスãƒãƒ¼ãƒˆã™ã‚‹éš›ã€ã“ã®ã‚­ãƒ¼ã¯ãƒ¦ãƒ¼ã‚¶ãŒæœ€å¾Œã«ãƒ•ァイルをä¿å­˜ã—ãŸå ´æ‰€ã‚’æ•æ‰ã—ã¦ç¶­æŒã—ã¾ã™ã€‚" #: ../data/agave.schemas.in.h:14 msgid "Width of the favorites area" msgstr "ãŠæ°—ã«å…¥ã‚Šã‚¨ãƒªã‚¢ã®æ¨ªå¹…" #: ../data/ui/agave.glade.h:1 msgid "Enter A New Name:" msgstr "æ–°ã—ã„åå‰ã‚’入力ã—ã¦ãã ã•ã„:" agave-0.4.7/po/bg.po0000644000175000017500000001126610540646701011105 00000000000000# Bulgarian translation of colorscheme. # Copyright (C) 2005 THE colorscheme'S COPYRIGHT HOLDER # This file is distributed under the same license as the colorscheme package. # Rostislav "zbrox" Raykov , 2005. # , fuzzy # # msgid "" msgstr "" "Project-Id-Version: colorscheme\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2005-09-21 12:21+0300\n" "PO-Revision-Date: 2005-09-21 12:36+0300\n" "Last-Translator: Rostislav \"zbrox\" Raykov \n" "Language-Team: Bulgarian \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit" #: ../data/colorscheme.desktop.in.h:1 msgid "Generate color schemes" msgstr "Генериране на цветови палитри" #: ../src/gcs-mainwindow.cc:171 msgid "Choose a Color and a Scheme Type" msgstr "Изберете цвÑÑ‚ и вид палитра" #. Create some actions for the File Menu #: ../src/gcs-mainwindow.cc:254 msgid "_File" msgstr "_Файл" #: ../src/gcs-mainwindow.cc:257 msgid "_Save Scheme" msgstr "_Запазване на палитра" #. Create some actions for the Edit Menu #: ../src/gcs-mainwindow.cc:263 msgid "_Edit" msgstr "_Редактиране" #. Create some actions for the help menu #: ../src/gcs-mainwindow.cc:268 msgid "_Help" msgstr "_Помощ" #. m_refActionGroup->get_action("HistoryFwd")->property_is_important() = true; #. Bookmark Actions #: ../src/gcs-mainwindow.cc:289 msgid "Fa_vorites" msgstr "_Отметки" #: ../src/gcs-mainwindow.cc:291 msgid "Add to Favorites" msgstr "ДобавÑне към отметките" #: ../src/gcs-mainwindow.cc:291 msgid "Add the current color to favorites" msgstr "ДобавÑне на Ñ‚ÐµÐºÑƒÑ‰Ð¸Ñ Ñ†Ð²ÑÑ‚ към отметките" #: ../src/gcs-mainwindow.cc:295 msgid "Remove Selected" msgstr "Премахване на избраното" #: ../src/gcs-mainwindow.cc:295 msgid "Remove the selected color from your favorites" msgstr "Премахване на Ð¸Ð·Ð±Ñ€Ð°Ð½Ð¸Ñ Ñ†Ð²ÑÑ‚ от отметките" #: ../src/gcs-mainwindow.cc:300 msgid "_Clear All" msgstr "_ИзчиÑтване на вÑичко" #: ../src/gcs-mainwindow.cc:300 msgid "Clear the list of favorite colors" msgstr "ИзчиÑтване на ÑпиÑъка Ñ Ð¾Ñ‚Ð¼ÐµÑ‚ÐºÐ¸ за цветове" #: ../src/gcs-mainwindow.cc:306 msgid "_Lighten Scheme" msgstr "_ОÑветлÑване на палитрата" #: ../src/gcs-mainwindow.cc:306 msgid "Increase the brightness" msgstr "Увеличаване на ÑркоÑтта" #: ../src/gcs-mainwindow.cc:310 msgid "_Darken Scheme" msgstr "По_тъмнÑване на палитрата" #: ../src/gcs-mainwindow.cc:310 msgid "Decrease the brightness" msgstr "ÐамалÑване на ÑркоÑтта" #: ../src/gcs-mainwindow.cc:314 msgid "_Saturate Scheme" msgstr "_ÐаÑитеноÑÑ‚ на палитрата" #: ../src/gcs-mainwindow.cc:314 msgid "Increase the saturation" msgstr "Увеличаване на наÑитеноÑтта" #: ../src/gcs-mainwindow.cc:318 msgid "D_esaturate Scheme" msgstr "" #: ../src/gcs-mainwindow.cc:318 msgid "Decrease the saturation" msgstr "ÐамÑлаване на наÑитеноÑтта" #: ../src/gcs-mainwindow.cc:323 msgid "_Random" msgstr "П_роизволни" #: ../src/gcs-mainwindow.cc:323 msgid "Generate a random color" msgstr "Генериране на произволен цвÑÑ‚" #: ../src/dialogs/gcs-about-window.cc:43 msgid "Project Website" msgstr "Интернет Ñтраница на проекта" #: ../src/dialogs/gcs-about-window.cc:51 msgid "A program for the GNOME desktop for generating colorschemes" msgstr "Програма за работната Ñреда GNOME за генериране на палитри от цветове" #. Translators: change this to your name, separate multiple names with \n #: ../src/dialogs/gcs-about-window.cc:78 msgid "translation-credits" msgstr "РоÑтиÑлав \"zbrox\" Райков \n" "\n" "Проектът за превод на GNOME има нужда от подкрепа.\n" "Ðаучете повече за Ð½Ð°Ñ Ð½Ð° http://gnome.cult.bg\n" "Докладвайте за грешки на http://gnome.cult.bg/bugs" #: ../src/widgets/gcs-schemeselector.cc:43 msgid "Complements" msgstr "Добавки" #: ../src/widgets/gcs-schemeselector.cc:46 msgid "Split-Complements" msgstr "" #: ../src/widgets/gcs-schemeselector.cc:49 msgid "Triads" msgstr "Триади" #: ../src/widgets/gcs-schemeselector.cc:52 msgid "Tetrads" msgstr "Тетради" #: ../src/widgets/gcs-schemeselector.cc:55 msgid "Analogous" msgstr "Ðналози" #: ../src/widgets/gcs-schemeselector.cc:58 msgid "Monochromatic" msgstr "Монохроматично" agave-0.4.7/po/it.po0000644000175000017500000001154110663715205011127 00000000000000# LANGUAGE translation of Agave. # Copyright (C) 2006 THE Agave'S COPYRIGHT HOLDER # This file is distributed under the same license as the Agave package. # sergej , 2006. # , fuzzy # sergej , 2006. # # msgid "" msgstr "" "Project-Id-Version: Agave VERSION\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2006-08-29 07:14-0500\n" "PO-Revision-Date: 2006-08-30 11:08+0200\n" "Last-Translator: Sergio Durzu \n" "Language-Team: Italian\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=iso-8859-1\n" "Content-Transfer-Encoding: 8bit" #: ../data/agave.desktop.in.in.h:1 msgid "Agave" msgstr "Agave" #: ../data/agave.desktop.in.in.h:2 msgid "Generate color schemes" msgstr "Genera schemi di colore" #: ../src/gcs-mainwindow.cc:184 msgid "Choose a Color and a Scheme Type" msgstr "Scegli un colore e un tipo di schema" #. The File Menu #: ../src/gcs-mainwindow-actions.cc:96 msgid "_File" msgstr "_File" #: ../src/gcs-mainwindow-actions.cc:100 msgid "_Save Scheme..." msgstr "_Salva schema..." #: ../src/gcs-mainwindow-actions.cc:101 msgid "Save current scheme as a GIMP Palette file" msgstr "Salva lo schema corrente come Palette per GIMP" #: ../src/gcs-mainwindow-actions.cc:104 msgid "E_xport Favorites..." msgstr "_Esporta preferiti..." #: ../src/gcs-mainwindow-actions.cc:105 msgid "Export favorite colors as a GIMP Palette file" msgstr "Esporta i preferiti come Palette per GIMP" #. The Edit Menu #: ../src/gcs-mainwindow-actions.cc:121 msgid "_Edit" msgstr "_Modifica" #. The Help menu #: ../src/gcs-mainwindow-actions.cc:126 msgid "_Help" msgstr "_Aiuto" #. Bookmark Actions #: ../src/gcs-mainwindow-actions.cc:146 msgid "Fa_vorites" msgstr "_Preferiti" #: ../src/gcs-mainwindow-actions.cc:148 msgid "Add to Favorites" msgstr "Aggiungi ai Preferiti" #: ../src/gcs-mainwindow-actions.cc:148 msgid "Add the current color to favorites" msgstr "Aggiungi il colore corrente ai preferiti" #: ../src/gcs-mainwindow-actions.cc:152 msgid "Remove Selected" msgstr "Elimina i selezionati" #: ../src/gcs-mainwindow-actions.cc:152 msgid "Remove the selected color from your favorites" msgstr "Elimina il colore selezionato dai preferiti" #: ../src/gcs-mainwindow-actions.cc:157 msgid "_Clear All" msgstr "_Pulisci tutto" #: ../src/gcs-mainwindow-actions.cc:157 msgid "Clear the list of favorite colors" msgstr "Pulisci la lista dei colori preferiti" #: ../src/gcs-mainwindow-actions.cc:163 msgid "_Lighten Scheme" msgstr "Più _luminosità" #: ../src/gcs-mainwindow-actions.cc:163 msgid "Increase the brightness" msgstr "Aumenta la luminosità" #: ../src/gcs-mainwindow-actions.cc:167 msgid "_Darken Scheme" msgstr "_Meno lumonisità" #: ../src/gcs-mainwindow-actions.cc:167 msgid "Decrease the brightness" msgstr "Meno lumi" #: ../src/gcs-mainwindow-actions.cc:171 msgid "_Saturate Scheme" msgstr "Più _saturazione" #: ../src/gcs-mainwindow-actions.cc:171 msgid "Increase the saturation" msgstr "Aumenta la saturazione" #: ../src/gcs-mainwindow-actions.cc:175 msgid "D_esaturate Scheme" msgstr "Meno s_aturazione" #: ../src/gcs-mainwindow-actions.cc:175 msgid "Decrease the saturation" msgstr "Diminuisce la saturazione" #: ../src/gcs-mainwindow-actions.cc:180 msgid "_Random" msgstr "_Random" #: ../src/gcs-mainwindow-actions.cc:180 msgid "Generate a random color" msgstr "Genera un colore random" #: ../src/dialogs/gcs-about-window.cc:52 msgid "Project Website" msgstr "Homepage del progetto" #: ../src/dialogs/gcs-about-window.cc:61 msgid "A colorscheme designer for the GNOME desktop" msgstr "Un generatore di schemi di colore per GNOME" #. Translators: change this to your name, separate multiple names with \n #: ../src/dialogs/gcs-about-window.cc:88 msgid "translator-credits" msgstr "sergej " #: ../src/widgets/gcs-schemeselector.cc:43 msgid "Complements" msgstr "Complementari" #: ../src/widgets/gcs-schemeselector.cc:46 msgid "Split-Complements" msgstr "Dividi complementari" #: ../src/widgets/gcs-schemeselector.cc:49 msgid "Triads" msgstr "Tricolore" #: ../src/widgets/gcs-schemeselector.cc:52 msgid "Tetrads" msgstr "Quadricolore" #: ../src/widgets/gcs-schemeselector.cc:55 msgid "Analogous" msgstr "Analoghi" #: ../src/widgets/gcs-schemeselector.cc:58 msgid "Monochromatic" msgstr "Monocromatico" #: ../src/widgets/gcs-bookmarklist.cc:69 msgid "Favorites" msgstr "Preferiti" #: ../src/widgets/gcs-bookmarklist.cc:113 msgid "_Rename Color" msgstr "_Rinomina colore" #. The instructions for the rename dialog #: ../src/widgets/gcs-bookmarklist.cc:379 msgid "Enter a new name:" msgstr "Inserisci un nuovo nome:" #. the title of the color rename dialog #: ../src/widgets/gcs-bookmarklist.cc:383 msgid "Rename Color" msgstr "Rinomina colore" #: ../src/widgets/gcs-paletteview.cc:64 msgid "Palette" msgstr "Palette" #: ../src/widgets/gcs-textswatch.cc:131 msgid "Double-click to select" msgstr "Clicca due volte per selezionare" agave-0.4.7/tests/0000777000175000017500000000000011224443301010746 500000000000000agave-0.4.7/tests/Makefile.in0000644000175000017500000003635511224442713012751 00000000000000# Makefile.in generated by automake 1.10.2 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # 2003, 2004, 2005, 2006, 2007, 2008 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@ pkglibdir = $(libdir)/@PACKAGE@ pkgincludedir = $(includedir)/@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 = : subdir = tests DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \ $(top_srcdir)/configure.ac 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 = 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 ETAGS = etags CTAGS = ctags DIST_SUBDIRS = $(SUBDIRS) DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ AGAVE_CFLAGS = @AGAVE_CFLAGS@ AGAVE_ICONDIR = @AGAVE_ICONDIR@ AGAVE_LIBS = @AGAVE_LIBS@ AGAVE_LOCALEDIR = @AGAVE_LOCALEDIR@ AGAVE_PALETTEDIR = @AGAVE_PALETTEDIR@ AGAVE_UIDIR = @AGAVE_UIDIR@ ALL_LINGUAS = @ALL_LINGUAS@ AMTAR = @AMTAR@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ AWK = @AWK@ CAIRO_RING_CFLAGS = @CAIRO_RING_CFLAGS@ CAIRO_RING_LIBS = @CAIRO_RING_LIBS@ CATALOGS = @CATALOGS@ CATOBJEXT = @CATOBJEXT@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPPFLAGS = @CPPFLAGS@ CPPUNIT_CFLAGS = @CPPUNIT_CFLAGS@ CPPUNIT_CONFIG = @CPPUNIT_CONFIG@ CPPUNIT_LIBS = @CPPUNIT_LIBS@ CXX = @CXX@ CXXCPP = @CXXCPP@ CXXDEPMODE = @CXXDEPMODE@ CXXFLAGS = @CXXFLAGS@ CYGPATH_W = @CYGPATH_W@ DATADIRNAME = @DATADIRNAME@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ DISTCHECK_CONFIGURE_FLAGS = @DISTCHECK_CONFIGURE_FLAGS@ DOC_USER_FORMATS = @DOC_USER_FORMATS@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ GCONFMM_CFLAGS = @GCONFMM_CFLAGS@ GCONFMM_LIBS = @GCONFMM_LIBS@ GCONFTOOL = @GCONFTOOL@ GCONF_SCHEMA_CONFIG_SOURCE = @GCONF_SCHEMA_CONFIG_SOURCE@ GCONF_SCHEMA_FILE_DIR = @GCONF_SCHEMA_FILE_DIR@ GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ GIT_PATH = @GIT_PATH@ GMOFILES = @GMOFILES@ GMSGFMT = @GMSGFMT@ GNOME_CFLAGS = @GNOME_CFLAGS@ GNOME_LIBS = @GNOME_LIBS@ GREP = @GREP@ GTKMM_CFLAGS = @GTKMM_CFLAGS@ GTKMM_LIBS = @GTKMM_LIBS@ HELP_DIR = @HELP_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@ LDFLAGS = @LDFLAGS@ LIBGLADEMM_CFLAGS = @LIBGLADEMM_CFLAGS@ LIBGLADEMM_LIBS = @LIBGLADEMM_LIBS@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LN_S = @LN_S@ LTLIBOBJS = @LTLIBOBJS@ MAKEINFO = @MAKEINFO@ MKDIR_P = @MKDIR_P@ MKINSTALLDIRS = @MKINSTALLDIRS@ MSGFMT = @MSGFMT@ MSGFMT_OPTS = @MSGFMT_OPTS@ MSGMERGE = @MSGMERGE@ OBJEXT = @OBJEXT@ OMF_DIR = @OMF_DIR@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PACKAGE_WEBSITE = @PACKAGE_WEBSITE@ PATH_SEPARATOR = @PATH_SEPARATOR@ PKG_CONFIG = @PKG_CONFIG@ POFILES = @POFILES@ POSUB = @POSUB@ PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@ PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@ PRINTING_CFLAGS = @PRINTING_CFLAGS@ PRINTING_LIBS = @PRINTING_LIBS@ RANLIB = @RANLIB@ SED = @SED@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ SORT = @SORT@ STRIP = @STRIP@ TR = @TR@ UNIQ = @UNIQ@ USE_NLS = @USE_NLS@ VERSION = @VERSION@ XGETTEXT = @XGETTEXT@ 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_CXX = @ac_ct_CXX@ 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_alias = @build_alias@ builddir = @builddir@ datadir = @datadir@ datarootdir = @datarootdir@ docdir = @docdir@ dvidir = @dvidir@ exec_prefix = @exec_prefix@ host_alias = @host_alias@ htmldir = @htmldir@ includedir = @includedir@ infodir = @infodir@ install_sh = @install_sh@ libdir = @libdir@ libexecdir = @libexecdir@ localedir = @localedir@ localstatedir = @localstatedir@ 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 = core paletteparser widgets all: all-recursive .SUFFIXES: $(srcdir)/Makefile.in: $(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) --gnu tests/Makefile'; \ cd $(top_srcdir) && \ $(AUTOMAKE) --gnu 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: $(am__configure_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(ACLOCAL_M4): $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh # 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): @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; \ (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): @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; \ (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ || eval $$failcom; \ done && test -z "$$fail" tags-recursive: list='$(SUBDIRS)'; for subdir in $$list; do \ test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \ done ctags-recursive: list='$(SUBDIRS)'; for subdir in $$list; do \ test "$$subdir" = . || (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) tags=; \ 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 || \ tags="$$tags $$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; }; }'`; \ if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \ test -n "$$unique" || unique=$$empty_fix; \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ $$tags $$unique; \ fi ctags: CTAGS CTAGS: ctags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) tags=; \ 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)$$tags$$unique" \ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ $$tags $$unique GTAGS: here=`$(am__cd) $(top_builddir) && pwd` \ && 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 $(srcdir)/$$file && test $$d != $(srcdir); then \ cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ fi; \ cp -pR $$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; \ distdir=`$(am__cd) $(distdir) && pwd`; \ top_distdir=`$(am__cd) $(top_distdir) && pwd`; \ (cd $$subdir && \ $(MAKE) $(AM_MAKEFLAGS) \ top_distdir="$$top_distdir" \ distdir="$$distdir/$$subdir" \ am__remove_distdir=: \ am__skip_length_check=: \ 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) 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 mostlyclean-am distclean: distclean-recursive -rm -f Makefile distclean-am: clean-am distclean-generic distclean-tags dvi: dvi-recursive dvi-am: html: html-recursive info: info-recursive info-am: install-data-am: install-dvi: install-dvi-recursive install-exec-am: install-html: install-html-recursive install-info: install-info-recursive install-man: install-pdf: install-pdf-recursive install-ps: install-ps-recursive 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 pdf: pdf-recursive pdf-am: ps: ps-recursive ps-am: uninstall-am: .MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) install-am \ install-strip .PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \ all all-am check check-am clean clean-generic ctags \ ctags-recursive distclean distclean-generic 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 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: agave-0.4.7/tests/widgets/0000777000175000017500000000000011224443302012415 500000000000000agave-0.4.7/tests/widgets/Makefile.in0000644000175000017500000004064011224442713014407 00000000000000# Makefile.in generated by automake 1.10.2 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # 2003, 2004, 2005, 2006, 2007, 2008 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@ pkglibdir = $(libdir)/@PACKAGE@ pkgincludedir = $(includedir)/@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 = : noinst_PROGRAMS = palettemodeltest$(EXEEXT) subdir = tests/widgets DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \ $(top_srcdir)/configure.ac 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 = PROGRAMS = $(noinst_PROGRAMS) am_palettemodeltest_OBJECTS = \ palettemodeltest-palettemodeltest.$(OBJEXT) palettemodeltest_OBJECTS = $(am_palettemodeltest_OBJECTS) am__DEPENDENCIES_1 = palettemodeltest_DEPENDENCIES = \ ${top_builddir}/src/widgets/libagavewidgets.a \ ${top_builddir}/src/paletteparser/libpaletteparser.a \ ${top_builddir}/src/core/libagave.a $(am__DEPENDENCIES_1) palettemodeltest_LINK = $(CXXLD) $(palettemodeltest_CXXFLAGS) \ $(CXXFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir) depcomp = $(SHELL) $(top_srcdir)/depcomp am__depfiles_maybe = depfiles CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) CXXLD = $(CXX) CXXLINK = $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(AM_LDFLAGS) $(LDFLAGS) \ -o $@ SOURCES = $(palettemodeltest_SOURCES) DIST_SOURCES = $(palettemodeltest_SOURCES) ETAGS = etags CTAGS = ctags DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ AGAVE_CFLAGS = @AGAVE_CFLAGS@ AGAVE_ICONDIR = @AGAVE_ICONDIR@ AGAVE_LIBS = @AGAVE_LIBS@ AGAVE_LOCALEDIR = @AGAVE_LOCALEDIR@ AGAVE_PALETTEDIR = @AGAVE_PALETTEDIR@ AGAVE_UIDIR = @AGAVE_UIDIR@ ALL_LINGUAS = @ALL_LINGUAS@ AMTAR = @AMTAR@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ AWK = @AWK@ CAIRO_RING_CFLAGS = @CAIRO_RING_CFLAGS@ CAIRO_RING_LIBS = @CAIRO_RING_LIBS@ CATALOGS = @CATALOGS@ CATOBJEXT = @CATOBJEXT@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPPFLAGS = @CPPFLAGS@ CPPUNIT_CFLAGS = @CPPUNIT_CFLAGS@ CPPUNIT_CONFIG = @CPPUNIT_CONFIG@ CPPUNIT_LIBS = @CPPUNIT_LIBS@ CXX = @CXX@ CXXCPP = @CXXCPP@ CXXDEPMODE = @CXXDEPMODE@ CXXFLAGS = @CXXFLAGS@ CYGPATH_W = @CYGPATH_W@ DATADIRNAME = @DATADIRNAME@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ DISTCHECK_CONFIGURE_FLAGS = @DISTCHECK_CONFIGURE_FLAGS@ DOC_USER_FORMATS = @DOC_USER_FORMATS@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ GCONFMM_CFLAGS = @GCONFMM_CFLAGS@ GCONFMM_LIBS = @GCONFMM_LIBS@ GCONFTOOL = @GCONFTOOL@ GCONF_SCHEMA_CONFIG_SOURCE = @GCONF_SCHEMA_CONFIG_SOURCE@ GCONF_SCHEMA_FILE_DIR = @GCONF_SCHEMA_FILE_DIR@ GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ GIT_PATH = @GIT_PATH@ GMOFILES = @GMOFILES@ GMSGFMT = @GMSGFMT@ GNOME_CFLAGS = @GNOME_CFLAGS@ GNOME_LIBS = @GNOME_LIBS@ GREP = @GREP@ GTKMM_CFLAGS = @GTKMM_CFLAGS@ GTKMM_LIBS = @GTKMM_LIBS@ HELP_DIR = @HELP_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@ LDFLAGS = @LDFLAGS@ LIBGLADEMM_CFLAGS = @LIBGLADEMM_CFLAGS@ LIBGLADEMM_LIBS = @LIBGLADEMM_LIBS@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LN_S = @LN_S@ LTLIBOBJS = @LTLIBOBJS@ MAKEINFO = @MAKEINFO@ MKDIR_P = @MKDIR_P@ MKINSTALLDIRS = @MKINSTALLDIRS@ MSGFMT = @MSGFMT@ MSGFMT_OPTS = @MSGFMT_OPTS@ MSGMERGE = @MSGMERGE@ OBJEXT = @OBJEXT@ OMF_DIR = @OMF_DIR@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PACKAGE_WEBSITE = @PACKAGE_WEBSITE@ PATH_SEPARATOR = @PATH_SEPARATOR@ PKG_CONFIG = @PKG_CONFIG@ POFILES = @POFILES@ POSUB = @POSUB@ PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@ PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@ PRINTING_CFLAGS = @PRINTING_CFLAGS@ PRINTING_LIBS = @PRINTING_LIBS@ RANLIB = @RANLIB@ SED = @SED@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ SORT = @SORT@ STRIP = @STRIP@ TR = @TR@ UNIQ = @UNIQ@ USE_NLS = @USE_NLS@ VERSION = @VERSION@ XGETTEXT = @XGETTEXT@ 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_CXX = @ac_ct_CXX@ 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_alias = @build_alias@ builddir = @builddir@ datadir = @datadir@ datarootdir = @datarootdir@ docdir = @docdir@ dvidir = @dvidir@ exec_prefix = @exec_prefix@ host_alias = @host_alias@ htmldir = @htmldir@ includedir = @includedir@ infodir = @infodir@ install_sh = @install_sh@ libdir = @libdir@ libexecdir = @libexecdir@ localedir = @localedir@ localstatedir = @localstatedir@ 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@ AM_CPPFLAGS = -I${top_srcdir}/src AM_CXXFLAGS = ${AGAVE_CFLAGS} #widgettest_SOURCES = test-main.cc \ # #palette-test.h \ # #palette-test.cc #widgettest_LDADD = libagavewidgets.a \ # #${top_srcdir}/core/libagave.a \ # #${CPPUNIT_LIBS} \ # #${AGAVE_LIBS} #widgettest_CXXFLAGS = -DUNIT_TEST \ # #${AM_CXXFLAGS} palettemodeltest_SOURCES = palettemodeltest.cc palettemodeltest_LDADD = ${top_builddir}/src/widgets/libagavewidgets.a \ ${top_builddir}/src/paletteparser/libpaletteparser.a \ ${top_builddir}/src/core/libagave.a \ ${AGAVE_LIBS} palettemodeltest_CXXFLAGS = ${AM_CXXFLAGS} all: all-am .SUFFIXES: .SUFFIXES: .cc .o .obj $(srcdir)/Makefile.in: $(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) --gnu tests/widgets/Makefile'; \ cd $(top_srcdir) && \ $(AUTOMAKE) --gnu tests/widgets/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: $(am__configure_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(ACLOCAL_M4): $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh clean-noinstPROGRAMS: -test -z "$(noinst_PROGRAMS)" || rm -f $(noinst_PROGRAMS) palettemodeltest$(EXEEXT): $(palettemodeltest_OBJECTS) $(palettemodeltest_DEPENDENCIES) @rm -f palettemodeltest$(EXEEXT) $(palettemodeltest_LINK) $(palettemodeltest_OBJECTS) $(palettemodeltest_LDADD) $(LIBS) mostlyclean-compile: -rm -f *.$(OBJEXT) distclean-compile: -rm -f *.tab.c @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/palettemodeltest-palettemodeltest.Po@am__quote@ .cc.o: @am__fastdepCXX_TRUE@ $(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< @am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(CXXCOMPILE) -c -o $@ $< .cc.obj: @am__fastdepCXX_TRUE@ $(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'` @am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(CXXCOMPILE) -c -o $@ `$(CYGPATH_W) '$<'` palettemodeltest-palettemodeltest.o: palettemodeltest.cc @am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(palettemodeltest_CXXFLAGS) $(CXXFLAGS) -MT palettemodeltest-palettemodeltest.o -MD -MP -MF $(DEPDIR)/palettemodeltest-palettemodeltest.Tpo -c -o palettemodeltest-palettemodeltest.o `test -f 'palettemodeltest.cc' || echo '$(srcdir)/'`palettemodeltest.cc @am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/palettemodeltest-palettemodeltest.Tpo $(DEPDIR)/palettemodeltest-palettemodeltest.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='palettemodeltest.cc' object='palettemodeltest-palettemodeltest.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(palettemodeltest_CXXFLAGS) $(CXXFLAGS) -c -o palettemodeltest-palettemodeltest.o `test -f 'palettemodeltest.cc' || echo '$(srcdir)/'`palettemodeltest.cc palettemodeltest-palettemodeltest.obj: palettemodeltest.cc @am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(palettemodeltest_CXXFLAGS) $(CXXFLAGS) -MT palettemodeltest-palettemodeltest.obj -MD -MP -MF $(DEPDIR)/palettemodeltest-palettemodeltest.Tpo -c -o palettemodeltest-palettemodeltest.obj `if test -f 'palettemodeltest.cc'; then $(CYGPATH_W) 'palettemodeltest.cc'; else $(CYGPATH_W) '$(srcdir)/palettemodeltest.cc'; fi` @am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/palettemodeltest-palettemodeltest.Tpo $(DEPDIR)/palettemodeltest-palettemodeltest.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='palettemodeltest.cc' object='palettemodeltest-palettemodeltest.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(palettemodeltest_CXXFLAGS) $(CXXFLAGS) -c -o palettemodeltest-palettemodeltest.obj `if test -f 'palettemodeltest.cc'; then $(CYGPATH_W) 'palettemodeltest.cc'; else $(CYGPATH_W) '$(srcdir)/palettemodeltest.cc'; fi` 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) tags=; \ 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; }; }'`; \ if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \ test -n "$$unique" || unique=$$empty_fix; \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ $$tags $$unique; \ fi ctags: CTAGS CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) tags=; \ 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)$$tags$$unique" \ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ $$tags $$unique GTAGS: here=`$(am__cd) $(top_builddir) && pwd` \ && 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 $(srcdir)/$$file && test $$d != $(srcdir); then \ cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ fi; \ cp -pR $$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) 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-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 info: info-am info-am: install-data-am: install-dvi: install-dvi-am 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 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 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-noinstPROGRAMS ctags distclean distclean-compile \ distclean-generic 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 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: agave-0.4.7/tests/widgets/palettemodeltest.cc0000644000175000017500000000233110760701126016223 00000000000000#include #include #include #include #include "widgets/palettetreemodel.h" #include "paletteparser/palette.h" using namespace std; namespace gcs { bool colorscheme_debug = false; } int main(int argc, char** argv) { cout << "setting up Main" << endl; Gtk::Main app(argc, argv); cout << "Constructing vector container" << endl; std::ifstream file("/usr/local/share/agave/palettes/Tango-Palette.gpl"); pp::Palette palette; palette.parse(file); cout << palette.size() << " Colors in the palette." << endl; cout << "Creating custom treemodel" << endl; Glib::RefPtr model = gcs::PaletteTreeModel::create(palette); cout << "creating tree view" << endl; Gtk::TreeView tree_view(model); cout << "Appending column" << endl; tree_view.append_column("color", model->get_text_column()); tree_view.set_headers_visible(true); cout << "Adding treeview to window" << endl; Gtk::ScrolledWindow scrolled; scrolled.add(tree_view); cout << "setting up win" << endl; Gtk::Window win; win.add(scrolled); cout << "Showing all" << endl; win.show_all(); app.run(win); cout << palette; return 0; } agave-0.4.7/tests/widgets/Makefile.am0000644000175000017500000000125110663715205014376 00000000000000noinst_PROGRAMS = palettemodeltest #widgettest AM_CPPFLAGS = -I${top_srcdir}/src AM_CXXFLAGS = ${AGAVE_CFLAGS} #widgettest_SOURCES = test-main.cc \ #palette-test.h \ #palette-test.cc #widgettest_LDADD = libagavewidgets.a \ #${top_srcdir}/core/libagave.a \ #${CPPUNIT_LIBS} \ #${AGAVE_LIBS} #widgettest_CXXFLAGS = -DUNIT_TEST \ #${AM_CXXFLAGS} palettemodeltest_SOURCES = palettemodeltest.cc palettemodeltest_LDADD = ${top_builddir}/src/widgets/libagavewidgets.a \ ${top_builddir}/src/paletteparser/libpaletteparser.a \ ${top_builddir}/src/core/libagave.a \ ${AGAVE_LIBS} palettemodeltest_CXXFLAGS = ${AM_CXXFLAGS} agave-0.4.7/tests/Makefile.am0000644000175000017500000000004510663715205012730 00000000000000SUBDIRS = core paletteparser widgets agave-0.4.7/tests/paletteparser/0000777000175000017500000000000011224443301013621 500000000000000agave-0.4.7/tests/paletteparser/Makefile.in0000644000175000017500000004534211224442713015620 00000000000000# Makefile.in generated by automake 1.10.2 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # 2003, 2004, 2005, 2006, 2007, 2008 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@ pkglibdir = $(libdir)/@PACKAGE@ pkgincludedir = $(includedir)/@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 = : @HAVE_CPPUNIT_TRUE@TESTS = parsertest$(EXEEXT) @HAVE_CPPUNIT_TRUE@check_PROGRAMS = $(am__EXEEXT_1) subdir = tests/paletteparser DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \ $(top_srcdir)/configure.ac 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 = @HAVE_CPPUNIT_TRUE@am__EXEEXT_1 = parsertest$(EXEEXT) am__parsertest_SOURCES_DIST = parsertest.cc @HAVE_CPPUNIT_TRUE@am_parsertest_OBJECTS = \ @HAVE_CPPUNIT_TRUE@ parsertest-parsertest.$(OBJEXT) parsertest_OBJECTS = $(am_parsertest_OBJECTS) am__DEPENDENCIES_1 = @HAVE_CPPUNIT_TRUE@parsertest_DEPENDENCIES = ${top_builddir}/src/paletteparser/libpaletteparser.a \ @HAVE_CPPUNIT_TRUE@ ${top_builddir}/src/core/libagave.a \ @HAVE_CPPUNIT_TRUE@ $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) parsertest_LINK = $(CXXLD) $(parsertest_CXXFLAGS) $(CXXFLAGS) \ $(AM_LDFLAGS) $(LDFLAGS) -o $@ DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir) depcomp = $(SHELL) $(top_srcdir)/depcomp am__depfiles_maybe = depfiles CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) CXXLD = $(CXX) CXXLINK = $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(AM_LDFLAGS) $(LDFLAGS) \ -o $@ SOURCES = $(parsertest_SOURCES) DIST_SOURCES = $(am__parsertest_SOURCES_DIST) ETAGS = etags CTAGS = ctags DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ AGAVE_CFLAGS = @AGAVE_CFLAGS@ AGAVE_ICONDIR = @AGAVE_ICONDIR@ AGAVE_LIBS = @AGAVE_LIBS@ AGAVE_LOCALEDIR = @AGAVE_LOCALEDIR@ AGAVE_PALETTEDIR = @AGAVE_PALETTEDIR@ AGAVE_UIDIR = @AGAVE_UIDIR@ ALL_LINGUAS = @ALL_LINGUAS@ AMTAR = @AMTAR@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ AWK = @AWK@ CAIRO_RING_CFLAGS = @CAIRO_RING_CFLAGS@ CAIRO_RING_LIBS = @CAIRO_RING_LIBS@ CATALOGS = @CATALOGS@ CATOBJEXT = @CATOBJEXT@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPPFLAGS = @CPPFLAGS@ CPPUNIT_CFLAGS = @CPPUNIT_CFLAGS@ CPPUNIT_CONFIG = @CPPUNIT_CONFIG@ CPPUNIT_LIBS = @CPPUNIT_LIBS@ CXX = @CXX@ CXXCPP = @CXXCPP@ CXXDEPMODE = @CXXDEPMODE@ CXXFLAGS = @CXXFLAGS@ CYGPATH_W = @CYGPATH_W@ DATADIRNAME = @DATADIRNAME@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ DISTCHECK_CONFIGURE_FLAGS = @DISTCHECK_CONFIGURE_FLAGS@ DOC_USER_FORMATS = @DOC_USER_FORMATS@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ GCONFMM_CFLAGS = @GCONFMM_CFLAGS@ GCONFMM_LIBS = @GCONFMM_LIBS@ GCONFTOOL = @GCONFTOOL@ GCONF_SCHEMA_CONFIG_SOURCE = @GCONF_SCHEMA_CONFIG_SOURCE@ GCONF_SCHEMA_FILE_DIR = @GCONF_SCHEMA_FILE_DIR@ GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ GIT_PATH = @GIT_PATH@ GMOFILES = @GMOFILES@ GMSGFMT = @GMSGFMT@ GNOME_CFLAGS = @GNOME_CFLAGS@ GNOME_LIBS = @GNOME_LIBS@ GREP = @GREP@ GTKMM_CFLAGS = @GTKMM_CFLAGS@ GTKMM_LIBS = @GTKMM_LIBS@ HELP_DIR = @HELP_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@ LDFLAGS = @LDFLAGS@ LIBGLADEMM_CFLAGS = @LIBGLADEMM_CFLAGS@ LIBGLADEMM_LIBS = @LIBGLADEMM_LIBS@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LN_S = @LN_S@ LTLIBOBJS = @LTLIBOBJS@ MAKEINFO = @MAKEINFO@ MKDIR_P = @MKDIR_P@ MKINSTALLDIRS = @MKINSTALLDIRS@ MSGFMT = @MSGFMT@ MSGFMT_OPTS = @MSGFMT_OPTS@ MSGMERGE = @MSGMERGE@ OBJEXT = @OBJEXT@ OMF_DIR = @OMF_DIR@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PACKAGE_WEBSITE = @PACKAGE_WEBSITE@ PATH_SEPARATOR = @PATH_SEPARATOR@ PKG_CONFIG = @PKG_CONFIG@ POFILES = @POFILES@ POSUB = @POSUB@ PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@ PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@ PRINTING_CFLAGS = @PRINTING_CFLAGS@ PRINTING_LIBS = @PRINTING_LIBS@ RANLIB = @RANLIB@ SED = @SED@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ SORT = @SORT@ STRIP = @STRIP@ TR = @TR@ UNIQ = @UNIQ@ USE_NLS = @USE_NLS@ VERSION = @VERSION@ XGETTEXT = @XGETTEXT@ 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_CXX = @ac_ct_CXX@ 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_alias = @build_alias@ builddir = @builddir@ datadir = @datadir@ datarootdir = @datarootdir@ docdir = @docdir@ dvidir = @dvidir@ exec_prefix = @exec_prefix@ host_alias = @host_alias@ htmldir = @htmldir@ includedir = @includedir@ infodir = @infodir@ install_sh = @install_sh@ libdir = @libdir@ libexecdir = @libexecdir@ localedir = @localedir@ localstatedir = @localstatedir@ 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@ AM_CPPFLAGS = -I${top_srcdir}/src AM_CXXFLAGS = ${AGAVE_CFLAGS} @HAVE_CPPUNIT_TRUE@parsertest_SOURCES = parsertest.cc @HAVE_CPPUNIT_TRUE@parsertest_CXXFLAGS = $(AGAVE_CFLAGS) \ @HAVE_CPPUNIT_TRUE@ -I$(top_srcdir) @HAVE_CPPUNIT_TRUE@parsertest_LDADD = ${top_builddir}/src/paletteparser/libpaletteparser.a \ @HAVE_CPPUNIT_TRUE@ ${top_builddir}/src/core/libagave.a \ @HAVE_CPPUNIT_TRUE@ $(CPPUNIT_LIBS) \ @HAVE_CPPUNIT_TRUE@ $(AGAVE_LIBS) @HAVE_CPPUNIT_TRUE@CLEANFILES = check_PROGRAMS all: all-am .SUFFIXES: .SUFFIXES: .cc .o .obj $(srcdir)/Makefile.in: $(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) --gnu tests/paletteparser/Makefile'; \ cd $(top_srcdir) && \ $(AUTOMAKE) --gnu tests/paletteparser/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: $(am__configure_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(ACLOCAL_M4): $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh clean-checkPROGRAMS: -test -z "$(check_PROGRAMS)" || rm -f $(check_PROGRAMS) parsertest$(EXEEXT): $(parsertest_OBJECTS) $(parsertest_DEPENDENCIES) @rm -f parsertest$(EXEEXT) $(parsertest_LINK) $(parsertest_OBJECTS) $(parsertest_LDADD) $(LIBS) mostlyclean-compile: -rm -f *.$(OBJEXT) distclean-compile: -rm -f *.tab.c @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/parsertest-parsertest.Po@am__quote@ .cc.o: @am__fastdepCXX_TRUE@ $(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< @am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(CXXCOMPILE) -c -o $@ $< .cc.obj: @am__fastdepCXX_TRUE@ $(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'` @am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(CXXCOMPILE) -c -o $@ `$(CYGPATH_W) '$<'` parsertest-parsertest.o: parsertest.cc @am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(parsertest_CXXFLAGS) $(CXXFLAGS) -MT parsertest-parsertest.o -MD -MP -MF $(DEPDIR)/parsertest-parsertest.Tpo -c -o parsertest-parsertest.o `test -f 'parsertest.cc' || echo '$(srcdir)/'`parsertest.cc @am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/parsertest-parsertest.Tpo $(DEPDIR)/parsertest-parsertest.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='parsertest.cc' object='parsertest-parsertest.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(parsertest_CXXFLAGS) $(CXXFLAGS) -c -o parsertest-parsertest.o `test -f 'parsertest.cc' || echo '$(srcdir)/'`parsertest.cc parsertest-parsertest.obj: parsertest.cc @am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(parsertest_CXXFLAGS) $(CXXFLAGS) -MT parsertest-parsertest.obj -MD -MP -MF $(DEPDIR)/parsertest-parsertest.Tpo -c -o parsertest-parsertest.obj `if test -f 'parsertest.cc'; then $(CYGPATH_W) 'parsertest.cc'; else $(CYGPATH_W) '$(srcdir)/parsertest.cc'; fi` @am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/parsertest-parsertest.Tpo $(DEPDIR)/parsertest-parsertest.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='parsertest.cc' object='parsertest-parsertest.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(parsertest_CXXFLAGS) $(CXXFLAGS) -c -o parsertest-parsertest.obj `if test -f 'parsertest.cc'; then $(CYGPATH_W) 'parsertest.cc'; else $(CYGPATH_W) '$(srcdir)/parsertest.cc'; fi` 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) tags=; \ 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; }; }'`; \ if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \ test -n "$$unique" || unique=$$empty_fix; \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ $$tags $$unique; \ fi ctags: CTAGS CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) tags=; \ 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)$$tags$$unique" \ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ $$tags $$unique GTAGS: here=`$(am__cd) $(top_builddir) && pwd` \ && 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) '; \ 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`; \ echo "XPASS: $$tst"; \ ;; \ *) \ echo "PASS: $$tst"; \ ;; \ esac; \ elif test $$? -ne 77; then \ all=`expr $$all + 1`; \ case " $(XFAIL_TESTS) " in \ *[\ \ ]$$tst[\ \ ]*) \ xfail=`expr $$xfail + 1`; \ echo "XFAIL: $$tst"; \ ;; \ *) \ failed=`expr $$failed + 1`; \ echo "FAIL: $$tst"; \ ;; \ esac; \ else \ skip=`expr $$skip + 1`; \ echo "SKIP: $$tst"; \ fi; \ 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`; \ echo "$$dashes"; \ echo "$$banner"; \ test -z "$$skipped" || echo "$$skipped"; \ test -z "$$report" || echo "$$report"; \ echo "$$dashes"; \ 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 $(srcdir)/$$file && test $$d != $(srcdir); then \ cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ fi; \ cp -pR $$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 $(MAKE) $(AM_MAKEFLAGS) $(check_PROGRAMS) $(MAKE) $(AM_MAKEFLAGS) check-TESTS check: check-am all-am: Makefile 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: -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES) distclean-generic: -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_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-checkPROGRAMS clean-generic 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 info: info-am info-am: install-data-am: install-dvi: install-dvi-am 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 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 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-TESTS check-am clean \ clean-checkPROGRAMS clean-generic ctags distclean \ distclean-compile distclean-generic 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 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: agave-0.4.7/tests/paletteparser/Makefile.am0000644000175000017500000000077710663715205015617 00000000000000AM_CPPFLAGS = -I${top_srcdir}/src AM_CXXFLAGS = ${AGAVE_CFLAGS} ########################### ##### Unit Test rules ##### ########################### if HAVE_CPPUNIT TESTS = parsertest check_PROGRAMS = ${TESTS} parsertest_SOURCES = parsertest.cc parsertest_CXXFLAGS = $(AGAVE_CFLAGS) \ -I$(top_srcdir) parsertest_LDADD = ${top_builddir}/src/paletteparser/libpaletteparser.a \ ${top_builddir}/src/core/libagave.a \ $(CPPUNIT_LIBS) \ $(AGAVE_LIBS) CLEANFILES = check_PROGRAMS endif agave-0.4.7/tests/paletteparser/parsertest.cc0000644000175000017500000003355510663715205016266 00000000000000/******************************************************************************* * PROJECT: PaletteParser * * AUTHOR: Jonathon Jongsma * * Copyright (c) 2006 Jonathon Jongsma * * License: * 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 * *******************************************************************************/ #include #include #include #include #include #include using namespace std; namespace gcs { bool colorscheme_debug = false; } class ParseSuite : public CppUnit::TestFixture { CPPUNIT_TEST_SUITE(ParseSuite); CPPUNIT_TEST(testValidPalette); CPPUNIT_TEST(testParseColorValid); CPPUNIT_TEST(testParseColorInvalid); //CPPUNIT_TEST(testWithoutName); //CPPUNIT_TEST(testWithoutColumns); //CPPUNIT_TEST(testIgnoreComments); //CPPUNIT_TEST(testIgnoreEmptyLines); //CPPUNIT_TEST(testInvalidLine); CPPUNIT_TEST(testInvalidColor); //CPPUNIT_TEST(testVeryLongLine); //CPPUNIT_TEST(testPaletteOutOfOrder); //CPPUNIT_TEST(testPaletteOutOfOrder); CPPUNIT_TEST(testParseFile); // + test setting the values programmatically... CPPUNIT_TEST_SUITE_END(); protected: void testValidPalette(void); void testParseColorValid(void); void testParseColorInvalid(void); void testWithoutName(void); void testWithoutColumns(void); void testIgnoreComments(void); void testIgnoreEmptyLines(void); void testInvalidLine(void); void testInvalidColor(void); void testVeryLongLine(void); void testPaletteOutOfOrder(void); void testParseFile(void); }; void ParseSuite::testValidPalette(void) { std::istringstream example_palette( "GIMP Palette\n" "Name: Bears\n" "#\n" " 8 8 8 grey3\n" " 68 44 44 Untitled\n" " 80 8 12 Untitled\n" " 72 56 56 Untitled\n" "104 84 68 Untitled\n" "116 96 80 Untitled\n" " 84 56 44 Untitled\n" "140 104 88 Untitled\n" "172 116 92 Untitled\n" " 68 44 56 Untitled\n" " 88 72 68 Untitled\n" "112 84 76 Untitled\n" " 8 8 28 Untitled"); pp::Palette p; //example_palette >> p; p.parse(example_palette); CPPUNIT_ASSERT_EQUAL(Glib::ustring("Bears"), p.name()); CPPUNIT_ASSERT_EQUAL((size_t) 0, p.columns()); CPPUNIT_ASSERT_EQUAL((size_t) 13, p.colors().size()); // test a few random color values CPPUNIT_ASSERT_EQUAL((gint) 8, p.colors()[0]->get_red()); CPPUNIT_ASSERT_EQUAL((gint) 8, p.colors()[0]->get_green()); CPPUNIT_ASSERT_EQUAL((gint) 8, p.colors()[0]->get_blue()); CPPUNIT_ASSERT_EQUAL(Glib::ustring("grey3"), p.colors()[0]->get_name()); CPPUNIT_ASSERT_EQUAL((gint) 72, p.colors()[3]->get_red()); CPPUNIT_ASSERT_EQUAL((gint) 56, p.colors()[3]->get_green()); CPPUNIT_ASSERT_EQUAL((gint) 56, p.colors()[3]->get_blue()); CPPUNIT_ASSERT_EQUAL(Glib::ustring("Untitled"), p.colors()[3]->get_name()); CPPUNIT_ASSERT_EQUAL((gint) 172, p.colors()[8]->get_red()); CPPUNIT_ASSERT_EQUAL((gint) 116, p.colors()[8]->get_green()); CPPUNIT_ASSERT_EQUAL((gint) 92, p.colors()[8]->get_blue()); CPPUNIT_ASSERT_EQUAL(Glib::ustring("Untitled"), p.colors()[8]->get_name()); } void ParseSuite::testInvalidColor(void) { std::istringstream example_palette( "GIMP Palette\n" "Name: Bears\n" "Columns: 8\n" "#\n" " 8 8 8 grey3\n" " 68 44 44 Untitled\n" " 80 8 12 Untitled\n" " 72 56 56 Untitled\n" "104 84 68 Untitled color\n" "354 96 80 Untitled\n" " 84 56 44 Untitled\n" "140 104 88 Untitled\n" "172 116 92 Untitled\n" " 68 44 56 Untitled\n" " 88 72 68 Untitled\n" "112 84 76 Untitled\n" " 8 8 28 Untitled"); pp::Palette p; //example_palette2 >> p2; p.parse(example_palette); CPPUNIT_ASSERT_EQUAL(Glib::ustring("Bears"), p.name()); CPPUNIT_ASSERT_EQUAL((size_t) 8, p.columns()); // this time with columns CPPUNIT_ASSERT_EQUAL((size_t) 12, p.colors().size()); // test a few random color values CPPUNIT_ASSERT_EQUAL((gint) 8, p.colors()[0]->get_red()); CPPUNIT_ASSERT_EQUAL((gint) 8, p.colors()[0]->get_green()); CPPUNIT_ASSERT_EQUAL((gint) 8, p.colors()[0]->get_blue()); CPPUNIT_ASSERT_EQUAL(Glib::ustring("grey3"), p.colors()[0]->get_name()); CPPUNIT_ASSERT_EQUAL((gint) 104, p.colors()[4]->get_red()); CPPUNIT_ASSERT_EQUAL((gint) 84, p.colors()[4]->get_green()); CPPUNIT_ASSERT_EQUAL((gint) 68, p.colors()[4]->get_blue()); CPPUNIT_ASSERT_EQUAL(Glib::ustring("Untitled color"), p.colors()[4]->get_name()); // it's down an extra line since we should skip the bad color between // there... CPPUNIT_ASSERT_EQUAL((gint) 68, p.colors()[8]->get_red()); CPPUNIT_ASSERT_EQUAL((gint) 44, p.colors()[8]->get_green()); CPPUNIT_ASSERT_EQUAL((gint) 56, p.colors()[8]->get_blue()); CPPUNIT_ASSERT_EQUAL(Glib::ustring("Untitled"), p.colors()[8]->get_name()); } void ParseSuite::testParseFile(void) { const char* filename = "/usr/local/share/agave/palettes/Tango-Palette.gpl"; std::ifstream infile(filename); //cout << endl << "Now let's parse a system palette. I know! " << filename << endl; pp::Palette p3; p3.parse(infile); //cout << p3; //return 0; } void ParseSuite::testParseColorValid(void) { #define LONG_DESC "this one has a really long name. So long that it might not even fit into the buffer that is allocated for the name field while parsing it. It would fit into the rgb_t field, but not while parsing this one has a really long name. So long that it might not even fit into the buffer that is allocated for the name field while parsing it. It would fit into the rgb_t field, but not while parsing. Maybe I just make the parsing buffer large enough so that I never have to worry about it or something...." const char* s1 = " 8 8 8 grey3\n"; const char* s2 = " 68 44 44 Untitled\n"; const char* s3 = " 80 8 12 Untitled\n"; const char* s4 = " 72 56 56 Untitled\n"; const char* s5 = "104 84 68 Untitled\n"; const char* s6 = "116 96 80 Untitled\n"; const char* s7 = " 84 56 44 Untitled\n"; const char* s8 = "140 104 88 " LONG_DESC "\n"; const char* s9 = "172 116 92 multiplespaceseparator\n"; const char* s10 = " 68 44 56 Untitled\n"; const char* s11 = " 88 72 68 descriptionwithspaceatend \n"; const char* s12 = "112 84 76 multi-word description\n"; const char* s13 = " 8 8 28 Untitled"; const char* s14 = " 0 0 0 black"; // at limits const char* s15 = "255 255 255 white"; // hi limit pp::Palette p; pp::Palette::value_type rgb; rgb = p.parse_color(s1); CPPUNIT_ASSERT_EQUAL((gint) 8, rgb->get_red()); CPPUNIT_ASSERT_EQUAL((gint) 8, rgb->get_green()); CPPUNIT_ASSERT_EQUAL((gint) 8, rgb->get_blue()); CPPUNIT_ASSERT_EQUAL(Glib::ustring("grey3"), rgb->get_name()); rgb = p.parse_color(s2); CPPUNIT_ASSERT_EQUAL((gint) 68, rgb->get_red()); CPPUNIT_ASSERT_EQUAL((gint) 44, rgb->get_green()); CPPUNIT_ASSERT_EQUAL((gint) 44, rgb->get_blue()); CPPUNIT_ASSERT_EQUAL(Glib::ustring("Untitled"), rgb->get_name()); rgb = p.parse_color(s3); CPPUNIT_ASSERT_EQUAL((gint) 80, rgb->get_red()); CPPUNIT_ASSERT_EQUAL((gint) 8, rgb->get_green()); CPPUNIT_ASSERT_EQUAL((gint) 12, rgb->get_blue()); CPPUNIT_ASSERT_EQUAL(Glib::ustring("Untitled"), rgb->get_name()); rgb = p.parse_color(s4); CPPUNIT_ASSERT_EQUAL((gint) 72, rgb->get_red()); CPPUNIT_ASSERT_EQUAL((gint) 56, rgb->get_green()); CPPUNIT_ASSERT_EQUAL((gint) 56, rgb->get_blue()); CPPUNIT_ASSERT_EQUAL(Glib::ustring("Untitled"), rgb->get_name()); rgb = p.parse_color(s5); CPPUNIT_ASSERT_EQUAL((gint) 104, rgb->get_red()); CPPUNIT_ASSERT_EQUAL((gint) 84, rgb->get_green()); CPPUNIT_ASSERT_EQUAL((gint) 68, rgb->get_blue()); CPPUNIT_ASSERT_EQUAL(Glib::ustring("Untitled"), rgb->get_name()); rgb = p.parse_color(s6); CPPUNIT_ASSERT_EQUAL((gint) 116, rgb->get_red()); CPPUNIT_ASSERT_EQUAL((gint) 96, rgb->get_green()); CPPUNIT_ASSERT_EQUAL((gint) 80, rgb->get_blue()); CPPUNIT_ASSERT_EQUAL(Glib::ustring("Untitled"), rgb->get_name()); rgb = p.parse_color(s7); CPPUNIT_ASSERT_EQUAL((gint) 84, rgb->get_red()); CPPUNIT_ASSERT_EQUAL((gint) 56, rgb->get_green()); CPPUNIT_ASSERT_EQUAL((gint) 44, rgb->get_blue()); CPPUNIT_ASSERT_EQUAL(Glib::ustring("Untitled"), rgb->get_name()); rgb = p.parse_color(s8); CPPUNIT_ASSERT_EQUAL((gint) 140, rgb->get_red()); CPPUNIT_ASSERT_EQUAL((gint) 104, rgb->get_green()); CPPUNIT_ASSERT_EQUAL((gint) 88, rgb->get_blue()); // just make sure the first X characters are the same CPPUNIT_ASSERT_EQUAL(Glib::ustring(LONG_DESC).substr(0, 100), rgb->get_name().substr(0, 100)); rgb = p.parse_color(s9); CPPUNIT_ASSERT_EQUAL((gint) 172, rgb->get_red()); CPPUNIT_ASSERT_EQUAL((gint) 116, rgb->get_green()); CPPUNIT_ASSERT_EQUAL((gint) 92, rgb->get_blue()); CPPUNIT_ASSERT_EQUAL(Glib::ustring("multiplespaceseparator"), rgb->get_name()); rgb = p.parse_color(s10); CPPUNIT_ASSERT_EQUAL((gint) 68, rgb->get_red()); CPPUNIT_ASSERT_EQUAL((gint) 44, rgb->get_green()); CPPUNIT_ASSERT_EQUAL((gint) 56, rgb->get_blue()); CPPUNIT_ASSERT_EQUAL(Glib::ustring("Untitled"), rgb->get_name()); rgb = p.parse_color(s11); CPPUNIT_ASSERT_EQUAL((gint) 88, rgb->get_red()); CPPUNIT_ASSERT_EQUAL((gint) 72, rgb->get_green()); CPPUNIT_ASSERT_EQUAL((gint) 68, rgb->get_blue()); CPPUNIT_ASSERT_EQUAL(Glib::ustring("descriptionwithspaceatend"), rgb->get_name()); rgb = p.parse_color(s12); CPPUNIT_ASSERT_EQUAL((gint) 112, rgb->get_red()); CPPUNIT_ASSERT_EQUAL((gint) 84, rgb->get_green()); CPPUNIT_ASSERT_EQUAL((gint) 76, rgb->get_blue()); CPPUNIT_ASSERT_EQUAL(Glib::ustring("multi-word description"), rgb->get_name()); rgb = p.parse_color(s13); CPPUNIT_ASSERT_EQUAL((gint) 8, rgb->get_red()); CPPUNIT_ASSERT_EQUAL((gint) 8, rgb->get_green()); CPPUNIT_ASSERT_EQUAL((gint) 28, rgb->get_blue()); CPPUNIT_ASSERT_EQUAL(Glib::ustring("Untitled"), rgb->get_name()); rgb = p.parse_color(s14); CPPUNIT_ASSERT_EQUAL((gint) 0, rgb->get_red()); CPPUNIT_ASSERT_EQUAL((gint) 0, rgb->get_green()); CPPUNIT_ASSERT_EQUAL((gint) 0, rgb->get_blue()); CPPUNIT_ASSERT_EQUAL(Glib::ustring("black"), rgb->get_name()); rgb = p.parse_color(s15); CPPUNIT_ASSERT_EQUAL((gint) 255, rgb->get_red()); CPPUNIT_ASSERT_EQUAL((gint) 255, rgb->get_green()); CPPUNIT_ASSERT_EQUAL((gint) 255, rgb->get_blue()); CPPUNIT_ASSERT_EQUAL(Glib::ustring("white"), rgb->get_name()); } void ParseSuite::testParseColorInvalid(void) { const char* s1 = " -8 8 8 grey3\n"; // red negative const char* s2 = " 8 -8 8 grey3\n"; // green negative const char* s3 = " 8 8 -8 grey3\n"; // blue negative const char* s4 = " -8 -8 -8 grey3\n"; // all negative const char* s5 = "368 44 44 Untitled\n"; // red too large const char* s6 = " 80 8 512 Untitled\n"; // blue too large const char* s7 = " 72 856 56 Untitled\n"; // green too large const char* s8 = "404 584 668 Untitled\n"; // all too large const char* s9 = "116 96 80 Untitled\n"; // odd spacing -- should this fail? const char* s10 = " 84 56 44 Untitled"; // missing newline at end -- should this fail? const char* s11 = " a 56 44 Untitled\n"; // red is not a number const char* s12 = " 84 b 44 Untitled\n"; // green is not a number const char* s13 = " 84 56 c Untitled\n"; // blue is not a number const char* s14 = " a b c Untitled\n"; // all not numbers const char* s15 = " & ? = Untitled\n"; // other weird characters //"140 104 88 Untitled\n"; //"172 116 92 Untitled\n"; //" 68 44 56 Untitled\n"; //" 88 72 68 Untitled\n"; //"112 84 76 Untitled\n"; //" 8 8 28 Untitled"; pp::Palette p; CPPUNIT_ASSERT_THROW(p.parse_color(s1), pp::ParseError); CPPUNIT_ASSERT_THROW(p.parse_color(s2), pp::ParseError); CPPUNIT_ASSERT_THROW(p.parse_color(s3), pp::ParseError); CPPUNIT_ASSERT_THROW(p.parse_color(s4), pp::ParseError); CPPUNIT_ASSERT_THROW(p.parse_color(s5), pp::ParseError); CPPUNIT_ASSERT_THROW(p.parse_color(s6), pp::ParseError); CPPUNIT_ASSERT_THROW(p.parse_color(s7), pp::ParseError); CPPUNIT_ASSERT_THROW(p.parse_color(s8), pp::ParseError); //CPPUNIT_ASSERT_THROW(p.parse_color(s9), pp::ParseError); //CPPUNIT_ASSERT_THROW(p.parse_color(s10), pp::ParseError); CPPUNIT_ASSERT_THROW(p.parse_color(s11), pp::ParseError); CPPUNIT_ASSERT_THROW(p.parse_color(s12), pp::ParseError); CPPUNIT_ASSERT_THROW(p.parse_color(s13), pp::ParseError); CPPUNIT_ASSERT_THROW(p.parse_color(s14), pp::ParseError); CPPUNIT_ASSERT_THROW(p.parse_color(s15), pp::ParseError); } int main() { CppUnit::TextUi::TestRunner runner; runner.addTest(ParseSuite::suite()); return !runner.run(); } agave-0.4.7/tests/core/0000777000175000017500000000000011224443301011676 500000000000000agave-0.4.7/tests/core/Makefile.in0000644000175000017500000005557211224442713013703 00000000000000# Makefile.in generated by automake 1.10.2 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # 2003, 2004, 2005, 2006, 2007, 2008 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@ pkglibdir = $(libdir)/@PACKAGE@ pkgincludedir = $(includedir)/@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 = : @HAVE_CPPUNIT_TRUE@TESTS = coretest$(EXEEXT) @HAVE_CPPUNIT_TRUE@check_PROGRAMS = $(am__EXEEXT_1) subdir = tests/core DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \ $(top_srcdir)/configure.ac 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 = @HAVE_CPPUNIT_TRUE@am__EXEEXT_1 = coretest$(EXEEXT) am__coretest_SOURCES_DIST = color-test.cc color-test.h \ color-group-test.cc color-group-test.h test-main.cc @HAVE_CPPUNIT_TRUE@am_coretest_OBJECTS = \ @HAVE_CPPUNIT_TRUE@ coretest-color-test.$(OBJEXT) \ @HAVE_CPPUNIT_TRUE@ coretest-color-group-test.$(OBJEXT) \ @HAVE_CPPUNIT_TRUE@ coretest-test-main.$(OBJEXT) coretest_OBJECTS = $(am_coretest_OBJECTS) am__DEPENDENCIES_1 = @HAVE_CPPUNIT_TRUE@coretest_DEPENDENCIES = \ @HAVE_CPPUNIT_TRUE@ ${top_builddir}/src/core/libagave.a \ @HAVE_CPPUNIT_TRUE@ $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) coretest_LINK = $(CXXLD) $(coretest_CXXFLAGS) $(CXXFLAGS) \ $(AM_LDFLAGS) $(LDFLAGS) -o $@ DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir) depcomp = $(SHELL) $(top_srcdir)/depcomp am__depfiles_maybe = depfiles CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) CXXLD = $(CXX) CXXLINK = $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(AM_LDFLAGS) $(LDFLAGS) \ -o $@ COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) CCLD = $(CC) LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ SOURCES = $(coretest_SOURCES) DIST_SOURCES = $(am__coretest_SOURCES_DIST) ETAGS = etags CTAGS = ctags DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ AGAVE_CFLAGS = @AGAVE_CFLAGS@ AGAVE_ICONDIR = @AGAVE_ICONDIR@ AGAVE_LIBS = @AGAVE_LIBS@ AGAVE_LOCALEDIR = @AGAVE_LOCALEDIR@ AGAVE_PALETTEDIR = @AGAVE_PALETTEDIR@ AGAVE_UIDIR = @AGAVE_UIDIR@ ALL_LINGUAS = @ALL_LINGUAS@ AMTAR = @AMTAR@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ AWK = @AWK@ CAIRO_RING_CFLAGS = @CAIRO_RING_CFLAGS@ CAIRO_RING_LIBS = @CAIRO_RING_LIBS@ CATALOGS = @CATALOGS@ CATOBJEXT = @CATOBJEXT@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPPFLAGS = @CPPFLAGS@ CPPUNIT_CFLAGS = @CPPUNIT_CFLAGS@ CPPUNIT_CONFIG = @CPPUNIT_CONFIG@ CPPUNIT_LIBS = @CPPUNIT_LIBS@ CXX = @CXX@ CXXCPP = @CXXCPP@ CXXDEPMODE = @CXXDEPMODE@ CXXFLAGS = @CXXFLAGS@ CYGPATH_W = @CYGPATH_W@ DATADIRNAME = @DATADIRNAME@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ DISTCHECK_CONFIGURE_FLAGS = @DISTCHECK_CONFIGURE_FLAGS@ DOC_USER_FORMATS = @DOC_USER_FORMATS@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ GCONFMM_CFLAGS = @GCONFMM_CFLAGS@ GCONFMM_LIBS = @GCONFMM_LIBS@ GCONFTOOL = @GCONFTOOL@ GCONF_SCHEMA_CONFIG_SOURCE = @GCONF_SCHEMA_CONFIG_SOURCE@ GCONF_SCHEMA_FILE_DIR = @GCONF_SCHEMA_FILE_DIR@ GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ GIT_PATH = @GIT_PATH@ GMOFILES = @GMOFILES@ GMSGFMT = @GMSGFMT@ GNOME_CFLAGS = @GNOME_CFLAGS@ GNOME_LIBS = @GNOME_LIBS@ GREP = @GREP@ GTKMM_CFLAGS = @GTKMM_CFLAGS@ GTKMM_LIBS = @GTKMM_LIBS@ HELP_DIR = @HELP_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@ LDFLAGS = @LDFLAGS@ LIBGLADEMM_CFLAGS = @LIBGLADEMM_CFLAGS@ LIBGLADEMM_LIBS = @LIBGLADEMM_LIBS@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LN_S = @LN_S@ LTLIBOBJS = @LTLIBOBJS@ MAKEINFO = @MAKEINFO@ MKDIR_P = @MKDIR_P@ MKINSTALLDIRS = @MKINSTALLDIRS@ MSGFMT = @MSGFMT@ MSGFMT_OPTS = @MSGFMT_OPTS@ MSGMERGE = @MSGMERGE@ OBJEXT = @OBJEXT@ OMF_DIR = @OMF_DIR@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PACKAGE_WEBSITE = @PACKAGE_WEBSITE@ PATH_SEPARATOR = @PATH_SEPARATOR@ PKG_CONFIG = @PKG_CONFIG@ POFILES = @POFILES@ POSUB = @POSUB@ PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@ PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@ PRINTING_CFLAGS = @PRINTING_CFLAGS@ PRINTING_LIBS = @PRINTING_LIBS@ RANLIB = @RANLIB@ SED = @SED@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ SORT = @SORT@ STRIP = @STRIP@ TR = @TR@ UNIQ = @UNIQ@ USE_NLS = @USE_NLS@ VERSION = @VERSION@ XGETTEXT = @XGETTEXT@ 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_CXX = @ac_ct_CXX@ 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_alias = @build_alias@ builddir = @builddir@ datadir = @datadir@ datarootdir = @datarootdir@ docdir = @docdir@ dvidir = @dvidir@ exec_prefix = @exec_prefix@ host_alias = @host_alias@ htmldir = @htmldir@ includedir = @includedir@ infodir = @infodir@ install_sh = @install_sh@ libdir = @libdir@ libexecdir = @libexecdir@ localedir = @localedir@ localstatedir = @localstatedir@ 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@ AM_CPPFLAGS = -I${top_srcdir}/src AM_CXXFLAGS = ${AGAVE_CFLAGS} @HAVE_CPPUNIT_TRUE@coretest_SOURCES = color-test.cc \ @HAVE_CPPUNIT_TRUE@ color-test.h \ @HAVE_CPPUNIT_TRUE@ color-group-test.cc \ @HAVE_CPPUNIT_TRUE@ color-group-test.h \ @HAVE_CPPUNIT_TRUE@ test-main.cc @HAVE_CPPUNIT_TRUE@coretest_LDADD = ${top_builddir}/src/core/libagave.a \ @HAVE_CPPUNIT_TRUE@ ${CPPUNIT_LIBS} \ @HAVE_CPPUNIT_TRUE@ ${AGAVE_LIBS} @HAVE_CPPUNIT_TRUE@coretest_CXXFLAGS = -DUNIT_TEST \ @HAVE_CPPUNIT_TRUE@ ${AM_CXXFLAGS} @HAVE_CPPUNIT_TRUE@CLEANFILES = check_PROGRAMS all: all-am .SUFFIXES: .SUFFIXES: .cc .o .obj $(srcdir)/Makefile.in: $(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) --gnu tests/core/Makefile'; \ cd $(top_srcdir) && \ $(AUTOMAKE) --gnu tests/core/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: $(am__configure_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(ACLOCAL_M4): $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh clean-checkPROGRAMS: -test -z "$(check_PROGRAMS)" || rm -f $(check_PROGRAMS) coretest$(EXEEXT): $(coretest_OBJECTS) $(coretest_DEPENDENCIES) @rm -f coretest$(EXEEXT) $(coretest_LINK) $(coretest_OBJECTS) $(coretest_LDADD) $(LIBS) mostlyclean-compile: -rm -f *.$(OBJEXT) distclean-compile: -rm -f *.tab.c @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/coretest-color-group-test.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/coretest-color-test.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/coretest-test-main.Po@am__quote@ .cc.o: @am__fastdepCXX_TRUE@ $(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< @am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(CXXCOMPILE) -c -o $@ $< .cc.obj: @am__fastdepCXX_TRUE@ $(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'` @am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(CXXCOMPILE) -c -o $@ `$(CYGPATH_W) '$<'` coretest-color-test.o: color-test.cc @am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(coretest_CXXFLAGS) $(CXXFLAGS) -MT coretest-color-test.o -MD -MP -MF $(DEPDIR)/coretest-color-test.Tpo -c -o coretest-color-test.o `test -f 'color-test.cc' || echo '$(srcdir)/'`color-test.cc @am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/coretest-color-test.Tpo $(DEPDIR)/coretest-color-test.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='color-test.cc' object='coretest-color-test.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(coretest_CXXFLAGS) $(CXXFLAGS) -c -o coretest-color-test.o `test -f 'color-test.cc' || echo '$(srcdir)/'`color-test.cc coretest-color-test.obj: color-test.cc @am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(coretest_CXXFLAGS) $(CXXFLAGS) -MT coretest-color-test.obj -MD -MP -MF $(DEPDIR)/coretest-color-test.Tpo -c -o coretest-color-test.obj `if test -f 'color-test.cc'; then $(CYGPATH_W) 'color-test.cc'; else $(CYGPATH_W) '$(srcdir)/color-test.cc'; fi` @am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/coretest-color-test.Tpo $(DEPDIR)/coretest-color-test.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='color-test.cc' object='coretest-color-test.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(coretest_CXXFLAGS) $(CXXFLAGS) -c -o coretest-color-test.obj `if test -f 'color-test.cc'; then $(CYGPATH_W) 'color-test.cc'; else $(CYGPATH_W) '$(srcdir)/color-test.cc'; fi` coretest-color-group-test.o: color-group-test.cc @am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(coretest_CXXFLAGS) $(CXXFLAGS) -MT coretest-color-group-test.o -MD -MP -MF $(DEPDIR)/coretest-color-group-test.Tpo -c -o coretest-color-group-test.o `test -f 'color-group-test.cc' || echo '$(srcdir)/'`color-group-test.cc @am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/coretest-color-group-test.Tpo $(DEPDIR)/coretest-color-group-test.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='color-group-test.cc' object='coretest-color-group-test.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(coretest_CXXFLAGS) $(CXXFLAGS) -c -o coretest-color-group-test.o `test -f 'color-group-test.cc' || echo '$(srcdir)/'`color-group-test.cc coretest-color-group-test.obj: color-group-test.cc @am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(coretest_CXXFLAGS) $(CXXFLAGS) -MT coretest-color-group-test.obj -MD -MP -MF $(DEPDIR)/coretest-color-group-test.Tpo -c -o coretest-color-group-test.obj `if test -f 'color-group-test.cc'; then $(CYGPATH_W) 'color-group-test.cc'; else $(CYGPATH_W) '$(srcdir)/color-group-test.cc'; fi` @am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/coretest-color-group-test.Tpo $(DEPDIR)/coretest-color-group-test.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='color-group-test.cc' object='coretest-color-group-test.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(coretest_CXXFLAGS) $(CXXFLAGS) -c -o coretest-color-group-test.obj `if test -f 'color-group-test.cc'; then $(CYGPATH_W) 'color-group-test.cc'; else $(CYGPATH_W) '$(srcdir)/color-group-test.cc'; fi` coretest-test-main.o: test-main.cc @am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(coretest_CXXFLAGS) $(CXXFLAGS) -MT coretest-test-main.o -MD -MP -MF $(DEPDIR)/coretest-test-main.Tpo -c -o coretest-test-main.o `test -f 'test-main.cc' || echo '$(srcdir)/'`test-main.cc @am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/coretest-test-main.Tpo $(DEPDIR)/coretest-test-main.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='test-main.cc' object='coretest-test-main.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(coretest_CXXFLAGS) $(CXXFLAGS) -c -o coretest-test-main.o `test -f 'test-main.cc' || echo '$(srcdir)/'`test-main.cc coretest-test-main.obj: test-main.cc @am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(coretest_CXXFLAGS) $(CXXFLAGS) -MT coretest-test-main.obj -MD -MP -MF $(DEPDIR)/coretest-test-main.Tpo -c -o coretest-test-main.obj `if test -f 'test-main.cc'; then $(CYGPATH_W) 'test-main.cc'; else $(CYGPATH_W) '$(srcdir)/test-main.cc'; fi` @am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/coretest-test-main.Tpo $(DEPDIR)/coretest-test-main.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='test-main.cc' object='coretest-test-main.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(coretest_CXXFLAGS) $(CXXFLAGS) -c -o coretest-test-main.obj `if test -f 'test-main.cc'; then $(CYGPATH_W) 'test-main.cc'; else $(CYGPATH_W) '$(srcdir)/test-main.cc'; fi` 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) tags=; \ 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; }; }'`; \ if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \ test -n "$$unique" || unique=$$empty_fix; \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ $$tags $$unique; \ fi ctags: CTAGS CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) tags=; \ 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)$$tags$$unique" \ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ $$tags $$unique GTAGS: here=`$(am__cd) $(top_builddir) && pwd` \ && 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) '; \ 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`; \ echo "XPASS: $$tst"; \ ;; \ *) \ echo "PASS: $$tst"; \ ;; \ esac; \ elif test $$? -ne 77; then \ all=`expr $$all + 1`; \ case " $(XFAIL_TESTS) " in \ *[\ \ ]$$tst[\ \ ]*) \ xfail=`expr $$xfail + 1`; \ echo "XFAIL: $$tst"; \ ;; \ *) \ failed=`expr $$failed + 1`; \ echo "FAIL: $$tst"; \ ;; \ esac; \ else \ skip=`expr $$skip + 1`; \ echo "SKIP: $$tst"; \ fi; \ 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`; \ echo "$$dashes"; \ echo "$$banner"; \ test -z "$$skipped" || echo "$$skipped"; \ test -z "$$report" || echo "$$report"; \ echo "$$dashes"; \ 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 $(srcdir)/$$file && test $$d != $(srcdir); then \ cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ fi; \ cp -pR $$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 $(MAKE) $(AM_MAKEFLAGS) $(check_PROGRAMS) $(MAKE) $(AM_MAKEFLAGS) check-TESTS check: check-am all-am: Makefile 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: -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES) distclean-generic: -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_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-checkPROGRAMS clean-generic 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 info: info-am info-am: install-data-am: install-dvi: install-dvi-am 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 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 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-TESTS check-am clean \ clean-checkPROGRAMS clean-generic ctags distclean \ distclean-compile distclean-generic 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 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: agave-0.4.7/tests/core/color-test.cc0000644000175000017500000002435510663715205014240 00000000000000/******************************************************************************* * PROJECT: GNOME Colorscheme * * AUTHOR: Jonathon Jongsma * * Copyright (c) 2005 Jonathon Jongsma * * License: * 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 * *******************************************************************************/ #include "color-test.h" #include "core/gcs-color.h" #include #include using namespace gcs::Test; /******************************* * CONSTRUCTOR TESTS ******************************/ void Color::ConstructionSuite::testDefaultConstructor(void) { ColorPtr c = gcs::Color::create(); CPPUNIT_ASSERT_EQUAL(0, c->get_red()); CPPUNIT_ASSERT_EQUAL(0, c->get_green()); CPPUNIT_ASSERT_EQUAL(0, c->get_blue()); CPPUNIT_ASSERT_EQUAL((Glib::ustring) "#000000", c->get_hexstring()); CPPUNIT_ASSERT_EQUAL(0, c->get_hue()); CPPUNIT_ASSERT_EQUAL(0, c->get_saturation()); CPPUNIT_ASSERT_EQUAL(0, c->get_value()); } void Color::ConstructionSuite::testHexConstructor(void) { tHexString hex = "#347a9b"; tHexString noHash = "347a9b"; ColorPtr c = gcs::Color::create(hex); tColorHsv expectedHsv(199, 66, 61); tColorRgb expectedRgb(52, 122, 155); CPPUNIT_ASSERT_EQUAL(hex, c->get_hexstring()); CPPUNIT_ASSERT_EQUAL(expectedRgb, c->get_rgb()); CPPUNIT_ASSERT_EQUAL(expectedHsv, c->get_hsv()); ColorPtr d = gcs::Color::create(noHash); CPPUNIT_ASSERT_EQUAL(hex, d->get_hexstring()); CPPUNIT_ASSERT_EQUAL(expectedRgb, d->get_rgb()); CPPUNIT_ASSERT_EQUAL(expectedHsv, d->get_hsv()); tHexString shortHex = "#2b5"; tHexString notShort = "#22bb55"; ColorPtr e = gcs::Color::create(shortHex); CPPUNIT_ASSERT_EQUAL(notShort, e->get_hexstring()); tHexString shortNoHash = "2b5"; ColorPtr f = gcs::Color::create(shortNoHash); CPPUNIT_ASSERT_EQUAL(notShort, f->get_hexstring()); } void Color::ConstructionSuite::testRgbConstructor(void) { gint r = 56, g = 95, b = 145; ColorPtr c = gcs::Color::create(r, g, b); tColorRgb expectedRgb(r, g, b); tHexString expectedHex("#385f91"); tColorHsv expectedHsv(214, 61, 57); CPPUNIT_ASSERT_EQUAL(expectedRgb, c->get_rgb()); CPPUNIT_ASSERT_EQUAL(expectedHex, c->get_hexstring()); CPPUNIT_ASSERT_EQUAL(expectedHsv, c->get_hsv()); } void Color::ConstructionSuite::testGdkConstructor(void) { tHexString hex("#76ab51"); Gdk::Color gdkcolor(hex); tColorRgb expectedRgb(118, 171, 81); tColorHsv expectedHsv(95, 53, 67); ColorPtr c = gcs::Color::create(gdkcolor); CPPUNIT_ASSERT_EQUAL(expectedRgb, c->get_rgb()); CPPUNIT_ASSERT_EQUAL(expectedHsv, c->get_hsv()); CPPUNIT_ASSERT_EQUAL(hex, c->get_hexstring()); } void Color::ConstructionSuite::testCopyConstructor(void) { tHexString hex = "#347a9b"; ColorPtr c = gcs::Color::create(hex); tColorHsv expectedHsv(199, 66, 61); tColorRgb expectedRgb(52, 122, 155); ColorPtr d(c); CPPUNIT_ASSERT_EQUAL(hex, d->get_hexstring()); CPPUNIT_ASSERT_EQUAL(expectedRgb, d->get_rgb()); CPPUNIT_ASSERT_EQUAL(expectedHsv, d->get_hsv()); } void Color::ConstructionSuite::testDestructor(void) { // nothing to do for now. } /******************************* * STATIC FUNCTION TESTS ******************************/ void Color::StaticFunctions::testRgbToHex(void) { tColorRgb rgb(123, 54, 211); tHexString hex = gcs::Color::rgb_to_hex(rgb); tHexString expected("#7b36d3"); CPPUNIT_ASSERT_EQUAL(expected, hex); } void Color::StaticFunctions::testRgbToHsv(void) { tColorRgb rgb(123, 54, 211); tColorHsv expectedHsv(266, 74, 83); tColorHsv actualHsv = gcs::Color::rgb_to_hsv(rgb); CPPUNIT_ASSERT_EQUAL(expectedHsv, actualHsv); } void Color::StaticFunctions::testRgbAsP(void) { gint r, g, b, x, y, z, zz; gdouble r_expected, g_expected, b_expected, x_expected, y_expected, z_expected, zz_expected; r = 219; g = 76; b = 198; x = 0; y = 255; z = 1234; zz = -23; r_expected = 0.85882; g_expected = 0.29803; b_expected = 0.77647; x_expected = 0.0; y_expected = 1.0; z_expected = 4.83921; zz_expected = -0.09019; CPPUNIT_ASSERT_DOUBLES_EQUAL(r_expected, gcs::Color::rgb_as_p(r), 0.001); CPPUNIT_ASSERT_DOUBLES_EQUAL(g_expected, gcs::Color::rgb_as_p(g), 0.001); CPPUNIT_ASSERT_DOUBLES_EQUAL(b_expected, gcs::Color::rgb_as_p(b), 0.001); CPPUNIT_ASSERT_DOUBLES_EQUAL(x_expected, gcs::Color::rgb_as_p(x), 0.001); CPPUNIT_ASSERT_DOUBLES_EQUAL(y_expected, gcs::Color::rgb_as_p(y), 0.001); CPPUNIT_ASSERT_DOUBLES_EQUAL(z_expected, gcs::Color::rgb_as_p(z), 0.001); CPPUNIT_ASSERT_DOUBLES_EQUAL(zz_expected, gcs::Color::rgb_as_p(zz), 0.001); } /******************************* * GetsAndSets ******************************/ void Color::GetsAndSets::testSetRgb(void) { gint r, g, b; r = 219; g = 76; b = 198; tHexString expected_hex = "#db4cc6"; tColorHsv expected_hsv(309, 65, 86); ColorPtr c = gcs::Color::create(); c->set(r, g, b); CPPUNIT_ASSERT_EQUAL(r, c->get_red()); CPPUNIT_ASSERT_EQUAL(g, c->get_green()); CPPUNIT_ASSERT_EQUAL(b, c->get_blue()); CPPUNIT_ASSERT_EQUAL(expected_hex, c->get_hexstring()); CPPUNIT_ASSERT_EQUAL(expected_hsv, c->get_hsv()); } void Color::GetsAndSets::testSetHex(void) { tHexString hex = "#db4cc6"; ColorPtr c = gcs::Color::create(); c->set(hex); CPPUNIT_ASSERT_EQUAL(hex, c->get_hexstring()); tHexString withHash = "#4cc6db"; tHexString noHash = "4cc6db"; ColorPtr d = gcs::Color::create(); d->set(noHash); CPPUNIT_ASSERT_EQUAL(withHash, d->get_hexstring()); tHexString shortHex = "#4c9"; tHexString notShort = "#44cc99"; ColorPtr e = gcs::Color::create(); e->set(shortHex); CPPUNIT_ASSERT_EQUAL(notShort, e->get_hexstring()); tHexString shortNoHash = "#4c9"; ColorPtr f = gcs::Color::create(); f->set(shortNoHash); CPPUNIT_ASSERT_EQUAL(notShort, f->get_hexstring()); } void Color::GetsAndSets::testSetRed(void) { gint r1 = 0; gint r2 = 255; gint r3 = 127; gint r4 = 301; gint r5 = -23; ColorPtr c = gcs::Color::create(); c->set_red(r1); CPPUNIT_ASSERT_EQUAL(r1, c->get_red()); c->set_red(r2); CPPUNIT_ASSERT_EQUAL(r2, c->get_red()); c->set_red(r3); CPPUNIT_ASSERT_EQUAL(r3, c->get_red()); c->set_red(r4); CPPUNIT_ASSERT_EQUAL(r4 % maxRgbValue, c->get_red()); c->set_red(r5); CPPUNIT_ASSERT_EQUAL(r5 + maxRgbValue, c->get_red()); } void Color::GetsAndSets::testSetGreen(void) { gint g1 = 0; gint g2 = 255; gint g3 = 127; gint g4 = 301; gint g5 = -23; ColorPtr c = gcs::Color::create(); c->set_green(g1); CPPUNIT_ASSERT_EQUAL(g1, c->get_green()); c->set_green(g2); CPPUNIT_ASSERT_EQUAL(g2, c->get_green()); c->set_green(g3); CPPUNIT_ASSERT_EQUAL(g3, c->get_green()); c->set_green(g4); CPPUNIT_ASSERT_EQUAL(g4 % maxRgbValue, c->get_green()); c->set_green(g5); CPPUNIT_ASSERT_EQUAL(g5 + maxRgbValue, c->get_green()); } void Color::GetsAndSets::testSetBlue(void) { gint b1 = 0; gint b2 = 255; gint b3 = 127; gint b4 = 301; gint b5 = -23; ColorPtr c = gcs::Color::create(); c->set_blue(b1); CPPUNIT_ASSERT_EQUAL(b1, c->get_blue()); c->set_blue(b2); CPPUNIT_ASSERT_EQUAL(b2, c->get_blue()); c->set_blue(b3); CPPUNIT_ASSERT_EQUAL(b3, c->get_blue()); c->set_blue(b4); CPPUNIT_ASSERT_EQUAL(b4 % maxRgbValue, c->get_blue()); c->set_blue(b5); CPPUNIT_ASSERT_EQUAL(b5 + maxRgbValue, c->get_blue()); } void Color::GetsAndSets::testSetHue(void) { gint h1 = 0; gint h2 = maxHueValue; gint h3 = 127; gint h4 = 401; gint h5 = -23; // hue only makes sense if there is an s and v first ColorPtr c = gcs::Color::create("#FF0000"); c->set_hue(h1); CPPUNIT_ASSERT_EQUAL(h1 % maxHueValue, c->get_hue()); c->set_hue(h2); CPPUNIT_ASSERT_EQUAL(h2 % maxHueValue, c->get_hue()); c->set_hue(h3); CPPUNIT_ASSERT_EQUAL(h3 % maxHueValue, c->get_hue()); c->set_hue(h4); CPPUNIT_ASSERT_EQUAL(h4 % maxHueValue, c->get_hue()); c->set_hue(h5); CPPUNIT_ASSERT_EQUAL(h5 + maxHueValue, c->get_hue()); } void Color::GetsAndSets::testSetSaturation(void) { gint s1 = 0; gint s2 = maxSvValue; gint s3 = 66; gint s4 = 301; gint s5 = -23; ColorPtr c = gcs::Color::create("#00FF00"); c->set_saturation(s1); CPPUNIT_ASSERT_EQUAL(s1 > maxSvValue ? maxSvValue : s1, c->get_saturation()); c->set_saturation(s2); CPPUNIT_ASSERT_EQUAL(s2 > maxSvValue ? maxSvValue : s2, c->get_saturation()); c->set_saturation(s3); CPPUNIT_ASSERT_EQUAL(s3 > maxSvValue ? maxSvValue : s3, c->get_saturation()); c->set_saturation(s4); CPPUNIT_ASSERT_EQUAL(s4 > maxSvValue ? maxSvValue : s4, c->get_saturation()); c->set_saturation(s5); CPPUNIT_ASSERT_EQUAL(s5 < 0 ? 0 : s5, c->get_saturation()); } void Color::GetsAndSets::testSetValue(void) { gint v1 = 0; gint v2 = maxSvValue; gint v3 = 66; gint v4 = 301; gint v5 = -23; ColorPtr c = gcs::Color::create("#0000FF"); c->set_value(v1); CPPUNIT_ASSERT_EQUAL(v1 > maxSvValue ? maxSvValue : v1, c->get_value()); c->set_value(v2); CPPUNIT_ASSERT_EQUAL(v2 > maxSvValue ? maxSvValue : v2, c->get_value()); c->set_value(v3); CPPUNIT_ASSERT_EQUAL(v3 > maxSvValue ? maxSvValue : v3, c->get_value()); c->set_value(v4); CPPUNIT_ASSERT_EQUAL(v4 > maxSvValue ? maxSvValue : v4, c->get_value()); c->set_value(v5); CPPUNIT_ASSERT_EQUAL(v5 < 0 ? 0 : v5, c->get_value()); } agave-0.4.7/tests/core/color-test.h0000644000175000017500000000672010663715205014076 00000000000000/******************************************************************************* * PROJECT: GNOME Colorscheme * * AUTHOR: Jonathon Jongsma * * Copyright (c) 2005 Jonathon Jongsma * * License: * 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 * *******************************************************************************/ #ifndef __GCS_COLOR_TEST_H #define __GCS_COLOR_TEST_H #include "core/gcs-color.h" #include #include namespace gcs { namespace Test { namespace Color { class ConstructionSuite : public CppUnit::TestFixture { CPPUNIT_TEST_SUITE(ConstructionSuite); CPPUNIT_TEST(testDefaultConstructor); CPPUNIT_TEST(testHexConstructor); CPPUNIT_TEST(testRgbConstructor); CPPUNIT_TEST(testGdkConstructor); CPPUNIT_TEST(testCopyConstructor); CPPUNIT_TEST(testDestructor); CPPUNIT_TEST_SUITE_END(); protected: void testDefaultConstructor(void); void testHexConstructor(void); void testRgbConstructor(void); void testGdkConstructor(void); void testCopyConstructor(void); void testDestructor(void); }; class StaticFunctions : public CppUnit::TestFixture { CPPUNIT_TEST_SUITE(StaticFunctions); CPPUNIT_TEST(testRgbToHex); CPPUNIT_TEST(testRgbToHsv); CPPUNIT_TEST(testRgbAsP); CPPUNIT_TEST_SUITE_END(); protected: void testRgbToHex(void); void testRgbToHsv(void); void testRgbAsP(void); }; class GetsAndSets : public CppUnit::TestFixture { CPPUNIT_TEST_SUITE(GetsAndSets); CPPUNIT_TEST(testSetRgb); CPPUNIT_TEST(testSetHex); CPPUNIT_TEST(testSetRed); CPPUNIT_TEST(testSetGreen); CPPUNIT_TEST(testSetBlue); CPPUNIT_TEST(testSetHue); CPPUNIT_TEST(testSetSaturation); CPPUNIT_TEST(testSetValue); CPPUNIT_TEST_SUITE_END(); protected: void testSetRgb(void); void testSetHex(void); void testSetRed(void); void testSetGreen(void); void testSetBlue(void); void testSetHue(void); void testSetSaturation(void); void testSetValue(void); }; } // namespace Color } // namespace Test } // namespace gcs #endif // __GCS_COLOR_TEST_H agave-0.4.7/tests/core/Makefile.am0000644000175000017500000000102510663715205013657 00000000000000AM_CPPFLAGS = -I${top_srcdir}/src AM_CXXFLAGS = ${AGAVE_CFLAGS} ########################### ##### Unit Test rules ##### ########################### if HAVE_CPPUNIT TESTS = coretest check_PROGRAMS = ${TESTS} coretest_SOURCES = color-test.cc \ color-test.h \ color-group-test.cc \ color-group-test.h \ test-main.cc coretest_LDADD = ${top_builddir}/src/core/libagave.a \ ${CPPUNIT_LIBS} \ ${AGAVE_LIBS} coretest_CXXFLAGS = -DUNIT_TEST \ ${AM_CXXFLAGS} CLEANFILES = check_PROGRAMS endif agave-0.4.7/tests/core/color-group-test.cc0000644000175000017500000000375610663715205015374 00000000000000/******************************************************************************* * PROJECT: GNOME Colorscheme * * AUTHOR: Jonathon Jongsma * * Copyright (c) 2005 Jonathon Jongsma * * License: * 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 * *******************************************************************************/ #include "color-group-test.h" #include "core/gcs-scheme.h" #include "core/gcs-color.h" namespace gcs { void ColorGroupTestSuite::testDefaultConstructor(void) { ColorGroup myGroup; ColorPtr color1 = Color::create(1, 2, 3); ColorPtr color2 = Color::create("AB23F5"); ColorPtr color3 = Color::create(23, 99, 223); ColorPtr color4 = Color::create("e5982c"); myGroup.push_back(color1); myGroup.push_back(color2); myGroup.push_back(color3); myGroup.print(); //Scheme sch1 = new Scheme(color4, SCHEME_COMPLEMENTS); //Scheme sch2 = new Scheme(color4, SCHEME_SPLIT_COMPLEMENTS); //Scheme sch3 = new Scheme(color4, SCHEME_TRIADS); //Scheme sch4 = new Scheme(color4, SCHEME_TETRADS); //Scheme sch5 = new Scheme(color4, SCHEME_ANALOGOUS); //Scheme sch6 = new Scheme(color4, SCHEME_MONOCHROMATIC); CPPUNIT_FAIL("Not implemented yet"); } } // namespace gcs agave-0.4.7/tests/core/color-group-test.h0000644000175000017500000000276710663715205015237 00000000000000/******************************************************************************* * PROJECT: GNOME Colorscheme * * AUTHOR: Jonathon Jongsma * * Copyright (c) 2005 Jonathon Jongsma * * License: * 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 * *******************************************************************************/ #ifndef __GCS_COLOR_GROUP_TEST_H #define __GCS_COLOR_GROUP_TEST_H #include "core/gcs-color-group.h" #include namespace gcs { class ColorGroupTestSuite : public CppUnit::TestFixture { CPPUNIT_TEST_SUITE(ColorGroupTestSuite); CPPUNIT_TEST(testDefaultConstructor); CPPUNIT_TEST_SUITE_END(); protected: void testDefaultConstructor(void); }; } // namespace gcs #endif // __GCS_COLOR_GROUP_TEST_H agave-0.4.7/tests/core/test-main.cc0000644000175000017500000000276010663715205014042 00000000000000/******************************************************************************* * PROJECT: GNOME Colorscheme * * AUTHOR: Jonathon Jongsma * * Copyright (c) 2005 Jonathon Jongsma * * License: * 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 * *******************************************************************************/ #include #include "color-test.h" #include "color-group-test.h" namespace gcs { bool colorscheme_debug = false; } int main(int argc, char **argv) { CppUnit::TextUi::TestRunner runner; runner.addTest(gcs::Test::Color::ConstructionSuite::suite()); runner.addTest(gcs::Test::Color::StaticFunctions::suite()); runner.addTest(gcs::Test::Color::GetsAndSets::suite()); bool success = runner.run(); return success ? 0 : 1; } agave-0.4.7/mkinstalldirs0000755000175000017500000000664711224420542012345 00000000000000#! /bin/sh # mkinstalldirs --- make directory hierarchy scriptversion=2006-05-11.19 # 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-end: "$" # End: agave-0.4.7/INSTALL0000644000175000017500000002203010626071440010554 00000000000000Copyright (C) 1994, 1995, 1996, 1999, 2000, 2001, 2002 Free Software Foundation, Inc. This file is free documentation; the Free Software Foundation gives unlimited permission to copy, distribute and modify it. Basic Installation ================== These are generic installation instructions. The `configure' shell script attempts to guess correct values for various system-dependent variables used during compilation. It uses those values to create a `Makefile' in each directory of the package. It may also create one or more `.h' files containing system-dependent definitions. Finally, it creates a shell script `config.status' that you can run in the future to recreate the current configuration, and a file `config.log' containing compiler output (useful mainly for debugging `configure'). It can also use an optional file (typically called `config.cache' and enabled with `--cache-file=config.cache' or simply `-C') that saves the results of its tests to speed up reconfiguring. (Caching is disabled by default to prevent problems with accidental use of stale cache files.) If you need to do unusual things to compile the package, please try to figure out how `configure' could check whether to do them, and mail diffs or instructions to the address given in the `README' so they can be considered for the next release. If you are using the cache, and at some point `config.cache' contains results you don't want to keep, you may remove or edit it. The file `configure.ac' (or `configure.in') is used to create `configure' by a program called `autoconf'. You only need `configure.ac' if you want to change it or regenerate `configure' using a newer version of `autoconf'. The simplest way to compile this package is: 1. `cd' to the directory containing the package's source code and type `./configure' to configure the package for your system. If you're using `csh' on an old version of System V, you might need to type `sh ./configure' instead to prevent `csh' from trying to execute `configure' itself. Running `configure' takes awhile. While running, it prints some messages telling which features it is checking for. 2. Type `make' to compile the package. 3. Optionally, type `make check' to run any self-tests that come with the package. 4. Type `make install' to install the programs and any data files and documentation. 5. You can remove the program binaries and object files from the source code directory by typing `make clean'. To also remove the files that `configure' created (so you can compile the package for a different kind of computer), type `make distclean'. There is also a `make maintainer-clean' target, but that is intended mainly for the package's developers. If you use it, you may have to get all sorts of other programs in order to regenerate files that came with the distribution. Compilers and Options ===================== Some systems require unusual options for compilation or linking that the `configure' script does not know about. Run `./configure --help' for details on some of the pertinent environment variables. You can give `configure' initial values for configuration parameters by setting variables in the command line or in the environment. Here is an example: ./configure CC=c89 CFLAGS=-O2 LIBS=-lposix *Note Defining Variables::, for more details. Compiling For Multiple Architectures ==================================== You can compile the package for more than one kind of computer at the same time, by placing the object files for each architecture in their own directory. To do this, you must use a version of `make' that supports the `VPATH' variable, such as GNU `make'. `cd' to the directory where you want the object files and executables to go and run the `configure' script. `configure' automatically checks for the source code in the directory that `configure' is in and in `..'. If you have to use a `make' that does not support the `VPATH' variable, you have to compile the package for one architecture at a time in the source code directory. After you have installed the package for one architecture, use `make distclean' before reconfiguring for another architecture. Installation Names ================== By default, `make install' will install the package's files in `/usr/local/bin', `/usr/local/man', etc. You can specify an installation prefix other than `/usr/local' by giving `configure' the option `--prefix=PATH'. You can specify separate installation prefixes for architecture-specific files and architecture-independent files. If you give `configure' the option `--exec-prefix=PATH', the package will use PATH as the prefix for installing programs and libraries. Documentation and other data files will still use the regular prefix. In addition, if you use an unusual directory layout you can give options like `--bindir=PATH' to specify different values for particular kinds of files. Run `configure --help' for a list of the directories you can set and what kinds of files go in them. If the package supports it, you can cause programs to be installed with an extra prefix or suffix on their names by giving `configure' the option `--program-prefix=PREFIX' or `--program-suffix=SUFFIX'. Optional Features ================= Some packages pay attention to `--enable-FEATURE' options to `configure', where FEATURE indicates an optional part of the package. They may also pay attention to `--with-PACKAGE' options, where PACKAGE is something like `gnu-as' or `x' (for the X Window System). The `README' should mention any `--enable-' and `--with-' options that the package recognizes. For packages that use the X Window System, `configure' can usually find the X include and library files automatically, but if it doesn't, you can use the `configure' options `--x-includes=DIR' and `--x-libraries=DIR' to specify their locations. Specifying the System Type ========================== There may be some features `configure' cannot figure out automatically, but needs to determine by the type of machine the package will run on. Usually, assuming the package is built to be run on the _same_ architectures, `configure' can figure that out, but if it prints a message saying it cannot guess the machine type, give it the `--build=TYPE' option. TYPE can either be a short name for the system type, such as `sun4', or a canonical name which has the form: CPU-COMPANY-SYSTEM where SYSTEM can have one of these forms: OS KERNEL-OS See the file `config.sub' for the possible values of each field. If `config.sub' isn't included in this package, then this package doesn't need to know the machine type. If you are _building_ compiler tools for cross-compiling, you should use the `--target=TYPE' option to select the type of system they will produce code for. If you want to _use_ a cross compiler, that generates code for a platform different from the build platform, you should specify the "host" platform (i.e., that on which the generated programs will eventually be run) with `--host=TYPE'. Sharing Defaults ================ If you want to set default values for `configure' scripts to share, you can create a site shell script called `config.site' that gives default values for variables like `CC', `cache_file', and `prefix'. `configure' looks for `PREFIX/share/config.site' if it exists, then `PREFIX/etc/config.site' if it exists. Or, you can set the `CONFIG_SITE' environment variable to the location of the site script. A warning: not all `configure' scripts look for a site script. Defining Variables ================== Variables not defined in a site shell script can be set in the environment passed to `configure'. However, some packages may run configure again during the build, and the customized values of these variables may be lost. In order to avoid this problem, you should set them in the `configure' command line, using `VAR=value'. For example: ./configure CC=/usr/local2/bin/gcc will cause the specified gcc to be used as the C compiler (unless it is overridden in the site shell script). `configure' Invocation ====================== `configure' recognizes the following options to control how it operates. `--help' `-h' Print a summary of the options to `configure', and exit. `--version' `-V' Print the version of Autoconf used to generate the `configure' script, and exit. `--cache-file=FILE' Enable the cache: use and save the results of the tests in FILE, traditionally `config.cache'. FILE defaults to `/dev/null' to disable caching. `--config-cache' `-C' Alias for `--cache-file=config.cache'. `--quiet' `--silent' `-q' Do not print messages saying which checks are being made. To suppress all normal output, redirect it to `/dev/null' (any error messages will still be shown). `--srcdir=DIR' Look for the package's source code in directory DIR. Usually `configure' can determine that directory automatically. `configure' also accepts some other, not widely useful, options. Run `configure --help' for more details.